Slide 1 of 21 Solving equations and inequalities using validated numeric methods Adam Strzebonski, Wolfram Research Inc., USA adams@wolfram.com
2 Talk1111.nb Slide 2 of 21 Abstract Validated numeric methods can be used to significantly speed up exact solving of equations and inequalities and to find and represent exact solutions of problems that cannot be solved by known purely symbolic algorithms. Mathematica solvers use such methods to find and represent roots of univariate polynomial and transcendental functions. The cylindrical algebraic decomposition algorithm, used to solve systems of real polynomial equations and inequalities, applies validated numeric methods in the lifting phase. In my talk I will discuss the types of validation of numeric computation results used by the Mathematica solvers. I will present the validation criteria used and describe the algorithms using them.
Talk1111.nb 3 Slide 3 of 21 Problem Given an expression representing a holomorphic function f : � � U � � find the solutions of f � x � � 0 in a closed rectangle R � U . � A symbolic-numeric heuristic SolveHeuristic ( f , R , prec ) (1) Use a black-box numeric method with working precision prec to find approximate solutions. (2) Apply symbolic criteria to the approximate solutions in an attempt to find exact isolating sets and multiplici- ties of the solutions and to prove that we have found all solutions. (3) If (2) succeeds return a symbolic representation of the solutions otherwise return failed . � A symbolic-numeric algorithm If certain additional conditions are satisfied (shown in blue text on the following slides) the following algorithm finds the solutions. SolveAlgorithm ( f , R ) (1) Set prec=machine double precision , answer=failed , (2) While ( answer==failed ) (a) Set answer = SolveHeuristic ( f , R , prec ). (b) Set prec =2* prec. (3) Return answer .
4 Talk1111.nb Slide 4 of 21 Example Find the solutions of 3 x 3 � � x � sin � cos � 2 x � 1 �� � 1 � 0 in the rectangle � � 1, 1 � � � � 1, 1 � . � Picture 1.5 1.0 0.5 0.0 � 0.5 � 1.0 � 1.5 � 1.5 � 1.0 � 0.5 0.0 0.5 1.0 1.5 � Solution Solve � � x � Sin � Cos � 2 x � 1 �� � 3 x 3 � 1 � 0 && � 1 � Re � x � � 1 && � 1 � Im � x � � 1, x � �� x � Root �� 1 � � � 1 � Sin � Cos � 1 � 2 � 1 �� � 3 � 1 3 &, � 0.903875096725008420822753483550 ��� , � x � Root �� 1 � � � 1 � Sin � Cos � 1 � 2 � 1 �� � 3 � 1 3 &, 0.16467119796087211763838020431533578139887826330063434530726 � 0.59938806354617993049447862473622069756099787976942345332526 � ��� , � x � Root �� 1 � � � 1 � Sin � Cos � 1 � 2 � 1 �� � 3 � 1 3 &, 0.16467119796087211763838020431533578139887826330063434530726 � 0.59938806354617993049447862473622069756099787976942345332526 � ���� The solutions represent exact numbers. x � . � �� 1 �� Root �� 1 � � � 1 � Sin � Cos � 1 � 2 � 1 �� � 3 � 1 3 &, � 0.903875096725008420822753483550 �� N � � , 100 � � 0.903875096725008420822753483549551654203206816077444082660668627941895883392088234 � 5129922880401265627
Talk1111.nb 5 Slide 5 of 21 Assumptions Given an expression representing a holomorphic function f : � � U � � find the solutions of f � x � � 0 in a closed rectangle R � U . We assume that for any n � � • an expression representing f � n � can be computed, • an interval-arithmetic evaluation is available for f � n � .
6 Talk1111.nb Slide 6 of 21 Interval-arithmetic evaluation A complex interval is an element of the set � : � �� c , r � : c � � � � � , r � � � � � � �� . A complex interval I � � c � I � , r � I �� � � represents the set I � � � x � � : x � c � I � � r � I �� . Let g be an expression representing a holomorphic function. An interval-arithmetic evaluation for g is an algo- rithm E g which for any I � � computes E g � I � � � with the following properties: • g � I � � � E g � I � � • I � � J � � E g � I � � � E g � J � � • For any c � D � g � and Ε � 0 there exists ∆ � 0 such that r � ∆ � � d , s � � E g �� c , r �� � s � Ε
Talk1111.nb 7 Slide 7 of 21 Approximate solutions Given an expression representing a holomorphic function f : � � U � � find the solutions of f � x � � 0 in a closed rectangle R � U . Let Ξ 1 , …, Ξ k be the distinct solutions of f � x � � 0 in R . We assume that there is an algorithm ApproximateSolutions such that • ApproximateSolutions ( f, R, prec ) gives a list of numbers in R . • For prec � p 0 card � ApproximateSolutions � f , R, prec �� � k • For any Ε � 0 there exists p Ε � p 0 such that for any prec � p Ε ApproximateSolutions � f , R, prec � � � r 1 , …, r k � and max 1 � i � k r i � Ξ i � Ε .
8 Talk1111.nb Slide 8 of 21 Root existence criterion For I � � let us denote I min : � min z � I � z and I max : � max z � I � z . Criterion : Let f : � � U � � be a holomorphic function, let I � � be such that I � � U . Suppose that, for some k � � � and J � � c � I � , r � � � , J � � U � E f � k � � J �� min k � 1 � E f � i � � I �� max r k � � r i i � 0 k � i � then f has exactly k roots in J � (counted with multiplicities). � Proof Let z 0 : � c � I � , let � : � Arg � c � E f � k � � J ��� and let g � z � : � exp � � � � � f � z � . 6 E f � k � � J � 4 f � k � � z � 2 � �� � E f � k � � J � � � 2 2 4 6 g � k � � z � � 2 For z � J � we have � E f � k � � J �� min k � 1 � E f � i � � I �� max g � k � � z � f � i � � z 0 � g � i � � z 0 � Re � k � � � � r i � k � � r i � k � � k � 1 k � 1 r i � k � i � 0 i � 0 i � 0 k � i � i � i � The criterion follows from applying the following theorem to g and J � . Theorem (Neumaier, 1988) Let f : � � U � � be a holomorphic function and let z 0 � U and r � 0 be such that D : � � z : � r � � U . If for all z � D z � z 0 f � k � � z � f � i � � z 0 � Re � k � � � � k � 1 r i � k i � 0 i � then f has exactly k roots in D (counted with multiplicities).
Talk1111.nb 9 Slide 9 of 21 Application of the root existence criterion Criterion : Let f : � � U � � be a holomorphic function, let I � � be such that I � � U . Suppose that, for some k � � � and J � � c � I � , r � � � , J � � U � E f � k � � J �� min k � 1 � E f � i � � I �� max r k � � r i i � 0 k � i � then f has exactly k roots in J � (counted with multiplicities). We attempt to find an isolated solution of f � 0 starting with an approximate solution z 0 � ApproximateSolutions � f , R, prec � . If successful, we get r � 0 and k � � � such that D � z 0 , r � contains exactly k solutions of f � 0. If k � 1 the method cannot distinguish between one solution of multiplicity k and a cluster of solutions. If f is an elementary function one could use zero-testing to prove multiplicity of the solution (the currently known zero-testing algorithm [Richardson] relies on Schanuel’s conjecture for proof of termination). � E f � I �� max z 0 10 � 2 prec else set Ε : � 10 � 2 prec . Put I : � � z 0 , Ε � and M 0 : � (1) Set k : � 1. If z 0 � 0 set Ε : � . i � (2) While k � k max do � E f � k � � I �� min � E f � k � � I �� max (a) Compute m k : � and M k : � . k � k � (b) If m k � 0, increment k and continue the loop. 1 (c) Set r : � max 0 � i � k � 1 � 2 k M i m k � k � i . � E f � k � �� z 0 , r ��� min r k � � k � 1 M i r i return � r , k � . (d) If i � 0 k � (e) Increment k and continue the loop. (3) Return failed . k max is a bound on the total number of solutions, if known, otherwise it is a fixed parameter. Ε and r are rational numbers -- floating point number approximations of the values given in (1) and (2c). If z 0 is close to a root Ξ of f of multiplicity Μ , k � Μ and m k M k � 1 then r � 2 Μ 2 z 0 � Ξ . Hence if for some k , m k M k � 1 and r is large we can return failed without continuing the loop all the way to k max .
10 Talk1111.nb Slide 10 of 21 Verifying the number of solutions Given an expression representing a holomorphic function f : � � U � � find the solutions of f � x � � 0 in a closed rectangle R � U . To find the number of solutions of f � x � � 0 in R (counted with multiplicities) we compute the winding number of f along the boundary of R . We subdivide the boundary into segments such that for each segment either 0 � Re � E f � I �� or 0 � Im � E f � I �� . This requires that there are no zeros of f on the boundary of R . We use rectangu- lar interval arithmetic here.
Recommend
More recommend