reserve X for set;
reserve G for Group;
reserve H for Subgroup of G;
reserve h,x,y for object;
reserve f for Endomorphism of G;
reserve phi for Automorphism of G;
reserve K for characteristic Subgroup of G;

theorem Th47:
  for G1,G2 being Group
  for H being Subgroup of G1
  for a being Element of G1
  for f being Homomorphism of G1,G2
  holds f.:(a * H) = (f.a) * (f .: H)
proof
  let G1,G2 be Group;
  let H be Subgroup of G1;
  let a be Element of G1;
  let f be Homomorphism of G1,G2;
  A1: dom f = the carrier of G1 by FUNCT_2:def 1;
  for y being object st y in f.:(a * H) holds y in (f.a)*(f.:H)
  proof
    let y be object;
    assume y in f .: (a * H);
    then consider x being object such that
    B1: x in the carrier of G1 & x in (a * H) and
    B2: y = f.x by A1,FUNCT_1:def 6;
    consider h being Element of G1 such that
    B3: x = a*h & h in H by B1,GROUP_2:103;
    B4: y = f.(a*h) by B2,B3
         .= (f.a)*(f.h) by GROUP_6:def 6;
    dom f = the carrier of G1 & h in H & h in G1 by B3,FUNCT_2:def 1;
    then f.h in f.:(the carrier of H) by FUNCT_1:def 6;
    then f.h in f.:H by GRSOLV_1:8;
    hence y in (f.a) * (f .: H) by B4,GROUP_2:103;
  end;
  then A1: f.:(a * H) c= (f.a) * (f .: H);
  for y being object st y in (f.a)*(f.:H) holds y in f.:(a * H)
  proof
    let y be object;
    assume y in (f.a)*(f.:H);
    then consider g being Element of G2 such that
    B1: y = (f.a)*g and
    B2: g in (f.:H) by GROUP_2:103;
    g in Image(f|H) by B2,GRSOLV_1:def 3;
    then consider x being Element of H such that
    B3: g = (f|H).x by GROUP_6:45;
    B4: x in H & x is Element of G1 by GROUP_2:42;
    reconsider x as Element of G1 by GROUP_2:42;
    B5: y = (f.a)*g by B1
         .= (f.a)*(f.x) by B3,B4,Th1
         .= f.(a*x) by GROUP_6:def 6;
    a*x in the carrier of G1 & dom f = the carrier of G1 by FUNCT_2:def 1;
    then (a*x) in dom f & (a*x) in a*H & y=f.(a*x) by B4,B5,GROUP_2:103;
    hence y in f.:(a * H) by FUNCT_1:def 6;
  end;
  then (f.a) * (f .: H) c= f.:(a * H);
  hence f.:(a * H) = (f.a) * (f .: H) by A1,XBOOLE_0:def 10;
end;
