
theorem lempp:
for F being Field,
    p being non constant Element of the carrier of Polynom-Ring F
holds p is separable iff
      for E being SplittingField of p
      ex a being Element of E, q being Ppoly of E,Roots(E,p) st p = a * q
proof
let F be Field, p be non constant Element of the carrier of Polynom-Ring F;
A: now assume AS: p is separable;
   thus for E being SplittingField of p
        ex a being Element of E, q being Ppoly of E,Roots(E,p) st p = a * q
     proof
     let E be SplittingField of p;
     A: p splits_in E by FIELD_8:def 1; then
     consider c being non zero Element of E, q being Ppoly of E such that
     B: p = c * q by FIELD_4:def 5;
     H: Roots(E,p) = {a where a is Element of E : a is_a_root_of p,E}
        by FIELD_4:def 4;
     I: c*q is Element of the carrier of Polynom-Ring E by POLYNOM3:def 10;
     C: Roots q = Roots(c*q) by RING_5:19 .= Roots(E,p) by I,B,FIELD_7:13;
     now let a be Element of E;
       assume a is_a_root_of q;
       then a in Roots(E,p) by C,POLYNOM5:def 10;
       then consider a1 being Element of E such that
       D: a1 =a & a1 is_a_root_of p,E by H;
       multiplicity(p,a) = 1 by D,A,AS,ThSep0;
       then multiplicity(c*q,a) = 1 by B,sepsep1;
       hence multiplicity(q,a) = 1 by lems;
       end;
     then q is Ppoly of E,(Roots q) by FIELD_14:30;
     hence thesis by C,B;
     end;
   end;
now assume AS: for E being SplittingField of p ex a being Element of E,
         q being Ppoly of E,Roots(E,p) st p = a * q;
  set K = the SplittingField of p;
  consider c being Element of K, q being Ppoly of K,Roots(K,p) such that
  A: p = c * q by AS;
  (0.K) * q = 0_.(K) by POLYNOM5:26 .= 0_.(F) by FIELD_4:12; then
  reconsider c as non zero Element of K by A,STRUCT_0:def 12;
  H: Roots(K,p) = {a where a is Element of K : a is_a_root_of p,K}
     by FIELD_4:def 4;
  I: c*q is Element of the carrier of Polynom-Ring K by POLYNOM3:def 10;
  C: Roots q = Roots(c*q) by RING_5:19 .= Roots(K,p) by I,A,FIELD_7:13;
  now let a be Element of K;
    assume a is_a_root_of p,K;
    then a in Roots(K,p) by H;
    then a is_a_root_of q by C,POLYNOM5:def 10;
    then multiplicity(q,a) = 1 by C,FIELD_14:30;
    then multiplicity(c*q,a) = 1 by lems;
    hence multiplicity(p,a) = 1 by A,sepsep1;
    end;
  hence p is separable;
  end;
hence thesis by A;
end;
