
theorem
  for q be G_INTEG st Norm(q) is Prime holds q is g_prime
  proof
    let q be G_INTEG such that
    A1: Norm(q) is Prime;
    for z being G_INTEG holds
    not z Divides q or z is g_int_unit or z is_associated_to q
    proof
      let z be G_INTEG;
      per cases;
      suppose z is g_int_unit;
        hence thesis;
      end;
      suppose not z is g_int_unit & z is_associated_to q;
        hence thesis;
      end;
      suppose A2: not z is g_int_unit & not z is_associated_to q;
        not z Divides q
        proof
          assume A3: z Divides q;
          consider c being G_INTEG such that
          A4: q = z * c by A3;
          A5: Norm(q) = Norm(z)*Norm(c) by A4,Th34;
          then A6: Norm(z) divides Norm(q) by INT_1:def 3;
          A7: Norm(z) > 1
          proof
            Norm(z) <> 0
            proof
              assume Norm(z) = 0;
              then Norm(q) = 0*Norm(c) by A4,Th34
              .= 0;
              hence contradiction by A1;
            end;
            then Norm z >= 0+1 by NAT_1:13;
            hence thesis by A2,XXREAL_0:1;
          end;
          A8: Norm(c) <> 1 by A2,A4,Def20,Th40;
          Norm(q) <> Norm(z) by A1,A5,A8,XCMPLX_1:7;
          hence contradiction by A1,A6,A7,INT_2:def 4;
        end;
        hence thesis;
      end;
    end;
    hence thesis by A1,INT_2:def 4;
  end;
