= pynac =
== Description ==
A modified version of GiNaC that replaces the dependency on CLN by Python.
== License ==
GPL V2+
== SPKG Maintainers ==
* Burcin Erocal - burcin spam.erocal.org
== Upstream Contact ==
* Burcin Erocal - burcin spam.erocal.org
* William Stein - wstein spam.gmail.com
* Mike Hansen - mhansen spam.gmail.com
== Dependencies ==
Python
== Special Update/Build Instructions ==
If build fails trying to run autoheader, run
autoreconf -i --force
in the src directory.
== Changelog ==
=== pynac-0.3.0 (Burcin Erocal, 27 May 2013) ===
* Trac #9880: update to version 0.3.0
* Fix comparison functions so that they provide a SWO
=== pynac-0.2.6 (Jean-Pierre Flori, 21 November 2012) ===
* Trac #13729: update to version 0.2.6.
* Trac #13609: normalization of content in GF(2^k) leads to infinite loop.
* Trac #13587: invalid cancellation of infinities.
* Trac #13262: printing of parenthesis around exponent of power objects.
=== pynac-0.2.5 (Jean-Pierre Flori, 31 July 2012) ===
* Trac #13316: update to version 0.2.5.
* Trac #13107: fix division by Python longs.
=== pynac-0.2.4 (Jean-Pierre Flori, 23 May 2012) ===
* Trac #12950: Include patches to fix:
* Trac #11155: abs(pi + I) -> pi + I
* Trac #11423: atan2(0,0) should be undefined
* Trac #11919: pickling of user defined symbolic functions without custom
methods
* Trac #12303: beta function should remain symbolic for exact inputs
* Use Python when comparing Python objects wrapped in numerics
* Complete rewrite of the code handling various types of infinities
* Remove upstream revision control within the src directory
* Add .hgignore file to exclude src directory
=== pynac-0.2.3.p1 (Jeroen Demeyer, 13 February 2012) ===
* Trac #12501: touch src/config.h.in to prevent autoheader from running.
=== pynac-0.2.3.p0 (Simon King, December 10, 2011) ===
* #12131: Use --libdir, to make the package work on openSUSE.
=== pynac-0.2.3 (Burcin Erocal, May 31, 2011) ===
* Fix tests for custom evaluation functions defined in Python to use
bitwise and (Sage issue #9240)
* Remove extra {} printed when typesetting mul objects
* Merge patches from upstream:
* Sage issue #10964: fix conjugates of mul objects with rational exponents
* Sage issue #11352: fix is_polynomial()
=== pynac-0.2.2 (Burcin Erocal, May 9, 2011) ===
* Merge patches from upstream with the following:
* Sage issue #9981 where (5-e^x).substitute(x=log(x)) gave 5-log(x)
* Sage issue #9947 where add.eval() did not canonicalize expression properly
* Sage issue #8943, series expansion can handle some trivial singularities now
* conjugate functions for sinh, cosh and tanh
* bunch of fixes for msvc compiler
=== pynac-0.2.1 (Burcin Erocal, September 12, 2010) ===
* Print rational functions and mul objects better.
* Include patches from GiNaC to fix memory leaks in power::eval and improve
conjugation of special functions.
* Allow disabling automatic evaluation in add and mul constructors.
* zeta(1) now returns UnsignedInfinity.
* Fix csgn function to conform to the original GiNaC specification.
* Do not generate function.{h,cpp} automatically.
=== pynac-0.2.0.p5 (David Kirkby, July 16, 2010) ===
* #7861 Export CC="$CC -m64" and CXX="$CXX -m64" if
SAGE64 is set to "yes". This is because setting
CFLAGS and CXXFLAGS to include the -m64 option was
not sufficient to get this to build properly as 64-bit
on Solaris 10 or OpenSolaris.
=== pynac-0.2.0.p4 (Burcin Erocal, July 11, 2010) ===
* Fix latex typesetting of rational functions. #9314
=== pynac-0.2.0.p3 (William Stein, June 4, 2010) ===
* Change to src/ for trac 9135.
=== pynac-0.2.0.p2 (William Stein and Mike Hansen, June 3, 2010) ===
* autoreconf and merge in trac 9086
=== pynac-0.2.0 (Burcin Erocal, May 5, 2010) ===
* Add support for GCC 4.5.0.
* Move Sage interface functions to a function table, to add Cygwin support.
* Add autoconf macros to detect Python.
* Import GiNaC patch to make binomial(n,0) -> 1.
* Remove extra parenthesis when typesetting rational fractions.
=== pynac-0.1.12 (Burcin Erocal, April 2, 2010) ===
* Apply upstream patches to fix "division by zero" error on atan2(-pi,0)
* Apply upstream patches to fix incorrect use of STL iterators.
=== pynac-0.1.11 (Burcin Erocal, January 19, 2010) ===
* Fix unarchiving overloaded functions.
* Move numeric evaluation of log higher in eval.
* Fix serious bug in printing where coefficients were printed with -, but not
negated.
* Change typesetting of rational functions to separate the numerator and
denominator of the coefficient as well.
* Speed up real_part() by removing calls to is_real().
* Allow overriding builtin function custom methods from python.
* Allow setting domain and latex_name of symbols.
* Improve deduction capabilities of info() for arithmetic classes.
=== pynac-0.1.10 (Burcin Erocal, November 22, 2009) ===
* Minor changes to auto* files to make them work with libtool-2.
* Fix hash collisions for fderivatives yet again.
* Fix segfault when mul tries to simplify powers of exp.
* Latex typesetting of nested powers print valid latex code.
* Latex typesetting of add and mul uses \left( and \right).
=== pynac-0.1.10.a0 (Burcin Erocal, November 19, 2009) ===
* Pass parent instead of precision to custom evalf methods
* Pass function instance to custom methods of functions
* Change typesetting to match Sage conventions
* Handle exceptions while autoevaluating exp
=== pynac-0.1.9.p0 (Burcin Erocal, September 24, 2009) ===
* Put parenthesis around exp when printing powers.
=== pynac-0.1.9 (Burcin Erocal, September 22, 2009) ===
* Only simplify exp(a)^b -> exp(a*b) when b is an integer.
* Fix latex printing of log to \log (was \ln).
* Fix hash collision for fderivatives.
* Fix comparison of fderivatives and functions.
* Allow numeric approximation of functions on inexact input again.
* Change printing of lgamma to log_gamma and \log \Gamma.
=== pynac-0.1.8.p2 (Burcin Erocal, August 1, 2009) ===
* Fix latex typesetting of conjugate(), real_part() and imag_part()
* When calculating hash of fderivative use paramset to avoid collisions
* Add support for infinity to functions defined in inifcns_trans.cpp
* Add parameter to disable application of chain rule while differentiating
symbolic functions.
=== pynac-0.1.8.p1 (Mike Hansen, June 19, 2009) ===
* Updated build path to work with Python 2.6.
=== pynac-0.1.8.p0 (Burcin Erocal, June 14, 2009) ===
* Fix serios bug in comparison of mul and pow objects.
* Conjugates of symbolic functions no longer just apply conjutage to the
arguments
* Latex printing of exp now works correctly.
* Better error handling for calls to python printing functions.
* polylog prints as Li to match Sage.
=== pynac-0.1.8 (Burcin Erocal, June 4, 2009) ===
* Add error handling for py_get_constant
* Simplify exp(a)*exp(b) -> exp(a+b)
* Revert previous changes to symbol::calchash
=== pynac-0.1.7.p0 (William Stein, June 1, 2009) ===
* Fix typo in spkg-install found by Mariah Lenox.
=== pynac-0.1.7 (Mike Hansen, et al. May 18, 2009) ===
* Many fixes needed to make Pynac work as the default system for
symbolic manipulation in Sage.
=== pynac-0.1.6 (Burcin Erocal, May 6th, 2009) ===
* Fix error handling in Number_T::hash().
* Add support for archiving numeric and function objects.
* Fix comparison bug in mul.
* Fix gcc warnings about conversion of strings to char*.
* Change exp to not prints exponents of 1.
* Add power method to exp so that (e^x)^y -> e^(x*y).
=== pynac-0.1.5 (Burcin Erocal, April 13th, 2009) ===
* Change printing of pi (Pi -> pi)
* Delay evaluation of special functions until .evalf() is called
* Add precision parameter to .evalf()
=== pynac-0.1.4 (Burcin Erocal, April 11th, 2009) ===
* Add support for arithmetic with infinity.
* Use python repr function for printing numeric objects.
* Print paranthesis in latex mode with \left and \right.
* Call python for latex names of symbols.
* Support calling user specified python functions to print function instances.
* Call python for printing function and fderivative.
=== pynac-0.1.3 (Burcin Erocal, February 26th, 2009) ===
* Fix serious bug in expairseq::compare_same_type which resulted in wrong
simplifications.
* Remove dependencies on lex, yacc, and dlopen.
=== pynac-0.1.2 (Burcin Erocal, January 30th, 2009) ===
* factorial now prints as factorial(n), not n!.
* Change comparison functions to make higher degree terms print first.
* functions (and fderivatives) now print after other types.
* Add latex printing for binomials.
* exp is now printed as e^x.
* Change the way rational functions are printed to match Sage.
=== pynac-0.1.1.p0 (Michael Abshoff, January 20th, 2009) ===
* add OSX 64 bit build support
=== pynac-0.1.1 (Burcin Erocal, October 15th, 2008) ===
* Allow python functions to provide custom evaluation, derivative, series
expansion, etc. functionality of symbolic functions
* Change names of more files to prevent clashing with a ginac installation.
* Fix several bugs when working with modular coefficients.
=== pynac-0.1.p0 (Burcin Erocal, Michael Abshoff, September 20th, 2008) ===
* Change library name, include file location to reflect the package name and not conflict with ginac
* Change library version numbers to reflect package version
* Fix build problems where autoheader was run
=== pynac-0.1 (William Stein) ===
Summary of changes from GiNaC:
* GiNaC::numeric was replaced completely to rely on Python and Sage types instead of CLN.
* Use Pari via Sage to compute numerical values for special functions.
* Printing order is consistent between different runs.
* Inverse trig functions print with "arc" instead of "a"