Alright, I'm starting to get it.... but not quite there
(run* [q]
(fresh [x]
(conde
( (== q 1) )
( (== q 2) )
( (== q 3) )
( (== q 4) ))
(conde
( (== x 3) )
( (== x 4) )
( (== x 5) )
( (== x 6) ))
(!= q x)))
(1 1 1 2 1 2 2 2 3 4 3 3 4 4)
On Thursday, 28 March 2013 15:44:01 UTC-4, David Nolen wrote:
>
> This won't work. Rewrite this example w/o using facts and try to
> understand why it won't work.
>
> David
>
> On Thu, Mar 28, 2013 at 3:37 PM, JvJ <[email protected] <javascript:>>wrote:
>
>> Here's what I'm trying...
>>
>> (facts a [[1]
>> [2]
>> [3]
>> [4]])
>> nil
>> (facts b [[3]
>> [4]
>> [5]
>> [6]])
>>
>> (run* [q]
>> (a q)
>> (fresh [x]
>> (b x)
>> (!= q x)))
>> (1 1 2 1 1 2 2 2 3 4 3 3 4 4)
>>
>> So what the heck is this all about?
>>
>> On Thursday, 28 March 2013 15:17:24 UTC-4, David Nolen wrote:
>>
>>> negation is hard. This has come up several times. It may be possible to
>>> a better form of negation as failure via delays, but this not high on my
>>> current priority list. Patches to make it work are of course most welcome.
>>>
>>>
>>> On Thu, Mar 28, 2013 at 2:54 PM, JvJ <[email protected]> wrote:
>>>
>>>> Thanks, but there's another aspect to this.
>>>>
>>>> Let's say I had two relations A and B, and I wanted all q such that
>>>> (A q)
>>>> (not (B q))
>>>>
>>>> How would that work?
>>>>
>>>>
>>>> On Thursday, 28 March 2013 14:50:33 UTC-4, Jim foo.bar wrote:
>>>>
>>>>> clojure.set/difference
>>>>> 'membero' combined with its negated form?
>>>>>
>>>>> Jim
>>>>>
>>>>> On 28/03/13 18:47, JvJ wrote:
>>>>> > In core.logic, how do the following: "Give me everything that is a
>>>>> > member of list A and not a member of list B"?
>>>>> > --
>>>>> > --
>>>>> > You received this message because you are subscribed to the Google
>>>>> > Groups "Clojure" group.
>>>>> > To post to this group, send email to [email protected]
>>>>> > Note that posts from new members are moderated - please be patient
>>>>> > with your first post.
>>>>> > To unsubscribe from this group, send email to
>>>>> > clojure+u...@**googlegroups.com
>>>>> > For more options, visit this group at
>>>>> > http://groups.google.com/**group**/clojure?hl=en<http://groups.google.com/group/clojure?hl=en>
>>>>> >
>>>>> > ---
>>>>> > You received this message because you are subscribed to the Google
>>>>> > Groups "Clojure" group.
>>>>> > To unsubscribe from this group and stop receiving emails from it,
>>>>> send
>>>>> > an email to clojure+u...@**googlegroups.com.
>>>>> > For more options, visit
>>>>> > https://groups.google.com/**grou**ps/opt_out<https://groups.google.com/groups/opt_out>.
>>>>> >
>>>>>
>>>>> >
>>>>> >
>>>>>
>>>>> --
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Clojure" group.
>>>> To post to this group, send email to [email protected]
>>>> Note that posts from new members are moderated - please be patient with
>>>> your first post.
>>>> To unsubscribe from this group, send email to
>>>> clojure+u...@**googlegroups.com
>>>> For more options, visit this group at
>>>> http://groups.google.com/**group/clojure?hl=en<http://groups.google.com/group/clojure?hl=en>
>>>> ---
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Clojure" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to clojure+u...@**googlegroups.com.
>>>> For more options, visit
>>>> https://groups.google.com/**groups/opt_out<https://groups.google.com/groups/opt_out>
>>>> .
>>>>
>>>>
>>>>
>>>
>>> --
>> --
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to [email protected]<javascript:>
>> Note that posts from new members are moderated - please be patient with
>> your first post.
>> To unsubscribe from this group, send email to
>> [email protected] <javascript:>
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected] <javascript:>.
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>>
>>
>
>
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.