[PPL-devel] How to do Powerset element normalization

Pedro Vasconcelos pv at dcs.st-and.ac.uk
Tue Nov 9 19:18:14 CET 2004


Hello,

I am starting to use the closed convex polyhedra powerset domain for my
PhD research. Since I want to use it from Haskell, I'm extending the C
and Haskell bindings (built on top of the C interface to PPL version
0.6.1). So far I have managed to get a minimal interface working --
creating powersets, adding disjuncts and constraints and outputing
results.

Now the question I have is: what is the prefered way to ensure that a
powerset is Omega-reduced, i.e. all its elements are maximal wrt the
original partial order (in particular, removing bottom elements)?
Polyhedra_PowerSet<C_Polyhedron> has a member function `omega_reduce()'
that is suposed to do just this, but it is protected, so the compiler
complains if I try to use in the C interface. The only solution I found
is to use `pairwise_reduce()' instead. It seems to do what I want, but I
am confused as to the reason for the protected function.

Please excuse me (and please tell me!) if this is not the right forum to
ask these questions.

Best regards,

Pedro Vasconcelos

-- 
Pedro Vasconcelos, School of Computer Science, University of St Andrews
-----------------------------------------------------------------------
"The difference between Theory and Practice 
is greater in Practice than in Theory."



More information about the PPL-devel mailing list