Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inhibitor and Outgoing Arcs #11

Open
vanrein opened this issue Jan 28, 2018 · 0 comments
Open

Inhibitor and Outgoing Arcs #11

vanrein opened this issue Jan 28, 2018 · 0 comments

Comments

@vanrein
Copy link
Owner

vanrein commented Jan 28, 2018

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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant