
theorem
  for V being Z_Module holds
  V is divisible iff (Omega).V is divisible
  proof
    let V be Z_Module;
    hereby
      assume A1: V is divisible;
      for vv being Vector of (Omega).V holds vv is divisible
      proof
        let vv be Vector of (Omega).V;
        reconsider v = vv as Vector of V;
        B1: v is divisible by A1;
        for a being Element of INT.Ring st a <> 0 holds
        ex uu being Vector of (Omega).V st a*uu = vv
        proof
          let a be Element of INT.Ring such that
          C1: a <> 0;
          consider u be Vector of V such that
          C2: a*u = v by B1,C1;
          reconsider uu = u as Vector of (Omega).V;
          take uu;
          thus thesis by C2;
        end;
        hence thesis;
      end;
      hence (Omega).V is divisible;
    end;
    assume A1: (Omega).V is divisible;
    for v being Vector of V holds v is divisible
    proof
      let v be Vector of V;
      reconsider vv = v as Vector of (Omega).V;
      B1: vv is divisible by A1;
      for a being Element of INT.Ring st a <> 0 holds
      ex u being Vector of V st a*u = v
      proof
        let a be Element of INT.Ring such that
        C1: a <> 0;
        consider uu be Vector of (Omega).V such that
        C2: a*uu = vv by B1,C1;
        reconsider u = uu as Vector of V;
        take u;
        thus thesis by C2;
      end;
      hence thesis;
    end;
    hence V is divisible;
  end;
