This file records noteworthy changes.
-1.2.0 (<insert date>)
+1.3.0 (19 October 2004)
+* The Clifford classes have been generalized to allow working with Clifford
+ algebras generated by arbitrary symmetric tensors or matrices. Also, a lot
+ of new functions for Clifford algebras have been added, including
+ automorphisms and Moebius transformations. [V. Kisil]
+* Added some basic symbolic and numeric integration facilities. [C. Dams]
+* The multiple polylogarithm Li() now evaluates numerically for arbitrary
+ arguments.
+* New functions G(a,y) and G(a,s,y) added (another notation for multiple
+ polylogarithms).
+
+1.2.4 (12 October 2004)
+* Added ex::unitcontprim() to compute the unit, content, and primitive parts
+ of a polynomial in one go.
+* binomial(n, k) evaluates for non-integer arguments n.
+* Li(2,x) now evaluates for +-I.
+* Optimized Li(2,x).
+* Fixed bug in Li(n,x) (if Li(2,x) was calculated with high precision the
+ enlargement of the look-up table caused a segmentation fault).
+* Fixed another bug in the series expansion of powers, and a bug in
+ power::info().
+
+1.2.3 (13 August 2004)
+* Added variants of dirac_trace() and color_trace() that take the trace over
+ more than one representation label by specifying a set or list of labels.
+* diracgamma::contract_with() uses Chisholm identities in 4 dimensions to
+ produce more compact results.
+* Fixed a bug in the series expansion of powers.
+* The --enable-html-doc and --enable-ps-doc configure options are gone.
+ Documentation in HTML, DVI, PostScript, and PDF formats is now built with
+ "make html", "make dvi", "make ps", and "make pdf", respectively. The only
+ documentation that gets built by default are the tutorial in .info format
+ and the manpages.
+
+1.2.2 (3 August 2004)
+* Added const_preorder_iterator and const_postorder_iterator classes (and
+ associated methods ex::pre/postorder_begin/end()) providing tree traversal
+ with iterators.
+* Fixed the LaTeX output of the varidx class.
+* Fixed bugs in series expansion and complex conjugation.
+* (p.i*p.i).get_free_indices() returns the correct result () instead of (.i).
+* Symbolic functions without any eval(), evalf() etc. functions now work
+ properly.
+* integer_content(), content(), and primpart() now also work for polynomials
+ with rational coefficients (calculating the LCM of coefficients'
+ denominators).
+* Added method matrix::rank().
+* Added function resultant().
+* Added integer_content() function to ginsh.
+
+1.2.1 (23 April 2004)
+* Fixed infinite recursion in atan2_evalf() and improved atan2_eval().
+* Added automatic evaluations for trigonometric functions with negative
+ arguments (e.g. sin(-2) -> -sin(2)).
+* Fixed a static initialization order goof-up.
+* Fixed various bugs in series expansion.
+
+1.2.0 (19 March 2004)
* Added a structure<T> template class for the easy creation of user-defined
algebraic classes.
* Added support for (acyclic) visitors, to allow cleaner implementations of
algebraic algorithms.
-* <iterators>
+* Added a const_iterator class that can be used instead of op()/nops().
* Completely revamped the implementation of expression output. It is now
possible to add new output formats, to change the behavior of predefined
formats at run-time, and to have different output styles for algebraic
* Supplement some (now deprecated) macros by inlined template functions:
- is_of_type(foo, type) -> is_a<type>(foo)
- is_ex_of_type(foo, type) -> is_a<type>(foo)
- - is_exaclty_of_type(foo, type) -> is_exaclty_a<type>(foo)
- - is_ex_exaclty_of_type(foo, type) -> is_exaclty_a<type>(foo)
+ - is_exactly_of_type(foo, type) -> is_exactly_a<type>(foo)
+ - is_ex_exactly_of_type(foo, type) -> is_exactly_a<type>(foo)
- ex_to_foobar(baz) -> ex_to<foobar>(baz)
* rem(c, p[x], x) (c: numeric, p[x]: polynomial) erroneously returned p[x]
instead of c.