과반수 함수의 회로 복잡성


13

하자 대부분의 기능 즉, 수 F ( X ) = 1 경우에만, Σ N = 1 X I > N / 2 . 다음 사실에 대한 간단한 증거가 있는지 궁금합니다 ( "단순"이란 Valiant 84와 같은 확률 적 방법이나 네트워크 정렬에 의존하지 않음을 의미합니다. 바람직하게는 회로의 명시적이고 간단한 구성을 제공합니다).f:{0,1}n{0,1}f(x)=1i=1nxi>n/2

O ( log ( n ) ) 깊이, poly (n) 크기의 회로 제품군으로 계산할 수 있으며, 여기서 게이트는 NOT 게이트, 2- 입력 OR 게이트 및 2- 입력 AND 게이트로 구성됩니다.fO(log(n))


6
이 관심의 대상이 될 수 있습니다 : 이고르 서지 브, 대부분의 함수의 공식 크기 위 경계 ; 또한 여기에서 그는 약간 더 나은 상한을 발표합니다. 당신은 단지에 대해 물어 경우, 회로 (안 공식 다음) 이고르는, 생각 나게으로, 모든 대칭 부울 기능 (뿐만 아니라 대부분의) 깊이의 회로가 및 크기 O ( N ) 단지의 합을 계산을 : 1 s, log 2 n 변수 의 부울 함수를 실현 합니다. 대부분의 경우이 후자의 함수는 n 과 비교됩니다.O(logn)O(n)1log2n . n/2
Stasys

@Stasys와 하나의 수를 계산하는 것은 본질적으로 비트를 정렬하는 것입니다.
Kaveh

답변:


9

Kaveh의 답변은 귀하가 언급 한대로 질문에 대한 답변을 제공합니다 (그리고 이것은 N C 1에 포함되어 있음을 보여주는 일반적인 증거입니다 ). 그러나 나는 당신이 실제로 약간 다른 질문을 할 의도가 있다고 생각했습니다. 즉, 대부분 의 명시 적 다항식 크기 모노톤 공식입니다.TC0NC1

대다수가 모노톤이므로 모노톤 공식으로 계산할 수 있습니다. 다항식 크기의 모노톤 공식에는 두 가지가 있습니다. 즉, Valiant의 확률 론적 구조와 정렬 네트워크를 통한 구조입니다. 내가 아는 한, 분류 네트워크에서 제공하는 것보다 단순한 결정 론적 구성은 없습니다.

이것과도 관련이 있습니다. 대다수는 M A J 3 게이트 로만 구성된 상수로 상수 로 계산할 수 있습니다 . Valiant의 확률 적 구성은 O ( log ( n ) ) 깊이의 공식을 제공하도록 구성 될 수 있습니다 . 그러나 여기서 우리는 결정 론적 구성이 없다는 것을 알고있었습니다. 특히 분류 네트워크는 이에 적합하지 않습니다 (기술적 인 이유 : 모든 임계 값 기능을 제공하고 대부분의 기능 만 M A J 3 게이트 로 계산할 수 있음 ). 그러나 논문에 주어진이 질문에 최근 진행 상황이 있습니다MAJ3O(log(n))MAJ3Cohen et al.의 Log-Depth Threshold Formulas를 통한 효율적인 다자간 프로토콜 여기서 이러한 공식은 표준 복잡도 이론 또는 암호 가정을 기반으로 한 구성입니다.


9

컴퓨팅 제한 임계 값 게이트 ( )는 본질적으로 입력 비트를 정렬하는 것입니다.ixik

비트를 정렬 할 수 있으면 결과를 와 쉽게 비교하고 제한된 임계 값을 계산할 수 있습니다.k

반면에 제한된 임계 값을 계산하는 회로가 있다고 가정하십시오. 병렬 검색을 수행하여 입력에서 하나의 수를 찾고 정렬 된 목록을 출력 할 수 있습니다.

이것들은 회로 깊이를 유지합니다. 따라서 제한된 임계 값을 계산하기 위해 새로운 회로를 만들면 깊이 O ( lg n ) 정렬 회로가 제공됩니다. 따라서 대다수가 N C 1 에 있다는 간단한 주장이 나오면 간단한 깊이 -O ( lg n ) 분류 회로 (AKS 분류 네트워크를 기반으로 한 것 이외)를 발견했습니다.NC1O(lgn)NC1O(lgn)

다수의 게이트에 새로운 1 및 0 입력을 추가함으로써 다수를 사용하여 제한된 임계 값을 쉽게 구현할 수 있습니다.


이전에이 답변은 나누기와 정복을 사용하여 수행 할 수 있으며 이진 추가가 에 있다는 사실을 주장했습니다 . 그것은 우리가 직접 바이너리 바이너리를 추가 할 때 무한 팬인 게이트를 가지고 있기 때문에 대다수가 A C 1N C 2 에 있음을 보여줍니다 . 그러나 조금 더 많은 작업으로 수행 할 수 있습니다.AC0AC1NC2

깊이 O ( lg n ) 를 유지하려면 3 대 2 라는 트릭을 사용해야합니다 .O(lgn)

위한 세 개의 이진 추
세 이진수 주어진 , B , c를 우리가 두 개의 이진수를 계산할 수는 X , Y 되도록 + B + C = X + Y가 .a,b,cx,ya+b+c=x+y

또 다른 방법은 깊이 및 팬인 2에서 덧셈을 수행 할 수있는 정수의 부호있는 숫자 표현 을 사용하는 것입니다. 운반하지 않습니다).O(1)

섹션 4와 연습 4를 참조하십시오.


O(lgn)O(lgn)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.