let p, q be Element of HP-WFF ; :: thesis: for t being FinSequence st p = q ^ t holds
p = q

let t be FinSequence; :: thesis: ( p = q ^ t implies p = q )
defpred S1[ Nat] means for p, q being Element of HP-WFF
for t being FinSequence st len p = $1 & p = q ^ t holds
p = q;
A1: for n being Nat st ( for k being Nat st k < n holds
S1[k] ) holds
S1[n]
proof
let n be Nat; :: thesis: ( ( for k being Nat st k < n holds
S1[k] ) implies S1[n] )

assume A2: for k being Nat st k < n holds
for p, q being Element of HP-WFF
for t being FinSequence st len p = k & p = q ^ t holds
p = q ; :: thesis: S1[n]
let p, q be Element of HP-WFF ; :: thesis: for t being FinSequence st len p = n & p = q ^ t holds
p = q

let t be FinSequence; :: thesis: ( len p = n & p = q ^ t implies p = q )
assume that
A3: len p = n and
A4: p = q ^ t ; :: thesis: p = q
len q >= 1 by Th10;
then A5: p . 1 = q . 1 by A4, FINSEQ_1:64;
per cases ( p is conjunctive or p is conditional or p is simple or p = VERUM ) by Th9;
suppose p is conjunctive ; :: thesis: p = q
then consider r, s being Element of HP-WFF such that
A6: p = r '&' s ;
q . 1 = (<*2*> ^ (r ^ s)) . 1 by A5, A6, FINSEQ_1:32
.= 2 by FINSEQ_1:41 ;
then q is conjunctive by Th12;
then consider r9, s9 being Element of HP-WFF such that
A7: q = r9 '&' s9 ;
<*2*> ^ ((r9 ^ s9) ^ t) = (<*2*> ^ (r9 ^ s9)) ^ t by FINSEQ_1:32
.= (<*2*> ^ r) ^ s by A4, A6, A7, FINSEQ_1:32
.= <*2*> ^ (r ^ s) by FINSEQ_1:32 ;
then (r9 ^ s9) ^ t = r ^ s by Th2;
then A8: r9 ^ (s9 ^ t) = r ^ s by FINSEQ_1:32;
now :: thesis: p = qend;
hence p = q ; :: thesis: verum
end;
suppose p is conditional ; :: thesis: p = q
then consider r, s being Element of HP-WFF such that
A14: p = r => s ;
q . 1 = (<*1*> ^ (r ^ s)) . 1 by A5, A14, FINSEQ_1:32
.= 1 by FINSEQ_1:41 ;
then q is conditional by Th11;
then consider r9, s9 being Element of HP-WFF such that
A15: q = r9 => s9 ;
<*1*> ^ ((r9 ^ s9) ^ t) = (<*1*> ^ (r9 ^ s9)) ^ t by FINSEQ_1:32
.= (<*1*> ^ r) ^ s by A4, A14, A15, FINSEQ_1:32
.= <*1*> ^ (r ^ s) by FINSEQ_1:32 ;
then (r9 ^ s9) ^ t = r ^ s by Th2;
then A16: r9 ^ (s9 ^ t) = r ^ s by FINSEQ_1:32;
now :: thesis: p = qend;
hence p = q ; :: thesis: verum
end;
end;
end;
A25: for n being Nat holds S1[n] from NAT_1:sch 4(A1);
len p = len p ;
hence ( p = q ^ t implies p = q ) by A25; :: thesis: verum