Communicating sequential processes
Communicating sequential processes
Operating systems: design and implementation
Operating systems: design and implementation
Parlog86 and the dining logicians
Communications of the ACM
Cooperating Sequential Processes, Technical Report EWD-123
Cooperating Sequential Processes, Technical Report EWD-123
Dining philosophers revisited, again
ACM SIGCSE Bulletin
Agent-oriented programming: from prolog to guarded definite clauses
Agent-oriented programming: from prolog to guarded definite clauses
Hi-index | 0.00 |
In 1965 Dijkstra posed and solved the Dining Philosophers problem. Since then the problem has become a classic test case for concurrency mechnisms and an example often discussed in operating systems courses. Two theorems prove the correctness of seatings where all philosophers always prefer to pick up a fork with a particular hand first. This note shows the subtlety required to solve the problem by showing that a recently published solution is incorrect. A correct solution is provided.