(* Title: HOL/Algebra/Finite_Extensions.thy Author: Paulo Emílio de Vilhena
*)
theory importsimportsEmbedded_Algebras Polynomial_Divisibility
begin
section java.lang.StringIndexOutOfBoundsException: Range [0, 11) out of bounds for length 0
subsectionimports Polynomials
definition( ringtranscendental ::"a \ 'a \ bool"
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
abbreviation (in ring) algebraic java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 0 where"algebraic K x \ \ transcendental K x"
definition (in ringjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 "Irr THEp. in> carrier (K[X]) \ pirreducible K p \ eval p x = \ \ lead_coeff p = \)"
inductive_set (in for K andwhere
zero [simp, intro]: "\ \ simple_extension K x" | "finite_extension K xs foldr (\x K'. simple_extension K' x) xs K"
fun ( ring)finite_extension "a set\'a \<Rightarrow> 'a set" wherefinite_extensionK =foldr
subsection \<open>Basic Properties\<close>
lemma (in ring) transcendental_consistent: "subring K R"showstranscendentalring ( transcendental_deftranscendental_def OF
fun(in ) :: "' \ 'a list \ 'a set"
lemma (in ring assumesjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 lemma( ring:
lemma (in ring) "( over K) ""p\in (K[X]) eval px=\zero"shows ] assumestranscendental KR"shows" . ( \<lparr> carrier := K \<rparr>)" transcendental_def ringtranscendental_def subring_is_ring[OF]] proof - have[java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
simp)
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 usingunfolding over_def inj_on_def by auto qed
lemma (in ring) transcendental_imp_trivial_ker: shows usinglemma ( ring:
lemma (inshows - "a_kernel K] (lambda using transcendental_imp_trivial_kerjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
( simpadd) "subring transcendental_imp_trivial_ker over_def auto
.trivial_ker_imp_inj unfoldingbysimp
lemma
umes "subring KR"andx assumes "subring K R" and "x \<in> carrier R"showstranscendental K Longrightarrow> a_kernel (K[X]) R (\<lambda>p. eval p x) = { [] }" ring_hom_ring[OF[OF]] shows( over <Longrightarrow> a_kernel (K[X]) R (\<lambda>p. eval p x) \<noteq> { [] }" using trivial_ker_imp_transcendental assms unfoldingby auto
lemmau transcendental_imp_trivial_ker over_def auto lemma(n domain trivial_ker_imp_transcendental obtainswhere\<in> carrier (K[X])" "p \<noteq> []" "eval p x = \<zero>" proofjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7 have"]\ unfolding' univ_poly_def byauto thenobtain p where
algebraic_imp_non_trivial_kerassms a_kernel_defblast thus thesis using that by auto
java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 3
lemma"(algebraic overK x \ a_kernel (K[X]) R (\p. eval p x) \ { [] }" assumes<in> carrier (K[X])" "p \<noteq> []" and "eval p x = \<zero>" shows "(algebraic over K) x" using a_kernel_defuniv_poly_def
lemma ( then p wherejava.lang.StringIndexOutOfBoundsException: Index 83 out of bounds for length 83
ntal)x proof - have"carrier mes"subring x<>carrier"algebraicover K) " using assms(1)qed thus
assms pwhere\<in> carrier (K[X])" "p \<noteq> []" "eval p x = \<zero>" qed
corollary (in ring) algebraic_mono: assumes"K \ K'" "(algebraic over K) x" shows "(algebraic over K') x"
transcendental_monoOF(1)] assms unfoldingunfoldinga_kernel_def byauto
lemma (indomain) zero_is_algebraic: assumes"subring K R"shows"(algebraic algebraic_imp_non_trivial_ker[java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 usingOF1[ assmsvar_defauto
lemma (indomainusing(1) unfolding univ_poly_def by auto assumes"subring K Rjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 proof ( [of \<one>, \<ominus> k ]"]) show"[ \, \ k ] \ carrier (K [X])" and "[ \, \ k ] \ []" usingcorollary ring: have"k \ carrier R" usinghave"carrier (K[X]) \ carrier (K'[X])" "eval [\, \ k ] k = \" by(, algebra qed
lemma (indomainthus ?thesisusingunfolding over_def by (metisinj_on_subset "subring shows"a_kerneljava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 proof -
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 using()OF] univ_poly_defpolynomial_def
?thesis
nfolding' by blast qed
subsection
lemmaindomain minimal_polynomial_is_unique: assumessubfield"and"in> carrier R" "(algebraic over K) x""algebraicover )" shows"\!p \ carrier (K[X]). pirreducible K p \ eval p x = \ \ lead_coeff p = \"
exists?p" proof - interpretproof (rule [of "[\, \ k ]"]) using[ using1[ assms ( java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
let ?ker_genshows KX)R (\<lambda>p. eval p x) \<noteq> carrier (K[X])"
a_kernel (Kproof java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
obtain p wherethus ?hesis using exists_unique_pirreducible_gen a_kernel_defjava.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 22
algebraic_imp_non_trivial_ker _(2-3 a_kernelX R\lambda.eval lemmain)minimal_polynomial_is_uniqueusing() assms unfoldinguniv_poly_def byauto " p" using UP.cgenideal_self pjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 have< proof - fixusing [OF(1) . thenhave"q \ PIdl\<^bsub>K[X]\<^esub> p"
p a_kernel_defauto "p \<^bsub>K[X]\<^esub> q" using -
UP principal_domain "K[X]" using.associated_iff_same_ideal by simp thus"q = p"
unique simp
ultimately[ (1)eval_ring_hom) qed
( domain) IrrE assumes shows subfieldE(auto
lead_coeffx=oneevalKx) <>java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 72 using ] (1)[ (1)] byautomoreoverhave"<>.?minimal_poly q <> p
lemma (inhaveq\<injava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50 assumes" carrier R" "(algebraic over K) x" shows"a_kernel (K[X]) R (\p. eval p x) = PIdl\<^bsub>K[X]\<^esub> (Irr K x)"
obtain q
hence
nd: "a_kernel K[X) R(lambdap.eval )=PIdl\<^bsub>K[X]\<^esub> q"
exists_unique_pirreducible_gen assms)usingassociated_iff_same_ideal by using.associated_iff_same_idealpbyusing q simp
ker_diff_carrier] subfieldE qed have" K x \ PIdl\<^bsub>K[X]\<^esub> q" using(qed thus " (Irr Kx)=\" and "eval (Irr K x) x = \"
cring univ_poly_is_cringsubfieldE) (1)]java.lang.StringIndexOutOfBoundsException: Index 94 out of bounds for length 94 unfolding by java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 qed
lemma(ndomainIrr_minimal assumes" KX)R(p. eval p x) = PIdl\<^bsub>K[X]\<^esub> (Irr K x)" and\<in> carrier (K[X])" "eval p x = \<zero>" shows "(Irr K x) pdivides p" proofalgebraic_imp_non_trivial_ker _assms:" interpret ker KX)(\<lambda>p. eval p x) = PIdl\<^bsub>K[X]\<^esub> q" using univ_poly_is_principal[OF assms( (1,[ assms unfolding' by auto
have"p \ PIdl\<^bsub>K[X]\<^esub> (Irr K x)" using Irr_generates_ker[OF assms(1-3)] assmsusing[OF assms)q(-2 IrrE)[F ]] q(1) IrrE[OF] hence"Irr K ) divides p" using UP.to_contain_is_to_divide IrrE(1)[OF assms(1-3)] by (meson UP.cgenideal_ideal UP.cgenideal_minimal assms(4)) thus?java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14 unfolding pdivides_iff_shell[OF assumes"subfield K R"and"x \ carrier R" "(algebraic over K) x" qed
proof
UP principal_domain[" using rupture_is_field_iff_pirreducible[OF assms(1)] IrrE(1-2)[OF assms] by simp
using[OF assms .
a( ring: assumes K "showsringsimple_extension( proof - interpret K: ring "R \ carrier := K \" using subring_is_ring[OF assms] .
ve\<And>K' x. K.simple_extension K' x \<subseteq> simple_extension K' x" proof fix K' x a show "a \ K.simple_extension K' x \ a \ simple_extension K' x" by (induction rule: K.simple_extension.induct) (autoalgebraic_imp_non_trivial_ker _ assms(2-3) qed moreover have"\K' x. simple_extension K' x \ K.simple_extension K' x" proof fix K' x a assume a: "a \ simple_extension K' x" thus "a \ K.simple_extension K' x" using.simple_extension.zero K.simple_extension
(induction rule: simple_extension.induct) (simp)+ qed ultimately thesis qed
lemma (in ring) mono_simple_extension: assumes"\java.lang.StringIndexOutOfBoundsException: Index 91 out of bounds for length 91
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
( a rule., simp) case lin
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
lemma rupture_is_field_iff_pirreducible(1andcarrier \<zero>" shows "(Irr K x) pdivides p" assumes"K java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 proof fix kjava.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
[OF(13)] assms a_kernel_def qed
( ring: assumes ( UPcgenideal_idealUP assms proof ?thesis have"\ \ simple_extension K x" usingsimple_extension_incl _ assms(1,3[ [Fassms1[ assms3 (4)]java.lang.StringIndexOutOfBoundsException: Index 79 out of bounds for length 79
t ?thesis using simple_extension
ub
( ) simple_extension_carrier
carrier "" R proof - show<subseteq> simple_extension (carrier R) x"
subring_is_ring\>simple_extension next show proof fix a assumeproof by (induct a rule: simple_extension.induct) (auto Longrightarrow \<in> simple_extension K' x" qed qed
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 assumesjava.lang.NullPointerException using mono_simple_extension[OFusingsimple_extension K.simple_extension
lemma (in ring "subring'R "K using.simple_extension_in_carrier[OF(1)](2-) unfolding show byblast
( ring: assumesin): showsKx=\<lambda>p. eval p x) ` carrier (K[X])" proof show"simple_extension K x \ (\p. eval p x) ` carrier (K[X])" proof fixa " proof (induction rule: simple_extension.induct) casezero have"polynomial K []"and"eval [] x = \" unfolding polynomial_def by simp+ thus ?case unfolding univ_poly_carrier next case(in k2 then java.lang.StringIndexOutOfBoundsException: Index 82 out of bounds for length 82 byfixassumek\<in> K" thus "k \<in> simple_extension K x" hencejava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
assms2 polynomial_def hencefix"\in>K k using eval_append_aux [ _2](,)F(1 java.lang.StringIndexOutOfBoundsException: Index 81 out of bounds for length 81 have p@])java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
[ ( <>k2 thenhave"local.normalize (p @ [k2]) \ carrier (K [X])" usingbyblast ultimately unfoldinglemmain) : qed qed next
(>.evalassumesjava.lang.StringIndexOutOfBoundsException: Index 80 out of bounds for length 80 proof simple_extensionarrierjava.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
a" thenobtain p proof usingunfoldingby auto thus ( a rule.induct simp: assms "local.normalize ( "assumes KR "\in>carrier java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44 using normalize_gives_polynomial univ_poly_carrier obtainjava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24 ultimatelyshow ?case unfolding univ_poly_carrier by force qed qed next showjava.lang.StringIndexOutOfBoundsException: Index 81 out of bounds for length 81 proof fixassumea\<in> (\<lambda>p. eval p x) ` carrier (K[X])" thenhencecombine() " using polynomial_incl unfolding"evalp = evalrxjava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29 thusa\<in> simple_extension K x" proof induct"arbitrary ) case 0 thus ?case using simple_extension.zero by simp next case ( using p() drop_exp_base ultimately ' p:"=p'@" using Suc(2) by (metis list.size(3) nat.simps(3) rev_exhaust) hence"a = (val p' x usingusing combine_prepend_replicateOF_exp_base_closed java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 moreoverhaveshow"u ?Span"
ultimatelyassumes"x\ carrier R" "(algebraic over K) x" using.linSuc()unfolding p auto qed qed qed
corollary( ) simple_extension_is_subring assumes"subring K R""x \ carrier R" shows "subring (simple_extension K x) R" usingring_hom_ring[OF[OF]
ring.carrier_is_subring[OF UPprincipal_domainX"
simple_extension_as_eval_img[OF subringE(1 () by simp
corollary (indomain) simple_extension_minimal: assumes K R "x carrier R" shows"simple_extension K x = \ { K'. subring K' R \ K \ K' \ x \ K' }" using simple_extension_is_subring[OF assms] simple_extension_mem[OF assms]
[OF()[ assms(2)]simple_extension_subring_incl by blast
corollary (indomain) simple_extension_isomorphism: assumes"subring K R""x \ carrier R" "(K[X]) Quot (a_kernel] (<>p eval px) \ R \ carrier := simple_extension K x \" using ring_hom_ring.FactRing_iso_set_aux[OF "setKs carrier R"
simple_extension_as_eval_img subringE[ assms(1]assms] unfolding"eval (normalize Ks) x = \"
corollaryin) simple_extension_of_algebraic assumeshave normalize = [] \<Longrightarrow> set Ks \<subseteq> { \<zero> }" shows"Rupt K (Irr K x) \ R \ carrier := simple_extension K x \" using simple_extension_isomorphism[OF subfieldE(1)[OF assms(1)] assms by (induct) (auto meson.discI,
Irr_generates_kerOF] rupture_def simp
corollary (indomain) simple_extension_of_transcendental: assumes"subring K R"and"x \ carrier R" "(transcendental over K) x"
>R\<lparr> carrier := simple_extension K x \<rparr>" using simple_extension_isomorphism[OF _ assmsmoreover"normalize Ks \ carrier (K[X])"
ring_iso_trans showjava.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25 unfolding transcendental_imp_trivial_ker corollary(ndomainsimple_extension_dim
proposition (indomain) simple_extension_subfield_imp_algebraic: assumes"subring K R""x \ carrier R" shows"subfield (simple_extension K x) R \ (algebraic over K) x" proof - "(dim over K)(simple_extension x) = degree (IrrK x)" assume simple_ext: "subfield (simple_extension K x) R"java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 proofusing(2) (2)by assume"\ (algebraic over K) x" then have "(transcendental over K) x"
nfolding java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32 thenjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 using ring_iso_sym[OF assumes [OFsimple_extension_is_subring (1)]] unfoldingblast
[OF subfieldE(1)]assms using uto
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 by (by(imp:exp_base_def have"field (K[X])" lemmainring) finite_extension_consistent unfolding Hom.hom_one.hom_zero bysimp moreoverhave"\ field (K[X])" using univ_poly_not_field[OF assms(1)] . ultimatelyshow"K' xs. ring.finite_extension (R \ carrier := K \) K' xs = finite_extension K' xs" qed qed
roposition)simple_extension_is_subfield assumes"subfield K R""x \ carrier R" shows simple_extension)R\<longleftrightarrow> (algebraic over K) x" proof assume alg: "algebraic overK x" thenobtain h whereqed using simple_extension_of_algebraic[OF assms] unfolding is_ring_iso_def by blast have rupt_fieldjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 using subring_is_ring[OF simple_extension_is_subring[OF subfieldE(1)]]
rupture_of_Irr[OF assms alg assms simp theninterpret Hom assumesK\<subseteq> K'" shows "finite_extension K xs \<subseteq> finite_extension K' xs" using h cring.axioms(1)[java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
(uto add ring_hom_ring_axioms_def) show"subfield (simple_extension K x) R" usingfield[OFrupt_field subfield_iff(1)[OF _
)] assms(2)]] by simp next assume simple_ext: "subfield (simple_extension K x) java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 0 using simple_extension_subfield_imp_algebraic[OF subfieldE(1)[OF assms(1 assumes"K carrier R" and "set xs \ carrier R" shows "finite_extension K xs \ carrier R" qed
subsection \<open>Link between dimension of K-algebras and algebraic extensions\<close>usingsimple_extension_in_carrier ( xs) (auto)
lemma (ndomainexp_base_independent assumes"subfield K R assumes"subring"and "in finite_dimension_imp_algebraic shows K ( x (degree K x)) proof - "<>n n \ degree (Irr K x) \ independent K (exp_base x n)" proof - fix n show"n \ degree (Irr K x) \ independent K (exp_base x n)" proof (induct n, simp add: exp_base_def) case n) have"x [
p (ule assume thenobtainassume:x where finite_extension>K(#) using simple_extension_incl finite_extension_in_carrier assms(2)]by nwhere" by (auto
hence Ks\<zero>" using combine_eq_eval by (auto
set_Us )
x subringEOF(2) ( n) (auto ultimately ( \le njava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50 using pdivides_imp_degree_le[OF " K (Usn)java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
(1[ ] _[OF ofKs3byjava.lang.StringIndexOutOfBoundsException: Index 88 out of bounds for length 88 from qed thus ? "subringset \ carrier R" shows "subring (finite_extension K xs) R" using. assms by auto )= qed qed thus ?thesis by simp qed
lemma (in ring) Span_eq_eval_img:have Ks "set \ carrier R \ set xs \ finite_extension K xs" hence"eval (normalize Ks) x = \"
= ?val_img proof show"?Span (java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18 proof fix u assume"u \ Span K (exp_base x n)" thenobtain Ks where Ks: "set Ks induct ) (auto,mesonlistdiscI
Span_eq_combine_set_length_version consider < by (auto simpcase1 hence"u = eval (normalize Ks) x" using combine_eq_eval eval_normalize[OF _ assms simple_extension_memfinite_extension_is_subring]] java.lang.StringIndexOutOfBoundsException: Index 86 out of bounds for length 86 have java.lang.NullPointerException usinghence" withCons x from" \ finite_extension K (a # xs)" using[of](2 java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52 show qed next show"? qed proof fixassume"java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 " K = { K'. subring K' R \ K \ K' \ set xs \ K' }" by hence"combine p (exp_base x (length p)) = u" usingbyjava.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35 moreoverhavecorollaryn finite_extension_same_set using[ K ]p1 univ_poly_carrier hence"set p \ carrier R" using subfieldE(3)[OF assms(1)] using[OF(1) (2-3 moreoverjava.lang.NullPointerException using " (replicate (- p)\) @ p) (exp_base x n) = u"
_exp_base_closed(2,of auto moreoverhave"set ((replicate (n - length p) \) @ p) \ K" simple_extension_is_subfieldassms using subringE(2)[OF subfieldE(1)[ ultimatelyu\?java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35 using Span_eq_combine_set[OF assms "finite_dimension K ( K x and "finite_dimension K (finite_extension K xs) \ (\x. x \ set xs \ (algebraic over K) x)" qed qed
[OF [OFsubfieldE assumes K R shows"Span [OF subfieldE1)OFassms1) assms()]
simple_extension_as_eval_img (3)OF1]assmsjava.lang.StringIndexOutOfBoundsException: Index 79 out of bounds for length 79
Span_eq_eval_img[OF assms(1-2)] proof (auto) interpret UP: principal_domain( xs : finite_dimensionI using univ_poly_is_principal[OF assms(1)] .
hom_simps[F eval_is_hom[OF subfieldE(1)[OF assms(1)] assms(2)]]
fix p assume p: "p \ carrier (K[X])" haveIrr < ([]" algebraic_monoOFfinite_extension_incl[ (OFassms1)] (2)byauto using IrrE(1-2)[OF assms] unfolding finite_extension_is_subfield assms) (2-3) byauto thenqjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17 'show.R usingsimps []java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69 using[OF() (1)]unfolding java.lang.StringIndexOutOfBoundsException: Index 101 out of bounds for length 101 hence"eval p x = (eval (Irr K x) x) \ (eval q x) \ (eval r x)" using hom_simps[OF(1) hence"eval p x = eval r x" using hom_simps(1) q r unfolding IrrEfinite_extension_is_subring (1)OF((2)] havelengthIrr" using ultimately show x\<in> (\<lambda>p. local.eval p x) ` { p \<in> carrier (K [X]). length p \<le> length (Irr K x) - Suc 0 }" using qed
corollary (indomainsubsection assumes"subfield K R""x \ carrier R" "(algebraic over K) x" shows"dimension ( over a subfieldKis itself.\ using dimension_independent( field:
simp)
ring assumes"subfield
algebraic_self (3) (1[ assmsauto proof - let ?Us = "\n. map (\i. x [^] i) (rev [0..< Suc n])"
assume: using subringE[OF assmssimple_extension_mem (1)]assms auto obtain n where n: "dimension n K F" using assms(3) by auto have set_Us: "set (?Us n) \ F" using subringE(3,)[OF simple_extesion_mem_imp_algebraicassmsauto hence"set (?Us n) \ carrier R" using subringE(1)[OF moreover"ependent K ?Us " using independent_length_le_dimension[OF assms(1) n _ set_Us] by auto ultimately
Ks Ks length "" ? n =
dependent_imp_non_trivial_combine (1,of" java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76 have"set Ks \ carrier R" next hence"eval (normalize Ks) x = \" using combine_eq_eval[of Ks] eval_normalize[OF fix z assume z "z\ ?set_of_algebraics - { \ }" moreoverhave using subflemma(ringjava.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38 by (induct Ks) ( (nring:
.listsubset_singletonD hence" assms by( xs) (auto) using Ks(1,4) by (metis list.size(3) using[OF ] field_Units autolemmain) finite_extension_in_carrier moreover" Ks \ carrier (K[X])" using normalize_gives_polynomial[OF ultimatelyshow ?thesis usingauto qed
corollary (indomain) simple_extension_dim: assumes R x\incR (over" shows"(dim over K) (simple_extension K x) = degree (Irr K x)" using dimI[OF assms(1 nfolding[OF(1)] by java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
corollary (indomain) finite_dimension_simple_extension: "subfield R"" \ carrier R" using[OFfinite_extension_in_carrier assms,) assms(2]by java.lang.StringIndexOutOfBoundsException: Index 93 out of bounds for length 93 using finite_dimensionI[OF dimension_simple_extension[OF finite_extension_incl_aux(1](2) by( xs(uto
finite_dimension_imp_algebraic( ring:
simple_extension_mem[OF subfieldE(1)] assms by auto
simple_extension_as_eval_img finite_extension_in_carrier assms()by java.lang.StringIndexOutOfBoundsException: Index 100 out of bounds for length 100
subsection \<open>Finite Extensions\<close>
: assumes"subring K proof have"\K' xs. ring.finite_extension (R \ carrier := K \) K' xs = finite_extension K' xs" proof - fix K xs using ring.finite_extension ?
simple_extension_consistent qed
?thesis qed
lemma (in ring) mono_finite_extension: assumes considerx=" "\<in> set xs" by auto
assmsinductauto
lemma (in ring1 assumes"set xs \ carrier R" shows "finite_extension (carrier R) xs = carrier R" using assms simple_extension_carrier by (induct simple_extension_memfinite_extension_is_subring]] by simp
lemma (java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 assumes using assms simple_extension_in_carrier by (
lemma (in assumes"subring K' R"corollarydomainfinite_extension_minimal using ring.finite_extension_in_carrier[OF subring_is_ring[ "finite_extension K = { K'. subring K' R \ K \ K' \ set xs \ K' }" unfolding finite_extension_consistent[OF assms(1)] by simp
in: assumes"K \ carrier R" and "x \ carrier R" "set xs \ carrier R" shows"finite_extension K xs \ finite_extension K (x # xs)" using simple_extension_incljava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
lemmashows"inite_extensionKxs ys" assumes finite_extension_minimal[F (1)] assms-)byauto using finite_extension_incl_aux[OF assms(1)] assms(2) by (induct xs) (auto)
lemma( ring: assumes"K \ carrier R" and "x \ carrier R" "set xs \ carrier R" shows"finite_extension K (x # xs) = (\p. eval p x) ` carrier ((finite_extension K xs) [X])" using simple_extension_as_eval_img shows"
indomain) finite_extension_is_subring: assumes"subringjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 using assms simple_extension_is_subring by"(\x. x \ set xs \ (algebraic over K) x) \ finite_dimension K (finite_extension K xs)"
corollary (in
:subring shows [OF(1 proof [OF(1)OF() (2)] case Nil show java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4 case a )
Cons show ?case proof fix x assume"x \ set (a # xs)"
algebraic_mono [ subfieldE assms (2-) auto thenx\<in> finite_extension K (a # xs)" proofjava.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 case with a havedomain) finite_extension_finite_dimension show" ?pan" assumes"subfield K R""set xs \ carrier R" "(\x. x \ set xs \ (algebraic over K) x) \ finite_dimension K (finite_extension K xs)"
java.lang.StringIndexOutOfBoundsException: Index 135 out of bounds for length 135 proof - show"finite_dimension K (finite_extension java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 using subfield ""x \<in> carrier R" "(algebraic over K) x"
finite_extension_is_subring([ (1]2]
finite_extension_mem[OF subfieldEunfolding[OF subfieldE[ assms() assms(2)] next show"\Andx. x set xs \ (algebraic over K) x) \ finite_dimension K (finite_extension K xs)" L>( )x <Longrightarrow> finite_dimension K (finite_extension K xs)" using assms(2) proof induct, simpaddfinite_dimensionI case (subsection hence"finite_dimension K (finite_extension K xs)" by auto moreoverhave"(algebraic over (finite_extension K xs)) x"
singOF[3 assms]Consauto moreoverhave"subfield (finite_extension K xs) R" using[OF(1]Cons java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
using java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
.finite_extension[OF subring_is_ringassms qed qed
corollary subfield_long_division_theorem_shell assms1pIrr unfolding univ_poly_zero byauto assumes"subfield K R""set xs \ carrier R" and "\x. x \ set xs \ (algebraic over K) x" shows"y \ finite_extension K xs \ (algebraic over K) y" using finite_dimension_imp_algebraic assmsjava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
[OFsubfieldE[ assms()] assms]
finite_extension_finite_dimension(1)[OF assms(1- moreover" r < length ( K x)"
corollary assumes"evalp shows"y \ simple_extension K x \ (algebraic over K) y" using finite_extesion_mem_imp_algebraic[OF assms(1), of " using r by auto
subsection \<open>Arithmetic of algebraic numbers\<close>
text\<open>We show that the set of algebraic numbers of a field
over asubfield
lemma (in) subfield_of_algebraics by( add: exp_base_def proof - let ?set_of_algebraics = "{ x \ carrier R. (algebraic over K) x }"
show ?thesis proof (rule subfieldI'[OFlemma(inring) finite_dimension_imp_algebraic: show"?set_of_algebraics \ carrier R" and "\ \ ?set_of_algebraics" using[OF _subringE]subfieldE)OF(1)] by auto next fix x y assume x: "x \ ?set_of_algebraics" and y: "y \ ?set_of_algebraics" have"\ x \ simple_extension K x" using x "x\ F" then have in_carrier: "x \ carrier R"
[OFsubfieldE (1) x byauto thus"\ x \ ?set_of_algebraics" using[ ] java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
have"ependentK(Us n)java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37 obtainwhere:" Ks = Sucn"combineKs(Us) \<zero>" "set Ks \<subseteq> K" "set Ks \<noteq> { \<zero> }" using[OFassms) "?Us n] byauto thus"x \ y \ ?set_of_algebraics" and "x \ y \ ?set_of_algebraics" using finite_extesion_mem_imp_algebraic[OF assms, of "[ x, y ]"] x y by auto
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6 fix : have"inv z \ simple_extension K z"
ield_m_invin mono_finite_extension
simple_extension_is_subfield[OF, of java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56 "xs .3 subset_singletonD thus inductjava.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
simple_extesion_mem_imp_algebraicassms z by qed qed
end
ite_extesion_mem_imp_algebraic[OF assms(1), of "[ x ]"] assms(2-3) by auto
subsection \<open>Arithmetic of algebraic numbers\<close>
text\<open>We show that the set of algebraic numbers of a field
over a subfield K is a subfield itself.\<close>
lemma (in field) subfield_of_algebraics: assumes"subfield K R"shows"subfield { x \ carrier R. (algebraic over K) x } R" proof - let ?set_of_algebraics = "{ x \ carrier R. (algebraic over K) x }"
show ?thesis proof (rule subfieldI'[OF subringI]) show"?set_of_algebraics \ carrier R" and "\ \ ?set_of_algebraics" using algebraic_self[OF _ subringE(3)] subfieldE(1)[OF assms(1)] by auto next fix x y assume x: "x \ ?set_of_algebraics" and y: "y \ ?set_of_algebraics" have"\ x \ simple_extension K x" using subringE(5)[OF simple_extension_is_subring[OF subfieldE(1)]]
simple_extension_mem[OF subfieldE(1)] assms(1) x by auto thus"\ x \ ?set_of_algebraics" using simple_extesion_mem_imp_algebraic[OF assms] x by auto
have"x \ y \ finite_extension K [ x, y ]" and "x \ y \ finite_extension K [ x, y ]" using subringE(6-7)[OF finite_extension_is_subring[OF subfieldE(1)[OF assms(1)]], of "[ x, y ]"]
finite_extension_mem[OF subfieldE(1)[OF assms(1)], of "[ x, y ]"] x y by auto thus"x \ y \ ?set_of_algebraics" and "x \ y \ ?set_of_algebraics" using finite_extesion_mem_imp_algebraic[OF assms, of "[ x, y ]"] x y by auto next fix z assume z: "z \ ?set_of_algebraics - { \ }" have"inv z \ simple_extension K z" using subfield_m_inv(1)[of "simple_extension K z"]
simple_extension_is_subfield[OF assms, of z]
simple_extension_mem[OF subfieldE(1)] assms(1) z by auto thus"inv z \ ?set_of_algebraics" using simple_extesion_mem_imp_algebraic[OF assms] field_Units z by auto qed qed
end
¤ Dauer der Verarbeitung: 0.19 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.