The Assumptions
documentation states that
Quantities that appear algebraically in inequalities are always assumed to be real.
Thus in x^2 < 0
the variable x
is assumed to be real. That is why the assumption is contradictory.
A shorter example is
$Assumptions = x^2 < 0
During evaluation of $Assumptions::cas: Warning: contradictory assumption(s) x^2<0 encountered.
(* x^2 < 0 *)
Other functions, such as Reduce
, also make similar automatic assumptions. This is also documented for Reduce
.
Reduce[x^2 < 0, x]
(* False *)
However, with Reduce
, it is possible to override this automatic assumption.
Reduce[x^2 < 0, x, Complexes]
(* Re[x] == 0 && (Im[x] < 0 || Im[x] > 0) *)
I do not know if this is possible with Assumptions
.
$Assumptions = x^2 < 0
$\endgroup$Reduce[x^2 < 0, x]
-->False
and the statement in the documentation that "Reduce assumes by default that quantities appearing algebraically in inequalities are real, while all other quantities are complex." The assumption can be overridden.Reduce[x^2 < 0, x, Complexes]
$\endgroup$