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