new REDUCE computer algebra system from sagemath?

86 views
Skip to first unread message

Nasser M. Abbasi

unread,
Feb 16, 2023, 9:16:54 AM2/16/23
to sage-devel
Hello;

Are there any plans to add support to calling/using REDUCE from inside Sagemath as one can now do with other CAS systems such as maxima/giac/fricas etc..


--Nasser

Nils Bruin

unread,
Feb 16, 2023, 2:09:36 PM2/16/23
to sage-devel
I'm pretty sure there are no such plans, but it would be entirely possible to write such an interface. This can be done with no overhead as an external package first (just a python module that is dependent on the sagemath library). Once it exists, its popularity may indicate if it's worth incorporating as a more standard package, but even as an external package it could be entirely viable.

The big question to answer for someone to put the effort in is "why"? REDUCE definitely has a venerable place in the history of computer algebra and the packages that came after it definitely implemented lessons learned from it. What genuinely new or improved capabilities would be accessible to SageMath by interfacing with REDUCE now? Using REDUCE through SageMath just to use REDUCE is just going to be annoying: much better to use REDUCE directly in that case. It's only beneficial for applications that require frequent back-and-forth translation of objects between REDUCE and SageMath (or at least some other component SageMath already interfaces with).

SageMath can already interface with some lisp-based systems (maxima and fricas (an axiom fork) ) -- normally these run on a Common Lisp implementation ECL; with the interface to maxima having some features to allow it to interface on the binary level.

If REDUCE can run on Common Lisp it may be worth checking if it can run on ECL. However, as a first step you'd probably look at an "expect" based interface anyway, where REDUCE runs in a separate process and SageMath simply communicates through stdin/stdout. However, writing the interface will be a considerable and rather tedious job, so you'd want to have a good reason to do it.
Reply all
Reply to author
Forward
0 new messages