n 개의 입력 비트의 AND 및 OR를 동시에 계산하는 데 필요한 이진 게이트 수


16

입력 비트 의 AND와 OR를 동시에 계산하는 데 필요한 최소 이진 게이트 수는 얼마입니까? 사소한 상한은 입니다. 나는 이것이 최적이라고 생각하지만 이것을 증명하는 방법은 무엇입니까? 표준 게이트 제거 기술은 입력 변수 중 하나에 상수를 할당하여 출력 중 하나를 트리 비아 리즈하는 것처럼 작동하지 않습니다.n2n2

이 문제는 Ingo Wegener의 "부울 함수의 복잡성"책에서 약간 다른 형식으로 5.12 연습으로 제시됩니다. " . 제거 방법을 사용하면 크기의 하한 만 증명할 수 있습니다 . 더 큰 하한을 증명해보십시오. "fn(x)=x1xnx¯1x¯nn+Ω(1)


1
@Ryan : AND OR에 관한 것이 아니라 AND OR 에 관한 질문입니다 . 하지만 사샤의 질문에 대한 답은 모르겠습니다.
이토 쓰요시

1
@TsuyoshiIto 고마워, 어떻게 든 잘못 구문 분석했습니다. 그것은 확실히 사소 문제 - 하나 이상의 이점을 얻을 게이트의 다른 종류를 사용하여 상상할 수 . 2n2
라이언 윌리엄스

2
@Sasha, 이전 논문의 일부 에서처럼 SAT 솔버를 작은 예제 ( )에 적용 해 보셨습니까 ? n=4
라이언 윌리엄스

2
@Ryan 그렇습니다. 우리가 아는 것은 , C 4 = 5 , C 57 입니다. 이것은 책의 함수이다 (그것은이다 모든 IFF에 N 개의 입력 비트가 동일). 이 같은 성장 N - 3 . 크기의 회로 (2) N - (3)을 구성하는 쉽다 : 제 계산 X IX I + 1 모두 내가 = 1 , ... , N -C3=3C4=5C571n2n32n3xixi+1 ( ( n - 1 ) 게이트), 그리고 이들의 연결 ( ( n - 2 ) 게이트)을 계산합니다. i=1,,n1(n1)(n2)
Alexander S. Kulikov

1
@Tsuyoshi : 나는이라고 생각 질문 번째 함수 게이트 사샤의 함수 ( F N ( X ) = X 1 ... X Nˉ X 1 ... ˉ X N )을 구축 할 수 없음 - 1 XNOR 게이트 ( x i , x i + 1에 적용됨 ) 및 n - 2 AND 게이트가 XNOR에 적용됩니다. 2n3fn(x)=x1xnx¯1x¯nn1xi,xi+1n2
Marzio De Biasi

답변:


14

이 Blum & Seysen 백서가 유용 할 수 있습니다.

N.Blum, M. Seysen. AND와 NOR의 동시 계산을위한 모든 최적 네트워크의 특성 분석 . 액타 산업 21 : 171-181 (1984)

나는 Blum & Seysen의 방법을 사용하여 2 n - c 하한을 얻을 수 있다고 생각했지만, 그렇지 않은 것 같습니다.x1xnx¯1x¯n 2nc


1
Blum 및 Seysen 논문의 공개 PDF 버전이 있습니까?
Marzio De Biasi

@ 블라디미르, 참조 주셔서 감사합니다! 이 경우 기사를 찾을 때 해당 방법이 적용 가능한지 확인하려고합니다.
Alexander S. Kulikov

3
@Vladimir, 다시 한번! 실제로,이 논문은 내 질문에 대한 답을 훨씬 더 정확하게 포함합니다. AND와 OR를 동시에 계산하려면 필요 하고이 크기의 회로는 AND와 OR을 독립적으로 계산합니다 (흥미 롭습니다). 이 표시하는 것도 어렵지 않다 그 C ( F의 N ) C ( N D , O R ) - C 2 N - C ' . 2n2C(fn)C(AND,OR)c2nc
Alexander S. Kulikov

@Sasha, 예, 나는이 간단한 구성을 놓쳤습니다. 및 용지에, 일을 명확히하기 위해 NOR 기능을 고려, 그래서위한 AND 및 OR 우리가 얻을 수 낮은 하나 개의 게이트를 변경하여 및 행 X 1 ... X Nˉ X 1 ... ˉ X N --- 2 n 52n2x1xnx¯1x¯n2n5
블라디미르 리시 코프

1
단지 @SashaK를 상기시켜줍니다. 답변이 마음에 들면 투표 수 아래에있는 체크 표시를 클릭하여 "수락"하십시오.
Suresh Venkat

3

귀하의 질문은 최소 비교 횟수를 사용하여 목록의 최소값과 최대 값을 동시에 계산하는 것에 대한 잘 알려진 질문과 관련이 있습니다. 이 경우 정답은 입니다.3n/2

상한을 입증하는 영리한 알고리즘은 비교 중 하나가 최소값과 최대 값을 모두 계산하기 때문에 동일한 경계 값을 가진 AND / OR 회로로 변환됩니다.

그러나 (적대적 주장에 의해 주어진) 하한은 적어도 모노톤 회로의 경우에 (AND / OR 회로가 최대 / 최소 알고리즘으로 변환되기 때문에) 변환하는 것처럼 보입니다. 이것은 하한이 합니다. 적대적 논증을 분석하여 확실한 하한을 확보 할 수 있습니다.3n/2

The upper bound appears in "Introduction to Algorithms", where you can also find the easy argument showing that max/min comparator circuits are valid iff they work for boolean inputs (use an appropriate threshold). The lower bound can be found e.g. here.


2
Note in Sasha's question, all 2-bit Boolean functions can be used to construct the circuit.
Ryan Williams

Yes, it is not clear how the lower bound can be translated to the case of all binary functions.
Alexander S. Kulikov
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.