news2mail.com

HomeSci › Math

sci.math.symbolic

Symbolic mathematics and computer algebra.

The research-adjacent room for computer algebra: Maple, Mathematica, REDUCE and Macsyma compared by the people implementing and teaching them, with algorithm references in the threads.

It complements the per-package groups (see comp.soft-sys.math.maple in this directory); tool-collection pages still link both.

The group and its era

Computer algebra was an established research field before Usenet carried it. The first systems appeared in the 1960s out of two quite different pressures — theoretical physicists facing enormous expressions, and artificial-intelligence research into symbolic manipulation — producing Schoonschip, written by Martinus Veltman in 1963, then MATHLAB, REDUCE and Macsyma, whose descendants were still argued over here three decades later.

What distinguished sci.math.symbolic from the rooms attached to particular products was that no vendor owned it. Maple, Mathematica, REDUCE, Macsyma, Derive, MuPAD and Axiom were all in scope, and the useful posts were the ones that crossed between them. Their foundations genuinely differed: Axiom, descended from IBM Research’s Scratchpad II, rested on a strongly typed hierarchy in which rings and fields are themselves objects; MuPAD came out of the University of Paderborn, passed to SciFace Software in 1997, and ended up inside MATLAB’s Symbolic Math Toolbox after MathWorks bought SciFace in September 2008.

The readership matched the remit: people who taught with these systems, who published results computed with them, and in some cases who had worked on them. A claim about what a system did could be answered by someone who knew why.

What was discussed

The field’s own algorithms were the technical backbone. Symbolic integration has a decision procedure — the Risch algorithm, developed by Robert Risch in 1968 — which decides whether an elementary function has an elementary antiderivative and, if so, produces it; applied to general elementary functions it is strictly a semi-algorithm, since it must determine whether certain expressions are zero, and no complete implementation exists even now. Gröbner bases, introduced by Bruno Buchberger in his 1965 thesis and named for his supervisor, gave polynomial systems and ideal membership an algorithmic treatment, at the cost of intermediate polynomials that can exhaust a machine before a small final answer appears. Factorisation over various domains was a third staple.

Behind all of it sat the question the field could not dispose of: what simplify should mean. Richardson’s theorem, proved by Daniel Richardson in 1968, shows equality to be undecidable for a modest class of expressions built from integers, π, ln 2, exponentials and sines; no simplifier can therefore be complete over that class, and every system’s simplification command is a body of heuristics with a boundary somewhere. Joel Moses had set the design problem out in 1971, under the title Algebraic Simplification: A Guide for the Perplexed.

This is why a bug list points a reader here. A system that returns a wrong closed form fails differently from one that loses precision: the output looks exact, carries no error bar, and may be right on a branch the user is not standing on. Much of what arrives as a bug report is not one — branch cuts, unstated assumptions about a parameter’s sign or domain, correct answers in an unrecognised form. Telling those from real defects wants a second opinion, and the standard method was comparison: the same input put to several systems. Michael Wester’s survey of 1999 systematised the comparison, running the same short problems across Axiom, Derive, Macsyma, Maple, Mathematica, MuPAD and REDUCE; the resulting test suite was reused as a benchmark.

Individual test cases outlived the discussion that produced them. An algebraic integrand offered to this group by Henri Cohen in 1993 — x/sqrt(x^4+10*x^2-96*x-71), which has an elementary antiderivative where the same expression with 71 changed to 72 does not — is still cited in reference accounts of the Risch algorithm.

Context

The sci.* mathematics groups divided their traffic by kind rather than by subject. sci.math took everything at every level; sci.math.research was moderated, so that research-level discussion could proceed clear of the open group’s noise; sci.math.num-analysis held the numerical side. sci.math.symbolic sat between them, narrower than the parent and less formal than the moderated group.

Alongside these ran the vendor-adjacent groups under comp.soft-sys.math, among them comp.soft-sys.math.maple, documented at length elsewhere on this site, with a moderated Mathematica group beside it. The division was of subject matter, not standing: product questions there, algorithms and cross-system comparison here. The boundary leaked both ways.

The dispersal followed the pattern of technical Usenet generally. Vendor forums and mailing lists took the product questions; Stack Exchange later took much of the rest. The open-source lineages grew channels of their own — Maxima, descended from Macsyma; SageMath, released in February 2005 by William Stein at the University of Washington, wrapping existing packages behind a Python interface; SymPy, begun in 2005 by Ondřej Čertík — where a disputed result becomes a filed issue with a reproducible input, close to what this group did without the infrastructure.

What the archive preserves is the comparative record: one input, several systems, in public.

Reading sci.math.symbolic today