reserve X,Y for set, x,y,z for object, i,j,n for natural number;
reserve
  n for non empty Nat,
  S for non empty non void n PC-correct PCLangSignature,
  L for language MSAlgebra over S,
  F for PC-theory of L,
  A,B,C,D for Formula of L;
reserve
  J for non empty non void Signature,
  T for non-empty MSAlgebra over J,
  X for non empty-yielding GeneratorSet of T,
  S1 for J-extension non empty non void n PC-correct QC-correct
  QCLangSignature over Union X,
  L for non-empty Language of X extended_by ({},the carrier of S1), S1,
  G for QC-theory of L,
  A,B,C,D for Formula of L;
reserve x,y,z for Element of Union X;
reserve x0,y0,z0 for Element of Union (X extended_by ({},the carrier of S1));
reserve a for SortSymbol of J;

theorem
  L is subst-correct vf-qc-correct &
  x in X.a & x nin (vf A).a implies \ex(x,A\impB)\imp(A\imp\ex(x,B)) in G
  proof
    assume
A1: L is subst-correct vf-qc-correct;
    assume
A2: x in X.a & x nin (vf A).a;
    A\impA in G by Th34;
    then \for(x,A\impA) in G by Def39;
    then A\imp\for(x,A) in G & \for(x,\notB)\imp\for(x,\notB) in G
    by A2,Th108,Th34;
    then
A3: A\and\for(x,\notB)\imp\for(x,A)\and\for(x,\notB) in G by Th72;
    \for(x,A)\and\for(x,\notB)\imp\for(x,A\and\notB) in G by A1,Th126;
    then A\and\for(x,\notB)\imp\for(x,A\and\notB) in G by A3,Th45;
    then
A4: \not\for(x,A\and\notB)\imp\not(A\and\for(x,\notB)) in G by Th58;
    \notA\imp\notA in G & B\imp\not\notB in G by Th34,Th64;
    then
A5: \notA\orB\imp\notA\or\not\notB in G by Th59;
    \notA\or\not\notB\imp\not(A\and\notB) in G by Th73;
    then A\and\notB\imp\not\not(A\and\notB) in G &
    \not\not(A\and\notB)\imp\not(\notA\or\not\notB) in G by Th58,Th64;
    then A\impB\imp\notA\orB in G & \not(\notA\or\not\notB)\imp\not(\notA\orB)
    in G & A\and\notB\imp\not(\notA\or\not\notB) in G by A5,Th82,Th58,Th45;
    then \not(\notA\orB)\imp\not(A\impB) in G &
    A\and\notB\imp\not(\notA\orB) in G by Th58,Th45;
    then A\and\notB\imp\not(A\impB) in G by Th45;
    then \for(x,A\and\notB)\imp\for(x,\not(A\impB)) in G by A1,Th115;
    then \ex(x,A\impB)\iff\not\for(x,\not(A\impB)) in G &
    \not\for(x,\not(A\impB))\imp\not\for(x,A\and\notB) in G by Th105,Th58;
    then \ex(x,A\impB)\imp\not\for(x,A\and\notB) in G by Th92;
    then
A6: \ex(x,A\impB)\imp\not(A\and\for(x,\notB)) in G by A4,Th45;
    \ex(x,B)\iff\not\for(x,\notB) in G by Th105;
    then \notA\imp\notA in G & \not\for(x,\notB)\imp\ex(x,B) in G by Th34,Th43;
    then \not(A\and\for(x,\notB))\imp\notA\or\not\for(x,\notB) in G &
    \notA\or\not\for(x,\notB)\imp\notA\or\ex(x,B) in G by Th59,Th70;
    then \not(A\and\for(x,\notB))\imp\notA\or\ex(x,B) in G by Th45;
    then
A7: \ex(x,A\impB)\imp\notA\or\ex(x,B) in G by A6,Th45;
    A\imp\not\notA in G & \ex(x,B)\imp\ex(x,B) in G by Th34,Th64;
    then \notA\or\ex(x,B)\imp(\not\notA\imp\ex(x,B)) in G &
    (\not\notA\imp\ex(x,B))\imp(A\imp\ex(x,B)) in G by Th62,Th103;
    then \notA\or\ex(x,B)\imp(A\imp\ex(x,B)) in G by Th45;
    hence \ex(x,A\impB)\imp(A\imp\ex(x,B)) in G by A7,Th45;
  end;
