let S1, S2 be m -element FinSequence; ( ex id1 being Function of (CarProduct (SubFin (X,1))),(product (SubFin (X,1))) st
( S1 . 1 = id1 & id1 is bijective & ( for x being object st x in CarProduct (SubFin (X,1)) holds
id1 . x = <*x*> ) ) & ( for i being non zero Nat st i < m holds
ex Fi being Function of (CarProduct (SubFin (X,i))),(product (SubFin (X,i))) ex IK being Function of [:(CarProduct (SubFin (X,i))),(ElmFin (X,(i + 1))):],(product (SubFin (X,(i + 1)))) st
( Fi = S1 . i & IK = S1 . (i + 1) & Fi is bijective & IK is bijective & ( for x, y being object st x in CarProduct (SubFin (X,i)) & y in ElmFin (X,(i + 1)) holds
ex s being FinSequence st
( Fi . x = s & IK . (x,y) = s ^ <*y*> ) ) ) ) & ex id1 being Function of (CarProduct (SubFin (X,1))),(product (SubFin (X,1))) st
( S2 . 1 = id1 & id1 is bijective & ( for x being object st x in CarProduct (SubFin (X,1)) holds
id1 . x = <*x*> ) ) & ( for i being non zero Nat st i < m holds
ex Fi being Function of (CarProduct (SubFin (X,i))),(product (SubFin (X,i))) ex IK being Function of [:(CarProduct (SubFin (X,i))),(ElmFin (X,(i + 1))):],(product (SubFin (X,(i + 1)))) st
( Fi = S2 . i & IK = S2 . (i + 1) & Fi is bijective & IK is bijective & ( for x, y being object st x in CarProduct (SubFin (X,i)) & y in ElmFin (X,(i + 1)) holds
ex s being FinSequence st
( Fi . x = s & IK . (x,y) = s ^ <*y*> ) ) ) ) implies S1 = S2 )
assume that
A51:
( ex id1 being Function of (CarProduct (SubFin (X,1))),(product (SubFin (X,1))) st
( S1 . 1 = id1 & id1 is bijective & ( for x being object st x in CarProduct (SubFin (X,1)) holds
id1 . x = <*x*> ) ) & ( for i being non zero Nat st i < m holds
ex Fi being Function of (CarProduct (SubFin (X,i))),(product (SubFin (X,i))) ex IK being Function of [:(CarProduct (SubFin (X,i))),(ElmFin (X,(i + 1))):],(product (SubFin (X,(i + 1)))) st
( Fi = S1 . i & IK = S1 . (i + 1) & Fi is bijective & IK is bijective & ( for x, y being object st x in CarProduct (SubFin (X,i)) & y in ElmFin (X,(i + 1)) holds
ex s being FinSequence st
( Fi . x = s & IK . (x,y) = s ^ <*y*> ) ) ) ) )
and
A52:
( ex id1 being Function of (CarProduct (SubFin (X,1))),(product (SubFin (X,1))) st
( S2 . 1 = id1 & id1 is bijective & ( for x being object st x in CarProduct (SubFin (X,1)) holds
id1 . x = <*x*> ) ) & ( for i being non zero Nat st i < m holds
ex Fi being Function of (CarProduct (SubFin (X,i))),(product (SubFin (X,i))) ex IK being Function of [:(CarProduct (SubFin (X,i))),(ElmFin (X,(i + 1))):],(product (SubFin (X,(i + 1)))) st
( Fi = S2 . i & IK = S2 . (i + 1) & Fi is bijective & IK is bijective & ( for x, y being object st x in CarProduct (SubFin (X,i)) & y in ElmFin (X,(i + 1)) holds
ex s being FinSequence st
( Fi . x = s & IK . (x,y) = s ^ <*y*> ) ) ) ) )
; S1 = S2
consider id1 being Function of (CarProduct (SubFin (X,1))),(product (SubFin (X,1))) such that
A53:
( S1 . 1 = id1 & id1 is bijective & ( for x being object st x in CarProduct (SubFin (X,1)) holds
id1 . x = <*x*> ) )
by A51;
consider id2 being Function of (CarProduct (SubFin (X,1))),(product (SubFin (X,1))) such that
A54:
( S2 . 1 = id2 & id2 is bijective & ( for x being object st x in CarProduct (SubFin (X,1)) holds
id2 . x = <*x*> ) )
by A52;
defpred S1[ Nat] means ( 1 <= $1 & $1 <= m implies S1 . $1 = S2 . $1 );
A57:
S1[ 0 ]
;
A58:
for k being Nat st S1[k] holds
S1[k + 1]
proof
let i be
Nat;
( S1[i] implies S1[i + 1] )
assume A59:
S1[
i]
;
S1[i + 1]
assume A60:
( 1
<= i + 1 &
i + 1
<= m )
;
S1 . (i + 1) = S2 . (i + 1)
per cases
( i = 0 or i <> 0 )
;
suppose A61:
i <> 0
;
S1 . (i + 1) = S2 . (i + 1)then
i + 1
<> 1
;
then A62:
1
< i + 1
by A60, XXREAL_0:1;
i + 0 < i + 1
by XREAL_1:8;
then A63:
i < m
by A60, XXREAL_0:2;
reconsider j =
i as non
zero Nat by A61;
consider Fi being
Function of
(CarProduct (SubFin (X,j))),
(product (SubFin (X,j))),
IK being
Function of
[:(CarProduct (SubFin (X,j))),(ElmFin (X,(j + 1))):],
(product (SubFin (X,(j + 1)))) such that A64:
(
Fi = S1 . i &
IK = S1 . (j + 1) &
Fi is
bijective &
IK is
bijective & ( for
x,
y being
object st
x in CarProduct (SubFin (X,j)) &
y in ElmFin (
X,
(j + 1)) holds
ex
s being
FinSequence st
(
Fi . x = s &
IK . (
x,
y)
= s ^ <*y*> ) ) )
by A51, A63;
consider Gi being
Function of
(CarProduct (SubFin (X,j))),
(product (SubFin (X,j))),
IL being
Function of
[:(CarProduct (SubFin (X,j))),(ElmFin (X,(j + 1))):],
(product (SubFin (X,(i + 1)))) such that A65:
(
Gi = S2 . j &
IL = S2 . (j + 1) &
Gi is
bijective &
IL is
bijective & ( for
x,
y being
object st
x in CarProduct (SubFin (X,j)) &
y in ElmFin (
X,
(j + 1)) holds
ex
s being
FinSequence st
(
Gi . x = s &
IL . (
x,
y)
= s ^ <*y*> ) ) )
by A52, A63;
for
a being
Element of
CarProduct (SubFin (X,j)) for
b being
Element of
ElmFin (
X,
(j + 1)) holds
IK . (
a,
b)
= IL . (
a,
b)
proof
let a be
Element of
CarProduct (SubFin (X,j));
for b being Element of ElmFin (X,(j + 1)) holds IK . (a,b) = IL . (a,b)let b be
Element of
ElmFin (
X,
(j + 1));
IK . (a,b) = IL . (a,b)
A66:
ex
s being
FinSequence st
(
Fi . a = s &
IK . (
a,
b)
= s ^ <*b*> )
by A64;
ex
s being
FinSequence st
(
Gi . a = s &
IL . (
a,
b)
= s ^ <*b*> )
by A65;
hence
IK . (
a,
b)
= IL . (
a,
b)
by A66, A59, A62, A64, A65, A60, NAT_1:13;
verum
end; hence
S1 . (i + 1) = S2 . (i + 1)
by A64, A65, BINOP_1:2;
verum end; end;
end;
A67:
for i being Nat holds S1[i]
from NAT_1:sch 2(A57, A58);
( len S1 = m & len S2 = m )
by CARD_1:def 7;
hence
S1 = S2
by A67; verum