SUMo'2011
International Workshop on
Scalable and Usable Model Checking for
Petri Nets and other models of Concurrency

Description of the «philosophers» model

This is the famous model that illustrates an inappropriate use of shared resources generating deadlocks. N philosophers share a table with N plates and sticks. They are thinking and, when they need to eat, they go to the table, grab one stick from one side of their plate, then the second from the other side, then eat, and then go back thinking.


The figure above shows this model and is set up for 5000 philosophers (see declaration of the color class). Please note that in place Think, the initial marking <Philo.all> means that one token of each value in color class Philo is placed in the Place.

Scale factor

The scale factor is the number of philosophers, here parameterized by the number of values in class Philo. Proposed instances of this models contain the following numbers of philosophers: 5, 10, 20, 50, 100, 500, 1000, 5000, 10000, 50000, 100000.

Model files

PNML files and a set of properties respecting the BNF we propose are available in the submission kit.

 
A satellite event of PETRI NETS'2011 and ACSD'2011
June  21, 2011

Model Checking Contest, «philosophers» model

PeoplePeople.html
PetersonPeterson_model.html
Philosopher
SharedMemorySharedMemory_model.html
FMSFMS_model.html
KanbanKanban_model.html
MAPKMAPK_model.html
FAQFAQ.html
BNF FormulaeBNF_for_formulae.html

Models

RulesRules.html
TokenRingTokenRing_model.html
Submission Kithttp://sumo.lip6.fr/SUMo-2011-MCC-BASE.tgz