mostly real quantifier elimination
play

(Mostly Real) Quantifier Elimination Thomas Sturm AVACS Autumn - PowerPoint PPT Presentation

(Mostly Real) Quantifier Elimination Thomas Sturm AVACS Autumn School, Oldenburg, Germany, October 1, 2015 http://www.mpi-inf.mpg.de/~sturm/ Overview Introduction Definitions Virtual Substitution Variants of Quantifier Elimination Software


  1. Thought Experiment Given ϕ = ∃ x 1 ( ψ ) Temporarily and only in our minds (not in any algorithm) fix ( v 1 , . . . , v k ) := ( a 1 , . . . , a l ) ∈ R k such that ψ becomes univariate in x 1 . Left hand sides of atomic formulas in ψ become univariate polynomials f ∈ R [ x 1 ] . ◮ Sets of satisfying values for x 1 in f ( x 1 ) R 0 are finite unions of intervals [ b 1 , b 2 ] , ( b 1 , b 2 ) , ( b 1 , b 2 ] , [ b 1 , b 2 ) , where b 1 , b 2 ∈ R ∪ {∞} . ◮ if b i ∈ R , then f ( b i ) = 0 ◮ Set of satisfying values for x 1 in ψ has the same form. ∧ is cut and ∨ is intersection of satisfying sets. Virtual Substitution · 13/42

  2. Thought Experiment Given ϕ = ∃ x 1 ( ψ ) Temporarily and only in our minds (not in any algorithm) fix ( v 1 , . . . , v k ) := ( a 1 , . . . , a l ) ∈ R k such that ψ becomes univariate in x 1 . Left hand sides of atomic formulas in ψ become univariate polynomials f ∈ R [ x 1 ] . ◮ Sets of satisfying values for x 1 in f ( x 1 ) R 0 are finite unions of intervals [ b 1 , b 2 ] , ( b 1 , b 2 ) , ( b 1 , b 2 ] , [ b 1 , b 2 ) , where b 1 , b 2 ∈ R ∪ {∞} . ◮ if b i ∈ R , then f ( b i ) = 0 ◮ Set of satisfying values for x 1 in ψ has the same form. ∧ is cut and ∨ is intersection of satisfying sets. ◮ Idea: E = all b 2 or b 2 − ε and ∞ . Virtual Substitution · 13/42

  3. Elimination Sets Given ϕ = ∃ x 1 ( ψ ) Supersets of the zeros of the left hand side terms f ∈ ( . . . ((( Z [ v 1 ])[ v 2 ]) . . . )[ v k ])[ x 1 ] can be computed symbolically and uniformly . Example f = a ( v 1 . . . , v k ) x 2 1 + b ( v 1 , . . . , v k ) x 1 + c ( v 1 , . . . , v k ) yields candidate solutions � for a � = 0 ∧ b 2 − 4 ac ≥ 0 � − b ± b 2 − 4 ac � / 2 a , − c / b for a = 0 ∧ b � = 0 . � �� � � �� � � �� � � �� � γ γ t t Virtual Substitution · 14/42

  4. Elimination Sets Given ϕ = ∃ x 1 ( ψ ) Supersets of the zeros of the left hand side terms f ∈ ( . . . ((( Z [ v 1 ])[ v 2 ]) . . . )[ v k ])[ x 1 ] can be computed symbolically and uniformly . Example f = a ( v 1 . . . , v k ) x 2 1 + b ( v 1 , . . . , v k ) x 1 + c ( v 1 , . . . , v k ) yields candidate solutions � for a � = 0 ∧ b 2 − 4 ac ≥ 0 � − b ± b 2 − 4 ac � / 2 a , − c / b for a = 0 ∧ b � = 0 . � �� � � �� � � �� � � �� � γ γ t t An elimination set E for x 1 and ψ is a finite set of pairs ( γ, t ) such that � R | = ∃ x 1 ( ψ ) ← → γ ∧ ψ [ x 1 / / t ] . ( γ, t ) ∈ E Virtual Substitution · 14/42

  5. Virtual Substitution � Given ϕ = ∃ x 1 ( ψ ) and E such that R | = ∃ x 1 ( ψ ) ← → γ ∧ ψ [ x 1 / / t ] . ( γ, t ) ∈ E Remaining Problem t contain / , √· , ∞ , ε , . . . , which are not in our language L . Solution: Virtual Substitution [ x / / t ] : atomic formulas → quantifier-free formulas Virtual Substitution · 15/42

  6. Virtual Substitution � Given ϕ = ∃ x 1 ( ψ ) and E such that R | = ∃ x 1 ( ψ ) ← → γ ∧ ψ [ x 1 / / t ] . ( γ, t ) ∈ E Remaining Problem t contain / , √· , ∞ , ε , . . . , which are not in our language L . Solution: Virtual Substitution [ x / / t ] : atomic formulas → quantifier-free formulas And beyond degree 2? ◮ Method generalizes to arbitrary degrees (in principle long known). ◮ first implementation will be available this year (PhD thesis by M. Košta). ◮ For higher degrees, t will be way more abstract. Virtual Substitution · 15/42

  7. Virtual Substitution � Given ϕ = ∃ x 1 ( ψ ) and E such that R | = ∃ x 1 ( ψ ) ← → γ ∧ ψ [ x 1 / / t ] . ( γ, t ) ∈ E Remaining Problem t contain / , √· , ∞ , ε , . . . , which are not in our language L . Solution: Virtual Substitution [ x / / t ] : atomic formulas → quantifier-free formulas And beyond degree 2? ◮ Method generalizes to arbitrary degrees (in principle long known). ◮ first implementation will be available this year (PhD thesis by M. Košta). ◮ For higher degrees, t will be way more abstract. Important In practice, good simplification of quantifier-free (intermediate) results is crucial! Virtual Substitution · 15/42

  8. Virtual Substitution by Example g ∗ f ∈ Z [ y ][ x ] , f i , g i , i ∈ Z [ y ] Conventions: Quotients � ≡ f 1 � f 1 x + f 0 ≤ 0 �� x / / g 1 g 1 g 2 + f 0 ≤ 0 ≡ f 1 g 1 g 2 + f 0 g 2 2 ≤ 0 g 2 Virtual Substitution · 16/42

  9. Virtual Substitution by Example g ∗ f ∈ Z [ y ][ x ] , f i , g i , i ∈ Z [ y ] Conventions: Quotients � ≡ f 1 � f 1 x + f 0 ≤ 0 �� x / / g 1 g 1 g 2 + f 0 ≤ 0 ≡ f 1 g 1 g 2 + f 0 g 2 2 ≤ 0 g 2 Formal solutions of quadratic equations √ g 3 ≡ g ∗ 1 + g ∗ � �� √ g 3 � g 1 + g 2 2 x / / f = 0 = 0 g ∗ g 4 4 Virtual Substitution · 16/42

  10. Virtual Substitution by Example g ∗ f ∈ Z [ y ][ x ] , f i , g i , i ∈ Z [ y ] Conventions: Quotients � ≡ f 1 � f 1 x + f 0 ≤ 0 �� x / / g 1 g 1 g 2 + f 0 ≤ 0 ≡ f 1 g 1 g 2 + f 0 g 2 2 ≤ 0 g 2 Formal solutions of quadratic equations √ g 3 ≡ g ∗ 1 + g ∗ � �� √ g 3 � g 1 + g 2 2 x / / f = 0 = 0 g ∗ g 4 4 √ g 3 g ∗ 1 + g ∗ 2 − g ∗ = 0 ≡ g ∗ 2 g 3 = 0 ∧ g ∗ 1 g ∗ 2 2 ≤ 0 g ∗ 1 2 4 Virtual Substitution · 16/42

  11. Virtual Substitution by Example g ∗ f ∈ Z [ y ][ x ] , f i , g i , i ∈ Z [ y ] Conventions: Quotients � ≡ f 1 � f 1 x + f 0 ≤ 0 �� x / / g 1 g 1 g 2 + f 0 ≤ 0 ≡ f 1 g 1 g 2 + f 0 g 2 2 ≤ 0 g 2 Formal solutions of quadratic equations √ g 3 ≡ g ∗ 1 + g ∗ � �� √ g 3 � g 1 + g 2 2 x / / f = 0 = 0 g ∗ g 4 4 √ g 3 g ∗ 1 + g ∗ 2 − g ∗ = 0 ≡ g ∗ 2 g 3 = 0 ∧ g ∗ 1 g ∗ 2 2 ≤ 0 g ∗ 1 2 4 √ g 3 g ∗ 1 + g ∗ 2 − g ∗ 2 − g ∗ ≤ 0 ≡ ( g ∗ 2 g 3 ≥ 0 ∧ g ∗ 1 g ∗ 4 ≤ 0 ) ∨ ( g ∗ 2 g 3 ≤ 0 ∧ g ∗ 2 g ∗ 2 4 ≤ 0 ) g ∗ 1 2 1 2 4 Virtual Substitution · 16/42

  12. Virtual Substitution by Example g ∗ f ∈ Z [ y ][ x ] , f i , g i , i ∈ Z [ y ] Conventions: Quotients � ≡ f 1 � f 1 x + f 0 ≤ 0 �� x / / g 1 g 2 + f 0 ≤ 0 ≡ f 1 g 1 g 2 + f 0 g 2 g 1 2 ≤ 0 g 2 Formal solutions of quadratic equations √ g 3 ≡ g ∗ 1 + g ∗ � �� √ g 3 � g 1 + g 2 2 x / / f = 0 = 0 g ∗ g 4 4 √ g 3 g ∗ 1 + g ∗ 2 − g ∗ = 0 ≡ g ∗ 2 g 3 = 0 ∧ g ∗ 1 g ∗ 2 2 ≤ 0 g ∗ 1 2 4 √ g 3 g ∗ 1 + g ∗ 2 − g ∗ 2 − g ∗ ≤ 0 ≡ ( g ∗ 2 g 3 ≥ 0 ∧ g ∗ 1 g ∗ 4 ≤ 0 ) ∨ ( g ∗ 2 g 3 ≤ 0 ∧ g ∗ 2 g ∗ 2 4 ≤ 0 ) g ∗ 1 2 1 2 4 Infinity ( f 2 x 2 + f 1 x + f 0 < 0 )[ x / / ∞ ] ≡ f 2 < 0 ∨ ( f 2 = 0 ∧ f 1 < 0 ) ∨ ( f 2 = 0 ∧ f 1 = 0 ∧ f 0 < 0 ) Virtual Substitution · 16/42

  13. Virtual Substitution by Example g ∗ f ∈ Z [ y ][ x ] , f i , g i , i ∈ Z [ y ] Conventions: Quotients � ≡ f 1 � f 1 x + f 0 ≤ 0 �� x / / g 1 g 1 g 2 + f 0 ≤ 0 ≡ f 1 g 1 g 2 + f 0 g 2 2 ≤ 0 g 2 Formal solutions of quadratic equations √ g 3 ≡ g ∗ 1 + g ∗ � �� √ g 3 � g 1 + g 2 2 x / / f = 0 = 0 g ∗ g 4 4 √ g 3 g ∗ 1 + g ∗ 2 − g ∗ = 0 ≡ g ∗ 2 g 3 = 0 ∧ g ∗ 1 g ∗ 2 2 ≤ 0 g ∗ 1 2 4 √ g 3 g ∗ 1 + g ∗ 2 − g ∗ 2 − g ∗ ≤ 0 ≡ ( g ∗ 2 g 3 ≥ 0 ∧ g ∗ 1 g ∗ 4 ≤ 0 ) ∨ ( g ∗ 2 g 3 ≤ 0 ∧ g ∗ 2 g ∗ 2 4 ≤ 0 ) g ∗ 1 2 1 2 4 Infinity ( f 2 x 2 + f 1 x + f 0 < 0 )[ x / / ∞ ] ≡ f 2 < 0 ∨ ( f 2 = 0 ∧ f 1 < 0 ) ∨ ( f 2 = 0 ∧ f 1 = 0 ∧ f 0 < 0 ) Positive infinitesimals ( 3 x 2 + 6 x − 3 > 0 )[ x / / t − ε ] ≡ 3 t 2 + 6 t − 3 > 0 ∨ ( 3 t 2 + 6 t − 3 = 0 ∧ 6 t + 6 ≤ 0 ) Virtual Substitution · 16/42

  14. Elimination of Several Existential Quantifiers by Block Back to the bigger picture � . . . ∀ ∗ ∃ ∗ ∀ ∗ ∃ ∗ ∃ x 1 ( ψ ) . . . ∀ ∗ ∃ ∗ ∀ ∗ ∃ ∗ γ ∧ ψ [ x 1 / / t ] � ( γ, t ) ∈ E Disjunction � is compatible with existential quantifiers ∃ ∗ : � � . . . ∀ ∗ ∃ ∗ ∀ ∗ ∃ ∗ . . . ∀ ∗ ∃ ∗ ∀ ∗ ∃ ∗ ( γ ∧ ψ [ x 1 / γ ∧ ψ [ x 1 / / t ] / t ]) � ( γ, t ) ∈ E ( γ, t ) ∈ E Virtual Substitution · 17/42

  15. Elimination of Several Existential Quantifiers by Block Back to the bigger picture � . . . ∀ ∗ ∃ ∗ ∀ ∗ ∃ ∗ ∃ x 1 ( ψ ) . . . ∀ ∗ ∃ ∗ ∀ ∗ ∃ ∗ γ ∧ ψ [ x 1 / / t ] � ( γ, t ) ∈ E Disjunction � is compatible with existential quantifiers ∃ ∗ : � � . . . ∀ ∗ ∃ ∗ ∀ ∗ ∃ ∗ . . . ∀ ∗ ∃ ∗ ∀ ∗ ∃ ∗ ( γ ∧ ψ [ x 1 / γ ∧ ψ [ x 1 / / t ] / t ]) � ( γ, t ) ∈ E ( γ, t ) ∈ E Effect ◮ more local substitution of test points With the elimination of the next quantifiers ◮ even improves upper bound on asymptotic worst-case complexity Virtual Substitution · 17/42

  16. Complexity of Virtual Substitution Upper bound on asymptotic worst-case complexity doubly exponential in the input word length (and thus optimal) More precisely doubly exponential in # quantifier alternations singly exponential in # quantifiers thanks to elimination by block polynomial in # parameters (= unquantified variables) polynomial in # atomic formulas particularly good for low degrees and many parameters For comparision: Cylindrical Algberaic Decomposition (CAD) [Collins 1973, Hong, Brown, . . . ] doubly exponential in the number of all variables For comparison: Asymptotically fast procedures [Renegar, Basu–Pollack–Roy, Grigoriev, . . . ] no practical relevance (so far) Virtual Substitution · 18/42

  17. Variants of Quantifier Elimination Variants of Quantifier Elimination · 19/42

  18. Extended Quantifier Elimination   . . . . . . �   ∃ x ϕ ← → γ ∧ ϕ [ t / / x ] ∃ x ϕ � γ ∧ ϕ [ t / / x ] Generalize to x = t     ( γ, t ) ∈ E . . . . . . Simple example revisited �   b 2 − 4 ac x = − b − a � = 0 ∧ b 2 − 4 ac ≥ 0   2 a   ϕ ≡ ∃ x ( ax 2 + bx + c = 0 ) � x = − c   a = 0 ∧ b � = 0   b   a = 0 ∧ b = 0 ∧ c = 0 x = ∞ 1 Semantics (for fixed parameters) Whenever some left hand side condition holds, then ∃ x ϕ holds and the corresponding right hand side term is one sample solution. [M. Kosta, T.S., A. Dolzmann, J. Symb. Comput. 2016] For fixed choices of parameters, standard values can be efficiently computed for all ∞ i and ε i in a post-processing step. Variants of Quantifier Elimination · 20/42

  19. Generic Quantifier Elimination Collect negated equations from the γ in a global theory Θ : E = { . . . , ( s � = 0 ∧ γ ′ , t ) , . . . ) Θ = { . . . , s � = 0 , . . . } , E = { . . . , ( γ ′ , t ) , . . . } � Semantics ϕ ′ is correct for all choices of parameters satisfying Θ : � → ( ϕ ′ ← Θ − → ϕ ) . Important observation exception set has a lower dimension than the parameter space Simple example revisited ϕ ≡ ∃ x ( ax 2 + bx + c = 0 ) ϕ ′ ≡ b 2 − 4 ac ≥ 0 Θ = { a � = 0 } , � Variants of Quantifier Elimination · 21/42

  20. Software Software · 22/42

  21. Redlog and Reduce Everything discussed here is available in our computer logic system Redlog: http://www.redlog.eu ◮ interactive system, QE and decision for many domains, normal forms, simplification, construction and decomposition of large formulas, . . . ◮ interfaces to Qepcad B, Gurobi, Mathematica, Z3, . . . ◮ more than 300 citations of applications in the literature: geometry, verification, chemistry, life sciences, physics and engineering, scientific computation, geometry and planning, . . . ◮ Redlog development since 1992 as part of the CAS Reduce [Hearn, 1968] ◮ Reduce/Redlog open-source (free-BSD) on Sourceforge since 12/2008 http://reduce-algebra.sourceforge.net ◮ 48,318 downloads since 12/2008 (7,496 in 2014), 500+ SVN commits per year Software · 23/42

  22. Further Theories in Redlog Integers (AAECC 2007, CASC 2007, CASC 2009) ◮ Presburger Arithmetic ◮ weak quantifier elimination for the full linear theory ◮ weak quantifier elimination also for higher degrees (special cases) Mixed Real-Integer (Weispfenning at ISSAC 1999) ◮ experimental Complex Numbers (using Comprehensive Gröbner Bases) ◮ language of rings only Differential Algebras (CASC 2004) ◮ language of rings with unary differential operator ◮ computation in differentially closed field (A. Robinson, Blum) Software · 24/42

  23. Further Theories in Redlog Padic Numbers (JSC 2000, ISSAC 1999, CASC 2001) ◮ linear formulas over p -adic fields for p prime ◮ optionally uniform in p ◮ used e.g. for solving parametric systems of congruences over the integers Terms (CASC 2002) ◮ Malcev-type term algebras (with functions instead of relations) Queues (C. Straßer at RWCA 2006) ◮ two-sided queues over the other theories (2-sorted) ◮ Implemented at present for queues of reals Propositional Formulas (CASC 2003, ISSAC 2010) ◮ generalization of SAT solving ◮ quantified propositional calculus, i.e., parametric QSAT (aka QBF) solving Software · 25/42

  24. Some Other Software ◮ Qepcad B (Hong and Brown) is the reference implementation for cylindrical algebraic decomposition (CAD). ◮ The computer algebra system Mathematica has real QE: essentially CAD + virtual substitution for preprocessing. ◮ The computer algebra system Maple has been used in recent research on CAD (Davenport et al.) ◮ The computer algebra system Risa/Asir (originally by Fujitsu) has QE by virtual substitution (TS, 1996) ◮ Some prototypes in Japan based on comprehensive Gröbner bases (Sato et al.) or Sturm–Habicht sequences (Anai et al. in Matlab) ◮ Specialized implementations of CAD in SMT solvers (z3) ◮ Specialized implementations of virtual substitutions for SMT (SMT-RAT) Software · 26/42

  25. Applications in Geometry and Verification Applications in Geometry and Verification · 27/42

  26. Variant of the Steiner–Lehmus-Theorem [J. Autom. Reasoning 1998 – Joint work with A. Dolzmann, V. Weispfenning] The longer bisector goes to the shorter side h 1 ≡ u 2 ≥ 0 ∧ x 1 ≥ 0 C=(u1,u2) r 2 = 1 + x 2 1 = u 2 1 + ( u 2 − x 1 ) 2 ≡ h 2 M x 2 ≤ 0 ∧ r 2 = ( x 2 − x 1 ) 2 h 3 ≡ Y X h 4 ≡ u 1 x 2 + u 2 x 3 − x 2 x 3 = 0 W A=(−1,0) B=(1,0) x 4 ≤ 1 ∧ ( x 4 − 1 ) 2 = ( u 1 − 1 ) 2 + u 2 ≡ h 5 2 ( − 1 − u 1 ) 2 + u 2 2 < 2 2 ≡ h 7 V ( x 4 − x 5 ) 2 + x 2 6 = ( u 1 − x 5 ) 2 + ( u 2 − x 6 ) 2 ∧ u 1 x 6 − u 2 x 5 − u 2 + x 6 = 0 ≡ h 6 ( u 1 − x 3 ) 2 + u 2 2 < ( x 5 − 1 ) 2 + x 2 ≡ g 6 Applications in Geometry and Verification · 28/42

  27. Variant of the Steiner–Lehmus-Theorem [J. Autom. Reasoning 1998 – Joint work with A. Dolzmann, V. Weispfenning] The longer bisector goes to the shorter side h 1 ≡ u 2 ≥ 0 ∧ x 1 ≥ 0 C=(u1,u2) r 2 = 1 + x 2 1 = u 2 1 + ( u 2 − x 1 ) 2 ≡ h 2 M x 2 ≤ 0 ∧ r 2 = ( x 2 − x 1 ) 2 h 3 ≡ Y X h 4 ≡ u 1 x 2 + u 2 x 3 − x 2 x 3 = 0 W A=(−1,0) B=(1,0) x 4 ≤ 1 ∧ ( x 4 − 1 ) 2 = ( u 1 − 1 ) 2 + u 2 ≡ h 5 2 ( − 1 − u 1 ) 2 + u 2 2 < 2 2 ≡ h 7 V ( x 4 − x 5 ) 2 + x 2 6 = ( u 1 − x 5 ) 2 + ( u 2 − x 6 ) 2 ∧ u 1 x 6 − u 2 x 5 − u 2 + x 6 = 0 ≡ h 6 ( u 1 − x 3 ) 2 + u 2 2 < ( x 5 − 1 ) 2 + x 2 ≡ g 6 � 7 � � ◮ ϕ ≡ ∀ x 6 ∀ x 5 ∀ x 4 ∀ x 3 ∀ x 2 ∀ x 1 ∀ r h i − → g i = 1 Applications in Geometry and Verification · 28/42

  28. Variant of the Steiner–Lehmus-Theorem [J. Autom. Reasoning 1998 – Joint work with A. Dolzmann, V. Weispfenning] The longer bisector goes to the shorter side h 1 ≡ u 2 ≥ 0 ∧ x 1 ≥ 0 C=(u1,u2) r 2 = 1 + x 2 1 = u 2 1 + ( u 2 − x 1 ) 2 ≡ h 2 M x 2 ≤ 0 ∧ r 2 = ( x 2 − x 1 ) 2 h 3 ≡ Y X h 4 ≡ u 1 x 2 + u 2 x 3 − x 2 x 3 = 0 W A=(−1,0) B=(1,0) x 4 ≤ 1 ∧ ( x 4 − 1 ) 2 = ( u 1 − 1 ) 2 + u 2 ≡ h 5 2 ( − 1 − u 1 ) 2 + u 2 2 < 2 2 ≡ h 7 V ( x 4 − x 5 ) 2 + x 2 6 = ( u 1 − x 5 ) 2 + ( u 2 − x 6 ) 2 ∧ u 1 x 6 − u 2 x 5 − u 2 + x 6 = 0 ≡ h 6 ( u 1 − x 3 ) 2 + u 2 2 < ( x 5 − 1 ) 2 + x 2 ≡ g 6 � 7 � � ◮ ϕ ≡ ∀ x 6 ∀ x 5 ∀ x 4 ∀ x 3 ∀ x 2 ∀ x 1 ∀ r h i − → g i = 1 ◮ Generic QE (1.1 s): ϕ ′ 231 atomic formulas, Θ = { u 2 1 − 2 u 1 + u 2 2 − 3 � = 0 , u 1 � = 0 , u 2 � = 0 } . � �� � ( u 1 − 1 ) 2 + u 2 2 � = 4 Applications in Geometry and Verification · 28/42

  29. Variant of the Steiner–Lehmus-Theorem [J. Autom. Reasoning 1998 – Joint work with A. Dolzmann, V. Weispfenning] The longer bisector goes to the shorter side h 1 ≡ u 2 ≥ 0 ∧ x 1 ≥ 0 C=(u1,u2) r 2 = 1 + x 2 1 = u 2 1 + ( u 2 − x 1 ) 2 ≡ h 2 M x 2 ≤ 0 ∧ r 2 = ( x 2 − x 1 ) 2 h 3 ≡ Y X h 4 ≡ u 1 x 2 + u 2 x 3 − x 2 x 3 = 0 W A=(−1,0) B=(1,0) x 4 ≤ 1 ∧ ( x 4 − 1 ) 2 = ( u 1 − 1 ) 2 + u 2 ≡ h 5 2 ( − 1 − u 1 ) 2 + u 2 2 < 2 2 ≡ h 7 V ( x 4 − x 5 ) 2 + x 2 6 = ( u 1 − x 5 ) 2 + ( u 2 − x 6 ) 2 ∧ u 1 x 6 − u 2 x 5 − u 2 + x 6 = 0 ≡ h 6 ( u 1 − x 3 ) 2 + u 2 2 < ( x 5 − 1 ) 2 + x 2 ≡ g 6 � 7 � � ◮ ϕ ≡ ∀ x 6 ∀ x 5 ∀ x 4 ∀ x 3 ∀ x 2 ∀ x 1 ∀ r h i − → g i = 1 ◮ Generic QE (1.1 s): ϕ ′ 231 atomic formulas, Θ = { u 2 1 − 2 u 1 + u 2 2 − 3 � = 0 , u 1 � = 0 , u 2 � = 0 } . � �� � ◮ CAD (0.9 s): ∀ u 1 ∀ u 2 ( � Θ − → ϕ ′ ) � ( u 1 − 1 ) 2 + u 2 2 � = 4 Applications in Geometry and Verification · 28/42

  30. Collision Avoidance with Adaptive Cruise Control [ISSAC 2011 – Joint Work with A. Tiwari @SRI] System dynamics v f = a f ∈ [ − 5 , 2 ] ˙ velocity and accelleration of leading car ˙ v = a ∈ [ − 5 , 2 ] velocity and accelleration of rear car ˙ gap = v f − v ˙ a = − 3 a − 3 ( v − v f ) + ( gap − ( v + 10 )) control law for rear car Initial states and safe states Init ≡ gap = 10 ∧ a = 0 ∧ v f = c 1 ∧ v = c 2 Safe ≡ gap > 0 Applications in Geometry and Verification · 29/42

  31. Collision Avoidance with Adaptive Cruise Control [ISSAC 2011 – Joint Work with A. Tiwari @SRI] System dynamics v f = a f ∈ [ − 5 , 2 ] ˙ velocity and accelleration of leading car ˙ v = a ∈ [ − 5 , 2 ] velocity and accelleration of rear car ˙ gap = v f − v ˙ a = − 3 a − 3 ( v − v f ) + ( gap − ( v + 10 )) control law for rear car Initial states and safe states Init ≡ gap = 10 ∧ a = 0 ∧ v f = c 1 ∧ v = c 2 Safe ≡ gap > 0 Certificate-based approach to find a set Inv such that 1. Init ⊆ Inv 2. Inv ⊆ Safe 3. System dynamics cannot cause the system to leave Inv. Applications in Geometry and Verification · 29/42

  32. Collision Avoidance with Adaptive Cruise Control Linear ansatz Inv ≡ p ≥ 0 where p := c 3 v + c 4 v f + c 5 a + gap + c 6 Inv ′ ≡ − 5 ≤ a ≤ 2 ∧ − 5 ≤ a f ≤ 2 ∧ v ≥ 0 ∧ v f ≥ 0 Certificate as a formula ∃ c 3 ∃ c 4 ∃ c 5 ∃ c 6 ∀ v ∀ v f ∀ gap ∀ a ∀ a f ( ϕ 1 ∧ ϕ 2 ∧ ϕ 3 ) Init ∧ Inv ′ − where ϕ 1 ≡ → Inv Inv ∧ Inv ′ − ϕ 2 ≡ → Safe p = 0 ∧ Inv ′ − ≡ → ˙ p ≥ 0 ϕ 3 Applications in Geometry and Verification · 30/42

  33. Collision Avoidance with Adaptive Cruise Control Linear ansatz Inv ≡ p ≥ 0 where p := c 3 v + c 4 v f + c 5 a + gap + c 6 Inv ′ ≡ − 5 ≤ a ≤ 2 ∧ − 5 ≤ a f ≤ 2 ∧ v ≥ 0 ∧ v f ≥ 0 Certificate as a formula ∃ c 3 ∃ c 4 ∃ c 5 ∃ c 6 ∀ v ∀ v f ∀ gap ∀ a ∀ a f ( ϕ 1 ∧ ϕ 2 ∧ ϕ 3 ) Init ∧ Inv ′ − where ϕ 1 ≡ → Inv Inv ∧ Inv ′ − ϕ 2 ≡ → Safe p = 0 ∧ Inv ′ − ≡ → ˙ p ≥ 0 ϕ 3 After 1 minute of computation: ◮ 584 disjuncts, 33365 atomic formulas, depth 13, some still containing ∃ c 5 ◮ first 33 disjuncts automatically simplify to c 2 2 − 30 c 2 − 75 ≤ 0 for c 1 > 0, c 2 > 0. ◮ ⇒ no collision for c 2 = v ≤ 32 Applications in Geometry and Verification · 30/42

  34. Cylindrical Algebraic Decomposition (CAD) CAD for Satistfiability Checking · 31/42

  35. From Sign Invariant Regions to CAD Cells ϕ ( f 1 , f 2 ) is a Boolean combination of constraints with left hand sides f 1 , f 2 and right hand sides 0. f 1 ( x , y ) = 2 y 2 − 2 x 3 − 3 x 2 f 1 ( A ) = − 1 < 0 f 1 ( B ) = 2 > 0 f 1 ( C ) = − 5 < 0 f 1 ( D ) = 0 CAD for Satistfiability Checking · 32/42

  36. From Sign Invariant Regions to CAD Cells ϕ ( f 1 , f 2 ) is a Boolean combination of constraints with left hand sides f 1 , f 2 and right hand sides 0. f 1 ( x , y ) = 2 y 2 − 2 x 3 − 3 x 2 f 1 ( A ) = − 1 < 0 f 1 ( B ) = 2 > 0 f 1 ( C ) = − 5 < 0 f 1 ( D ) = 0 f 2 ( x , y ) = y 2 + x 2 − 1 CAD for Satistfiability Checking · 32/42

  37. From Sign Invariant Regions to CAD Cells ϕ ( f 1 , f 2 ) is a Boolean combination of constraints with left hand sides f 1 , f 2 and right hand sides 0. f 1 ( x , y ) = 2 y 2 − 2 x 3 − 3 x 2 f 1 ( A ) = − 1 < 0 f 1 ( B ) = 2 > 0 f 1 ( C ) = − 5 < 0 f 1 ( D ) = 0 f 2 ( x , y ) = y 2 + x 2 − 1 CAD for Satistfiability Checking · 32/42

  38. From Sign Invariant Regions to CAD Cells ϕ ( f 1 , f 2 ) is a Boolean combination of constraints with left hand sides f 1 , f 2 and right hand sides 0. f 1 ( x , y ) = 2 y 2 − 2 x 3 − 3 x 2 f 1 ( A ) = − 1 < 0 f 1 ( B ) = 2 > 0 f 1 ( C ) = − 5 < 0 f 1 ( D ) = 0 f 2 ( x , y ) = y 2 + x 2 − 1 g ( x ) = − 2 x 3 − 3 x 2 . . . projection polynomials CAD for Satistfiability Checking · 32/42

  39. Projection and Base Phase (1) ϕ ( f 1 , f 2 ) ◮ projection operator computes projection set : Π( { f 1 ( x , y ) , f 2 ( x , y ) } ) = { g 1 ( x ) , . . . , g k ( x ) } CAD for Satistfiability Checking · 33/42

  40. Projection and Base Phase (1) ϕ ( f 1 , f 2 ) ◮ projection operator computes projection set : Π( { f 1 ( x , y ) , f 2 ( x , y ) } ) = { g 1 ( x ) , . . . , g k ( x ) } ◮ Projections of critical points are among the zeros of g 1 , . . . , g k . CAD for Satistfiability Checking · 33/42

  41. Projection and Base Phase (1) ϕ ( f 1 , f 2 ) ◮ projection operator computes projection set : Π( { f 1 ( x , y ) , f 2 ( x , y ) } ) = { g 1 ( x ) , . . . , g k ( x ) } ◮ Projections of critical points are among the zeros of g 1 , . . . , g k . ◮ The zeros of the g i are real algebraic numbers, e.g. � 2 = � x 2 − 2 , ] − 10 , 1 [ � − CAD for Satistfiability Checking · 33/42

  42. Projection and Base Phase (1) ϕ ( f 1 , f 2 ) ◮ projection operator computes projection set : Π( { f 1 ( x , y ) , f 2 ( x , y ) } ) = { g 1 ( x ) , . . . , g k ( x ) } ◮ Projections of critical points are among the zeros of g 1 , . . . , g k . ◮ The zeros of the g i are real algebraic numbers, e.g. � 2 = � x 2 − 2 , ] − 10 , 1 [ � − ◮ Their computation is univariate computer algebra. CAD for Satistfiability Checking · 33/42

  43. Projection and Base Phase (2) ϕ ( f 1 , f 2 ) ◮ Add points (anywhere) between the zeros as test points for the 1-dimensional cells. CAD for Satistfiability Checking · 34/42

  44. Projection and Base Phase (2) ϕ ( f 1 , f 2 ) ◮ Add points (anywhere) between the zeros as test points for the 1-dimensional cells. ◮ This yields a decomposition of R 1 (the x -axis). CAD for Satistfiability Checking · 34/42

  45. Projection and Base Phase (2) ϕ ( f 1 , f 2 ) ◮ Add points (anywhere) between the zeros as test points for the 1-dimensional cells. ◮ This yields a decomposition of R 1 (the x -axis). ◮ We want to lift this decomposition to R 2 . CAD for Satistfiability Checking · 34/42

  46. Projection and Base Phase (2) ϕ ( f 1 , f 2 ) ◮ Add points (anywhere) between the zeros as test points for the 1-dimensional cells. ◮ This yields a decomposition of R 1 (the x -axis). ◮ We want to lift this decomposition to R 2 . ◮ By the way: How many cells will there be in R 2 ? CAD for Satistfiability Checking · 34/42

  47. Extension Phase (Lifting) ϕ ( f 1 , f 2 ) For each test point t from the base phase: ◮ compute univariate f 1 ( t , y ) , f 2 ( t , y ) . with algebraic number coefficients. CAD for Satistfiability Checking · 35/42

  48. Extension Phase (Lifting) ϕ ( f 1 , f 2 ) For each test point t from the base phase: ◮ compute univariate f 1 ( t , y ) , f 2 ( t , y ) . with algebraic number coefficients. ◮ compute zeros and points between zeros u 1 , . . . , u s . CAD for Satistfiability Checking · 35/42

  49. Extension Phase (Lifting) ϕ ( f 1 , f 2 ) For each test point t from the base phase: ◮ compute univariate f 1 ( t , y ) , f 2 ( t , y ) . with algebraic number coefficients. ◮ compute zeros and points between zeros u 1 , . . . , u s . ◮ this yields test points ( t , u 1 ) , . . . , ( t , u s ) ∈ R 2 for the cylinder over t . CAD for Satistfiability Checking · 35/42

  50. Example: a CAD as a “data structure” P 3 = { x 2 1 + x 2 2 + x 2 3 − 4 } P 2 = { x 2 2 + x 2 1 − 4 } P 1 = { x 1 + 2 , x 1 − 2 } C. W. Brown, U.S. Naval Academy 3

  51. Example: a CAD as a “data structure” P 3 = { x 2 1 + x 2 2 + x 2 3 − 4 } P 2 = { x 2 2 + x 2 1 − 4 } P 1 = { x 1 + 2 , x 1 − 2 } C. W. Brown, U.S. Naval Academy 3

  52. Example: a CAD as a “data structure” P 3 = { x 2 1 + x 2 2 + x 2 3 − 4 } P 2 = { x 2 2 + x 2 1 − 4 } P 1 = { x 1 + 2 , x 1 − 2 } C. W. Brown, U.S. Naval Academy 3

  53. Example: a CAD as a “data structure” P 3 = { x 2 1 + x 2 2 + x 2 3 − 4 } P 2 = { x 2 2 + x 2 1 − 4 } P 1 = { x 1 + 2 , x 1 − 2 } C. W. Brown, U.S. Naval Academy 3

  54. SAT-Checking ϕ ( f 1 , f 2 ) ◮ Finitely many test points � ( t 1 , u t 1 , 1 ) , . . . , ( t 1 , u t 1 , s 1 ) , T = . . . ( t r , u t r , 1 ) , . . . , ( t r , u t r , s r ) � . CAD for Satistfiability Checking · 36/42

  55. SAT-Checking ϕ ( f 1 , f 2 ) ◮ Finitely many test points � ( t 1 , u t 1 , 1 ) , . . . , ( t 1 , u t 1 , s 1 ) , T = . . . ( t r , u t r , 1 ) , . . . , ( t r , u t r , s r ) � . ◮ R | = ∃ ϕ ( f 1 , f 2 ) iff ex. t ∈ T s.t. R , ( x , y ) = t | = ϕ ( f 1 , f 2 ) . CAD for Satistfiability Checking · 36/42

  56. Complete Decision Procedure ◮ Finitely many test points � ( t 1 , u t 1 , 1 ) , . . . , ( t 1 , u t 1 , s 1 ) , T = . . . ( t r , u t r , 1 ) , . . . , ( t r , u t r , s r ) � . CAD as a Complete Decision Procedure · 37/42

  57. Complete Decision Procedure ◮ Finitely many test points � ( t 1 , u t 1 , 1 ) , . . . , ( t 1 , u t 1 , s 1 ) , T = . . . ( t r , u t r , 1 ) , . . . , ( t r , u t r , s r ) � . ◮ ∀ x ∃ y ϕ ( f 1 , f 2 ) : “In each cylinder there is a cell such that . . . ” Satisfying t in each row of T ? CAD as a Complete Decision Procedure · 37/42

  58. Complete Decision Procedure ◮ Finitely many test points � ( t 1 , u t 1 , 1 ) , . . . , ( t 1 , u t 1 , s 1 ) , T = . . . ( t r , u t r , 1 ) , . . . , ( t r , u t r , s r ) � . ◮ ∀ x ∃ y ϕ ( f 1 , f 2 ) : “In each cylinder there is a cell such that . . . ” Satisfying t in each row of T ? ◮ ∃ x ∀ y ϕ ( f 1 , f 2 ) : “There is a cylinder such that for each cell . . . ” A satisfying column of T ? CAD as a Complete Decision Procedure · 37/42

  59. Complete Decision Procedure ◮ Finitely many test points � ( t 1 , u t 1 , 1 ) , . . . , ( t 1 , u t 1 , s 1 ) , T = . . . ( t r , u t r , 1 ) , . . . , ( t r , u t r , s r ) � . ◮ ∀ x ∃ y ϕ ( f 1 , f 2 ) : “In each cylinder there is a cell such that . . . ” Satisfying t in each row of T ? ◮ ∃ x ∀ y ϕ ( f 1 , f 2 ) : “There is a cylinder such that for each cell . . . ” A satisfying column of T ? ◮ The innermost variable y was projected first. CAD as a Complete Decision Procedure · 37/42

  60. Some Remarks Before We Continue ◮ Given ϕ ( f 1 , f 2 ) essentially all the algorithmic work we have done is valid for arbitrary Boolean combinations ψ ( f 1 , f 2 ) of arbitrary constraints with left hand sides f 1 , f 2 (and right hand sides 0). CAD as a Complete Decision Procedure · 38/42

  61. Some Remarks Before We Continue ◮ Given ϕ ( f 1 , f 2 ) essentially all the algorithmic work we have done is valid for arbitrary Boolean combinations ψ ( f 1 , f 2 ) of arbitrary constraints with left hand sides f 1 , f 2 (and right hand sides 0). ◮ Furthermore, even for arbitrary quantification QxQ ′ y (in that order). CAD as a Complete Decision Procedure · 38/42

  62. Some Remarks Before We Continue ◮ Given ϕ ( f 1 , f 2 ) essentially all the algorithmic work we have done is valid for arbitrary Boolean combinations ψ ( f 1 , f 2 ) of arbitrary constraints with left hand sides f 1 , f 2 (and right hand sides 0). ◮ Furthermore, even for arbitrary quantification QxQ ′ y (in that order). ◮ This indicates that the CAD procedure is somewhat an overkill. CAD as a Complete Decision Procedure · 38/42

  63. Some Remarks Before We Continue ◮ Given ϕ ( f 1 , f 2 ) essentially all the algorithmic work we have done is valid for arbitrary Boolean combinations ψ ( f 1 , f 2 ) of arbitrary constraints with left hand sides f 1 , f 2 (and right hand sides 0). ◮ Furthermore, even for arbitrary quantification QxQ ′ y (in that order). ◮ This indicates that the CAD procedure is somewhat an overkill. ◮ On the other hand, the asymptotic worst complexity 2 2 O ( n ) in terms of the input word length n is known to be optimal. CAD as a Complete Decision Procedure · 38/42

  64. Some Remarks Before We Continue ◮ Given ϕ ( f 1 , f 2 ) essentially all the algorithmic work we have done is valid for arbitrary Boolean combinations ψ ( f 1 , f 2 ) of arbitrary constraints with left hand sides f 1 , f 2 (and right hand sides 0). ◮ Furthermore, even for arbitrary quantification QxQ ′ y (in that order). ◮ This indicates that the CAD procedure is somewhat an overkill. ◮ On the other hand, the asymptotic worst complexity 2 2 O ( n ) in terms of the input word length n is known to be optimal. ◮ Asymptotically better bounds with refined complexity parameters. CAD as a Complete Decision Procedure · 38/42

  65. Some Remarks Before We Continue ◮ Given ϕ ( f 1 , f 2 ) essentially all the algorithmic work we have done is valid for arbitrary Boolean combinations ψ ( f 1 , f 2 ) of arbitrary constraints with left hand sides f 1 , f 2 (and right hand sides 0). ◮ Furthermore, even for arbitrary quantification QxQ ′ y (in that order). ◮ This indicates that the CAD procedure is somewhat an overkill. ◮ On the other hand, the asymptotic worst complexity 2 2 O ( n ) in terms of the input word length n is known to be optimal. ◮ Asymptotically better bounds with refined complexity parameters. ◮ In practice, for general input, CAD is the best we have. CAD as a Complete Decision Procedure · 38/42

  66. Some Remarks Before We Continue ◮ Given ϕ ( f 1 , f 2 ) essentially all the algorithmic work we have done is valid for arbitrary Boolean combinations ψ ( f 1 , f 2 ) of arbitrary constraints with left hand sides f 1 , f 2 (and right hand sides 0). ◮ Furthermore, even for arbitrary quantification QxQ ′ y (in that order). ◮ This indicates that the CAD procedure is somewhat an overkill. ◮ On the other hand, the asymptotic worst complexity 2 2 O ( n ) in terms of the input word length n is known to be optimal. ◮ Asymptotically better bounds with refined complexity parameters. ◮ In practice, for general input, CAD is the best we have. ◮ Until now, we have not used and did not “really know” the cells – only test points. CAD as a Complete Decision Procedure · 38/42

  67. Quantifier Elimination The essential new concept with QE is quantifier-free description of cells . This is relevant also for recent decision procedures (Jovanovic & de Moura). CAD for Quantifier Elimination · 39/42

  68. Quantifier Elimination The essential new concept with QE is quantifier-free description of cells . This is relevant also for recent decision procedures (Jovanovic & de Moura). ◮ Given ψ ( x 1 , . . . , x k ) = Q k + 1 x k + 1 . . . Q r x r ϕ ( x 1 , . . . , x k , x k + 1 , . . . , x r ) . CAD for Quantifier Elimination · 39/42

  69. Quantifier Elimination The essential new concept with QE is quantifier-free description of cells . This is relevant also for recent decision procedures (Jovanovic & de Moura). ◮ Given ψ ( x 1 , . . . , x k ) = Q k + 1 x k + 1 . . . Q r x r ϕ ( x 1 , . . . , x k , x k + 1 , . . . , x r ) . ◮ x 1 , . . . x k are parameters . CAD for Quantifier Elimination · 39/42

  70. Quantifier Elimination The essential new concept with QE is quantifier-free description of cells . This is relevant also for recent decision procedures (Jovanovic & de Moura). ◮ Given ψ ( x 1 , . . . , x k ) = Q k + 1 x k + 1 . . . Q r x r ϕ ( x 1 , . . . , x k , x k + 1 , . . . , x r ) . ◮ x 1 , . . . x k are parameters . ◮ Construct CAD with projection order x r → · · · → x k + 1 → x k → · · · → x 1 . That is, the base phase takes place in R [ x 1 ] . CAD for Quantifier Elimination · 39/42

  71. Quantifier Elimination The essential new concept with QE is quantifier-free description of cells . This is relevant also for recent decision procedures (Jovanovic & de Moura). ◮ Given ψ ( x 1 , . . . , x k ) = Q k + 1 x k + 1 . . . Q r x r ϕ ( x 1 , . . . , x k , x k + 1 , . . . , x r ) . ◮ x 1 , . . . x k are parameters . ◮ Construct CAD with projection order x r → · · · → x k + 1 → x k → · · · → x 1 . That is, the base phase takes place in R [ x 1 ] . ◮ Consider the finite set C ⊆ Pot ( R k ) of cells in parameter space, i.e., at projection level k with polynomials from R [ x 1 , . . . , x k ] . CAD for Quantifier Elimination · 39/42

  72. Quantifier Elimination The essential new concept with QE is quantifier-free description of cells . This is relevant also for recent decision procedures (Jovanovic & de Moura). ◮ Given ψ ( x 1 , . . . , x k ) = Q k + 1 x k + 1 . . . Q r x r ϕ ( x 1 , . . . , x k , x k + 1 , . . . , x r ) . ◮ x 1 , . . . x k are parameters . ◮ Construct CAD with projection order x r → · · · → x k + 1 → x k → · · · → x 1 . That is, the base phase takes place in R [ x 1 ] . ◮ Consider the finite set C ⊆ Pot ( R k ) of cells in parameter space, i.e., at projection level k with polynomials from R [ x 1 , . . . , x k ] . ◮ For each c ∈ C with test point t c ∈ R n − k we can decide ψ ( t c ) and collect TRUECELLS = { c ∈ C | R , ( x 1 , . . . , x k ) = t c | = ψ } ⊆ C . CAD for Quantifier Elimination · 39/42

  73. Quantifier Elimination The essential new concept with QE is quantifier-free description of cells . This is relevant also for recent decision procedures (Jovanovic & de Moura). ◮ Given ψ ( x 1 , . . . , x k ) = Q k + 1 x k + 1 . . . Q r x r ϕ ( x 1 , . . . , x k , x k + 1 , . . . , x r ) . ◮ x 1 , . . . x k are parameters . ◮ Construct CAD with projection order x r → · · · → x k + 1 → x k → · · · → x 1 . That is, the base phase takes place in R [ x 1 ] . ◮ Consider the finite set C ⊆ Pot ( R k ) of cells in parameter space, i.e., at projection level k with polynomials from R [ x 1 , . . . , x k ] . ◮ For each c ∈ C with test point t c ∈ R n − k we can decide ψ ( t c ) and collect TRUECELLS = { c ∈ C | R , ( x 1 , . . . , x k ) = t c | = ψ } ⊆ C . ◮ Assume that for c ∈ C we have a quantifier-free description formula ∆ c ( x 1 , . . . , x k ) , i.e. x ∈ c iff R | = ∆ c ( x ) . CAD for Quantifier Elimination · 39/42

  74. Quantifier Elimination The essential new concept with QE is quantifier-free description of cells . This is relevant also for recent decision procedures (Jovanovic & de Moura). ◮ Given ψ ( x 1 , . . . , x k ) = Q k + 1 x k + 1 . . . Q r x r ϕ ( x 1 , . . . , x k , x k + 1 , . . . , x r ) . ◮ x 1 , . . . x k are parameters . ◮ Construct CAD with projection order x r → · · · → x k + 1 → x k → · · · → x 1 . That is, the base phase takes place in R [ x 1 ] . ◮ Consider the finite set C ⊆ Pot ( R k ) of cells in parameter space, i.e., at projection level k with polynomials from R [ x 1 , . . . , x k ] . ◮ For each c ∈ C with test point t c ∈ R n − k we can decide ψ ( t c ) and collect TRUECELLS = { c ∈ C | R , ( x 1 , . . . , x k ) = t c | = ψ } ⊆ C . ◮ Assume that for c ∈ C we have a quantifier-free description formula ∆ c ( x 1 , . . . , x k ) , i.e. x ∈ c iff R | = ∆ c ( x ) . Then → � R | = ψ ← c ∈ TRUECELLS ∆ c . CAD for Quantifier Elimination · 39/42

  75. Solution Formula Construction Example cell P 1 , 1 P 1 , 2 P 2 , 1 T/F 1 , 1 − − + F 2 , 1 0 − + F 2 , 2 0 − 0 T 2 , 3 0 − + F 3 , 1 + − + F 3 , 2 + − 0 F 3 , 3 + − − T 3 , 4 + − 0 F 3 , 5 + − + F 4 , 1 + 0 + F 4 , 2 + 0 0 F 4 , 3 + 0 + F 5 , 1 + + + F C. W. Brown, U.S. Naval Academy 24

  76. Solution Formula Construction Example cell P 1 , 1 P 1 , 2 P 2 , 1 T/F 1 , 1 − − + F 2 , 1 0 − + F 2 , 2 0 − 0 T 2 , 3 0 − + F 3 , 1 + − + F 3 , 2 + − 0 F 3 , 3 + − − T 3 , 4 + − 0 F 3 , 5 + − + F 4 , 1 + 0 + F 4 , 2 + 0 0 F 4 , 3 + 0 + F 5 , 1 + + + F P 2 , 1 < 0 C. W. Brown, U.S. Naval Academy 24

  77. Solution Formula Construction Example cell P 1 , 1 P 1 , 2 P 2 , 1 T/F 1 , 1 − − + F 2 , 1 0 − + F 2 , 2 0 − 0 T 2 , 3 0 − + F 3 , 1 + − + F 3 , 2 + − 0 F 3 , 3 + − − T 3 , 4 + − 0 F 3 , 5 + − + F 4 , 1 + 0 + F 4 , 2 + 0 0 F 4 , 3 + 0 + F 5 , 1 + + + F P 2 , 1 < 0 ∨ P 1 , 1 = 0 ∧ P 2 , 1 = 0 C. W. Brown, U.S. Naval Academy 24

  78. Solution Formula Construction Problem ∃ y [ x 2 + y 2 − 1 < 0 ∧ x − y < 0] x 2 − 2 cell x + 1 x − 1 T/F 1 − − + F 2 0 − + F 3 + − + T 4 + − 0 T 5 + − − T 6 + − 0 F 7 + − + F 8 + 0 + F 9 + + + F C. W. Brown, U.S. Naval Academy 25

  79. Solutions to the Solution Formula Problem (1) Augmented Projection ◮ The approach of the original Collins article (1975). ◮ Idea: Produce sufficiently many polynomials during projection. ◮ Technically one adds “lots of derivatives.” A very simple demonstration of the idea ◮ Consider a single polynomial f = x 3 − 12 x 2 + 44 x − 48. CAD for Quantifier Elimination · 40/42

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend