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