On Saturday, October 30, 2021 at 9:03:43 AM UTC-4, acer wrote:
On Saturday, October 30, 2021 at 3:03:32 AM UTC-4, Nasser M. Abbasi wrote:
since sqrt of number is taken as the positive root, why
then Maple 2021.1 says it can't show this is true or not? Is
there something deep I am overlooking here?
if evalb( 5^(1/2) < (5^(1/2)+1) ) then
"yes, smaller";
fi;
Error, cannot determine if this expression is true or false: 5^(1/2) < 5^(1/2)+1
if 5^(1/2) < (5^(1/2)+1) then
"yes, smaller";
fi;
Error, cannot determine if this expression is true or false: 5^(1/2) < 5^(1/2)+1
But in Mathematica it did not complain
5^(1/2) < (5^(1/2) + 1)
True
This is very strange. Does your CAS have any problem showing
that 5^(1/2) is smaller than 5^(1/2)+1?
In Maple, it can do it if I convert everything to float
if evalf(5^(1/2)) < evalf((5^(1/2)+1)) then
"yes, smaller";
fi;
"yes, smaller"
--Nasser
You are simply using the wrong command, `evalb`, instead of an appropriate command such as `is`.
evalb( 5^(1/2) < (5^(1/2)+1) );
1/2 1/2
5 < 5 + 1
is( 5^(1/2) < (5^(1/2)+1) );
true
Your incorrect preconceptions as to the designed functionality of the `evalb` command are getting in your way here.
I could add that the functionality changes according to the `type` of the input, for a clear programmatic distinction.
The `evalb` command tests an inequality if the arguments are of type `numeric`, in Maple's technical sense of the `type` command. And that type does not include exact radicals (though it does include, say, rationals and floats).
For strict equality testing the functionality is also according to that same `numeric` type. But in this case the remaining cases are subjested to a pure address check (which is a structural rather than a mathematical comparison).
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)