reserve p,q,x,x1,x2,y,y1,y2,z,z1,z2 for set;
reserve A,B,V,X,X1,X2,Y,Y1,Y2,Z for set;
reserve C,C1,C2,D,D1,D2 for non empty set;

theorem
  for f being Function st B c= bool rng f holds f"(union B) = union((.:f
  ) " B )
proof
  let f be Function such that
A1: B c= bool rng f;
A2: f"(union B) c= union((.:f)"B)
  proof
    let x be object;
    assume
A3: x in f"(union B);
    then f.x in union B by FUNCT_1:def 7;
    then consider Y such that
A4: f.x in Y and
A5: Y in B by TARSKI:def 4;
A6: f"Y c= dom f by RELAT_1:132;
    then f"Y in bool dom f;
    then
A7: f"Y in dom(.:f) by Def1;
    f.:(f"Y) = Y by A1,A5,FUNCT_1:77;
    then (.:f).(f"Y) in B by A5,A6,Def1;
    then
A8: f"Y in (.:f)"B by A7,FUNCT_1:def 7;
    x in dom f by A3,FUNCT_1:def 7;
    then x in f"Y by A4,FUNCT_1:def 7;
    hence thesis by A8,TARSKI:def 4;
  end;
  union((.:f)"B) c= f"(union B) by Th16;
  hence thesis by A2,XBOOLE_0:def 10;
end;
