ITC-IRST Node Report

Last updated: 1 October 2004 by Marco Bozzano

See also Task 1.2 report and Task 3.4 report

Scientists in charge

Piergiorgio Bertoli (researcher, ITC-IRST),
Marco Bozzano (researcher, ITC-IRST),
Alessandro Cimatti (researcher, ITC-IRST),
Roberto Sebastiani (assistant professor, University of Trento, collaborator of ITC-IRST).

Sketch of contributions

IRST participates in tasks: 1.2, 2.3, 3.2 and 3.4. IRST is a leader of tasks 1.2 and 3.4.

The definition of decision procedures for expressive logical theories, in particular those handling formulas combining boolean propositions and constraints over real variables, is a very important and challenging problem. Its importance lies in the fact that problems arising from different real-world domains, ranging from formal verification of infinite state systems to planning with resources, can be easily encoded as decision problems for such theories. The challenge is to define automatic decision procedures, that are able to deal with a wide class of problems, but are also able to recognize easy problems and to deal with them efficiently.
In particular, our ultimate goal goes in direction of the development of verification tools (model checkers) for complex real-world systems and protocols, in particular of timed systems. This requires procedures able to handle both the (rather heavy) boolean reasoning component and the mathematical solving component which are intrinsic in this kind of problems.

As our contribution to Task 1.2, we present the foundations and the basic algorithms for a new class of procedures for solving boolean combinations of boolean and mathematical propositions, which combine boolean and mathematical solvers, and we highlight the main requirements that boolean and mathematical solvers must fulfil in order to achieve the maximum benefits from their integration.
For details see [1,2,4, 10].

As our contribution to Task 2.3, we present MathSAT. MathSAT is a decision procedures for combinations of boolean and linear mathematical propositions, based on two main ingredients. The first is a SAT procedure, for dealing efficiently with the propositional component of the problem. The second is a tight integration, within the DPLL architecture, of a set of mathematical deciders for theories of increasing expressive power. The existence of such procedure opens the ability to solve problems arising from real-world domains such as verification of timed and hybrid systems and planning with resources.
For details see [2].

As our contribution to Task 3.2 we propose a new, symbolic verification technique that extends the Bounded Model Checking (BMC) approach for the verification of timed and hybrid systems. The approach is based on the following ingredients. First, a BMC problem for timed systems is reduced to the satisfiability of a math-formula, i.e., a boolean combination of propositional variables and linear mathematical relations over real variables (used to represent clocks and continuous dynamics). Then, an appropriate solver, a customized version of MathSAT (see above), is used to check the satisfiability of the math-formula.
The proposed approach allows for handling expressive properties in a fully-symbolic way. A preliminary experimental evaluation confirms the potential of the approach.
For details see [3, 9].

Finally, as our contribution to Task 3.4, we show how existing systems are captured by our framework described in task 1.2.
For details see [1].

Young researchers / task / contribution / training efforts

Gilles Audemard (University of Provence, France). Young visiting researcher at IRST (Trento) from 1/11/01 to 31/8/02.

Gilles' work focused on the analysis, design and implementation of efficient algorithms that combine algebraic decision procedures (mathematical solving & computing services) and logical reasoning capabilities (proving services), with the main goal of automatically verifying timed systems. In particular, he took part to the requirement analysis, design and implementation of MathSAT [2], a system combining the (high-performances) boolean reasoning capabilities of the SAT procedure SIM with the mathematical solving capability of a home-made decision procedure for linear arithmetic formulas over the reals. He has taken in charge the development of the resulting system.
He contributed to the development of the general framework (logical foundations and basic algorithms) for combining boolean decision procedures and mathematical solvers, and to the definition of the main requirements that boolean and mathematical solvers must fulfill in order to achieve the maximum benefits from their integration [1]. To this extent, his contribution focused mainly on the requirements for boolean decision procedures.
He also contributed to the development of the encoder able to convert a Bounded Model Checking problem for timed systems into the satisfiability of math-formulas[3].
Gilles already had a good background in pure SAT. He has undergone an intensive training in formal methods, model checking, techniques for integrating SAT with domain-specific procedures and techniques for mathematical solving.
He presented a part of his work during the CALCULEMUS Network Task Forces Meeting (Genova, 14-15 February 2002).

Artur Kornilowicz (University of Bialystok, Poland). Young visiting researcher at IRST (Trento) from 16/7/01 to 30/6/02.

