let x, y be set ; :: thesis: for p, q being FinSequence st x -flat_tree p = y -flat_tree q holds
( x = y & p = q )

let p, q be FinSequence; :: thesis: ( x -flat_tree p = y -flat_tree q implies ( x = y & p = q ) )
assume A1: x -flat_tree p = y -flat_tree q ; :: thesis: ( x = y & p = q )
(x -flat_tree p) . {} = x by Def3;
hence x = y by A1, Def3; :: thesis: p = q
( dom (x -flat_tree p) = elementary_tree (len p) & dom (y -flat_tree q) = elementary_tree (len q) ) by Def3;
then A2: len p = len q by A1, Th2;
now
let i be Nat; :: thesis: ( i >= 1 & i <= len p implies p . i = q . i )
assume A3: ( i >= 1 & i <= len p ) ; :: thesis: p . i = q . i
then consider n being Nat such that
A4: i = 1 + n by NAT_1:10;
A5: n in NAT by ORDINAL1:def 13;
n < len p by A3, A4, NAT_1:13;
then ( p . i = (x -flat_tree p) . <*n*> & q . i = (y -flat_tree q) . <*n*> ) by A2, A4, A5, Def3;
hence p . i = q . i by A1; :: thesis: verum
end;
hence p = q by A2, FINSEQ_1:18; :: thesis: verum