결정 모듈로 m


18

계수의 정수 행렬의 행렬식을 계산하기위한 효율적인 알고리즘 공지 무엇 , 잔여 물의 링 모듈로 . 숫자 (연산이, 링 필드를 수행하지 않도록) 프라임하지만 합성 될 수 없다. mmZmmm

내가 아는 한 (아래 읽기), 대부분의 알고리즘은 가우시안 제거 수정입니다. 문제는 이러한 절차의 계산 효율성에 관한 것입니다.

다른 접근법이있는 경우, 나는 또한 그것에 대해 궁금합니다.

미리 감사드립니다.

최신 정보:

이 질문의 출처를 설명하겠습니다. 가정, 소수이다. 따라서 은 필드입니다. 이 경우에는 보다 작은 수를 사용하여 모든 계산을 수행 할 수 있으므로 가우스 제거를 실행하는 데 필요한 모든 연산에 더하기, 곱하기 및 반전과 같은 모든 연산에 대한 상한이 있습니다.Z m mmZmm

반면에 우리는 경우에 몇 가지 숫자에 대한 반전을 수행 할 수 없습니다 아닌 소수. 따라서 결정자를 계산하려면 몇 가지 트릭이 필요합니다.m

그리고 나는 일을 수행하는 알려진 트릭이 무엇인지, 그러한 트릭이 책과 논문에서 발견 될 수 있는지 궁금합니다.


3
``효율적인 ''은 무슨 뜻입니까? 문제는 분명히 입니다. P
david

2
가요 a는 상수를 고정? 어떻게 주나요? m
Michael Blondin

2
작은 의미는 무엇입니까? 그들은 단항으로 쓰여질 수 있을까?
Michael Blondin

5
나는 아직도 그 질문을 이해하지 못한다. 정수 행렬의 행렬식은 다항식 시간으로 계산 될 수 있으므로이 값을 모듈로 가져갈 수 있습니다 . 에서 나누기를 수행 하거나 의 인수 분해를 찾을 필요가 없습니다 . Z m mmZmm
david

2
@ValeriySokolov : 기본 선형 대수입니다. 예를 들어, Christos H. Papadimitriou 의 계산 복잡성 의 문제 11.5.3을 확인하십시오 .
Ito Tsuyoshi

답변:


15

당신의 인수 분해 알고있는 경우 각 모듈로 계산할 수 P는 전자를 내가 내가 별도로 다음 중국어 remaindering를 사용하여 결과를 결합. 경우 I = 1 다음, 컴퓨팅 모듈러스 (P)가 전자 I을 이 필드이기 때문에, 용이하다. 더 큰 e i의 경우 Hensel 리프팅을 사용할 수 있습니다. m=p1e1pnenpieiei=1pieiei


감사합니다! 내가 찾던 것과 같습니다. 이것이 결정 요인에 대한 일반적인 관행입니까? (참조 환영).
Valeriy Sokolov

6
이것들은 comnputer algebra의 표준 기술입니다. von zur Gathen과 Gerhard의 Modern Computer Algebra 또는 컴퓨터 대수에 관한 다른 책을 살펴보십시오. 특정 문제에 대한, 또한 팬, 유 & 스튜어트 comet.lehman.cuny.edu/vpan/pdf/pan146.pdf에 의해 다음과 같은 용지 참조
마르쿠스 BLASER

17

Mahajan과 Vinay의 조합 알고리즘은 다음과 같이 정류 링에서 작동합니다. http://cjtcs.cs.uchicago.edu/articles/1997/5/contents.html


매우 흥미로운 논문에 대한 답장을 보내 주셔서 감사합니다.
Valeriy Sokolov

또한이 백서의 저자가 더 일반적인 문제 (모든 교환 링에 대해)를 해결했기 때문에보다 효율적인 알고리즘이 있다고 생각합니다.
Valeriy Sokolov

"있다"는 "알고있다"또는 "존재하다"를 의미합니까 (아직 찾지 못했습니까)? 그것은 합리적인 추측이지만, 나는 작은 모듈 수의 작은 호랑이의 고리의 구조가 그 모든 것을 도울 수 있다는 것에 회의적입니다. 내가 틀렸다면, 그 흥미로운 것을 발견 할 것입니다.
Sasho Nikolov

1
@ValeriySokolov 공정한 답변, 귀하의 질문에 대한 답변이 귀하의 질문에 답변하기 때문에, 귀하는 그 질문을 수락하는 것을 고려할 수도 있습니다 (또는 비합리적이지 않은 더 나은 답변을 기다리는 경우)
Suresh Venkat

@SashoNikolov 나는 Wolfram Mathematica가 어떻게 든 이것을 계산한다는 것을 알았습니다. "구현 노트 (Implementation Notes)"에서 그들은 말합니다 : Det는 모듈 식 방법과 행 축소를 사용하여 중국의 나머지 정리를 사용하여 결과를 구성합니다. 나는 그들이 정확히 무엇을하는지 알고 싶지만 빠른 검색으로 나에게 아무것도주지 않았습니다. "작은 합성물 "에 관해서는이 고리의 덧셈과 곱셈의 복잡성을 O ( 1 ) 로 간주하고 싶다는 것을 의미합니다 . 즉 O ( log m ) 와 같은 모든 요소 는 O ( 1 ) 로 간주됩니다 . mO(1)O(logm)O(1)
Valeriy Sokolov

11

이 문제를 해결하기 위해 가장 큰 복잡도는 정수 modulo m에 대한 행렬 곱셈의 비용에 의해 상한 Smith 일반 양식을 기반으로 하는 빠른 결정 론적 알고리즘 이 있습니다. 행렬 A 의 경우 알고리즘은 Smith 정규 형식을 출력하며, 여기서 det ( A ) 를 쉽게 계산할 수 있습니다.mAdet(A)

ωn×nZmO(nω)Zm

AZmn×ndet(A)O(nω)Zm

이것이 1996 년에 쓰여졌을 때 무증상 빠른 대안은 없었습니다 (이 논문은 동일한 경계를 가진 알고리즘의 기존 존재를 언급하지만 어느 알고리즘 또는 확률이 있는지는 알 수 없습니다).

mm

O(log2m)O(M(logm)loglogm)M(t)tω


θω

어쩌면 나는 이것에 대한 가장 일반적인 표기법을 모른다.
Juan Bermejo Vega

당신이 옳다고 생각합니다. "주류"로 바꾸겠습니다
Juan Bermejo Vega
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.