 reserve I for non empty set;
 reserve i for Element of I;
 reserve F for Group-Family of I;
 reserve G for Group;
reserve S for Subgroup-Family of F;
reserve f for Homomorphism-Family of G, F;

theorem ThIPO:
  for G being Group
  for I being non empty set
  for F being normal Subgroup-Family of I,G
  holds G is_internal_product_of F
  iff ((the multMagma of G = gr Union (Carrier F))
   & (for i being Element of I
      for J being Subset of I st
        J = I \ {j where j is Element of I : F.i = F.j}
      for N being strict normal Subgroup of G
      st N = gr (Union (Carrier (F|J)))
      holds F.i /\ N = (1).G))
proof
  let G be Group;
  let I be non empty set;
  let F be normal Subgroup-Family of I,G;
  thus G is_internal_product_of F
  implies ((the multMagma of G = gr Union (Carrier F))
   & (for i being Element of I
      for J being Subset of I st
        J = I \ {j where j is Element of I : F.i = F.j}
      for N being strict normal Subgroup of G
      st N = gr (Union (Carrier (F|J)))
      holds F.i /\ N = (1).G)) by ThIPOa;
  assume A1: the multMagma of G = gr Union (Carrier F);
  assume A2: for i being Element of I
  for J being Subset of I st J = I \ {j where j is Element of I : F.i = F.j}
  for N being strict normal Subgroup of G
  st N = gr (Union (Carrier (F|J)))
  holds F.i /\ N = (1).G;
  for i being Element of I holds F.i is normal Subgroup of G;
  hence thesis by A1,A2,ThIPOa;
end;
