From 85e4e544d861cc767c69dda0d31ccc7870796fc6 Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Fri, 7 Mar 2008 10:33:01 +0100 Subject: [PATCH] evalue: reduce_evalue: add note on some missed opportunities for reduction --- evalue.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/evalue.c b/evalue.c index 0772d5e..5a4eabb 100644 --- a/evalue.c +++ b/evalue.c @@ -896,6 +896,12 @@ static void _reduce_evalue_in_domain(evalue *e, Polyhedron *D, struct subst *s) dim = D->Dimension; if (D->next) D = DomainConvex(D, 0); + /* We don't perform any substitutions if the domain is a union. + * We may therefore miss out on some possible simplifications, + * e.g., if a variable is always even in the whole union, + * while there is a relation in the evalue that evaluates + * to zero for even values of the variable. + */ if (!D->next && D->NbEq) { int j, k; if (s->max < dim) { -- 2.11.4.GIT