reserve IIG for monotonic Circuit-like non void non empty ManySortedSign;

theorem Th9:
  for SCS being non-empty Circuit of IIG, v being Vertex of IIG, iv
  being InputValues of SCS, p being DTree-yielding FinSequence st v in
InnerVertices IIG & dom p = dom the_arity_of action_at v & for k being Element
  of NAT st k in dom p holds p.k = IGTree((the_arity_of action_at v)/.k, iv)
  holds IGTree(v,iv) = [action_at v,the carrier of IIG]-tree p
proof
  let SCS be non-empty Circuit of IIG, v be Vertex of IIG, iv be InputValues
  of SCS, p be DTree-yielding FinSequence;
  assume that
A1: v in InnerVertices IIG and
A2: dom p = dom the_arity_of action_at v and
A3: for k being Element of NAT st k in dom p holds p.k = IGTree((
  the_arity_of action_at v)/.k, iv);
  set U1 = FreeEnv SCS;
  set o = action_at v;
A4: now
    let k be Nat;
    assume k in dom p;
    then p.k = IGTree((the_arity_of o)/.k, iv) by A3;
    hence p.k in (the Sorts of U1).((the_arity_of o)/.k);
  end;
  len p = len the_arity_of o by A2,FINSEQ_3:29;
  then reconsider p99 = p as Element of Args(o,U1) by A4,MSAFREE2:5;
  set X = the Sorts of SCS;
A5: dom the ResultSort of IIG = the carrier' of IIG by FUNCT_2:def 1;
A6: Result(o,U1) = ((the Sorts of U1) * the ResultSort of IIG).o by
MSUALG_1:def 5
    .= (the Sorts of U1).((the ResultSort of IIG).o) by A5,FUNCT_1:13;
A7: U1 = MSAlgebra (# FreeSort(X), FreeOper(X) #) & Args(o,U1) = ((the Sorts
  of U1)# * the Arity of IIG).o by MSAFREE:def 14,MSUALG_1:def 4;
  then reconsider p9 = p99 as FinSequence of TS(DTConMSA(X)) by MSAFREE:8;
  U1 = MSAlgebra (# FreeSort(X), FreeOper(X) #) by MSAFREE:def 14;
  then
A8: Den(o,U1) = (FreeOper X).o by MSUALG_1:def 6
    .= DenOp(o,X) by MSAFREE:def 13;
  Sym(o,X) ==> roots p9 by A7,MSAFREE:10;
  then
A9: Den(o,U1).p = (Sym(o,X))-tree p9 by A8,MSAFREE:def 12
    .= [o,the carrier of IIG]-tree p9 by MSAFREE:def 9;
  (the ResultSort of IIG).o = the_result_sort_of o by MSUALG_1:def 2
    .= v by A1,MSAFREE2:def 7;
  then reconsider
  t = [action_at v,the carrier of IIG]-tree p as Element of (the
  Sorts of FreeMSA X).v by A9,A6,FUNCT_2:5;
  now
    let k be Element of NAT;
    set v1 = (the_arity_of action_at v)/.k;
    assume k in dom p;
    then
A10: p.k = IGTree(v1,iv) by A3;
    then reconsider ek = p.k as Element of (the Sorts of FreeEnv SCS).v1;
    take ek;
    thus ek = p.k;
    ex e1 being Element of (the Sorts of FreeMSA X).v1 st card e1 = size(
    v1,SCS) & ek = (Fix_inp_ext iv).v1.e1 by A10,Def3;
    hence card ek = size(v1,SCS) by Th7;
  end;
  then
A11: card t = size(v,SCS) by A1,CIRCUIT1:16;
  now
    let k be Element of NAT;
    assume k in dom p;
    then p.k = IGTree((the_arity_of action_at v)/.k, iv) by A3;
    hence p.k = (Fix_inp_ext iv).((the_arity_of action_at v)/.k).(p.k) by Th8;
  end;
  then [action_at v,the carrier of IIG]-tree p = (Fix_inp_ext iv).v.t by A1,Th4
;
  hence thesis by A11,Def3;
end;
