Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/143165.143235acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free access

Model checking and abstraction

Published: 01 February 1992 Publication History

Abstract

We describe a method for using abstraction to reduce the complexity of temporal logic model checking. The basis of this method is a way of constructing an abstract model of a program without ever examining the corresponding unabstracted model. We show how this abstract model can be used to verify properties of the original program. We have implemented a system based on these techniques, and we demonstrate their practicality using a number of examples, including a pipelined ALU circuit with over 101300 states.

References

[1]
M. C. Browne, E. M. Clarke, D. L. Dill, and B. Mishra. Automatic verification of sequential circuits using temporal logic. IEEE Trans. Comput., C-35(12):1035-1044, 1986.
[2]
R. E. Bryant. Graph-based algorithms for boolean function manipulation. IEEE Trans. Comput., C-35(8), 1986.
[3]
J. R. Butch, E. M. Clarke, and D. E. Long. Representing circuits more efficiently in symbolic model checking. In Proc. 28th A CM/IEEE Design Automation Conf. IEEE Comp. Soc. Press, June 1991.
[4]
J. R. Butch, E. M. Clarke, K. L. McMillan, and D. L. Dill. Sequential circuit verification using symbolic model checking. In Proc. 27th A CM/IEEE Design Automation Conf. IEEE Comp. Soc. Press, June 1990.
[5]
E. M. Clarke and E. A. Emerson. Synthesis of synchronization skeletons for branching time temporal logic. In Logic of Programs: Workshop, Yorktown Heights, NY, May 1981, volume 131 of LNCS. Springer-Verlag, 1981.
[6]
E. M. Clarke, E. A. Emerson, and A. P. Sistla. Automatic verification of finite-state concurrent systems using temporal logic specifications. In Proc. l Oth Ann. ACM Syrup. on Principles of Prog. Lang., Jan. 1983.
[7]
E. M. Clarke, E. A. Emerson, and A. P. Sistla. Automatic verification of finite-state concurrent systems using temporal logic specifications. A CM Trans. Prog. Lang. Syst., 8(2):244-263, 1986.
[8]
E. M. Clarke, D. E. Long, and K. L. McMillan. Compositional model checking. In Proc. ~th Ann. Syrup. on Logic in Comput. Sci. IEEE Comp. Soc. Press, June 1989.
[9]
O. Coudert and J. C. Madre. A unified framework for the formal verification of sequential circuits. In Proc. 1990 IEEE Inter. Conf. on Comput.-Aided Design. IEEE Comp. Soc. Press, Nov. 1990.
[10]
D. L. Dill. Trace Theory for Automatic Hierarchical Verification of Speed-Independent Circuits. ACM Distinguished Dissertations. MIT Press~ 1989.
[11]
S. Graf and B. Steffen. Compositional minimization of finite state processes. In R. P. Kurshan and E. M. Clarke, editors, Proc. 1990 Workshop on Comput. Aided Verification, June 1990.
[12]
O. Grumberg and D. E. Long. Model checking and modular verification. In J. C. M. Baeten and J. F. Groote, editors, Proc. CONCUR '91: 2nd Inter. Conf. on Concurrency Theory, volume 527 of LNCS. Springer-Vertag, Aug. 1991.
[13]
Z. Har'E1 and R. P. Kurshan. The COSPAN user's guide. Technical Report 11211-871009-21TM, AT&T Bell Labs, 1987.
[14]
R. P. Kurshan. Analysis of discrete event coordination. In J. W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Proc. REX Workshop on Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness, volume 430 of LNCS. Springer-Verlag, May 1989.
[15]
O. Lichtenstein and A. Pnueli. Checking that finite state concurrent programs satisfy their linear specification. in Proc. 12th Ann. A CM Syrup. on Principles of P~'og. Lang., Jan. 1985.
[16]
J. Quielle and J. Sifakis. Specification and verification of concurrent systems in CESAR. In Proc. Fifth Inter. Syrup. in Programming, 1981.
[17]
A. P. Sistla and E. Clarke. Complexity of propositional temporal logics. J. A CM, 32(3):733-749, July 1986.
[18]
P. Wolper. Expressing interesting properties of programs in propositional temporal logic. In Proe. 13th Ann. A CM Syrup. on Principles of Prog. Lang., Jan. 1986.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
POPL '92: Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
February 1992
376 pages
ISBN:0897914538
DOI:10.1145/143165
  • Chairman:
  • Ravi Sethi
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 February 1992

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

POPL92
POPL92: 19th ACM Symposium on Principles of Programming Languages
January 19 - 22, 1992
New Mexico, Albuquerque, USA

Acceptance Rates

POPL '92 Paper Acceptance Rate 30 of 204 submissions, 15%;
Overall Acceptance Rate 824 of 4,130 submissions, 20%

Upcoming Conference

POPL '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)85
  • Downloads (Last 6 weeks)14
Reflects downloads up to 06 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2022)Face Anonymity Based on Facial Pose ConsistencyInternational Journal of Digital Crime and Forensics10.4018/IJDCF.30287214:2(1-12)Online publication date: 19-May-2022
  • (2022)History of Abstract InterpretationIEEE Annals of the History of Computing10.1109/MAHC.2021.313313644:2(33-43)Online publication date: 1-Apr-2022
  • (2022)Bit-Level Model CheckingHandbook of Computer Architecture10.1007/978-981-15-6401-7_35-1(1-40)Online publication date: 13-Apr-2022
  • (2019)Continuous-Time Models for System Design and AnalysisComputing and Software Science10.1007/978-3-319-91908-9_22(452-477)Online publication date: 2019
  • (2019)Self-explaining Digital Systems: Technical View, Implementation Aspects, and CompletenessAdvanced Boolean Techniques10.1007/978-3-030-20323-8_1(1-20)Online publication date: 9-Jul-2019
  • (2019)Compliance Checking for Decision-Aware Process ModelsBusiness Process Management Workshops10.1007/978-3-030-11641-5_39(494-506)Online publication date: 29-Jan-2019
  • (2018)The role of model checking in software engineeringFrontiers of Computer Science: Selected Publications from Chinese Universities10.1007/s11704-016-6192-012:4(642-668)Online publication date: 1-Aug-2018
  • (2018)Code obfuscation against abstraction refinement attacksFormal Aspects of Computing10.1007/s00165-018-0462-630:6(685-711)Online publication date: 1-Nov-2018
  • (2017)RustBelt: securing the foundations of the Rust programming languageProceedings of the ACM on Programming Languages10.1145/31581542:POPL(1-34)Online publication date: 27-Dec-2017
  • (2017)Refinement reflection: complete verification with SMTProceedings of the ACM on Programming Languages10.1145/31581412:POPL(1-31)Online publication date: 27-Dec-2017
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media