지수 함수의 복잡성


36

자연수에 대한 지수 함수 는 다항식 시간에 계산할 수 없다는 것을 알고 있습니다 . 출력의 크기는 입력의 크기에 다항식으로 묶이지 않기 때문입니다.exp(x,y)=xy

이것이 지수 함수를 계산하는 데 어려움을 겪는 주된 이유입니까, 아니면 이러한 고려 사항과 관계없이 지수를 계산하는 것이 본질적으로 어려운가요?

지수 함수의 비트 그래프의 복잡성은 무엇입니까?

{x,y,ix,y,iN and the i-th bit of xy is 1}

EXP는 유명한 복잡한 클래스의 이름이므로 혼동으로 이어질 수 있으므로 "EXP"개념을 "L"로 변경했습니다.
MS Dousti

가 2의 거듭 제곱으로 제한된 경우 은 입니다. 또한 지수 의 그래프는 복잡도가 낮습니다. L A C 0 Γ e x p = { ( x , y , z ) : x y = z }xLAC0Γexp={(x,y,z):xy=z}
Kaveh

3
Sadeq : 복잡한 클래스를 피하려면 L이 EXP보다 낫지 않습니다. X로 변경했습니다.
Peter

@Peter : 컨텍스트에서 L은 로그 공간 복잡성 클래스가 아닌 "언어"입니다. 어쨌든 X가 훨씬 더 나은 선택입니다.
MS Dousti

@Kaveh : 질문은 자연수의 지수 함수에 관한 것입니다.
이토 쓰요시

답변:


17

여기에 상한이 있습니다.

반복되는 제곱을 통해 문제는 PSPACE에 있습니다.

약간 더 좋은 상한이 있습니다. 이 문제는 BitSLP 문제의 특수한 경우입니다. 0과 1에서 시작하는 직선 프로그램에서 정수 N을 나타내는 뺄셈 및 곱셈을 사용 하고 i ∈ℕ이 주어지면 i 번째 비트 ( N 의 이진 표현의 최하위 비트) 는 1입니다. BitSLP 문제는 카운팅 계층 ( CH ) [ABKM09]에 있습니다. ([ABKM09]에 BitSLP 문제가 PH PP PP PP PP에 있음을 알 수 있습니다 .)

동일 CH = PSPACE는 카운팅 계층 구조가 무너짐을 나타내므로 CH 멤버 자격은 종종 문제가 PSPACE-hard 일 가능성이 없다는 증거로 간주됩니다. 그러나 나는이 증거가 얼마나 강력한지를 알지 못한다.

경도와 관련하여 BitSLP는 동일한 논문 [ABKM09]에서 # P-hard로 표시됩니다. 그러나 그 증거 는 문제에서 언어 X의 경도를 암시하지 않는 것 같습니다 .

참고 문헌

[ABKM09] Eric Allender, Peter Bürgisser, Johan Kjeldgaard-Pedersen 및 Peter Bro Miltersen. 수치 해석의 복잡성 SIAM Journal on Computing , 38 (5) : 1987–2006, 2009 년 1 월. http://dx.doi.org/10.1137/070697926


12

완전한 답변은 아니지만 최소한 부분적인 답변입니다.

I는 나타난 두 응답 지금까지 있다는 사실 언급하지 않은 것을 알 모듈러 지수 산출 알고리즘 여기서 입니다 의 비트 수. 여기서 는 가장 빠른 곱셈 알고리즘에 해당하는 지수입니다. 따라서 지수의 중요도가 낮은 비트를 효율적으로 계산할 수 있습니다 ( 이하).O(n1+ω)xy mod znzωO(n3)

이를 수행하는 방법은 매우 간단합니다. , , 계산할 수 있습니다 . 분명히 , 따라서 이 전용으로 만, 용어 이 얻어 오직 곱셈.c1=xc2=x2 mod zcj=cj12 mod zcj=x2j mod zxyjcjyj mod zncjn

또한 를 쓸 수 있으므로 대략 해당하는 최상위 비트 도 효율적으로 계산할 수 있습니다. 최상위 비트에 의존합니다 . ( n i = 0 2 i x i ) y 2 n y xxy(i=0n2ixi)y2nyx

따라서 유일한 문제는 중심을 향한 비트로 인해 발생합니다 .xy


1
이 답변과 내 것 사이에는 흥미로운 관계가 있습니다. 내가 실수하지 않으면, 내 대답에 인용 된 [ABKM09 ] 의 알고리즘에 대한 대략적인 개요 는이 아이디어를 중국의 나머지 정리와 결합하여 더 높은 비트를 얻는 것입니다.
Tsuyoshi Ito

아, 나는 그것을 몰랐다.
Joe Fitzsimons

6

[이 답변은 Per Vognsen 의 답변에 대한 흥미로운 측면을 설명합니다 . OP의 질문에 대한 직접적인 답변은 아니지만 그러한 질문을 해결하는 데 도움이 될 수 있습니다.]

먼저 다음 링크를 살펴보십시오 : Bailey-Borwein-Plouffe 공식 (또는 간단히 BBP 공식). 첫 번째 비트 를 먼저 계산하지 않고 비합리적 수 의 번째 비트 를 계산하는 방법입니다 . 이 기사에서는 다른 비이성적 인 숫자에 대한 BPP 유형 공식도 존재한다고 지적했다.π i - 1iπi1

다음으로 Dick Lipton의 주제에 대해 살펴보십시오 : Cook 's Class Contains Pi . 이 기사는 본질적 으로 의 번째 비트 를 결정하는 것은 Steve Cook의 클래스 ( , 다항식 시간과 다항식 공간에서 허용되는 언어 클래스)에 있으며,이 사실은 전화 할 때 매우 이상하다고 설명합니다. "전통적인 지혜"에 반대합니다.π S CiπSC

추신 : 기사의 마지막 부분에서 Dick은 알고리즘이 실제로 밖에있을 수 있음을 인정 하지만 그러한 가능성은 "실제 사용"을 넘어 섭니다.SC

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