다항식 최대 공통점

Polynomial greatest common divisor

대수학에서, 두 다항식가장 공통점(주로 GCD로 약칭)은 가능한 한 가장 높은 수준의 다항식이며, 두 개의 원래 다항식의 한 요인이다. 이 개념은 두 정수의 가장공통점들과 유사하다.

필드 위에 있는 일변량 다항식의 중요한 경우, 다항식 GCD는 정수 GCD와 마찬가지로 긴 분할을 사용하는 유클리드 알고리즘에 의해 계산될 수 있다. 다항식 GCD는 반전 상수에 의해 곱셈까지만 정의된다.

정수 GCD와 다항식 GCD의 유사성은 유클리드 알고리즘과 유클리드 분할에서 추론할 수 있는 모든 성질을 일항다항식으로 확장할 수 있다. 더욱이 다항식 GCD는 대수학의 다양한 영역에서 근본적인 개념을 만드는 구체적인 성질을 가지고 있다. 전형적으로 두 다항식의 GCD의 뿌리는 두 다항식의 공통뿌리로, 이것은 그 뿌리에 대한 정보를 계산하지 않고 제공한다. 예를 들어, 다항식의 다중 루트는 다항식의 GCD와 그 파생상품이며, 나아가 GCD 연산은 다항식의 제곱 없는 인자화를 계산할 수 있게 해, 다항식의 뿌리가 원래 다항식의 주어진 다항식의 뿌리가 되는 다항식을 제공한다.

가장 큰 공통점수는 필드나 정수의 링 위에 있는 다변량 다항식고유한 요인화 영역에 걸쳐 정의될 수 있으며 더 일반적으로 존재한다. 계수 링에 GCD 알고리즘이 있으면 바로 계산하는 알고리즘이 존재한다. 이러한 알고리즘은 문제를 유클리드 알고리즘의 변형으로 줄이기 위해 변수 수에 대한 재귀로 진행한다. 컴퓨터 대수 시스템은 분수를 단순화하기 위해 그것들을 체계적으로 사용하기 때문에 그것들은 컴퓨터 대수학의 기본적인 도구다. 반대로 현대 다항식 GCD 이론의 대부분은 컴퓨터 대수 시스템의 효율성에 대한 필요성을 충족시키기 위해 개발되었다.

일반적 정의

pq통합 도메인 F계수가 있는 다항식(일반적으로 필드 또는 정수)으로 한다. pq의 가장 큰 공통점자p와 q를 나누는 다항식 d이며, pq의 모든 공통점자는 d도 나눈다. 모든 다항식 쌍(둘 다 0은 아님)은 F고유한 요인화 도메인인 경우에만 GCD를 가진다.

F가 필드이고 pq가 모두 0이 아닌 경우, p와 q를 둘 다 나누는 경우에만 다항 d가 가장 큰 공통점이며, 이 특성을 가진 다항식 중에서 가장 큰 정도를 가진다. p = q = 0이면 GCD는 0이다. 그러나 일부 저자들은 이 경우에 정의되어 있지 않다고 생각한다.

pq의 가장 큰 공통점수는 보통 "gcd(p, q)"로 표시된다.

가장 큰 공통점수는 고유하지 않다: dpq의 GCD라면 다항 fF의 변위 불가능한 요소 u가 있는 경우에만 또 다른 GCD이다.

그리고

= - .

즉, GCD는 반전 상수에 의해 곱셈까지 독특하다.

정수의 경우, 이 불변은 GCD로서 양수(양수)인 고유(다른 불변, 정반대)를 선택함으로써 해결되었다. 이 관례와 함께, 두 정수의 GCD는 또한 (일반적인 순서에서는) 가장 큰 공통점이다. 그러나, 일체형 영역을 넘는 다항식들에 대한 자연적인 총순서가 없기 때문에, 여기서는 같은 방식으로 진행할 수 없다. 한 분야를 넘는 일변량 다항식의 경우 GCD를 추가로 단일(가장 높은 수준의 계수로 1을 갖는 것)으로 요구할 수 있지만 더 일반적인 경우에는 일반적인 규약이 없다. 따라서 d = gcd(p, q) 또는 gcd(p, q) = gcd(r, s)와 같은 동등성은 "dpq의 GCD"이며 "p와 q는 rs와 동일한 GCD 집합을 가지고 있다"라고 읽어야 하는 일반적인 표기법 남용이다. 특히 gcd(p, q) = 1은 반전성 상수가 유일한 공통점임을 의미한다. 이 경우 정수 케이스와 유추하여 pq동시 다항식이라고 한다.

