Dear Ernest,

>The term 'pseudo time tags' is rather confusing ...

The term is used in the CLIPS documentation, but I agree with you.

>Reference the following rule:
>
>(defrule foo-2
>        (A ?X)
>        (not (B ?X))
>        =>)
>
>Now assume that (A 1) is asserted. The (A AND (NOT B)) test succeeds,
>so foo-2 becomes activated. Now supose that before foo-2 fires, (B 1)
>is asserted. (A AND (NOT B)), which was true, is now false, so an "(A
>AND (NOT B)) is no longer true" message is sent to foo-2, which is
>thus deactivated. Now suppose (B 1) is retracted again. An "(A AND (NOT
>B)) is true" message goes to foo-2, which is activated.

Now I understand the mechanism and how it depends on the implementation,
thank you.

However, as a "rule programmer" I am not satisfied with it. My
understanding of the principle of refractoriness (or my desires about it)
is that no activation identical to one which has already been executed
should enter the agenda. By "identical activations" I mean activations
which are described by the same rule name and the same fact-address list.
Here is where "pseudo tags" come in: conceptually the two activations of
foo-2 corresponding to the SAME fact (A 1) differ only in terms of a
"pseudo tag" corresponding to the absence of a fact (B 1) (the comma at the
end of the fact-address list suggests there is something more which cannot
be displayed ...)

Marco



---------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the
list. List problems? Notify [EMAIL PROTECTED]
---------------------------------------------------------------------

Reply via email to