X-Git-Url: https://ginac.de/ginac.git//ginac.git?a=blobdiff_plain;f=NEWS;h=d903eb78210759f295ffe3b1298a8ff341692d91;hb=5f37c6e1a661192a68a77ed2b6f2d3a74199cd3c;hp=276e9ccbb6f0ca40431ad2d125ca9ce080a7dd67;hpb=e99dbce56fa733fdba17c78aec312ffd44cb20bd;p=ginac.git diff --git a/NEWS b/NEWS index 276e9ccb..d903eb78 100644 --- a/NEWS +++ b/NEWS @@ -1,8 +1,79 @@ This file records noteworthy changes. -0.9.1 () +1.1.0 () +* Removed deprecated macros is_ex_a, is_ex_exactly_a and friends for good. +* Made the hashing more simple and efficient. +* The scalar_products mechanism allows the specification of an index dimension. + +Backlog from 1.0.n: +* Powers of indexed objects are now parenthesized correctly in LaTeX output. +* Input parser handles indices (they have to be specified in the same list + as the symbols). +* Added some limited support for subspaces in the idx and tensor classes. +* Fixed a bug in canonicalize() (antisymmetric canonicalization of an already + sorted list containing two or more equal objects failed to return 0). +* simplify_indexed() now raises/lowers dummy indices to canonicalize the index + variance. This allows some simplifications that weren't possible before, + like eps~a.b~c~d*X.a*X~b -> 0 and X.a~a-X~a.a -> 0. +* Implemented relational::subs(). +* Fixed bug in simplify_ncmul() for clifford objects. +* Fixed LaTeX output of indexed and matrix objects and powers thereof. +* Fixed matrix::pow(n) for n==0. +* "(x+1).subs(x==x-1)" now returns the correct result "x" instead of "x-1". +* (l)degree(s), coeff(s, n) and collect(s) were extended to accept expressions + of any class (except add/mul/ncmul/numeric) for "s". They should even work + if "s" is a "power" object, as long as the exponent is non-integer, but with + some limitations. For example, you can "collect(a*2^x+b*2^x, 2^x)" to get + "(a+b)*2^x", but "degree(2^(3*x), 2^x)" yields 0 instead of 3). +* Speedup in expand(). +* Faster Bernoulli numbers (Markus Nullmeier). +* Fixed a bug where quo() would call vector::reserve() with a negative + argument. +* Several small bugfices in code generation, output and documentation. + +1.0.2 (19 December 2001) +* Input parser recognizes "sqrt()", which is also used in the output. +* divide(a,b,q) only modifies q if the division succeeds; also, divide(a,b,a) + works now. +* Fixed small bug in dummy index renaming which could cause it to not + recognize renamable indices in some cases. +* power::degree() and power::ldegree() throw an exception when encountering + a non-integer exponent. +* Add output-support for Python bindings. + +1.0.1 (22 November 2001) +* Function sqrfree() handles a few more cases now. +* Class relational has real canonical ordering now. +* Handle obscene libreadline version numbers when building ginsh. + +1.0.0 (6 November 2001) +* Some internal reorganization resulting in a general speed-up. +* The last 3 evaluated expressions in ginsh are now referred to with the + tokens '%', '%%' and '%%%'. The old '"', '""' and '"""' remain for + compatibility but may be removed in a future version of GiNaC. + +0.9.4 (20 September 2001) +* Functions have better support for external scripting languages. +* Interface cleanups and bugfixes. +* Fix silly bug in evalf() that prevented things like 2^Pi being computed. + +0.9.3 (16 August 2001) +* series expansion now much more consistent for small order expansion. +* lsolve() accepts algorithmic hint as parameter. + +0.9.2 (31 July 2001) +* Epsilon tensor is more functional. +* simplify_indexed() is better at detecting expressions that vanish for + symmetry reasons. +* Several little bugfixes and consistency enhancements. + +0.9.1 (27 June 2001) +* Ctors of class numeric are not explicit any more. All built-in callers for + pseudofunctions are now templated and default to ex arguments which relaxes + the need for explicit ctors. * New functions/methods: - - remove_first() and remove_last() for lists + - find() + - remove_first(), remove_last(), sort() and unique() for lists - symmetrize_cyclic() - decomp_rational() * Instead of just totally symmetric or antisymmetric, complex symmetries @@ -19,13 +90,17 @@ This file records noteworthy changes. take the trace on both sides, using diff() on a matrix differentiates every element etc. * diff() works properly with non-commutative products and indexed objects. +* New option flag "expand_function_args" for expand(). * Supplement some (now deprecated) macros by inlined template functions: - is_of_type(foo, type) -> is_a(foo) - is_ex_of_type(foo, type) -> is_a(foo) - is_exaclty_of_type(foo, type) -> is_exaclty_a(foo) - is_ex_exaclty_of_type(foo, type) -> is_exaclty_a(foo) - ex_to_foobar(baz) -> ex_to(baz) -* rem(c, p[x], x) erroneously returned p[x] instead of c. +* rem(c, p[x], x) (c: numeric, p[x]: polynomial) erroneously returned p[x] + instead of c. +* Small bugfixes in pattern matching. +* Updated libtool to version 1.4. 0.9.0 (7 June 2001) * In the output and in ginsh, lists are now delimited by { } braces, and