<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Satisfiability Modulo Theories, August</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>The VMT-LIB Language and Tools</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Alessandro Cimatti</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alberto Griggio</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Stefano Tonetta</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Fondazione Bruno Kessler</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Trento</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Italy</string-name>
        </contrib>
      </contrib-group>
      <pub-date>
        <year>2022</year>
      </pub-date>
      <volume>1</volume>
      <fpage>1</fpage>
      <lpage>12</lpage>
      <abstract>
        <p>We present VMT-LIB, a language for the representation of verification problems of invariant and linear-time temporal properties on infinite-state symbolic transition systems. VMT-LIB is developed with the goal of facilitating the interoperability and exchange of benchmark problems among diferent verification tools. The VMT-LIB language an extension of the standard SMT-LIB language for SMT solvers, from which it inherits the clean semantics and the many available resources. In this paper we describe the syntax and semantics of VMT-LIB, and present a set of open-source tools to work with the language.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;SMT-LIB</kwd>
        <kwd>Model checking</kwd>
        <kwd>Benchmarking</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>interoperability among diferent tools and the collection of verification benchmarks for
infinite-state systems.</p>
      <p>
        VMT-LIB was developed as an extension of the standard SMT-LIB [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ] language
for SMT solvers, by exploiting the capability of SMT-LIB of attaching metadata to
terms and formulas via annotations. In particular, a valid VMT-LIB file is also a valid
SMT-LIB file, and the elements of the problem (e.g. the initial condition, the transition
relation) are represented as SMT-LIB formulae. By building on top of SMT-LIB, we
inherit a clean and general formal framework, together with a number of theories of
interest. Furthermore, this choice allows us to reuse all the libraries for manipulating
SMT-LIB formulas that are available for various languages (e.g. [
        <xref ref-type="bibr" rid="ref27 ref28 ref29">27, 28, 29</xref>
        ]). Besides
these generic libraries, we have also developed a set of tools to work with the language,
including converters to and from other formats and formalisms (including Aiger, BTOR
and Constrained Horn Clauses). All the tools are open source and available at the
VMT-LIB webpage [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ], together with a collection of benchmarks for various theories.
VMT-LIB is supported by several tools, e.g. nuXmv [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ], Euforia [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], AVR [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ], and
it has been used as a benchmark format in several publications over the last few years
(e.g. [
        <xref ref-type="bibr" rid="ref32 ref33 ref34 ref35 ref36">33, 34, 32, 35, 36</xref>
        ]).
      </p>
      <p>Related work. Compared to other similar approaches, VMT finds its main advantage in
being built on top of SMT-LIB, ofering to specify the formulas describing the verification
problem directly in SMT.</p>
      <p>
        VMT-LIB is similar in spirit to the Aiger [
        <xref ref-type="bibr" rid="ref37">37</xref>
        ] language for finite-state systems, and
to the BTOR [
        <xref ref-type="bibr" rid="ref38">38</xref>
        ] language for word-level systems with arrays. Both were created with
the same purpose, i.e. simple language, easy to parse and generate, a precise and simple
semantics. However, BTOR is based on a generalization of Aiger, focused on word-level
representation of finite-state transition systems. While BTOR appears to be less suitable
to be extended to general support for first-order theories, VMT-LIB supports arbitrary
background SMT theories, including e.g. linear and nonlinear arithmetic, uninterpreted
functions, and quantifiers.
      </p>
      <p>
        Compared to the SMV language1 or the intermediate language for model checking
of [
        <xref ref-type="bibr" rid="ref39">39</xref>
        ], currently under development, VMT-LIB is a lower-level language, focusing on
simplicity and interoperability of tools, and hence sacrificing readability and the richer
structure of the higher-level languages. For exammple, in contrast to SMV, which features
reusable modules, VMT-LIB only considers flat transition systems. On the positive side,
while in the SMV language the theories are “hardcoded”, in VMT-LIB it is possible to
directly reuse the theories available in SMT-LIB (and hence its future extensions).
      </p>
      <p>
        Also the Numerical Transition Systems (NTS) format and the related NTS-LIB library
[
        <xref ref-type="bibr" rid="ref40 ref41">40, 41</xref>
        ] are quite related to VMT-LIB. An NTS is an extended state machine representing
a control-flow graph, where edges are annotated with arithmetic formulas. As for SMV,
compared to VMT-LIB, the first-order theories are limited and hardcoded, while the
NTS-LIB format provides a native support for the control-flow graph structure (which
must be instead encoded in VMT-LIB).
1Or, more properly, the extension of the SMV language processed by the nuXmv model checker.
      </p>
      <p>Constrained Horn Clauses have also been used to model verification modulo
theory problems, with a direct encoding in quantified first-order logic modulo theories.
In contrast, VMT-LIB allows to separately represent the model and possibly several
properties.</p>
      <p>Structure of the paper. The rest of the report is structured as follows. After providing
the necessary theoretical background in §2, we describe the core VMT-LIB syntax in
§3, and its semantics in §4. In §5 we describe an extension to deal with LTL properties.
In §6 we describe a set of open-source tools that we have developed to work with the
language. Finally, we conclude in §7.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Theoretical Background and Definitions</title>
      <p>
        Our setting is many-sorted first order logic. We use the standard notions of theory,
satisfiability, validity, and logical consequence. We refer to the SMT-LIB specifications [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ]
for more details. We denote generic theories as  . We write  |=  to denote that the
formula  is a logical consequence of  in the theory  ; when clear from context, we
omit  and simply write  |=  .
      </p>
      <p>We refer to 0-arity predicates as Boolean variables, and to 0-arity uninterpreted
functions as (theory) variables.</p>
      <p>Given a set of variables  , a signature Σ, a domain  , an interpretation function ℐ of
the symbols in Σ on the domain  , an assignment  to the variables in  on the domain
 , and a Σ-formula  ( ) with free variables in  , the satisfaction relation ⟨, ℐ⟩ | = 
is defined in the usual way.</p>
      <p>For each variable  , we assume that there exists a corresponding variable  ′, called the
primed version of  . If  is a set of variables,  ′ is the set obtained by replacing each
element  with its primed version ( ′ = { ′ |  ∈  }).  ′ is the formula obtained by
replacing each occurrence variable in  with the corresponding primed.</p>
      <p>In the following, the signature Σ and the theory  are implicitly given. A transition
system (TS)  is a tuple ⟨,  ( ),  (, ,  ′)⟩ where  is a set of state variables,  ( )
is a formula representing the initial states, and  (, ,  ′) is a formula representing the
transitions, where  is a set of input variables.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Syntax</title>
      <p>VMT-LIB exploits the capability ofered by the SMT-LIB language of attaching metadata
to terms and formulas in order to specify the components of the transition system and
the properties to verify. More specifically, we use the following SMT-LIB annotations:
:next name is used to represent state variables. For each variable  in the model, the
VMT-LIB file contains a pair of variables,   and   , representing respectively the
current and next version of  . The two variables are linked by annotating   with
the attribute :next   . All the variables that are not in relation with another by
means of a :next attribute are considered inputs. Note that :next must define an
injective function (i.e. it is an error if there are two variables with the same :next
value), and that the names of the variables are not important.
:init is used to specify the formula for the initial states of the model. This formula
should contain neither next-state variables nor input variables. Multiple formulas
annotated with :init are implicitly conjoined. As a convenience, the annotation
can also use a “dummy” value true.
:trans is used to specify the formula for the transition relation. As in the case for
:init, multiple :trans formulas are conjoined together, and also in this case the
annotation can be written as :trans true.
:invar-property idx is used to specify invariant properties, i.e. formulas of the form
G , where  is the formula annotated with :invar-property. The non-negative
integer idx is a unique identifier for the property.
:live-property idx is used to specify an LTL property of the form FG , where  is
the formula annotated with :live-property. The non-negative integer idx is a
unique identifier for the property.</p>
      <p>
        In a VMT-LIB file, only annotated terms and their sub-terms are meaningful. Any
other term is ignored. Moreover, only the following commands are allowed to occur in
VMT-LIB files: set-logic, set-option, declare-sort, define-sort, declare-fun,
define-fun.(For convenience, an additional (assert true) command is allowed to
appear at the end of the file.)
The following example shows a simple model in the syntax of nuXmv [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ] on the left,
and its corresponding VMT-LIB translation on the right.
      </p>
      <p>nuXmv
MODULE main
-- declaring the state
-- variable x
VAR x : integer;
IVAR b : boolean;
INIT x = 1;
TRANS
next(x) = b ? x + 1 : x;
INVARSPEC x &gt; 0;
LTLSPEC FG x &gt; 10;</p>
      <p>VMT
