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