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;

theorem Th8:
  rng f = D implies rng <:<*f*>:> = 1-tuples_on D
proof
  set X = D;
A1: dom <:<*f*>:> = dom f by FINSEQ_3:141;
  assume
A2: rng f = X;
  now
    let x be object;
    hereby
      assume x in rng <:<*f*>:>;
      then consider y being object such that
A3:   y in dom <:<*f*>:> and
A4:   <:<*f*>:>.y = x by FUNCT_1:def 3;
      reconsider fy = f.y as Element of X by A2,A1,A3,FUNCT_1:3;
A5:   <*fy*> is Element of 1-tuples_on X by FINSEQ_2:131;
      <:<*f*>:>.y = <*f.y*> by A1,A3,FINSEQ_3:141;
      hence x in 1-tuples_on X by A4,A5;
    end;
    assume x in 1-tuples_on X;
    then x is Tuple of 1,X by FINSEQ_2:131;
    then consider d being Element of X such that
A6: x = <*d*> by FINSEQ_2:97;
    consider y being object such that
A7: y in dom f and
A8: f.y = d by A2,FUNCT_1:def 3;
    <:<*f*>:>.y = <*d*> by A7,A8,FINSEQ_3:141;
    hence x in rng <:<*f*>:> by A1,A6,A7,FUNCT_1:3;
  end;
  hence thesis by TARSKI:2;
end;
