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

Limit XOR and IFF to two arguments #59

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

rakhimov
Copy link
Member

Currently, XOR and IFF are specified as n-ary connectives.
Besides being rarely used/needed,
these connectives are not intuitive in their associative, n-ary forms.
For example, a naive user may confuse XOR with natural 'either .. or',
which doesn't hold with more than 2 args;
it is rather 'odd' (pun intended :)).

I think those FTA tools that do support these gates
limit the number of arguments to 2 (e.g., graphically).
It would be unreasonable to require generality without a practical need.

Currently, XOR and IFF are specified as n-ary connectives.
In addition to being rarely used,
these connectives are not intuitive in their associative, n-ary forms.
For example, a naive user may confuse XOR with natural 'either .. or',
which doesn't hold with more than 2 args;
it is rather 'odd' (pun intended :)).

I think those FTA tools that do support these gates
limit the number of arguments to 2 (e.g., graphically).
It would be unreasonable to require generality without a practical need.
@cfolleau
Copy link
Member

I agree totally. Never seen the use of un XOR with more than 2 args. Moreover there to 2 ways defined it (either one and only one, or parity)

rakhimov added a commit to rakhimov/scram that referenced this pull request Jan 23, 2018
These connectives are not intuitive with more than 2 args.
More reasoning: open-psa/mef#59

Issue #231
rakhimov added a commit to rakhimov/scram that referenced this pull request Jan 23, 2018
These connectives are not intuitive with more than 2 args.
More reasoning: open-psa/mef#59

Issue #232
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants