<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Mathomatic</id>
	<title>Mathomatic - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://debianws.lexgopc.com/wiki143/index.php?action=history&amp;feed=atom&amp;title=Mathomatic"/>
	<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Mathomatic&amp;action=history"/>
	<updated>2026-10-26T21:08:55Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>http://debianws.lexgopc.com/wiki143/index.php?title=Mathomatic&amp;diff=2311690&amp;oldid=prev</id>
		<title>imported&gt;GreenC bot: Rescued 1 archive link. Wayback Medic 2.5 per WP:URLREQ#itunes.apple.com</title>
		<link rel="alternate" type="text/html" href="http://debianws.lexgopc.com/wiki143/index.php?title=Mathomatic&amp;diff=2311690&amp;oldid=prev"/>
		<updated>2025-03-15T20:11:25Z</updated>

		<summary type="html">&lt;p&gt;Rescued 1 archive link. &lt;a href=&quot;/wiki143/index.php?title=User:GreenC/WaybackMedic_2.5&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;User:GreenC/WaybackMedic 2.5 (page does not exist)&quot;&gt;Wayback Medic 2.5&lt;/a&gt; per &lt;a href=&quot;/wiki143/index.php?title=WP:URLREQ&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;WP:URLREQ (page does not exist)&quot;&gt;WP:URLREQ#itunes.apple.com&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Short description|Computer algebra system}}&lt;br /&gt;
{{multiple issues|&lt;br /&gt;
{{notability|Products|date=November 2012}}&lt;br /&gt;
{{primary sources|date=November 2012}}&lt;br /&gt;
{{advert|date=November 2012}}&lt;br /&gt;
{{COI|date=November 2012}}&lt;br /&gt;
}}&lt;br /&gt;
{{Use dmy dates|date=January 2021}}&lt;br /&gt;
{{Infobox software&lt;br /&gt;
| name = Mathomatic&lt;br /&gt;
| title = Mathomatic&lt;br /&gt;
| logo = [[File:Mathomatic192x195.png|50px|The official Mathomatic logo]]&lt;br /&gt;
| screenshot = [[File:Screenshot-Mathomatic.png|250px|Mathomatic screenshot under Gnome Terminal]]&lt;br /&gt;
| caption = Mathomatic on a terminal emulator&lt;br /&gt;
| author = George Gesslein II&lt;br /&gt;
| developer = George Gesslein II&lt;br /&gt;
| discontinued = Yes&lt;br /&gt;
| released = {{Start date and age|df=yes|1987}}&amp;lt;ref name=&amp;quot;released1987&amp;quot; /&amp;gt;&lt;br /&gt;
| latest release version = 16.0.5&lt;br /&gt;
| latest release date = {{Start date and age|df=yes|2012|10|21}}&lt;br /&gt;
| service_name = Mathomatic&lt;br /&gt;
| language = English&lt;br /&gt;
| programming language = [[C (programming language)|C]]&lt;br /&gt;
| operating system = [[Cross-platform]], [[Unix-like]]&lt;br /&gt;
| platform = Any [[computer architecture]]&lt;br /&gt;
| genre = [[Computer algebra/math system]]&lt;br /&gt;
| license = [[GNU Lesser General Public License]] version 2.1&lt;br /&gt;
| website = {{URL|https://github.com/mfillpot/mathomatic}}&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Mathomatic&amp;#039;&amp;#039;&amp;#039;&amp;lt;ref&amp;gt;{{Cite web |title=Mathomatic - Free Software Directory |url=https://directory.fsf.org/wiki/Mathomatic |access-date=2023-02-28 |website=directory.fsf.org}}&amp;lt;/ref&amp;gt; is a [[Free and Open Source Software|free]], [[porting|portable]], [[General-purpose computing on graphics processing units|general-purpose]] [[computer algebra system]] (CAS) that can [[symbolic computation|symbolically]] [[equation solving|solve]], simplify, combine and compare algebraic [[equation]]s, and can perform [[complex number]], [[modular arithmetic|modular]], and [[polynomial arithmetic|polynomial]] arithmetic, along with standard arithmetic. It can perform symbolic [[calculus]] ([[derivative]], [[maxima and minima|extrema]], [[Taylor series]], and polynomial [[symbolic integration|integration]] and [[Laplace transform]]s), [[numerical integration]], and can handle all [[elementary algebra]] except [[logarithm]]s. [[Trigonometric functions]] can be entered and manipulated using [[complex exponential]]s, with the [[GNU m4]] preprocessor.  Not currently implemented are general functions such as &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;), [[arbitrary-precision arithmetic|arbitrary-precision]] and [[interval arithmetic|interval]] arithmetic, as well as [[matrix (mathematics)|matrices]].&lt;br /&gt;
&lt;br /&gt;
==Features==&lt;br /&gt;
Mathomatic is capable of solving, differentiating, simplifying, calculating, and visualizing elementary algebra.&amp;lt;ref name=&amp;quot;Mathomatic_introduction&amp;quot; /&amp;gt; It also can perform [[summation]]s, [[product (mathematics)|products]], and automated display of calculations of any length by plugging sequential or test values into any formula, then approximating and simplifying before display.&lt;br /&gt;
&lt;br /&gt;
Intermediate results (showing the work) may be displayed by previously typing &amp;quot;set debug 1&amp;quot; (see the [[#Session_examples|session example]]); this works for solving and almost every command in Mathomatic. &amp;quot;set debug 2&amp;quot; shows more details about the work done.&lt;br /&gt;
&lt;br /&gt;
The software does not include a [[GUI]] except with the Mathomatic trademark authorized, versions for smartphones and tablets running [[iOS]]&amp;lt;ref name=&amp;quot;iPhone&amp;quot; /&amp;gt; or [[Android (operating system)|Android]].&amp;lt;ref name=&amp;quot;Android&amp;quot; /&amp;gt; The Mathomatic software, available on the official Mathomatic website,&amp;lt;ref name=&amp;quot;Mathomatic_website&amp;quot; /&amp;gt; is authorized for use in any other type of software, due to its permissive free software license ([[GNU LGPL]]). It is available as a free [[software library]], and as a free console mode application that uses a color [[command-line interface]] with [[pretty-print]] output that runs in a [[terminal emulator]] under any operating system.&amp;lt;ref name=&amp;quot;Mathomatic_introduction&amp;quot; /&amp;gt; The console interface is simple and requires learning the basic algebra notation to start. All input and output is line-at-a-time [[ASCII]] text.  By default, input is [[standard input]] and output is [[standard output]]. Mathomatic is typically compiled with editline or [[GNU readline]] for easier input.&lt;br /&gt;
&lt;br /&gt;
There is no programming capability; the interpreter works like an algebraic calculator. Expressions and equations are entered in standard algebraic [[infix notation]]. Operations are performed on them by entering simple English [[command (computing)|command]]s.&lt;br /&gt;
&lt;br /&gt;
Because all numeric arithmetic is [[double precision]] [[floating point]], and [[round-off error]] is not tracked, Mathomatic is not suitable for applications requiring high precision, such as astronomical calculations. It is useful for [[symbolic-numeric computation|symbolic-numeric]] calculations of about 14 decimal digits accuracy, although many results will be exact, if possible.&lt;br /&gt;
&lt;br /&gt;
Mathomatic can be used as a [[floating point]] or [[integer (computer science)|integer]] arithmetic code generating tool, simplifying and converting equations into [[optimization (computer science)|optimized]] [[assignment statement]]s in the [[Python (programming language)|Python]], [[C (programming language)|C]], and [[Java (programming language)|Java]] programming languages. The output can be made compatible with most other mathematics programs, except [[TeX]] and [[MathML]] format input/output are currently not available. The ASCII characters that are allowed in Mathomatic variable names is configurable, allowing TeX format variable names.&lt;br /&gt;
&lt;br /&gt;
The Mathomatic source code can be compiled as a symbolic math [[library (computing)|library]] with an [[API]], which can be linked to C compatible programs that need to use the Mathomatic symbolic math engine.&lt;br /&gt;
&lt;br /&gt;
==Session examples==&lt;br /&gt;
[[File:Image-mathomatic snapshot.png|right|150px|thumb|Another set of examples, from a screenshot]]&lt;br /&gt;
Solving and code generation example, where the work is shown:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
1-&amp;gt; x = (a+1)*(b+2)&lt;br /&gt;
&lt;br /&gt;
#1: x = (a + 1)*(b + 2)&lt;br /&gt;
&lt;br /&gt;
1-&amp;gt; set debug 1&lt;br /&gt;
Success.&lt;br /&gt;
1-&amp;gt; solve for b&lt;br /&gt;
level 1: x = (a + 1)*(b + 2)&lt;br /&gt;
Subtracting &amp;quot;(a + 1)*(b + 2)&amp;quot; from both sides of the equation:&lt;br /&gt;
level 1: x - ((a + 1)*(b + 2)) = 0&lt;br /&gt;
Subtracting &amp;quot;x&amp;quot; from both sides of the equation:&lt;br /&gt;
level 1: -1*(a + 1)*(b + 2) = -1*x&lt;br /&gt;
Dividing both sides of the equation by &amp;quot;-1&amp;quot;:&lt;br /&gt;
level 1: (a + 1)*(b + 2) = x&lt;br /&gt;
Dividing both sides of the equation by &amp;quot;a + 1&amp;quot;:&lt;br /&gt;
level 1: b + 2 = x/(a + 1)&lt;br /&gt;
Subtracting &amp;quot;2&amp;quot; from both sides of the equation:&lt;br /&gt;
level 1: b = (x/(a + 1)) - 2&lt;br /&gt;
Solve completed:&lt;br /&gt;
level 1: b = (x/(a + 1)) - 2&lt;br /&gt;
Solve successful:&lt;br /&gt;
&lt;br /&gt;
           x&lt;br /&gt;
#1: b = ------- - 2&lt;br /&gt;
        (a + 1)&lt;br /&gt;
&lt;br /&gt;
1-&amp;gt; code C ; output C programming language code&lt;br /&gt;
b = ((x/(a + 1.0)) - 2.0);&lt;br /&gt;
1-&amp;gt; variables C ; define the variables for the C compiler&lt;br /&gt;
double x;&lt;br /&gt;
double a;&lt;br /&gt;
double b;&lt;br /&gt;
1-&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==History==&lt;br /&gt;
Development of Mathomatic was started in the year 1986 by George Gesslein II, as an experiment in computerized mathematics.&amp;lt;ref name=&amp;quot;Mathomatic_history&amp;quot;&amp;gt;{{cite web |url=http://www.mathomatic.org/math/doc/manual.html#history |title=Mathomatic User Guide |author=George Gesslein II |date=29 June 2012 |work=Official Mathomatic documentation (history) |access-date=13 July 2012 |archive-date=22 July 2012 |archive-url=https://web.archive.org/web/20120722141638/http://www.mathomatic.org/math/doc/manual.html#history |url-status=dead }}&amp;lt;/ref&amp;gt; It was originally written in Microsoft C for [[MS-DOS]].  Versions 1 and 2 were published by Dynacomp of Rochester, New York in 1987&amp;lt;ref name=&amp;quot;released1987&amp;quot;&amp;gt;[https://books.google.com/books?id=6UgqAAAAMAAJ&amp;amp;q=mathomatic&amp;amp;dq=mathomatic&amp;amp;cd=2 The Software catalog: Microcomputer]. sGoogle Books (6 February 2007). Retrieved 29 November 2011.&amp;lt;/ref&amp;gt; and 1988&amp;lt;ref&amp;gt;[https://books.google.com/books?id=iewsAQAAIAAJ&amp;amp;q=mathomatic&amp;amp;dq=mathomatic&amp;amp;cd=1 Intelligent instruments &amp;amp; computer]. sGoogle Books. Retrieved 29 November 2011.&amp;lt;/ref&amp;gt; as a scientific software product for DOS. Afterwards it was released as [[shareware]] and then [[emailware]], with a 2D [[graph of a function|equation graphing]] program.  At the turn of the century, Mathomatic was ported to the [[GNU C Compiler]] under [[Linux]] and became [[free software]]. The graphing program was discontinued; [[Cartesian plane|2D]]/[[Three-dimensional space|3D]] graphing of equations is now accomplished with [[gnuplot]].&lt;br /&gt;
&lt;br /&gt;
The name &amp;quot;Mathomatic&amp;quot; is a [[portmanteau]] of &amp;quot;math&amp;quot; and &amp;quot;automatic&amp;quot;,&amp;lt;ref name=&amp;quot;Mathomatic_introduction&amp;quot;&amp;gt;{{cite web |url=http://www.mathomatic.org/math/doc/manual.html#introduction |title=Mathomatic User Guide |author=George Gesslein II |date=29 June 2012 |work=Official Mathomatic documentation |access-date=13 July 2012 |archive-date=22 July 2012 |archive-url=https://web.archive.org/web/20120722141638/http://www.mathomatic.org/math/doc/manual.html#introduction |url-status=dead }}&amp;lt;/ref&amp;gt; and was inspired by the naming and automation of &amp;#039;&amp;#039;[[Rog-O-Matic]]&amp;#039;&amp;#039;, which was an early experiment in [[artificial intelligence]].&lt;br /&gt;
&lt;br /&gt;
Development has ceased as a result of the death of the author on February 24, 2013.&amp;lt;ref&amp;gt;{{cite web|access-date=2021-11-06|url=https://www.legacy.com/us/obituaries/theithacajournal/name/george-gesslein-obituary?id=24584633|title=George John Gesslein II|publisher=Ithaca Journal|date=2013-02-26}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Available platforms==&lt;br /&gt;
Mathomatic is available for almost all platforms, including [[Microsoft Windows]] using [[MinGW]].&amp;lt;ref&amp;gt;[http://mathomatic.org/math/download.html#Windows Mathomatic MS-Windows port] {{Webarchive|url=https://web.archive.org/web/20160131045752/http://mathomatic.org/math/download.html#Windows |date=31 January 2016 }}. Mathomatic.org (4 November 2011). Retrieved 29 November 2011.&amp;lt;/ref&amp;gt; It is available for [[macOS|Mac OS X]],&amp;lt;ref&amp;gt;[http://mathomatic.org/math/download.html#MacOSX Mathomatic Mac OS X port] {{Webarchive|url=https://web.archive.org/web/20160131045752/http://mathomatic.org/math/download.html#MacOSX |date=31 January 2016 }}. Mathomatic.org (4 November 2011). Retrieved 29 November 2011.&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;[http://trac.macports.org/browser/trunk/dports/math/mathomatic Mathomatic Mac OS X port from MacPorts]&amp;lt;/ref&amp;gt; for [[iOS]],&amp;lt;ref name=&amp;quot;iPhone&amp;quot;&amp;gt;[https://web.archive.org/web/20100507113843/http://itunes.apple.com/app/mathomatic/id300926436?mt=8 Mathomatic for iOS]. Itunes.apple.com. Retrieved 10 March 2012.&amp;lt;/ref&amp;gt; for [[Android (operating system)|Android]],&amp;lt;ref name=&amp;quot;Android&amp;quot;&amp;gt;[https://play.google.com/store/apps/details?id=com.mathomatic Mathomatic for Android]. Play.google.com. Retrieved 13 July 2012.&amp;lt;/ref&amp;gt; and for the [[Nintendo DS]] under DSLinux and stand-alone.&amp;lt;ref&amp;gt;[http://blog.davr.org/category/nintendo-ds/mathomatic/ Mathomatic ported to the Nintendo DS] {{Webarchive|url=https://web.archive.org/web/20071028105410/http://blog.davr.org/category/nintendo-ds/mathomatic/ |date=28 October 2007 }}. Blog.davr.org (22 February 1999). Retrieved 29 November 2011.&amp;lt;/ref&amp;gt; [[Fedora Linux]],&amp;lt;ref&amp;gt;[https://archive.today/20121220210608/https://admin.fedoraproject.org/updates/mathomatic The Mathomatic package in Fedora]. Admin.fedoraproject.org. Retrieved 29 November 2011.&amp;lt;/ref&amp;gt; [[Slackware]],&amp;lt;ref&amp;gt;[http://slackbuilds.org/result/?search=mathomatic&amp;amp;sv= Official Slackware port of Mathomatic in SlackBuilds]. Slackbuilds.org. Retrieved 29 November 2011.&amp;lt;/ref&amp;gt; [[Debian]],&amp;lt;ref&amp;gt;[http://packages.debian.org/mathomatic All Mathomatic packages in Debian]. Packages.debian.org. Retrieved 31 August 2012.&amp;lt;/ref&amp;gt; [[Ubuntu (operating system)|Ubuntu]],&amp;lt;ref&amp;gt;[https://launchpad.net/ubuntu/+source/mathomatic All Mathomatic packages in Ubuntu Linux]. Launchpad.net. Retrieved 29 November 2011.&amp;lt;/ref&amp;gt; [[Gentoo Linux]],&amp;lt;ref&amp;gt;[http://packages.gentoo.org/package/sci-mathematics/mathomatic Gentoo Packages /package/sci-mathematics/mathomatic]. Packages.gentoo.org (25 November 2011). Retrieved 29 November 2011.&amp;lt;/ref&amp;gt; and all of the main [[BSD Unix]] distributions&amp;lt;ref&amp;gt;[https://archive.today/20121220231356/http://www.openbsd.org/cgi-bin/cvsweb/ports/math/mathomatic/ OpenBSD CVS tree for Mathomatic]&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;[http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/math/mathomatic/ NetBSD pkgsrc CVS tree for Mathomatic]&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;[http://www.freebsd.org/cgi/cvsweb.cgi/ports/math/mathomatic/ FreeBSD CVS tree for Mathomatic]&amp;lt;/ref&amp;gt; include Mathomatic as an automatically installable package. There is a port to [[JavaScript]] using [[Emscripten]], allowing Mathomatic to run in a [[web browser]].&amp;lt;ref&amp;gt;{{cite web |url=https://blenheimears.com/mathomatic/ |title=Mathomatic in JavaScript |access-date=2013-08-04 |url-status=dead |archive-url=https://web.archive.org/web/20140114032120/https://blenheimears.com/mathomatic/ |archive-date=14 January 2014}}&amp;lt;/ref&amp;gt; The ports are all maintained by separate individuals.&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
Building from source requires a [[C compiler]] with the [[C POSIX library|standard POSIX C libraries]]. If Mathomatic is compiled with the [[GNU Compiler Collection|GCC]] C compiler or the [[Tiny C Compiler]] for a [[POSIX|Unix-like]] operating system, no changes need to be made to the source code. Mathomatic uses no compiler-specific code, so it will usually compile easily with any C compiler. Use of the Mathomatic Symbolic Math Library allows mixing programming languages and is operating system independent.&amp;lt;ref name=&amp;quot;Mathomatic_developer_info&amp;quot;&amp;gt;{{cite web |url=http://www.mathomatic.org/math/doc/manual.html#developer |title=Mathomatic User Guide |author=George Gesslein II |date=29 June 2012 |work=Official Mathomatic documentation (developer info) |access-date=13 July 2012 |archive-date=22 July 2012 |archive-url=https://web.archive.org/web/20120722141638/http://www.mathomatic.org/math/doc/manual.html#developer |url-status=dead }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mathomatic can be ported to any computer with at least 1 [[megabyte]] of free [[RAM]]. The Mathomatic standard distribution&amp;lt;ref name=&amp;quot;Mathomatic_website&amp;quot;&amp;gt;[http://www.mathomatic.org Found on the Mathomatic website]. Mathomatic.org. Retrieved 29 November 2011.&amp;lt;/ref&amp;gt; memory requirement defaults to a maximum of 400 megabytes, depending on the size of the equation spaces and how many expressions have been entered. Equation spaces are fixed size [[array data structure|array]]s that are [[malloc|allocated]] as needed, the size of which is set during compilation or startup. Each algebraic expression or equation entered at the main prompt is stored in an equation space.&lt;br /&gt;
&lt;br /&gt;
Mathomatic is written to do most symbolic manipulations with memory moves, like an assembly language program.  This causes Mathomatic to crash when used with the new [[LLVM]] backend, which doesn&amp;#039;t seem to like the standard C library function [[memmove|memmove(3)]]. To use Mathomatic with a C compiler that uses an LLVM backend, disable all optimizations with &amp;quot;-O0&amp;quot; on the C compiler command line. Otherwise the regression tests will loop endlessly. This is most certainly an optimization bug in LLVM. To help those trying to debug this optimization error, Mathomatic will fail when LLVM optimizes the simplification of (32^.5) to 4*(2^.5), and the like, going into an endless loop every time.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
{{Portal|Free and open-source software|Mathematics}}&lt;br /&gt;
* [[Comparison of computer algebra systems]]&lt;br /&gt;
* [[Maxima (software)|Maxima]] – a more complete CAS with similar functionality, also free&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
{{reflist|colwidth=30em}}&lt;br /&gt;
*[http://orms.mfo.de/project?terms=lines&amp;amp;id=312 Mathomatic on ORMS]&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
*{{in lang|it}} Additional documentation in Italian for [http://ubuntulandia.blogspot.com/2011/05/mathomatic-software-gratuito-per-lo.html Ubuntu]&lt;br /&gt;
*[http://www.ibm.com/developerworks/aix/library/au-unixmath-a4.pdf &amp;#039;&amp;#039;Mathematics on a UNIX workstation&amp;#039;&amp;#039;]&lt;br /&gt;
*{{Freecode|mathomatic|Mathomatic}}&lt;br /&gt;
*[https://web.archive.org/web/20160128153250/http://www.macupdate.com/app/mac/36070/mathomatic Mathomatic] at [[MacUpdate]]&lt;br /&gt;
&lt;br /&gt;
{{Computer algebra systems}}&lt;br /&gt;
&lt;br /&gt;
[[Category:1987 software]]&lt;br /&gt;
[[Category:Android (operating system) software]]&lt;br /&gt;
[[Category:C (programming language) libraries]]&lt;br /&gt;
[[Category:Command-line software]]&lt;br /&gt;
[[Category:Computer algebra system software for Linux]]&lt;br /&gt;
[[Category:Computer algebra system software for macOS]]&lt;br /&gt;
[[Category:Computer algebra system software for Windows]]&lt;br /&gt;
[[Category:Cross-platform free software]]&lt;br /&gt;
[[Category:Embedded Linux]]&lt;br /&gt;
[[Category:Free computer algebra systems]]&lt;br /&gt;
[[Category:Free educational software]]&lt;br /&gt;
[[Category:Free software programmed in C]]&lt;br /&gt;
[[Category:IOS software]]&lt;br /&gt;
[[Category:Portable software]]&lt;br /&gt;
[[Category:Nintendo DS software]]&lt;/div&gt;</summary>
		<author><name>imported&gt;GreenC bot</name></author>
	</entry>
</feed>