let n1, m1 be Element of NAT ; :: thesis: ( 1 <= n1 & 1 <= m1 implies ex m0, n0 being Element of NAT st
( n1 lcm m1 = n0 * m0 & n0 gcd m0 = 1 & n0 divides n1 & m0 divides m1 & n0 <> 0 & m0 <> 0 ) )
assume A1:
( 1 <= n1 & 1 <= m1 )
; :: thesis: ex m0, n0 being Element of NAT st
( n1 lcm m1 = n0 * m0 & n0 gcd m0 = 1 & n0 divides n1 & m0 divides m1 & n0 <> 0 & m0 <> 0 )
set nm1 = n1 lcm m1;
reconsider n = n1, m = m1 as non empty natural number by A1;
reconsider nm = n1 lcm m1 as non empty natural number by A1, INT_2:4;
set N1 = { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } ;
set N2 = (support (ppf nm)) \ { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } ;
A2:
support (ppf nm) = (support (ppf n)) \/ (support (ppf m))
by Th9;
then A3:
support (ppf n) c= support (ppf nm)
by XBOOLE_1:7;
A4:
{ p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } c= support (ppf n)
then A5:
{ p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } c= support (ppf nm)
by A3, XBOOLE_1:1;
{ p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } \/ ((support (ppf nm)) \ { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } ) = support (ppf nm)
by A3, A4, XBOOLE_1:1, XBOOLE_1:45;
then A6:
(support (ppf nm)) \ { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } c= support (ppf nm)
by XBOOLE_1:7;
A7:
(support (ppf nm)) \ { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } c= support (ppf m)
A13:
for x being set st x in { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } holds
(pfexp nm) . x = (pfexp n) . x
A14:
for x being set st x in (support (ppf nm)) \ { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } holds
(pfexp nm) . x = (pfexp m) . x
A21:
Product (ppf n) = n
by NAT_3:61;
A22:
Product (ppf m) = m
by NAT_3:61;
consider ppm, ppn being bag of such that
A23:
( support ppm = (support (ppf nm)) \ { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } & support ppn = { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } & support ppm misses support ppn & ppm | (support ppm) = (ppf nm) | (support ppm) & ppn | (support ppn) = (ppf nm) | (support ppn) & ppm + ppn = ppf nm )
by A5, Lm3;
reconsider n0 = Product ppn, m0 = Product ppm as Element of NAT ;
A24: dom (ppf nm) =
SetPrimes
by PARTFUN1:def 4
.=
dom (ppf n)
by PARTFUN1:def 4
;
A30:
ppn | { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } = (ppf n) | { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) }
by A23, A24, A25, FUNCT_1:166;
A31: dom (ppf nm) =
SetPrimes
by PARTFUN1:def 4
.=
dom (ppf m)
by PARTFUN1:def 4
;
A36:
ppm | ((support (ppf nm)) \ { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } ) = (ppf m) | ((support (ppf nm)) \ { p where p is Element of NAT : ( p in support (ppf n) & (pfexp nm) . p = (pfexp n) . p ) } )
by A23, A31, A32, FUNCT_1:166;
A37: n0 * m0 =
Product (ppf nm)
by A23, NAT_3:19
.=
nm
by NAT_3:61
;
A38:
m0 divides m
by A7, A22, A23, A36, Th7;
A39:
n0 <> 0
by A37;
A40:
m0 <> 0
by A37;
then A45:
ppm is prime-factorization-like
by Def1;
then
ppn is prime-factorization-like
by Def1;
then A50:
n0,m0 are_relative_prime
by A23, A45, Th12;
A51:
n0 gcd m0 = 1
by A50, INT_2:def 4;
thus
ex m0, n0 being Element of NAT st
( n1 lcm m1 = n0 * m0 & n0 gcd m0 = 1 & n0 divides n1 & m0 divides m1 & n0 <> 0 & m0 <> 0 )
by A4, A21, A23, A30, A37, A38, A39, A40, A51, Th7; :: thesis: verum