Interpolation and Model Checking for Nonlinear Arithmetic

by   Dejan Jovanović, et al.

We present a new model-based interpolation procedure for satisfiability modulo theories (SMT). The procedure uses a new mode of interaction with the SMT solver that we call solving modulo a model. This either extends a given partial model into a full model for a set of assertions or returns an explanation (a model interpolant) when no solution exists. This mode of interaction fits well into the model-constructing satisfiability (MCSAT) framework of SMT. We use it to develop an interpolation procedure for any MCSAT-supported theory. In particular, this method leads to an effective interpolation procedure for nonlinear real arithmetic. We evaluate the new procedure by integrating it into a model checker and comparing it with state-of-art model-checking tools for nonlinear arithmetic.



page 1

page 2

page 3

page 4


A Decidable Fragment of Second Order Logic With Applications to Synthesis

We propose a fragment of many-sorted second order logic ESMT and show th...

Global Guidance for Local Generalization in Model Checking

SMT-based model checkers, especially IC3-style ones, are currently the m...

NIL: Learning Nonlinear Interpolants

Nonlinear interpolants have been shown useful for the verification of pr...

Solving bitvectors with MCSAT: explanations from bits and pieces (long version)

We present a decision procedure for the theory of fixed-sized bitvectors...

Model Checking Clinical Decision Support Systems Using SMT

Individual clinical Knowledge Artifacts (KA) are designed to be used in ...

SMT-Based Model Checking of Industrial Simulink Models

The development of embedded systems requires formal analysis of models s...

Automating System Configuration

The increasing complexity of modern configurable systems makes it critic...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.