Perhitungan polinomial minimal

Anton 09/08/2017. 6 answers, 623 views
computer-algebra computational-number-theory sage

Ini relatif mudah (tapi kadang-kadang sangat rumit) untuk menghitung polinomial minimal bilangan algebra $ \ alpha $ bila $ \ alpha $ dapat dikenali secara radikal. Misalnya, query sederhana

"polinomial minimum 2 ^ (1/5) * (1-exp (2 * pi * i / 5))"

ke Wolfram Alpha akan menghitung polinomial minimal $ \ sqrt [5] {2} \ left (1 - \ exp \ left (\ frac {2 \ pi i} {5} \ right) \ right) $. Namun, saya tidak tahu bagaimana menghitung polinomial minimal bilangan algebra yang tidak dapat dikenali secara radikal. Selain itu, saya ingin menghitung polinomial minimal kombinasi linear bilangan aljabar.

Misalnya, ambil $ f (x) = x ^ 5 - x + 1 $. Polinomial ini tidak dapat direduksi, memiliki grup Galois $ S_5 $, yang tidak dapat dipecahkan, oleh Teelema Abel-Ruffini, akar $ f (x) $ tidak dapat diekspresikan dalam bentuk radikal. Saya ingin mengambil dua akar yang berbeda dari $ f (x) $, katakan $ \ alpha_1 $ dan $ \ alpha_2 $, dan hitung polinom minimal $ g (x) $ $ \ alpha_1 - \ alpha_2 $. Saya tahu bagaimana melakukan ini secara aljabar, karena

$$ g (x) = \ prod \ limit _ {\ substack {1 \ leq i, j \ leq 5, \\ i \ neq j}} \ left (x - (\ alpha_i - \ alpha_j) \ right), $ $

Tapi perhitungannya sepertinya terlalu menyakitkan. Apakah ada fungsi di Sage, atau Mathematica, atau Maple, atau PARI / GP, yang memungkinkan untuk menemukan $ g (x) $?

2 Comments
2 Gro-Tsen 09/03/2017
Sage memiliki field "QQbar" untuk nomor aljabar yang tepat, Anda dapat mengambil akar polinomial asli Anda di atas bidang itu (misalnya, mengubah ring dan faktor), kemudian melakukan perhitungan apa pun yang Anda butuhkan, dan gunakan metode ".minpoly" untuk mendapatkan polinomial minimal.
Dima Pasechnik 09/05/2017
math.stackexchange.com/a/155153/39797 adalah sudut pandang umum yang bagus.

6 Answers


Igor Rivin 09/03/2017.

Untuk menghitung polinomial minimal bilangan bulat banyak bilangan bulat algebra adalah mudah, jadi satu-satunya hal yang Anda butuhkan untuk kombinasi linier adalah polinomial minimal jumlah. Sekarang, perhatikan bahwa jika $ A $ adalah matriks pendamping $ \ alpha $ dan $ B $ adalah matriks pendamping $ \ beta, $ then $ A \ otimes I + I \ otimes B $ matriks pendamping $ \ alpha + \ beta. $ (Tentu saja, $ A \ otimes B $ adalah matriks pendamping $ \ alpha \ beta. $)

Kode mathematica:

frobeniusCompanion[poly_, x_] /; PolynomialQ[poly, x] := 
 Module[{n = Exponent[poly, x], coef}, 
  coef = CoefficientList[poly, x]; coef = -Most[coef]/Last[coef];
  SparseArray[{{1, j_} :> coef[[-j]], Band[{2, 1}] -> 1}, {n, n}]]


AA= frobeniusCompanion[x^5 -x -1, x]
CC = KroneckerProduct[AA, IdentityMatrix[5]] + KroneckerProduct[IdentityMatrix[5], AA]
 cp = CharacteristicPolynomial[Normal[CC], x]
 Factor[cp] 

memberikan $$ - \ left (x ^ 5-16 x-32 \ right) \ left (x ^ {10} +3 x ^ 6 + 11 x ^ 5-4 x ^ 2 + 4 x-1 \ right) ^ 2 $$

