reserve Al for QC-alphabet;
reserve a,b,c,d for object,
  i,k,n for Nat,
  p,q for Element of CQC-WFF(Al),
  x,y,y1 for bound_QC-variable of Al,
  A for non empty set,
  J for interpretation of Al,A,
  v,w for Element of Valuations_in(Al,A),
  f,g for Function,
  P,P9 for QC-pred_symbol of k,Al,
  ll,ll9 for CQC-variable_list of k,Al,
  l1 for FinSequence of QC-variables(Al),
  Sub,Sub9,Sub1 for CQC_Substitution of Al,
  S,S9,S1,S2 for Element of CQC-Sub-WFF(Al),
  s for QC-symbol of Al;
reserve vS,vS1,vS2 for Val_Sub of A,Al;

theorem
  Sub_the_arguments_of Sub_P(P,ll,Sub) = Sub_the_arguments_of Sub_P(P9,
  ll9,Sub9) implies ll = ll9
proof
  assume
A1: Sub_the_arguments_of Sub_P(P,ll,Sub) = Sub_the_arguments_of Sub_P(P9
  ,ll9,Sub9);
  consider k1 being Nat, P1 being (QC-pred_symbol of k1,Al),
   ll1 being QC-variable_list of k1,Al , e1 being Element of vSUB(Al) such that
A2: Sub_the_arguments_of Sub_P(P,ll,Sub) = ll1 and
A3: Sub_P(P,ll,Sub) = Sub_P(P1,ll1,e1) by SUBSTUT1:def 29;
A4: P!ll = <*P*>^ll & P1!ll1 = <*P1*>^ll1 by QC_LANG1:8;
  Sub_P(P,ll,Sub) = [P!ll,Sub] by SUBSTUT1:9;
  then [P!ll,Sub] = [P1!ll1,e1] by A3,SUBSTUT1:9;
  then
A5: <*P1*>^ll1 = <*P*>^ll by A4,XTUPLE_0:1;
  (<*P1*>^ll1).1 = P1 & (<*P*>^ll).1 = P by FINSEQ_1:41;
  then
A6: ll1 = ll by A5,FINSEQ_1:33;
  consider k2 being Nat, P2 being (QC-pred_symbol of k2,Al),
   ll2 being QC-variable_list of k2,Al, e2 being Element of vSUB(Al) such that
A7: Sub_the_arguments_of Sub_P(P9,ll9,Sub9) = ll2 and
A8: Sub_P(P9,ll9,Sub9) = Sub_P(P2,ll2,e2) by SUBSTUT1:def 29;
A9: P9!ll9 = <*P9*>^ll9 & P2!ll2 = <*P2*>^ll2 by QC_LANG1:8;
  Sub_P(P9,ll9,Sub9) = [P9!ll9,Sub9] by SUBSTUT1:9;
  then [P9!ll9,Sub9] = [P2!ll2,e2] by A8,SUBSTUT1:9;
  then
A10: <*P2*>^ll2 = <*P9*>^ll9 by A9,XTUPLE_0:1;
  (<*P2*>^ll2).1 = P2 & (<*P9*>^ll9).1 = P9 by FINSEQ_1:41;
  hence thesis by A1,A2,A7,A6,A10,FINSEQ_1:33;
end;
