Communicating sequential processes
Communicating sequential processes
Hierarchical correctness proofs for distributed algorithms
PODC '87 Proceedings of the sixth annual ACM Symposium on Principles of distributed computing
Introduction to the ISO specification language LOTOS
Computer Networks and ISDN Systems - Special Issue: Protocol Specification and Testing
Parallel program design: a foundation
Parallel program design: a foundation
Towards action-refinement in process algebras
Proceedings of the Fourth Annual Symposium on Logic in computer science
Process algebra
Structured operational semantics as a specification language
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Guarded commands, nondeterminacy and formal derivation of programs
Communications of the ACM
Communication and Concurrency
On the Expressive Power of CCS
Proceedings of the 15th Conference on Foundations of Software Technology and Theoretical Computer Science
Specifying & Verifying Concurrent Systems Using Z
FME '94 Proceedings of the Second International Symposium of Formal Methods Europe on Industrial Benefit of Formal Methods
Generating BDD Models for Process Algebra Terms
Proceedings of the 7th International Conference on Computer Aided Verification
The NCSU Concurrency Workbench
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
A COMPARISON OF SIMULATION TECHNIQUES AND ALGEBRAIC TECHNIQUES FOR VERIFYING CONCURRENT SYSTEMS
A COMPARISON OF SIMULATION TECHNIQUES AND ALGEBRAIC TECHNIQUES FOR VERIFYING CONCURRENT SYSTEMS
Model checking and expressiveness for first order process algebras
Model checking and expressiveness for first order process algebras
Generating BDDs for symbolic model checking in CCS
Distributed Computing
Generating priority rewrite systems for OSOS process languages
Information and Computation
Hi-index | 0.01 |
A Protean specification language [6] based on Structured Operational Semantics (SOS) allows the user to invent appropriate operations to improve abstraction and readability. This is in contrast to traditional specification languages, where the set of operations is fixed. An efficient algorithm, described in [10], uses binary decision diagrams (BDDs) to verify properties of finite specifications written in a Protean language and provides the basis for a model checker we have developed. This paper provides a synthesis of our work on Protean languages and relates the work to other specification techniques. We show how abstraction and refinement in the Protean framework can improve the effectiveness of model checking. We rewrite and verify properties of an existing Z specification by defining suitable operations. We also show how a Protean language can be used to model restricted I/O automata, action refinement, and 1-safe and k-bounded Petri nets.