2015-03-17 8 views

ответ

5

Вы могли бы попытаться решить неравенство для x:

>>> from sympy.solvers.inequalities import solve_univariate_inequality 
>>> solve_univariate_inequality(expr >= 0, x) 
And(-oo < x, x < oo) 

Так вот SymPy говорит вам, что неравенство справедливо для любого действительного числа.

4

Вы также можете использовать систему допущений, чтобы узнать об атрибутах выражения. Был недавний вопрос об этом here, в котором Наир дает хорошие ссылки. Но для вашего случая просто попробуйте

>>> from sympy import * 
>>> var('x', real=True) 
x 
>>> (sin(x)+1).is_positive 
>>> (sin(x)+1).is_nonnegative 

Результат будет либо True, False, либо (в данном случае) Нет. None означает, что результат неизвестен или что определение не было выполнено. В этом случае результат для неотрицательных должен быть True. Улучшение системы допущений - это активная работа с SymPy.

Смежные вопросы