Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Bounded satisfiability checking of metric temporal logic specifications

Published: 30 July 2013 Publication History

Abstract

We introduce bounded satisfiability checking, a verification technique that extends bounded model checking by allowing also the analysis of a descriptive model, consisting of temporal logic formulae, instead of the more customary operational model, consisting of a state transition system. We define techniques for encoding temporal logic formulae into Boolean logic that support the use of bi-infinite time domain and of metric time operators. In the framework of bounded satisfiability checking, we show how a descriptive model can be refined into an operational one, and how the correctness of such a refinement can be verified for the bounded case, setting the stage for a stepwise system development method based on a bounded model refinement. Finally, we show how the adoption of a modular approach can make the bounded refinement process more manageable and efficient. All introduced concepts are extensively applied to a set of case studies, and thoroughly experimented through Zot, our SAT solver-based verification toolset.

References

[1]
Abrial, J.-R. 1996. The B-Book: Assigning Programs to Meanings. Cambridge University Press.
[2]
Bengtsson, J., Larsen, K. G., Larsson, F., Pettersson, P., and Yi, W. 1995. UPPAAL: A tool suite for automatic verification of real--time systems. In Proceedings of the Workshop on Verification and Control of Hybrid Systems III. Lecture Notes in Computer Science, vol. 1066, Springer, 232--243.
[3]
Bersani, M. M., Furia, C. A., Pradella, M., and Rossi, M. 2009. Integrated modeling and verification of real-time systems through multiple paradigms. In Proceedings of the 7th IEEE International Conference on Software Engineering and Formal Methods (SEFM'09). D. V. Hung and P. Krishnan, Eds., IEEE Computer Society, 13--22.
[4]
Biere, A., Cimatti, A., Clarke, E., and Zhu, Y. 1999. Symbolic model checking without bdds. In Proceedings of the 5th International Conference on Tools and Algorithms for Construction and Analysis of Systems. Lecture Notes in Computer Science, vol. 1579, Springer, 193--207.
[5]
Biere, A., Heljanko, K., Junttila, T., Latvala, T., and Schuppan, V. 2006. Linear encodings of bounded ltl model checking. Logic. Methods Comput. Sci. 2, 5, 1--64.
[6]
Ciapessoni, E., Mirandola, P., Coen-Porisini, A., Mandrioli, D., and Morzenti, A. 1999. From formal models to formally based methods: An industrial experience. ACM Trans. Softw. Eng. Methodol. 8, 1, 79--113.
[7]
Cimatti, A., Clarke, E. M., Giunchiglia, E., Giunchiglia, F., Pistore, M., Roveri, M., Sebastiani, R., and Tacchella, A. 2002. NuSMV 2: An opensource tool for symbolic model checking. In Proceedings of the 14th International Conference on Computer Aided Verification (CAV'02). Springer, 359--364.
[8]
Clarke, E., Kroening, D., and Lerda, F. 2004. A tool for checking ansi-c programs. In Proceedings of the 10th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS'04). K. Jensen and A. Podelski, Eds, Lecture Notes in Computer Science, vol. 2988, Springer, 168--176.
[9]
Clarke, E., Kroening, D., Ouaknine, J., and Strichman, O. 2005. Computational challenges in bounded model checking. Softw. Tools Technol. Transfer 7, 2, 174--183.
[10]
Clarke, E. M., Gupta, A., Kukula, J. H., and Strichman, O. 2002. SAT based abstraction-refinement using ilp and machine learning techniques. In Proceedings of the 14th International Conference on Computer Aided Verification (CAV'02). E. Brinksma and K. G. Larsen, Eds., Lecture Notes in Computer Science, vol. 2404, Springer, 265--279.
[11]
Coen-Porisini, A., Pradella, M., and San Pietro, P. 1998. A finite-domain semantics for testing temporal logic specifications. In Proceedings of the 5th International Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems (FTRTFT'98). 41--54.
[12]
De Moura, L. M., Owre, S., Ruess, H., Rushby, J. M., Shankar, N., Sorea, M., and Tiwari, A. 2004. SAL 2. In Proceedings of the 16th International Conference on Computer Aided Verification (CAV'04). R. Alur and D. Peled, Eds., Lecture Notes in Computer Science, vol. 3114., Springer, 496--500.
[13]
De Roever, W. P. 1997. The need for compositional proof systems: A survey. In Proceedings of the International Symposium on Compositionality: The Significant Difference (COMPOS'97). W. P. de Roever, H. Langmaack, and A. Pnueli, Eds., Lecture Notes in Computer Science, vol. 1536, Springer, 1--22.
[14]
De Roever, W.-P., De Boer, F., Hannemann, U., Hooman, J., Lakhnech, Y., Poel, M., and Zwiers, J. 2001. Concurrency Verification: Introduction to Compositional and Noncompositional Methods. Cambridge University Press.
[15]
Een, N. and Sorensson, N. 2003. An extensible sat-solver. In Proceedings of the 6th International Conference on Theory and Application of Satisfiability Testing (SAT'03). Lecture Notes in Computer Science, vol. 2919, Springer, 502--518.
[16]
Felder, M. and Morzenti, A. 1994. Validating real-time systems by history-checking trio specifications. ACM Trans. Softw. Eng. Methodol. 3, 4, 308--339.
[17]
Furia, C. A., Pradella, M., and Rossi, M. 2008a. Automated verification of dense-time mtl specifications via discretetime approximation. In Proceedings of the 15th International Symposium on Formal Methods (FM'08). J. Cuellar, T. S. E. Maibaum, and K. Sere, Eds., Lecture Notes in Computer Science, vol. 5014, Springer, 132--147.
[18]
Furia, C. A., Pradella, M., and Rossi, M. 2008b. Practical automated partial verification of multi-paradigm real-time models. In Proceedings of the 10th International Conference on Formal Methods and Software Engineering (ICFEM'08). S. Liu, T. S. E. Maibaum, and K. Araki, Eds., Lecture Notes in Computer Science, vol. 5256, Springer, 298--317.
[19]
Furia, C. A., Rossi, M., Mandrioli, D., and Morzenti, A. 2007. Automated compositional proofs for real-time systems. Theor. Comput. Sci. 376, 3, 164--184.
[20]
Gargantini, A. and Morzenti, A. 2001. Automated deductive requirements analysis of critical systems. ACM Trans. Softw. Eng. Methodol. 10, 3, 255--307.
[21]
Ghezzi, C., Mandrioli, D., and Morzenti, A. 1990. TRIO: A logic language for executable specifications of real-time systems. J. Syst. Softw. 12, 2, 107--123.
[22]
Gire, F. and Nivat, M. 1991. Langages algebriques de mots biinfinis. Theor. Comput. Sci. 86, 2, 277--323.
[23]
Grumberg, O. and Long, D. E. 1994. Model checking and modular verification. ACM Trans. Program. Lang. Syst. 16, 3, 843--871.
[24]
Heitmeyer, C. and Mandrioli, D. 1996. Formal Methods for Real-Time Computing. John Wiley and Sons, New York.
[25]
Heljanko, K., Junttila, T. A., and Latvala, T. 2005. Incremental and complete bounded model checking for full pltl. In Proceedings of the 17th International Conference on Computer Aided Verification (CAV'05). K. Etessami and S. K. Rajamani, Eds., Lecture Notes in Computer Science, vol. 3576, Springer, 98--111.
[26]
Holzmann, G. J. 1997. The model checker spin. IEEE Trans. Softw. Engin. 23, 5, 279--295.
[27]
Hooman, J. 1998. Compositional verification of real-time applications. In Revised Lectures from the International Symposium on Compositionality: The Significant Difference (COMPOS'97). Lecture Notes in Computer Science, vol. 1536, Springer, 276--300.
[28]
Jackson, D. 2003. Alloy: A logical modelling language. In Proceedings of the 3rd International Conference on Formal Specification and Development in Z and B, D. Bert, J. P. Bowen, S. King, and M. A. Walden, Eds. Lecture Notes in Computer Science, vol. 2651, Springer, 1.
[29]
Jhala, R. and Mcmillan, K. L. 2001. Microarchitecture verification by compositional model checking. In Proceedings of the 13th International Conference on Computer Aided Verification (CAV'01), G. Berry, H. Comon, and A. Finkel, Eds. Lecture Notes in Computer Science, vol. 2102. Springer, 396--410.
[30]
Kamp, J. A. W. 1968. Tense logic and the theory of linear order. Ph.D. thesis. University of California at Los Angeles.
[31]
Koymans, R. 1990. Specifying real-time properties with metric temporal logic. Real-Time Syst. 2, 4, 255--299.
[32]
Kroening, D. and Strichman, O. 2003. Efficient computation of recurrence diameters. In Proceedings of the 4th International Conference on Verification, Model Checking, and Abstract Interpretation (VMCAI'03), L. D. Zuck, P. C. Attie, A. Cortesi, and S. Mukhopadhyay, Eds. Lecture Notes in Computer Science, vol. 2575. Springer, 298--309.
[33]
Lamport, L. 1987. A fast mutual exclusion algorithm. ACM Trans. Comput. Syst. 5, 1, 1--11.
[34]
Lewis, M., Schubert, T., and Becker., B. 2007. Multithreaded sat solving. In 12th Asia and South Pacific Design Automation Conference.
[35]
Lichtenstein, O., Pnueli, A., and Zuck, L. D. 1985. The glory of the past. In Proceedings of the Conference on Logic of Programs. Springer, 196--218.
[36]
Mandrioli, D., Morasca, S., and Morzenti, A. 1995. Generating test cases for real-time systems from logic specifications. ACM Trans. Comput. Syst. 13, 4, 365--398.
[37]
Manolios, P., Srinivasan, S. K., and Vroon, D. 2007. BAT: The bit-level analysis tool. In Proceedings of the 19th International Conference on Computer Aided Verification (CAV'07), W. Damm and H. Hermanns, Eds. Lecture Notes in Computer Science, vol. 4590. Springer, 303--306.
[38]
Mcmillan, K. L. 2000. A methodology for hardware verification using compositional model checking. Sci. Comput. Program. 37, 1--3, 279--309.
[39]
Morasca, S., Morzenti, A., and San Pietro, P. 2000. A case study on applying a tool for automated system analysis object oriented logic specification of time-critical systems. based on modular specifications written in trio. Autom. Softw. Engin. 7, 2, 125--155.
[40]
Morzenti, A., Mandrioli, D., and Ghezzi, C. 1992. A model parametric real-time logic. ACM Trans. Program. Lang. Syst. 14, 4, 521--573.
[41]
Morzenti, A., Pradella, M., San Pietro, P., and Spoletini, P. 2003. Model-checking trio specifications in spin. In Proceedings of the International Symposium of Formal Methods Europe (FME'03). K. Araki, S. Gnesi, and D. Mandrioli, Eds., Lecture Notes in Computer Science, vol. 2805, Springer, 542--561.
[42]
Morzenti, A. and San Pietro, P. 1994. Object-oriented logical specification of time-critical systems. ACM Trans. Softw. Engin. Methodol. 3, 1, 56--98.
[43]
Nieuwenhuis, R., Oliveras, A., and Tinelli, C. 2006. Solving sat and sat modulo theories: From an abstract davis--Putnam--Logemann--Loveland procedure to dpll(t). J. ACM 53, 6, 937--977.
[44]
Ostroff, J. S. 1999. Composition and refinement of discrte real-time systems. ACM Trans. Softw. Engin. Methodol. 8, 1, 1--48.
[45]
Perrin, D. and Pin, J.-E. 2004. Infinite Words. Automata, Semigroups, Logic and Games. Pure and Applied Mathematics, vol. 141, Elsevier.
[46]
Pnueli, A. 1977. The temporal logic of programs. In Proceedings of the 18th IEEE Symposium on the Foundations of Computer Science (FOCS'77). IEEE Computer Society, 46--57.
[47]
Pradella, M., Morzenti, A., and San Pietro, P. 2007. The symmetry of the past and of the future: Bi-infinite time in the verification of temporal properties. In Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering (ESEC/FSE'07).
[48]
Pradella, M., Morzenti, A., and San Pietro, P. 2008a. Benchmarking model- and satisfiability-checking on bi-infinite time. In Proceedings of the 5th International Colloquium on Theoretical Aspects of Computing (ICTAC'08). Lecture Notes in Computer Science, vol. 5160, Springer, 290--304.
[49]
Pradella, M., Morzenti, A., and San Pietro, P. 2008b. Refining real-time system specifications through bounded model- and satisfiability-checking. In Proceedings of the 23rd IEEE/ACM International Conference on Automated Software Engineering (ASE'08). 119--127.
[50]
Pradella, M., Morzenti, A., and San Pietro, P. 2009. A metric encoding for bounded model checking. In Proceedings of the 2nd World Congress on Formal Methods (FM'09). A. Cavalcanti and D. Dams, Eds., Lecture Notes in Computer Science, vol. 5850, Springer, 741--756.
[51]
Pradella, M., San Pietro, P., Spoletini, P., and Morzenti, A. 2003. Practical model checking of ltl with past. In Proceedings of the International Symposium on Automated Technology for Verification and Analysis (ATVA'03).
[52]
Prior, A. 1967. Past, Present and Future. Oxford University Press, Oxford, UK.
[53]
Rescher, N. and Urquhart, A. 1971. Temporal Logic. Springer, New York.
[54]
Rozier, K. Y. and Vardi, M. Y. 2007. LTL satisfiability checking. In Proceedings of the 14th International SPIN Conference on Model Checking Software. Lecture Notes in Computer Science, vol. 4595, Springer, 149--167.
[55]
San Pietro, P., Morzenti, A., and Morasca, S. 2000. Generation of execution sequences for modular time critical systems. IEEE Trans. Softw. Engin. 26, 2, 128--149.

Cited By

View all
  • (2023)Towards Building Verifiable CPS using Lingua FrancaACM Transactions on Embedded Computing Systems10.1145/360913422:5s(1-24)Online publication date: 31-Oct-2023
  • (2023)AutoMTLSpec: Learning to Generate MTL Specifications from Natural Language Contracts2023 27th International Conference on Engineering of Complex Computer Systems (ICECCS)10.1109/ICECCS59891.2023.00018(71-80)Online publication date: 14-Jun-2023
  • (2023)Early Verification of Legal Compliance via Bounded Satisfiability CheckingComputer Aided Verification10.1007/978-3-031-37709-9_18(374-396)Online publication date: 17-Jul-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Software Engineering and Methodology
ACM Transactions on Software Engineering and Methodology  Volume 22, Issue 3
In memoriam, fault detection and localization, formal methods, modeling and design
July 2013
414 pages
ISSN:1049-331X
EISSN:1557-7392
DOI:10.1145/2491509
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 30 July 2013
Accepted: 01 March 2012
Revised: 01 February 2012
Received: 01 July 2010
Published in TOSEM Volume 22, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Formal methods
  2. bi-infinite time
  3. bounded model checking
  4. refinement
  5. temporal logic

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)13
  • Downloads (Last 6 weeks)1
Reflects downloads up to 30 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Towards Building Verifiable CPS using Lingua FrancaACM Transactions on Embedded Computing Systems10.1145/360913422:5s(1-24)Online publication date: 31-Oct-2023
  • (2023)AutoMTLSpec: Learning to Generate MTL Specifications from Natural Language Contracts2023 27th International Conference on Engineering of Complex Computer Systems (ICECCS)10.1109/ICECCS59891.2023.00018(71-80)Online publication date: 14-Jun-2023
  • (2023)Early Verification of Legal Compliance via Bounded Satisfiability CheckingComputer Aided Verification10.1007/978-3-031-37709-9_18(374-396)Online publication date: 17-Jul-2023
  • (2022)Bounded Model Checking for Metric Temporal Logic Properties of Timed Automata with Digital ClocksSensors10.3390/s2223955222:23(9552)Online publication date: 6-Dec-2022
  • (2022)On How Bit-Vector Logic Can Help Verify LTL-Based SpecificationsIEEE Transactions on Software Engineering10.1109/TSE.2020.301439448:4(1154-1168)Online publication date: 1-Apr-2022
  • (2022)Satisfiability checking for Mission-time LTL (MLTL)Information and Computation10.1016/j.ic.2022.104923289(104923)Online publication date: Nov-2022
  • (2021)Formally-based Model-Driven Development of Collaborative Robotic ApplicationsJournal of Intelligent and Robotic Systems10.1007/s10846-021-01386-2102:3Online publication date: 1-Jul-2021
  • (2020)Co-Simulation of Human-Robot Collaboration: from Temporal Logic to 3D SimulationElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.319.1319(1-8)Online publication date: 23-Jul-2020
  • (2020)A spatio-temporal specification language and its completeness & decidabilityJournal of Cloud Computing: Advances, Systems and Applications10.1186/s13677-020-00209-39:1Online publication date: 25-Nov-2020
  • (2020)Safety Assessment of Collaborative Robotics Through Automated Formal VerificationIEEE Transactions on Robotics10.1109/TRO.2019.293747136:1(42-61)Online publication date: Feb-2020
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media