reserve p,q for Rational;
reserve g,m,m1,m2,n,n1,n2 for Nat;
reserve i,i1,i2,j,j1,j2 for Integer;
reserve R for Ring, F for Field;

theorem Th98:
for F being 0-characteristic F_Rat-homomorphic Field,
    f being Homomorphism of F_Rat,F holds f = canHom_Rat F
proof
let F be 0-characteristic F_Rat-homomorphic Field,
f be Homomorphism of F_Rat,F;
set g = canHom_Rat F;
A1: f is unity-preserving;
A2: f is multiplicative;
A3: g is unity-preserving;
A4: dom f = the carrier of F_Rat by FUNCT_2:def 1
        .= dom g by FUNCT_2:def 1;
defpred P[Integer] means for j being Element of F_Rat
   st j = $1 holds f.j = g.j;
A5: 0.F_Rat = 0;
    then f.0 = 0.F by RING_2:6
   .= g.0 by A5,RING_2:6;
then A6: P[0];
A7: now let u be Integer;
   assume A8: P[u];
   reconsider uu = u as Element of F_Rat by RAT_1:def 2;
   now let k be Integer;
     assume k = u-1;
     then A9: k = uu - 1.F_Rat;
     hence f.k = f.uu - f.(1.F_Rat) by RING_2:8
              .= g.uu - g.(1_F_Rat) by A8,A1,A3
              .= g.k by A9,RING_2:8;
     end;
   hence P[u-1];
   now let k be Integer;
     assume k = u+1;
     then A10: k = uu + 1.F_Rat;
     hence f.k = f.uu + f.(1.F_Rat) by VECTSP_1:def 20
              .= g.uu + g.(1_F_Rat) by A8,A1,A3
              .= g.k by A10,VECTSP_1:def 20;
     end;
   hence P[u+1];
   end;
A11: for i be Integer holds P[i] from INT_1:sch 4(A6,A7);
A12: for i be Integer, j be Element of F_Rat
    st j = i holds f.j = (canHom_Int F).i
    proof
    let i be Integer, j be Element of F_Rat;
    assume A13: j = i;
    A14: canHom_Int F = (canHom_Rat F) | INT by Th97;
    thus f.j = g.i by A13,A11
            .= (canHom_Int F).i by A14,INT_1:def 2,FUNCT_1:49;
    end;
now let x be object;
  assume x in dom f;
  then reconsider a = x as Element of F_Rat;
  reconsider a1 = numerator a as Element of F_Rat by RAT_1:def 2;
  reconsider a2 = denominator a as Element of F_Rat by RAT_1:def 2;
A15: a2 <> 0.F_Rat;
  g.a = ((canHom_Int F).numerator a) / ((canHom_Int F).denominator a)
        by Def11
     .= f.a1 / ((canHom_Int F).denominator a) by A12
     .= f.a1 / f.a2 by A12
     .= f.a1 * f.(a2") by A15,QUOFIELD:52
     .= f.(a1*a2") by A2
     .= f.((numerator a) * (denominator a)" ) by GAUSSINT:15
     .= f.a by RAT_1:15;
  hence f.x = g.x;
  end;
hence thesis by A4;
end;
