Structure and firing rule
Bipartite graph
- places: represent distributed state by holding tokens
- marking: token count for each place
- initial marking (M0) is initial state
- transitions: represent actions/events
- enabled transition: enough tokens in predecessors
- firing transition: modifies marking