isAlways function is unable to prove a simple statement
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
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 comentarios
Respuestas (0)
Ver también
Categorías
Más información sobre Assumptions en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!