add isl_union_map_card
[barvinok.git] / ChangeLog
blob055fe7ed152413be5d68a94c872f9e1d1368cffb
1 version: 0.31
2 date: Tue Jun 29 13:18:52 CEST 2010
3 changes:
4     - use isl for argument parsing
5     - minor compilation fixes
6     - drop bernstein library in favor of isl implementation
7     - drop Omega calculator
8     - the Omega submodule is no longer compiled by default
9     - improved isl based calculator
10     - drop barvinok_enumerate_pip_with_options
11 ---
12 version: 0.30
13 date: Wed Mar 10 18:10:33 CET 2010
14 changes:
15     - add isl interface and new isl based calculator
16     - barvinok_enumerate now returns NaN on infinite problems
17     - minor compilation and bug fixes
18     - support newer versions of TOPCOM
19 ---
20 version: 0.29
21 date: Wed Jul 22 15:14:01 CEST 2009
22 changes:
23     - new version of Laurent expansion based exact summation
24     - minor compilation and bug fixes
25     - add semigroup_holes application
26     - add vector_partition_chambers application
27 ---
28 version: 0.28
29 date: Thu Oct 16 21:56:01 CEST 2008
30 changes:
31     - add omega as submodule
32     - minor compilation and bug fixes
33 ---
34 version: 0.27
35 date: Sun May  4 23:42:49 CEST 2008
36 changes:
37     - add Parker's library for DFA based counting
38     - support nested sums based exact summation
39     - support Laurent expansion based exact summation
40     - handle equalities and factors in summation
41     - support range propagation for computing bounds
42     - support computation of exact bound through iteration
43     - fix conversion from GiNaC's numeric to Values
44 ---
45 version: 0.26
46 date: Wed Jan 16 23:45:17 CET 2008
47 changes:
48     - support computation of generating functions in barvinok_enumerate_e
49     - support polymake 2.3
50     - support GiNaC 1.3.8 and newer
51     - support summation using Bernoulli formula
52     - add and use zsolve from 4ti2 for computing Hilbert bases of cones
53     - support use of piplib for solving LPs
54     - add polyhedron_integer_hull and polytope_minimize
55     - add polytope_lattice_width for computing the lattice widths of polytopes
56 ---
57 version: 0.25
58 date: Tue Sep 11 22:02:22 CEST 2007
59 changes:
60     - add PolyLib and piplib as submodules
61     - remove compatibility with old versions of PolyLib and piplib
62     - support use of piplib for basis reduction
63     - support summation using local Euler-Maclaurin formula for 2D polytopes
64     - support TOPCOM based chamber decompositions
65     - simplify primal decomposition
66 ---
67 version: 0.24
68 date: Sat Jun 30 23:37:31 CEST 2007
69 changes:
70     - support exponential (Todd) substitution for non-parametric problems
71     - support primal and stopped decomposition on parametric problems
72     - support nested sums polynomial approximation of quasi-polynomials
73     - add barvinok_summate for summating a polynomial over a polytope
74     - speed improvements in barvinok_count and polyhedron_sample
75 ---
76 version: 0.23
77 date: Sat Apr 28 20:10:35 CEST 2007
78 changes:
79     - use arpg for argument parsing in most commands
80     - |-
81       support polynomial approximations of quasi-polynomials, including
82       volume computation, Meister's method and replacing fractional parts
83       by constants
84     - add barvinok_maximize for computing upper (and lower) bounds
85     - support non-parametric primal and stopped Barvinok decomposition
86     - periodic number representation now run-time configurable
87     - drop support for ancient PolyLib versions
88     - simplified partitioning of chamber complex
89     - add evalue_eval, an exact version of copmute_evalue
90     - improved handling of large generating functions
91     - integrate barvinok_series functionality into barvinok_enumerate
92     - support use of cdd for solving LPs in basis reduction
93     - initial support for computing bounds over quasi-polynomials
94     - recursive Bernstein expansion
95     - corrections and improvements of lexmin
96     - optionally print quasi-polynomial as list of polynomials
97     - add some documentation
98 ---
99 version: 0.22
100 date: Tue Oct 31 23:15:15 CET 2006
101 changes:
102     - include bernstein library with interface to barvinok and occ
103     - some occ clean-ups
104     - barvinok_count now only returns -1 for unbounded polyhedra with integer points
105     - preliminary implementation of projection via neighborhood complexes
106     - implement generalized basis reduction
107     - add polyhedron_sample
108     - add polytope_scan
109     - add lexmin
110     - some internal reorganization
111     - some gen_fun clean-ups and optimizations
112     - plug some memory leaks
113     - fix some corner cases
114     - shared libraries are no longer built by default
115     - introduce barvinok_options to pass to functions instead of just MaxRays
116     - use same LLL reduction parameter that LattE uses
117     - add some documentation
119 version: 0.21
120 date: Thu Jun 22 20:49:11 CEST 2006
121 changes:
122     - add some documentation
123     - add barvinok_ehrhart
124     - add h_star_vector polymake client
125     - fix some corner cases
126     - more experimental support for enumerating unions of polytopes
127     - rename cdd2polylib.pl to latte2polylib.pl
129 version: 0.20
130 date: Wed Feb 22 12:01:23 CET 2006
131 changes:
132     - fix PIP-based reduction by removing some code and assuming a recent PIP
133     - some memory leaks plugged
134     - optionally use Omega as a preprocessor in barvinok_enumerate_e
135     - integrate verif_ehrhart_e into barvinok_enumerate_e
136     - barvinok_series handles more problem with equalities
137     - add gen_fun::Hadamard_product
138     - experimental support for enumerating unions of polytopes
140 version: 0.19
141 date: Fri Jan 20 22:14:44 CET 2006
142 changes:
143     - include Omega Calculator interface occ
144     - print_enode creates parameter names if none are provided
145     - only use PIP to project out some variables
146     - some header file fixes
147     - C89 fixes again
149 version: 0.18
150 date: Thu Sep 15 11:27:19 CEST 2005
151 changes:
152     - factor polyhedra into independent parts before enumeration
153     - make "random vector" specialization more robust
154     - speed up verif_ehrhart by only checking inside the context
155     - remove {Param,}Polyhedron_Reduce
156     - rename triangularize_cone to triangulate_cone
157     - generalize computation of lexmin/max using PIP
158     - compute the number of lexsmaller elements using PolyLib's LexSmaller
160 version: 0.17
161 date: Mon Aug  1 12:23:50 CEST 2005
162 changes:
163     - fix some configuration problems
164     - include minimal polymake client
166 version: 0.16
167 date: Thu Jun 30 12:10:29 CEST 2005
168 changes:
169     - implement "breadth-first" incremental specialization
170     - implement non-incremental version for series computation
171     - make non-incremental specialization the default again
172     - check for bad PolyLib version at runtime
173     - compiles on Windows (mingw32)
174     - add version option
175     - allow crosscompilation
176     - compute the coefficients of an Ehrhart series
177     - fix conversion of PIP output to polyhedra
178     - allow direct verification of Ehrhart series
180 version: 0.15
181 date: Sun Dec 12 23:00:40 CET 2004
182 changes:
183     - export Polyhedron_Project
184     - allow verification of step-functions computed from Ehrhart series
185     - optionally compute step-functions incrementally
186     - disable possibly incorrect optimization
187     - minor optimizations in Ehrhart series computations
189 version: 0.14
190 date: Wed Nov 17 19:22:23 CET 2004
191 changes:
192     - use code for computing series to count non-parametric polytopes
193     - add conversion from series to explicit function
194     - fix removal of redundant equalities
196 version: 0.13
197 date: Sat Oct 16 12:13:30 CEST 2004
198 changes:
199     - use slightly larger random numbers
200     - change basis to remove existential variable
201     - fix bug in reduction
202     - handle empty PIP solution
203     - add utility to remove equalities
205 version: 0.12
206 date: Sun Oct  3 20:47:11 CEST 2004
207 changes:
208     - reduce memory requirements
209     - add cdd2polylib.pl
210     - add patch for NTL 5.3.2
211     - experimental support for Ehrhart series
212     - compile fix on systems that lack <getopt.h>
214 version: 0.11
215 date: Sat Sep 18 14:49:40 CEST 2004
216 changes:
217     - fix minor bugs
218     - find and use PIP if available
219     - don't overallocate matrices on newer PolyLibs
220     - verification program for enumeration of integer projections
221     - summation of enumerations
222     - avoid gccisms
223     - support older versions of GMP
225 version: 0.10
226 date: Tue Jul  6 22:09:11 CEST 2004
227 changes:
228     - install header files
229     - modulo representation changed to fractionals
230     - perform some simplifications on the modulo representation
231     - barvinok_enumerate returns a malloc'ed evalue
232     - a few bugs in barvinok_enumerate_e removed
233     - optionally print an indication of the size of an enumeration
234     - emask added
235     - bug in triangularization fixed
236     - bug in polyhedron reduction fixed
237     - verif_ehrhart.c should compile on C89 systems again
239 version: 0.09
240 changes:
241     - bug in polyhedron reduction fixed
243 version: 0.08
244 date: Sun Feb 22 21:15:00 CET 2004
245 changes:
246     - remove remaining part of Kristof's Ehrhart manipulation code
247     - optimize modulo expression based on validity domain
248     - support partition evalues
249     - factor out 1D polytopes
250     - validity domains can now be unions of polytopes
251     - optionally convert modulo representation to lookup-table
252     - rename indicator to relation
253     - add DomainIncludes
255 version: 0.07
256 changes:
257     - support "indicator" evalues
258     - support equalities for modulo representation
260 version: 0.06
261 changes:
262     - remove part of Kristof's Ehrhart manipulation code
263     - partial support for modulo representation
264     - support cvs version of PolyLib
266 version: 0.05
267 date: Thu Nov 27 13:35:59 CET 2003
268 changes:
269     - |-
270       include code from Kristof Beyls for manipulating Ehrhart
271       polynomials
272     - |-
273       implement barvinok_enumerate for constructing Ehrhart
274       polynomials using barvinok's algorithm
276 version: 0.04
277 date: Thu Nov  6 01:36:25 CET 2003
278 changes:
279     - |-
280       allow specification of max #constraints 
281       for those without automatically growing chernikova tables
282     - fix a few small bugs
283     - some minor optimizations
285 version: 0.03
286 date: Mon Nov  3 16:35:57 CET 2003
287 changes:
288     - fix a number of bugs
289     - add tests
291 version: 0.02
292 date: Mon Oct 20 14:15:45 CEST 2003
293 changes:
294     - change name from count to barvinok_count
295     - return -1 if polyhedron is unbounded
296     - trivially optimize counting in presence of some independent constraints