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