thirty years of virtual substitution
play

Thirty Years of Virtual Substitution Foundations, Techniques, - PowerPoint PPT Presentation

Thirty Years of Virtual Substitution Foundations, Techniques, Applications Thomas Sturm, CNRS, France ISSAC 2018, New York, NY, July 19, 2018 Real Quantifier Elimination (QE) = x 2 + xy + b and q = x + ay 2 + b Z [ a , b , x , y ] Let p


  1. Thirty Years of Virtual Substitution Foundations, Techniques, Applications Thomas Sturm, CNRS, France ISSAC 2018, New York, NY, July 19, 2018

  2. Real Quantifier Elimination (QE) = x 2 + xy + b and q ˙ = x + ay 2 + b ∈ Z [ a , b , x , y ] Let p ˙ ϕ ˙ = ∀ x ∃ y ( p > 0 ∧ q ≤ 0) ϕ formally asks for a necessary and sufficient condition in terms of parameters a , b . [One possible] solution is a < 0 ∧ b > 0 Syntax The language of ordered rings specifies admissible symbols: L = { 0 , 1 , + , − , · , = , ≤ , <, ≥ , >, � = } . Semantics All constants, functions, and relations have their usual interpretation over R or over any real closed field , e.g., the (countable) field of all real algebraic numbers. www.thomas-sturm.de 2/30

  3. We start with linear real QE An L formula ϕ is linear when there are no products of quantified variables. ∀ x ∃ y ( a 2 bx + aby > 0 ∧ a 3 x + aby < 0) For example For our first result we are going to use an extended language L ′ = L ∪ { inv } . inv is a totalization of the multiplicative inverse: � x − 1 for x � = 0 inv( x ) = 0 for x = 0. Initial Input is typically a linear L -formula ϕ . Output will be an equivalent quantifier-free L ′ -formula ϕ ′ . ϕ ′ can be translated into an L -formula by rewriting , e.g, s inv( t ) + u > 0 � ( t = 0 ∧ u > 0) ∨ ( t � = 0 ∧ st + ut 2 > 0) . www.thomas-sturm.de 3/30

  4. Theorem (Linear real QE; Weispfenning, JSC 1988) Let ψ be a quantifier-free L ′ -formula linear in x 1 , . . . , x n with atoms Ψ = { a j x 1 + b j ̺ j 0 | j ∈ J } , where J finite index set, a j , b j L ′ -terms not containing x 1 , and ̺ j L ′ -relations. � Sk( x 1 , Ψ) := � � j , k ∈ J � − b j inv( a j ) ± 1 , − b j inv(2 a j ) − b k inv(2 a k ) (i) Fix real interpretation ι for all variables except x 1 . Then � → ψ [ x 1 / t ] � � � R , ι | = ∀ x 1 ψ ← , "Sk( x 1 , Ψ) is a Skolem set" t ∈ Sk( x 1 , Ψ) ψ ∈ Ψ (ii) This allows QE of Q 1 x 1 from Q n x n . . . Q 1 x 1 ψ : � � R | = ∃ x 1 ψ ← → R | = ∀ x 1 ψ ← → ψ [ x 1 / t ] , ψ [ x 1 / t ] . t ∈ Sk( x 1 , Ψ) t ∈ Sk( x 1 , Ψ) (iii) Part (ii) can be iterated with Q 2 x 2 , . . . , Q n x n . ! All regular term substitution – nothing “virtual” so far www.thomas-sturm.de 4/30

  5. Theorem (Complexity; Weispfenning JSC 1988) Consider a prenex linear formula ϕ ˙ = Q n x n . . . Q 1 x 1 ψ . Let a be the number of quantifier alternations. Let b be the longest quantifier sequence without alternation. Let T (length( ϕ )) be the time for full QE via the theorem. (i) T (length( ϕ )) = 2 ↑ 2 ↑ O (length( ϕ )). This bound is tight : problem is bounded from below by 2 ↑ 2 ↑ Ω( length ( ϕ )). (ii) If a is bounded, then T (length( ϕ )) = 2 ↑ O (length( ϕ )). (iii) Assume that both a and b are bounded, say a ≤ α and b ≤ β . Then T (length( ϕ )) = length( ϕ ) ↑ � ( α + 1) O ( β ) α +1 � . This applies in particular if n is bounded. Blockwise Elimination � � ∃ x n . . . ∃ x 3 ∃ x 2 ∃ x 1 ψ ← → ∃ x n . . . ∃ x 3 ∃ x 2 t ψ [ x 1 / t ] ← → ∃ x n . . . ∃ x 3 t ∃ x 2 ψ [ x 1 / t ] Compatibility of ∃ with � yields single exponential complexity. www.thomas-sturm.de 5/30

  6. A Quick Comparison with Fourier–Motzkin Elimination Linear QE by substitution Fourier–Motzkin Elimination single exponential w. bounded alternation double exponential already in ∃ case Logically maps � to � � maps � to � Geometrically, non-disjoint union of projections intersection of projections Challenge: Consider linear � = ∃ x n . . . ∃ x 1 ϕ ˙ i α i , α i atomic constraints The substitution method yields in single exponential time equivalent quantifier-free ϕ ′ ˙ = � � k α ′ jk . j ! By Fourier–Motzkin there is equivalent ϕ ′′ ˙ = � j α ′′ j . What is the complexity of computing ϕ ′′ from ϕ and ϕ ′ ? www.thomas-sturm.de 6/30

  7. A Simple Example for Illustration For j = k we have in particular − b j inv( a j ) ∈ Sk( x 1 , Ψ). ϕ ˙ = ∃ x ψ , where ψ = ax + b = 0 ∧ a < x ∧ x < b Ψ = { ax + b = 0 , a − x < 0 , x − b < 0 } Sk( x , Ψ) = {− b inv( a ) , − b inv( a ) ± 1 , a , a ± 1 , b , b ± 1 , − b inv(2 a ) + a inv(2) , − b inv(2 a ) + b inv(2) , a inv(2) + b inv(2) } � t ∈ S ( x , Ψ) ψ [ x / t ] ˙ = ( − ab inv ( a ) + b = 0 ∧ b inv ( a ) + b < 0 ∧ − b inv ( a ) − b < 0) ∨ ( − ab inv ( a ) ± a + b = 0 ∧ b inv ( a ) + a ∓ 1 < 0 ∧ − b inv ( a ) − b ± 1 < 0) ∨ ( a 2 + b = 0 ∧ 0 < 0 ∧ a − b < 0) ∨ ( a 2 ± a + b = 0 ∧ ∓ 1 < 0 ∧ a − b ± 1 < 0) ∨ ( ab + b = 0 ∧ a − b < 0 ∧ 0 < 0) ∨ ( ab ± a + b = 0 ∧ a − b ∓ 1 < 0 ∧ ± 1 < 0) ∨ ( − ab inv (2 a ) + a 2 inv (2) + b = 0 ∧ b inv (2 a ) − a inv (2) + a < 0 ∧ − b inv (2 a ) + a inv (2) − b < 0) ∨ ( − ab inv (2 a ) + ab inv (2) + b = 0 ∧ b inv (2 a ) − b inv (2) + a < 0 ∧ − b inv (2 a ) + b inv (2) − b < 0) ∨ ( − a 2 inv (2) + ab inv (2) + b = 0 ∧ a inv(2) − b inv(2) + a < 0 ∧ − a inv(2) + b inv(2) − b < 0) www.thomas-sturm.de 7/30

  8. Implementations and Experiments – First experimental implementations in Reduce [Burhenne, Diploma Thesis 1990] – Motivated distributed and supported Reduce package Redlog [S. since 1992, Dolzmann–S. since 1995] – Several further implementations today, including Mathematica [Strzebonski] and the SMT-solver SMT-RAT [Corzilius et al., Proc. SAT 2015] www.thomas-sturm.de 8/30

  9. From Term Substutution to Virtual Substitution Burhenne’s Work [Diploma Thesis 1990] and its supervision Implementation: – implemented the theorem & rewriting resolution for the inv-terms – furthermore substitution of t ± ε for infinitesimal ε in favor of arithmetic means – rewriting resolution of ε -terms – a first quite basic heuristic simplifier (to be applied frequently during elimination) Key experimental questions: – trade-off between quadratic growth of arithmetic means and resolution of ε – "eager" vs. "lazy" resolution Very clear empirical results: – Infinitesimals are better. – Always resolve inv and ε immediately ("eager")! – Immediate resolution of inv & ε can be viewed as part of the substitution. ! – This was the birth of virtual substitution . www.thomas-sturm.de 9/30

  10. Theorem (Improved linear real QE; Loos–Weispfenning 1993) All formulas are now in the language L = { 0 , 1 , + , − , · , = , <, ≤ , >, ≥ , � = } . Terms within elimination sets are in L ∪ { − 1 , ε, ∞} . Let ψ be a positive quantifier-free L -formula linear in x 1 , . . . , x n with atoms 4 � Ψ = { a j x 1 + b j ̺ k 0 | j ∈ J k } , where ( ̺ 1 , . . . , ̺ 4 ) ˙ = (= , ≤ , <, � =) , k =1 b j J k finite index sets, a j , b j L -terms not containing x 1 . Define S j = − a j and E ( x 1 , Ψ) = � ( true , ∞ ) � ∪ � � � � j ∈ J 1 ∪ J 2 ( a j � = 0 , S j ) ∪ � � � � j ∈ J 3 ∪ J 4 ( a j � = 0 , S j − ε ) , Then the following holds: (i) E ( x 1 , Ψ) allows QE of ∃ x 1 from Q n x n . . . Q 2 x 2 ∃ x 1 ψ via virtual substitution: � R | = ∃ x 1 ψ ← → ψ [ x 1 / / t ] . " E ( x 1 , Ψ) is an elimination set" t ∈ E ( x 1 , Ψ) (ii) Part (i) can be iterated with Q 2 x 2 , . . . , Q n x n . www.thomas-sturm.de 10/30

  11. Proof Sketch – Ψ = � 4 k =1 { a j x 1 + b j ̺ k 0 | j ∈ J k } , where ( ̺ 1 , . . . , ̺ 4 ) ˙ = (= , ≤ , <, � =) – E ( x 1 , Ψ) = { ( true , ∞ ) ∪ { ( a j � = 0 , S j ) | j ∈ J 1 ∪ J 2 } ∪ { ( a j � = 0 , S j − ε ) | j ∈ J 3 ∪ J 4 } → � – R | = ∃ x 1 ψ ← t ∈ E ( x 1 , Ψ) ψ [ x 1 / / t ] Fix a real interpretation ι for all variables except x 1 . Consider S = { r ∈ R | R , ι ∪ { x 1 = r } | = ψ } , satisfying values w.r.t. ι for x 1 . If S = ∅ , then there is nothing to prove. If S � = ∅ , then there is t ∈ E ( x 1 , Ψ) such that R , ι | = ψ [ x 1 / / t ]: If S is unbounded from above, then t = ( true , ∞ ). Assume now that sup S = σ ∈ R : If σ ∈ S , then σ = S j with j ∈ J 1 ∪ J 2 , and t = ( true , σ ). If σ / ∈ S , then σ = S j with j ∈ J 3 ∪ J 4 , and t = ( true , σ − ε ). www.thomas-sturm.de 11/30

  12. Virtual Substitution of Linear Test Points ! [ x 1 / / t ] : atomic formulas → quantifier-free formulas Elimination sets contain test points ( γ, t ), where γ is a guard and t is a test term . Virtual substitution conjunctively puts guards at the beginning. Quotiens: Substitute formally, then multiply with (positive) denominator-squared: ( α x 1 + β ≤ 0) � � �� �� = a � = 0 ∧ − α ab + β a 2 ≤ 0 . a � = 0 , − b x 1 ˙ a Infinitesimals: Treat virtual substitution of t as a black-box; take into consideration the derivative of the target polynomial: ( ax 1 + b < 0)[ x 1 / / ( χ, t − ε )] ˙ = / ( χ, t )] ∨ � / ( χ, t )] ∧ a > 0 � ( ax 1 + b < 0)[ x 1 / ( ax 1 + b = 0)[ x 1 / . For a complete set of rules for the linear case see [Loos–Weispfenning 1993]. www.thomas-sturm.de 12/30

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