per cases ( ( x in REAL & y in REAL ) or not x in REAL or not y in REAL ) ;
suppose ( x in REAL & y in REAL ) ; :: thesis: x * y is negative
then reconsider x = x, y = y as Real ;
x * y < 0 ;
hence x * y is negative ; :: thesis: verum
end;
suppose ( not x in REAL or not y in REAL ) ; :: thesis: x * y is negative
end;
end;