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.
On this page
- A name that takes a side
- The rest of the paperwork
- What symbolic computation is, and is not
- Integration, and the algorithm that decides it
- Polynomials: Gröbner bases and factorisation
- Quantifier elimination, summation, and the price of an exact answer
- The general-purpose systems, as a lineage
- The specialist packages
- A field with its own institutions
- The free-software succession
- What the group carried
- Where it went
- What the record does not show
- Scope and limits
A name that takes a side
The first thing on this group’s record is its name, and the name is not neutral. Computer algebra has always sat in two places in the Usenet namespace at once. Under comp.* ran the rooms attached to particular software systems, comp.soft-sys.math among them. Under sci.math ran the rooms for the mathematics. A group called sci.math.symbolic is a small permanent assertion that manipulating expressions exactly is a branch of mathematics that happens to be done on a computer, rather than a branch of computing that happens to be about mathematics — an argument the discipline has never entirely settled, and one its own literature still hedges by offering two names, computer algebra and symbolic computation, for the same subject.
The paperwork that would have recorded the decision has not survived. The Internet Systems Consortium mirrors the administrative record of the Big-8 hierarchies, and for most groups of the 1990s it holds the Request for Discussion, the Call for Votes, the result and the tally. For sci.math.symbolic it holds nothing at all: there is no file for the group in the sci directory of the news.announce.newgroups archive, and the archive’s own weekly lists of new groups begin only in February 1991. The group is older than the record that would have documented its birth. No creation date, no proponent, no vote tally can be given here, because none of them is on the surviving record.
What does survive is the control traffic — the machine-readable messages by which a group is announced to, and created on, every news server in the world. Six of them mention this group. The earliest is dated 23 May 1991 and was issued from Compass, Inc., of Wakefield, Massachusetts; its entire body is the sentence Symbolic algebra discussion. By then the group plainly already existed, and the message reads as one site propagating a name rather than minting one.
The canonical message came four years later. On 10 May 1995 David C. Lawrence, posting as [email protected] — the address that approved news.announce.newgroups postings in this period — sent out the newgroup message that a Big-8 administrator was entitled to send, and it is short enough to quote entire:
sci.math.symbolic is an unmoderated newsgroup. For your newsgroups file: sci.math.symbolic Symbolic algebra discussion.
That tab-separated line is the group’s official self-description, and it is the only text with any claim to being its charter. It is also remarkably durable. It appears verbatim in the PGP-signed List of Big Eight Newsgroups issued from ISC on 16 October 2002; it appears verbatim in the newsgroups file that ISC publishes today; and the accompanying active file still carries the group with the flag y, meaning posting permitted, unmoderated. Three decades after the message above was sent, a news administrator installing a fresh server from the standard files still gets sci.math.symbolic, still described in four words.
The placement argument — mathematics side or computing side — was made in public at least twice, and both documents survive. The first is an RFD of 25 October 1993, posted through news.announce.newgroups by Denis Perret-Gallix of CERN, proposing a group called sci.physics.symbolic for symbolic manipulation techniques in physics; the proposal describes itself as initiated by people dealing with the automatic computation of Feynman diagrams. It was cross-posted to sci.math.symbolic, and it defined the neighbour it was proposing to sit beside: We propose to name the newsgroup sci.physics.symbolic in close relationship with the already existing group sci.math.symbolic, the proposal said, adding that Sci.math.symbolic is targeted to solving purely mathematical aspect of symbolic manipulation techniques. The proposal even printed the objection it expected, offering readers the ready-made reply These topics should be discussed on sci.math.symbolic because ... — taxonomy as a standing agenda item. No Call for Votes or result for sci.physics.symbolic survives in the archive, and no such group appears in the current Big-8 list; the proposal seems to have gone no further than discussion.
The second document argues from the opposite bank. The Request for Discussion for comp.soft-sys.math.maple, issued from the University of Waterloo on 29 July 1999 and likewise cross-posted here, made the case that a group about one product belonged under comp.soft-sys, which dealt with particular software systems, rather than anywhere in sci.*, whose mathematics groups dealt with algorithms and theory. In making it, that document supplied the fullest description of this group anybody committed to paper: sci.math.symbolic, it said, was originally intended for discussion of issues that primarily deal with the mathematical algorithms for symbolic computing along with other mathematical and computational issues related to computer algebra systems. That is a proposer’s characterisation rather than an official charter, but it is the only extended one on the record. The proposal’s reasoning, its vote and its aftermath are set out on our page for comp.soft-sys.math.maple and are not repeated here. The point for this page is that the two proposals, six years and one continent apart, agreed about where the line fell. Products to the computing side; algorithms, theory and the comparison of implementations to this one.
One further scrap can be read off the 1993 RFD without inventing anything. Its Xref header records the article as number 9722 in the sci.math.symbolic spool at UUNET. Spool numbering is per-site and says nothing about how many articles the group had carried in total, still less how many readers it had; but it does establish that by late 1993 one large site had already filed several thousand articles under this name. The Maple proposals cross-posted here between July 1999 and February 2000 leave the same kind of trace from a different server: across those messages the group’s article number on the Internet Systems Consortium’s own spool runs from 30,459 to 32,050, so that one site filed roughly sixteen hundred articles under this name in about six months at the end of the decade. Those are the only quantitative statements about the group’s traffic that the surviving record supports, and they are offered with all those caveats attached.
The rest of the paperwork
The remaining control messages decided nothing about the group, but they are a fair sample of how a decentralised network actually behaved, and each is worth a sentence or two.
On 26 April 1992 an administrator at the University of Maine’s computer science department issued a newgroup for sci.math.symbolic with the header Distribution: umcs and an empty body. That is a local creation: a message deliberately confined to one institution’s machines, creating the group on a server that had not been carrying it. It is the routine housekeeping of a decentralised network, in which every site decided for itself what it stocked.
On 9 November 1994 a message from the news account at the University of Texas Medical Branch created the group again, with a body consisting of the single character s. On 25 November 1997 an Internet provider in Spain emitted a newgroup message whose subject line read cmsg newgroup sci.math.symbolic y — the trailing y being the active-file moderation flag, which had escaped from the field it belonged in and attached itself to the control line — with a body that explained itself: Control message generated by Netscape Collabra Server. Commercial news server software that emitted spurious control messages was a recognised nuisance of the late 1990s, and this is a specimen of it.
The last message in the file is the only hostile one. Dated 4 November 2001, it is an rmgroup — a request to delete the group — carrying the text please remove the bogus newsgroup sci.math.symbolic. It was cross-posted to sci.math.symbolic and to three sci.* names that appear in no Big-8 newsgroup list, its From line is not that of the hierarchy’s group administrator, and it is signed with a line of machine-generated nonsense. Big-8 servers were configured to honour newgroup and rmgroup messages from one authenticated source, and this was not that source. The group is still in the Big-8 list.
Which is the substantive point a control archive makes. A newgroup message was never an instruction; it was a request that each administrator’s configuration chose to honour or ignore, and the whole practical meaning of a Big-8 name was that administrators had agreed in advance whose requests to trust. A forged deletion notice for a group with a genuine readership got precisely nowhere, and the four-word description issued in 1995 outlived it by a quarter of a century.
What symbolic computation is, and is not
The distinction the group existed to serve is easy to state and surprisingly hard to hold on to. Numerical computation approximates: it represents a quantity as a floating-point number of fixed width and accepts a controlled error in exchange for speed and bounded storage. Symbolic computation manipulates expressions containing variables that have no value, and it computes exactly — the integers are the mathematicians’ integers, unbounded, and the rationals are irreducible fractions of them. Two systems that both print 0.3333333 may be doing entirely different things; a system that prints one third is doing the symbolic one.
Exactness is the founding decision and every subsequent difficulty descends from it. Because nothing is rounded away, intermediate results can grow without any relation to the size of the answer: a computation whose input and output both fit on one line can pass through expressions of many megabytes on the way. The field has a name for this — expression swell — and a large part of its algorithmic effort has gone into representations and methods that keep it in check. The arithmetic underneath is hard enough to implement well that most free systems, and some commercial ones, Mathematica and Maple among them, delegate it to a shared library; the GNU Multiple Precision Arithmetic Library became the de facto standard for the job.
Above the arithmetic sits the representation of expressions themselves. Except for numbers and variables, every mathematical expression can be seen as an operator applied to a sequence of operands, and that is how the systems store them: as trees, with the operator at each node and its arguments below it. The Lisp systems of the 1960s got this for nothing, which is a large part of why the first serious computer algebra systems were written in Lisp and why several of them still are.

