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