What is a CAS language?

Is it by any chance just this (otherwise Google was no help)? I've seen throwaway remarks on this site by SK_Logic and Jorg-W-Mittag that use this term but I'm not entirely convinced and cannot find it used anywhere else.

• Related question: cs.stackexchange.com/questions/134846/… Sep 3, 2023 at 5:53
• Yes, I indeed meant languages of the Computer Algebra Systems, such as MACSYMA, Mathematica, Axiom, etc. Keep in mind that not all CASes have language frontends (e.g., SymPy is just built on top of Python, no CAS-specific language semantics involved), hence the distinction between CAS and CAS languages. Sep 4, 2023 at 8:57

Yes, CAS is a typical abbreviation for “computer algebra system”, languages like Maple and Mathematica. This is the usage in the references from those users I can find:

• From SK-Logic, on a question about representing reals as rationals:

Every single CAS language does this, for very obvious reasons.

• It gets more interesting when you get into geometry, though. You can't avoid roots and trigonometry here, so you will quickly run into irrational and transcendental numbers. Same for finance, where you will encounter logarithms at some point.

Here, you have two choices: turn your language into a CAS (with all the complexity that carries) or punt to some sort of inexact type.

Both of these are clearly referring to computer algebra systems, where numbers are represented by mathematical expressions producing them.

• I've never seen one, but there's no reason why you couldn't have CLP(Tarski): constraint logic programming with the first-order theory of reals. I haven't checked, but I'm sure there are SMT solvers that support it, too. Sep 3, 2023 at 5:53
• But it's not actually called a "CAS language" except by SK-Logic in that one quote from this Stack Exchange site (PLDI) right? Sep 3, 2023 at 18:00
• @NikeDattani Anyone would call a "language that is used inside a CAS" a "CAS language." Sep 3, 2023 at 20:46
• I meant languages that are built specifically for CAS as CAS languages. You don't need to have a special language - see SymPy for an example of the opposite, but historically most CAS had a language front-end with some very specific semantics - MACSYMA (and Maxima after it), Mathematica, Axiom, MAPLE, and, yes, SMT-LIB I'd also put under this category. Sep 4, 2023 at 9:01
• @SK-logic In that vein I'd call sympy a CAS library. Sep 5, 2023 at 20:06