특성.

  • 위에서 설명한 것처럼 계수가 필드, 정수의 링 또는 보다 일반적으로 고유한 인수 영역에 속하는 경우 두 다항식의 GCD가 존재한다.
  • 만약 cp와 q의 공통점이라면, c는 그들의 GCD를 나눈다.
  • gcd ,)= ,+ q) 이 속성은 유클리드 알고리즘의 증명에 기초한다.
  • 계수의 링에 대한 모든 변환 불가능한 요소 k에 대해 ,)= , ) kq
  • Hence for any scalars such that is invertible.
  • , r)= 이면 ,)= ,)
  • )= 이면 ,)= ,) =
  • For two univariate polynomials p and q over a field, there exist polynomials a and b, such that and divides every such linear combination of p and q (Bézout's identity).
  • 세 개 이상의 다항식 중 가장 큰 공통점수는 두 개의 다항식과 유사하게 정의될 수 있다. 다음 ID에 의해 두 개의 다항식 중 GCD에서 재귀적으로 계산할 수 있다.
그리고

수작업 계산에 의한 GCD

두 다항식의 가장 큰 공통점을 찾는 방법에는 여러 가지가 있다. 그 중 두 가지는 다음과 같다.

  1. 다항식인자화 - 각 식의 인자를 찾은 다음 각 인자의 집합 내에서 모든 인자가 보유한 공통 인자 집합을 선택한다. 이 방법은 보통 가장 큰 공통점수를 계산하는 것보다 팩토링이 더 어렵기 때문에 단순한 경우에만 유용할 수 있다.
  2. 2개의 숫자와 동일한 방식으로 두 개의 다항식의 GCD를 찾는 데 사용할 수 있는 유클리드 알고리즘.

팩토링

팩토링을 사용하여 두 다항식의 GCD를 찾으려면 두 다항식을 완전히 고려하십시오. 그런 다음, 모든 공통 요인의 산물을 취한다. 이 단계에서 우리는 반드시 단항 다항식을 갖는 것은 아니므로, 최종적으로 이것을 상수로 곱하여 단항 다항식으로 만든다. 이것은 모든 공통의 구분자를 포함하고 단일성이기 때문에 두 다항식의 GCD가 될 것이다.

예 1: x2 + 7x + 6 및 x - 5x2 - 6의 GCD를 찾으십시오.

x2 + 7x + 6 = (x + 1)(x + 6)
x2 − 5x − 6 = (x + 1)(x − 6)

따라서 그들의 GCD는 x + 1이다.

유클리드 알고리즘

다항식을 인수하는 것은 특히 다항식이 많은 경우 어려울 수 있다. 유클리드 알고리즘은 어떤 쌍의 다항식에도 작용하는 방법이다. 그것은 유클리드 분단을 반복적으로 이용한다. 이 알고리즘을 두 숫자에 사용하면 각 단계에서 숫자의 크기가 감소한다. 다항식에서는 각 단계에서 다항식의 정도가 감소한다. 필요한 경우 단수로 만든 마지막 0이 아닌 나머지 부분은 두 다항식의 GCD이다.

좀 더 구체적으로, 두 다항식 a(x)와 b(x)의 gcd를 찾으려면 b 0 0을 가정할 수 있다(그렇지 않으면 GCD는 a(x)이다).

유클리드 분할은 2개의 다항식 q(x)와 r(x)를 제공하며, 나머지는 다음과 같다.

다항식 g(x)b(x)r0(x)를 모두 나눈 경우에만 a(x)b(x)를 모두 나눈다. 그러므로

설정

유클리드 사단을 반복하여 새로운 다항식 q1(x), r1(x), a2(x), b2(x) 등을 얻을 수 있다. 각 단계마다

그래서 그 순서는 결국 어느 시점에 도달하게 될 것이다.

그리고 하나는 GCD를 받았다.

예: x2 + 7x + 6x2 - 5x - 6의 GCD 찾기:

x2 + 7x + 6 = 1⋅ (x2 - 5x - 6) + (12 x + 12)
x2 − 5x − 6 = (12 x + 12) ( 1/12x1/2) + 0

12 x + 12는 0이 아닌 마지막 남은 것이기 때문에 원래 다항식의 GCD이며, 모닉 GCD는 x + 1이다.

이 예에서, 2단계 이전에 12개의 분모를 인수하여 도입하는 것을 피하기는 어렵지 않다. 이는 항상 의사-제거 시퀀스를 사용하여 수행할 수 있지만, 주의하지 않고 계산 중에 매우 큰 정수를 도입할 수 있다. 따라서 컴퓨터 연산에는 아래에 설명된 다른 알고리즘이 사용된다.

이 방법은 계산 중에 발생하는 계수의 0과 동일성을 검정할 수 있는 경우에만 효과가 있다. 따라서 실제에서 계수는 정수, 합리적 수, 유한 장의 요소 또는 선행 필드 중 하나의 정밀하게 생성된 필드 확장에 속해야 한다. 계수가 근사적으로만 알려진 실제 숫자를 나타내는 부동 소수점이라면, 잘 정의된 계산 결과(숫자로 안정된 결과)에 대한 GCD의 정도를 알아야 한다. 이 경우 일반적으로 단수 분해에 기초하여 다른 기법을 사용할 수 있다.

필드에 계수가 있는 일변량 다항식

한 분야에 걸친 일변량 다항식의 경우는 여러 가지 이유로 특히 중요하다. 첫째로, 이것은 가장 기초적인 경우여서 대수학에서 가장 첫 번째 과정에 나타난다. 둘째, 정수의 경우와 매우 유사하며, 이 비유는 유클리드 영역의 개념의 근원이 된다. 세 번째 이유는 다변량 사례와 고유한 요인화 영역의 계수에 대한 이론과 알고리즘이 이 특정 사례에 강하게 기초하고 있기 때문이다. 마지막으로 중요한 것은 다항식 GCD 알고리즘과 파생 알고리즘을 사용하면 다항식 알고리즘을 계산하지 않고도 다항식의 뿌리에 대한 유용한 정보를 얻을 수 있다는 것이다.

유클리드 분단

유클리드의 GCD 계산 알고리즘에 사용되는 다항식 유클리드 분할은 유클리드 정수의 유클리드 분할과 매우 유사하다. 그것의 존재는 다음과 같은 정리에 근거한다: 한 분야에 걸쳐 정의된 두 개의 일변량 다항식 a와 b 0 0을 감안할 때, 충족시키는 두 개의 다항식 q(지분)와 r(지분)가 존재한다.

그리고

여기서 "deg(...)"는 0 다항식의 정도를 나타내며, 0 다항식의 정도는 음수로 정의된다. 더욱이 qr은 이러한 관계에 의해 고유하게 정의된다.

정수의 유클리드 분할과 다른 점은 정수의 경우 정도를 절대값으로 대체하고, 고유성을 가지기 위해서는 r이 음이 아니라고 가정해야 한다는 것이다. 그러한 정리가 존재하는 고리를 유클리드 영역이라고 한다.

정수와 마찬가지로 다항식의 유클리드 분할은 긴 분할 알고리즘으로 계산할 수 있다. 이 알고리즘은 보통 종이와 펜슬 연산을 위해 제시되지만, 다음과 같이 공식화되었을 때 컴퓨터에서는 잘 작동한다(장분할의 연필과 종이 연산에서 변수의 이름이 종이 시트의 영역과 정확히 일치한다는 점에 유의한다). 다음 계산에서 "deg"는 인수 정도(관습 deg (0) < 0)를 나타내며, "lc"는 변수의 가장 높은 수준의 계수인 선행 계수를 나타낸다.

Euclidean division Input: a and b ≠ 0 two polynomials in the variable x; Output: q, the quotient, and r, the remainder;  Begin q := 0     r := a d := deg(b)     c := lc(b)     while deg(r) ≥ d do s := lc(r)/c xdeg(r)−d q := q + s r := rsb end do return (q, r) end

이 알고리즘의 유효성의 증명은 전체 "그동안" 루프 동안 a = bq + r을 가지고 있고 deg(r)는 각 반복에서 감소하는 비 음의 정수라는 사실에 의존한다. 따라서 이 알고리즘의 유효성에 대한 증명도 유클리드 분할의 타당성을 증명한다.

유클리드 알고리즘

정수에 대해서는 유클리드 분할을 통해 유클리드 알고리즘을 정의하여 GCD를 계산할 수 있다.

유클리드 알고리즘은 ab의 두 다항식으로부터 시작하여 b = 0까지 쌍(a, b)을 (b, rem(a, b)로 재귀적으로 대체하는 것으로 구성된다. GCD는 0이 아닌 마지막 남은 것이다.

유클리드 알고리즘은 다음과 같이 재귀 프로그래밍 방식으로 공식화할 수 있다.

명령적 프로그래밍 스타일에서 동일한 알고리즘이 되어 각 중간 나머지에 이름을 부여한다.

  (  1  i    0  i   do do do do      끝내다  돌아오다 

ri 정도 순서는 엄격히 감소하고 있다. 따라서 기껏해야 deg(b) 단계, 즉 null 나머지를 얻는다. r(ak, b) 및 (b, 렘(a,b)이 동일한 divisor를 가지므로 공통 divisor의 집합은 유클리드 알고리즘에 의해 변경되지 않고 따라서 모든 쌍(ri, ri+1)은 동일한 divisors 집합을 가진다. 따라서 a와 b의 공통점들은 rk−1 0의 공통점이다. 따라서 rk−1 ab의 GCD이다. 이것은 유클리드 알고리즘이 GCD를 계산한다는 것을 증명할 뿐만 아니라 GCD가 존재한다는 것을 증명한다.

Bézout의 정체성과 확장된 GCD 알고리즘

Bézout의 정체성은 GCD 관련 정리로서, 처음에는 정수에 대해 증명되었으며, 이는 모든 주요 이상영역에 유효하다. 한 분야를 넘는 일변 다항식의 경우 다음과 같이 표기할 수 있다.

g가 두 다항식 ab(둘 다 0이 아님) 중 가장 큰 공통점이라면, 다음과 같은 두 다항식 u와 v가 있다.

+ = 베즈아웃의 ID)

u = 1, v = 0 또는 u = 0, v = 1 또는

다항식의 경우에 이 결과의 관심사는 다항식 uv를 계산하는 효율적인 알고리즘이 있다는 것이다. 이 알고리즘은 루프의 각 반복에서 수행된 몇 가지 더 많은 계산에 의해 유클리드 알고리즘과 다르다. 따라서 확장 GCD 알고리즘이라고 불린다. 유클리드 알고리즘과의 또 다른 차이점은 유클리드 분할의 "quo"로 표시된 인용구를 나머지 부분 대신 사용한다는 것이다. 이 알고리즘은 다음과 같이 동작한다.

확장 최대 공약수 알고리즘 입력:위 성명 a1, b1,1b)gb1{\displaystyle{\begin{정렬}a=ga_{1}\\b=gb_{1}\end{정렬}g a=}}r0-1r1)bs0=1s1=0t 0=0시작하세요 등에 a, b, 일도량의:다항식 출력:g, 최대 공약수 a와 bu, v,.   t1=1{\displaystyle{\begin{배열}{ 주어}r_{0}=a&, r_{1}=b\\s_{0}=1&, s_{1}=0\\t_{0}=0&, t_{1}=1\end{배열}}}에(나는 1;리 ≠ 0;나는 갈i+1원)q 현재의 ⁡(나는 1− r, r나는){\displaystyle q=\operatorname{상황}(r_{i-1},r_{나는})}r나는 + 1)r나는 − 1− qr나는 열심인 나는 + 1)s나는 − 1− qsi. =니     ti1+)나는;=t_{i-1}-qt_{나는}\end{정렬}}}끝 g나요 나는)si=1v− 나는 1{\displaystyle{\begin{정렬}g& − t1u− r;=r_{i-1}\\u&, =s_{i-1}\\v&, =t_{i-1}\end{정렬}}}1− q 있어 나는{\displaystyle{\begin{정렬}r_{i+1}&, =r_{i-1}-qr_{나는}\\s_{i+1}&, =s_{i-1}-qs_{나는}\\t_{i+1}& −어.      1)- )  -   b=( - )  s {\displaystyle 

알고리즘이 출력 사양을 만족한다는 증거는 우리가 가진 모든 것에 대해

암시하는 후자의 평등.

도에 대한 주장은 반복할 때마다 ri 정도가 감소함에 따라 기껏해야 si ti 정도가 증가한다는 사실에 따른 것이다.

이 알고리즘의 흥미로운 특징은 Bezout의 아이덴티티 계수가 필요할 때 GCD에 의한 입력 다항식의 몫을 무료로 얻을 수 있다는 것이다.

대수확장 산술

확장 GCD 알고리즘의 중요한 적용은 대수적 필드 확장에서 분업을 계산할 수 있게 하는 것이다.

최소 다항식 f가 도 n을 갖는 원소에 의해 생성된 필드 K의 대수적 확장을 L로 한다. L의 원소들은 대개 n보다 작은 정도의 K에 대한 일변량 다항식으로 표현된다.

L의 추가는 단순히 다항식의 추가일 뿐이다.

L의 곱셈은 다항식 다음에 f를 곱한 것이다.

L의 0이 아닌 원소 a의 역은 Bézout의 ID au + fv = 1의 계수 u로 확장된 GCD 알고리즘으로 계산할 수 있다. (최소 다항식 f는 수정할 수 없기 때문에 GCD는 1이다.) 확장 GCD 알고리즘 명세의 정도 불평등은 deg(u) < deg(f)를 얻기 위해 f에 의한 추가 분할이 필요하지 않음을 보여준다.

하위 결과물

일변량 다항식의 경우, 가장 큰 공통점수와 결과점 사이에는 강한 관계가 있다. 더 정확히 말하면, 두 다항식 P의 결과물 QPQ의 GCD가 일정하지 않은 경우에만 값이 0인 PQ의 계수의 다항식 함수다.

소성분 이론은 이 성질을 일반화한 것으로, 두 다항식의 GCD를 일반화할 수 있으며, 그 결과 0번째 다항식이다.[1]

2개의 다항식 P와 Q의 i번째 하위항식 다항식 Si(P, Q)는 계수P와 Q 계수의 다항식 함수인 most i의 다항식 다항식이고, i번째 주요 하위항식 계수 si(P,Q)는 Si(P, Q)의 정도 계수다. 그들은 PQ의 GCD가 만약의 경우에 한해서만 학위를 가지고 있는 속성을 가지고 있다.

( , Q)= = d- 1( , )= (P, Q)

이 경우 Sd(P ,Q)는 PQ의 GCD이며,

하위 결과 다항식의 모든 계수는 P와 Q의 실베스터 행렬의 하위 행렬의 결정요인으로 정의된다. 이것은 하위 결과물이 "전문화"를 잘 함축하고 있다는 것을 의미한다. 더 정확히 말하면, 하위 성분은 모든 정류 R에 걸쳐 다항식에 대해 정의되며, 다음과 같은 특성을 갖는다.

φ 다른 교환 링 SR의 고리 동형성이 되게 하라. 그것은 RS 위에 있는 다항식 고리들 사이의 φ로도 알려진 또 다른 동형성으로 확장된다. 그런 다음 PQ가 R에 계수가 있는 일변량 다항식이라면 다음과 같다.

그리고

그런 다음 하위 결과 다항식 및 주요 하위 결과 계수인 φ(P)와 φ(Q)는 PQφ에 의한 영상이다.

하위 결과물은 정수 계수를 가진 두 개의 다항식 컴퓨터의 GCD 계산을 위한 기초가 되는 두 가지 중요한 속성을 가지고 있다. 첫째로, 결정요소를 통한 그들의 정의는 GCD 계수의 크기인 Hadamard 불평등을 통해 경계를 허용한다. 둘째, 이 경계와 우수한 전문화의 특성은 모듈식 계산중국식 나머지 정리를 통해 정수 계수를 가진 두 다항식의 GCD를 계산할 수 있다(아래 참조).

기술 정의

내버려두다

필드 K에 계수가 있는 두 개의 일변 다항식이다. P (를) 기준으로 표시하자. imin과 같은 비 음의 정수 i의 경우, 다음과 같이 한다.

…과 같은 직선적 지도가 되다

PQ결과물실베스터 행렬의 결정인자로, X의 힘을 기초로 의 (제곱) 행렬이다. 마찬가지로, i-subresultant 다항식은 행렬의 하위 행렬 결정요인의 관점에서 정의된다.

이 매트릭스를 좀 더 정확하게 설명합시다.

pi = i < 0 또는 i > m의 경우 0으로 하고, i < 0 또는 i > n의 경우i q = 0으로 한다. 실베스터 행렬은 (m + n) × (m + n)-매트릭스로 i번째 행과 j번째 열의 계수가 j j n의 경우 p이고m+jiji j > n:[2]

The matrix Ti of is the (m + ni) × (m + n − 2i)-submatrix of S which is obtained by removing the last i rows of zeros in the submatrix of the columns 1 to ni and n + 1 to m + ni of S (that is removing i columns in each block and the i last rows of zeros). 하위 결과 계수 si Ti m + n - 2i 첫 번째 행의 결정 요인이다.

Vi 다음과 같이 정의된 (m + n - 2i) × (m + n - i) 행렬로 한다. 먼저 (m + n - 2i - 1) × (m + n - 2i - 1) × (m + n - 2i - 1) ID 매트릭스 오른쪽에 (i + 1)의 0 열을 추가한다. 그런 다음 (m + n - i - 1) 0에 이어 Xi, Xi−1, ..., X, 1:로 구성된 행으로 결과 행렬의 하단을 경계로 한다.

이 표기법으로 i번째 하위 결과물 다항식은 매트릭스 제품 VTii 결정 요인이 된다. 그것의 정도 계수 j는 그것의 m + n - 2i - 1번째 행과 (m + n - i - j)-번째 행으로 구성된 Ti 정사각형 하위 행의 결정인자다.

증거의 스케치

정의한 바와 같이, 하위 결과물이 원하는 특성을 가지고 있다는 것은 명백하지 않다. 그럼에도 불구하고 선형대수의 성질과 다항식의 성질을 합친다면 그 증거는 오히려 간단하다.

정의한 바와 같이, 행렬 Ti 열은 i }의 영상에 속하는 일부 다항식 계수의 벡터다 i-subresultant 다항식 Si 정의는 계수 벡터가 이러한 열 벡터의 선형 결합이므로 S가 si .의 영상에 속함을 보여준다.

