Dining philosophers (2 of 5)
Compact two-philosopher slice of the classic deadlock-prone Petri net — thinking, hungry, eating, with forks as shared resources.
Make it your own.
title Dining philosophers (slice)
place P1_Think tokens 1 "P1 thinking"
place P2_Think tokens 1 "P2 thinking"
place F1 tokens 1 "Fork 1"
place F2 tokens 1 "Fork 2"
transition T1_Pick "P1 picks forks"
transition T2_Pick "P2 picks forks"
place P1_Eat "P1 eating"
place P2_Eat "P2 eating"
transition T1_Done "P1 done"
transition T2_Done "P2 done"
P1_Think -> T1_Pick
F1 -> T1_Pick
F2 -> T1_Pick
T1_Pick -> P1_Eat
P1_Eat -> T1_Done
T1_Done -> F1
T1_Done -> F2
T1_Done -> P1_Think
P2_Think -> T2_Pick
F2 -> T2_Pick
F1 -> T2_Pick
T2_Pick -> P2_Eat
P2_Eat -> T2_Done
T2_Done -> F2
T2_Done -> F1
T2_Done -> P2_Think