SMP (computer algebra system)

{{Short description|Predecessor of computer algebra program Mathematica}}

{{About|a specific software package|symbolic computation in general|Computer algebra system}}

Symbolic Manipulation Program (SMP) was a computer algebra system designed by Chris A. Cole and Stephen Wolfram at Caltech circa 1979. It was initially developed in the Caltech physics department with contributions from Geoffrey C. Fox, Jeffrey M. Greif, Eric D. Mjolsness, Larry J. Romans, Timothy Shaw, and Anthony E. Terrano.

History

SMP was first sold commercially in 1981, by the Computer Mathematics Corporation of Los Angeles, which later became part of Inference Corporation. Inference further developed the program and marketed it commercially from 1983 to 1988, but it was not a commercial success, and Inference became pessimistic about the market for symbolic math programs, and so abandoned SMP to concentrate on expert systems."Computer maths: could do better", The Economist November 4, 1989, p. 103

SMP was influenced by the earlier computer algebra systems Macsyma (of which Wolfram was a user) and Schoonschip (whose code Wolfram studied).Michael Swaine, "Is Cyberspace Dead?", Dr. Dobb's, [http://www.ddj.com/184406157 July 1, 2005]{{cite web |last=Wolfram|first=Stephen|author-link=Stephen Wolfram |title=Tini Veltman (1931–2021): From Assembly Language to a Nobel Prize |url=https://writings.stephenwolfram.com/2021/01/tini-veltman-1931-2021-from-assembly-language-to-a-nobel-prize/ |website=Wolfram Writings |date=21 January 2021}}

SMP follows a rule-based approach, giving it a "consistent, pattern-directed language". Unlike Macsyma and Reduce, it was written in C.K.O. Geddes, S.R. Czapor, G. Labahn, Algorithms for Computer Algebra, 1992, {{isbn|0792392590}}, p. 8-9

During the 1980s, it was one of the generally available general-purpose computer algebra systems, along with Reduce, Macsyma, and Scratchpad,C. Wooff, D. Hodgkinson, muMATH: A microcomputer algebra system, 1987, {{isbn|0127630708}}, p. 3 and later muMATH and Maple. It was often used for teaching college calculus.Donald B. Small, John M. Hosack, "Computer Algebra Systems, Tools for Reforming Calculus Instruction", in Toward a Lean and Lively Calculus, MAA Notes 6 (1986) p. 143

The design of SMP's interactive language and its "map" commands influenced the design of the 1984 version of Scratchpad.Richard D. Jenks, "A Primer: 11 Keys to New Scratchpad", EUROSAM 84, Lecture Notes in Computer Science 174 {{isbn|354013350X}} p. 123-142

Reception

SMP has been criticized for various characteristics, notably its use of floating-point numbers instead of exact rational numbers, which can lead to incorrect results,J.H. Davenport, Y. Siret, E. Tournier, Computer Algebra: Systems and algorithms for algebraic computation, 1988, {{isbn|0122042301}}, p. 61, footnote and makes polynomial greatest common divisor calculations problematic.Joel Moses, "Macsyma: A personal history", Journal of Symbolic Computation 47:123-130 (February 2012) {{doi|10.1016/j.jsc.2010.08.018}}, p. 129 Many other problems in early versions of the system were purportedly fixed in later versions.Richard J. Fateman, "Comments on SMP", ACM SIGSAM Bulletin 19:3:5-7 (August 1985) {{doi|10.1145/1089411.1089412}}

References

{{Reflist}}

Additional sources

  • Chris A. Cole, Stephen Wolfram, "SMP: A Symbolic Manipulation Program", Proceedings of the fourth ACM symposium on Symbolic and algebraic computation (SIGSAM), Snowbird, Utah, 1981. [http://www.stephenwolfram.com/publications/articles/computing/81-smp/index.html full text]
  • Stephen Wolfram with Chris A. Cole, SMP: A Symbolic Manipulation Program, Reference Manual, California Institute of Technology, 1981; Inference Corporation, 1983. [https://content.wolfram.com/sw-publications/2020/07/smp-reference-manual.pdf full text]
  • Stephen Wolfram, "Symbolic Mathematical Computation", Communications of the ACM, April 1985 (Volume 28, Issue 4). Despite the general-sounding title the focus is on an introduction to SMP. [http://www.stephenwolfram.com/publications/articles/computing/85-symbolic/index.html Online version of this article]
  • J.M. Greif, "The SMP Pattern-Matcher" in B.F. Caviness (editor), Proceedings of EUROCAL 1985, volume 2, pgs. 303-314, Springer-Verlag Lecture Notes in Computer Science, no. 204, {{ISBN|3-540-15984-3}} A discussion, with examples, of the capabilities, tasks, and design philosophy of the pattern-matcher.
  • [http://files.wolframcdn.com/pub/www.stephenwolfram.com/pdf/smp-manual.pdf SMP's manual "SMP Handbook"]
  • [http://blog.stephenwolfram.com/2013/06/there-was-a-time-before-mathematica/ Stephen Wolfram's blog post on the history of SMP's creation]

Category:Computer algebra systems