reserve A for preIfWhileAlgebra;

theorem Th18:
  for f being INT-Exec for t being INT-Expression of NAT holds t
  is INT-Expression of FreeUnivAlgNSG(ECIW-signature, INT-ElemIns), f
proof
  set v = the INT-Variable of NAT;
  let f be INT-Exec;
  set S = ECIW-signature, G = INT-ElemIns;
  set X = NAT;
  set A = FreeUnivAlgNSG(S,G);
  let t be INT-Expression of NAT;
A1: Terminals DTConUA(S,G) = G by FREEALG:3;
  reconsider t9 = t as Element of Funcs(Funcs(X,INT),INT) by FUNCT_2:8;
  reconsider v9 = v as Element of Funcs(Funcs(X,INT),X) by FUNCT_2:8;
A2: [v9,t9] in G by ZFMISC_1:87;
A3: ElementaryInstructions A = FreeGenSetNSG(S,G) by AOFA_000:70;
  then root-tree [v9,t9] in ElementaryInstructions A by A1,A2;
  then reconsider I = root-tree [v9,t9] as Element of A;
  hereby
    take I;
    thus I is_assignment_wrt A,X,f
    proof
      thus I in ElementaryInstructions A by A3,A1,A2;
      take v,t;
      thus thesis by Def25;
    end;
  end;
  take v;
  thus thesis by Th16;
end;
