<< Back to previous view

[LOGIC-97] disequality pruning Created: 04/Jan/13  Updated: 28/Jul/13  Resolved: 04/Jan/13

Status: Closed
Project: core.logic
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect Priority: Major
Reporter: Nada Amin Assignee: David Nolen
Resolution: Completed Votes: 0
Labels: None

Attachments: File diseq-pruning.diff    

 Description   

Why we need disequality pruning in updatec:

(run* [q]
           (fresh [x y z]
             (!= x [y])
             (== x [z])
             (== y 'foo)
             (== z 'bar)))

Instead of returning just '(_0), this snippet returns '((_0 :- (!= ([bar] [foo])))).



 Comments   
Comment by Nada Amin [ 04/Jan/13 1:02 PM ]

Patch diseq-pruning.diff gives up on using updatec in favor of correctness. Test case incuded.

Comment by David Nolen [ 04/Jan/13 1:13 PM ]

fixed, http://github.com/clojure/core.logic/commit/0beb770dc0a072f0dcb888f0df2978a5632d92bf

Generated at Tue Sep 16 00:08:10 CDT 2014 using JIRA 4.4#649-r158309.