유사한 입력 배치에서 부울 회로 평가


10

부울 회로가 있다고 가정하십시오. C 함수를 계산합니다 . 회로가 최대 2 개의 팬인 및 팬 아웃을 갖는 AND, OR 및 NOT 게이트로 구성되어 있다고 가정합니다.f:{0,1}n{0,1}

하자 주어진 입력 될. 와 주어지면 단일 비트 위치 에서 와 다른 입력 에 대해 를 평가하고 싶습니다 . 즉, 값 동일하다 그 점을 제외하고 번째 비트는 플립된다.x{0,1}nCxCnxnC(x1),C(x2),,C(xn)xixi

를 독립적으로 평가하는 것보다 더 효율적인 방법이 있습니까?C n 에 시간 n 다른 입력?

취하다 C 포함 m게이트. 그런 다음 독립적으로 평가C 모두에 n 입력이 필요합니다 O(mn)시각. 계산하는 방법이 있습니까C(x1),C(x2),,C(xn)o(mn) 시각?


선택적인 맥락 : 우리가 산술 회로를 가지고 있다면 (이 게이트는 곱셈, 덧셈, 부정)R그러면 다음을 계산할 수 있습니다. n 지향성 파생 상품 fxi(x)O(m)시각. 기본적으로 그라디언트 계산을 위해 표준 방법을 사용할 수 있습니다 (역 전파 / 연쇄 규칙).O(m)시각. 해당 기능이 연속적이고 차별화 가능하기 때문에 작동합니다. 부울 회로에 대해 비슷한 것을 할 수 있는지 궁금합니다. 부울 회로는 연속적이고 차별화되지 않으므로 동일한 트릭을 수행 할 수는 없지만 사용할 수있는 다른 영리한 기술이 있습니까? 푸리에의 속임수일까요?

(바리안트 질문 : 팬인 및 팬 아웃이 무한한 부울 게이트가있는 경우 평가하는 것보다 점진적으로 더 잘 수행 할 수 있습니까? C n 타임스?)


1
Andrew가 귀하의 질문에 잘 대답 했으므로 의견을 남기겠습니다. 만약m 크다 O(2n/n)) 평가 중입니다. C 많은 입력에서 (최대 2o(n/logn)) 그렇다면 C 크기 만 O(2n/n) 평가할 수있는 C 무엇이든 m입력. (이 문제는 문헌에서 "대량 생산"이라고도한다.) Uhlig, "작은 수의 신뢰할 수있는 요소를 가진 기능 요소에서 자체 수정 체계의 합성"을 참조하십시오. 수학 노트 Acad.Sci. 소련 15, 558--562. 따라서 어떤 경우에는 불균일로 더 잘 할 수 있습니다.
Ryan Williams

답변:


10

나는 그러한 트릭을 찾기 쉽고 / 또는 사소한 만족도 알고리즘을 제공하기 때문에 상당한 이익을 줄 것 같지 않다고 생각합니다. 방법은 다음과 같습니다.

우선, 표면 상으로는 쉬울지라도, 문제는 실제로 회로의 더 일반적인 문제를 해결할 수 있습니다. CN 입력 x0,,xN1평가 C 모든 입력에서보다 빠르게 O~(N|C|)시각. 그 이유는 우리가 조정할 수 있기 때문입니다C 회로로 C 크기의 |C|+O~(Nn) 입력시 0i10N1i, 출력 C(xi). 기본적으로, 우리는 단지 작은 조회 테이블을 만듭니다.0i10N1ixi그리고 그것을 안으로 연결하십시오 C.

부울 회로의 배치 평가를위한 사소한 알고리즘을 사용하여 빠른 만족도 알고리즘을 만들 수 있습니다. 다음은 시간에 따라 평가를 수행하는 알고리즘이 있다고 가정하는 간단한 경우의 예입니다.O~(|C|2ϵ+(N|C|)1ϵ/2+N2ϵ) 어떤 상수에 대해서도 ϵ>0. 입력 회로C확장하여 만족도를 결정할 수 있습니다. C 회로로 C 크기의 2n/2|C| 이것은 첫 번째 가능한 모든 선택에 대한 OR입니다. n/2 에 입력 C(다른 입력은 무료로 두십시오). 그런 다음 배치 평가C 그것의 모든 2n/2입력. 최종 결과는 다음과 같이 만족스러운 과제를 찾는 것입니다.C iff C만족합니다. 러닝 타임은O~(2(n/2)(2ϵ)|C|2ϵ)=O~(2n(1ϵ/2)poly(|C|)).

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