The consequence that filled newsgroup threads is that equality becomes two questions rather than one. Syntactic equality — do these two trees have the same shape? — is trivial to test. Semantic equality — do these two expressions denote the same mathematical object? — is the question users actually ask, and it is not always answerable. The standard workaround is to define a canonical form, in which two expressions are semantically equal precisely when they are syntactically equal, or the weaker normal form, in which only zero is guaranteed a unique representation. Davenport, Siret and Tournier set the distinction out carefully in their 1988 textbook, and it matters in practice: canonical forms can be ruinously expensive, since putting a polynomial in one means expanding every product, and for expressions involving radicals a canonical form may depend on arbitrary choices that two independent computations make differently.
Simplification is where all of this becomes visible to a user, and it is not a well-defined operation. Applying the differentiation rules literally to a raised to the power x yields an expression with a term multiplied by zero and a division by a still sitting in it; nobody wants that, so systems rewrite. Some rewriting rules always shrink an expression and are applied automatically. Others — the distributive law, the trigonometric identities — sometimes shrink and sometimes grow, so they are left to the user to invoke, which is why every system has an expand and a factor and why the two are not symmetrical: expanding is bookkeeping, and factoring needs a real algorithm.
Underneath sits a result the field cannot legislate away. Richardson’s theorem, proved in 1968 by Daniel Richardson of the University of Bath and published in the Journal of Symbolic Logic, shows that for a modest class of expressions — built from rational numbers, π, the logarithm of two, a variable, addition, subtraction, multiplication, composition, and the sine, exponential and absolute-value functions — it is undecidable whether an expression denotes the function that is identically zero. Later work sharpened it. After Hilbert’s tenth problem was settled in 1970, B. F. Caviness observed that the exponential and the logarithm of two could be dropped from the statement; P. S. Wang added a result on the existence of zeros in 1974; and Miklós Laczkovich removed the need for π in 2003. The Tarski–Seidenberg theorem shows that the sine cannot be removed as well, because without it the theory of the real field is decidable.
So no simplifier can be complete, every simplify command is a body of heuristics with a boundary somewhere, and the boundary is a legitimate subject of argument rather than a bug. Joel Moses had put the design problem on the record at the second ACM symposium on symbolic and algebraic manipulation in March 1971, under a title the field has never stopped quoting: Algebraic simplification: a guide for the perplexed. A companion paper appeared in Communications of the ACM in August of the same year. Thirty years later, in a newsgroup, the perplexity was still being distributed one thread at a time.
Integration, and the algorithm that decides it
If one result made computer algebra a research field rather than a collection of tricks, it is the decision procedure for integration in finite terms. Liouville had formulated the problem in the nineteenth century, proving that when an elementary antiderivative exists it must take a particular shape: a function from the field generated by the integrand, plus a finite sum of constant multiples of logarithms. That is a theorem about the form of the answer, not a method for finding it.
The method is the Risch algorithm, developed in 1968 by the American mathematician Robert Henry Risch. It turns integration into a problem in differential algebra and decides — genuinely decides, for the transcendental cases — whether a given elementary function has an elementary antiderivative, producing it when one exists. Joel Moses implemented the purely transcendental case in Macsyma soon after Risch’s paper appeared, which is why systems have been able to answer this integral has no elementary antiderivative with authority, rather than with a shrug, for over fifty years.
The qualifications matter as much as the result, and they are the reason a room like this one had work to do. The complete description of the algorithm runs to more than a hundred pages in the standard textbook treatment, Geddes, Czapor and Labahn’s Algorithms for Computer Algebra of 1992. Applied to general elementary functions it is strictly a semi-algorithm, because at certain points it must decide whether a constant expression is zero — the constant problem, which is exactly what Richardson’s theorem makes undecidable. No complete implementation exists. Arthur Norman produced a simpler, faster and deliberately less powerful variant in 1976, the Risch–Norman algorithm, and that heuristic is what a good many systems actually run; SymPy, three decades later, still describes its integrator in those terms.
The algebraic case — integrands involving roots of polynomials — came later and harder. James H. Davenport implemented a partial version in REDUCE that handled square roots and repeated square roots but not general radicals, and Barry Trager’s 1984 doctoral thesis at MIT treated the integration of algebraic functions properly. Davenport and Trager both turn up again below, in the design and implementation of Scratchpad II, which is the kind of overlap a small field produces.
The consequence for a user is a system that sometimes returns the integral unevaluated, and no way of telling from the output whether the antiderivative does not exist, exists but lies outside the implemented cases, or exists and was missed. That ambiguity is not a defect in any one product; it is a property of the state of the art, and explaining it repeatedly to people who had just met it was one of the recurring services this group performed.
The field’s standing illustration of how finely the question turns was posted here. On 21 December 1993 the number theorist Henri Cohen offered readers of sci.math.symbolic an algebraic integrand as a seasonal challenge: x/sqrt(x^4+10*x^2-96*x-71). It has an elementary antiderivative, a large one involving a logarithm of a degree-eight polynomial. Change the constant 71 to 72 and it has none. Integrals of that family had been studied by Chebyshev, with the rigorous treatment due to Zolotarev in 1872. The example outlived its thread completely: Wikipedia’s article on the Risch algorithm still cites Cohen’s posting to this group, and a follow-up posted seven years later to the Maple newsgroup, which is described on that group’s own page. Even the settled parts of the subject move: in 2020 Masser and Zannier published a counterexample to a long-assumed result about elementary integration, and an antiderivative turned out to exist after all.
Polynomials: Gröbner bases and factorisation
The other pillar of the field is polynomial algebra, and its central object is the Gröbner basis. Bruno Buchberger introduced it in his 1965 doctoral thesis, together with an algorithm for computing it, and named it after his supervisor Wolfgang Gröbner. A Gröbner basis is a particular generating set for an ideal in a polynomial ring, and it is the practical tool for solving systems of polynomial equations, deciding whether one polynomial lies in the ideal generated by others, computing the dimension of a variety and eliminating variables. Buchberger’s algorithm generalises two things every reader already knows: run it on polynomials in one variable and it is Euclid’s algorithm for greatest common divisors; run it on polynomials of degree one and it is Gaussian elimination. Daniel Lazard set that reading out in 1983.
The idea has a prehistory the field only recovered late. The Russian mathematician Nikolai Günther published a similar notion in 1913 in Russian journals, and it was largely ignored until Bodo Renschuch and colleagues rediscovered it in 1987; Heisuke Hironaka arrived independently at an analogous concept for power series in 1964 and called them standard bases, a term some authors still use for Gröbner bases. Buchberger received the Association for Computing Machinery’s Paris Kanellakis Theory and Practice Award for the work in 2007.
What made Gröbner bases a permanent topic of practical argument is that the answer depends on a choice the user must make and the cost depends on it enormously. Every computation requires a total order on monomials, and three orderings dominate: plain lexicographic, total-degree reverse lexicographic, and elimination orderings. The theory was built for the lexicographic order; it was quickly discovered that the reverse lexicographic order is almost always far cheaper to compute in, and that the sensible route to a lexicographic basis is to compute a reverse lexicographic one first and then change the ordering. Worse, the worst case is not a matter of tuning: general Gröbner basis computation is doubly exponential, and the intermediate polynomials can exhaust a machine long before a short final answer appears. A question of the form why has this been running for two days is therefore not always a bug report, and telling the two apart was routine work here.
Factorisation of polynomials is the third staple, and the one with the longest history. Theodor von Schubert published a factorisation algorithm in 1793; Leopold Kronecker rediscovered it in 1882 and extended it to several variables and to algebraic extensions. Erich Kaltofen’s survey of 1982 is blunt about how that inheritance fared once machines were involved: When the long-known finite step algorithms were first put on computers, they turned out to be highly inefficient. Almost everything useful is post-1965. Elwyn Berlekamp’s algorithm of 1967 factors polynomials over finite fields by matrix reduction and greatest-common-divisor computations, and dominated until the Cantor–Zassenhaus algorithm of 1981. The modern route to factoring over the rationals reduces, by way of square-free factorisation and a well-chosen prime, to factorisation over a finite field.
The landmark result belongs to lattice reduction. In 1982 Arjen Lenstra, Hendrik Lenstra and László Lovász published an algorithm for reducing a lattice basis, and the paper that introduced it is titled, with no ambiguity about the motive, Factoring polynomials with rational coefficients. The LLL algorithm gave polynomial-time factorisation over the rationals, and then proceeded to colonise number theory and cryptanalysis; one of its early public successes was the disproof of the Mertens conjecture by Odlyzko and te Riele. This is the pattern that made the field respectable to mathematicians: an algorithm designed to make a computer algebra system work turned into a tool for proving things.
Factorisation is not an optional extra, either. Simplifying expressions that contain fractions requires greatest common divisors of polynomials, systematically and constantly, which is why the library of a general-purpose system must serve its own simplifier before it serves any user.
Quantifier elimination, summation, and the price of an exact answer
A third family of decision procedures completes the picture. Cylindrical algebraic decomposition, introduced by George E. Collins in 1975 along with an algorithm for computing it, breaks real n-space into cells on each of which every polynomial in a given set has constant sign, arranged so that projections of cells are themselves cells. Its point is that it gives an effective quantifier elimination over the real numbers — a way of answering, mechanically, questions of the form for which values of the parameters does this system of inequalities have a solution. The Tarski–Seidenberg theorem had established that such elimination was possible in principle; the procedure implicit in the original proof was not something anyone could run. Collins’s was, and remains one of the central algorithms of real algebraic geometry.
It is also doubly exponential in the number of variables, and this is not an artefact of the method: Davenport and Heintz proved in 1988 that real quantifier elimination is doubly exponential, and examples exist for which the minimum number of cells is doubly exponential too. The literature calls that a lower bound; a user calls it a machine that stops responding. Implementations exist in Mathematica, in the QEPCAD program and in Redlog, a package built on REDUCE, so a reader in the 1990s could try the same question in more than one and compare, which is exactly the habit this group cultivated.
Summation acquired its decision procedure in the same era. Bill Gosper, working on Macsyma at the Stanford Artificial Intelligence Laboratory and at MIT, found in the 1970s a procedure that decides whether an indefinite sum of hypergeometric terms is itself a hypergeometric term and produces it when it is; he published it in the Proceedings of the National Academy of Sciences in January 1978 as a decision procedure for indefinite hypergeometric summation. Doron Zeilberger’s algorithm extended the attack to definite sums, and the Wilf–Zeilberger machinery turned a great many binomial-coefficient identities from exercises in ingenuity into computations. Marko Petkovšek, Herbert Wilf and Zeilberger set the whole business out in their 1996 book A = B.
Assemble these and a shape appears that a product manual will never show you. Each of the field’s great results is a decision procedure: exact, complete within its domain, and expensive — frequently doubly exponential, occasionally undecidable just outside its boundary. No shipped system runs the decision procedure first. Every one of them tries cheap heuristics, pattern matches against tables, and falls back on the expensive machinery only when it must, if it implements it at all. The distance between the published algorithm and the command a user types is where nearly all of this group’s technical traffic lived, and it is not a distance that any vendor has an incentive to document.
The general-purpose systems, as a lineage
The systems argued over in this group were older than the network that carried the arguments, and they came out of two unrelated pressures: theoretical physicists facing expressions too large to handle by hand, and artificial-intelligence research into symbolic manipulation. Both arrived in the early 1960s and the field has carried the double inheritance ever since.
Schoonschip is the physicists’ founding artefact. Martinus Veltman wrote it in 1963 — the initial version dates to that December and ran on an IBM 7094 — to compute the quadrupole moment of the W boson, a calculation that by his own account passed through intermediate expressions of the order of fifty thousand terms. The name is Dutch for making a clean sweep, chosen, Veltman said, partly to annoy everyone who could not speak Dutch. It was ported to the CDC 6600 in 1966 and to the Motorola 68000 in 1983, and its successor, FORM, was begun by Jos Vermaseren at Nikhef in 1984, written first in Fortran 77 and then in C, reaching version 1.0 in 1989, version 2.0 in 1991 and version 3.0 in 2000.

