Strange behavior of “isAlways” with respect to the number of symbolic variables
Dear all,
I am trying some tests with "isAlways" in order to check that a rater long algebraic expression is always positive, assuming that all its variables are positive.
One of the tests is the following
syms a b c d e f g real
assume(a >=0 & b>=0 & c>=0 & d>=0 & e>=0 & f>=0 & g>=0)
assumeAlso(a + b + c + d + e + f + g <=1)
isAlways(a+b<=1)
ans =
logical
1
which correctly says that if a,b,c,d,e,f,g are real and positive numbers with their sum less or equal to 1, then also the sum of the first two is less or equal to 1.
But when I try the same test with one additional variable, then
syms a b c d e f g m real
assume(a >=0 & b>=0 & c>=0 & d>=0 & e>=0 & f>=0 & g>=0 & m>=0)
assumeAlso(a + b + c + d + e + f + g +m <=1)
isAlways(a+b<=1)
Warning: Unable to prove ‘a + b <= 1’.
> In mupadengine/evalin2logical
In mupadengine/feval2logical
In sym/isAlways (line 39)
ans =
logical
0
How is this possible?Dear all,
I am trying some tests with "isAlways" in order to check that a rater long algebraic expression is always positive, assuming that all its variables are positive.
One of the tests is the following
syms a b c d e f g real
assume(a >=0 & b>=0 & c>=0 & d>=0 & e>=0 & f>=0 & g>=0)
assumeAlso(a + b + c + d + e + f + g <=1)
isAlways(a+b<=1)
ans =
logical
1
which correctly says that if a,b,c,d,e,f,g are real and positive numbers with their sum less or equal to 1, then also the sum of the first two is less or equal to 1.
But when I try the same test with one additional variable, then
syms a b c d e f g m real
assume(a >=0 & b>=0 & c>=0 & d>=0 & e>=0 & f>=0 & g>=0 & m>=0)
assumeAlso(a + b + c + d + e + f + g +m <=1)
isAlways(a+b<=1)
Warning: Unable to prove ‘a + b <= 1’.
> In mupadengine/evalin2logical
In mupadengine/feval2logical
In sym/isAlways (line 39)
ans =
logical
0
How is this possible? Dear all,
I am trying some tests with "isAlways" in order to check that a rater long algebraic expression is always positive, assuming that all its variables are positive.
One of the tests is the following
syms a b c d e f g real
assume(a >=0 & b>=0 & c>=0 & d>=0 & e>=0 & f>=0 & g>=0)
assumeAlso(a + b + c + d + e + f + g <=1)
isAlways(a+b<=1)
ans =
logical
1
which correctly says that if a,b,c,d,e,f,g are real and positive numbers with their sum less or equal to 1, then also the sum of the first two is less or equal to 1.
But when I try the same test with one additional variable, then
syms a b c d e f g m real
assume(a >=0 & b>=0 & c>=0 & d>=0 & e>=0 & f>=0 & g>=0 & m>=0)
assumeAlso(a + b + c + d + e + f + g +m <=1)
isAlways(a+b<=1)
Warning: Unable to prove ‘a + b <= 1’.
> In mupadengine/evalin2logical
In mupadengine/feval2logical
In sym/isAlways (line 39)
ans =
logical
0
How is this possible? isalways, positivity, assume, assumealso MATLAB Answers — New Questions









