DLogTime 및 NLogTime에 대한 회로 복잡도 특성화


13

N L O g T 해요 전자 L H C 0 L에서 HDLogTime 및 은 우리가 가진 가장 작은 두 가지 복잡한 클래스입니다. (로그 시간 계층 구조 는 과 같 으며 의 첫 두 레벨입니다 .NLogTimeLHAC0LH

질문을 읽은 후이 두 클래스 사이의 분리가 알려져 있는지 확인하고 실제로 이후 분리하기가 쉽습니다. (Robin Kothari에게 감사합니다. 알려진 내용도 참조하십시오 ). 이제 해당 회로 복잡도 특성을 알고 싶습니다. 나는 조금 검색하고 몇 사람에게 물었지만 답변을 찾을 수 없었습니다.OR(x1,...,xn)NLogTimeDLogTime

복잡성 클래스 및 대한 회로 복잡성 특성이 훌륭 합니까?N L o g T i m eDLogTimeNLogTime

참고 : 은 작은 복잡도 클래스의 균일 성을 정의하는 데 많이 나타납니다. 작은 시간 제한으로 인해 이러한 시스템이 전체 입력을 읽을 수 없으며 입력에서 비트 만 읽을 수 있으며 클래스는 비트의 주소를 쓴 다음 해당 비트를 직접 읽을 수있는 시스템을 사용하여 정의됩니다. (즉, 거기에 도달하기 위해 모든 이전 비트를 다룰 필요는 없습니다). lg nDLogTimelgn


3
두 클래스를 쉽게 분리 할 수 ​​있습니다. NLOGTIME은 OR 함수를 계산할 수 있지만 DLOGTIME은 전체 입력을 읽을 수 없으므로 DLOGTIME은 계산할 수 없습니다. 이 사실은 표준 트릭을 사용하여 두 언어를 구분하는 언어를 구성하는 데 사용할 수 있습니다.
Robin Kothari

1
@Robin : 항상 감사합니다. :). 나는 그것을 놓쳤다.
Kaveh

AltTime(O(1),O(logn))=AC0 입니다. 클래스는 아마도 다항식 크기 ​​절 / 용어 / CNF / DNF와 관련이 있습니다.
Kaveh

이 질문에 대한 답을 마침내 찾았습니까? DLOGTIME에 대한 회로 특성은 허용되는 회로의 종류와 그들에 부과 된 균일 성 조건의 두 부분으로 구성됩니다. 이 중 하나에 대한 답을 알고 있습니까?
로빈 코타 리

@Robin, 아니요, 답을 모르겠지만 아마도 훌륭한 회로 복잡성 클래스에 해당하지 않을 것입니다.
Kaveh December

답변:


-11

CS 복잡성 이론에 의해 사용 된 회로 복잡성 클래스가 VLSI 커뮤니티와는 다른 예측을하고 다른 메트릭을 사용하는 것이 훨씬 더 흥미 롭다고 생각합니다. 에서 부울 함수의 VLSI의 복잡성 :

변수 의 모든 부울 함수는 게이트 (Lupanov의 정리) 를 갖는 논리 회로에 의해 계산 될 수 있으며이 크기의 논리 회로를 필요로하는 n 변수의 부울 함수가 존재한다는 것은 잘 알려져 있습니다 ( 섀넌의 정리). 우리는 Thompson의 VLSI 칩 모델을 사용하여 VLSI 회로에 의해 계산 된 부울 함수에 대한 해당 결과를 제시합니다. 우리는 모든 부울 함수 증명 변수의 VLSI 회로에 의해 계산 될 수 영역 및 기간 1, 우리는 부울 함수가 존재한다는 증명 매 (볼록) VLSI 칩 있어야하는 변수 영역.O ( 2 N / N ) N O ( 2 N ) N Ω ( 2 N )nO(2n/n)nO(2n)nΩ(2n)