On the other side of the Atlantic and of the discipline, FORMAC — the Formula Manipulation Compiler — was built at IBM by Jean E. Sammet and her team as an extension of FORTRAN IV, implemented as a preprocessor. Development started in 1962, was complete by April 1964, and the system was released to IBM customers that November; it is generally credited as the first computer algebra system to see significant use. In 1964 Carl Engelman wrote MATHLAB at the MITRE Corporation, in Lisp, out of an artificial-intelligence research environment; it later reached users on PDP-6 and PDP-10 machines. Anthony C. Hearn began REDUCE in 1963 with high-energy physics in mind, writing it in a Lisp dialect of its own devising, Standard Lisp, with an ALGOL-like surface syntax called RLISP; it is one of the oldest of these systems still in use.

Macsyma — Project MAC’s Symbolic Manipulator — was begun at MIT in July 1968 by Engelman, William A. Martin and Joel Moses, and developed there until 1982. Martin ran the project until 1971 and took the front end, expression display and polynomial arithmetic; Moses ran it for the following decade and took the simplifier and indefinite integration; Engelman and his staff returned to MITRE in 1969. Its later contributor list reads like a roll of the field: Richard Fateman on rational functions and arbitrary-precision floating point, Gosper on definite summation, Barry Trager on algebraic integration and factoring, Paul S. Wang on polynomial factorisation and greatest common divisors, David Y. Y. Yun on polynomial GCDs, Rich Zippel on power series and factorisation. Its commercial life was less happy: licensed to Symbolics in 1982, bought from the ailing Symbolics in 1992 by Macsyma, Inc. — founded by Russell Noftsker and Richard Petti — developed until 1999, and then acquired by Tenedos LLC, a holding company that had previously bought Symbolics and never re-released it. Its trajectory as a product is told on the Maple group’s page and not repeated here.
IBM built two systems called Scratchpad. The first was started in 1965 by James Griesmer at the request of Ralph Gomory, written in Fortran, and never publicly released. The second, Scratchpad II, was developed from 1977 at the Thomas J. Watson Research Center under the direction of Richard Dimick Jenks, with a design credited to Jenks, James H. Davenport, Barry M. Trager, David Y. Y. Yun and Victor S. Miller. Its distinguishing idea was a strongly typed hierarchy in which rings, fields and their kin are objects in the language, so that an algorithm can be written once for every domain in which it makes sense. IBM renamed it Axiom around 1990 to make it a commercial product and later sold it to the Numerical Algorithms Group.
The 1980s commercial generation set the terms this group inherited. SMP, designed by Chris A. Cole and Stephen Wolfram at Caltech around 1979 and influenced by both Macsyma and Schoonschip, was sold commercially from 1981 and marketed by Inference Corporation from 1983 to 1988 before being abandoned; it was rule-based, written in C, and was criticised in the literature for using floating-point numbers where exact rationals were wanted, which made polynomial greatest common divisors unreliable — a textbook demonstration of why the exactness decision is not negotiable. Wolfram Research released Mathematica 1.0 on 23 June 1988. Maple, whose first concept came out of a meeting at the University of Waterloo in late 1980 and which Waterloo Maple Inc. was founded in 1988 to sell, is documented in full on its own page. Derive, a successor to muMATH written in muLISP by the Soft Warehouse of Honolulu, first shipped for MS-DOS in 1988 and was discontinued on 29 June 2007. MuPAD came out of the University of Paderborn, passed to SciFace Software in 1997, and disappeared as a product of its own on 28 September 2008 after MathWorks bought SciFace that month, surviving inside MATLAB’s Symbolic Math Toolbox.
What distinguished sci.math.symbolic from the rooms attached to particular products is that no vendor owned it and every one of these systems was in scope. Their foundations genuinely differed — a strongly typed algebraic hierarchy, a rule-based rewriting engine and a Lisp-descended simplifier do not fail in the same way — and the useful posts were the ones that crossed between them. The readership matched: people who taught with these systems, who published results computed with them, and in a number of cases who had worked on the code. A claim about what a system did could be answered by somebody who knew why.
The specialist packages
Beside the general-purpose systems ran packages built for one branch of algebra, and they surfaced here whenever a general system proved too slow for a particular computation — which, given the complexity results above, was often. Their existence is one of the reasons a subject group made sense: nobody sells a single product that is best at group theory, algebraic geometry and algebraic number theory at once.
GAP — groups, algorithms and programming — was developed at the Lehrstuhl D für Mathematik of RWTH Aachen from 1986 to 1997, and after Joachim Neubüser’s retirement from that chair its coordination moved to the University of St Andrews. In 2005 it was reorganised again as an equal partnership of four GAP Centres — St Andrews, Aachen, Braunschweig and Colorado State — with a fifth at Kaiserslautern added in April 2020. It handles permutation groups, finitely presented groups, matrices and finite fields, ships databases of important finite groups, and puts user-contributed packages through a peer-review process that gives their authors something resembling an academic publication.
PARI/GP serves number theory. Its progenitor was an interpreter for higher arithmetic called Isabelle, written in 1979 by Henri Cohen and François Dress at Bordeaux; the system proper was developed from 1985 by a team led by Cohen, and is now maintained by Karim Belabas at the same university. It is two things at once: a C library for speed and an interactive calculator, gp, with its own scripting language. The name, its own manual admits, is a pun that began as an abbreviation of Pascal arithmetic and ended as a nod to Pascal’s wager.
For commutative algebra and algebraic geometry there is the Macaulay line. Michael Stillman and Dave Bayer began Macaulay in 1983, naming it after Francis Sowerby Macaulay, and it demonstrated that real problems in algebraic geometry could be attacked with Gröbner basis techniques; by the early 1990s its architecture was in the way, and Daniel Grayson and Stillman began Macaulay2 in 1993. The original was still being updated for years afterwards, its last release appearing in August 2000. Singular, developed at Kaiserslautern under Wolfram Decker, Gert-Martin Greuel, Gerhard Pfister and Hans Schönemann, took polynomial computation with a particular emphasis on singularity theory, and grew an offshoot, Plural, for the non-commutative case.
The commercial end of the specialist market was held by Magma, produced by the Computational Algebra Group at the University of Sydney and named after the algebraic structure. Its predecessor Cayley ran from 1982 to 1993; Magma 1.0 was released in August 1993 and version 2.0 in June 1996, with roughly annual releases thereafter. It is also the first system named in the goal the free project of the following decade set itself: SageMath was begun with the stated aim of providing an open-source alternative to Magma, Maple, Mathematica and MATLAB, which is a compliment of a sort.
A field with its own institutions
Computer algebra had a peer-reviewed apparatus long before it had a newsgroup, and that is why a thread here could end in a citation rather than in an opinion. The professional body is SIGSAM, the Association for Computing Machinery’s Special Interest Group on Symbolic and Algebraic Manipulation, and it is the closest thing the discipline has to a learned society of its own. Its bulletin was already running in the 1960s: the eighth numbered issue of the SIGSAM Bulletin is dated December 1967. In March 2006, with volume 40, the bulletin was retitled ACM Communications in Computer Algebra, keeping the volume numbering, and it is still published under that name.
The bulletin is also a reminder that the comparative, critical habit this newsgroup practised was the field’s habit and not the network’s. Richard Fateman’s Comments on SMP appeared in the SIGSAM Bulletin in August 1985: a named researcher publishing a critical assessment of a commercial system in the professional body’s own periodical. The newsgroup, when it did the same thing faster and less formally, was continuing an established practice rather than inventing one.
The conference series is older than either. The first ACM symposium on symbolic and algebraic manipulation met in 1966; the second, SYMSAC ’71, met in Los Angeles from 23 to 25 March 1971, and it was there that Moses read his guide for the perplexed. Meetings ran between 1966 and 1987 under the names SYMSAM, SYMSAC, EUROCAL, EUROSAM and EUROCAM — two decades of them — before consolidating. ISSAC, the International Symposium on Symbolic and Algebraic Computation, first met in Rome from 4 to 8 July 1988; it is regularly sponsored by SIGSAM, its proceedings have been published by the ACM since 1989, and it has met annually, usually in July, ever since. Its awards keep the lineage visible: the Richard D. Jenks Memorial Prize for excellence in software engineering applied to computer algebra has been awarded every other year since 2004, named for the man who directed Scratchpad II.
The journal literature arrived in 1985, when Bruno Buchberger founded the Journal of Symbolic Computation and edited it until 1994. Published first by Academic Press and then by Elsevier, it covers computer algebra, computational geometry and automated theorem proving, and is generally reckoned the field’s leading journal. Buchberger founded the Research Institute for Symbolic Computation at Johannes Kepler University in Linz in 1987 and chaired it, and conceived the Softwarepark Hagenberg two years after that: a research institute, a journal and a technology park, all downstream of a doctoral thesis about polynomial ideals.
The textbook literature completes the apparatus, and it is worth naming because it is what a well-answered newsgroup question pointed at. Davenport, Siret and Tournier’s Computer Algebra: Systems and Algorithms for Algebraic Computation appeared in 1988; Geddes, Czapor and Labahn’s Algorithms for Computer Algebra in 1992; Petkovšek, Wilf and Zeilberger’s A = B in 1996. For a reader tracing a disputed result, this apparatus is the point: an algorithm argued over in a thread almost always had a published description somewhere inside it, and part of what the group did was say where.
One publication belongs to the group’s own working method. Michael Wester ran the same set of short problems across the general-purpose systems of the day and published the results, first as a review in 1995 and then in the 1999 collection Computer Algebra Systems: A Practical Guide. The comparison covered Axiom, Derive, Macsyma, Maple, Mathematica, MuPAD and REDUCE, and the resulting problem set was reused for years as an informal benchmark. It is exactly the exercise the newsgroup performed thread by thread, done once, carefully, with a citation attached.
The free-software succession
The systems compared here did not all stay proprietary, and the licence changes of the following decade altered the group’s working method as much as any technical development did.
The Macsyma line reached free software first, by an unusual route. The 1982 MIT version had been deposited with the United States Department of Energy and remained available to academics and government agencies as DOE Macsyma; Bill Schelter maintained it from 1982 until his death in 2001, adapting it to Common Lisp. In 1998 he obtained the Department’s permission to release his version under the GNU General Public License, and it went out under the GPL in 1999 as Maxima. Because it descends from the 1982 code, it carries none of the modifications made to the commercial branch between 1982 and 1999; the two lines diverged, so a defect fixed in one could persist in the other, and vice versa — precisely the sort of distinction this group was equipped to notice and a single-product forum had no reason to raise.

