Notable changes (compared to version 1.1.8):
- New MatrixManipulation package.
- New ParallelIntegrationTools package.
- Gruntz algorithm in now used also for finite one-sided limits.
- FriCAS has now true 2-dimensional arrays (previously they were
emulated using vectors of vectors).
- Speedups in some matrix operations and in arithmetic with
algebraic expressions.
- FreeModule is now more general, it allows Comparable as second
argument.
- Changed Spad parser, it now uses common scanner with interpreter.
Spad language is now closer to interpreter language and Aldor.
'leave' is removed, 'free', 'generate' and 'goto' are now keywords.
Pile rules changed slightly, they should be more intuitve now.
Error messages from Spad parser should be slightly better.
Bug fixes, in particular:
- Fixed a few build problems.
- Eliminated division by 0 during 'normalize'.
- 'nthRootIfCan' removes leading zeros from generalized series
(this avoids problems with power series expanders).
- Fixed corruption of formal derivatives.
- Fixed two problems with fortan output.
- Fixed ')untrace' and ')undo'. Fixed ')trace' with ECL.
- Fixed problem with calling efricas if user default shell is (t)csh.
Notable changes in FriCAS 1.1.8 (compared to version 1.1.7):
- Improvements of pattern matching integrator, it can now integrate
in terms of Fresnel integrals and better handles integrals in terms
of Si and Ci.
- Better integration of symbolic derivatives.
- Better normalization of Liouvillian functions.
- New package for computing limits using Gruntz algorithm.
- Faster removal of roots from denominators.
- New domains for mutivariate Ore algebras and partial differential
operators.
- New package for noncommutative Groebner bases.
- New domain for univariate power series with arbitrary exponents.
- New special functions: Shi and Chi.
- New package for noncommutative Groebner bases.
- New domain for univariate power series with arbitrary exponents.
- New special functions: Shi and Chi.
- Several aggregates (in particular tables) allow more general
parameter types.
- New domain for hash tables using equality from underlying
domain.
Bug fixes, in particular:
- Fixed problem with gcd failing due to bad reduction.
- Fixed series of 'acot' and Puiseux series of several special functions.
- Fixed wrong factorization of differential operators.
- Fixed build problem on recent Mac OS X.
Notable changes in FriCAS 1.1.7 (compared to version 1.1.6):
- Improved integration in terms of special functions.
- Updated new graphics framework and graph theory package.
- Added routines for numerical evaluation of several special
functions.
- Added modular method for computing polynomial gcd over algebraic extensions.
- Derivatives of fresnelC and fresnelS are changed to agree
with established convention.
- When printing floats groups of digits are now separated by
underscores (previously were separated by spaces).
- Added C code for removing directories, this speeds up full
build and should avoid build problems on Mac OSX.
Bug fixes, in particular:
- Series expansion now handle poles of Gamma.
- Fixed derivatives of meijerG.
Notable changes in FriCAS 1.1.6 (compared to version 1.1.5):
- Added experimental graph theory package.
- Added power series expanders for Weierstrass elliptic
functions at 0.
- New functions: kroneckerProduct and kroneckerSum for matrices,
numeric weierstrassInvariants and modularInvariantJ, symbolic
Jacobi Zeta, double float numeric elliptic integrals.
- New domains for vectors and matrices of unsigned 8 and 16 bit integers.
- Changes to Spad compiler: underscores which are not needed as escape
are now significant in Spad names and strings, macros with parameters
are supported, added partial support for exceptions, braces can
be used for grouping.
- A few speedups.
- Reduced disc space usage during build.
Bug fixes, in particular:
- Fixed eval of hypergeometricF at 0
- Fixed problem with scope of macros.
- Worked around problems with openinig named pipes in several Lisp
implementations.
- Fixed a problem with searching documentation via HyperDoc.
- Fixed build problem on Mac OSX.
Notable changes in FriCAS 1.1.5 (compared to version 1.1.4):
- Added numeric version of lambertW.
- New function 'rootFactor' which tries to write roots of products
as products of roots.
- 'try', 'catch' and 'finally' are now Spad keywords.
- Experimental support for using gmp with Closure CL (64-bit Intel/Amd
only).
- New categoris CoercibleFrom and ConvertibleFrom. New domain
for ordinals up to epsilon0. New domain for matrices of machine
integers. New package for solving linear equations written as
expressions (faster then general expression solver).
- Functions exported by Product() are now called 'construct', 'first'
and 'second' (instead of 'makeprod', 'selectfirst' and 'selectsecond'
respectively).
- Some functions are now much faster, in particular bivariate
factorization over small finite fields.
- When using sbcl FriCAS now tries to preload statistical profiler.
Bug fixes, in particular:
- Fixed handling of Control-C in FriCAS compiled by recent sbcl.
- Fixed HyperDoc crash due to bad handling of '#'.
- Fixed power series expanders for elliptic integrals.
- Fixed 'possible wild ramifcation' problem with algebraic
integrals.
- 'has' in interpreter now correctly handles '%'.
- Spad compiler can now handle single '=>' at top level of a function.
- Fixed few problems with conditional types in Spad compiler.
Notable changes in FriCAS 1.1.4 (compared to version 1.1.3):
- New domains for combinatorial probability theory by Franz Lehner.
- Improved integration of algebraic functions.
- Initial support for semirings.
- Updated framework for theory of computations.
- In Spad parser '**', '^' and '->' are now
right-associative.
- Spad parser now longer transforms relational operators.
- Join of categories is faster which speeds up Spad compiler.
Bug fixes, in particular:
- Retraction of 'rootOf' from Expression(Integer) to AlgebraicNumber
works now.
- Attempt to print error message about invalid type no longer
crash (SF 2977357).
- Fixed few problems in Spad compiler dealing with conditional exports.
- HyperDoc now should find all function descriptions (previously
it missed several).
Changes:
- Added "jet bundle" framework by Werner Seiler and Joachim Schue,
which includes completion procedure and symmetry analysis for PDE.
- Better splitting of group representations (added Holt-Rees improvement
to meatAxe).
- Added numeric versions of some elliptic integrals and few more elliptic
functions.
- Speeded up FFCGP (finite fields via Zech logarithms).
- New experimental flag (off by default, set via setSimplifyDenomsFlag)
which if on causes removal of irrationalities from denominators.
Usually it causes slowdown, but on some examples gives huge speedup.
It may go away in future (when no longer needed).
- Added experimental framework for theory of computations.
Bug fixes, in particular:
- Numerical solutions of polynomial systems have now required accuracy
(SF 2418832).
- Fixed problem with crashes during tracing.
- Fixed a problem with nested iteration (SF 3016806).
- Eliminated stack overflow when concatenating long lists.
Changes:
- Experimental Texmacs interface and Texmacs format output.
- Guessing package can now guess algebraic dependencies.
- Expansion into Taylor series and limits now work for most
special functions.
- Spad to Aldor translator is removed.
- Spad compiler no longer allows to denote sets using braces.
Bug fixes, in particular:
- Fixed few cases where elementary integrals were returned
unevaluated or produced wrong results.
- Unwanted numerical evaluation should be no longer a problem
(FriCAS interpreter now very strongly prefers symbolic
evaluation over numerical evaluation).
- Fixed a truncation bug in guessing package which causes loss
of some correct solutions.
- TeX and MathML format should correctly put parentheses around
and inside sums and products.
- Fixes few problems with handling of Unicode.
Notable changes since version 1.1.0:
- New graphics framework.
- Support for using GMP with sbcl on 32/64 bit AMD/Intel processors
(to activate it one must use '--with-gmp' option to configure).
- Improvements to integration and normalization. In particular
integrals containing multiple non-nested roots should now work
much faster. Also FriCAS now can compute more integrals
of Liouvillian functions.
- Several new special functions.
- Improvements to efricas.
- Looking for default init file FriCAS now first tries to use
'.fricas.input' and only if that fails it looks for
'.axiom.input'.
Bug fixes, in particular:
- Numeric atan, asin and acos took wrong branch.
- WeierstrassPreparation package did not work.
- Saving and restoring history should be now more reliable.
- Fixed two bugs in Spad compiler related to conditional compilation.
- Fixed a problem with rational reconstruction which affected
guessing package.
Notable changes (compared to version 1.0.9) include:
- New domains and packages: VectorSpaceBasis domain,
DirichletRing domain, 3D graphic output in Wavefront .obj format,
specialized machine precision numeric vectors and matrices (faster
then general vectors and matrices), Html output.
- Support Clifford algebras corresponding to non-diagonal matrix,
added new operations.
- 'normalize' now tries to simplify logarithms of algebraic constants.
- New functions: Fresnel integrals, carmichaelLambda.
- Speed improvements: several polynomial operations are faster,
faster multiplication in Ore algebras, faster computation of
strong generating set for permutation groups, faster coercions.
- Several improvements to the guessing package (in particular new
option Somos for restricting attention to Somos-like
sequences
Bug fixes, in particular:
- FriCAS can now compute multiplicative inverse of a power series
with constant term not equal to 1.
- Fixed a problem with passing interpreter functions to algebra.
- Two bugs causing crashes in HyperDoc interface are fixed.
- FriCAS now ignores sign when deciding if number is prime.
- A failing coercion that used to crash FriCAS is now detected.
- 'has' test sometimes gave wrong result.
- Plotting fixes.
Notable changes (compared to version 1.0.8) include:
- Speed improvements to polynomial multiplication, power series
multiplication, guessing package and coercion of polynomials
to expressions.
- Domains for tensor products.
- 'Complex(Integer)' is now UniqueFactorizationDomain.
- Types in interpreter are now of type 'Type' (instead of 'Domain')
and categories in interpreter are of type 'Category' (instead of
'Subdomain(Domain)').
- Interpreter functions can now return 'Type'.
- New function for files: 'flush'.
- Spad compiler: return in nested functions and nested functions
returning functions.
Bug fixes, in particular:
- Several fixes to guessing package.
- Avoid crash when unparsing equations.
- Equation solver accepts more solutions.
- Fixed handling of 'Tuple' in Spad parser.
- Fixed miscompilation of record constructor by Spad compiler.
Notable changes (compared to version 1.0.7) include:
- Improved version of guessing package. It can now handle
much larger problems than before. Added ability to guess
functional substitution (Mahler) equations.
- Experimental support for build using CMU CL.
- Various speed improvements including faster indexing for two
dimensional arrays.
- By default FriCAS build tries to use SBCL.
- Building no longer require patch.
Bug fixes, in particular:
- correct definition of random() for matrices
- conditionals in .input files work again
- Spad compiler now recognizes more types as equal
- fixed problem with pattern-matching quote
Changes:
- Comparisons between elements of the Expression domain are undefined.
Earlier versions gave confusing results for expressions like '\%e < \%pi',
now FriCAS will complain about '<' being undefined.
- A domain for general quaternions was added.
- Equality in Any is now more reasonable -- it uses equality from
underlying domain if available.
- Messages about loading of components are switched off by default.
- Release build benefits from parallel make.
- In Spad code a single quote now means that the following token
is a symbol.
- Reorganization of algebra sources, in particular several types
have changed (this may affect users Spad code).
Bug fixes, in particular:
- Categories with default package can be used just after definition
(fixes 1.0.6 regression).
- Plots involving 0 or 1 work now.
- Numbers in radix bigger than 10 appear correctly in TeX output.
- Fixed browser crashes when displaying some domains.
- Fix horizontal display of fractions.
- Allow local domains in conditionals (in Spad code).
- Fixed a problem with splitting polynomials and nested extensions.
Notable changes (compared to 1.0.5 version) include:
- the axiom script is no longer installed (use fricas script instead)
- some undesirable simplification are no longer done by default,
for example now asin(sin(3)) is left unevaluated
- support lambda expressions using '+->' syntax and nested functions
in Spad
- better configure, support for Dragonfly BSD
- faster bootstrap, also parallel (this does not affect speed
of release build)
Several bug fixes, in particular:
- fixed a regression introduced in 1.0.4 which caused equality
for nested products to sometimes give wrong result
- corrected fixed output of floating point numbers,
- operations on differential operators like symmetric power work now
- fixed crashes related to coercing power series
- functions returning Void can be traced
Changes since FriCAS 1.0.4:
- improvement to normalize function, it performs now much
stronger simplifications than before
- better integration: due to improved normalize FriCAS can
now integrate many functions that it previously considered
unintegrable
- improvement to Martin Rubey guessing package, for example
it can now guess differential equation for the generating
function of integer partitions
- better support for using type valued functions
- several bug fixes
Changes since FriCAS 1.0.3:
User Interface:
- Add a new emacs mode: just (require 'fricas), M-x fricas and enjoy.
- Add support for inline display of LaTeXed code.
- Add support for mouse wheel.
- Supress SBCL style warnings due to autoloading.
Merge Ralf's wonderful new Aldor interface.
Allow calling type-valued functions.
Improve coercion of types.
Add coercions to InputForm.
Improve unparse.
Use SExpression as representation of OutputForm.
Miscellaneous improvements, bug fixes and cleanups.
Approved by <obache>.
Packaged by Aleksej Saushev with help from Yorick Hardy
in the pkgsrc-wip project.
FriCAS is a fork of Axiom.
FriCAS algebra library is written in a high level strongly typed
language (Spad), which allows natural expression of mathematical
algorithms.
FriCAS uses lightweight developement methodology. Compared to Axiom
FriCAS is significantly restructured -- it is more portable and fixed
several defects. FriCAS removed rather large unused parts (without
removing functionality). It is expected that FriCAS will be much
easier to maintain than original Axiom.