= PolyBoRi = == Description == The core of PolyBoRi is a C++ library, which provides high-level data types for Boolean polynomials and monomials, exponent vectors, as well as for the underlying polynomial rings and subsets of the powerset of the Boolean variables. As a unique approach, binary decision diagrams are used as internal storage type for polynomial structures. On top of this C++-library we provide a Python interface. This allows parsing of complex polynomial systems, as well as sophisticated and extendable strategies for Gröbner base computation. PolyBoRi features a powerful reference implementation for Gröbner basis computation. ==Maintainers == * Martin Albrecht * Alexander Dreyer * Burcin Eröcal == Upstream Contact == * Author: The PolyBoRi Team * Email: brickenstein@mfo.de (Michael Brickenstein) alexander.dreyer@itwm.fraunhofer.de (Alexander Dreyer) * Website: http://polybori.sourceforge.net/ == Dependencies == * GNU patch * Python * Scons * Boost * M4RI * png/libpng12 (accomplished because Python and M4RI depend on it) * libz (accomplished because Python and libpng depend on it) == Patches == All previously contributed patches were merged upstream. == Special Files == * custom.py - configuration file for PolyBoRi's build system, sets local prefix and install paths to Sage directories == Changelog == === polybori-0.8.3 (Alexander Dreyer, 30 January 2013) === * Updating sources to PolyBoRi's release 0.8.3 (Sage Trac #13989) === polybori-0.8.2.p0 (Alexander Dreyer, 30 December 2012) === * Changing unnecessary assertion to exception (Sage Trac #13883) === polybori-0.8.2 (Alexander Dreyer, 26 June 2012) === * Updating sources to PolyBoRi's release 0.8.2 (Sage Trac #13124) === polybori-0.8.1.p2 (Jeroen Demeyer, 18 May 2012) === * Trac #12963: Disable the Boost testing framework when SAGE_FAT_BINARY=yes. This prevents linking against a system -lboost_unit_test_framework library (which Sage doesn't provide). * Move sources from src/polybori-0.8.1 to src/ * Small cleanup of SPKG.txt and spkg-install. === polybori-0.8.1.p1 (Alexander Dreyer, March 26th, 2012) === * Rebased spkg on polybori-0.8.0.p2 (Sage Trac #12750) * Working around broken scons on sun (Sage Trac #12655, comment:29) * Added -Wno-long-long to CXXFLAGS (accompanying -std=c++98, comment:55) === polybori-0.8.1.p0 (Alexander Dreyer, March 7th, 2012) === * Updating sources to PolyBoRi's release 0.8.1 (Sage Trac #12655) === polybori-0.8.0.p2 (Alexander Dreyer, March 26th, 2012) === * Fix scoping/name look-up issue and support flags from the environment === polybori-0.8.0.p1 (Alexander Dreyer, September 28th, 2011) === * improved detection of libM4RI flags (backport from upcoming 0.8.1) === polybori-0.8.0.p0 (Alexander Dreyer, September 8th, 2011) === * Updating sources to PolyBoRi's release 0.8.0 === polybori-0.8-rc.p3 (Alexander Dreyer, September 2nd, 2011) === * Updating sources to rc5 and merged with preliminary polybori-0.7.1.p5.spkg === polybori-0.8-rc.p2 (Alexander Dreyer, August 17th, 2011) === * Updating sources to rc3 and merged with official polybori-0.7.1.p4.spkg === polybori-0.8-rc.p1 (Alexander Dreyer, August 15th, 2011) === * Updating sources to recent release candidate rc2 of PolyBoRi 0.8 === polybori-0.8-rc.p0 (Alexander Dreyer, August 10th, 2011) === * Updating sources to release candidate of PolyBoRi 0.8 === polybori-0.8-alpha.p3 (Alexander Dreyer, August 5th, 2011) === * Removing workaround for missing default constructors from sources === polybori-0.8-alpha.p2 (Alexander Dreyer, August 4th, 2011) === * Updating sources to PolyBoRi 0.8 alpha1 === polybori-0.8-alpha.p1 (Alexander Dreyer, July 15th, 2011) === * First working Version of the PolyBoRi 0.8 spkg === polybori-0.7.1.p6 (Alexander Dreyer, 19 September, 2011) === * #11574: add -msse2 only of __M4RI_HAVE_SSE2 is defined *and* nonzero === polybori-0.7.1.p5 (Alexander Dreyer, 28 August, 2011) === * #11574: add -msse2 option to compile flags if m4ri uses sse2 === polybori-0.7.1.p4 (Alexander Dreyer, August 9th, 2011) === * Rebased on polybori-0.7.0.p4 === polybori-0.7.0.p4 (Jeroen Demeyer, 8 August 2011) === * Trac #11664: Make all files world-readable === polybori-0.7.1.p3 (Alexander Dreyer, April 27th, 2011) === * Another backport from 0.8: use jinja2 for plotting (if available) === polybori-0.7.1.p2 (Alexander Dreyer, April 27th, 2011) === * Rebase on Sage 4.7's official spkg for PolyBoRi 0.7-0 === polybori-0.7.1.p1 (Alexander Dreyer, April 27th, 2011) === * Backporting fix for compatibility with new M4RI from PolyBoRi 0.8 === polybori-0.7.1.p0 (Alexander Dreyer, April 27th, 2011) === * Upgrading sources to PolyBoRi 0.7.1 (#12261) === polybori-0.7.0.p3 (Alexander Dreyer, May 13th, 2011) === * Fixed building on OS X 10.4 PPC G4 (#11331) === polybori-0.7.0.p2 (Alexander Dreyer, March 30th, 2011) === * Fixed building on OpenSolaris with gcc-4.6.0 (#11083) === polybori-0.7.0.p1 (Alexander Dreyer, March 8th, 2011) === * backporting a bugfix === polybori-0.7.0.p0 (Alexander Dreyer, February 25th, 2011) === * fixing SIGSEGVs === polybori-0.7.0 (Martin Albrecht, February 18th, 2011) === * New upstream release. === polybori-0.6.4.p6 (undocumented, September 9th, 2010) === === polybori-0.6.4.p5 (Alexander Dreyer, August 20th, 2010) === * Backporting a fix from upcoming PolyBoRi 0.7 which allows linking PolyBoRi as dynmaic library (#9768). === polybori-0.6.4.p4 (Alexander Dreyer, August 10th, 2010) === * Importing PolyBoRi patches from upstream mercurial to fix interaction with external M4RI library (#9717) - http://bitbucket.org/brickenstein/polybori/changeset/6ef7402d935b - http://bitbucket.org/brickenstein/polybori/changeset/b692c8181e94 === polybori-0.6.4.p3 (Martin Albrecht, August 10th, 2010) === * Applying a patch by Alexander Dreyer to fix error in some crypto example (#9717) === polybori-0.6.4.p2 (Leif Leonhardy, July 10th, 2010) === * Removed Michael Abshoff from maintainer list (see #7738) * Deleted Boost source tree again since it was split off into a separate spkg (see below, 0.5.rc.p7), modified spkg-install accordingly * Deleted M4RI source tree, because it is a standard Sage package * Little clean-up and minor fixes in patches/custom.py - Note that CFLAGS etc. are still *overwritten* rather than modified! * Updated "Dependencies" section above === polybori-0.6.4.p1 (Mike Hansen, May 26th, 2010) === * Added a patch to make PolyBoRi build on Cygwin (#7337) === polybori-0.6.4 (Burcin Erocal and Alexander Dreyer, March 12th, 2010) === * upgraded to current upstream release * removed obsolete patches (SConstruct, cpu_stats.c) * removed obsolete work arounds (delete shared libraries and touch pbori.pyx) === polybori-0.6.3-r1647-20091028 (Martin Albrecht, October 29th, 2009) === * upgraded to current mercurial tip (which did pass the PolyBoRi testsuite last night) === polybori-0.6.3-20090827 (Martin Albrecht, August 27th, 2009) === * create flags.conf if it doesnt exist === polybori-0.6.3-20090825 (Martin Albrecht, August 25th, 2009) === * fixes for solaris === polybori-0.6.3-20090820 (Martin Albrecht, August 20th, 2009) === * fixing a few performance bottlenecks === polybori-0.6.3-20090728 (Martin Albrecht, July 28th, 2009) === * new upstream release * lots of refactoring === polybori-0.5rc.p7 (Michael Abshoff, May 15th, 2009) === * Split cropped boost from the PolyBori.spkg === polybori-0.5rc.p6 (Michael Abshoff, November 30th, 2008) === * Apply patch by Alexander Dreyer to fix manpage permission issues (#4321) * Fix permission issues for boost includes === polybori-0.5rc.p4 (Michael Abshoff, September 9th, 2008) === * only force a rebuild of the PolyBoRi extension if the Sage library has been installed === polybori-0.5rc.p3 (Michael Abshoff, September 7th, 2008) === * Delete dynamic libs to force static linking * touch pbori.pyx to force a rebuild of the extension === polybori-0.5rc.p2 (Michael Abshoff, September 6th, 2008) === * Backport PolyBoRi 0.3.x fixes === polybori-0.5rc.p1 (Martin Albrecht, September 1st, 2008) === * make PolyBoRi use the dynamic libm4ri === polybori-0.5rc.p0 (Martin Albrecht, September 1st, 2008) === * fixed build problems. === polybori-0.5rc (Tim Abbott, Jul 10, 2008) === * update to PolyBoRi-0.5rc release. * Remove patches for problems fixed upstream. === polybori-0.3.1.p3 (Michael Abshoff, William Stein, May 17, 2008) === * cygwin support by patching cpu_stat.c (this should be upstreamed) * Cygwin support by modifying SConstruct === polybori-0.3.1.p2 (Michael Abshoff, April 26th, 2008) === * remove dead link (fixes #3017) === polybori-0.3.1.p1 (Michael Abshoff, April 11th, 2008) === * Update CCuddCore.h - fixes memory leak (Alexander Dreyer - see #2822) * Fix "Invalid read" cause by linking multiple dynamic libraries (Michael Abshoff, #2822 * add -fPIC to the default build flags in custom.py === polybori-0.3.1.p0 (Michael Abshoff, April 9th, 2008) === * add debug info the the default build flags * fix OSX 10.4 specific build issue (#2865) === polybori-0.3.1 (Burcin Erocal) === * update to PolyBoRi-0.3.1 release * remove patches required for the previous version * reset hg repository === polybori-0.1-r7 (Ralf-Philipp Weinmann) === * pulled in memleak fix in groebner/src/nf.cc from PolyBoRi repo * comment changes on precomputed Groebner base tables pulled in from repo these remove claims about possible patents. === polybori-0.1-r6 (Michael Abshoff) === * add ENV = os.environ to SConstruct (fixes #1553) === prior releases === * lost in the dark ages