« Return to Thread: JESS: Rule conflict resolution

Re: JESS: Rule conflict resolution

by Joao Carlos Mourao :: Rate this Message:

Reply to Author | View in Thread

Yes, i forgot to say that i use not(s) CE in my rules, in the example
rule C i mean, so i'm talking about a rule that fires in the absence of
facts. Obviously, if i fire rules only in the presence of facts, there
is no problem. I had been using salience, but doesn't seem to me a nice
technique. But you mentioned something that might work, the modules. I
haven't used them until now, but it seems a very good alternative to
make restriction on firing rules. Thanks.

Joao


On 20-05-2009 03:45, Ernest Friedman-Hill wrote:

> Well, it really doesn't work that way; Jess doesn't "check" rules, nor
> activate them in any specific order save what's determined by the
> order in which facts appear, and salience. If a rule C won't fire
> unless facts asserted by A and B are present, then C obviously won't
> fire until after A and B have fired (if they're going to at all.)
>
> If C fired due to the *absence* of facts that could be asserted by A
> and B, then yes, you'd want to do something to control C's firing. You
> could use salience; you could put C in a different module, and only
> focus that module until after A and B's module has run; or you could
> us explicit phase facts -- i.e., make C dependent on a fact you don't
> assert until you know A and B have had a chance to run.
>
> But in any case, there's no magic, and furthermore, most of the time
> if you're worrying about making rules fire in a given order, you're
> thinking about the problem wrong.
>
> On May 19, 2009, at 10:50 AM, Joao Antunes Mourao wrote:
>
>> Hello,
>>
>> I have a problem with the use of dependencies between different rules.
>> For example rule C use two facts that are given by rule A and B. In this
>> sense, before fire rule C, i would like to be sure, that rule A and B
>> were checked, because otherwise i will have erroneous conclusions. Is
>> there any possible way to make this?
>> Moreover, i think the required statement is not sufficient, because only
>> make visible other rules, but don't oblige the rules to be fired first.
>> To handle this problem i'm currently using the salience parameter, which
>> also is not the best way, as is easy to imagine. Do you know a way to
>> enforce this condition?
>>
>> Regards,
>>
>> Joao
>>
>> ----------
>> unclassified email
>>
>>
>>
>>
>>
>>
>>
>> ------------------------------------------------------------------------------------------------------------
>>
>> Disclaimer:
>>
>> If you are not the intended recipient of this email, please notify
>> the sender and delete it.
>> Any unauthorized copying, disclosure or distribution of this email or
>> its attachment(s) is forbidden.
>> Thales Nederland BV will not accept liability for any damage caused
>> by this email or its attachment(s).
>> Thales Nederland BV is seated in Hengelo and is registered at the
>> Chamber of Commerce under number 06061578.
>> ------------------------------------------------------------------------------------------------------------
>>
>>
>> <joao.mourao.vcf>
>
> ---------------------------------------------------------
> Ernest Friedman-Hill
> Informatics & Decision Sciences, Sandia National Laboratories
> PO Box 969, MS 9012, Livermore, CA 94550
> http://www.jessrules.com
>
>
>
>
>
>
>
> --------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users you@...'
> in the BODY of a message to majordomo@..., NOT to the list
> (use your own address!) List problems? Notify
> owner-jess-users@....
> --------------------------------------------------------------------
>

------------------------------------------------------------------------------------------------------------
Disclaimer:

If you are not the intended recipient of this email, please notify the sender and delete it.
Any unauthorized copying, disclosure or distribution of this email or its attachment(s) is forbidden.
Thales Nederland BV will not accept liability for any damage caused by this email or its attachment(s).
Thales Nederland BV is seated in Hengelo and is registered at the Chamber of Commerce under number 06061578.
------------------------------------------------------------------------------------------------------------


begin:vcard
fn;quoted-printable:Jo=C3=A3o Mour=C3=A3o
n;quoted-printable;quoted-printable:Mour=C3=A3o;Jo=C3=A3o
org:Thales;Above Water Systems
adr:;;;Hengelo;;;Netherlands
email;internet:joao.mourao@...
title:THALES NETHERLANDS B.V.
tel;work:2640
note:-unclassified mail-
version:2.1
end:vcard

 « Return to Thread: JESS: Rule conflict resolution