흥미롭게도, VLSI 회로 복잡도는 중요한 경로, 즉 중요한 경로가 하나뿐이기 때문에 깊이를 "무의미한"것으로 취급하는 경향이 있습니다. 대부분의 실제 목적을 위해 임의로 복잡한 회로는 대기 시간이 로 처리 될 수 있습니다 .nO(1)n

실제로 / 의 개념이 VLSI 회로의 복잡성으로 직접 변환 되는지 확실하지 않습니다 . Shannons 결과 조차도 쉽게 번역되지 않습니다. Shannons 결과는 arity {AND, OR, NOT} 으로 구성된 부울 기준에 대해서만 유효 합니다 . 이것이 유일한 기초는 아니며, 더 많은 게이트 유형을 허용함에 따라 필요한 "게이트"수는 급격히 떨어집니다. 다음은 2 개의 입력 NAND 게이트 크기로 정규화 된 상용 VLSI 표준 셀 라이브러리의 입니다.N L o g T i m e 2 n / n 2 a r e a 2DLogTimeNLogTime2n/n2area2

        2 3 4 <-Arity
및 1.14 1.28 1.41
낸드 1.00 1.14 1.28
또는 1.14 1.41 1.41
1.00 1.14 1.41
xor 1.62 2.44
xnor 1.62 2.44

buf 1.14
인비 0.80

aoi22 1.28
aoi222 1.62
aoi33 1.62
oai22 1.41
oai222 1.72
oai33 1.62

addf 2.64

구체적으로, 메모 aoi/의 oai되는 게이트 And Or Invert/ Or And Invert이루어진 인수에 대응하는 크기가 제 기능 의 수가 제 함수 먹이 1 함수 게이트 배의 수와 동일한 인수에 대응에 나타날. 예를 들어, aoi22"NOR 게이트를 공급하는 2 개의 입력 AND 게이트"를 나타냅니다.

요점은 다음과 같습니다. 개별적으로, oai222상호 연결에 사용되는 영역을 포함하지 않고 총 ~ 4.56의 영역에 대해 3 개의 2 개의 입력 OR 게이트와 3 개의 입력 NAND 게이트를 사용하여 기능을 구축 할 수 있습니다. 그러나이 프리미티브는 단지 1.72의 영역에서 실현 될 수 있는데, 이는 동일한 부울 함수의 개별 표현이 2.65 배 더 많은 영역을 소비 함을 의미합니다.

또한 입력 {AND, NAND, OR, NOR, XOR, XNOR} 게이트 의 영역 ( 여기서 )은 이산 2 입력 게이트를 사용하여 동일한 기능을 구축하는 데 필요한 영역보다 훨씬 작습니다. 또한이 프로세스에 대해 {XOR, XNOR}에 지정된 영역이 다른 게이트에 비해 "대형"이지만 더 적은 영역을 사용하여 동일한 입력 게이트 를 빌드하는 다른 방법이 있습니다.n 2 nnn2n

더 복잡한 프리미티브의 전파 특성은 이산 게이트를 사용하여 얻을 수있는 것보다 훨씬 우수합니다.

이것이 왜 중요한가? 적어도 저에게있어, 일단 가정이 위반되면 결과를 쓸모 없거나 틀리게 만드는 효과를 갖는 일련의 가정에 기초한 복잡성 이론의 결과를 조사하는 데 엄청난 시간을 소비했습니다. 다음은 Steven Cooks .N PPNP

따라서 을 증명하기 위해서는 3-와 같은 특정 -완전한 문제를 해결하는 부울 회로 패밀리의 크기에 대한 초 다항식 하한을 증명하기에 충분합니다. 수능. 1949 년에 Shannon은 거의 모든 부울 함수 에 대해 모든 부울 회로 계산 에 적어도 게이트가 필요 하다는 것을 증명했습니다 . 불행히도, 그의 계산 주장은 문제에 대한 하한을 증명하는 방법에 대한 실마리를 제공하지 않습니다 .PNPNPf:{0,1}n{0,1}f2n/nNP