; declaring the state variable x
(declare-const x Int)
(declare-const x.next Int)
(define-fun sv.x () Int (! x :next x.next))
(declare-const b Bool)
(define-fun init () Bool</p>
      <p>(! (= x 1) :init))
(define-fun trans () Bool</p>
      <p>(! (= x.next (ite b (+ x 1) x)) :trans))
(define-fun p1 () Bool</p>
      <p>(! (&gt; x 0) :invar-property 1))
(define-fun p2 () Bool
(! (&gt; x 10) :live-property 2))</p>
      <p>Since the SMT-LIB format (and thus also the VMT-LIB one that inherits from
SMTLIB) does not allow to annotate the declaration of variables, it is a good practice to
insert immediately after the declaration of the variables a set of defines to specify the
relations among variables. See for instance the define sv.x in the example above that
introduces the relation between x and x.next.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Semantics</title>
      <sec id="sec-4-1">
        <title>States and Paths</title>
        <p>In this section we provide the semantics for the language.</p>
        <p>Given a transition system  =˙ ⟨,  ( ),  (, ,  ′)⟩ over a background theory  with
a signature Σ and an interpretation ℐ , a state  of  is an interpretation of the state
variables  . A (finite) path of  is a finite sequence  =˙  0,  1, . . . ,   of states, with the
same domain and interpretation of symbols in the signature Σ, such that ℐ ,  0 |=  ( )
and for all  , 0 ≤  &lt;  , ℐ ,   ,  ′+1 |= ∃. (, ,  ′). We say that a state  is reachable
in  if there exists a path of  ending in  . Note that, since the interpretation ℐ is
unique, uninterpreted function and predicate symbols are rigid, i.e. they are not allowed
to change across states.</p>
      </sec>
      <sec id="sec-4-2">
        <title>Invariant Properties</title>
        <p>An invariant property  is a symbolic representation of a set of states that must be a
superset of the reachable states of  . In other words,  |=  if ∀. is reachable in  ,
 |=  . Consequently, a counterexample for  is a finite path  0, . . . ,   of  such that
  |= ¬ .</p>
      </sec>
      <sec id="sec-4-3">
        <title>Live Properties</title>
        <p>A live property  represents a set of states that is eventually invariant. In LTL syntax,
it would be denoted with FG . More formally,  |=  if for all paths  0, . . . ,   , . . .,
∃. ∀ &gt; .  |=  . (Note that finite paths  0, . . . ,   vacuously satisfy a live property,
because we can always take  =  to satisfy the previous definition.) Consequently, a
counterexample for  is an infinite path  0, . . . ,   , . . . of  such that ∀. ∃ &gt; .  |= ¬ .
5. LTL Properties, Invariant Constraints and Fairness</p>
        <p>
          Conditions
Since one of the main goals of VMT-LIB is that of simplicity, the language as presented
above, which we call the core VMT-LIB language, does not provide any direct support
for high-level constructs such as specifications written in full LTL, invariant constraints
or fairness conditions. However, this is not a limitation in terms of expressiveness, as all
such constructs can be easily encoded in VMT-LIB:
LTL properties can be compiled into invariant and/or live properties using standard
algorithms from the literature (e.g. [
          <xref ref-type="bibr" rid="ref42 ref43 ref44">42, 43, 44</xref>
          ]);
invariant constraints can be straightforwardly embedded into init and trans formulas;
fairness conditions can be embedded into live properties using a symbolic version of
standard degeneralization procedures for Büchi automata (e.g. [
          <xref ref-type="bibr" rid="ref45">45</xref>
          ]).
        </p>
        <p>An alternative to the above encodings is that of specifying some extensions to the
core language, by defining specific annotations to represent LTL properties, invariant
constraints and fairness conditions. In particular, we define the following extensions to
the core annotations:
:invar to specify explicit invariant constraints;
:live-property idx can be used to specify more general liveness properties with fairness
conditions in the form FG 1 ∨ . . . ∨ FG  (or, equivalently, (GF¬ 1 ∧ . . . ∧
GF¬  −1) → FG  ) by annotating  1, . . . ,   with the same index idx;
:ltl-property idx can be used to specify LTL properties. In order to avoid the
introduction of special syntax for the temporal operators, we model them by
predefining a set of functions from Booleans to Booleans of the form ltl.OP, where
OP is one of the standard temporal operators (i.e. F, G, U, or X). For example, the
formula</p>
        <p>G( → F( U ))
