在Sympy中定义符号的范围

时间:2015-10-08 23:02:50

标签: sympy simplify sqrt

在Sympy中,可以定义符号可以采用的值的约束

x = symbols('x', real=True)

是否可以说符号应仅在某个范围内取值,例如-1 < x < 1?我之所以对此感兴趣,是因为我试图通过自动简化下面的表达式来简化表达式

expr = sqrt(1+x) * sqrt((1-x)*(1+x)) / sqrt(1-x)

运行simplify(expr)不会产生简化,而-1<x<1时,简化结果应为1+x。如何简化上述表达式的表达?

1 个答案:

答案 0 :(得分:0)

使用有针对性的扩张力可能会有所帮助:

>>> expand(expr, power=True, force=True, mul=False)
x + 1

expand文档字符串将说明每个选项。