reserve x,y for set;
reserve C,C9,D,D9,E for non empty set;
reserve c for Element of C;
reserve c9 for Element of C9;
reserve d,d1,d2,d3,d4,e for Element of D;
reserve d9 for Element of D9;
reserve i,j for natural Number;
reserve F for Function of [:D,D9:],E;
reserve p,q for FinSequence of D,
  p9,q9 for FinSequence of D9;
reserve f,f9 for Function of C,D,
  h for Function of D,E;

theorem
  h*(p^q) = (h*p)^(h*q)
proof
  defpred P[FinSequence of D] means h*(p^$1) = (h*p)^(h*$1);
A1: for q,d st P[q] holds P[q^<*d*>]
  proof
    let q,d such that
A2: h*(p^q) = (h*p)^(h*q);
    thus h*(p^(q^<*d*>)) = h*((p^q)^<*d*>) by FINSEQ_1:32
      .= (h*(p^q))^<*h.d*> by Th8
      .= (h*p)^((h*q)^<*h.d*>) by A2,FINSEQ_1:32
      .= (h*p)^(h*(q^<*d*>)) by Th8;
  end;
  h*(p^<*>D) = h*p by FINSEQ_1:34
    .= (h*p)^(h*(<*>D)) by FINSEQ_1:34;
  then
A3: P[<*>D];
  for q holds P[q] from FINSEQ_2:sch 2(A3,A1);
  hence thesis;
end;
