유명한 종이 PRIMES is in P
을 연구하면 혼란스러워집니다.다항식 시간 알고리즘을 사용하여 숫자 지수가 숫자인지 여부를 테스트 할 수 있습니까?
알고리즘의 첫 단계는 If (n=a^b for nature number a and b>1), output COMPOSITE.
입니다. 전체 알고리즘이 다항식 시간으로 실행되므로이 단계도 O (log n)^c에서 완료되어야합니다 (주어진 입력 크기는 O (log n)입니다. 일부 인터넷 검색 후 대상을 공격하기 위해 어떤 알고리즘을 알아낼 수 없습니다
질문 :.?
이 다항식 시간에 다른 수의 번호 지수 여부를 테스트 할 수있는 알고리즘이 있습니까감사합니다 최고 감사합니다.
이것은 아마도 http://cstheory.stackexchange.com에 더 적합 할 것입니다. –
'a'는 알려져 있습니까? 그렇다면 'n'을'a'로 반복해서 나눠서 결국 1을 얻는 지 확인하십시오; 우리가 상수 시간을 나눈다면'log_a (n)'단계를 거친다. 또는'log_a (n)'을 직접 (아마도'log (n)/log (a)'로) 계산하고 정수인지 확인하십시오. :) – Dougal
@Dougal 응답 해 주셔서 감사합니다. 나는'a'가 알려지지 않았거나 뭔가를 놓친다 고 생각합니다. IIRC, 알고리즘의 주된 아이디어는 수를 복합체로 주장하는 몇 가지 규칙을 수립하는 것입니다. 이 규칙에 따라 소유권 주장이 실패하면 숫자는 소수의 지수 여야합니다. 이 첫 번째 단계는 지수가 1보다 큰 경우를 제거합니다. –