GCD의 정도가 i보다 크면, 베주트의 정체성은 i{\의 영상에서 0이 아닌 모든 다항식이 i보다 큰 정도를 가지고 있음을 보여준다. 이것i S=0을 암시한다.

반면에 GCD의 정도가 i라면, Bézout의 정체성은 다시 m + n - i보다 낮은 GCD의 배수가 i 의 이미지에 있음을 증명할 수 있다 이러한 배수의 벡터 공간은 치수 m + n - 2i를 가지며, i보다 작지 않고 쌍으로 다른 도들의 다항식의 기초를 가지고 있다. Ti 기둥 에셀론 형태의 m + n - 2i 첫 번째 행의 하위 행렬이 아이덴티티 매트릭스이므로i s가 0이 아님을 의미한다. 따라서 Si i {\의 영상에 있는 다항식인데 GCD의 배수로 같은 정도를 가지고 있다. 그러므로 그것은 가장 큰 공통점이다.

GCD 및 루트 찾기

사각자유인자화

대부분의 뿌리 찾기 알고리즘다중 루트를 갖는 다항식에서는 나쁘게 작용한다. 따라서 뿌리 찾기 알고리즘을 호출하기 전에 이를 탐지하고 제거하는 것이 유용하다. 다항식의 다중 루트는 다항식의 GCD와 그 파생상품의 뿌리이기 때문에 GCD 연산은 다중 루트의 존재를 검출할 수 있다.

다항식 및 그 파생상품의 GCD를 계산한 후, 추가적으로 GCD 계산은 다항식의 완전한 사각 자유 인자화를 제공하는데, 이것은 인수화다.

여기서, 각 i에 대해, f가 다중성 i의 루트가 없는 경우 다항식 fi 1이거나, 그 루트가 정확히 f의 다중성 i의 루트인 사각형 없는 다항식(다항식, 즉 다중 루트가 없는 다항식)인 경우(윤의 알고리즘 참조)이다.

따라서 사각 자유 인자화는 여러 근을 가진 다항식의 뿌리찾기를 낮은 수준의 여러 제곱 없는 다항식의 뿌리찾기로 감소시킨다. 사각 자유 인자화는 또한 대부분의 다항 인자화 알고리즘의 첫 번째 단계다.

스터름 시퀀스

실제 계수가 있는 다항식의 스터름 시퀀스는 다항식 및 그 파생상품에 적용된 유클리드 알고리즘의 변종이 제공하는 잔존물의 시퀀스다. Sturm 시퀀스를 얻기 위해, 단순히 지시를 대신한다.

에우클리드 알고리즘에 의해

a 지점에서 평가될 때 V(a)를 시퀀스에서 기호의 변경 횟수로 한다. 스터름의 정리는 V(a) - V(b)가 [a, b] 구간에 있는 다항식의 실제 뿌리 수라고 주장한다. 따라서 스터름 시퀀스는 주어진 간격으로 실제 뿌리의 수를 계산할 수 있다. 모든 하위 간격이 최대 하나의 루트를 포함할 때까지 간격을 세분화함으로써, 이것은 임의의 작은 길이의 간격으로 실제 루트를 위치시키는 알고리즘을 제공한다.

링 위의 GCD 및 분수 영역

이 절에서는 고유 인자화 영역 R, 전형적으로 정수의 링, 그리고 그 영역 F, 전형적으로 합리적인 숫자의 필드 위에 다항식을 고려하며, 이러한 링 위에 있는 변수 집합에서 다항식의 링을 나타낸다.X]과 F[X]로 나타낸다.

원시 부품-함량 인자화

"cont(p)"로 표시된 다항식 p p R[X]의 내용은 계수의 GCD이다. 다항식 qF[X]를 쓸 수 있다.

여기pR[X] c ∈ R: q의 계수(예: 제품)와 p = cq의 모든 분모 중 c를 곱하면 충분하다. q내용은 다음과 같이 정의된다.

두 경우 모두 내용R의 단위에 의해 곱셈까지 정의된다.

R[X] 또는 F[X]의 다항식의 원시 부분은 다음과 같이 정의된다.

두 경우 모두 원시적R[X]의 다항식이며, 이는 1이 계수의 GCD임을 의미한다.

따라서 R[X] 또는 F[X]의 모든 다항식은 다음과 같이 고려될 수 있다.

그리고 이 인자화는 R의 단위에 의한 내용물의 곱셈과 이 단위의 역에 의한 원시 부분의 곱셈에 따라 독특하다.

가우스의 보조정리법은 두 원시 다항식의 산물이 원시적이라는 것을 암시한다. 그 뒤를 잇는다.

그리고

R을 통한 GCD와 F를 통한 GCD의 관계

앞 절의 관계는 R[X]과 F[X]의 GCD 사이의 밀접한 관계를 의미한다. 모호함을 피하기 위해, "gcd"라는 표기법은 GCD가 계산되는 링에 의해 다음에서 색인화될 것이다.

q1 q2 F[X]에 속할 경우

p1 p2 R[X]에 속하면

그리고

따라서 다항식 GCD의 계산은 F[X]와 R[X]에 걸쳐 본질적으로 동일한 문제다.

합리적인 숫자를 초과하는 일변량 다항식의 경우 유클리드 알고리즘이 GCD 계산에 편리한 방법이라고 생각할 수 있다. 그러나, 그것은 많은 양의 정수 분수를 단순화하는 것을 포함하며, 결과 알고리즘은 효율적이지 않다. 이러한 이유로, 정수 위에 다항식만을 사용하는 유클리드 알고리즘을 수정하는 방법이 고안되었다. 분수를 도입하는 유클리드 사단을 이른바 사이비 분할로 대체하고, 유클리드 알고리즘의 나머지 시퀀스를 이른바 사이비 제거 시퀀스로 대체(아래 참조)하는 으로 구성된다.

다변량 다항식용 GCD가 존재한다는 증거

앞의 절에서 우리는 R[X]의 다항식 GCD를 RF[X]의 GCD에서 추론할 수 있다는 것을 보았다. 증거를 자세히 보면, GCD가 R[X]와 F[X]에 존재한다면, 이를 통해 우리는 R[X]에서 GCD의 존재를 증명할 수 있다는 것을 알 수 있다. 특히 R에 GCD가 존재하고, X가 하나의 변수로 축소되면, 는 R[X]에 GCD가 존재한다는 것을 증명한다(유클리드 알고리즘은 F[X]에 GCD가 존재한다는 것을 증명한다).

n 변수의 다항식은 (n - 1) 변수의 다항식 링 위에 있는 일항 다항식으로 간주할 수 있다. 따라서 변수의 수에 대한 재귀는 GCD가 존재하며 R로 계산될 수 있는 경우, GCD가 존재하며 R을 통한 모든 다변량 다항식 링에서 계산될 수 있음을 보여준다. 특히 R이 정수나 필드의 링이라면, GCD는 R[x1, ..., xn]에 존재하며, 앞에 있는 것은 이들을 계산하는 알고리즘을 제공한다.

고유한 인자화 영역을 넘는 다항식 링이 고유한 인자화 영역이라는 증명도 비슷하지만, 필드 위에 일항다항식을 인자화하는 일반 알고리즘이 없기 때문에 알고리즘을 제공하지 않는다(단항식 po에 대한 인자화 알고리즘이 존재하지 않는 필드의 예도 있다).리노믹스

의사-제거 순서

이 절에서는 적분 영역 Z(일반적으로 정수의 링 Z)와 분수 Q(일반적으로 합리적인 숫자의 필드 Q)를 고려한다. 단변 다항 링 Z[X]에 있는의 다항식 A와 B가 주어진 경우, A by A의 유클리드 분할(Qover Q)은 Z[X]에 속하지 않을 수 있는 지수와 나머지를 제공한다.

다음 다항식에 유클리드 알고리즘을 적용하는 경우

그리고

유클리드 알고리즘의 연속 잔존자는

입력 다항식의 계수의 작은 정도와 작은 크기에도 불구하고, 다소 큰 크기의 정수 분수를 조작하고 단순화해야 한다는 것을 알 수 있다.

사이비 분할은 모든 잔류자가 Z[X]에 속하는 유클리드 알고리즘의 변형을 허용하기 위해 도입되었다.

( )={\}, b = {\B)=b가 prem(A,B)으로 표시된 A의 의사분할의 사이비-remider는 다음과 같다.

여기서 lc(B)B의 선행 계수(Xb 계수)이다.

Z[X]에서 두 다항식의 사이비 구획의 사이비-리메인은 항상 Z[X]에 속한다.

의사 소거 순서는 (의사) 잔존자 r 명령i 교체하여 얻은 순서다.

에우클리드 알고리즘에 의해

여기서 α는 분자의 모든 계수를 정확히 나누는 Z의 원소다. α의 다른 선택은 다른 의사-제거 시퀀스를 제공하며, 이는 다음 하위 절에 설명되어 있다.

다항식을 변위 상수(Q)로 곱해도 두 다항식의 공통점수는 변경되지 않기 때문에, 유사 리마인더 시퀀스에서 마지막 0이 아닌 항은 입력 다항식의 GCD(Q[X])이다. 따라서 의사 제거 시퀀스는 Q의 분수를 도입하지 않고도 Q[X]의 GCD를 계산할 수 있다.

어떤 맥락에서는 사이비-제거자의 선행계수의 기호를 조절하는 것이 필수적이다. 결과물과 하위 결과물을 계산하거나 스투름의 정리를 사용할 때 일반적으로 그러하다. 이 제어는 lc(B)를 의사-제거기의 정의에서 절대값으로 대체하거나 α(α가 나머지 계수를 모두 나누면 –α도 마찬가지다)[1]의 기호를 제어함으로써 이루어질 수 있다.

사소한 사이비-제거 순서

나머지 시퀀스 중 가장 간단한 것은 항상 α = 1을 취하는 것이다. 실제로 입력 다항식의 정도에 따라 계수의 크기가 기하급수적으로 커지기 때문에 흥미롭지 않다. 이는 앞 절의 예에 분명하게 나타나는데, 그 예에 대해서는 연이은 사이비 제거자가 있다.

알고리즘의 각 반복에서 연속 잔존자의 계수 자릿수가 두 배 이상 증가한다. 이것은 사소한 사이비-제거 순서들의 전형적인 행동이다.

원시 사이비-제거기

원시 사이비 제거 순서는 분자의 함량 α를 취하는데 있다. 따라서 모든 ri 원시 다항식이다.

원시 사이비-기억 시퀀스는 가장 작은 계수를 생성하는 사이비-기억기 시퀀스다. 그러나 Z에서 다수의 GCD를 계산해야 하기 때문에, 특히 Z 자체가 다항식 고리인 경우에는 실제로 사용하기에 충분히 효율적이지 않다.

앞의 절과 같은 입력으로, 컨텐츠에 의한 분할 후, 연속적인 잔존자는 다음과 같다.

계수의 작은 크기는 GCD의 정수 GCD와 GCD에 의한 눈금이 계산되었다는 사실을 숨긴다.

하위결과 의사-제거 순서

하위 결과 시퀀스는 사이비 제거기로도 계산할 수 있다. 이 과정은 모든 ri 하위 결과 다항식인 방식으로 α를 선택하는데 있다. 놀랍게도 α의 연산은 매우 쉽다(아래 참조). 반면 알고리즘의 정확성 증명은 2연속 잔류자의 차이에 대한 모든 가능성을 고려해야 하기 때문에 어렵다.

하위 결과 시퀀스의 계수는 원시 사이비 제거 시퀀스의 계수보다 훨씬 큰 경우는 드물다. Z에서의 GCD 연산이 필요하지 않기 때문에 의사-제거기가 있는 결과물 하위 시퀀스는 가장 효율적인 연산을 제공한다.

앞의 절과 같은 입력으로, 연속 잔존자는 다음과 같다.

계수의 크기가 적당하다. 그들은 GCD 계산 없이 정확한 분할만 받는다. 이것은 이 알고리즘을 원시 사이비 제거 시퀀스의 그것보다 더 효율적으로 만든다.

의사-제거기를 사용한 결과물 하위 시퀀스를 계산하는 알고리즘은 다음과 같다. 이 알고리즘에서 입력(a, b)Z[X]의 다항식 쌍이다. ri Z[X]의 연속적인 유사 잔류물이고, 변수 idi 음의 정수가 아니며, 그리스 문자는 Z의 원소를 나타낸다. 기능 deg() 그리고 rem() 다항식의 정도와 유클리드 사단의 나머지를 나타낸다. 알고리즘에서 이 나머지는 항상 Z[X]에 있다. 마지막으로 표시된/분할은 항상 정확하며 그 결과는 Z[X] 또는 Z이다.

 (    i  i  0   i +  do do do          만일  그때              다른              의 경우에 끝나다.      끝내다

참고: "lc"는 변수의 가장 높은 수준의 계수인 선행 계수를 의미한다.

이 알고리즘은 최대 공통 구분자(마지막 0이 아닌 ri)뿐만 아니라 모든 하위 결과 다항식도 계산한다. 나머지 ri (deg(ri−1) - 1)- 제3차 결과물 다항식이다. deg(ri) < deg(ri−1) - 1인 경우 deg(ri)-th 하위 결과물 다항식은 lc(ri)deg(ri−1)−deg(ri)−1r이다i. 다른 하위 결과 다항식은 모두 0이다.

사이비 제거기가 있는 스터름 시퀀스

Sturm 시퀀스와 동일한 특성을 가진 시퀀스를 구성하기 위해 유사 리마인더를 사용할 수 있다. 이것은 스투름 순서에서와 같은 기호를 가지기 위해 연속적인 사이비 제거기의 기호를 조절할 필요가 있다. 이것은 다음과 같이 수정된 사이비 제거제를 정의함으로써 이루어질 수 있다.

( )={\}, = {\)=b경우, A의한 의사분할의 수정된 사이비-리메인 프리2(A, B)는 다음과 같다.

여기서 lc(B)는 B의 선행계수(Xb 계수)의 절대값이다.

정수 계수가 있는 입력 다항식의 경우 이를 통해 정수 계수가 있는 다항식으로 구성된 Sturm 시퀀스를 검색할 수 있다. 결과물 하위 사이비-제거자 순서는 유사하게 수정될 수 있으며, 이 경우 잔여물의 징후는 합리적으로 계산된 신호와 일치한다.

위에 제공된 하위 결과물 사이비-제거자 시퀀스 계산 알고리즘에서p 2(,) - 사용한다면 잘못된 하위 결과물을 계산한다는 점에 유의하십시오

모듈형 GCD 알고리즘

fg가 일부 미세 생성 필드 F에 대해 F[x]의 다항식인 경우, 유클리드 알고리즘은 GCD를 계산하는 가장 자연스러운 방법이다. 그러나 현대컴퓨터 대수 시스템은 중간표현이라는 현상 때문F가 유한할 경우에만 그것을 사용한다. 유클리드 알고리즘이 진행되는 동안 도수가 계속 감소하지만 F유한하지 않으면 F의 반복적인 산술 연산이 더 큰 식을 야기하는 경향이 있기 때문에 다항식의 비트 크기가 계산 중에 증가할 수 있다(때로는 극적으로). 예를 들어 분모가 b로 경계되는 합리적 수 2개를 추가하면 분모가 b2 경계되는 합리적인 수가 생기기 때문에 최악의 경우 한 번의 조작만으로 비트 크기가 두 배 가까이 커질 수 있다.

계산을 신속하게 하려면 FgD[x]에 있는 링 D를 취하고 D/I가 유한 링이 되도록 이상적인 I을 취한다. 그런 다음 유클리드 알고리즘을 사용하여 이 유한 고리에 대해 GCD를 계산하십시오. 재구성 기법(중국 잔존 정리, 합리적 재구성 등)을 사용하면 여러 가지 이상 I에서 fg의 GCD를 복구할 수 있다. 이 작업이 최소도가 아닌 모듈 이미지를 무시하고 선행 계수가 사라지는 이상 I모듈로를 피한다는 것을 증명할[4] 수 있다.

Suppose , , and . If we = (2) I 다음에 / I 유한 고리( 이(가) 에서 최대값이 아니기 때문에 필드가 아님). )[ 영상에 적용된 유클리드 알고리즘이 성공하여 1을 반환한다. 는 F[ 에서 , 의 GCD도 1이어야 함을 의미한다. 이 예는 표현이 팽창하기엔 도가 너무 작았기 때문에 어떤 방법으로도 쉽게 다룰 수 있었지만, 두 다항식이 GCD 1을 가지면 모듈식 알고리즘이 단일 I 후에 종료될 가능성이 있음을 보여준다

참고 항목

참조

  1. ^ a b 바수, 폴락 & 로이 2006
  2. ^ 많은 저자는 실베스터 매트릭스를 S의 전치물로 정의한다. 이것은 선형 지도의 행렬을 작성하는 일반적인 관례를 깬다.
  3. ^ 크누스 1969
  4. ^ 반 회이 & 모나간 2004
  • Basu, Saugata; Pollack, Richard; Roy, Marie-Françoise (2006). Algorithms in real algebraic geometry, chapter 4.2. Springer-Verlag.
  • Davenport, James H.; Siret, Yvon; Tournier, Évelyne (1988). Computer algebra: systems and algorithms for algebraic computation. Translated from the French by A. Davenport and J.H. Davenport. Academic Press. ISBN 978-0-12-204230-0.
  • van Hoeij, M.; Monagan, M.B. (2004). Algorithms for polynomial GCD computation over algebraic function fields. ISSAC 2004. pp. 297–304.
  • Javadi, S.M.M.; Monagan, M.B. (2007). A sparse modular GCD algorithm for polynomials over algebraic function fields. ISSAC 2007. pp. 187–194.
  • Knuth, Donald E. (1969). The Art of Computer Programming II. Addison-Wesley. pp. 370–371.
  • Knuth, Donald E. (1997). Seminumerical Algorithms. The Art of Computer Programming. Vol. 2 (Third ed.). Reading, Massachusetts: Addison-Wesley. pp. 439–461, 678–691. ISBN 0-201-89684-2.
  • Loos, Rudiger (1982), "Generalized polynomial remainder sequences", in B. Buchberger; R. Loos; G. Collins (eds.), Computer Algebra, Springer Verlag