-
Notifications
You must be signed in to change notification settings - Fork 122
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
Souffle Converter to DNF does not handle some programs #264
Comments
@Argc0 : do you mean to support such programs as well? The DNF converter does not seem to handle this case. |
BTW: the error is:
|
The DNF converter in souffle_converter.py does not currently handle all patterns of DNF conversion. We added it as a temporary/cheap workaround to support the non-DNF patterns found in Doop, until proper support for full disjunction is added (#98). When that support arrives, I understand that DNF conversion should be done differently (if at all). Of course, handling more or all non-DNF patterns would be nice to have. This particular pattern !(A and B) should become (!A or !B), which means the transformer must apply De Morgan's laws to fix this issue. |
In case, you wish to solve temporarly this problem by having some changes in souffle_convert.py I suggest:
It solves this bug for the moment. |
For example the following program:
The text was updated successfully, but these errors were encountered: