[LOGIC-54] Set unification does not operate symmetrically Created: 21/Sep/12 Updated: 27/Sep/12 Resolved: 27/Sep/12 |
|
| Status: | Resolved |
| Project: | core.logic |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Defect | Priority: | Major |
| Reporter: | Aaron Brooks | Assignee: | David Nolen |
| Resolution: | Completed | Votes: | 0 |
| Labels: | None | ||
| Attachments: |
|
| Patch: | Code and Test |
| Description |
|
A check is absent in unify-with-set that would check for missing values in addition to missing lvars. The incorrect behavior is shown below: user> (run* [out] (== #{out} #{1}))
(1)
user> (run* [out] (== #{1} #{out}))
()
The attached patch includes a similar test to the above and was run against the HEAD as of this posting. |
| Comments |
| Comment by David Nolen [ 21/Sep/12 2:58 PM ] |
|
Thanks for the report will look into it. |
| Comment by David Nolen [ 27/Sep/12 9:38 PM ] |
|
fixed, http://github.com/clojure/core.logic/commit/cdc4bf8563e9f566cc6e3e0e4f8a7735cd92b88e |