Skip to content

Inhibitor and Outgoing Arcs #11

@vanrein

Description

@vanrein

The same place may point to a transition with both an inhibitor arc and an outgoing arc. This can be meaningful when the outgoing arc has a lower multiplicity than the inhibitor.

Semantics for 1.1 will be made to blocks this until well-defined, and prior versions always block inhibitors with multiplicity.

The approach may require (in the general case) a split of a place into two identical copies, except:

  • one handles outgoing arcs, the other handles inhibitors
  • this leads to separate checks for the two constraints: having enough, but not too much
  • the split is not needed if the same (p,t) pair does not combine these two constrints
  • the split might be avoided for other corner cases that coincide with bit masks... but that is perhaps odd
  • to keep the inhibitor-processing place clone up to date, use a negative addend (the other place ensures the outcome is positive)
  • note how added and subber now both use signed bit fields

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions