decomposer.cc: avoid use of half-open cones
commitc6a7c72cc5856df74b7e7cf57992acd9f85ca748
authorSven Verdoolaege <skimo@kotnet.org>
Thu, 6 Sep 2007 20:00:59 +0000 (6 22:00 +0200)
committerSven Verdoolaege <skimo@kotnet.org>
Sat, 8 Sep 2007 12:01:56 +0000 (8 14:01 +0200)
tree14354f0f669cad6aec3618ab27430877b384716f
parent8e24fc30dd9e701f6b7385b8e5989f6f9756ac6d
decomposer.cc: avoid use of half-open cones

Since we are only dealing with half-open simplicial cones
and since generating functions of non-pointed cones are zero,
we can replace a cone pos { u_1,...,u_{i-1},u_i,u_{i+1}...,u_d },
where the facet opposite u_d is open by
    pos { u_1,...,u_{i-1},u_{i+1}...,u_d }
-pos { u_1,...,u_{i-1},-u_i,u_{i+1}...,u_d }
where the first cone is not pointed (and can therefore be ignored)
and the facet opposite -u_i in the second cone is closed.
16 files changed:
barvinok.cc
bfcounter.cc
bfcounter.h
counter.cc
counter.h
decomposer.cc
decomposer.h
evalue_convert.cc
lattice_point.cc
lattice_point.h
lexmin.cc
reducer.cc
reducer.h
tcounter.cc
tcounter.h
testlib.cc