isAlways function is unable to prove a simple statement
조회 수: 3 (최근 30일)
이전 댓글 표시
I am using Symbolic Math Toolbox to simply see if below statement is positive or not:
(x - b - 2*c*d) * (y - b)
I am assuming that both (x - b - 2*c*d) and (y - b) are positive.
syms x y b c d
assume(x - b - 2*c*d > 0 & y - b > 0 );
After making these assumptions, I checked if 'isAlways' function considers the assumptions. I got below results:
>> isAlways((x - b - 2*c*d) > 0)
ans =
logical
1
>> isAlways((y - b) > 0)
ans =
logical
1
Getting above results, naturally, I expect to see (x - b - 2*c*d) * (y - b) is also positive. However, I get 'unable to prove' error. How can this be possible ? What can cause this ? Here is the result I get:
>> isAlways((x - b - 2*c*d)*(y - b) > 0)
Warning: Unable to prove '0 < (b - y)*(b - x + 2*c*d)'.
> In symengine
In sym/isAlways (line 42)
ans =
logical
0
댓글 수: 0
답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Assumptions에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!