Satisfiability Modulo Transcendental Functions via Incremental Linearization
Alberto Griggio
Fondazione Bruno Kessler, Trento, Italy
Joint work with A. Irfan, A. Cimatti, M. Roveri, R. Sebastiani
Satisfiability Modulo Transcendental Functions via Incremental - - PowerPoint PPT Presentation
Satisfiability Modulo Transcendental Functions via Incremental Linearization Alberto Griggio Fondazione Bruno Kessler, Trento, Italy Joint work with A. Irfan, A. Cimatti, M. Roveri, R. Sebastiani Executive Summary Main idea Abstract
Joint work with A. Irfan, A. Cimatti, M. Roveri, R. Sebastiani
Abstract transcendental functions with uninterpreted functions Incrementally add upper- and lower- bound linear lemmas Tangent and secant lines Added to refine spurious models
Irrational values: transcendental functions give irrational outputs
Linearization requires calculation of slope at arbitrary point, which
Handling periodicity (of trigonometric functions) Detecting SAT
Transcendental function : doesn’t satisfy a polynomial equation
We assume to be continuous and (n-times) differentiable
Tangent line to at point : Secant line to between and : Concavity: sign of the second derivative Taylor theorem:
precision initial abstraction
E.g. for exponential
Intuitively, check
Can’t check precisely
use Taylor’s theorem to compute polynomial bounds Depend on the current precision Model is definitely spurious if
Tangent Refinement: Tangent Line to the upper (lower)
Secant Refinement: Secant Line to the lower (upper) polynomial
Tangent Refinement: Tangent Line to the upper (lower)
Secant Refinement: Secant Line to the lower (upper) polynomial
Spurious Point
Tangent Refinement: Tangent Line to the upper (lower)
Secant Refinement: Secant Line to the lower (upper) polynomial
Spurious Point Tangent Refinement
Tangent Refinement: Tangent Line to the upper (lower)
Secant Refinement: Secant Line to the lower (upper) polynomial
Spurious Point Tangent Refinement Precision
Tangent Refinement: Tangent Line to the upper (lower)
Secant Refinement: Secant Line to the lower (upper) polynomial
Spurious Point Tangent Refinement Precision The concavity of the lower and upper polynomials should be equal to the concavity of the function in the interval of interest
Lower Polynomial: Upper Polynomial:
Lower Polynomial: when n is odd Upper Polynomial: when n is even
Lower Polynomial: Upper Polynomial:
Base Period: Extended Period: when not in the base period
yx fresh (called a base variable) The domain of yx is in the base period sin(x) and sin(yx) are equal in the base period
Case x > 0: concavity is negative Case x < 0: concavity is positive
Lower Polynomial: Upper Polynomial:
Relate the extended period with the base period
Note that the shift is symbolic in Ensure soundness
Hand-crafted benchmarks Discretized Hybrid System
HyComp benchmarks iSAT benchmarks HyST benchmarks HARE benchmarks
Tools MathSAT MetiTarski iSAT3 dReal Prototype Implementation in MathSAT + PySMT