let C be initialized ConstructorSignature; :: thesis: for a, b being expression of C, an_Adj C
for t1, t2 being expression of C, a_Type C st (ast C) term a,t1 = (ast C) term b,t2 holds
( a = b & t1 = t2 )

let a, b be expression of C, an_Adj C; :: thesis: for t1, t2 being expression of C, a_Type C st (ast C) term a,t1 = (ast C) term b,t2 holds
( a = b & t1 = t2 )

let t1, t2 be expression of C, a_Type C; :: thesis: ( (ast C) term a,t1 = (ast C) term b,t2 implies ( a = b & t1 = t2 ) )
assume (ast C) term a,t1 = (ast C) term b,t2 ; :: thesis: ( a = b & t1 = t2 )
then [* ,the carrier of C] -tree <*a,t1*> = (ast C) term b,t2 by ThAst
.= [* ,the carrier of C] -tree <*b,t2*> by ThAst ;
then <*a,t1*> = <*b,t2*> by TREES_4:15;
hence ( a = b & t1 = t2 ) by FINSEQ_1:98; :: thesis: verum