- From: Christian De Sainte Marie <csma@fr.ibm.com>
- Date: Mon, 9 Jul 2012 18:09:51 +0200
- To: Jesse Weaver <weavej3@rpi.edu>
- Cc: Adrian.Paschke@gmx.de, Ankesh <ankesh@cs.rpi.edu>, cawelty@gmail.com, public-rif-wg@w3.org, sandro@w3.org, team-rif-chairs@w3.org
- Message-ID: <OF9FCAC15E.A420041A-ONC1257A36.00586B4B-C1257A36.0058CE65@fr.ibm.com>
Hi Jesse,
Jesse Weaver <weavej3@rpi.edu> wrote on 05/07/2012 22:32:34:
>
> It appears that the operational semantics of RIF-PRD are
> inconsistent wrt firing actions. Consider a set of facts \Phi = {
> c_2##c_1 , o#k , o[p->v] } which represents a state of a fact base.
> Consider the following rule:
>
> Forall ?x (
> If ?x#k
> Then Do( (?y ?x[p->?y]) Assert(?y#c_2) ) )
>
> The conflict set will contain a single rule instance:
>
> If o#k Then Do( (?y o[p->?y]) Assert(?y#c_2) ) )
>
> The only substitution matching o[p->?y] to \Phi is one such that
> \sigma(?y)=v, and so the following action instance should be executed:
>
> Assert(v#c_2).
>
> By definition of RIF-PRD transition relation (section 3.2), the next
> state of the fact base is represented by \Phi* = \Phi \cup { v#c_2
> }, which is \Phi* = { v#c_2, c_2##c_1 , o#k , o[p->v] } . However,
> since v#c_2 \in \Phi and c_2##c_1 \in \Phi and v#c_1 \notin \Phi,
> then by definition of state of the fact base (section 2.2.2), \Phi*
> cannot represent a state of the fact base.
>
> What I wish to know is: have I correctly determined an
> inconsistency, and if so, how should it remedied?
I think that you are right and that this is an oversight. I will propose a
correction in the revised edition.
Btw, you can assert class membership only for a new frame object, in PRD,
that is, you rule should read:
If <some condition> Then Do( (?y New(]) Assert(?y#c_2) ) )
But that does not change your argument about the missing fact.
Thanx for your comments.
Cheers,
Christian
IBM
9 rue de Verdun
94253 - Gentilly cedex - FRANCE
Tel./Fax: +33 1 49 08 29 81
Sauf indication contraire ci-dessus:/ Unless stated otherwise above:
Compagnie IBM France
Siège Social : 17 avenue de l'Europe, 92275 Bois-Colombes Cedex
RCS Nanterre 552 118 465
Forme Sociale : S.A.S.
Capital Social : 645.605.931,30 ?
SIREN/SIRET : 552 118 465 03644 - Code NAF 6202A
Received on Monday, 9 July 2012 16:10:36 UTC