나는 쿡 스가 궁금해하는 것을 발견했다. Shannons 결과는 모든 에 유효하므로 문제가 비트로 설명 될 수있는 경우 ~ 게이트 에서 만족할 수 있는지 여부를 결정할 수있는 {AND, OR, NOT} 기본 회로가 있어야합니다 (실제 용지는 가능한 모든 기능에 대해 더 큰 상한을 제공하지만 제한적 임). 이것이 우리에게 알려주는 것은 개 이상의 게이트 를 사용하는 것입니다 . 여기서 은 크기의 상한입니다.f:{0,1}n{0,1}NP{0,1}n2n/nnnNP문제는 필요한 것보다 많은 게이트를 사용하는 것입니다. 더 크지 만 완전한 부울 기준을 사용하면 필요한 게이트 수만 줄어 듭니다. VLSI와 같은 다른 회로 복잡도 모델을 사용하면 "더 나은"결과 범위가 제공됩니다. 궁금한. 그러나 ~ "게이트"(게이트가 단계 / 동작에 느슨하게 사용되는)를 사용 하는 문제에 대한 해결책은 으로 수행된다는 사실을 알고 있습니다. ... 그리고 최적의 방법으로 솔루션을 찾는 방법에는 무한한 방법이 있습니다.NP2n/n

VLSI 구현의 복잡성과 정수 곱셈에 대한 부울 함수의 그래프 표현 에서 OBDD 모델을 사용하여 회로 복잡성을 예측하면 실제 회로 복잡도를 과대 평가하는 것으로 나타났습니다.

두 가지 다른 모델에서 부울 함수 복잡성에 대한 하한 결과가 논의됩니다. 첫 번째는 초대형 집적 회로 (VLSI) 회로에서 칩 면적과 속도 사이의 트레이드 오프를 추상화 한 것입니다. 두 번째는 부울 함수를 상징적으로 표현하고 조작하기위한 데이터 구조로 사용되는 정렬 된 이진 결정 다이어그램 (OBDD) 표현입니다. 하한은 구현 매체로서의 VLSI와 데이터 구조로서의 OBDD의 근본적인 한계를 보여줍니다. 단일 출력 부울 함수의 VLSI 구현에 영역 시간 복잡성이 있음을 증명하는 데 사용 된 동일한 기술 는 함수의 OBDD 표현에 일부 대한 꼭짓점Ω ( c n ) c < 1 A T 2 = O ( n 1 + c )AT2=Ω(n2)Ω(cn)c<1그러나 그 대화는 사실이 아닙니다. OBDD 표현이 지수 크기 인 함수가 있지만 복잡도 의 VLSI 구현이 있습니다 .AT2=O(n1+c)

출력 번호가 0 (최하위)에서 (가장 중요) 인 워드 크기 대한 정수 곱셈기 가 설명됩니다. 출력 또는 출력 나타내는 부울 함수 ( 여기서 )의 경우 다음과 같은 하한이 입증됩니다. 모든 VLSI 구현에는 가 있어야합니다. OBDD 표현에는 꼭짓점 이 있어야합니다 .2 N - 1 I - 1 2 N - I - 1 1 I N T (2) = Ω ( I 2 ) Ω ( 1.09 I )n2n1i12ni11inAT2=Ω(i2)Ω(1.09i)


5
-1 : 이것이 OP의 질문과 어떻게 관련이 있는지 모르겠습니다.
Robin Kothari

5
섀넌과 쿡에 대한 당신의 말은 이해가되지 않는 것 같습니다. Shannon은 "대부분의"기능은 기하 급수적으로 큰 회로를 필요로한다는 것을 보여 주었다. NP 문제에 선형 크기의 제품군 만 필요하다는 결론을 내릴 수있는 방법은 무엇입니까? 그리고 당신은 우리가 회로 가족에 대해 이야기하고 있다는 것을 알고 있습니까?
Mark Reitblatt

6
johne : 이것은 CS 커뮤니티에 대한 VLSI 커뮤니티에 대한 열망으로 만 설명 될 수있는 적절한 포럼이 아닙니다.
Suresh Venkat
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.