reserve A,B,C for Ordinal,
        o for object,
        x,y,z,t,r,l for Surreal,
        X,Y for set;

theorem Th72:
  0_No < x*y iff (x < 0_No & y < 0_No) or (0_No < x & 0_No < y)
proof
  thus 0_No < x*y implies (x < 0_No & y < 0_No) or (0_No < x & 0_No < y)
  proof
    assume that A1:0_No < x*y and
    A2:not (x < 0_No & y < 0_No) & not (0_No < x & 0_No < y);
    A3:0_No <= x*y by A1;
    A4:0_No < y or y < 0_No
    proof
      assume not (0_No < y or y < 0_No);
      then 0_No==y;
      then 0_No * x == x*y by Th51;
      hence thesis by A1;
    end;
    per cases;
    suppose x==0_No;
      then 0_No * y == x*y by Th51;
      hence thesis by A1;
    end;
    suppose A5: 0_No < x;
      then -0_No < -y by A2,A4,Th10;
      then -0_No = 0_No < x*(-y)= -(x*y) by A5,Lm9,Th58;
      hence thesis by A3,Th10;
    end;
    suppose A6:x < 0_No;
      then 0_No < -x  by Th10,Th23;
      then  -0_No= 0_No < (-x)*y = -(x*y) by A6,A2,A4,Lm9,Th58;
      hence thesis by Th10,A3;
    end;
  end;
  assume (x < 0_No & y < 0_No) or (0_No < x & 0_No < y);
  then per cases;
  suppose x < 0_No & y < 0_No;
    then -0_No < -x & -0_No < -y & -0_No = 0_No by Th10;
    then 0_No < (-x)*(-y) = - (-x)*y by Lm9,Th58;
    hence thesis by Th58;
  end;
  suppose 0_No < x & 0_No < y;
    hence thesis by Lm9;
  end;
end;
