Skip to content

Conversation

@vsavkov
Copy link

@vsavkov vsavkov commented Apr 5, 2024

It was observed that for expressions that contain 'not (A and B)' or 'not (A or B)' clauses
the clustering is performed such way that
during matching step of the search the expressions containing the 'not (A and B)' or 'not (A or B)' clauses could be excluded from the further evaluation despite the expressions be true.

The fix implements De Morgan's laws for variable bound calculation (clustering):
not (A or B) = (not A) and (not B);
not (A and B) = (not A) or (not B).

Tests 'test_cdir_not_and' and 'test_cdir_not_or' verify the implementation.

not (A or B) = (not A) and (not B);
not (A and B) = (not A) or (not B).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants