Commit graph

16 commits

Author SHA1 Message Date
minskim
9af1fb4b74 Update mathomatic to 12.5.0.
Changes:
- Made library work with constant strings passed as input to matho_process().
- Added "set bold_colors" option.  Use this if equations are difficult to read.
- Removed "doc/ctips.html".
- Cleaned up and improved makefiles.
- Fixed bug in "compile.secure".
2005-10-29 01:45:35 +00:00
minskim
2131f1b313 Do not link against the curses library, which is not used by this
package.
2005-09-10 18:15:03 +00:00
minskim
e101638499 Update mathomatic to 12.4.10.
Changes:
  - Created "complex.h".
  - Fixed and documented "help all >filename", for quickly creating a
    quick command reference.
  - Fixed up and commented "main.c".
  - Split off "complex.c" into "complex_lib.c" and made it an
    independent complex number library.
  - Added "integrate definite" command option.
  - Corrected makefile install.
  - Added check in nintegrate command to fail if result contains
    infinity or nan.
  - A few complex number improvements were made.
  - Allow a text pre-processor to pipe input into Mathomatic.
2005-09-05 14:44:15 +00:00
minskim
60a0326906 Update mathomatic to 12.4.7.
Changes:
  - Fixed minor bug in real and imaginary commands.
  - Fixed roots command.
  - Cleaned up Prime Number Tools man pages.
  - Cleaned up the Mathomatic source code.
  - Corrected the Mathomatic library.
  - Ported taylor command to non-equations.
2005-08-27 18:58:51 +00:00
minskim
84873a711b Update mathomatic to 12.3. Bug fixes and many enhancements. See
changes.txt for the complete list of changes.
2005-04-29 13:05:28 +00:00
minskim
3fd5abbf1a Update mathomatic to 12.2b.
Changes since 12.1d:
  - Various improvements and bug fixes.
  - Documentation with full command reference.
2005-03-28 14:52:28 +00:00
minskim
ee0cae71c1 Update mathomatic to 12.1d.
Changes since 11.7:
- Increased precision and optimization of code command.
- Prepared code for future improvement to integrate command.
- Integrate (a*constant^x) for x has been added.
- Allow differentiation and integration of -constant^x.
- Disabled power factoring of k^x*k^y, where k is a constant.
  This fixes a small bug.
- Reduced stack usage by almost 2/3.
- Reduced stack usage another large amount to the smallest it can be.
- Laplace (a*constant^x) and (a/constant^x) for x has been added.
- Allow integration of (a/constant^x) for x.
- Moved all numeric GCD routines to "gcd.c".
- Improved limit command for "limit x inf".
- Halved the default equation size and doubled the number of equation
  spaces to 40.
- Fixed bug that caused infinite loop for "2^(.5*n)" and incorrect answer
  for "-1^(2*n)".
- Allow edit command to work with no equations defined.
- Allow typing "abort" or "quit" during pause command.
- They both abort the current operation.
- Removed usage displayed every time a command fails.
- Simplify command once again prefers 1/(constant^n) instead of (1/constant)^n.
- Added "set finance" option.
- Some improvement to simplification of constants.
- Improved "factor number" command.  Made self-testing and allow
  multiple integers.
- Strip trailing newlines from string returned by getstring().
- Re-enabled power factoring of k^x*k^y, where k is a constant.
- The bug it had caused just disappeared.
- This is because a lot of changes have been made.
- Some speed up in polynomial factoring made by ignoring anything that
  is not a polynomial in any variable.
- Improved denominator rationalizer.
- Disabled power factoring of -1^x*-1^y.  This time it is done right.
- Added new function debug_string().  It simplifies the debugging code.
- Simplified pf_sub() (the polynomial factoring subroutine).
- Fixed up Prime Number Tools man pages.
- Improved matho-twin.
- Added simplification of roots like 12^.5 to 2*(3^.5) in simplify command.
- Code cleanup.
- Improved the results of solving by not always factoring constants.
- Added semicolon (";") to end of each line when using "list export".
- Some improvement made to the simplify command.
- More tests added to test suite.
- Fixed bug in patch_root_div().
- Fixed infinity/nan bug in uf_repeat().
2005-03-05 03:01:50 +00:00
minskim
27283744d3 Update mathomatic to 11.4b.
Changes:
  - Added "code integer" command, which outputs working C code with integer
   variables.
  - Changed makefile to use libncurses instead of libcurses.
  - Added more simplification rules for modulus.
2004-10-14 13:43:26 +00:00
minskim
01cfe1c349 Update mathomatic to 11.3f.
Changes since 11.3c:

Improved eliminate command error handling.

Added "eliminate all" command.

Code cleanup.

Man pages for the prime number tools were contributed
by David Moreno Garza.  Many thanks.

Renamed the Mathomatic directory in the source tarball to
"mathomatic-`cat VERSION`".

Added several comments to the source code.

Renamed prime number tools to "matho-*".

Improvement to full simplification.

Tried something new with uf_simp() that fixed a problem with Mathomatic
solve complicating expressions.

