NC의 큰 버전은 무엇입니까?


21

효율적으로 병렬화하는 아이디어를 포착하고, 그 하나 개의 해석 시간에 풀 수있는 문제이다 O ( 로그 의 C , N ) 하여 O ( N 개의 케이 ) 일부 상수 병렬 프로세서 C , K . 내 질문은 시간이 n c 이고 프로세서 수가 2 n k 인 유사한 복잡성 클래스가 있는지 여부입니다. 빈칸 채우기 질문으로 :NCO(logcn)O(nk)cknc2nk

이고 P__이고 E X PNCPEXP

특히, 나는 우리가 polynomially bounded 정도의 네트워크에 배열 된 지수의 수의 컴퓨터를 가지고있는 모델에 관심이 있습니다 ). 각 단계에서 :

  1. 모든 컴퓨터는 이전 시간 단계에서받은 다항식 크기의 메시지를 읽습니다.
  2. 모든 컴퓨터는 이러한 메시지에 의존 할 수있는 일부 시간 계산을 실행합니다.
  3. 모든 컴퓨터는 (각 길이의) 메시지를 각 이웃에게 전달합니다.

이러한 종류의 모델에 해당하는 복잡성 클래스의 이름은 무엇입니까? 그러한 복잡한 수업에 대해 읽을만한 좋은 곳은 무엇입니까? 그러한 수업에 대한 완전한 문제가 있습니까?



