Comparing Different Projection Operators in the CAD for SMT Solving Comparing Different Projection Operators in the Cylindrical Algebraic Decomposition for SMT Solving Tarik Viehmann, Gereon Kremer , Erika Ábrahám SC 2 Workshop July 29th Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 0/17 1/17
Comparing Different Projection Operators in the CAD for SMT Solving Outline Preliminaries 1 CAD 2 Experiments 3 Projections SMT solving Incompleteness of McCallum / Brown Effects of squarefree basis Conclusion 4 Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 2/17
Comparing Different Projection Operators in the CAD for SMT Solving Nonlinear arithmetic QF_NRA Definition (Nonlinear arithmetic) Boolean combinations of polynomial constraints over reals Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 3/17
Comparing Different Projection Operators in the CAD for SMT Solving Nonlinear arithmetic QF_NRA Definition (Nonlinear arithmetic) Boolean combinations of polynomial constraints over reals Example x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 3/17
Comparing Different Projection Operators in the CAD for SMT Solving SMT Solving ϕ SAT solver SAT or UNSAT SAT + model theory constraints or UNSAT + reason Theory solver Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 4/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x ◮ Second dimension y Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x ◮ Second dimension y Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x ◮ Second dimension y ◮ Test sample points Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x ◮ Second dimension y ◮ Test sample points Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x ◮ Second dimension y ◮ Test sample points Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x ◮ Second dimension y ◮ Test sample points Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition x 2 + y 2 − 4 ≤ 0 ∧ ( x 2 − y + 0 . 5 < 0 ∨ x 2 + 5 · y + 5 < 0) ∃ x, y. y ◮ Where are solutions? → Sign-invariant regions ◮ What would a human do? ◮ What would CAD do? ◮ First dimension x x ◮ Second dimension y ◮ Test sample points Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 5/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition P n ⊆ Z [ x 1 , . . . , x n ] project P n − 1 ⊆ Z [ x 1 , . . . , x n − 1 ] project . . . project P 1 ⊆ Z [ x 1 ] Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 6/17
Comparing Different Projection Operators in the CAD for SMT Solving Cylindrical Algebraic Decomposition P n ⊆ Z [ x 1 , . . . , x n ] Z n ⊆ Z n − 1 × R project roots ( P n at Z n − 1 ) . . P n − 1 ⊆ Z [ x 1 , . . . , x n − 1 ] . project roots ( P 3 at Z 2 ) . . Z 2 ⊆ Z 1 × R . project roots ( P 2 at Z 1 ) P 1 ⊆ Z [ x 1 ] Z 1 ⊆ R roots ( P 1 ) Tarik Viehmann, Gereon Kremer, Erika Ábrahám | SC 2 Workshop | July 29th 6/17
Recommend
More recommend