
theorem :: Artin
for F being Field
ex E1 being FieldExtension of F
st for p being non constant Element of the carrier of Polynom-Ring F
   holds p is_with_roots_in E1
proof
let F be Field;
set b = the bijective
                  Function of (nonConstantPolys F),card(nonConstantPolys F);
set I = the maxIdeal of nonConstantPolys(b,F)-Ideal;
set KF = KroneckerField(F,b,I);
consider FP being Field such that
X1: KF,FP are_isomorphic &
    (the carrier of FP) /\ ((the carrier of KF) \/ (the carrier of F)) = {}
    by FIELD_5:29;
X: [#] F = the carrier of F & [#] FP = the carrier of FP;
X2: F,FP are_disjoint
    proof
    now assume A: (the carrier of F) /\ (the carrier of FP) <> {};
      set x = the Element of (the carrier of F) /\ (the carrier of FP);
      B: x in the carrier of F & x in the carrier of FP by A,XBOOLE_0:def 4;
      then x in (the carrier of KF) \/ (the carrier of F) by XBOOLE_0:def 3;
      hence contradiction by B,X1,XBOOLE_0:def 4;
      end;
    hence thesis by X,FIELD_2:def 1;
    end;
consider phi being Function of KF,FP such that
X3: phi is isomorphism by X1;
set h = phi * emb(F,I,b);
reconsider h as Function of F,FP;
X4: h is linear one-to-one by X3,RINGCAT1:1; then
reconsider FP as F-monomorphic Field by RING_3:def 3;
reconsider h as Monomorphism of F,FP by X4;
reconsider E = embField h as Field by X2,FIELD_2:12;
emb_iso h is onto by X2,FIELD_2:15; then
reconsider embisoh = (emb_iso h)" as Function of FP,E by FUNCT_2:25;
   emb_iso h is additive multiplicative by X2,FIELD_2:13,FIELD_2:14; then
Y: emb_iso h is linear one-to-one onto by X2,FIELD_2:15; then
reconsider FP as E-isomorphic Field by RING_3:def 4;
reconsider embisoh as Isomorphism of FP,E by Y,RING_3:73;
set iso = embisoh * phi;
reconsider iso as Function of KF,E;
X5: iso is RingHomomorphism by X3,RINGCAT1:1;
then reconsider E as KF-homomorphic Field by RING_2:def 4;
reconsider iso as Homomorphism of KF,E by X5;
F is Subfield of E by FIELD_2:17;
then reconsider E as FieldExtension of F by FIELD_4:7;
take E;
now let p be non constant Element of the carrier of Polynom-Ring F;
  set u = KrRoot(I,b.p), n = card(nonConstantPolys F);
  u is_a_root_of (PolyHom emb(F,I,b)).p by Kr1; then
  B: eval((PolyHom iso).((PolyHom emb(F,I,b)).p),iso.u) = 0.E
                                        by FIELD_1:33,POLYNOM5:def 7;
  reconsider a = iso.KrRoot(I,b.p) as Element of E;
  (PolyHom iso).((PolyHom emb(F,I,b)).p) = p
    proof
    set g = (PolyHom iso).((PolyHom emb(F,I,b)).p);
    A: for a being Element of F holds iso.(emb(F,I,b).a) = a
       proof
       let a be Element of F;
       a|(n,F) is Element of Polynom-Ring(n,F) by POLYNOM1:def 11; then
       reconsider v =
           Class(EqRel(Polynom-Ring(n,F),I), a|(n,F))
           as Element of KroneckerField(F,b,I) by RING_1:12;
       dom(emb(F,I,b)) = the carrier of F by FUNCT_2:def 1; then
       C: h.a = phi.(emb(F,I,b).a) by FUNCT_1:13 .= phi.v by TH39;
       the carrier of (embField h) = carr h by FIELD_2:def 7
        .= ([#]FP \ rng h) \/ [#]F by FIELD_2:def 2
        .= ((the carrier of FP)\(rng h))\/(the carrier of F);
       then reconsider a1 = a as Element of embField h by XBOOLE_0:def 3;
       a in F; then
       D: (emb_iso h).a1 = phi.v by C,FIELD_2:def 8;
       A1: dom phi = the carrier of KF by FUNCT_2:def 1;
       A3: dom(emb_iso h) = the carrier of E by FUNCT_2:def 1;
       thus iso.(emb(F,I,b).a) = (embisoh * phi).v by TH39
         .= ((emb_iso h)").(phi.v) by A1,FUNCT_1:13
         .= a by D,A3,FUNCT_1:34;
       end;
    now let x be object;
      assume x in NAT;
      then reconsider i = x as Element of NAT;
      g.i = iso.(((PolyHom emb(F,I,b)).p).i) by FIELD_1:def 2
         .= iso.(Class(EqRel(Polynom-Ring(n,F),I),(p.i)|(n,F))) by TH40
         .= iso.(emb(F,I,b).(p.i)) by TH39;
      hence g.x = p.x by A;
      end;
    hence thesis;
    end;
  then Ext_eval(p,a) = 0.E by B,FIELD_4:26;
  hence p is_with_roots_in E by FIELD_4:def 3,def 2;
  end;
hence thesis;
end;
