reserve Al for QC-alphabet;
reserve i,j,n,k,l for Nat;
reserve a for set;
reserve T,S,X,Y for Subset of CQC-WFF(Al);
reserve p,q,r,t,F,H,G for Element of CQC-WFF(Al);
reserve s for QC-formula of Al;
reserve x,y for bound_QC-variable of Al;
reserve f,g for FinSequence of [:CQC-WFF(Al),Proof_Step_Kinds:];

theorem Th25:
  f is_a_proof_wrt X & g is_a_proof_wrt X implies f^g is_a_proof_wrt X
proof
  assume that
A1: f is_a_proof_wrt X and
A2: g is_a_proof_wrt X;
 f <> {} by A1;
  hence f^g <> {};
  let n such that
A3: 1 <= n and
A4: n <= len(f^g);
 now per cases;
    suppose
A5:   n <= len f;
then    f,n is_a_correct_step_wrt X by A1,A3;
      hence thesis by A3,A5,Th23;
    end;
    suppose
A6:   len f < n;
      then reconsider k=n - len f as Element of NAT by NAT_1:21;
A7:  k + len f <= len g + len f by A4,FINSEQ_1:22;
  len f + 1 <= k + len f by A6,NAT_1:13;
then A8:  1 <= k by XREAL_1:6;
A9:  k <= len g by A7,XREAL_1:6;
then   k + len f = n & g,k is_a_correct_step_wrt X by A2,A8;
      hence thesis by A8,A9,Th24;
    end;
  end;
  hence thesis;
end;