Artur's work focused on the design and implementation of efficient algorithms that automatically establish the satisfiability of a specific class of mathematical formulae, which can be used to model timed systems. The algorithms are designed in order to closely integrate as a Math-Solver module of MathSAT [2]. He has taken in charge the development of the Math-Solver module.
He also contributed to the development of the general framework for combining boolean decision procedures and mathematical solvers, and to the definition of the main requirements that boolean and mathematical solvers must fulfill in order to achieve the maximum benefits from their integration [1]. To this extent, his contribution focused mainly on the requirements for mathematical solvers.
He contributed to the conception of the logical encoding for converting a Bounded Model Checking problem for timed systems into the satisfiability of math-formulas[3].
Artur already had a good background in logic and in logical formalization of problems. He has undergone an intensive training in SAT, formal methods, model checking, techniques for integrating SAT with domain-specific procedures, and algorithms for mathematical solving.
He presented a part of his work during the CALCULEMUS Network Task Forces Meeting (Genova, 14-15 February 2002).
Daniel Sheridan  (School of Informatics, University of Edumburgh). Young visiting researcher at IRST (Trento) from 13/2/03 to 6/4/03.

Daniel's work focussed in improved bounded model checking encodings, by reasoning about temporal logic as well as the problem domain in general, in particular the use of techniques from temporal logic theorem proving; and generally increasing the applicability of bounded model checking. His work at ITC-IRST was concerned with both the symbolic and bounded model checking aspects of the NuSMV model checker: improving the behaviour of the system on non-Boolean data types and integrating the improved encoding routines that were the results of his research.

Veselin Kirov  (Bulgaria). Young visiting researcher at IRST (Trento) from 1/6/03 to 31/10/03 and from 1/3/04 to 30/4/04.

Stephan Schulz  (TU Muenchen). Young visiting researcher at RISC, visiting IRST (Trento) from 7/1/2004 to 26/3/04.
Stephan worked on four main topics during his CALCULEMUS stay: Communication protocols for reasoning systems, improvements for first-order deduction systems, automated domain exploration, and decision procedures for fragments of first order logic. Most of his work at ICT/irst was on the last topic. He developed and implemented a robust and efficient congruence closure algorithm that forms the equational solver of the latest version of MathSat. The system makes MathSat into an efficient decision procedure for the logic of equality with uninterpreted function symbols (EUF) and plays an important role in reasoning about other theories. In fall 2003, Stephan attended the Fourth International Workshop on the Implementation of Logics (as an invited speaker) and LPAR-2004. In summer 2004, he presented a number of results obtained during his CALCULEMUS work at IJCAR-2004 and the IJCAR-Workshop on Empirically Successful First-Order Reasoning. He published the papers [11,12,13,14].
Tommi Junttila  (Helsinki University of Technology, Finland). Young visiting researcher at IRST (Trento) from 15/1/04 to 31/8/04.
Tommi's work focused on the analysis, design and implementation of efficient algorithms that combine algebraic decision procedures (mathematical solving) and logical reasoning capabilities (proving services).  In particular, he took part to the requirement analysis, design and implementation of the new version of MathSAT [2], a system combining the (high-performance) boolean reasoning capabilities with the mathematical solving capability. His main contributions were the designing and implementing the top-level solver module and the preprocessor for non-clausal formulae in the new version of the MathSAT solver. The top-level solver extends the Minisat Boolean satisfiability checker developed at Chalmers University by interfacing it with the data structures representing non-Boolean formulae and with theory specific solvers such as one for the theory of equality with uninterpreted functions and one for linear and non-linear arithmetics. The preprocessor for non-clausal formulae enables one to use more natural and compact form for describing problems. The formulae are then translated to the special conjunctive normal form accepted by the top-level solver by a series of satisfiability preserving steps. In addition, he has contributed to the bounded model checker module of the NuSMV symbolic model checker. He has improved the Boolean circuit package in NuSMV so that it now produces more compact representations of problems. Furthermore, he has designed and implemented a module for incremental satisfiability checking in NuSMV. Based on this module, he has implemented the temporal induction algorithms described by Een and Sorensen in [6] and integrated incremental SAT solving also to bounded model checking of linear time temporal properties. During his stay in Trento he has participated in two conferences, the International Conference on Application of Concurrency to System Design (ACSD 2004) in Hamilton, Canada, June 2004 and 25th International Conference on Application and Theory of Petri Nets (ATPN 2004) in Bologna, Italy, June 2004. In these conferences, he presented new results concerning the symmetry reduction method for explicit state space anylysis obtained prior to the visit at IRST. The presented papers are [7][8] The conference trips were funded by IRST through the CALCULEMUS project.
Peter van Rossum  (The Netherlands). Young visiting researcher at IRST (Trento) from 15/1/04 to 31/8/04.

