Re: Datalog (DLV) question
From: <norbert.e.fuchs_at_gmail.com>
Date: 25 Dec 2006 00:25:33 -0800
Message-ID: <1167035133.784286.50310_at_h40g2000cwb.googlegroups.com>
Date: 25 Dec 2006 00:25:33 -0800
Message-ID: <1167035133.784286.50310_at_h40g2000cwb.googlegroups.com>
andrew_at_acooke.org wrote:
> ...
>
> I want to make sure that every "call" predicate (which
> describes a message being sent) has a first argument which is a
> process. I used:
>
> :- call(P, _, _, _, _), not process(P, _).
>
> as a strong constraint, but this is unsafe. Some example data:
>
>...
>
> How do I express this constraint (I am worried that I have errors in my
> data and want to detect them)?
>
>...
Andrew
Have a look at constraint handling rules:
http://en.wikipedia.org/wiki/Constraint_Handling_Rules
http://www.cs.kuleuven.ac.be/~dtai/projects/CHR/
Regards.
- nef