You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We could implement a version of __setitem__ in the miniKanren state object/mappings (e.g. ConstrainedState) that checks constraints immediately after being added to the state. A failure could throw an exception and halt the unnecessary unification of further variables for an unsuccessful state.
This approach would also require changes in the way unification updates states. Specifically, the function assoc might need to be replaced so that in-place updates can occur.
Also, we would need to be much better about checking constraints, since we would be checking them more often in this situation. For instance, we would need to be able to isolate logic variable dependencies so that we could—say—determine a constraint violation from an individual unification alone.
The text was updated successfully, but these errors were encountered:
We could implement a version of
__setitem__
in the miniKanren state object/mappings (e.g.ConstrainedState
) that checks constraints immediately after being added to the state. A failure could throw an exception and halt the unnecessary unification of further variables for an unsuccessful state.This approach would also require changes in the way
unification
updates states. Specifically, the functionassoc
might need to be replaced so that in-place updates can occur.Also, we would need to be much better about checking constraints, since we would be checking them more often in this situation. For instance, we would need to be able to isolate logic variable dependencies so that we could—say—determine a constraint violation from an individual unification alone.
The text was updated successfully, but these errors were encountered: