reserve x,y for object,X,Y,A,B,C,M for set;
reserve P,Q,R,R1,R2 for Relation;
reserve X,X1,X2 for Subset of A;
reserve Y for Subset of B;
reserve R,R1,R2 for Subset of [:A,B:];
reserve FR for Subset-Family of [:A,B:];

theorem Th25:
  for B being non empty set, A being set, X being Subset of A,
  y being Element of B, R being Subset of [:A,B:] holds
  y in R.:^X iff for x being set st x in X holds y in Im(R,x)
proof
  let B be non empty set, A be set, X be Subset of A, y be Element of B,
  R be Subset of [:A,B:];
  thus
  y in R.:^X implies for x being set st x in X holds y in Im(R,x) by Th24;
  assume
A1: for x being set st x in X holds y in Im(R,x);
  per cases;
  suppose .:R.:{_{X}_} = {};
    then Intersect(.:R.:{_{X}_}) = B by SETFAM_1:def 9;
    hence thesis;
  end;
  suppose
A2: .:R.:{_{X}_} <> {};
    then
A3: Intersect(.:R.:{_{X}_}) = meet (.:R.:{_{X}_}) by SETFAM_1:def 9;
    for Y being set holds Y in .:R.:{_{X}_} implies y in Y
    proof
      let Y be set;
      assume Y in .:R.:{_{X}_};
      then consider z being object such that
A4:   [z,Y] in .:R and
A5:   z in {_{X}_} by RELAT_1:def 13;
      consider x being object such that
A6:   z = {x} and
A7:   x in X by A5,Th1;
A8:   z in dom .:R by A4,FUNCT_1:1;
      Y = .:R.z by A4,FUNCT_1:1;
      then Y = Im(R,x) by A6,A8,Def1;
      hence thesis by A1,A7;
    end;
    hence thesis by A2,A3,SETFAM_1:def 1;
  end;
end;