Gavin Keighren (University of Edumburgh). Young visiting researcher at IRST (Trento) from 1/3/04 to 31/8/04.
The focus of his work has been towards the constant improvement of the model checker NuSMV. Initially this involved working on increasing the functionality provided by the program, by means of allowing input files to be automatically run through external preprocessors. He also made the modifications necessary to integrate the improved RBC encodings which Tommi Junttila had provided. He has been involved in the revision of the user-manual and tutorial to reflect the changes made to NuSMV. The other main area of his work has been to investigate the boolean encoding methods used by NuSMV, with the aim of improving the solution times for SAT-based bounded model checking. Primarily, it has focused on reducing the  size of the formula which is passed to the external SAT solver. He has also been involved in the testing and benchmarking of the new incremental algorithms which have been added to the latest version of NuSMV.

Networking Events

Publications and References


1
G. Audemard, P. Bertoli, A. Cimatti, A. Kornilowicz and R. Sebastiani.
Integrating Boolean and Mathematical Solving: Foundations, Basic Algorithms and Requirements.
In "Artificial Intelligence and Symbolic Computation. Proc. of Joint AISC 2002 and Calculemus 2002." Marseille, France, July 2002.
LNAI N.2385 © Springer Verlag.
Relevant for tasks 1.2 and 3.4.
2
G. Audemard, P. Bertoli, A. Cimatti, A. Kornilowicz and R. Sebastiani.
A SAT Based Approach for Solving Formulas over Boolean and Linear Mathematical Propositions.
In "Proc. 18th Int. Conference on Automated Deduction (CADE-18), part of Federated Logic Conference (FLoC'02)". Copenhagen, Denmark, July 2002. LNAI N.2392 © Springer Verlag.
Relevant for tasks 1.2 and 2.3.
3
G. Audemard, A. Cimatti, A. Kornilowicz and R. Sebastiani.
Bounded Model Checking for Timed Systems.
In "Proc. 22nd Joint International Conference on Formal Techniques for Networked and Distributed Systems (FORTE 2002)". Houston, TX, USA, November 2002.
LNCS © Springer Verlag (to appear).
Relevant for task 3.2.
4
R. Sebastiani.
Integrating SAT Solvers with Math Reasoners: Foundations and Basic Algorithms
ITC-IRST Technical report 0111-22. November 2001.
Relevant for tasks 1.2 and 3.4.
5
F. Giunchiglia, R. Sebastiani and P. Traverso.
Integrating SAT solvers with domain-specific reasoners.
In "Proc. 8th Symposium on the Integration of Symbolic Computation and Mechanized Reasoning, Calculemus 2000". St. Andrews, Scotland, UK, August 2000. © A.K. Peters Eds.
Relevant for tasks 1.2 and 3.4.
Relevant for tasks 1.2 and 3.4
6
Niklas Eén and Niklas Sörensson.
Temporal induction by incremental SAT solving.
Electronic Notes in Theoretical Computer Science, 89(4).
Elsevier, 2004.
7
Tommi Junttila.
New Orbit Algorithms for Data Symmetries.
In "Proc. Application of Concurrency to System Design 2004", pages 175-184.
IEEE, 2004.

8
Tommi Junttila.
New Canonical Representative Marking Algorithms for Place/Transition-Nets.
In "Proc. Application and Theory of Petri Nets 2004", pages 258-277.
LNCS 3099. Springer, 2004.

9
G. Audemard, M.Bozzano, A.Cimatti and R.Sebastiani.
Verifying Industrial Hybrid Systems with MathSat.
In Proc. PDPAR 2003. Miami, Florida, July 29, 2003.


10
M.Bozzano, A.Cimatti, G.Colombini, V.Kirov and R.Sebastiani.
The MathSat solver -- a progress report.
In Proc. PDPAR 2004, Cork, Ireland, July 5, 2004.

11
S. Sutcliffe and S. Schulz and T. Tammet (eds).
Proceedings of the IJCAR Workshop on Empirically Successful First Order Reasoning (ESFOR-2004), Cork, Ireland.
ENTCS, Elsevier Science, 2004.

12
S. Sutcliffe and J. Zimmer and S. Schulz.
TSTP Data-Exchange Formats for Automated Theorem Proving Tools.
In V. Sorge and W. Zhang (eds.): Distributed and Multi-Agent Reasoning, Frontiers in Artificial Intelligence and Application.
IOS Press, 2004

13
S. Schulz.
System Description: E 0.81.
In D. Basin and M. Rusinowitch (eds.): Proc. of the 2nd IJCAR, Cork, Ireland.
LNAI 3097, Springer, 2004.

14
S. Schulz.
Simple and Efficient Clause Subsumption with Feature Vector Indexing.
In G. Sutcliffe and S. Schulz and T. Tammet (eds.): Proc. of the IJCAR-2004 Workshop on Empirically Successful First-Order Theorem Proving, Cork, Ireland.
ENTCS, Elsevier Science, 2004.