Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
Parallel program design: a foundation
Parallel program design: a foundation
Design and validation of computer protocols
Design and validation of computer protocols
The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
Symbolic Boolean manipulation with ordered binary-decision diagrams
ACM Computing Surveys (CSUR)
Model checking and abstraction
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The ESTEREL synchronous programming language: design, semantics, implementation
Science of Computer Programming
Computer-aided verification of coordinating processes: the automata-theoretic approach
Computer-aided verification of coordinating processes: the automata-theoretic approach
Property preserving abstractions for the verification of concurrent systems
Formal Methods in System Design - Special issue on computer-aided verification (based on CAV'92 workshop)
Formal Verification for Fault-Tolerant Architectures: Prolegomena to the Design of PVS
IEEE Transactions on Software Engineering
Functional documents for computer systems
Science of Computer Programming
A logic-model semantics for SCR software requirements
ISSTA '96 Proceedings of the 1996 ACM SIGSOFT international symposium on Software testing and analysis
IEEE Spectrum
Completeness and Consistency in Hierarchical State-Based Requirements
IEEE Transactions on Software Engineering - Special issue: best papers of the 17th International Conference on Software Engineering (ICSE-17)
Automated consistency checking of requirements specifications
ACM Transactions on Software Engineering and Methodology (TOSEM)
Faster checking of software specifications by eliminating isomorphs
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Abstract interpretation of reactive systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
An Industrial Strength Theorem Prover for a Logic Based on Common Lisp
IEEE Transactions on Software Engineering
Documentation for safety critical software
ICSE '93 Proceedings of the 15th international conference on Software Engineering
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Formal verification in a commercial setting
DAC '97 Proceedings of the 34th annual Design Automation Conference
Automatic generation of state invariants from requirements specifications
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Using Abstraction and Model Checking to Detect Safety Violations in Requirements Specifications
IEEE Transactions on Software Engineering
Formal methods for verification and validation of partial specifications: a case study
Journal of Systems and Software - Special issue on formal methods technology transfer
Specifying the mode logic of a flight guidance system in CoRE and SCR
FMSP '98 Proceedings of the second workshop on Formal methods in software practice
Applying the SCR requirements method to a weapons control panel: an experience report
FMSP '98 Proceedings of the second workshop on Formal methods in software practice
Symbolic Model Checking
A Discipline of Programming
The Core Method for Real-Time Requirements
IEEE Software
State-Based Model Checking of Event-Driven System Requirements
IEEE Transactions on Software Engineering
Model Checking Large Software Specifications
IEEE Transactions on Software Engineering
Protocol Verification as a Hardware Design Aid
ICCD '92 Proceedings of the 1991 IEEE International Conference on Computer Design on VLSI in Computer & Processors
An improvement in formal verification
Proceedings of the 7th IFIP WG6.1 International Conference on Formal Description Techniques VII
SCR*: A Toolset for Specifying and Analyzing Software Requirements
CAV '98 Proceedings of the 10th International Conference on Computer Aided Verification
A Stubborn Attack On State Explosion
CAV '90 Proceedings of the 2nd International Workshop on Computer Aided Verification
Using Partial Orders to Improve Automatic Verification Methods
CAV '90 Proceedings of the 2nd International Workshop on Computer Aided Verification
A Tool for Symbolic Program Verification and Abstration
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
Verification of a Distributed Cache Memory by Using Abstractions
CAV '94 Proceedings of the 6th International Conference on Computer Aided Verification
Automatic generation of state invariants from requirements specifications
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Using Abstraction and Model Checking to Detect Safety Violations in Requirements Specifications
IEEE Transactions on Software Engineering
Using model checking to generate tests from requirements specifications
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
Action Language: a specification language for model checking reactive systems
Proceedings of the 22nd international conference on Software engineering
Optimizing Symbolic Model Checking for Statecharts
IEEE Transactions on Software Engineering - Special issue on 1999 international conference on software engineering
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Automatic Analysis of Consistency between Requirements and Designs
IEEE Transactions on Software Engineering
Using SCR to specify requirements of the BART advanced automated train control system
High integrity software
Model Checking Interactor Specifications
Automated Software Engineering
Lightweight Reasoning about Program Correctness
Information Systems Frontiers
Program Synthesis from Formal Requirements Specifications Using APTS
Higher-Order and Symbolic Computation
Abstraction in Software Model Checking: Principles and Practice (Tutorial Overview and Bibliography)
Proceedings of the 9th International SPIN Workshop on Model Checking of Software
Analysis of Agent-Based Systems Using Decision Procedures
FAABS '00 Proceedings of the First International Workshop on Formal Approaches to Agent-Based Systems-Revised Papers
Smart Play-out of Behavioral Requirements
FMCAD '02 Proceedings of the 4th International Conference on Formal Methods in Computer-Aided Design
Salsa: Combining Constraint Solvers with BDDs for Automatic Invariant Checking
TACAS '00 Proceedings of the 6th International Conference on Tools and Algorithms for Construction and Analysis of Systems: Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 2000
Lightweight reasoning about program correctness
CASCON '01 Proceedings of the 2001 conference of the Centre for Advanced Studies on Collaborative research
Using the SCR* Toolset to Specify Software Requirements
WIFT '98 Proceedings of the Second IEEE Workshop on Industrial Strength Formal Specification Techniques
A strategy for efficiently verifying requirements
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
Property relevant software testing with model-checkers
ACM SIGSOFT Software Engineering Notes
Test-case prioritization with model-checkers
SE'07 Proceedings of the 25th conference on IASTED International Multi-Conference: Software Engineering
Information and Software Technology
Using model-checkers to generate and analyze property relevant test-cases
Software Quality Control
Ambiguity in Natural Language Requirements Documents
Innovations for Requirement Analysis. From Stakeholders' Needs to Formal Designs
Using spin to generate tests from ASM specifications
ASM'03 Proceedings of the abstract state machines 10th international conference on Advances in theory and practice
Redundancy based test-suite reduction
FASE'07 Proceedings of the 10th international conference on Fundamental approaches to software engineering
Automatic model driven animation of SCR specifications
FASE'03 Proceedings of the 6th international conference on Fundamental approaches to software engineering
A requirements patterns-driven approach to specify systems and check properties
SPIN'03 Proceedings of the 10th international conference on Model checking software
A component-based approach to verification and validation of formal software models
Architecting dependable systems IV
Abstraction based automated test generation from formal tabular requirements specifications
TAP'11 Proceedings of the 5th international conference on Tests and proofs
NuEditor – a tool suite for specification and verification of NuSCR
SERA'04 Proceedings of the Second international conference on Software Engineering Research, Management and Applications
Hi-index | 0.00 |
Although model checking has proven remarkably effective in detectingerrors in hardware designs, its success in the analysis of softwarespecifications has been limited. Model checking algorithms forhardware verification commonly use Binary Decision Diagrams (BDDs) to represent predicates involvingthe many Boolean variables commonly found in hardware descriptions.Unfortunately, BDD representations may be less effective for analyzingsoftware specifications, which usually contain not only Booleansbut variables spanning a wide range of data types. Further, softwarespecifications typically have huge, sometimes infinite, state spacesthat cannot be model checked directly using conventional symbolic methods.One promising but largely unexplored approach to model checking softwarespecifications is to apply mathematically sound abstraction methods.Such methods extract a reduced model from the specification, thus makingmodel checking feasible. Currently, users of model checkers routinelyanalyze reduced models but often generate the models in ad hoc ways. Asa result, the reduced models may be incorrect.This paper, an expanded version of (Bharadwaj and Heitmeyer, 1997), describes how one can model check a complete requirementsspecification expressed in the SCR (Software Cost Reduction) tabular notation.Unlike previous approaches which applied model checking to mode transitiontables with Boolean variables, we use model checking to analyze propertiesof a complete SCR specification with variables ranging over many data types.The paper also describes two sound and, under certain conditions, completemethods for producing abstractions from requirements specifications. Theseabstractions are derived from the specification and the property to beanalyzed. Finally, the paper describes how SCR requirements specificationscan be translated into the languages of Spin, an explicit state model checker,and SMV, a symbolic model checker, and presents the results of model checkingtwo sample SCR specifications using our abstraction methods and the twomodel checkers.