y=1/x, x=0 satisfiable in the reals?
In SMT-LIB: (declare-fun y () Real) (declare-fun x () Real) (assert (= 0.0 x)) (assert (= y (/ 1.0 x))) (check-sat) Should this model be SAT or UNSAT? In SMT-LIB 2.0 and 2.5, all functions are total, so this example is SAT in SMT-LIB. Both Z3 and CVC4 do indeed return SAT for the example in the question. I found this counter-intuitive. I think it would be mathematically more well justified to say that y=1/x, x=0 is unsatisfiable in the reals. In Mathematica, the equivalent code returns an empty list, indicating that no solution exists, i.e., FindInstance[Element[x, Reals] && Element[y, Reals]