AN APPLICATION OF QUANTIFIER ELIMINATION TO

AN APPLICATION OF QUANTIFIER ELIMINATION
TO MATHEMATICAL BIOLOGY
CORINNE CHAUVIN
Wilhelm-Schickard-Institut fur Informatik
Universitat Tubingen, 72076 Tubingen, Germany
E-mail: [email protected]
and
MYRIAM MULLER
E-mail: [email protected]
and
ANDREAS WEBER
Wilhelm-Schickard-Institut fur Informatik
E-mail: [email protected]
ABSTRACT
We were interested in the change of the qualitative behaviour of a parameterized
system of non-linear dierential equations as they occur in epidemiology, which are
given by rational functions of the parameters. At a certain point of the computation, questions of the following form arose: if a certain rational function of the
parameters is equal to one, is it true that another rational function is less than
zero for all parameters? We had diculties to solve this question by the use of
commercial algebra systems. However this problem can be formulated as a rst
order formula over the reals and can thus be solved by a quantier elimination
method. We have used the implementation of H. Hong and for three parameters
the necessary computation time on a Sparc 2 was about one minute. The method
was not only valuable for deciding the formula, but in several cases the returned
equivalent quantier-free formula gave additional information.
1. Introduction
We were interested in the change of the qualitative behaviour of a parameterized system
of non-linear differential equations as they occur in epidemiology, which are given by
rational functions of the parameters. At a certain point of the computation, questions of the
following form arose: if a certain rational function of the parameters is equal to one, is it
true that another rational function is less than zero for all parameters? We had difficulties
to solve this question by the use of commercial algebra systems.
However this problem can be formulated as a first order formula over the reals and can
thus be solved by a quantifier elimination method1 2 3 . The formula describing the general
problem — which involves 9 parameters — could not be solved by the system we used.
However it is possible to fix some of the parameters by biometrical arguments. It was
287
possible to solve the corresponding quantifier elimination problem in several of these cases
in some seconds on a Sparc 2 using the program of H. Hong.
The outline of the paper is as follows. In Sec. 2 we will give a short introduction to
the method of quantifier elimination over real closed fields. In Sec. 3 we will state the
biometrical problem and will perform some reductions which reduce the problem to one
which can be solved by the quantifier elimination method.
The results of the quantifier elimination will be given in Sec. 4. A table summarizing
the computation times can be found in Sec. 5.
2. The Quantifier Elimination Method — An Introduction
The quantifier elimination method finds its origin in a paper from A. Tarski published
in 1951: “A Decision Method for Elementary Algebra and Geometry”1 . Tarski’s purpose
was to prove that the elementary theory for reals was decidable and to give a method in
order to decide whether a sentence of this theory was true or not. Tarski wanted to design
a method such that one needs no “intelligence” to apply it, but that can be applied stepby-step following the rules he gave. In his paper, Tarski presented a few examples of the
application of his method. He found the solutions rather due to his mathematical intuition
than by applying exactly his own method. The problem was that the method needed too
many computation steps in order to be actually efficient. Moreover, the complexity of the
method is such that no actually efficient implementation seems to be possible.
One of the first algorithms to solve the quantifier elimination-problem which is not only
theoretically of a lower complexity but also allows more efficient implementations appeared
only in 1975: in his paper “Quantifier Elimination for Real Closed Fields by Cylindrical
Algebraic Decomposition”2 , G. Collins presented an algorithm serving Tarski’s purpose,
which is based on a new method: the cylindrical algebraic decomposition (CAD).
Since then several improvements of Collins’ algorithms have been found and also
considerable speed-ups could be achieved by improvements in the implementations. One
of the best implementations is the one by H. Hong, which is based on his thesis3 written under
the supervision of Collins. Hong’s quantifier-elimination-program is regularly updated and
is available by anonymous ftp from RISC Linz . That is the version we used here.
We will restrict ourselves to a short presentation of the quantifier elimination definition
and its fields of applications, and we will not deal either with the method and algorithms that
are used nor with the practical implementation. Our goal is to show how this method can
be applied to some steps of determining the qualitative behaviour of differential equations.
2.1. The Purpose of Quantifier Elimination
An illustration of the purpose of quantifier elimination can be found in the following
basic problem: considering the formula (8x) x2 + bx + c > 0, we can ask the following
questions: Is this formula true? Is it always true for whatever the value of b and c are? If
not, can we find a condition for b and c that makes it true? Obviously, the above formula is
The ftp address of Linz is: ftp.risc.uni-linz.ac.at
The program is in the file: pub/private/hhong/software/qepcad.tar.Z
288
true if and only if b2 ; 4ac < 0. That means that b2 ; 4ac < 0 is a quantifier-free formula
which is equivalent to our first formula. This simple example illustrates the problem that
the quantifier elimination method attempts to solve: to decide when a sentence from the
elementary theory of the reals is true, and to compute equivalent quantifier-free formulas.
2.2. Possible Formulas
We will describe here the class of sentences quantifier elimination deals with. The
definitions that we present are more or less corresponding to the syntax of Hong’s program.
More about this syntax will be found with the results.
An atomic formula is a formula of the form
P = Q P > Q P < Q P Q P Q
where P and Q are polynomials in Zx1 : : : xr ]. A standard quantifier free formula is any
formula which can be constructed from atomic formulas using propositional connectives
(_ ^ : =) ()). A standard prenex formula is a standard formula of the form
Qk xk )( Qk+1 xk+1 ) : : : ( Qr xr )(x1 : : : xr )
where Qi are quantifiers (8 9) and (x1 : : : xr ) is a standard quantifier free formula.
The variables x1 : : : xk;1 are the free variables (i.e. they are not quantified). Quantifier
(
Elimination (QE) is supposed to provide an equivalent quantifier-free formula to an input
standard prenex formula. Hence, it can be used as decision method: if the equivalent
formula is 0 = 0, that means that the formula is always true. The results can be a quantifierfree formula composed of polynomials in the free variables, which gives a condition for the
values of the free variables for which the formula will be true.
The theoretic complexity of QE is an obstacle to its general use: it depends exponentially
on the number of variables. That is why the application of QE is restricted in practice:
too many variables or quantifier-free variables will cause either memory overflows or
unacceptable computation times. The results we present below give an idea of the limits of
QE.
3. The Biometrical Problem
In epidemiology we are interested to get some information about the dynamics of
different diseases. One important notion is R , the basic reproduction number, which
represents the average number of secondary infections generated by one case. In this sense
we have an expression which represents the dynamics of a disease: if R < 1 then the
disease will die out, if R > 1 then we will get an epidemic. In other words, the point
1 is a bifurcation point. Our problem was to represent a formula for the total population
depending on R .
First let us introduce a certain epidemic model, which is intended to model the epidemic
of the AIDS disease:y Consider a heterogeneous sexually active population which is divided
y Similar
but simpler models have been studied in the literature4 5 .
289
into susceptibles X1 X2 , infecteds Y1 Y2 and treated infecteds V1 V2 . Let us assume that
the first part of the population is the “low active and larger group” X1 Y1 V1 , and the
second the “high active and smaller group” X2 Y2 V2 .
We will assume a constant influx into the susceptible population of N0 1 and N0 2,
where N0 is the stable population in absence of infection and 1 is the average duration of
sexual activity. 1 and 2 are the portion of the whole population going into the high and low
part of the population, respectively (1 + 2 = 1). The susceptibles will be reduced through
the per capita rate of natural mortality and through the force of infection 1 2 , where
1 2 is the effective mean rate of sexual partner change per year in the low or high group,
respectively. The infecteds increase through infection with the force of infection 1 or
2 , depending on the respective group. They will be diminished through the per capita
mortality rate , the AIDS induced per capita mortality rate , and through , the per capita
rate of getting treated. The treated infecteds increase through . They will be diminished
through the mortality rate and through the AIDS induced, and through treatment reduced,
mortality rate . (The time scale in our case will always be one year.)
So the model can be described with the following non-linear differential equations:
dXi
dt
dYi
dt
dVi
dt
=
N0i ; (i + )Xi
(1)
=
iXi ; ( + + ) Yi
(2)
=
Y ; ( + ) Vi
(3)
where the subscript i denotes the homogenous behaviour with mean rate of partner change
i. For the force of infection we will assume the proportionate mixing behaviour
P
= h P i(Xi(Y+i +Y c+Vci )V ) for i = 1 2
(4)
i
i
i i i
where c represents the behaviour change through treatment (0 < c < 1).
For that model it can be concluded that
2
2
R = h (
++++) (c
+ ) 1 1 ++ 2 2 :
1 1
2
2
In the simple case, that means 1 = 2 1 = 0 or 2 = 0 and = 0, we get for the
total population at the endemic steady state N = 1+(1;N01 ) or for 6= 0 we have
N
=
1
R0 N0
+(1; R1 ) z , where
+ + ) h z = fh ( ( + ) ( + (++
(c++c
1))) (
:
+ c
2 ) + (c ; 1) ( + ) ( + + )g
Here we see: If R = 1 then we have N = N0 . Now we were interested in getting
something similar for the case 1 6= 2. So we first reduced the system above to a
290
dimensionless system using the following substitutions:
ri = i v = d = t = and with
dXi
dt
dYi
dt
dVi
dt
=
N0i ; (ri + 1)Xi
(5)
=
ri Xi ; (v + t + 1)Yi
(6)
=
t Yi ; (d + 1) Vi
(7)
=
c Vi ) h P r i(rXi (Y+i +
i i i Yi + c Vi )
P
for
i = 1 2:
(8)
In this case the R will look like:
R
=
d + 1 + c t r12 1 + r22 2 :
(t + v + 1) (d + 1) r1 1 + r2 2
(9)
Taking (5), (6) and (7) at the steady state
N0 i ; (ri + 1) Xi =
ri Xi ; (v + t + 1) Yi =
t Yi ; (d + 1) Vi =
0
0
0
(10)
(11)
(12)
0
(13)
adding the equations ((10)+(11)+(12))
N0 i ; Xi ; (v + 1) Yi ; (d + 1) Vi =
defining the prevalences
pi = X + YYi + V = NYi
i
i
i
i
pVi = X + VYi + V = d +t 1 pi
i
i
i
and
(14)
(15)
we get
N0 i
Xi + (v + 1) Yi + (d + 1) Vi
(16)
()
= 1 ; pi ; pVi + (v + 1) pi + (d + 1) pVi
(17)
N0 i
N0 i
() Ni =
=
:
(18)
v
1)+d t
1 + v pi + d pVi
1 + (d+
d+1 pi
Now we have a formula N = N1 + N2 depending on the prevalence p1 and p2 . To calculate
p1 and p2 we solve (11) with respect to and we get
= (v+rti+X1i) Yi = ri((v1+;tp+i;1)ppVii )
(19)
N0 i
Ni
=
that means
291
= r ((1v;+td++d+1t+) p p ) = r ((1v;+td++d+1t+) p p )
1
1
1
1
2
1
1
2
1
2
p1 (1; d+d+t+1 1 p2 ) r1
(1; d+d+t+1 1 p1 ) p2 = r2
() p2 = ; ;p1 r2 d;p1 r2 ;p1 rp2 1t;r2rd1 +d;p1rr1 2+r1 p1 d+r1 p1 +r1 p1 :
()
(20)
(21)
(22)
With (21) and (8) we get
= r (Yh (+r1X(Y1++ccVV1))++rr2((YY2++Xc V+2))c V ) = r (v(1+;t d++t1+)1pp1 ) :
1
1
1
1
2
2
2
2
1
d+1 1
(23)
and after some calculations we have:
h d+dc+t1+1 (r1 p1 N1 + r2 p2 N2 )
= r (N ; (1 ; c) p N ) + r (N ; (1 ; c) p N ) = r (v(1+;t d++t1+)1pp1 )
1
V 1
2
V 2
1
1
2
d+1 1
1
(24)
2
Solving that equation means solving a cubic equation of the following form:
p1 (A p21 +{zB p1 + C )} = 0
|
(25)
P (p1)
where A and B are of complicated form and
C=
r1 (d + 1)2 (;d t r2 2 + h r2 2 2 d + r12 h 1 d ; r2 2 d ; r1 d v 1 ; r1 d t1
;d vr2 2 ; r1 1 d ; r1 1 ; t r2 2 ; v r2 2 + h r2 2 2 + h r2 2 c t2 ; r1 v 1 ;
r1 t 1 ; r2 2 + r12 h c t 1 + r12 h 1 )
=
; (R ; 1) (1 + v + t) (d + 1)3 r1 (r1 1 + r2 2) :
Here we can clearly see the influence of R on the equation (25).
Now it is interesting to know the values of p1 , when solving (25) for R = 1.
4. Using the Quantifier Elimination Method
The question that interested us was: are there any positive solutions to our final expression of the prevalence p1 in the case R = 1? This question can easily be transformed into
a quantified formula:
8 c 2 (0 1) 8 t > 0 8 h > 0 8 d > 0 8 2 < 12 8 v > 0 8 r1 > 0 8 r2 > 0 8p1 :
r1 < r2 ^ d < v =) (R = 1 ^ P (p1) = 0 =) p1 0):
where (2 := 1 ; 1). Such an expression can theoretically be treated by Hong’s program.
First we began to test the formula with all the parameters free (nine free variables). But
this was much too big for the capacity of the computer. Then we reduced the number of
free variables to the two parameters r1 and r2 . Since in this case the program needed less
than a second of cpu time to perform the quantifier elimination we applied the program to
several instances having different parameters fixed.
292
4.1. The Simple Case
In the case of r1 = r2 = r the system described in the equations (5 – 7) is reduced to a
set of 3 equations with the prevalence of (see 25)
p = p1 + pV
1
p1 =
p
=
d+t+1 p = d+t+1 ;B B2 ;4 A C ()
d+1 1
d+1
2A
; (d + 1) (;hr d ; h c t r ; h r + v d + t d + d + 1 + v + t) =
(c t2 d ; d t2 + h c t2 r ; t2 + c t2 ; d v t ; t d + h c t r d +
ctd +dvct + hdtr ;vt ;t +hctr +ct +vct + hrt
h r d2 + 2 h r d + h r):
+
We have tried to answer the questions: Are there any positive values for p1 at the point
R = 1? In this simple case we even can formulate the question above as follows: Are
there any other values for p at the point R = 1 than p = 0? In other words, is the following
formula always true :
c t r h)(8 d)(8 v)
(r > 0 ^ t > 0 ^ c < 1 ^ d > 0 ^ v > 0) =)
((d + 1)(v + t + 1) = r h(c t + d + 1)
;( d + 1)(v d + v + t d + t + d + 1 ; h r c t ; h r d ; h r)
(8 )(8 )(8 )(8
=)
=
0):
Using the qepcad-program we obtained:
[We have no parameter fixed]
Enter a variable list:
(c,t,r,h,d,v)
Enter the number of free variables:
0
Enter a prenex formula:
(A c) (A t) (A r) (A h) (A d) (A v)
[[r>0 /\ 0<t /\ 0<c /\ c<1 /\ h>0 /\ d>0 /\ v>0 ]
==> [[ (d+1) (v+t+1)=r h (c t+d+1)]
==> -(d+1) (v d+v+t d+t+d+1 -h r c t-h r d-h r)=0] ] .
=======================================================
Before Normalization >
finish
=======================================================
An equivalent quantifier-free formula:
0 = 0
The equivalent quantifier-free formula is 0 = 0, so the formula is always true. We
would like to emphasize that the computations were really fast. The total time was 750 ms.
This encouraged us to try a bigger model. We computed that for four equations with two,
three and then four free parameters.
293
4.2. The Case for = 0
The problem described in Sec. 3 can be simplified with = 0. Then the system (5 – 7)
is reduced to a set of 4 equations with (25) reduced to the following form:
p1 (A p21 + B p1 + C ) = 0
(26)
where A and B are of complicated form and
C
=
;h r1 r22 2 ; h r13 1 + v r2 r1 2 + r12 1 + v r12 1 + r2 r1 2
= ; (R0 ; 1) (1 + v ) r1 (r1 1 + r2 2 ) :
Again the question was: are there any positive solutions to our final expression of the
prevalence p1 in the case R0 = 1? That problem can be described by the following formula
(2 = 1 ; 1):
8 h > 0 8 d > 0 8 2 > 0 8 v > 0 8 1 > 0 8 2 > 0 8 p1 : 1 < 2 ^
=) ((R0 = 1 ^ A p21 + B p1 + C = 0) =) p1 0):
2 < 12
That formula was not solvable in a week-end, so we reduced it to 2, 3 and 4 free variables.
For biometrical reasons it is possible to fix some of the given parameters (h and ) with
certain values. For the dimensionless contact rates 1 2 it is difficult to find acceptable
values so we tried to leave them free in most of the cases.
Let first 2 p1 free, then the formula above looks like as follows (1 =
11
120
= 301 2 = 15 ):
1
2
h = 15 =
p
: (2 > 12 =) (4 (180 + 180 22 ) = 75 (12 + 6 2 ) ^
(8 + 24 p1 + 20 2 ; 16 22 p1 + 198 22 p21 +
95 p1 2 + 185 2 p21 ; 32 22 ; 32 p21 ) p1 = 0) =) p1 0):
(8 2)(8 1 )
We obtained 0 = 0 as an equivalent formula. That means our formula was a true
formula. The time to get that result was just 133 ms!
So we decided to use one more free parameter. Now the formula to be proved was
(now 1 was free, too):
p > > >
p
p
p
p
p
p
p
p
2 2
3
3 2
2
55 2 p1 ; 256 1 p1 + 128 1 p1 + 32 1 2) p1 = 0 ) =) p1 0):
(8 1 ) (8 2 ) (8 1 ) : ( 2
0^ 1 0^ 2
1 ) =)
2
2
((4 (720 1 + 180 2 ) = 75 (24 1 + 6 2 ) ^
(;88 1 22 21 + 56 1 22 1 ; 480 21 21 2 ; 335 1 1 2 + 55 2 1 21 +
480 21 1 2 ; 80 21 + 128 31 + 80 21 1 ; 20 22 1 ; 20 2 1 ;
Again we obtained a true formula and the time to get that result was 6,567 ms.
294
The last reasonable formula which could be solved was one with 4 free parameters.
Here the formula looked like (now with 2 free):
p
> > >
< < 1
p
p
p
+20 21 ; 20 21 2 ; 32 31 + 32 31 2 + 75 1 p1 2 ; 55 2 2 1 p21
;120 21 p1 2 + 120 21 p1 2 2 + 120 21 p21 2 ; 120 21 p21 2 2
;56 1 22 2 p1 + 88 1 22 2 p21 ; 32 31 p21 + 32 31 p21 2 ; 20 21 p1
+20 21 p1 2 + 64 31 p1 ; 64 31 p1 2 ; 32 1 22 2 ) p1 = 0)
=) p1 0)
(8 2 ) (8 1 ) : ( 2
0^ 1 0^ 2
) =)
1^0
2^ 2
2
2
2
((4 (900 1 (1 ; 2 ) + 900 2 2 ) = 75 (30 1 (1 ; 2 ) + 30 2 2 ) ^
(55 22 2 21 + 20 22 2 1 + 20 2 2 1 ; 40 2 2 1 1
This time we obtained again a true formula after 1,416,911 ms of computation time,
i. e. after about 28 minutes.
4.3. The Case for 6= 0
If we take (26) in its full form and leave two parameters t and
rest ( formula to be proved was
10
= 120
11
= 120
1
= 30
2
2 = 10
h
2
= 10
c
8
= 10 ;
1
1 = 2
p1 free and fix the
2 = 2) then the
(8p1 )(
> 0) =) ((2 (48 + 7) = 7 (1 + 8 ) ^
;3472875 p1 ; 26162325 p21 + 10584000 ; 69325200 p1 ; 327499200 2 p1
;578283300 p21 ; 4222108800 2 p21 ; 10163232000 3 p21 + 1852200 = 0)
=) (p1 0)):
For that case we got after only 67 ms the following equivalent quantifier free formula:
0
_ 40 +7 =
6
0:
7
That means that the formula is false for > 0 ^ = ;40
but that is a false statement.
In that sense our given formula above is a true formula.
In the next case we leave three parameters free (the fixed parameters are like above,
except the additional free parameter c):
p > 0 ^ c > 0 ^ c < 1) =) ((2 (60 c + 7) = 7 (1 + 8 ) ^
139179600 p1 ; 87318000 c p1 ; 662256000 c 2 p1 + 357210000 p21 c
+5765256000 2 p21 c + 3472875 p1 + 14817600 + 26162325 p21
+23250240000 c 3 p21 + 292515300 p21 + 857304000 2 p1 ; 390096000 2 p21
;31752000 c ; 8436960000 3 p21 ; 1852200 = 0) =) (p1 0)):
(8 1) (
The result, a true formula, we got after 3,100 ms of computation.
295
If we take again three free parameters, but that time p1 1 and (the values of the
7
free parameters as given above, except c = 10
) we get the following formula:
p > 0 ^ 2 2 > 1) =) ((8 (1 + 22) (1 + 6 ) = (2 + 2) 5 (1 + 8 ) ^
;370440 ; 1111320 p1 + 8678880 22 p1 ; 926100 2 + 25401600 22 2 p1
;3538080000 22 3 p21 + 1481760 p21 + 29529360 p21 ; 91551600 p1 2
;153071100 p21 2 ; 791985600 2 p21 2 ; 202127940 22 p21
;1472385600 22 2 p21 ; 5927040 + 740880 22 p1 ; 4398975 p1 2
;7726320 p1 + 182347200 2 p21 ; 9168390 22 p21 ; 8566425 2 p21
+8890560 22 + 1481760 22 ; 450878400 2 p1 2 ; 925344000 3 p21 2
;7408800 2 + 12700800 2 p1 + 326592000 3 p21 = 0) =) (p1 0)):
(8 1)(
The result, a true formula, we got after 4,983 ms of computation.
5. Conclusions
As the examples above show, Hong’s quantifier elimination program is an effective
tool for the mathematical problems which can be expressed under the form of a quantified
formula. It can deal with a lot of complex expressions. Here is a short synopsis of the
timing results (the computations were done with a Sparc 2):
variables
free
variables
total
degree
6
2
3
3
3
4
0
0
0
2
2
2
3
5
6
6
7
7
number of
digits of the
coefficients
1
3
4
11
10
4
number of
polynomials
total time
ms
3
4
6
6
5
8
750
133
6 557
3 100
4 983
1 416 911
References
1. A. Tarski, A Decision Method for Elementary Algebra and Geometry (University of
California Press, Berkeley, second edition, 1951).
2. G. Collins, Quantifier elimination for real closed fields by cylindrical algebraic
decomposition. In Second GI Conference on Automata Theory and Formal Languages, Lecture Notes in Computer Science 33 (Springer-Verlag, Heidelberg, 1975),
pp. 134–183.
3. H. Hong, Improvements in CAD-Based Quantifier Elimination. PhD thesis (Ohio
State University, Columbus, Ohio, 1990).
4. S. Gupta, R. M. Anderson, and R. M. May, Mathematical models and the design of
public health policy: HIV and antiviral therapy, SIAM Review 35 (1993) 1–16.
5. R. M. Anderson, S. Gupta, and R. M. May, Potential of community-wide chemotherapy or immunotherapy to control the spread of HIV-1, Nature 350 (1991) 356–359.
296