Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Design and validation of computer protocols
Design and validation of computer protocols
Debugging Larch Shared Language Specifications
IEEE Transactions on Software Engineering
The Z notation: a reference manual
The Z notation: a reference manual
Model checking and abstraction
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Symbolic model checking: 1020 states and beyond
Information and Computation - Special issue: Selections from 1990 IEEE symposium on logic in computer science
Proof in VDM: a practitioner's guide
Proof in VDM: a practitioner's guide
The IFAD VDM-SL toolbox: a practical approach to formal specifications
ACM SIGPLAN Notices
Aslantest: a symbolic execution tool for testing Aslan formal specifications
ISSTA '94 Proceedings of the 1994 ACM SIGSOFT international symposium on Software testing and analysis
Requirements Specification for Process-Control Systems
IEEE Transactions on Software Engineering
Model checking software systems: a case study
SIGSOFT '95 Proceedings of the 3rd ACM SIGSOFT symposium on Foundations of software engineering
Structuring Z specifications with views
ACM Transactions on Software Engineering and Methodology (TOSEM)
Using partial-order methods in the formal validation of industrial concurrent programs
ISSTA '96 Proceedings of the 1996 ACM SIGSOFT international symposium on Software testing and analysis
Using Z: specification, refinement, and proof
Using Z: specification, refinement, and proof
Faster checking of software specifications by eliminating isomorphs
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Model checking large software specifications
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
Formal specification as a design tool
POPL '80 Proceedings of the 7th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
State-Based Model Checking of Event-Driven System Requirements
IEEE Transactions on Software Engineering
Efficient Search as a Means of Executing Specifications
TACAs '96 Proceedings of the Second International Workshop on Tools and Algorithms for Construction and Analysis of Systems
Z--, an Executable Subset of Z
Proceedings of the Z User Workshop
Abstract Model Checking of Infinite Specifications
FME '94 Proceedings of the Second International Symposium of Formal Methods Europe on Industrial Benefit of Formal Methods
An Executable Subset of Meta-IV with Loose Specification
VDM '91 Proceedings of the 4th International Symposium of VDM Europe on Formal Software Development-Volume I: Conference Contributions - Volume I
Exploiting Symmetry In Temporal Logic Model Checking
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
Better Verification Through Symmetry
CHDL '93 Proceedings of the 11th IFIP WG10.2 International Conference sponsored by IFIP WG10.2 and in cooperation with IEEE COMPSOC on Computer Hardware Description Languages and their Applications
FINDER: Finite Domain Enumerator - System Description
CADE-12 Proceedings of the 12th International Conference on Automated Deduction
Finite state modelling in program development
Proceedings of the international conference on Reliable software
Consistency checking of SCR-style requirements specifications
RE '95 Proceedings of the Second IEEE International Symposium on Requirements Engineering
Exploiting Symmetry in the Model Checking of Relational Specifications
Exploiting Symmetry in the Model Checking of Relational Specifications
Nitpick: a tool for interactive design analysis
ICSE '97 Proceedings of the 19th international conference on Software engineering
Isomorph-free model enumeration: a new method for checking relational specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
An intermediate design language and its analysis
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Analysis of a scheduler for a CAD framework
Proceedings of the 21st international conference on Software engineering
Software evolution and “light” semantics (extended abstract)
Proceedings of the 21st international conference on Software engineering
Proceedings of the Conference on The Future of Software Engineering
Formal specification: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
Alcoa: the alloy constraint analyzer
Proceedings of the 22nd international conference on Software engineering
Automating first-order relational logic
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
Finding bugs with a constraint solver
Proceedings of the 2000 ACM SIGSOFT international symposium on Software testing and analysis
Executing Formal Specifications with Concurrent Constraint Programming
Automated Software Engineering
Model Checking Large Software Specifications
IEEE Transactions on Software Engineering
Restructuring Requirements Specifications For Managing Inconsistency And Change: A Case Study
ICRE '98 Proceedings of the 3rd International Conference on Requirements Engineering: Putting Requirements Engineering to Practice
Checking Z Data Refinements Using an Animation Tool
ZB '02 Proceedings of the 2nd International Conference of B and Z Users on Formal Specification and Development in Z and B
Requirements interaction management
ACM Computing Surveys (CSUR)
Software Assurance by Bounded Exhaustive Testing
IEEE Transactions on Software Engineering
Efficient software model checking of soundness of type systems
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
An approach to detection of UML-based ownership violation
Proceedings of the 2009 ACM symposium on Applied Computing
Finding inconsistency for UML-based composition at program level
MISE '09 Proceedings of the 2009 ICSE Workshop on Modeling in Software Engineering
Kodkod: a relational model finder
TACAS'07 Proceedings of the 13th international conference on Tools and algorithms for the construction and analysis of systems
Efficient modular glass box software model checking
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Encoding OCL data types for SAT-based verification of UML/OCL models
TAP'11 Proceedings of the 5th international conference on Tests and proofs
Controllable combinatorial coverage in grammar-based testing
TestCom'06 Proceedings of the 18th IFIP TC6/WG6.1 international conference on Testing of Communicating Systems
Proof and refutation in formal software development
IW-FM'99 Proceedings of the 3rd Irish conference on Formal Methods
Amplifying tests to validate exception handling code
Proceedings of the 34th International Conference on Software Engineering
Maple: a coverage-driven testing tool for multithreaded programs
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Verifying systems rules using rule-directed symbolic execution
Proceedings of the eighteenth international conference on Architectural support for programming languages and operating systems
Property-testing real-world authorization systems
Proceedings of the 18th ACM symposium on Access control models and technologies
Hi-index | 0.00 |
We demonstrate how Nitpick, a specification checker, can be applied to the design of a style mechanism for a word processor. The design is cast, along with some expected properties, in a subset of Z. Nitpick checks a property by enumerating all possible cases within some finite bounds, displaying as a counterexample the first case for which the property fails to hold. Unlike animation or execution tools, Nitpick does not require state transitions to be expressed constructively, and unlike theorem provers, Nitpick operates completely automatically without user intervention. Using a variety of reduction mechanisms, it can cover an enormous number of cases in a reasonable time, so that subtle flaws can be rapidly detected.