let X1, X2 be Element of DK; :: thesis: ( ex p being FinSequence of DX st
( p is one-to-one & rng p = Y & X1 = f "**" (Func_Seq (F,p)) ) & ex p being FinSequence of DX st
( p is one-to-one & rng p = Y & X2 = f "**" (Func_Seq (F,p)) ) implies X1 = X2 )

assume that
A6: ex p1 being FinSequence of DX st
( p1 is one-to-one & rng p1 = Y & X1 = f "**" (Func_Seq (F,p1)) ) and
A7: ex p2 being FinSequence of DX st
( p2 is one-to-one & rng p2 = Y & X2 = f "**" (Func_Seq (F,p2)) ) ; :: thesis: X1 = X2
consider p1 being FinSequence of DX such that
A8: p1 is one-to-one and
A9: rng p1 = Y and
A10: X1 = f "**" (Func_Seq (F,p1)) by A6;
consider p2 being FinSequence of DX such that
A11: p2 is one-to-one and
A12: rng p2 = Y and
A13: X2 = f "**" (Func_Seq (F,p2)) by A7;
A14: dom p1 = dom p2 by A8, A9, A11, A12, Th1;
consider P being Permutation of (dom p1) such that
A15: p2 = p1 * P and
dom P = dom p1 and
rng P = dom p1 by A8, A9, A11, A12, Th1;
now :: thesis: for xd being object holds
( xd in dom (Func_Seq (F,p1)) iff xd in dom p1 )
let xd be object ; :: thesis: ( xd in dom (Func_Seq (F,p1)) iff xd in dom p1 )
( xd in dom p1 implies p1 . xd in rng p1 ) by FUNCT_1:3;
hence ( xd in dom (Func_Seq (F,p1)) iff xd in dom p1 ) by A3, A9, FUNCT_1:11; :: thesis: verum
end;
then A16: dom (Func_Seq (F,p1)) = dom p1 by TARSKI:2;
now :: thesis: for xd being object holds
( xd in dom (Func_Seq (F,p2)) iff xd in dom p2 )
let xd be object ; :: thesis: ( xd in dom (Func_Seq (F,p2)) iff xd in dom p2 )
( xd in dom p2 implies p2 . xd in rng p2 ) by FUNCT_1:3;
hence ( xd in dom (Func_Seq (F,p2)) iff xd in dom p2 ) by A3, A12, FUNCT_1:11; :: thesis: verum
end;
then A17: dom (Func_Seq (F,p2)) = dom p2 by TARSKI:2;
A18: rng P = dom (Func_Seq (F,p1)) by A16, FUNCT_2:def 3;
now :: thesis: for xd being object holds
( xd in dom ((Func_Seq (F,p1)) * P) iff xd in dom (Func_Seq (F,p2)) )
let xd be object ; :: thesis: ( xd in dom ((Func_Seq (F,p1)) * P) iff xd in dom (Func_Seq (F,p2)) )
( xd in dom P implies P . xd in dom (Func_Seq (F,p1)) ) by A18, FUNCT_1:3;
then ( xd in dom ((Func_Seq (F,p1)) * P) iff xd in dom P ) by FUNCT_1:11;
hence ( xd in dom ((Func_Seq (F,p1)) * P) iff xd in dom (Func_Seq (F,p2)) ) by A14, A17, FUNCT_2:52; :: thesis: verum
end;
then A19: dom (Func_Seq (F,p2)) = dom ((Func_Seq (F,p1)) * P) by TARSKI:2;
now :: thesis: for s being object st s in dom (Func_Seq (F,p2)) holds
(Func_Seq (F,p2)) . s = ((Func_Seq (F,p1)) * P) . s
let s be object ; :: thesis: ( s in dom (Func_Seq (F,p2)) implies (Func_Seq (F,p2)) . s = ((Func_Seq (F,p1)) * P) . s )
assume A20: s in dom (Func_Seq (F,p2)) ; :: thesis: (Func_Seq (F,p2)) . s = ((Func_Seq (F,p1)) * P) . s
then reconsider i = s as Element of NAT ;
i in dom P by A14, A17, A20, FUNCT_2:52;
then A21: P . i in rng P by FUNCT_1:3;
then P . i in dom (Func_Seq (F,p2)) by A14, A17, FUNCT_2:def 3;
then reconsider j = P . i as Element of NAT ;
A22: j in dom p1 by A21, FUNCT_2:def 3;
A23: s in dom P by A14, A17, A20, FUNCT_2:52;
(Func_Seq (F,p2)) . s = F . (p2 . i) by A17, A20, FUNCT_1:13
.= F . (p1 . (P . i)) by A15, A23, FUNCT_1:13
.= (Func_Seq (F,p1)) . j by A22, FUNCT_1:13
.= ((Func_Seq (F,p1)) * P) . s by A23, FUNCT_1:13 ;
hence (Func_Seq (F,p2)) . s = ((Func_Seq (F,p1)) * P) . s ; :: thesis: verum
end;
then Func_Seq (F,p2) = (Func_Seq (F,p1)) * P by A19, FUNCT_1:2;
hence X1 = X2 by A1, A2, A10, A13, A16, FINSOP_1:7; :: thesis: verum