5 comments
Anton 09/03/2017
Terima kasih, Igor! Saya pikir inilah yang saya cari. Dapatkah Anda memberi contoh bagaimana ini bekerja dua akar yang berbeda dari x ^ 5-x + 1? Saya tidak begitu mengerti bagaimana ini bekerja ketika dua bilangan aljabar yang berbeda memiliki matriks pendamping yang sama.
Igor Rivin 09/03/2017
@Anton Dalam kasus ini, polinomial karakteristik akan dapat direduksi (karena akar polinomial karakteristik juga akan mencakup hal-hal seperti $ 2 \ alpha. $). Saya akan menambahkan kode mathematica.
Anton 09/03/2017
Terima kasih, saya menghargai itu! Meskipun saya tidak mengerti apa yang Anda maksud dengan "karakteristik polinomial akan dapat direduksi". Katakanlah, saya tahu bahwa jika a dan b adalah dua akar x ^ 5-x + 1 yang berbeda, maka polinomial minimal ab adalah x ^ 20-10 * x ^ 16 - ... + 5000x ^ 2 + 2869, alias polinomial karakteristik matriks pendamping ab, tidak dapat direduksi. Apa masalahnya disini?
Igor Rivin 09/03/2017
@Anton Masalahnya adalah bahwa Anda tidak dapat secara aljabar membedakannya dari yang lain. Jadi, beberapa perbedaan $ \ alpha - \ beta $ akar polinom favorit Anda sama dengan nol, jadi polinomial minimalnya adalah $ x. $ Polinomial karakteristik bilangan rasional $ \ alpha - \ beta $ akan dibagi oleh kekuatan $ x. $
2 J. M. is not a mathematician 09/03/2017
Mathematica juga akan memungkinkan Anda untuk melakukan hal-hal seperti MinimalPolynomial[Root[#^5 - # + 1 &, 1] - Root[#^5 - # + 1 &, 5], x] , untuk menggunakan contoh @ Anton.

Moritz Firsching 09/03/2017.

Di Sage Anda bisa melakukan sesuatu seperti:

x=polygen(QQbar)
f=x^5 - x +1
roots = f.roots(QQbar)
a1 = roots[1][0]
a2 = roots[-1][0]
(a1 - a2).minpoly()
x^20 - 10*x^16 - 95*x^12 + 625*x^10 - 40*x^8 + 3750*x^6 + 400*x^4 + 5000*x^2 + 2869 

Max Alekseyev 09/03/2017.

Menggunakan resultan bisa sangat membantu. Misalnya, mengetahui bahwa $ \ sqrt [5] {2} $ adalah nol dari $ P (x) = x ^ 5-2 $ dan $ 1- \ exp \ frac {2 \ pi i} {5} $ adalah sebuah nol dari $ Q (x) = (x-1) ^ 5 + 1 $, kami menyimpulkan $ \ sqrt [5] {2} \ cdot (1- \ exp \ frac {2 \ pi i} {5}) $ adalah nol dari $ \ mathrm {Res} _y (P (y), y ^ 5Q (\ frac {x} {y})) $. Di PARI / GP:

? polresultant(y^5-2,y^5*((x/y-1)^5+1),y)
%1 = x^25 + 2500*x^15 + 50000*x^5
? factor(%)
%2 = 
[                       x 5]

[x^20 + 2500*x^10 + 50000 1] 

Artinya, kita menyimpulkan bahwa polinomial minimal adalah $ x ^ {20} + 2500x ^ {10} + 50000 $. Verifikasi numerik:

? subst(x^20 + 2500*x^10 + 50000, x, 2^(1/5)*(1-exp(2*Pi*I/5)) )
%3 = 5.380530270144733809 E-34 - 2.104034275277802617 E-34*I 

(presisi default adalah 38 digit desimal)


Peter Taylor 09/04/2017.

Meskipun perhitungan yang tepat harus dipilih jika mungkin, jika semua yang Anda miliki adalah nilai numerik dengan akurasi tinggi dari sebuah angka yang Anda tahu menjadi aljabar maka Anda dapat menggunakan algoritma pencarian relasi integer (misalnya LLL atau PSLQ) untuk menemukan hubungan antara yang pertama $ n $ kekuatan nomor Anda. LLL, setidaknya, diimplementasikan di Sage, Mathematica, Maple, dan PARI / GP.

2 comments
J. M. is not a mathematician 09/04/2017
Mathematica , misalnya, memiliki fungsi RootApproximant[] .
1 Max Alekseyev 09/04/2017
Di PARI / GP, ini bisa dilakukan dengan algdep() .

jjcale 09/03/2017.

Kode PARI / GP:

p=x^5-x+1
py=subst(p,x,y)

K = nfinit(py)

L0 = rnfinit(K,nffactor(K,p)[2,1])
p2y=subst(L0.polabs,x,y)
L = nfinit(p2y)

f(w,i) = Mod(- subst(nffactor(L,w)[i,1],x,0), p2y)

a1=f(p,1)
a2=f(p,2)
minpoly(a1-a2) 

memberi:

x^20 - 10*x^16 - 95*x^12 + 625*x^10 - 40*x^8 + 3750*x^6 + 400*x^4 + 5000*x^2 + 2869 

jjcale 09/04/2017.

Kode SymPy:

from sympy import *

x,y = symbols('x y')
roots = solve(x**5 - x + 1)
print(minimal_polynomial(roots[0] - roots[1], y)) 

memberi:

y**20 - 10*y**16 - 95*y**12 + 625*y**10 - 40*y**8 + 3750*y**6 + 400*y**4 + 5000*y**2 + 2869 

HighResolutionMusic.com - Download Hi-Res Songs

1 The Chainsmokers

Beach House flac

The Chainsmokers. 2018. Writer: Andrew Taggart.
2 (G)I-DLE

POP/STARS flac

(G)I-DLE. 2018. Writer: Riot Music Team;Harloe.
3 Anne-Marie

Rewrite The Stars flac

Anne-Marie. 2018. Writer: Benj Pasek;Justin Paul.
4 Ariana Grande

​Thank U, Next flac

Ariana Grande. 2018. Writer: Crazy Mike;Scootie;Victoria Monét;Tayla Parx;TBHits;Ariana Grande.
5 Diplo

Close To Me flac

Diplo. 2018. Writer: Ellie Goulding;Savan Kotecha;Peter Svensson;Ilya;Swae Lee;Diplo.
6 BTS

Waste It On Me flac

BTS. 2018. Writer: Steve Aoki;Jeff Halavacs;Ryan Ogren;Michael Gazzo;Nate Cyphert;Sean Foreman;RM.
7 Clean Bandit

Baby flac

Clean Bandit. 2018. Writer: Jack Patterson;Kamille;Jason Evigan;Matthew Knott;Marina;Luis Fonsi.
8 Imagine Dragons

Bad Liar flac

Imagine Dragons. 2018. Writer: Jorgen Odegard;Daniel Platzman;Ben McKee;Wayne Sermon;Aja Volkman;Dan Reynolds.
9 BlackPink

Kiss And Make Up flac

BlackPink. 2018. Writer: Soke;Kny Factory;Billboard;Chelcee Grimes;Teddy Park;Marc Vincent;Dua Lipa.
10 Nicki Minaj

No Candle No Light flac

Nicki Minaj. 2018. Writer: Denisia “Blu June” Andrews;Kathryn Ostenberg;Brittany "Chi" Coney;Brian Lee;TJ Routon;Tushar Apte;ZAYN;Nicki Minaj.
11 Rita Ora

Cashmere flac

Rita Ora. 2018. Writer: Sean Douglas;Lindy Robbins.
12 Backstreet Boys

Chances flac

Backstreet Boys. 2018.
13 Brooks

Limbo flac

Brooks. 2018.
14 Rita Ora

Velvet Rope flac

Rita Ora. 2018.
15 Fitz And The Tantrums

HandClap flac

Fitz And The Tantrums. 2017. Writer: Fitz And The Tantrums;Eric Frederic;Sam Hollander.
16 Little Mix

Woman Like Me flac

Little Mix. 2018. Writer: Nicki Minaj;Steve Mac;Ed Sheeran;Jess Glynne.
17 Cher Lloyd

None Of My Business flac

Cher Lloyd. 2018. Writer: ​iamBADDLUCK;Alexsej Vlasenko;Kate Morgan;Henrik Meinke;Jonas Kalisch;Jeremy Chacon.
18 Billie Eilish

When The Party's Over flac

Billie Eilish. 2018. Writer: Billie Eilish;FINNEAS.
19 Kelly Clarkson

Never Enough flac

Kelly Clarkson. 2018. Writer: Benj Pasek;Justin Paul.
20 Lil Pump

Arms Around You flac

Lil Pump. 2018. Writer: Rio Santana;Lil Pump;Edgar Barrera;Mally Mall;Jon Fx;Skrillex;Maluma;Swae Lee;XXXTENTACION.

Language

Popular Tags