# Solve over Domains

GROUPS:
 To my knowledge, $\mathbb{R} \subset \mathbb{C}$ and not vice-versa.Then I don't understand why I get more real-valued solutions with Reals, than with Complexes: \$Assumptions = a > 0 && a \[Element] Reals && b \[Element] Reals && t \[Element] Reals && t >= 0 && c1 \[Element] Reals && c2 \[Element] Reals && c \[Element] Reals && B \[Element] Reals && c2 > 0 && c1 < 0 Solve[Log[Abs[(B - c2)/(B - c1)]] == (a t - c) (c2 - c1), B, Reals] // Simplify Solve[Log[Abs[(B - c2)/(B - c1)]] == (a t - c) (c2 - c1), B, Complexes] // Simplify 
1 year ago
6 Replies
 Gianluca Gorni 1 Vote In the complex domain Solve has problems with Abs: Solve[Abs[z] == 1, z, Complexes] 
1 year ago
 Should I view this as a bug or as a property?
1 year ago
 I think it is an intrinsic limitation of Solve, which is meant mainly for polynomial or analytic functions, and Abs is not analytic. The solution set of Abs[z]==1 in the complex plane cannot be expressed as simple substitution rules. The set of solutions to Abs[z]==1 is handled correctly by Reduce in an implicit way, though.
1 year ago
 But, it should give me at least the same solutions as the ones obtained when solving over Reals, no?
1 year ago
 I agree, it would be better that way. Infinitely many complex solutions would be missed anyway.
1 year ago
 In cases like these, Mathematica ought to issue a warning that the solution set is not complete.