Dieses Kapitel übersetzt Satz 3.5.4 des Skripts nach Lean: Für
ein algebraisches Element a stimmt der Grad [a:K] des
Minimalpolynoms mit dem Grad [K(a):K] der erzeugten
Körpererweiterung überein. Zusammen mit der Gradformel aus dem
letzten Kapitel ist das das Arbeitspferd für das nächste
Kapitel, die Transitivität der Algebraizität.
„a ist algebraisch über K“ heißt IsAlgebraic K a. Über
Körpern ist das gleichbedeutend damit, dass a Nullstelle
eines normierten Polynoms ist; in Mathlib heißt das
IsIntegral K a („a ist ganz über K“). Die Umrechnungen heißen
IsAlgebraic.isIntegral und IsIntegral.isAlgebraic; die
meisten Mathlib-Lemmata sind für IsIntegral formuliert.
Das Minimalpolynom heißt minpoly K a; der Grad [a:K] des
Skripts ist sein Grad (minpoly K a).natDegree. Für
transzendentes a setzt Mathlib minpoly K a = 0, und das
Nullpolynom hat natDegree 0. Damit treffen wir wieder die
0-Konvention für \infty aus dem letzten Kapitel.
Der Zwischenkörper K(a) heißt K⟮a⟯, kurz für
IntermediateField.adjoin K {a}. Die Klammer-Notation wird
durch open IntermediateField verfügbar; Vorsicht, ⟮…⟯ sind
eigene Unicode-Zeichen, keine gewöhnlichen Klammern.
„Die Erweiterung L/K ist algebraisch“ ist die Typklasse
Algebra.IsAlgebraic K L; gemeint ist, dass jedes Element von
L algebraisch über K ist. Das elementweise Ausbuchstabieren
übernimmt Algebra.IsAlgebraic.isAlgebraic.
Der Satz verbindet den Grad eines Elements mit dem Grad der von
ihm erzeugten Körpererweiterung:
Satz 3.5.4 (Grad von Körpererweiterungen und Grad von
Elementen). Es sei L/K eine Körpererweiterung und es sei
a ∈ L. Dann gilt die Gleichheit [a:K] = [K(a):K].
Der Beweis im algebraischen Fall:
Beweis von Satz 3.5.4, falls a algebraisch ist. Setze
m := [a:K] und schreibe das Minimalpolynom von a über
K als f(x) = λ_0 + λ_1 x + ⋯ + λ_{m-1} x^{m-1} + x^m.
Die Menge \{1, a, a^2, …, a^{m-1}\} ⊆ K(a) ist linear
unabhängig über K … Betrachte deshalb den
m-dimensionalen Untervektorraum
V := \langle 1, a, a^2, …, a^{m-1} \rangle_K ⊆ K(a).
Ich behaupte, dass V = K(a) ist; damit ist dann
[K(a):K] = \dim_K V = m und der Satz ist bewiesen. …
Die Behauptung zerfällt in die beiden Beweisschritte
„Abgeschlossenheit unter Multiplikation“ und „Abgeschlossenheit
unter Inversenbildung“. In Mathlib ist sie die Konstruktion
IntermediateField.adjoin.powerBasis: Für ganzes a baut sie
aus den Potenzen 1, a, …, a^{m-1} eine Basis von K⟮a⟯, eine
sogenannte Potenzbasis. Wie bei der Gradformel bleibt für uns
das Abzählen der Basis; den vollständigen Beweis holen wir wie
dort am Ende des Kapitels nach.
openIntermediateFieldtheoremgrad_element{KL:Type*}[FieldK][FieldL][AlgebraKL]{a:L}(ha:IsIntegralKa):Module.finrankKK⟮a⟯=(minpolyKa).natDegree:=K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKa⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegree-- „Betrachte deshalb den m-dimensionalen Untervektorraum-- V := ⟨1, a, a², …, a^{m-1}⟩ ⊆ K(a). Ich behaupte,-- dass V = K(a) ist …“ — die Potenzbasis von K⟮a⟯:K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKapb:PowerBasisK↥K⟮a⟯:=adjoin.powerBasisha⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegree-- „… damit ist dann [K(a):K] = dim_K V = m und der Satz-- ist bewiesen.“K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKapb:PowerBasisK↥K⟮a⟯:=adjoin.powerBasisha⊢ pb.dim=(minpolyKa).natDegreerflAll goals completed! 🐙
Im transzendenten Fall gilt [a:K] = ∞ = [K(a):K]. Das Skript
behandelt ihn mit den unendlichen Potenzen 1, a, a^2, …; in
Mathlibs 0-Konvention steht auf beiden Seiten schlicht 0. Als
fertiges Zitat heißt unser Satz übrigens
IntermediateField.adjoin.finrank.
Es sei L/K eine Körpererweiterung und es sei a ∈ L.
Falls [a:K] < ∞ ist, dann ist K(a) algebraisch
über K.
Die beiden Zutaten kennt Mathlib als
IntermediateField.adjoin.finiteDimensional („der Grad ist
endlich“) und Algebra.IsAlgebraic.of_finite („endliche
Erweiterungen sind algebraisch“). Beachten Sie, dass die
Endlichkeit mit have := … in den Kontext geholt werden muss,
damit die Instanzsuche sie sieht. Öffnen Sie
AlgebraInLean/Elements.lean und ersetzen Sie das sorry
durch einen Beweis.
Oben haben wir die eigentliche Arbeit bei
IntermediateField.adjoin.powerBasis eingekauft: dass die Potenzen
eine Basis von K(a) bilden. Jetzt führen wir den Skript-Beweis Satz für Satz
selbst aus. Er ist deutlich länger als der vollständige Beweis
der Gradformel, denn das Skript zeigt hier wirklich etwas
Substantielles: dass ein endlichdimensionaler Untervektorraum,
der unter Multiplikation abgeschlossen ist, automatisch auch
Inverse enthält.
Die Hauptfigur ist der Untervektorraum aus dem Skript:
Betrachte deshalb den m-dimensionalen Untervektorraum
V := \langle 1, a, a^2, …, a^{m-1} \rangle_K ⊆ K(a).
openPolynomialvariable{KL:Type*}[FieldK][FieldL][AlgebraKL]-- Der Untervektorraum V = ⟨1, a, …, a^{m-1}⟩ des Skripts.noncomputabledefpotenzraum(K:Type*){L:Type*}[FieldK][FieldL][AlgebraKL](a:L):SubmoduleKL:=Submodule.spanK(Set.rangefuni:Fin(minpolyKa).natDegree=>a^(i:ℕ))
Ein Argument benutzt das Skript zweimal: einmal für a, später
noch einmal für ein Element y ∈ V:
Falls nicht, dann gäbe es eine Zahl m ∈ ℕ und Elemente
λ_0, …, λ_m ∈ K, die nicht alle gleich Null sind, sodass
0 = \sum_{i} λ_i \cdot a^i ist. Dann wäre a aber eine
Nullstelle des Polynoms f(x) = \sum_i λ_i \cdot x^i ∈ K[x],
welches nicht das Nullpolynom ist.
Wir formulieren es deshalb als eigenes Hilfslemma: Eine
nichttriviale lineare Relation unter den Potenzen liefert ein
Polynom.
theorempolynom_aus_relation{k:ℕ}(y:L)(μ:Fink→K)(hrel:∑i,μi•y^(i:ℕ)=0)(i₀:Fink)(hμ:μi₀≠0):∃g:K[X],g≠0∧g.degree<(k:ℕ)∧aevalyg=0:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∃g,g≠0∧g.degree<↑k∧(aevaly)g=0-- Das Polynom g = ∑ μᵢ·xⁱ …refine⟨∑i:Fink,C(μi)*X^(i:ℕ),?_,?_,?_⟩refine_1K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑i,C(μi)*X^↑i≠0refine_2K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ (∑i,C(μi)*X^↑i).degree<↑krefine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ (aevaly)(∑i,C(μi)*X^↑i)=0-- „… welches nicht das Nullpolynom ist“: sein i₀-ter-- Koeffizient ist μᵢ₀ ≠ 0.·refine_1K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑i,C(μi)*X^↑i≠0introh0refine_1K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0h0:∑i,C(μi)*X^↑i=0⊢ Falseapplyhμrefine_1K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0h0:∑i,C(μi)*X^↑i=0⊢ μi₀=0havehc:=congrArg(fung=>coeffg(i₀:ℕ))h0refine_1K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0h0:∑i,C(μi)*X^↑i=0hc:(∑i,C(μi)*X^↑i).coeff↑i₀=coeff0↑i₀⊢ μi₀=0simpa[finsetSum_coeff,coeff_C_mul,coeff_X_pow,Fin.val_inj]usinghcAll goals completed! 🐙-- … hat Grad < k …·refine_2K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ (∑i,C(μi)*X^↑i).degree<↑krefinelt_of_le_of_lt(degree_sum_le__)?_refine_2K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ (Finset.univ.supfunb=>(C(μb)*X^↑b).degree)<↑krw[Finset.sup_lt_iff(byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ⊥<↑kexact_mod_castWithBot.bot_lt_coekAll goals completed! 🐙)]refine_2K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∀b∈Finset.univ,(C(μb)*X^↑b).degree<↑kintroi_refine_2K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0i:Finka✝:i∈Finset.univ⊢ (C(μi)*X^↑i).degree<↑kexactlt_of_le_of_lt(degree_C_mul_X_pow_le__)(byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0i:Finka✝:i∈Finset.univ⊢ ↑↑i<↑kexact_mod_casti.isLtAll goals completed! 🐙)-- … und „y wäre eine Nullstelle des Polynoms“.·refine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ (aevaly)(∑i,C(μi)*X^↑i)=0rw[map_sumrefine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑x,(aevaly)(C(μx)*X^↑x)=0]refine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑x,(aevaly)(C(μx)*X^↑x)=0simp_rw[refine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑x,(aevaly)(C(μx)*X^↑x)=0map_mul,refine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑x,(aevaly)(C(μx))*(aevaly)(X^↑x)=0aeval_C,refine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑x,(algebraMapKL)(μx)*(aevaly)(X^↑x)=0map_pow,refine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑x,(algebraMapKL)(μx)*(aevaly)X^↑x=0aeval_X,refine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑x,(algebraMapKL)(μx)*y^↑x=0←Algebra.smul_defrefine_3K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLk:ℕy:Lμ:Fink→Khrel:∑i,μi•y^↑i=0i₀:Finkhμ:μi₀≠0⊢ ∑i,μi•y^↑i=0]exacthrelAll goals completed! 🐙
Damit folgt die lineare Unabhängigkeit wie im Skript:
Die Menge \{1, a, a^2, …, a^{m-1}\} ⊆ K(a) ist linear
unabhängig über K: Jede nicht-triviale Linearkombination
der Null lieferte nämlich ein Polynom vom Grad kleiner m,
welches nicht das Nullpolynom ist und a als Nullstelle
hat — im Widerspruch zur Minimalität des Grades des
Minimalpolynoms.
Die „Minimalität des Grades“ heißt in Mathlib
minpoly.degree_le_of_ne_zero.
theorempotenzen_unabhaengig{a:L}(ha:IsIntegralKa):LinearIndependentK(funi:Fin(minpolyKa).natDegree=>a^(i:ℕ)):=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKa⊢ LinearIndependentKfuni=>a^↑irw[Fintype.linearIndependent_iffK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKa⊢ ∀(g:Fin(minpolyKa).natDegree→K),∑i,gi•a^↑i=0→∀(i:Fin(minpolyKa).natDegree),gi=0]K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKa⊢ ∀(g:Fin(minpolyKa).natDegree→K),∑i,gi•a^↑i=0→∀(i:Fin(minpolyKa).natDegree),gi=0introμhreli₀K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaμ:Fin(minpolyKa).natDegree→Khrel:∑i,μi•a^↑i=0i₀:Fin(minpolyKa).natDegree⊢ μi₀=0by_contrahμK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaμ:Fin(minpolyKa).natDegree→Khrel:∑i,μi•a^↑i=0i₀:Fin(minpolyKa).natDegreehμ:¬μi₀=0⊢ False-- „Jede nicht-triviale Linearkombination der Null-- lieferte ein Polynom vom Grad kleiner m … mit a als-- Nullstelle“obtain⟨g,hg0,hdeg,hroot⟩:=polynom_aus_relationaμhreli₀hμK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaμ:Fin(minpolyKa).natDegree→Khrel:∑i,μi•a^↑i=0i₀:Fin(minpolyKa).natDegreehμ:¬μi₀=0g:K[X]hg0:g≠0hdeg:g.degree<↑(minpolyKa).natDegreehroot:(aevala)g=0⊢ False-- „im Widerspruch zur Minimalität des Grades des-- Minimalpolynoms.“havehle:=minpoly.degree_le_of_ne_zeroKahg0hrootK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaμ:Fin(minpolyKa).natDegree→Khrel:∑i,μi•a^↑i=0i₀:Fin(minpolyKa).natDegreehμ:¬μi₀=0g:K[X]hg0:g≠0hdeg:g.degree<↑(minpolyKa).natDegreehroot:(aevala)g=0hle:(minpolyKa).degree≤g.degree⊢ Falserw[degree_eq_natDegree(minpoly.ne_zeroha)K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaμ:Fin(minpolyKa).natDegree→Khrel:∑i,μi•a^↑i=0i₀:Fin(minpolyKa).natDegreehμ:¬μi₀=0g:K[X]hg0:g≠0hdeg:g.degree<↑(minpolyKa).natDegreehroot:(aevala)g=0hle:↑(minpolyKa).natDegree≤g.degree⊢ False]athleK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaμ:Fin(minpolyKa).natDegree→Khrel:∑i,μi•a^↑i=0i₀:Fin(minpolyKa).natDegreehμ:¬μi₀=0g:K[X]hg0:g≠0hdeg:g.degree<↑(minpolyKa).natDegreehroot:(aevala)g=0hle:↑(minpolyKa).natDegree≤g.degree⊢ Falseexactabsurd(hle.trans_lthdeg)(lt_irrefl_)All goals completed! 🐙
Nun der erste Schritt des Skripts:
Schritt 1: Abgeschlossenheit unter Multiplikation. Weil
a eine Nullstelle des Minimalpolynoms f ist, gilt die
Gleichung a^m = -\sum_{i=0}^{m-1} λ_i \cdot a^i ∈ V.
Durch wiederholte Anwendung dieser Gleichung folgt induktiv,
dass a^n ∈ V ist, für alle Zahlen n ∈ ℕ. Jedes Produkt
von Elementen aus V ist eine K-Linearkombination von
Potenzen von a, also gilt für alle v_1, v_2 ∈ V, dass
v_1 \cdot v_2 ∈ V ist.
-- „Weil a eine Nullstelle des Minimalpolynoms f ist, gilt-- die Gleichung a^m = -∑ λᵢ·aⁱ.“theoremhoechste_potenz{a:L}(ha:IsIntegralKa):a^(minpolyKa).natDegree=-∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^i:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKa⊢ a^(minpolyKa).natDegree=-∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^ihaveh:=minpoly.aevalKaK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKah:(aevala)(minpolyKa)=0⊢ a^(minpolyKa).natDegree=-∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^irw[aeval_eq_sum_range,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKah:∑i∈Finset.range((minpolyKa).natDegree+1),(minpolyKa).coeffi•a^i=0⊢ a^(minpolyKa).natDegree=-∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^iFinset.sum_range_succ,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKah:∑x∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffx•a^x+(minpolyKa).coeff(minpolyKa).natDegree•a^(minpolyKa).natDegree=0⊢ a^(minpolyKa).natDegree=-∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^i(minpoly.monicha).coeff_natDegree,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKah:∑x∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffx•a^x+1•a^(minpolyKa).natDegree=0⊢ a^(minpolyKa).natDegree=-∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^ione_smulK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKah:∑x∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffx•a^x+a^(minpolyKa).natDegree=0⊢ a^(minpolyKa).natDegree=-∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^i]athK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKah:∑x∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffx•a^x+a^(minpolyKa).natDegree=0⊢ a^(minpolyKa).natDegree=-∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^iexacteq_neg_of_add_eq_zero_righthAll goals completed! 🐙-- „Durch wiederholte Anwendung dieser Gleichung folgt-- induktiv, dass aⁿ ∈ V ist, für alle Zahlen n ∈ ℕ.“theorempotenz_mem{a:L}(ha:IsIntegralKa)(n:ℕ):a^n∈potenzraumKa:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕ⊢ a^n∈potenzraumKainductionnusingNat.strong_induction_onwith|_nIH=>hK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKa⊢ a^n∈potenzraumKaby_caseshn:n<(minpolyKa).natDegreeposK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:n<(minpolyKa).natDegree⊢ a^n∈potenzraumKanegK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:¬n<(minpolyKa).natDegree⊢ a^n∈potenzraumKa·posK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:n<(minpolyKa).natDegree⊢ a^n∈potenzraumKaexactSubmodule.subset_span⟨⟨n,hn⟩,rfl⟩All goals completed! 🐙·negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:¬n<(minpolyKa).natDegree⊢ a^n∈potenzraumKarw[not_ltnegK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤n⊢ a^n∈potenzraumKa]athnnegK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤n⊢ a^n∈potenzraumKahavehm0:0<(minpolyKa).natDegree:=minpoly.natDegree_poshanegK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegree⊢ a^n∈potenzraumKahavehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegree:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕ⊢ a^n∈potenzraumKarw[←pow_addK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegree⊢ a^n=a^(n-(minpolyKa).natDegree+(minpolyKa).natDegree)]K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegree⊢ a^n=a^(n-(minpolyKa).natDegree+(minpolyKa).natDegree)congr1e_aK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegree⊢ n=n-(minpolyKa).natDegree+(minpolyKa).natDegreeomeganegK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegree⊢ a^n∈potenzraumKarw[hsplit,negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegree⊢ a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegree∈potenzraumKahoechste_potenzha,negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegree⊢ a^(n-(minpolyKa).natDegree)*-∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^i∈potenzraumKamul_neg,negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegree⊢ -(a^(n-(minpolyKa).natDegree)*∑i∈Finset.range(minpolyKa).natDegree,(minpolyKa).coeffi•a^i)∈potenzraumKaFinset.mul_sumnegK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegree⊢ -∑i∈Finset.range(minpolyKa).natDegree,a^(n-(minpolyKa).natDegree)*(minpolyKa).coeffi•a^i∈potenzraumKa]negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegree⊢ -∑i∈Finset.range(minpolyKa).natDegree,a^(n-(minpolyKa).natDegree)*(minpolyKa).coeffi•a^i∈potenzraumKarefineSubmodule.neg_mem_(Submodule.sum_mem_funihi=>?_)negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegreei:ℕhi:i∈Finset.range(minpolyKa).natDegree⊢ a^(n-(minpolyKa).natDegree)*(minpolyKa).coeffi•a^i∈potenzraumKarw[mul_smul_comm,negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegreei:ℕhi:i∈Finset.range(minpolyKa).natDegree⊢ (minpolyKa).coeffi•(a^(n-(minpolyKa).natDegree)*a^i)∈potenzraumKa←pow_addnegK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegreei:ℕhi:i∈Finset.range(minpolyKa).natDegree⊢ (minpolyKa).coeffi•a^(n-(minpolyKa).natDegree+i)∈potenzraumKa]negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegreei:ℕhi:i∈Finset.range(minpolyKa).natDegree⊢ (minpolyKa).coeffi•a^(n-(minpolyKa).natDegree+i)∈potenzraumKarefineSubmodule.smul_mem__(IH_?_)negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegreei:ℕhi:i∈Finset.range(minpolyKa).natDegree⊢ n-(minpolyKa).natDegree+i<nhave:=Finset.mem_range.mphinegK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKan:ℕIH:∀m<n,a^m∈potenzraumKahn:(minpolyKa).natDegree≤nhm0:0<(minpolyKa).natDegreehsplit:a^n=a^(n-(minpolyKa).natDegree)*a^(minpolyKa).natDegreei:ℕhi:i∈Finset.range(minpolyKa).natDegreethis:i<(minpolyKa).natDegree⊢ n-(minpolyKa).natDegree+i<nomegaAll goals completed! 🐙-- „Jedes Produkt von Elementen aus V ist eine-- K-Linearkombination von Potenzen von a, also gilt für-- alle v₁, v₂ ∈ V, dass v₁·v₂ ∈ V ist.“theoremprodukt_mem{a:L}(ha:IsIntegralKa){xy:L}(hx:x∈potenzraumKa)(hy:y∈potenzraumKa):x*y∈potenzraumKa:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lhx:x∈potenzraumKahy:y∈potenzraumKa⊢ x*y∈potenzraumKainductionhx,hyusingSubmodule.span_induction₂with|mem_memuvhuhv=>mem_memK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lu:Lv:Lhu:u∈Set.rangefuni=>a^↑ihv:v∈Set.rangefuni=>a^↑i⊢ u*v∈potenzraumKaobtain⟨i,rfl⟩:=humem_memK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lv:Lhv:v∈Set.rangefuni=>a^↑ii:Fin(minpolyKa).natDegree⊢ (funi=>a^↑i)i*v∈potenzraumKaobtain⟨j,rfl⟩:=hvmem_memK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Li:Fin(minpolyKa).natDegreej:Fin(minpolyKa).natDegree⊢ (funi=>a^↑i)i*(funi=>a^↑i)j∈potenzraumKasimpa[pow_add]usingpotenz_memha((i:ℕ)+(j:ℕ))All goals completed! 🐙|zero_leftvhv=>zero_leftK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lv:Lhv:v∈Submodule.spanK(Set.rangefuni=>a^↑i)⊢ 0*v∈potenzraumKasimpAll goals completed! 🐙|zero_rightuhu=>zero_rightK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lu:Lhu:u∈Submodule.spanK(Set.rangefuni=>a^↑i)⊢ u*0∈potenzraumKasimpAll goals completed! 🐙|add_leftuvw__hwh1h2=>add_leftK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lu:Lv:Lw:Lhx✝:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)hw:w∈Submodule.spanK(Set.rangefuni=>a^↑i)h1:u*w∈potenzraumKah2:v*w∈potenzraumKa⊢ (u+v)*w∈potenzraumKarw[add_muladd_leftK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lu:Lv:Lw:Lhx✝:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)hw:w∈Submodule.spanK(Set.rangefuni=>a^↑i)h1:u*w∈potenzraumKah2:v*w∈potenzraumKa⊢ u*w+v*w∈potenzraumKa]add_leftK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lu:Lv:Lw:Lhx✝:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)hw:w∈Submodule.spanK(Set.rangefuni=>a^↑i)h1:u*w∈potenzraumKah2:v*w∈potenzraumKa⊢ u*w+v*w∈potenzraumKaexactSubmodule.add_mem_h1h2All goals completed! 🐙|add_rightuvwhu__h1h2=>add_rightK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lu:Lv:Lw:Lhu:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)hz✝:w∈Submodule.spanK(Set.rangefuni=>a^↑i)h1:u*v∈potenzraumKah2:u*w∈potenzraumKa⊢ u*(v+w)∈potenzraumKarw[mul_addadd_rightK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lu:Lv:Lw:Lhu:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)hz✝:w∈Submodule.spanK(Set.rangefuni=>a^↑i)h1:u*v∈potenzraumKah2:u*w∈potenzraumKa⊢ u*v+u*w∈potenzraumKa]add_rightK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lu:Lv:Lw:Lhu:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)hz✝:w∈Submodule.spanK(Set.rangefuni=>a^↑i)h1:u*v∈potenzraumKah2:u*w∈potenzraumKa⊢ u*v+u*w∈potenzraumKaexactSubmodule.add_mem_h1h2All goals completed! 🐙|smul_leftruv__h=>smul_leftK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lr:Ku:Lv:Lhx✝:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)h:u*v∈potenzraumKa⊢ r•u*v∈potenzraumKarw[smul_mul_assocsmul_leftK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lr:Ku:Lv:Lhx✝:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)h:u*v∈potenzraumKa⊢ r•(u*v)∈potenzraumKa]smul_leftK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lr:Ku:Lv:Lhx✝:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)h:u*v∈potenzraumKa⊢ r•(u*v)∈potenzraumKaexactSubmodule.smul_mem__hAll goals completed! 🐙|smul_rightruv__h=>smul_rightK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lr:Ku:Lv:Lhx✝:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)h:u*v∈potenzraumKa⊢ u*r•v∈potenzraumKarw[mul_smul_commsmul_rightK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lr:Ku:Lv:Lhx✝:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)h:u*v∈potenzraumKa⊢ r•(u*v)∈potenzraumKa]smul_rightK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKax:Ly:Lr:Ku:Lv:Lhx✝:u∈Submodule.spanK(Set.rangefuni=>a^↑i)hy✝:v∈Submodule.spanK(Set.rangefuni=>a^↑i)h:u*v∈potenzraumKa⊢ r•(u*v)∈potenzraumKaexactSubmodule.smul_mem__hAll goals completed! 🐙
Das „Jedes Produkt … ist eine K-Linearkombination“ erledigt
Submodule.span_induction₂: Es genügt, die Behauptung für die
erzeugenden Potenzen zu prüfen (der Fall mem_mem, dort ist
a^i \cdot a^j = a^{i+j}); Summen und Vielfache vererben sich.
Der zweite Schritt ist das Herzstück:
Schritt 2: Abgeschlossenheit unter Inversenbildung. Es sei
y ∈ V mit y ≠ 0 gegeben. Weil V abgeschlossen unter
der Multiplikation ist, liegen alle Potenzen
1, y, y^2, …, y^m in V. Das sind m+1 Elemente in
einem Vektorraum der Dimension m, also sind diese Elemente
linear abhängig über K. Insbesondere ist y algebraisch
über K. Es sei g(x) = c_0 + c_1 x + ⋯ + x^n das
Minimalpolynom von y über K. Dann ist c_0 ≠ 0:
Andernfalls könnte ich nämlich in g einmal x
ausklammern, also g = x \cdot h schreiben. Weil K(a)
ein Körper und y ≠ 0 ist, folgte aus
0 = g(y) = y \cdot h(y) schon h(y) = 0 — im Widerspruch
zur Minimalität des Grades von g. Aus der Gleichung
0 = g(y) = y \cdot (y^{n-1} + c_{n-1} y^{n-2} + ⋯ + c_1) + c_0
folgt jetzt 1/y = (y^{n-1} + ⋯ + c_1)/(-c_0) ∈ V, denn der
Zähler ist eine K-Linearkombination von Potenzen von y,
liegt also in V, und der Nenner -c_0 liegt in K.
Das Zählargument „m+1 Elemente in Dimension m“ ist
LinearIndependent.fintype_card_le_finrank; die Dimension von
V kennen wir aus der linearen Unabhängigkeit
(finrank_span_eq_card).
theoreminvers_mem{a:L}(ha:IsIntegralKa){y:L}(hy:y∈potenzraumKa)(hy0:y≠0):y⁻¹∈potenzraumKa:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0⊢ y⁻¹∈potenzraumKa-- „Weil V abgeschlossen unter der Multiplikation ist,-- liegen alle Potenzen 1, y, y², … in V.“havehyn:∀j:ℕ,y^j∈potenzraumKa:=byintrojK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0j:ℕ⊢ y^j∈potenzraumKainductionjwith|zero=>zeroK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0⊢ y^0∈potenzraumKasimpausingpotenz_memha0All goals completed! 🐙|succjIH=>succK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0j:ℕIH:y^j∈potenzraumKa⊢ y^(j+1)∈potenzraumKarw[pow_succsuccK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0j:ℕIH:y^j∈potenzraumKa⊢ y^j*y∈potenzraumKa]succK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0j:ℕIH:y^j∈potenzraumKa⊢ y^j*y∈potenzraumKaexactprodukt_memhaIHhyK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKa⊢ y⁻¹∈potenzraumKa-- „Das sind m+1 Elemente in einem Vektorraum der-- Dimension m, also sind diese Elemente linear abhängig-- über K.“havehfin:FiniteDimensionalK(potenzraumKa):=byunfoldpotenzraumK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKa⊢ FiniteDimensionalK↥(Submodule.spanK(Set.rangefuni=>a^↑i))exactFiniteDimensional.span_of_finiteK(Set.finite_range_)K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)⊢ y⁻¹∈potenzraumKahavehdim:Module.finrankK(potenzraumKa)=(minpolyKa).natDegree:=byunfoldpotenzraumK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)⊢ Module.finrankK↥(Submodule.spanK(Set.rangefuni=>a^↑i))=(minpolyKa).natDegreerw[finrank_span_eq_card(potenzen_unabhaengigha),K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)⊢ Fintype.card(Fin(minpolyKa).natDegree)=(minpolyKa).natDegreeFintype.card_finK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)⊢ (minpolyKa).natDegree=(minpolyKa).natDegree]K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegree⊢ y⁻¹∈potenzraumKahavehabh:¬LinearIndependentK(funi:Fin((minpolyKa).natDegree+1)=>(⟨y^(i:ℕ),hyni⟩:potenzraumKa)):=byintrohK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeh:LinearIndependentKfuni=>⟨y^↑i,⋯⟩⊢ Falsehavehcard:=h.fintype_card_le_finrankK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeh:LinearIndependentKfuni=>⟨y^↑i,⋯⟩hcard:Fintype.card(Fin((minpolyKa).natDegree+1))≤Module.finrankK↥(potenzraumKa)⊢ Falserw[Fintype.card_fin,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeh:LinearIndependentKfuni=>⟨y^↑i,⋯⟩hcard:(minpolyKa).natDegree+1≤Module.finrankK↥(potenzraumKa)⊢ FalsehdimK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeh:LinearIndependentKfuni=>⟨y^↑i,⋯⟩hcard:(minpolyKa).natDegree+1≤(minpolyKa).natDegree⊢ False]athcardK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeh:LinearIndependentKfuni=>⟨y^↑i,⋯⟩hcard:(minpolyKa).natDegree+1≤(minpolyKa).natDegree⊢ FalseomegaK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreehabh:¬LinearIndependentKfuni=>⟨y^↑i,⋯⟩⊢ y⁻¹∈potenzraumKa-- „Insbesondere ist y algebraisch über K.“rw[Fintype.not_linearIndependent_iffK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreehabh:∃g,∑i,gi•⟨y^↑i,⋯⟩=0∧∃i,gi≠0⊢ y⁻¹∈potenzraumKa]athabhK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreehabh:∃g,∑i,gi•⟨y^↑i,⋯⟩=0∧∃i,gi≠0⊢ y⁻¹∈potenzraumKaobtain⟨μ,hrel,i₀,hμ0⟩:=habhK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0⊢ y⁻¹∈potenzraumKahavehrelL:∑i:Fin((minpolyKa).natDegree+1),μi•y^(i:ℕ)=0:=bysimpausingcongrArg(Submodule.subtype(potenzraumKa))hrelK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0⊢ y⁻¹∈potenzraumKaobtain⟨g,hg0,_,hgroot⟩:=polynom_aus_relationyμhrelLi₀hμ0K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0⊢ y⁻¹∈potenzraumKahavehyint:IsIntegralKy:=(IsAlgebraic.isIntegral⟨g,hg0,hgroot⟩)K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKy⊢ y⁻¹∈potenzraumKa-- „Es sei g das Minimalpolynom von y über K. Dann ist-- c₀ ≠ 0: Andernfalls könnte ich nämlich in g einmal x-- ausklammern, also g = x·h schreiben. Weil K(a) ein-- Körper und y ≠ 0 ist, folgte aus 0 = g(y) = y·h(y)-- schon h(y) = 0 — im Widerspruch zur Minimalität des-- Grades von g.“havehc0:(minpolyKy).coeff0≠0:=byintroh0K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0⊢ Falseobtain⟨h,hh⟩:=X_dvd_iff.mprh0K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*h⊢ Falsehavehhy:aevalyh=0:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0⊢ y⁻¹∈potenzraumKahavehaev:=minpoly.aevalKyK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhaev:(aevaly)(minpolyKy)=0⊢ (aevaly)h=0rw[hh,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhaev:(aevaly)(X*h)=0⊢ (aevaly)h=0map_mul,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhaev:(aevaly)X*(aevaly)h=0⊢ (aevaly)h=0aeval_XK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhaev:y*(aevaly)h=0⊢ (aevaly)h=0]athaevK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhaev:y*(aevaly)h=0⊢ (aevaly)h=0rcasesmul_eq_zero.mphaevwithh1|h1inlK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhaev:y*(aevaly)h=0h1:y=0⊢ (aevaly)h=0inrK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhaev:y*(aevaly)h=0h1:(aevaly)h=0⊢ (aevaly)h=0·inlK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhaev:y*(aevaly)h=0h1:y=0⊢ (aevaly)h=0exactabsurdh1hy0All goals completed! 🐙·inrK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhaev:y*(aevaly)h=0h1:(aevaly)h=0⊢ (aevaly)h=0exacth1K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhhy:(aevaly)h=0⊢ Falsehavehhne:h≠0:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0⊢ y⁻¹∈potenzraumKarintrorflK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0hh:minpolyKy=X*0hhy:(aevaly)0=0⊢ Falserw[mul_zeroK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0hh:minpolyKy=0hhy:(aevaly)0=0⊢ False]athhK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0hh:minpolyKy=0hhy:(aevaly)0=0⊢ Falseexactminpoly.ne_zerohyinthhK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhhy:(aevaly)h=0hhne:h≠0⊢ Falsehavehle:=minpoly.degree_le_of_ne_zeroKyhhnehhyK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhhy:(aevaly)h=0hhne:h≠0hle:(minpolyKy).degree≤h.degree⊢ Falserw[hh,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhhy:(aevaly)h=0hhne:h≠0hle:(X*h).degree≤h.degree⊢ Falsemul_commK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhhy:(aevaly)h=0hhne:h≠0hle:(h*X).degree≤h.degree⊢ False]athleK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyh0:(minpolyKy).coeff0=0h:K[X]hh:minpolyKy=X*hhhy:(aevaly)h=0hhne:h≠0hle:(h*X).degree≤h.degree⊢ Falseexactabsurdhle(not_le.mpr(degree_lt_degree_mul_Xhhne))K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0⊢ y⁻¹∈potenzraumKa-- „Aus der Gleichung 0 = g(y) = y·(y^{n-1} + ⋯ + c₁) + c₀-- folgt jetzt 1/y = (y^{n-1} + ⋯ + c₁)/(-c₀) ∈ V …“haveexpand:=minpoly.aevalKyK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(aevaly)(minpolyKy)=0⊢ y⁻¹∈potenzraumKarw[aeval_eq_sum_range,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:∑i∈Finset.range((minpolyKy).natDegree+1),(minpolyKy).coeffi•y^i=0⊢ y⁻¹∈potenzraumKaFinset.sum_range_succ'K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:∑k∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(k+1)•y^(k+1)+(minpolyKy).coeff0•y^0=0⊢ y⁻¹∈potenzraumKa]atexpandK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:∑k∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(k+1)•y^(k+1)+(minpolyKy).coeff0•y^0=0⊢ y⁻¹∈potenzraumKasimp_rw[K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:∑k∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(k+1)•y^(k+1)+(minpolyKy).coeff0•y^0=0⊢ y⁻¹∈potenzraumKapow_succ,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:∑x∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(x+1)•(y^x*y)+(minpolyKy).coeff0•y^0=0⊢ y⁻¹∈potenzraumKa←smul_mul_assoc,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:∑x∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(x+1)•y^x*y+(minpolyKy).coeff0•y^0=0⊢ y⁻¹∈potenzraumKapow_zeroK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:∑x∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(x+1)•y^x*y+(minpolyKy).coeff0•1=0⊢ y⁻¹∈potenzraumKa]atexpandrw[←Finset.sum_mulK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0⊢ y⁻¹∈potenzraumKa]atexpandK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0⊢ y⁻¹∈potenzraumKahavehwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1):=eq_neg_of_add_eq_zero_leftexpandK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)⊢ y⁻¹∈potenzraumKahavehone:y*((-(minpolyKy).coeff0)⁻¹•∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)=1:=byrw[mul_smul_comm,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)⊢ (-(minpolyKy).coeff0)⁻¹•(y*∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)=1mul_commy,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)⊢ (-(minpolyKy).coeff0)⁻¹•((∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y)=1hwy,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)⊢ (-(minpolyKy).coeff0)⁻¹•-((minpolyKy).coeff0•1)=1←neg_smul,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)⊢ (-(minpolyKy).coeff0)⁻¹•-(minpolyKy).coeff0•1=1smul_smul,K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)⊢ ((-(minpolyKy).coeff0)⁻¹*-(minpolyKy).coeff0)•1=1inv_mul_cancel₀(neg_ne_zero.mprhc0),K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)⊢ 1•1=1one_smulK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)⊢ 1=1]K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)hone:y*(-(minpolyKy).coeff0)⁻¹•∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i=1⊢ y⁻¹∈potenzraumKarw[inv_eq_of_mul_eq_one_righthoneK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)hone:y*(-(minpolyKy).coeff0)⁻¹•∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i=1⊢ (-(minpolyKy).coeff0)⁻¹•∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i∈potenzraumKa]K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKay:Lhy:y∈potenzraumKahy0:y≠0hyn:∀(j:ℕ),y^j∈potenzraumKahfin:FiniteDimensionalK↥(potenzraumKa)hdim:Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeμ:Fin((minpolyKa).natDegree+1)→Khrel:∑i,μi•⟨y^↑i,⋯⟩=0i₀:Fin((minpolyKa).natDegree+1)hμ0:μi₀≠0hrelL:∑i,μi•y^↑i=0g:K[X]hg0:g≠0left✝:g.degree<↑((minpolyKa).natDegree+1)hgroot:(aevaly)g=0hyint:IsIntegralKyhc0:(minpolyKy).coeff0≠0expand:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y+(minpolyKy).coeff0•1=0hwy:(∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i)*y=-((minpolyKy).coeff0•1)hone:y*(-(minpolyKy).coeff0)⁻¹•∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i=1⊢ (-(minpolyKy).coeff0)⁻¹•∑i∈Finset.range(minpolyKy).natDegree,(minpolyKy).coeff(i+1)•y^i∈potenzraumKa-- „… denn der Zähler ist eine K-Linearkombination von-- Potenzen von y, liegt also in V, und der Nenner -c₀-- liegt in K.“exactSubmodule.smul_mem__(Submodule.sum_mem_funi_=>Submodule.smul_mem__(hyni))All goals completed! 🐙
Bleibt der Zusammenbau:
Ich behaupte, dass V = K(a) ist; damit ist dann
[K(a):K] = \dim_K V = m und der Satz ist bewiesen. Um die
Behauptung zu zeigen, genügt es zu zeigen, dass V ein
Unterkörper von K(a) ist. Denn V enthält K und das
Element a, und K(a) ist per Definition der kleinste
Unterkörper, der K und a enthält. Weil V ein
Untervektorraum ist, ist V abgeschlossen unter der
Addition.
Das „Bündeln“ von V mit den bewiesenen Abgeschlossenheiten zu
einem Unterkörper ist in Lean das Ausfüllen der Strukturfelder
von Subalgebra und IntermediateField; das „per Definition
der kleinste Unterkörper“ ist adjoin_simple_le_iff.
theoremgrad_element_vollstaendig{a:L}(ha:IsIntegralKa):Module.finrankKK⟮a⟯=(minpolyKa).natDegree:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKa⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegree-- „… genügt es zu zeigen, dass V ein Unterkörper von K(a)-- ist.“ — wir bündeln V zu einem Zwischenkörper F:letA:SubalgebraKL:={carrier:=potenzraumKamul_mem':=funhxhy=>produkt_memhahxhyone_mem':=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKa⊢ 1∈↑(potenzraumKa)simpausingpotenz_memha0All goals completed! 🐙add_mem':=funhxhy=>Submodule.add_mem_hxhyzero_mem':=Submodule.zero_mem_algebraMap_mem':=func=>byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKac:K⊢ (algebraMapKL)c∈↑(potenzraumKa)rw[Algebra.algebraMap_eq_smul_oneK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKac:K⊢ c•1∈↑(potenzraumKa)]K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKac:K⊢ c•1∈↑(potenzraumKa)exactSubmodule.smul_mem__(byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKac:K⊢ 1∈potenzraumKasimpausingpotenz_memha0All goals completed! 🐙)}K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegreeletF:IntermediateFieldKL:={Awithinv_mem':=funxhx=>byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}x:Lhx:x∈A.carrier⊢ x⁻¹∈A.carrierby_caseshx0:x=0posK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}x:Lhx:x∈A.carrierhx0:x=0⊢ x⁻¹∈A.carriernegK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}x:Lhx:x∈A.carrierhx0:¬x=0⊢ x⁻¹∈A.carrier·posK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}x:Lhx:x∈A.carrierhx0:x=0⊢ x⁻¹∈A.carrierrw[hx0,posK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}x:Lhx:x∈A.carrierhx0:x=0⊢ 0⁻¹∈A.carrierinv_zeroposK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}x:Lhx:x∈A.carrierhx0:x=0⊢ 0∈A.carrier]posK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}x:Lhx:x∈A.carrierhx0:x=0⊢ 0∈A.carrierexactSubmodule.zero_mem_All goals completed! 🐙·negK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}x:Lhx:x∈A.carrierhx0:¬x=0⊢ x⁻¹∈A.carrierexactinvers_memhahxhx0All goals completed! 🐙}K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegree-- „Denn V enthält K und das Element a, und K(a) ist per-- Definition der kleinste Unterkörper, der K und a-- enthält.“havehaF:a∈F:=byshowa∈potenzraumKaK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}⊢ a∈potenzraumKasimpausingpotenz_memha1K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈F⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegreehaveoben:K⟮a⟯≤F:=adjoin_simple_le_iff.mprhaFK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤F⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegreehaveunten:F≤K⟮a⟯:=byintroxhxK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Fx:Lhx:x∈F⊢ x∈K⟮a⟯havehVsub:potenzraumKa≤Subalgebra.toSubmoduleK⟮a⟯.toSubalgebra:=byK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKa⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegreeunfoldpotenzraumK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Fx:Lhx:x∈F⊢ Submodule.spanK(Set.rangefuni=>a^↑i)≤Subalgebra.toSubmoduleK⟮a⟯.toSubalgebrarw[Submodule.span_leK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Fx:Lhx:x∈F⊢ (Set.rangefuni=>a^↑i)⊆↑(Subalgebra.toSubmoduleK⟮a⟯.toSubalgebra)]K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Fx:Lhx:x∈F⊢ (Set.rangefuni=>a^↑i)⊆↑(Subalgebra.toSubmoduleK⟮a⟯.toSubalgebra)rintro_⟨i,rfl⟩K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Fx:Lhx:x∈Fi:Fin(minpolyKa).natDegree⊢ (funi=>a^↑i)i∈↑(Subalgebra.toSubmoduleK⟮a⟯.toSubalgebra)exactpow_mem(mem_adjoin_simple_selfKa)_K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Fx:Lhx:x∈FhVsub:potenzraumKa≤Subalgebra.toSubmoduleK⟮a⟯.toSubalgebra⊢ x∈K⟮a⟯exacthVsubhxK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegreehavehFK:F=K⟮a⟯:=le_antisymmuntenobenK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯hFK:F=K⟮a⟯⊢ Module.finrankK↥K⟮a⟯=(minpolyKa).natDegree-- „… damit ist dann [K(a):K] = dim_K V = m und der Satz-- ist bewiesen.“rw[←hFKK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯hFK:F=K⟮a⟯⊢ Module.finrankK↥F=(minpolyKa).natDegree]K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯hFK:F=K⟮a⟯⊢ Module.finrankK↥F=(minpolyKa).natDegreehaveh1:Module.finrankKF=Module.finrankK(potenzraumKa):=(Subalgebra.finrank_toSubmoduleA).symmK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯hFK:F=K⟮a⟯h1:Module.finrankK↥F=Module.finrankK↥(potenzraumKa)⊢ Module.finrankK↥F=(minpolyKa).natDegreerw[h1K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯hFK:F=K⟮a⟯h1:Module.finrankK↥F=Module.finrankK↥(potenzraumKa)⊢ Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegree]K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯hFK:F=K⟮a⟯h1:Module.finrankK↥F=Module.finrankK↥(potenzraumKa)⊢ Module.finrankK↥(potenzraumKa)=(minpolyKa).natDegreeunfoldpotenzraumK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯hFK:F=K⟮a⟯h1:Module.finrankK↥F=Module.finrankK↥(potenzraumKa)⊢ Module.finrankK↥(Submodule.spanK(Set.rangefuni=>a^↑i))=(minpolyKa).natDegreerw[finrank_span_eq_card(potenzen_unabhaengigha),K:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯hFK:F=K⟮a⟯h1:Module.finrankK↥F=Module.finrankK↥(potenzraumKa)⊢ Fintype.card(Fin(minpolyKa).natDegree)=(minpolyKa).natDegreeFintype.card_finK:Type u_1L:Type u_2inst✝²:FieldKinst✝¹:FieldLinst✝:AlgebraKLa:Lha:IsIntegralKaA:SubalgebraKL:={carrier:=↑(potenzraumKa),mul_mem':=⋯,one_mem':=⋯,add_mem':=⋯,zero_mem':=⋯,algebraMap_mem':=⋯}F:IntermediateFieldKL:={toSubalgebra:=A,inv_mem':=⋯}haF:a∈Foben:K⟮a⟯≤Funten:F≤K⟮a⟯hFK:F=K⟮a⟯h1:Module.finrankK↥F=Module.finrankK↥(potenzraumKa)⊢ (minpolyKa).natDegree=(minpolyKa).natDegree]All goals completed! 🐙