Atomic semantics of nonatomic programs
Information Processing Letters
win and sin: predicate transformers for concurrency
ACM Transactions on Programming Languages and Systems (TOPLAS)
Algorithms for scalable synchronization on shared-memory multiprocessors
ACM Transactions on Computer Systems (TOCS)
A New Approach to Proving the Correctness of Multiprocess Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
A new solution of Dijkstra's concurrent programming problem
Communications of the ACM
Solution of a problem in concurrent programming control
Communications of the ACM
The Performance of Spin Lock Alternatives for Shared-Memory Multiprocessors
IEEE Transactions on Parallel and Distributed Systems
Rewrite Methods for Clausal and Non-Clausal Theorem Proving
Proceedings of the 10th Colloquium on Automata, Languages and Programming
Proving the Correctness of Multiprocess Programs
IEEE Transactions on Software Engineering
CafeOBJ as a tool for behavioral system verification
ISSS'02 Proceedings of the 2002 Mext-NSF-JSPS international conference on Software security: theories and systems
On equality predicates in algebraic specification languages
ICTAC'07 Proceedings of the 4th international conference on Theoretical aspects of computing
All about maude - a high-performance logical framework: how to specify, program and verify systems in rewriting logic
Hi-index | 0.00 |
The bakery protocol is the first real solution of the mutual exclusion problem. It does not assume any lower mutual exclusion protocols. The bakery protocol has been often used as a benchmark to demonstrate that proposed verification methods and/or tools are powerful enough. But, the true bakery protocol has been rarely used. We have formally proved that the protocol satisfies the mutual exclusion property. The proof is mechanized with CafeOBJ, an algebraic specification language, in which state machines as well as data types can be specified. Nonatomic reads and writes to shared variables are formalized by representing an assignment to a shared variable with multiple atomic transitions. Our formal model of the protocol has states in which a shared variable is being modified. A read to the variable in such states obtains an arbitrary value, which is represented as a CafeOBJ term.