reserve i, j, k, c, m, n for Nat,
  a, x, y, z, X, Y for set,
  D, E for non empty set,
  R for Relation,
  f, g for Function,
  p, q for FinSequence;
reserve f1, f2 for non empty homogeneous to-naturals NAT*-defined Function,
  e1, e2 for homogeneous to-naturals NAT*-defined Function,
  p for Element of (arity f1+1)-tuples_on NAT;

theorem Th55:
  dom primrec(f1,f2,i) c= (arity f1+1)-tuples_on NAT
proof
  let x be object such that
A1: x in dom primrec(f1,f2,i);
  consider G being Function of (arity f1+1)-tuples_on NAT, HFuncs NAT such
  that
A2: primrec(f1,f2,i) = Union G and
A3: for p being Element of (arity f1+1)-tuples_on NAT holds G.p =
  primrec(f1,f2,i,p) by Def11;
A4: rng G is compatible
  proof
    let f,g being Function such that
A5: f in rng G and
A6: g in rng G;
    consider fx being object such that
A7: fx in dom G and
A8: f = G.fx by A5,FUNCT_1:def 3;
    reconsider fx as Element of (arity f1+1)-tuples_on NAT by A7;
    consider gx being object such that
A9: gx in dom G and
A10: g = G.gx by A6,FUNCT_1:def 3;
    reconsider gx as Element of (arity f1+1)-tuples_on NAT by A9;
A11: G.gx = primrec(f1,f2,i,gx) by A3;
    G.fx = primrec(f1,f2,i,fx) by A3;
    hence thesis by A8,A10,A11,Th50;
  end;
  now
    let x be Element of (arity f1+1)-tuples_on NAT;
    G.x = primrec(f1,f2,i,x) by A3;
    hence dom (G.x) c= (arity f1+1)-tuples_on NAT by Th51;
  end;
  then
  ex F being Element of HFuncs NAT st F = Union G & dom F c= (arity f1+
  1)-tuples_on NAT by A4,Th38;
  hence thesis by A1,A2;
end;
