1983 · 413 citations · 9 references
ComputingComputer ScienceFormal MethodsLogicTheory Of ComputationConcurrent System VerificationFinite-state MachinesModel CheckingTemporal LogicTheorem ProvingVerificationBranching Temporal LogicBranching-time LogicBranching-time Temporal LogicComplexityFinite-state VerificationLinear ComplexityPropositional Temporal LogicTemporal Logic Verification
We give an efficient procedure for verifying that a finite state concurrent system meets a specification expressed in a (propositional) branching-time temporal logic. Our algorithm has complexity linear in both the size of the specification and the size of the global transition graph for the concurrent system. We also show how the logic and our algorithm can be modified to handle fairness. We argue that this technique can provide a practical alternative to manual proof construction or use of a mechanical theorem prover for verifying many finite state concurrent systems.
9
Communicating sequential processes
C. A. R. Hoare · Communications of the ACM · 1983 · 3.8K citations · Full text
Towards Analyzing and Synthesizing Protocols
P. Zafiropulo, Colin H. West, H. Rudin et al. · IRE Transactions on Communications Systems · 1980 · 239 citations
The temporal logic of branching time
Mordechai Ben‐Ari, Zohar Manna, Amir Pnueli · 1981 · 216 citations · Full text