level 4
全局变量$Assumptions只对具备Assumptions选项的函数有效,而Solve是少数虽然能接受代数假设却没有Assumptions选项的函数。(顺便Solve对假设的支持其实引入得很晚,好像是版本8吧。)所以,只能事后化简下了:
Simplify[Solve[{-2 M + r^2 + r == 0}, {r}, Reals], M > 0]
或者“暴力”消去:
Solve[{-2 M + r^2 + r == 0}, {r}, Reals]
% /. ConditionalExpression[a_, _] :> a
2019年11月02日 13点11分

