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