let N be with_non-empty_elements set ; :: thesis: for IL being non empty set
for S being non empty stored-program IC-Ins-separated definite AMI-Struct of IL,N
for f1, f2 being IL-Function of NAT ,S st f1 is bijective & ( for m, n being Element of NAT holds
( m <= n iff f1 . m <= f1 . n ) ) & f2 is bijective & ( for m, n being Element of NAT holds
( m <= n iff f2 . m <= f2 . n ) ) holds
f1 = f2
let IL be non empty set ; :: thesis: for S being non empty stored-program IC-Ins-separated definite AMI-Struct of IL,N
for f1, f2 being IL-Function of NAT ,S st f1 is bijective & ( for m, n being Element of NAT holds
( m <= n iff f1 . m <= f1 . n ) ) & f2 is bijective & ( for m, n being Element of NAT holds
( m <= n iff f2 . m <= f2 . n ) ) holds
f1 = f2
let S be non empty stored-program IC-Ins-separated definite AMI-Struct of IL,N; :: thesis: for f1, f2 being IL-Function of NAT ,S st f1 is bijective & ( for m, n being Element of NAT holds
( m <= n iff f1 . m <= f1 . n ) ) & f2 is bijective & ( for m, n being Element of NAT holds
( m <= n iff f2 . m <= f2 . n ) ) holds
f1 = f2
let f1, f2 be IL-Function of NAT ,S; :: thesis: ( f1 is bijective & ( for m, n being Element of NAT holds
( m <= n iff f1 . m <= f1 . n ) ) & f2 is bijective & ( for m, n being Element of NAT holds
( m <= n iff f2 . m <= f2 . n ) ) implies f1 = f2 )
assume that
A1:
f1 is bijective
and
A2:
for m, n being Element of NAT holds
( m <= n iff f1 . m <= f1 . n )
and
A3:
f2 is bijective
and
A4:
for m, n being Element of NAT holds
( m <= n iff f2 . m <= f2 . n )
; :: thesis: f1 = f2
defpred S1[ Nat] means f1 . $1 <> f2 . $1;
assume
f1 <> f2
; :: thesis: contradiction
then
ex c being Element of NAT st S1[c]
by FUNCT_2:113;
then A5:
ex c being Nat st S1[c]
;
consider d being Nat such that
A6:
S1[d]
and
A7:
for n being Nat st S1[n] holds
d <= n
from NAT_1:sch 5(A5);
reconsider d = d as Element of NAT by ORDINAL1:def 13;
( f1 is onto & f2 is onto )
by A1, A3;
then A9:
( rng f1 = IL & rng f2 = IL )
by FUNCT_2:def 3;
then consider d2 being set such that
A10:
( d2 in dom f2 & f1 . d = f2 . d2 )
by FUNCT_1:def 5;
reconsider d2 = d2 as Element of NAT by A10;
consider d1 being set such that
A11:
( d1 in dom f1 & f2 . d = f1 . d1 )
by A9, FUNCT_1:def 5;
reconsider d1 = d1 as Element of NAT by A11;
A12:
( f1 is one-to-one & f2 is one-to-one )
by A1, A3;
A13:
( dom f1 = NAT & dom f2 = NAT )
by FUNCT_2:def 1;