The others followed at their own pace and under their own licences. Axiom was withdrawn from the market in 2001 and re-released under the Modified BSD License; in 2007 it forked twice, into OpenAxiom and FriCAS, after what the FriCAS project describes as serious disagreement about project goals. REDUCE, which had previously cost $695, was open-sourced in December 2008 under a modified BSD licence. FORM was released under the GPL on 27 August 2010. Among the specialist packages, GAP is distributed under the GNU General Public License, Singular under GPL version 2 or version 3, Macaulay2 likewise under GPL version 2 or 3, and PARI/GP under the GPL from version 2.1.0 onwards.
Two projects of 2005 changed the shape of the free end of the field rather than merely the licence at the bottom of it. SageMath — originally SAGE, for System for Algebra and Geometry Experimentation — was first released on 24 February 2005 by William Stein, a mathematician at the University of Washington, under version 2 of the GPL and later version 3. Its founding observation was that the free packages already existed in half a dozen languages, so rather than rewriting them Sage wrapped them behind a single Python interface: PARI/GP, GAP, Maxima, Singular and others became components of one system. It won the ACM SIGSAM Jenks Prize in 2013. SymPy, begun in 2005 by Ondřej Čertík and licensed under the three-clause BSD licence, took the opposite approach: a computer algebra system written entirely in Python with few dependencies, importable as a library into any Python program, with a correspondingly low barrier to entry.
The effect on a correctness argument was substantial. A claimed defect could now be traced into source by the person reporting it, rather than inferred from behaviour. The cross-system comparison the group had run by hand became something a reader could reproduce without buying four licences. And the argument moved: a disputed result now becomes a filed issue with a reproducible input, in a tracker attached to the code, which is close to what this group had been doing for fifteen years without the infrastructure.
What the group carried
No thread titles are quoted on this page and no posting counts are given, because the honest record does not supply them. What can be described, from the shape of the subject and from the group’s stated remit, are the classes of question a symbolic computation group answers, each of which follows from something set out above.
- The integral that comes back unevaluated. The system has returned the input unchanged. Three explanations are available — no elementary antiderivative exists, one exists but falls outside the implemented cases, or one exists in a form the system failed to recognise — and the output distinguishes none of them.
- The answer that is wrong on a branch cut. Square roots, logarithms and inverse trigonometric functions require a choice of branch, and an identity that holds on one branch fails on another. A great many alarmed first posts are correct answers evaluated somewhere the asker was not standing.
- The simplification that will not happen. The system will not reduce an expression the user can see is reducible, because it lacks an assumption — the sign of a parameter, whether a variable is real, whether a denominator can vanish — that the user never thought to state.
- Exact against floating point. A result that looks exact carries no error bar. A user who has silently introduced a decimal point somewhere has left the exact world and will not be told so.
- The computation that never finishes. Expression swell, a doubly exponential worst case, or an unfortunate monomial ordering. Whether this is a defect or the algorithm behaving as published is a question that needs somebody who has read the paper.
- The answer in an unrecognised form. Two expressions that a canonical form would identify, presented differently, with no obvious way to tell whether they are the same.
Only the last three are even candidates for a bug report, and telling them apart is the work. A system that returns a wrong closed form fails quite differently from one that loses precision: the output looks exact, carries no error estimate, and may be right under assumptions nobody wrote down. The standard method for sorting this out was comparison — the same input put to several systems — and it is the reason a correctness argument wanted a room like this one rather than a vendor’s.
The structural argument is worth stating plainly, because it is what made a subject group more than a duplicate of the product groups. A defect reported inside a vendor’s forum reaches the people who can repair it, which is where a defect belongs. But the same integrand put to four systems produces something a single-product forum has no occasion to publish: a table in which the systems disagree, one returning a closed form, another leaving the integral untouched, a third returning an answer correct on a branch the asker was not standing on. That table is what decides whether the fault lies in an implementation or in the question, and only an unaffiliated group has any reason to compile it.
Where it went
The dispersal followed the pattern of technical Usenet in general, with one wrinkle particular to this subject. Product questions went to vendor-run forums and vendor-run mailing lists as those appeared, a migration documented in detail for one system on the Maple group’s page. The mathematics questions went to the question-and-answer sites, whose arrival and whose inheritance from the sci.* groups is described on our sci.* hierarchy page and not restated here.
What is specific to computer algebra is the third destination. The free systems grew channels of their own, attached to their own code: mailing lists, then issue trackers, in which a disputed result arrives as a reproducible input against a named version and stays there until somebody closes it. That is a better instrument than a newsgroup for the purpose, and it absorbed exactly the traffic the newsgroup had been best at. A fourth destination appeared later still and split the subject the way the namespace had split it in the first place: a Stack Exchange site dedicated to Mathematica launched on 17 July 2012, taking product questions about one system to a place with reputation scores and accepted answers, while the general mathematics sites took the mathematics.
The group itself did not vanish: it is still in the Big-8 list, still carried in the standard newsgroups and active files, still unmoderated. What emptied was the traffic, on roughly the schedule that emptied the rest of sci.*: spam, the switching-off of institutional news servers, and each new cohort arriving already at home on the web.
What the record does not show
This page has been written from the administrative record and from the documented history of the subject, and both have edges worth marking.
- No creation paperwork. There is no Request for Discussion, no Call for Votes, no result and no tally for sci.math.symbolic in the ISC archive of news.announce.newgroups, which holds no file for the group at all. The group predates that archive. Any creation date, proponent or vote count offered for it elsewhere is not supported by the record consulted here.
- No charter beyond four words. The only official self-description that survives is the newsgroups-file line quoted at the top of this page. There is no longer charter and no posting-guidelines document in the archive; the two fuller descriptions quoted above come from other groups’ proposals, not from this group.
- No moderator on the record. The group was unmoderated in the 1995 control message and is still marked unmoderated in the current active file.
- No traffic figures. The spool numbers quoted above are per-site article numbers from single servers on single days, not message counts, not thread counts and certainly not readerships.
- No periodic posting found. Many technical groups maintained a frequently-asked-questions document; no such document for this group was located in the sources consulted, which is not proof that none existed.
- No named regulars. The only individual postings named on this page are ones a published reference work or the surviving archive documents. Nobody is described as a regular, a moderator or a leading voice, because the record consulted does not establish who was.
That the group-specific record is thin is normal for a Usenet group of this vintage and not a failure of preservation peculiar to this one. The honest value of a page like this lies in being accurate about what the group was, where it sat, and what world it belonged to.
Scope and limits
This page is about the subject and the room, not about any one product. Maple’s origins, its architecture, its company, its release rhythm, its user group and its move to a vendor forum belong to comp.soft-sys.math.maple, which is documented at length. The sci.* hierarchy itself — the Great Renaming, the moderated research groups, the periodic postings, the relationship with the preprint archives — belongs to the sci.* page. The mechanics of Big-8 group creation belong to the comp.* page.
What sat here instead was the rest of the field. sci.math took mathematics 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, which is the same problems attacked from the other end. sci.math.symbolic sat between them: narrower than the parent, less formal than the moderated group, and defined by an instrument rather than by a branch of mathematics. Those four are still the whole of sci.math.* in the current Big-8 list — a thin shelf, but a stable one.
Adjacent traffic ran under comp.soft-sys.math, where a moderated Mathematica group sat beside the Maple one. The division was of subject matter rather than standing: product questions there, algorithms and cross-system comparison here. The boundary leaked in both directions, and the 1999 Maple proposal said as much when it observed that Maple-only discussion had become a common occurrence in this group.
The related practical matters have their own rooms too. Getting typeset mathematics out of a system and into a paper was a shared concern with the readers of comp.text.tex, and the systems’ LaTeX and Fortran output routines — Paul S. Wang wrote Macsyma’s — exist precisely because the answer usually had somewhere else to go.
What the archive preserves, in the end, is the comparative record: one input, several systems, in public, by people with no stake in which of them won.
Reading sci.math.symbolic today
- Historical archive: Google Groups — sci.math.symbolic (coverage varies by group and era).
- Open in a newsreader:
news:sci.math.symbolic— the original site offered exactly this link, and it still works if your system has a newsreader registered for thenews:scheme. - Live access: point an NNTP newsreader at a modern server — see accessing Usenet today.
- The original news2mail e-mail subscription service ended in the mid-2000s and no longer operates.