let V, A be set ; for a, b being Element of V
for x0, y0 being Nat st not V is empty & A is_without_nonatomicND_wrt V & a <> b & A is complex-containing & ( for d being TypeSCNominativeData of V,A holds a is_complex_on d ) & ( for d being TypeSCNominativeData of V,A holds b is_complex_on d ) holds
<*(PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))),(SC_assignment ((subtraction (A,b,a)),b)),(gcd_inv (V,A,a,b,x0,y0))*> is SFHT of (ND (V,A))
let a, b be Element of V; for x0, y0 being Nat st not V is empty & A is_without_nonatomicND_wrt V & a <> b & A is complex-containing & ( for d being TypeSCNominativeData of V,A holds a is_complex_on d ) & ( for d being TypeSCNominativeData of V,A holds b is_complex_on d ) holds
<*(PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))),(SC_assignment ((subtraction (A,b,a)),b)),(gcd_inv (V,A,a,b,x0,y0))*> is SFHT of (ND (V,A))
let x0, y0 be Nat; ( not V is empty & A is_without_nonatomicND_wrt V & a <> b & A is complex-containing & ( for d being TypeSCNominativeData of V,A holds a is_complex_on d ) & ( for d being TypeSCNominativeData of V,A holds b is_complex_on d ) implies <*(PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))),(SC_assignment ((subtraction (A,b,a)),b)),(gcd_inv (V,A,a,b,x0,y0))*> is SFHT of (ND (V,A)) )
assume that
A1:
not V is empty
and
A2:
A is_without_nonatomicND_wrt V
and
A3:
a <> b
and
A4:
A is complex-containing
and
A5:
for d being TypeSCNominativeData of V,A holds a is_complex_on d
and
A6:
for d being TypeSCNominativeData of V,A holds b is_complex_on d
; <*(PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))),(SC_assignment ((subtraction (A,b,a)),b)),(gcd_inv (V,A,a,b,x0,y0))*> is SFHT of (ND (V,A))
set i = gcd_inv (V,A,a,b,x0,y0);
set l = less (A,a,b);
set D = subtraction (A,b,a);
set Da = denaming (V,A,a);
set Db = denaming (V,A,b);
set f = SC_assignment ((subtraction (A,b,a)),b);
set p = PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)));
set S = SC_Psuperpos ((gcd_inv (V,A,a,b,x0,y0)),(subtraction (A,b,a)),b);
A7:
<*(SC_Psuperpos ((gcd_inv (V,A,a,b,x0,y0)),(subtraction (A,b,a)),b)),(SC_assignment ((subtraction (A,b,a)),b)),(gcd_inv (V,A,a,b,x0,y0))*> is SFHT of (ND (V,A))
by NOMIN_3:29;
for d being TypeSCNominativeData of V,A st d in dom (PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))) & (PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))) . d = TRUE & d in dom (SC_assignment ((subtraction (A,b,a)),b)) & (SC_assignment ((subtraction (A,b,a)),b)) . d in dom (gcd_inv (V,A,a,b,x0,y0)) holds
(gcd_inv (V,A,a,b,x0,y0)) . ((SC_assignment ((subtraction (A,b,a)),b)) . d) = TRUE
proof
let d be
TypeSCNominativeData of
V,
A;
( d in dom (PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))) & (PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))) . d = TRUE & d in dom (SC_assignment ((subtraction (A,b,a)),b)) & (SC_assignment ((subtraction (A,b,a)),b)) . d in dom (gcd_inv (V,A,a,b,x0,y0)) implies (gcd_inv (V,A,a,b,x0,y0)) . ((SC_assignment ((subtraction (A,b,a)),b)) . d) = TRUE )
assume that A8:
d in dom (PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0))))
and A9:
(PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))) . d = TRUE
and A10:
d in dom (SC_assignment ((subtraction (A,b,a)),b))
and A11:
(SC_assignment ((subtraction (A,b,a)),b)) . d in dom (gcd_inv (V,A,a,b,x0,y0))
;
(gcd_inv (V,A,a,b,x0,y0)) . ((SC_assignment ((subtraction (A,b,a)),b)) . d) = TRUE
A12:
dom (SC_assignment ((subtraction (A,b,a)),b)) = dom (subtraction (A,b,a))
by NOMIN_2:def 7;
A13:
dom (SC_Psuperpos ((gcd_inv (V,A,a,b,x0,y0)),(subtraction (A,b,a)),b)) = { d where d is TypeSCNominativeData of V,A : ( local_overlapping (V,A,d,((subtraction (A,b,a)) . d),b) in dom (gcd_inv (V,A,a,b,x0,y0)) & d in dom (subtraction (A,b,a)) ) }
by NOMIN_2:def 11;
A14:
dom (denaming (V,A,a)) = { d where d is NonatomicND of V,A : a in dom d }
by NOMIN_1:def 18;
A15:
dom (denaming (V,A,b)) = { d where d is NonatomicND of V,A : b in dom d }
by NOMIN_1:def 18;
A16:
d in dom (less (A,a,b))
by A8, A9, PARTPR_1:23;
A17:
dom ((less A) * <:(denaming (V,A,a)),(denaming (V,A,b)):>) c= dom <:(denaming (V,A,a)),(denaming (V,A,b)):>
by RELAT_1:25;
A18:
dom <:(denaming (V,A,a)),(denaming (V,A,b)):> = (dom (denaming (V,A,a))) /\ (dom (denaming (V,A,b)))
by FUNCT_3:def 7;
then A19:
d in dom (denaming (V,A,a))
by A16, A17, XBOOLE_0:def 4;
then consider da being
NonatomicND of
V,
A such that A20:
d = da
and A21:
a in dom da
by A14;
A22:
d in dom (denaming (V,A,b))
by A16, A17, A18, XBOOLE_0:def 4;
then consider db being
NonatomicND of
V,
A such that A23:
d = db
and A24:
b in dom db
by A15;
reconsider L =
local_overlapping (
V,
A,
db,
((subtraction (A,b,a)) . db),
b) as
Function ;
dom (gcd_inv (V,A,a,b,x0,y0)) = ND (
V,
A)
by Def28;
then A25:
L in dom (gcd_inv (V,A,a,b,x0,y0))
;
A26:
rng (subtraction (A,b,a)) c= rng (subtraction A)
by RELAT_1:26;
A27:
rng (subtraction (A,b,a)) c= A
by A26, XBOOLE_1:1;
reconsider L =
L as
NonatomicND of
V,
A by NOMIN_2:9;
A28:
gcd_inv_pred V,
A,
a,
b,
x0,
y0,
L
proof
take
L
;
NOMIN_4:def 27 ( L = L & a in dom L & b in dom L & ex x, y being Nat st
( x = L . a & y = L . b & x gcd y = x0 gcd y0 ) )
thus
L = L
;
( a in dom L & b in dom L & ex x, y being Nat st
( x = L . a & y = L . b & x gcd y = x0 gcd y0 ) )
(
d in dom (gcd_inv (V,A,a,b,x0,y0)) &
(gcd_inv (V,A,a,b,x0,y0)) . d = TRUE )
by A8, A9, PARTPR_1:23;
then
gcd_inv_pred V,
A,
a,
b,
x0,
y0,
d
by Def28;
then consider d1 being
NonatomicND of
V,
A such that A29:
d = d1
and
a in dom d1
and
b in dom d1
and A30:
ex
x,
y being
Nat st
(
x = d1 . a &
y = d1 . b &
x gcd y = x0 gcd y0 )
;
consider x,
y being
Nat such that A31:
x = d1 . a
and A32:
y = d1 . b
and A33:
x gcd y = x0 gcd y0
by A30;
(subtraction (A,b,a)) . d in rng (subtraction (A,b,a))
by A10, A12, FUNCT_1:def 3;
then reconsider Dd =
(subtraction (A,b,a)) . d as
TypeSCNominativeData of
V,
A by A27, NOMIN_1:def 6;
A34:
L . b = Dd
by A1, A23, NOMIN_2:10;
A35:
<:(denaming (V,A,a)),(denaming (V,A,b)):> . d = [((denaming (V,A,a)) . d),((denaming (V,A,b)) . d)]
by A16, A17, FUNCT_3:def 7;
A36:
(
(denaming (V,A,a)) . d = denaming (
a,
da) &
(denaming (V,A,b)) . d = denaming (
b,
db) )
by A20, A23, A19, A22, NOMIN_1:def 18;
(
a is_complex_on d &
b is_complex_on d )
by A5, A6;
then consider x1,
y1 being
Complex such that A37:
x1 = denaming (
b,
db)
and A38:
y1 = denaming (
a,
da)
and A39:
subtraction (
(denaming (b,db)),
(denaming (a,da)))
= x1 - y1
by A36, Def14;
A40:
y1 = x
by A20, A21, A29, A31, A38, NOMIN_1:def 12;
A41:
x1 = y
by A23, A24, A29, A32, A37, NOMIN_1:def 12;
A42:
not
db in A
by A2, Th3;
A43:
not
naming (
V,
A,
b,
((subtraction (A,b,a)) . db))
in A
by A2, Th3;
A44:
Dd = (subtraction (A,b,a)) . d
;
A45:
denaming (
a,
da)
in COMPLEX
by A38, XCMPLX_0:def 2;
A46:
denaming (
b,
db)
in COMPLEX
by A37, XCMPLX_0:def 2;
A47:
dom (local_overlapping (V,A,db,Dd,b)) = dom db
by A1, A23, A24, A42, A43, NOMIN_2:14;
hence
a in dom L
by A20, A21, A23;
( b in dom L & ex x, y being Nat st
( x = L . a & y = L . b & x gcd y = x0 gcd y0 ) )
thus
b in dom L
by A23, A24, A47;
ex x, y being Nat st
( x = L . a & y = L . b & x gcd y = x0 gcd y0 )
A48:
(less (A,a,b)) . d = TRUE
by A8, A9, PARTPR_1:23;
d in dom (less (A,a,b))
by A8, A9, PARTPR_1:23;
then
(less (A,a,b)) . d = (less A) . (
((denaming (V,A,a)) . d),
((denaming (V,A,b)) . d))
by A35, FUNCT_1:12;
then
(denaming (V,A,a)) . d less_pred (denaming (V,A,b)) . d
by A4, A36, A45, A46, A48, Def12;
then
y - x in NAT
by A36, A37, A38, A40, A41, INT_1:5;
then reconsider z =
y - x as
Nat ;
take
x
;
ex y being Nat st
( x = L . a & y = L . b & x gcd y = x0 gcd y0 )
take
z
;
( x = L . a & z = L . b & x gcd z = x0 gcd y0 )
dom <:(denaming (V,A,b)),(denaming (V,A,a)):> = (dom (denaming (V,A,a))) /\ (dom (denaming (V,A,b)))
by FUNCT_3:def 7;
then A49:
d in dom <:(denaming (V,A,b)),(denaming (V,A,a)):>
by A19, A22, XBOOLE_0:def 4;
then
<:(denaming (V,A,b)),(denaming (V,A,a)):> . d = [((denaming (V,A,b)) . d),((denaming (V,A,a)) . d)]
by FUNCT_3:def 7;
then A50:
(subtraction (A,b,a)) . d =
(subtraction A) . (
(denaming (b,db)),
(denaming (a,da)))
by A36, A49, FUNCT_1:13
.=
subtraction (
(denaming (b,db)),
(denaming (a,da)))
by A4, A45, A46, Def15
;
thus
x = L . a
by A1, A3, A20, A21, A23, A29, A31, A42, A43, A44, NOMIN_2:12;
( z = L . b & x gcd z = x0 gcd y0 )
thus
z = L . b
by A20, A21, A29, A31, A34, A38, A39, A41, A50, NOMIN_1:def 12;
x gcd z = x0 gcd y0
(y - (1 * x)) gcd x = y gcd x
by NEWTON02:5;
hence
x gcd z = x0 gcd y0
by A33;
verum
end;
A51:
d in dom (SC_Psuperpos ((gcd_inv (V,A,a,b,x0,y0)),(subtraction (A,b,a)),b))
by A10, A12, A13, A23, A25;
then (SC_Psuperpos ((gcd_inv (V,A,a,b,x0,y0)),(subtraction (A,b,a)),b)) . d =
(gcd_inv (V,A,a,b,x0,y0)) . L
by A23, NOMIN_2:35
.=
TRUE
by A25, A28, Def28
;
hence
(gcd_inv (V,A,a,b,x0,y0)) . ((SC_assignment ((subtraction (A,b,a)),b)) . d) = TRUE
by A7, A10, A11, A51, NOMIN_3:11;
verum
end;
hence
<*(PP_and ((less (A,a,b)),(gcd_inv (V,A,a,b,x0,y0)))),(SC_assignment ((subtraction (A,b,a)),b)),(gcd_inv (V,A,a,b,x0,y0))*> is SFHT of (ND (V,A))
by NOMIN_3:28; verum