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