set AL = (((ParsedTerms X) #) * the Arity of S) . o;
set AX = ((ParsedTerms X) * the ResultSort of S) . o;
set D = DTConOSA X;
let f, g be Function of ((((ParsedTerms X) #) * the Arity of S) . o),(((ParsedTerms X) * the ResultSort of S) . o); :: thesis: ( ( for p being FinSequence of TS (DTConOSA X) st OSSym (o,X) ==> roots p holds
f . p = (OSSym (o,X)) -tree p ) & ( for p being FinSequence of TS (DTConOSA X) st OSSym (o,X) ==> roots p holds
g . p = (OSSym (o,X)) -tree p ) implies f = g )

assume that
A5: for p being FinSequence of TS (DTConOSA X) st OSSym (o,X) ==> roots p holds
f . p = (OSSym (o,X)) -tree p and
A6: for p being FinSequence of TS (DTConOSA X) st OSSym (o,X) ==> roots p holds
g . p = (OSSym (o,X)) -tree p ; :: thesis: f = g
A7: for x being object st x in (((ParsedTerms X) #) * the Arity of S) . o holds
f . x = g . x
proof
let x be object ; :: thesis: ( x in (((ParsedTerms X) #) * the Arity of S) . o implies f . x = g . x )
assume A8: x in (((ParsedTerms X) #) * the Arity of S) . o ; :: thesis: f . x = g . x
then reconsider p = x as FinSequence of TS (DTConOSA X) by Th5;
A9: OSSym (o,X) ==> roots p by A8, Th7;
then f . p = (OSSym (o,X)) -tree p by A5;
hence f . x = g . x by A6, A9; :: thesis: verum
end;
A10: dom g = (((ParsedTerms X) #) * the Arity of S) . o by FUNCT_2:def 1;
dom f = (((ParsedTerms X) #) * the Arity of S) . o by FUNCT_2:def 1;
hence f = g by A10, A7, FUNCT_1:2; :: thesis: verum