Minor bugfix to eliminate command.
2004-09-25 00:40:53 +00:00
minskim
2933f80830 Update mathomatic to 11.3c.
Changes:

"factor number" command now accepts more than one integer.

Added file "mathomatic.ico".

Added temporary fix for 64 bit longs.

Added file "VERSION" which contains the version number of Mathomatic.
"makefile" modified.

Renamed "lgpl.txt" to "LICENSE.txt".

"make install" now installs all HTML files in "/usr/local/doc/mathomatic".

Added compile-time define "TIMEOUT_SECONDS".
Useful for limiting the amount of time Mathomatic can run as a CGI.
2004-08-04 19:59:59 +00:00
minskim
ac24d7b58c Update mathomatic to 11.2d.
Changes:

Slight improvement to integrate and laplace commands.
Integrate/laplace x on (a+x)/(b+c) works now.

Added more examples to the documentation (am.htm).

2 to 10 times speedup for simplify command by fixing polynomial factoring.
2004-06-28 13:58:25 +00:00
minskim
228ad5d1fc Update mathomatic to 11.2.
Changes since 11.1c:

Moved notification of polynomial factoring success to debug level 1 or higher.

Removed "NO_COMPLEX_ROOTS" compile-time define option.
I am thinking of making this a run-time option.

Increased security of "SECURE" compile-time define.
Absolutely no file operations are allowed or linked in.

Added check for terminal with isatty().
This allows better piping into Mathomatic.

Split up change-log ("changes.txt" and "changes_old.txt").

Changed "x!" to mean gamma(x+1) for Laplace transforms.

Fixed parsing of things like "2e#", which failed before,
thinking it was scientific notation.

Wrote "primes/twin.c", to find twin primes.

Added "help usage" command.

Allow output of "help" command to be redirected to a file.

Fixed parsing of variable names (like "pig", which didn't work right).

Added "integrate" command.

Fixed "derivative" command.

Code cleanup.

Fixed "taylor" command.
2004-06-04 03:38:29 +00:00
minskim
76ac2ced9d Update mathomatic to 11.1.
Changes:
- Fixed "makefile" to be completely portable.
  No longer requires GNU make.
- Simplified some code.
- Converted token_type.kind to enum type for better type checking.
- Removed all "unsigned" variables and type casts.
- Simplified "simplify" command code.  Some speed up.
- Moved "*.in" and "fix*" to directory "tests".
- Implemented long variable names (up to 40 characters).
2004-05-10 16:47:15 +00:00
minskim
f3bddedf0d Update mathomatic to 11.0f.
Changes:
  - Removed calc() fraction code for accuracy because of fraction slack
    that was implemented in version 10.9c.
  - Solve increase power function wasn't working with odd number roots.
    Fixed.  Appears to be another gcc optimizer bug.
  - Improved simplify command.
  - Tweaked factor_constants().
  - Some changes to "makefile" for "readline" support.
    "GNU make" or "gmake" required now.
  - Fixed solving of "x^(1/99)=x".
  - Fixed readline bug.
2004-05-04 17:20:48 +00:00
minskim
920fbcee7c Update mathomatic to 11.0b.
Changes since 10.9b:
  - Removed more MS-DOS specific code; functionality improved.
  - Implemented what I call "fraction slack".  This perfects float to
    fraction conversion, and now Mathomatic doesn't rely on perfect
    floating point routines.  "-O" option added to CFLAGS in file
    "makefile" (we can do this now).
  - Changed modf() to fmod() where possible.
  - Accuracy increased one more digit by reducing the "epsilon" variable.
  - Cleaned up "makefile".
  - Took a step towards internationalization with gettext(3) by
    calling _() for all English strings.  Everything ported except for
    the "help" command.
  - Commented out some unfactoring code that wasn't helpful and took out
    the "pause" command from "all.in" for easier testing.
  - Rearranged "simplify" command to simplify better.
  - Removed some more unfactoring code and made simplification much
    better.  Go figure.  Perfection has been achieved.
  - Added "unfactor fully" option.
  - Added "make test" to fully test Mathomatic after compilation.
  - Removed masking of 8th bit in all Mathomatic input.
  - Updated primes program with a nice user interface.
2004-04-17 17:08:37 +00:00
minskim
4fe29920ec Import mathomatic-10.9b from pkgsrc-wip.
Packaged by Bruce J.A. Nourish, and slightly modified by me.

Mathomatic is an automatic algebraic manipulator that is self-testing
and strictly follows the rules of algebra.

Mathomatic is an interpreter that can:
  - Solve, simplify, and compare algebraic equations.
  - Combine simultaneous equations.
  - Perform basic calculus operations.
  - Generate the sensitivity formula for one or more variables in an
    equation.
  - Act like a double precision floating point programmable calculator.
  - Perform complex number and polynomial arithmetic.
  - Compute the Greatest Common Divisor of numbers or polynomials.
  - Generate "C" code from equations.
2004-03-31 18:14:08 +00:00