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