reserve p,q,r for FinSequence;
reserve u,v,x,y,y1,y2,z for object, A,D,X,Y for set;
reserve i,j,k,l,m,n for Nat;
reserve J for Nat;
reserve n for Nat;
reserve x,y,y1,y2,z,a,b for object, X,Y,Z,V1,V2 for set,
  f,g,h,h9,f1,f2 for Function,
  i for Nat,
  P for Permutation of X,
  D,D1,D2,D3 for non empty set,
  d1 for Element of D1,
  d2 for Element of D2,
  d3 for Element of D3;

theorem
  doms <*f,g,h*> = <*dom f, dom g, dom h*> & rngs <*f,g,h*> = <*rng f,
  rng g, rng h*>
proof
A2: <*f,g,h*>.1 = f & <*f,g,h*>.2 = g;
A3: <*f,g,h*>.3 = h;
A4: dom <*f,g,h*> = Seg 3 &  {f,g,h} = {f,g,h} by FINSEQ_1:89;
A6: now
    let x be object;
    assume
A7: x in {1,2,3};
    then x = 1 or x = 2 or x = 3 by ENUMSET1:def 1;
    hence (rngs <*f,g,h*>).x = <*rng f, rng g, rng h*>.x
      by A2,A3,A4,A7,Th1,FUNCT_6:def 3;
  end;
A8: dom doms <*f,g,h*> = dom <*f,g,h*> & dom <*dom f, dom
  g, dom h*> = Seg 3 by FINSEQ_1:89,FUNCT_6:def 2;
  now
    let x be object;
    assume
A11: x in {1,2,3};
    then x = 1 or x = 2 or x = 3 by ENUMSET1:def 1;
    hence (doms <*f,g,h*>).x = <*dom f, dom g, dom h*>.x by A2,A3,A4
,A11,Th1,FUNCT_6:def 2;
  end;
  hence doms <*f,g,h*> = <*dom f, dom g, dom h*> by A8,A4,Th1;
  dom rngs <*f,g,h*> = dom <*f,g,h*> & dom <*rng f,
  rng g, rng h*> = Seg 3 by FINSEQ_1:89,FUNCT_6:def 3;
  hence thesis by A4,A6,Th1;
end;
