I run some tests using different CAS systems that do not support
setting a timelimit on its calls.
For example Reduce and Fricas and Maxima and GIAC and others.
For me, timelimit() is the most important function, as without
it, it is very easy to make any CAS hang. Yet, strangely
open source CAS systems do not have such a basic function as
a built-in.
They do not have a direct way to insure a call to some command
such as integrate should not take more than say 30 seconds and
to return an error if the call exceeds this timelimit.
[...]
"Nasser M. Abbasi" schrieb:
I run some tests using different CAS systems that do not support
setting a timelimit on its calls.
For example Reduce and Fricas and Maxima and GIAC and others.
For me, timelimit() is the most important function, as without
it, it is very easy to make any CAS hang. Yet, strangely
open source CAS systems do not have such a basic function as
a built-in.
They do not have a direct way to insure a call to some command
such as integrate should not take more than say 30 seconds and
to return an error if the call exceeds this timelimit.
Presumably nobody felt the need for this back when these systems were conceived because they were meant for console operation and a
computation could always be interrupted with Control-C or similar.
[...]
Martin.
On 1/26/2024 2:45 AM, clicliclic@freenet.de wrote:
"Nasser M. Abbasi" schrieb:
I run some tests using different CAS systems that do not support
setting a timelimit on its calls.
For example Reduce and Fricas and Maxima and GIAC and others.
For me, timelimit() is the most important function, as without
it, it is very easy to make any CAS hang. Yet, strangely
open source CAS systems do not have such a basic function as
a built-in.
They do not have a direct way to insure a call to some command
such as integrate should not take more than say 30 seconds and
to return an error if the call exceeds this timelimit.
Presumably nobody felt the need for this back when these systems were
conceived because they were meant for console operation and a
computation could always be interrupted with Control-C or similar.
Ok, but isn't the birth of Mathematica and Maple is around same
time frame as these other open source CAS systems? Mathematica
was born in 1988, and Maple in 1982. Sure, Reduce and Maxima
and Fricas are few years older, but not by much. May be 10 years?
Sympy is also a much younger CAS than all of them and it
has no timelimit() command. Also mupad has no timelimit()
built-in and I had to do many ticks in Matlab to implement it.
In Mathematica, TimeConstrained has date of 1988 on it.
<https://reference.wolfram.com/language/ref/TimeConstrained.html>
Also, open source CAS systems had all the time to add
such a built-in function since the 1970's or 1980's?
Btw, Maple timelimit() also has some problems I complained
about before. It does not always work (i.e. terminate
the call at the time requested). I could ask for 30 seconds
time limit, and it could terminate after 5 minutes or 10.
So even Maplesoft still needs to work/improve its
timelimit() function.
I found Mathematica's TimeConstrained function very robust
and always works and stops the call at the time limit requested.
--Nasser
[...]
Martin.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 546 |
Nodes: | 16 (0 / 16) |
Uptime: | 161:19:59 |
Calls: | 10,385 |
Calls today: | 2 |
Files: | 14,057 |
Messages: | 6,416,498 |