Concurrency Theory: Lecture 8, 09 February 2017 ----------------------------------------------- Unfolding of a 1-safe net is an occurrence net - Each place has at most one incoming edge - F* is acyclic - If t and t' share an input place, t and t' are in conflict - Conflict is "inherited" via F - Any two elements in conflict have disjoint futures Occurrence net describes "branching behaviour" of a net - If we "throw away" the places in the occurrence net, we get an event structure ES = (E, <=, #) - E is a set of events - <= is a partial order - # is the conflict relation, inherited via <=: e # e' and e' <= e'' implies e # e" - Concurrency relation - e co e' if not (e <= e' or e' <= e or e # e') - Configuration C is a set of events, describes a computation - Set of events that have "happened till now" - C is downward closed: e in C and e' <= e implies e' in C as well - C is conflict free: only compatible events can happen together - Configurations correspond to traces - Configurations ordered by inclusion are isomorphic to traces ordered by trace extension - Algebraic characterization - Prime configuration: c is prime if whenever c is included in the union of a set of configurations C, c is included in some c' in C - Prime configurations are those of the form downarrow(e), for each event e in E - Configurations ordered by inclusion form a prime algebraic coherent complete partial order - Prime configurations form an event structure - Events are the prime configurations - <= is given by inclusion of configurations - c # c' if c and c' do not have a common upper bound in the original event structure - The configuration space of this event structure is isomorphic to the one we started with - Hence these event structures are called "prime" event structures - Difficult to generalize to non-safe nets: - Parallel switch: t or t' can trigger t" - Configurations are not prime algebraic coherent cpo ======================================================================