let p, q be Element of CQC-WFF ; :: thesis: for x being bound_QC-variable
for X being Subset of CQC-WFF st p => q in { F where F is Element of CQC-WFF : ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = F )
}
& not x in still_not-bound_in p holds
p => (All x,q) in { G where G is Element of CQC-WFF : ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = G )
}

let x be bound_QC-variable; :: thesis: for X being Subset of CQC-WFF st p => q in { F where F is Element of CQC-WFF : ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = F )
}
& not x in still_not-bound_in p holds
p => (All x,q) in { G where G is Element of CQC-WFF : ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = G )
}

let X be Subset of CQC-WFF ; :: thesis: ( p => q in { F where F is Element of CQC-WFF : ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = F )
}
& not x in still_not-bound_in p implies p => (All x,q) in { G where G is Element of CQC-WFF : ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = G )
}
)

assume that
A1: p => q in { F where F is Element of CQC-WFF : ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = F )
}
and
A2: not x in still_not-bound_in p ; :: thesis: p => (All x,q) in { G where G is Element of CQC-WFF : ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = G )
}

ex t being Element of CQC-WFF st
( t = p => q & ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = t ) ) by A1;
then consider f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] such that
A3: ( f is_a_proof_wrt X & Effect f = p => q ) ;
A4: f <> {} by A3, Def5;
reconsider qq = [(p => (All x,q)),8] as Element of [:CQC-WFF ,Proof_Step_Kinds :] by Th43, ZFMISC_1:106;
set h = f ^ <*qq*>;
A5: len (f ^ <*qq*>) = (len f) + (len <*qq*>) by FINSEQ_1:35
.= (len f) + 1 by FINSEQ_1:56 ;
for n being Element of NAT st 1 <= n & n <= len (f ^ <*qq*>) holds
f ^ <*qq*>,n is_a_correct_step_wrt X
proof
let n be Element of NAT ; :: thesis: ( 1 <= n & n <= len (f ^ <*qq*>) implies f ^ <*qq*>,n is_a_correct_step_wrt X )
assume A6: ( 1 <= n & n <= len (f ^ <*qq*>) ) ; :: thesis: f ^ <*qq*>,n is_a_correct_step_wrt X
now end;
hence f ^ <*qq*>,n is_a_correct_step_wrt X ; :: thesis: verum
end;
then A11: f ^ <*qq*> is_a_proof_wrt X by Def5;
Effect (f ^ <*qq*>) = ((f ^ <*qq*>) . ((len f) + 1)) `1 by A5, Def6
.= qq `1 by FINSEQ_1:59
.= p => (All x,q) by MCART_1:7 ;
hence p => (All x,q) in { G where G is Element of CQC-WFF : ex f being FinSequence of [:CQC-WFF ,Proof_Step_Kinds :] st
( f is_a_proof_wrt X & Effect f = G )
}
by A11; :: thesis: verum