can be written as</p>
        <p>(! (ltl.G (=&gt;  (ltl.F (ltl.U   )))) :ltl-property 1).</p>
        <p>We refer to the augmented set of annotations as the extended VMT-LIB language.
From the semantic point of view, these extensions are considered simply as “syntactic
sugar”. This keeps the definitions of §4 simple and concise. From the practical point
of view, however, extensions might still be useful to provide higher-level information
to solvers which might be able to exploit it (e.g. for solvers with built-in support for
LTL specifications it might be more eficient to their native encoding of LTL rather than
rewriting the property upfront). Such considerations are however beyond the scope of
the present document.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>6. VMT-LIB Tools</title>
      <p>
        VMT-LIB support in verification tools. The VMT-LIB language is fully supported by
nuXmv [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ], a state-of-the-art symbolic model checker for finite- and infinite-state systems.
Recently, the language has been adopted also by the AVR [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ] model checker. VMT-LIB is
also the native language of ic3ia [
        <xref ref-type="bibr" rid="ref46">46</xref>
        ], an eficient open-source model checker for invariant
and LTL properties, as well as its recent extensions ProphIC3 [
        <xref ref-type="bibr" rid="ref34">34</xref>
        ] (for discovering
universally quantified invariants over arrays) and Lambda [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ] (for the verification of
parametric systems).
Tools for working with VMT-LIB. We provide a set of tools (mainly written in the
Python programming language) to work with the VMT-LIB language. They are all
available from the VMT-LIB webpage [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ]. Currently, the following tools are provided:
vmt.py: parsing and printing of transition systems in VMT-LIB.
vmt2btor.py: converter from VMT-LIB to the BTOR format.
btor2vmt.py: converter from BTOR to VMT-LIB.
vmt2horn.py: converter from VMT-LIB to Constrained Horn Clauses.
vmt2nuxmv.py: converter from VMT-LIB to the SMV dialect of nuXmv.
vmtext2core.py: a tool to convert an extended VMT-LIB file to a core VMT-LIB file,
by performing the rewritings described at the end of §3.
      </p>
      <p>Moreover, further converters to VMT-LIB are available through nuXmv and ic3ia. In
particular, ic3ia provides a horn2vmt tool for converting Constrained Horn Clauses to
VMT-LIB, whereas nuXmv can be used to convert from VMT-LIB to Aiger and vice
versa.</p>
    </sec>
    <sec id="sec-6">
      <title>7. Conclusions and Future Work</title>
      <p>We have presented VMT-LIB, a language and a set of tools for the specification of
verification problems over infinite-state transition systems. VMT-LIB is aimed at simplicity
and interoperability, and is built on top of SMT-LIB, from which it inherits the formal
foundations, the syntax and the semantics. It has been adopted by several verification
engines, and comes with a library of benchmark and a set of scripts for conversion between
several other formats.</p>
      <p>
        Diferently from the SMT-LIB language, VMT-LIB does not support instructions to
the solvers. A python-based programmatic framework, called pyVMT [
        <xref ref-type="bibr" rid="ref47">47</xref>
        ], in the style of
