Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
A classical mind
Verifying properties of parallel programs: an axiomatic approach
Communications of the ACM
Symbolic Model Checking
Specification and verification of concurrent systems in CESAR
Proceedings of the 5th Colloquium on International Symposium on Programming
Using Magnatic Disk Instead of Main Memory in the Murphi Verifier
CAV '98 Proceedings of the 10th International Conference on Computer Aided Verification
Verification of a Multiplier: 64 Bits and Beyond
CAV '93 Proceedings of the 5th International Conference on Computer Aided Verification
The Murphi Verification System
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic
Logic of Programs, Workshop
Distributed Computing - Special issue: Verification of lazy caching
How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs
IEEE Transactions on Computers
Proving assertions about parallel programs
Journal of Computer and System Sciences
DISC '00 Proceedings of the 14th International Conference on Distributed Computing
Digitisation and Full Abstraction for Dense-Time Model Checking
TACAS '02 Proceedings of the 8th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
A Taxonomy-Driven Approach to Visually Prototyping Pervasive Computing Applications
DSL '09 Proceedings of the IFIP TC 2 Working Conference on Domain-Specific Languages
The PlusCal Algorithm Language
ICTAC '09 Proceedings of the 6th International Colloquium on Theoretical Aspects of Computing
A Reduction Theorem for the Verification of Round-Based Distributed Algorithms
RP '09 Proceedings of the 3rd International Workshop on Reachability Problems
Automated Encapsulation of UML Activities for Incremental Development and Verification
MODELS '09 Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems
Specifying and verifying PLC systems with TLA+: A case study
Computers & Mathematics with Applications
Replicated abstract data types: Building blocks for collaborative applications
Journal of Parallel and Distributed Computing
Best-first heuristic search for multicore machines
Journal of Artificial Intelligence Research
Directed model checking for B: an evaluation and new techniques
SBMF'10 Proceedings of the 13th Brazilian conference on Formal methods: foundations and applications
A high-level language for modeling algorithms and their properties
SBMF'10 Proceedings of the 13th Brazilian conference on Formal methods: foundations and applications
Towards verification of the pastry protocol using TLA+
FMOODS'11/FORTE'11 Proceedings of the joint 13th IFIP WG 6.1 and 30th IFIP WG 6.1 international conference on Formal techniques for distributed systems
Contracts for multi-instance UML activities
FMOODS'11/FORTE'11 Proceedings of the joint 13th IFIP WG 6.1 and 30th IFIP WG 6.1 international conference on Formal techniques for distributed systems
Proceedings of the 10th ACM international conference on Generative programming and component engineering
Engineering android applications based on UML activities
Proceedings of the 14th international conference on Model driven engineering languages and systems
A temporal logic-based model for forensic investigation in networked system security
MMM-ACNS'05 Proceedings of the Third international conference on Mathematical Methods, Models, and Architectures for Computer Network Security
Translating TLA+ to b for validation with ProB
IFM'12 Proceedings of the 9th international conference on Integrated Formal Methods
Formal specification and analysis of AFDX redundancy management algorithms
SAFECOMP'07 Proceedings of the 26th international conference on Computer Safety, Reliability, and Security
Proceedings of the 2nd International Workshop on Software Engineering for Resilient Systems
Compositional verification of application-level security properties
ESSoS'13 Proceedings of the 5th international conference on Engineering Secure Software and Systems
Hi-index | 0.00 |
TLA+ is a specification language for concurrent and reactive systems that combines the temporal logic TLA with full first-order logic and ZF set theory. TLC is a new model checker for debugging a TLA+ specification by checking invariance properties of a finite-state model of the specification. It accepts a subclass of TLA+ specifications that should include most descriptions of real system designs. It has been used by engineers to find errors in the cache coherence protocol for a new Compaq multiprocessor. We describe TLA+ specifications and their TLC models, how TLC works, and our experience using it.