정수 링에서 FFT를 사용하는 숫자의 임의의 BASE로 긴 정수를 곱해야합니다. 피연산자의 길이는 항상 이고 일부 코드는 k
이고, 컨벌루션 벡터의 구성 요소는 2n
이므로 2n'th
기본 단위가 필요합니다.정수 링에서 FFT를 사용하는 곱셈
저는 효율성 문제에 특별히 관심이 없기 때문에 Strassen & Schönhage의 알고리즘을 사용하고 싶지 않습니다. 기본 회선을 계산하고 일부는 전달하고 그 외에는 아무 것도 없습니다. 그것은 많은 수학자 간단한 보인다하더라도
은, 대수에 대한 이해는 정말 나쁜, 그래서 나는 많은 질문이 있습니다
정수 반지의 FFT를 수행 사이의 중요한 차이 또는 뉘앙스은 무엇이
2^n + 1
모듈로를 (아마 composite) 그리고 정수 FIELDS modulo some primimep
?
2^n == -1 (mod 2^n+1)
이므로2
은(2n)th
과 같은 반지의 화합 근원이기 때문에 부탁드립니다. 반대로 정수 필드는 원시 원시를 찾아야합니다.
그러나 FFT에 이러한 양식의 링을 사용하지 못하게하는 다른 뉘앙스가있을 수 있습니다.정수 링을 선택한 경우이 필드에
2^n
번째 단일 화음의 존재 조건은 무엇입니까? 작은 질서의 통일
다른 모든2^k
번째 뿌리는 바로,이 루트를 제곱하여 얻을 수 있을까? .. 반지의 모듈로 곱셈에 부과하는 필수 어떤 제한를? 어쩌면 길이가 어쩌면 숫자 기지에 있을지도 모르겠다. 아마도 곱셈에 사용 된 숫자 유형에서도 가능할 것이다.
컨볼루션 계수가 모듈러스 연산에 의해 감소되는 경우 약간의 정보 손실이있을 것으로 생각됩니다. 사실이고 왜 그런가요? 내가 이것을 피할 수있는 일반적인 조건은 무엇입니까?- 단지 동적리스트를 기본 형식의 모든 가능성이있다 (즉
long
) FFT 벡터들은 제품과 컨벌루션 벡터 충분? 또는 계수를BigInteger
으로 변환해야합니까? (실제로해야 할 때 "사례"는 무엇입니까?)
이러한 질문에 대한 일반적인 대답이 너무 오래 걸릴 경우 다음 조건에서 답을 얻으면 특히 만족할 것입니다. 나는 필드 Z_70383776563201에 2^30
까지 순서의 일치의 기본 뿌리의 테이블을 발견했습니다
http://people.cis.ksu.edu/~rhowell/calculator/roots.html
을 그래서 정밀도 어떤 길이 2^29
의 숫자를 곱 연합의 2^30
번째 루트를 사용하는 경우/알고리즘/효율성 뉘앙스 고려해야합니까? ...
미리 감사드립니다. 나는 최선의 해결책에 대해 현상금을 수여 할 예정입니다 - 몇 가지 예를 들어 도와주십시오.
더 많은 이론적 인 수치 분석 질문을 보려면 여기를 클릭하십시오. http://scicomp.stackexchange.com/ – tskuzzy
이것은 매우 진보 된 질문입니다.이 분야에 대한 실제 경험이있는 소수의 사람 중 하나 일 것입니다. 대답 할 수 있어야합니다. 그러나 SO에 대해 대답하기에는 너무 큽니다. 그것은 페이지와 텍스트 + 다이어그램의 페이지를 필요로합니다 ... – Mysticial
하지만 ... 증거없는 기본 사실은 많은 페이지를 차지할 것입니까? 어쩌면 증명을 위해서 당신의 도움으로 방향을 찾을 수있었습니다. 또한 나는 특히 나를 염려하는 질문 끝에 특별한 제한을 두었다. 나는 특별히 깊은 방식이 아니더라도 이것을 대답 할 사람에게 맥주를 빚지고있다. – wh1t3cat1k