reserve x,y,z for Real,
  a,b,c,d,e,f,g,h for Nat,
  k,l,m,n,m1,n1,m2,n2 for Integer,
  q for Rational;
reserve fs,fs1,fs2,fs3 for FinSequence;
reserve D for non empty set,
  v,v1,v2,v3 for object,
  fp for FinSequence of NAT,
  fr,fr1,fr2 for FinSequence of INT,
  ft for FinSequence of REAL;

theorem
  q=k/a & a<>0 & k,a are_coprime implies k=numerator(q) & a=
  denominator(q)
proof
  assume that
A1: q=k/a & a<>0 and
A2: k,a are_coprime;
  consider b being Nat such that
A3: k=numerator(q)*b & a=denominator(q)*b by A1,RAT_1:27;
  numerator(q),denominator(q) are_coprime by Th22;
  then k gcd a = |.b.| by A3,INT_2:24;
  then 1=|.b.| by A2,INT_2:def 3
    .=b by ABSVALUE:def 1;
  hence thesis by A3;
end;