우리는 , N C = A S p a c e T i m e ( O ( log n ) , ( log n ) O ( 1 ) ) , NCk=ASpaceTime(O(logn),(logn)k)NC=ASpaceTime(O(logn),(logn)O(1)) , E X P = T가 나는 해요 E ( 2 N O (가 1 ) ) . 따라서 N C k에 해당하는 클래스는 A S p a c e T i m e ( n O ( 1 ) , 2 O ( log nP=Time(nO(1))EXP=Time(2nO(1))NCkNC에해당하는 등급 은ASpaceTime(n O ( 1 ) ,2 ( log n ) O ( 1 ) )입니다. 그것은 대수적 조작 일뿐입니다. 귀하의 요구 사항을 충족시키는 지 확인하지는 않았지만 세 가지 조건을 만족하지만 기하 급수적으로 많은 컴퓨터를 보유하지는 않을 것이라고 생각합니다. 나는 당신이 그 요구를 그렇지 않으면 그만 두어야한다고 생각한다. (더)ASpaceTime(nO(1),2O(logn)k)NCASpaceTime(nO(1),2(logn)O(1))
Kaveh

결과 클래스에는 가 포함 되며 유추는 N C P 로 유지되지 않습니다 . EXPNCP
Kaveh

당신은 어디서 얻었는지 이해가 안 으로 공간의 복잡성을. 내가 아는 한 N C 는 polynomially 많은 게이트를 허용합니다. 우리가 당신의 아날로그 선을 따라 가고 싶다면 N CP T / W K ( l o g c n , n k ) / p o l y 로보 아야합니다. 그리고 내가 찾고있는 복잡성 클래스는 뭔가입니다 P T / W K 와 같은 ( n c , 2lognNCNCPT/WK(logcn,nk)/poly. 그러나 나는 이것에 대한 더 나은 특성이 있기를 바랐다. PT/WK(nc,2nk)/poly
Artem Kaznatcheev

그것은 표준입니다 (복잡성 동물원에는 없지만), 예를 들어 Ruzzo, "균일 한 회로 복잡성", 1981을 확인하십시오. 또한 균일 한 클래스로 작업해야한다고 생각합니다. 모든 함수에는 지수 크기 변경 / 논리 깊이 2 회로가 있습니다 (및 경계 팬인 및 깊이 사용하는 경우이 세 가지 조건을 충족합니다 . 그리고 내가 말했듯이, 기하 급수적으로 많은 노드가 있다면 유추는 유지되지 않습니다. 또한 병렬 계산의 주요 특성은 시간을 절약하는 것입니다. 예를 들어 N C 의 경우 폴리 로그 시간입니다 . 유사 다항식 시간은 다항식 시간에 해당한다고 생각합니다. lognNC
Kaveh

답변:


27

나는 당신이 찾고있는 수업이 라고 생각합니다 . 요구 사항에 맞는 e x p ( n k ) = 2 O ( n k ) 프로세서 가 있다고 가정합니다 .PSPACEexp(nk)=2O(nk)

  1. 모든 컴퓨터는 이전 시간 단계에서받은 다항식 크기의 메시지를 읽습니다.
  2. 모든 컴퓨터는 이러한 메시지에 의존 할 수있는 일부 시간 계산을 실행합니다.
  3. 모든 컴퓨터는 (각 길이의) 메시지를 각 이웃에게 전달합니다.

poly(n)exp(nk)

O(logn)poly(n)exp(nk)PSPACE


Ryan, 난 당신이 어떻게 많은 수의 컴퓨터를 polynomially 많은 레이어에 넣는 지 모르겠습니다. 깊이가 지수가 될 수 있다고 생각합니다. 왜 이것이 가능한지 조금 더 설명 할 수 있습니까? 또한 fan-in 2 회로로서 임의의 주어진 기능의 CNF 회로의 간단한 구성이 요구 사항을 충족시킬 것 같습니다.
Kaveh

1
@Kaveh : 첫 질문을 이해하지 못합니다. 두 번째로, 임의의 함수에 대해 지수 크기 깊이 2 회로가 있지만 NC (poly)는 회로를 균일하게 생성 할 수 있어야하므로 각 입력 크기에 대해 임의의 회로를 생성 할 수 없습니다.
Robin Kothari

@Robin, 감사합니다. 아마도 혼란스러운 일입니다. (PSpace에 해당하는 회로의 깊이가 기하 급수적이어야한다고 생각합니다. 또한 L은 P와 마찬가지로 PSpace는 EXP라고 생각합니다 .L을 NC로 교체 할 때도 똑같은 것을 말하는 것이 나에게 이상합니다. PSpace와 EXP 사이를 돌봐야합니다.) 여기서 무슨 일이 일어나고 있는지 이해하기 위해 조금 더 생각해야합니다.
Kaveh

@Kaveh, 레이어 수 (즉, 깊이)를 지수로 지정하므로 정의에 따라 깊이는 지수가 될 수 없습니다. 기하 급수적으로 많은 프로세서가 있으므로 CNF는 조건 중 하나를 위반하여 지수 팬인이 필요합니다. PSPACE에 해당하는 지수 크기 회로의 깊이는 다항식입니다. 이것이 사실 인 이유와 두 유추가 어떤 의미에서 "유효한"이유 ( "PSPACE는 L은 P로, EXPP는 NC는 P로") "PSPACE = 교대 다항식" 시각. L = 교대 로그 시간인지 여부를 알 수 없습니다 (NC1).
Ryan Williams

나는 당신과 로빈의 의견을 읽은 후 상황을 더 잘 이해한다고 생각합니다. 감사합니다.
Kaveh

21

Ryan이 말했듯이이 수업은 PSPACE입니다. 이 클래스는 종종 문헌에서 NC (poly)라고합니다. 다음은 QIP = PSPACE 용지 에서 직접 인용 한 것입니다 .

우리는 다항식 깊이를 갖는 부울 회로의 다항식 공간 균일 한 부울 회로로 계산할 수있는 모든 함수로 구성된 복잡성 클래스 NC (poly) 인 NC의 확장 된 변형을 고려합니다. (NC (2 poly ) 표기법 도이 클래스 [11]에 이미 사용되었습니다.) 결정 문제로 인해 NC (poly) = PSPACE [10]으로 알려져 있습니다.

A. 보로딘. 시간과 공간을 크기와 깊이와 관련시킵니다. SIAM Journal on Computing, 6 : 733–744, 1977.

A. Borodin, S. Cook 및 N. Pippenger. 잘 부여 된 링과 공간이 제한된 확률 기계에 대한 병렬 계산. 정보 및 통제, 58 : 113–136, 1983.

이를 확인하는 한 가지 방법은 두 포함을 직접 증명하는 것입니다. NC (poly)가 PSPACE에 있는지 확인하려면 최종 게이트의 출력을 재귀 적으로 계산할 수 있으며 회로의 깊이와 동일한 크기의 스택 만 필요합니다. 이는 다항식입니다. PSPACE가 NC (poly)에 있음을 보여주기 위해 PSPACE-complete 인 QBF는 일반적인 방식으로 기하 급수적으로 많은 게이트가있는 다항식 깊이 회로로 작성할 수 있습니다. AND 게이트입니다. 다항식으로 많은 수량 자만 있기 때문에 이것은 다항식 깊이 회로입니다.

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