reserve k,n,m,l,p for Nat;
reserve n0,m0 for non zero Nat;
reserve f for FinSequence;
reserve x,X,Y for set;
reserve f1,f2,f3 for FinSequence of REAL;
reserve n1,n2,m1,m2 for Nat;

theorem Th18:
  n0,m0 are_coprime & k in NatDivisors(n0*m0) implies
  ex n1,m1 st n1 in NatDivisors n0 & m1 in NatDivisors m0 & k=n1*m1
proof
  assume
A1: n0,m0 are_coprime;
  set m1 = k gcd m0;
  set n1 = k gcd n0;
  assume
A2: k in NatDivisors(n0*m0);
  take n1,m1;
  n1 divides n0 & n1 > 0 by NAT_D:def 5,NEWTON:58;
  hence n1 in NatDivisors n0;
  m1 divides m0 & m1 > 0 by NAT_D:def 5,NEWTON:58;
  hence m1 in NatDivisors m0;
  k divides n0*m0 by A2,MOEBIUS1:39;
  hence k = k gcd n0*m0 by NEWTON:49
    .= n1*m1 by A1,Th17;
end;