pySMT [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ], is being developed to overcome this limitation. In the future, we plan to
extend the format to support the representation of counterexample traces for violated
properties (which is a non-trivial task in the case of infinite-state systems), and possibly
also proof certificates for verified properties.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>G.</given-names>
            <surname>Audemard</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kornilowicz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sebastiani</surname>
          </string-name>
          ,
          <article-title>Bounded model checking for timed systems</article-title>
          ,
          <source>in: FORTE</source>
          , volume
          <volume>2529</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2002</year>
          , pp.
          <fpage>243</fpage>
          -
          <lpage>259</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>T.</given-names>
            <surname>Kahsai</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Tinelli</surname>
          </string-name>
          ,
          <article-title>Pkind: A parallel k-induction based model checker</article-title>
          ,
          <source>in: PDMC</source>
          , volume
          <volume>72</volume>
          <source>of EPTCS</source>
          ,
          <year>2011</year>
          , pp.
          <fpage>55</fpage>
          -
          <lpage>62</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Champion</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Mebsout</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Sticksel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Tinelli</surname>
          </string-name>
          ,
          <article-title>The kind 2 model checker</article-title>
          ,
          <source>in: CAV (2)</source>
          , volume
          <volume>9780</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2016</year>
          , pp.
          <fpage>510</fpage>
          -
          <lpage>517</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>K. L. McMillan</surname>
          </string-name>
          ,
          <article-title>Applications of craig interpolation to model checking</article-title>
          ,
          <source>in: ICATPN</source>
          , volume
          <volume>3536</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2005</year>
          , pp.
          <fpage>15</fpage>
          -
          <lpage>16</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>K. L. McMillan</surname>
          </string-name>
          ,
          <article-title>Lazy abstraction with interpolants</article-title>
          ,
          <source>in: CAV</source>
          , volume
          <volume>4144</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2006</year>
          , pp.
          <fpage>123</fpage>
          -
          <lpage>136</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          ,
          <article-title>Efective word-level interpolation for software verification</article-title>
          , in: FMCAD, FMCAD Inc.,
          <year>2011</year>
          , pp.
          <fpage>28</fpage>
          -
          <lpage>36</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>S. K.</given-names>
            <surname>Lahiri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Nieuwenhuis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Oliveras</surname>
          </string-name>
          ,
          <article-title>SMT techniques for fast predicate abstraction</article-title>
          ,
          <source>in: CAV</source>
          , volume
          <volume>4144</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2006</year>
          , pp.
          <fpage>424</fpage>
          -
          <lpage>437</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>S. K.</given-names>
            <surname>Lahiri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Ball</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Cook</surname>
          </string-name>
          ,
          <article-title>Predicate abstraction via symbolic decision procedures, Log</article-title>
          .
          <source>Methods Comput. Sci. 3</source>
          (
          <year>2007</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>T. A.</given-names>
            <surname>Henzinger</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Jhala</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Majumdar</surname>
          </string-name>
          ,
          <string-name>
            <surname>K. L. McMillan</surname>
          </string-name>
          ,
          <article-title>Abstractions from proofs</article-title>
          ,
          <source>ACM SIGPLAN Notices</source>
          <volume>49</volume>
          (
          <year>2014</year>
          )
          <fpage>79</fpage>
          -
          <lpage>91</lpage>
          . URL: https://doi.org/10.1145/2641638. 2641655. doi:
          <volume>10</volume>
          .1145/2641638.2641655.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          ,
          <article-title>Abstract model checking without computing the abstraction</article-title>
          ,
          <source>in: FM</source>
          , volume
          <volume>5850</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2009</year>
          , pp.
          <fpage>89</fpage>
          -
          <lpage>105</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mover</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          ,
          <article-title>Infinite-state invariant checking with IC3 and predicate abstraction</article-title>
          ,
          <source>Formal Methods Syst. Des</source>
          .
          <volume>49</volume>
          (
          <year>2016</year>
          )
          <fpage>190</fpage>
          -
          <lpage>218</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>A.</given-names>
            <surname>Komuravelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Gurfinkel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Chaki</surname>
          </string-name>
          ,
          <article-title>Smt-based model checking for recursive programs</article-title>
          ,
          <source>Formal Methods Syst. Des</source>
          .
          <volume>48</volume>
          (
          <year>2016</year>
          )
          <fpage>175</fpage>
          -
          <lpage>205</lpage>
          . URL: https://doi.org/10. 1007/s10703-016-0249-4. doi:
          <volume>10</volume>
          .1007/s10703-016-0249-4.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>K.</given-names>
            <surname>Hoder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. S.</given-names>
            <surname>Bjørner</surname>
          </string-name>
          ,
          <article-title>Generalized property directed reachability</article-title>
          ,
          <source>in: SAT</source>
          , volume
          <volume>7317</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2012</year>
          , pp.
          <fpage>157</fpage>
          -
          <lpage>171</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>J.</given-names>
            <surname>Birgmeier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. R.</given-names>
            <surname>Bradley</surname>
          </string-name>
          , G. Weissenbacher,
          <article-title>Counterexample to induction-guided abstraction-refinement (CTIGAR)</article-title>
          ,
          <source>in: CAV</source>
          , volume
          <volume>8559</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2014</year>
          , pp.
          <fpage>831</fpage>
          -
          <lpage>848</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>T.</given-names>
            <surname>Lange</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. R.</given-names>
            <surname>Neuhäußer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Noll</surname>
          </string-name>
          ,
          <string-name>
            <surname>J. Katoen,</surname>
          </string-name>
          <article-title>IC3 software model checking</article-title>
          ,
          <source>Int. J. Softw. Tools Technol. Transf</source>
          .
          <volume>22</volume>
          (
          <year>2020</year>
          )
          <fpage>135</fpage>
          -
          <lpage>161</lpage>
          . URL: https://doi.org/10.1007/ s10009-019-00547-x. doi:
          <volume>10</volume>
          .1007/s10009-019-00547-x.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>D.</given-names>
            <surname>Bueno</surname>
          </string-name>
          ,
          <string-name>
            <surname>K.</surname>
          </string-name>
          <article-title>A. Sakallah, euforia: Complete software model checking with uninterpreted functions</article-title>
          ,
          <source>in: VMCAI</source>
          , volume
          <volume>11388</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2019</year>
          , pp.
          <fpage>363</fpage>
          -
          <lpage>385</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>N. S.</given-names>
            <surname>Bjørner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Gurfinkel</surname>
          </string-name>
          ,
          <string-name>
            <surname>K. L. McMillan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Rybalchenko</surname>
          </string-name>
          ,
          <article-title>Horn clause solvers for program verification</article-title>
          ,
          <source>in: Fields of Logic and Computation II</source>
          , volume
          <volume>9300</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2015</year>
          , pp.
          <fpage>24</fpage>
          -
          <lpage>51</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>S.</given-names>
            <surname>Ghilardi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Nicolini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Ranise</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Zucchelli</surname>
          </string-name>
          ,
          <article-title>Towards SMT model checking of array-based systems</article-title>
          , in: IJCAR, volume
          <volume>5195</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2008</year>
          , pp.
          <fpage>67</fpage>
          -
          <lpage>82</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>A.</given-names>
            <surname>Eggers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Fränzle</surname>
          </string-name>
          ,
          <string-name>
            <surname>C.</surname>
          </string-name>
          <article-title>Herde, SAT modulo ODE: A direct SAT approach to hybrid systems</article-title>
          ,
          <source>in: ATVA</source>
          , volume
          <volume>5311</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2008</year>
          , pp.
          <fpage>171</fpage>
          -
          <lpage>185</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>A.</given-names>
            <surname>Eggers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Ramdani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. S.</given-names>
            <surname>Nedialkov</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Fränzle, Improving the SAT modulo ODE approach to hybrid systems analysis by combining diferent enclosure methods</article-title>
          ,
          <source>Softw. Syst. Model</source>
          .
          <volume>14</volume>
          (
          <year>2015</year>
          )
          <fpage>121</fpage>
          -
          <lpage>148</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mover</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          ,
          <article-title>Smt-based scenario verification for hybrid systems</article-title>
          ,
          <source>Formal Methods Syst. Des</source>
          .
          <volume>42</volume>
          (
          <year>2013</year>
          )
          <fpage>46</fpage>
          -
          <lpage>66</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>S.</given-names>
            <surname>Mover</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Irfan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          ,
          <article-title>Implicit semi-algebraic abstraction for polynomial dynamical systems</article-title>
          ,
          <source>in: CAV (1)</source>
          , volume
          <volume>12759</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2021</year>
          , pp.
          <fpage>529</fpage>
          -
          <lpage>551</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>S.</given-names>
            <surname>Ghilardi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Nicolini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Ranise</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Zucchelli</surname>
          </string-name>
          ,
          <article-title>Combination methods for satisifability and model-checking of infinite-state systems</article-title>
          ,
          <source>in: CADE</source>
          , volume
          <volume>4603</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2007</year>
          , pp.
          <fpage>362</fpage>
          -
          <lpage>378</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          ,
          <article-title>Linear-time temporal logic with event freezing functions</article-title>
          ,
          <source>in: GandALF</source>
          , volume
          <volume>256</volume>
          <source>of EPTCS</source>
          ,
          <year>2017</year>
          , pp.
          <fpage>195</fpage>
          -
          <lpage>209</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          , E. Magnago,
          <string-name>
            <given-names>M.</given-names>
            <surname>Roveri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          ,
          <article-title>Smt-based satisfiability of first-order LTL with event freezing functions and metric operators</article-title>
          ,
          <source>Inf. Comput</source>
          .
          <volume>272</volume>
          (
          <year>2020</year>
          )
          <fpage>104502</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>C.</given-names>
            <surname>Barrett</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Fontaine</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Tinelli</surname>
          </string-name>
          ,
          <source>The SMT-LIB Standard: Version 2</source>
          .6,
          <string-name>
            <surname>Technical</surname>
            <given-names>Report</given-names>
          </string-name>
          ,
          <year>2021</year>
          . https://smtlib.cs.uiowa.edu/papers/smt-lib
          <source>-reference-v2</source>
          .
          <fpage>6</fpage>
          -r2021-
          <fpage>05</fpage>
          -12.pdf.
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gario</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Micheli,
          <article-title>PySMT: a solver-agnostic library for fast prototyping of SMT-based algorithms</article-title>
          ,
          <source>in: SMT Workshop</source>
          <year>2015</year>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>M.</given-names>
            <surname>Mann</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . Wilson,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zohar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Stuntz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Irfan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Brown</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Donovick</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Guman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Tinelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. W.</given-names>
            <surname>Barrett</surname>
          </string-name>
          ,
          <article-title>Smt-switch: A solver-agnostic C++ API for SMT solving</article-title>
          ,
          <source>in: SAT</source>
          , volume
          <volume>12831</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2021</year>
          , pp.
          <fpage>377</fpage>
          -
          <lpage>386</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>D.</given-names>
            <surname>Baier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Beyer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Friedberger</surname>
          </string-name>
          ,
          <article-title>Javasmt 3: Interacting with SMT solvers in java</article-title>
          ,
          <source>in: CAV (2)</source>
          , volume
          <volume>12760</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2021</year>
          , pp.
          <fpage>195</fpage>
          -
          <lpage>208</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <surname>VMT-LIB</surname>
          </string-name>
          , http://vmt-lib.org,
          <year>2022</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>R.</given-names>
            <surname>Cavada</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Dorigatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Mariotti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Micheli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mover</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Roveri</surname>
          </string-name>
          ,
          <string-name>
            <surname>S. Tonetta,</surname>
          </string-name>
          <article-title>The nuxmv symbolic model checker</article-title>
          ,
          <source>in: CAV</source>
          , volume
          <volume>8559</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2014</year>
          , pp.
          <fpage>334</fpage>
          -
          <lpage>342</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          [32]
          <string-name>
            <given-names>A.</given-names>
            <surname>Goel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. A.</given-names>
            <surname>Sakallah</surname>
          </string-name>
          ,
          <article-title>AVR: abstractly verifying reachability</article-title>
          ,
          <source>in: TACAS (1)</source>
          , volume
          <volume>12078</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2020</year>
          , pp.
          <fpage>413</fpage>
          -
          <lpage>422</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          [33]
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mover</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          ,
          <article-title>Infinite-state invariant checking with IC3 and predicate abstraction</article-title>
          ,
          <source>Formal Methods Syst. Des</source>
          .
          <volume>49</volume>
          (
          <year>2016</year>
          )
          <fpage>190</fpage>
          -
          <lpage>218</lpage>
          . URL: https://doi.org/10.1007/s10703-016-0257-4. doi:
          <volume>10</volume>
          .1007/s10703-016-0257-4.
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          [34]
          <string-name>
            <given-names>M.</given-names>
            <surname>Mann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Irfan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Padon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. W.</given-names>
            <surname>Barrett</surname>
          </string-name>
          ,
          <article-title>Counterexample-guided prophecy for model checking modulo the theory of arrays</article-title>
          ,
          <source>in: TACAS (1)</source>
          , volume
          <volume>12651</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2021</year>
          , pp.
          <fpage>113</fpage>
          -
          <lpage>132</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          [35]
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          , G. Redondi,
          <article-title>Universal invariant checking of parametric systems with quantifier-free SMT reasoning</article-title>
          , in: CADE, volume
          <volume>12699</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2021</year>
          , pp.
          <fpage>131</fpage>
          -
          <lpage>147</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          [36]
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Irfan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Roveri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sebastiani</surname>
          </string-name>
          ,
          <article-title>Incremental Linearization for Satisfiability and Verification Modulo Nonlinear Arithmetic and Transcendental Functions</article-title>
          ,
          <source>ACM Trans. Comput. Log</source>
          .
          <volume>19</volume>
          (
          <year>2018</year>
          )
          <volume>19</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>19</lpage>
          :
          <fpage>52</fpage>
          . URL: https://doi.org/ 10.1145/3230639. doi:
          <volume>10</volume>
          .1145/3230639.
        </mixed-citation>
      </ref>
      <ref id="ref37">
        <mixed-citation>
          [37]
          <string-name>
            <given-names>A.</given-names>
            <surname>Biere</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Heljanko</surname>
          </string-name>
          , S. Wieringa, AIGER
          <volume>1</volume>
          .9 And
          <string-name>
            <surname>Beyond</surname>
          </string-name>
          ,
          <source>Technical Report 11/2</source>
          , Institute for Formal Models and Verification, Johannes Kepler University, Altenbergerstr.
          <volume>69</volume>
          ,
          <issue>4040</issue>
          Linz, Austria,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref38">
        <mixed-citation>
          [38]
          <string-name>
            <given-names>A.</given-names>
            <surname>Niemetz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Preiner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Wolf</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Biere</surname>
          </string-name>
          , Btor2 ,
          <source>btormc and boolector 3</source>
          .0, in:
          <source>CAV (1)</source>
          , volume
          <volume>10981</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2018</year>
          , pp.
          <fpage>587</fpage>
          -
          <lpage>595</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref39">
        <mixed-citation>
          [39]
          <string-name>
            <surname>mcil</surname>
          </string-name>
          ,
          <article-title>Developing an open-source, state-of-the-art symbolic model-checking framework for the model-checking research community</article-title>
          , https://www.aere.iastate.edu/ modelchecker/,
          <year>2022</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref40">
        <mixed-citation>
          [40]
          <string-name>
            <given-names>H.</given-names>
            <surname>Hojjat</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Konecný</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Garnier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Iosif</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Kuncak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Rümmer</surname>
          </string-name>
          ,
          <article-title>A verification toolkit for numerical transition systems - tool paper</article-title>
          ,
          <source>in: FM</source>
          , volume
          <volume>7436</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2012</year>
          , pp.
          <fpage>247</fpage>
          -
          <lpage>251</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref41">
        <mixed-citation>
          [41] ntslib, Ntslib. http://nts.imag.fr/index.php/Main_Page,
          <year>2022</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref42">
        <mixed-citation>
          [42]
          <string-name>
            <given-names>M. Y.</given-names>
            <surname>Vardi</surname>
          </string-name>
          ,
          <article-title>An automata-theoretic approach to linear temporal logic</article-title>
          ,
          <source>in: Banf Higher Order Workshop</source>
          , volume
          <volume>1043</volume>
          <source>of LNCS</source>
          , Springer,
          <year>1995</year>
          , pp.
          <fpage>238</fpage>
          -
          <lpage>266</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref43">
        <mixed-citation>
          [43]
          <string-name>
            <given-names>E. M.</given-names>
            <surname>Clarke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Grumberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Hamaguchi</surname>
          </string-name>
          ,
          <article-title>Another look at LTL model checking</article-title>
          ,
          <source>Formal Methods in System Design</source>
          <volume>10</volume>
          (
          <year>1997</year>
          )
          <fpage>47</fpage>
          -
          <lpage>71</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref44">
        <mixed-citation>
          [44]
          <string-name>
            <given-names>K.</given-names>
            <surname>Claessen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Eén</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Sterin</surname>
          </string-name>
          ,
          <article-title>A circuit approach to LTL model checking</article-title>
          , in: FMCAD, IEEE,
          <year>2013</year>
          , pp.
          <fpage>53</fpage>
          -
          <lpage>60</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref45">
        <mixed-citation>
          [45]
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Roveri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Tonetta</surname>
          </string-name>
          ,
          <article-title>Certifying proofs for SAT-based model checking</article-title>
          ,
          <source>Form Methods Syst Des</source>
          (
          <year>2021</year>
          ).
          <source>doi:10.1007/s10703-021-00369-1.</source>
        </mixed-citation>
      </ref>
      <ref id="ref46">
        <mixed-citation>
          [46]
          <fpage>ic3ia</fpage>
          ,
          <fpage>Ic3ia</fpage>
          . https://es-static.fbk.eu/people/griggio/ic3ia/,
          <year>2022</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref47">
        <mixed-citation>
          [47] pyvmt, Pyvmt. https://github.com/pyvmt/pyvmt,
          <year>2022</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>