W3C home > Mailing lists > Public > public-prov-wg@w3.org > August 2012

RE: PROV-ISSUE-452: what is plan in association inference [prov-dm-constraints]

From: Miles, Simon <simon.miles@kcl.ac.uk>
Date: Thu, 9 Aug 2012 14:40:50 +0100
To: Provenance Working Group <public-prov-wg@w3.org>
Message-ID: <830EEE5C741ED54EAB28EBACFFC77984EEA21205B1@KCL-MAIL04.kclad.ds.kcl.ac.uk>

Yes, I think you're suggestion is adequately clarifying. As I understand it, you are suggesting that each rule states explicitly where a "-" means an explicit absence of something as opposed to merely not being specified, right?


Dr Simon Miles
Senior Lecturer, Department of Informatics
Kings College London, WC2R 2LS, UK
+44 (0)20 7848 1166

Evolutionary Testing of Autonomous Software Agents:

From: James Cheney [jcheney@inf.ed.ac.uk]
Sent: 09 August 2012 10:28
To: Miles, Simon
Cc: Provenance Working Group
Subject: Re: PROV-ISSUE-452: what is plan in association inference [prov-dm-constraints]

One more thing connected to this issue:

Simon, in his review, said:

   > http://www.w3.org/2011/prov/track/issues/452
   > The relation inferred should be "wasAssociatedWith(_id2;a, ag2, -,
   > _attrs2)". As the document currently says, this does not necessarily
   > mean that a plan does not exist, just that in that statement we have
   > chosen not to identify it if it does exist. This does not preclude
   > other statements on the assocation that do identify the plan. See
   > related point B below.


   > B. Remark under Definition 4: "In an association... the absence of a
   > plan means: either no plan exists, or a plan exists but is not
   > identified... Similarly, a wasDerivedFrom... that specifies an
   > activity is not equivalent to wasDerivedFrom(id;e2,e1,-...)"
   > I was not clear what you were implying here. That wasDerivedFrom with
   > - for the activity parameter can mean that no activity existed? If so,
   > how did the derivation occur? Or that it can mean the activity existed
   > but is not identified? But isn't that what - means in every other
   > relation? Why would activity in wasDerivedFrom be a special case?

This reflects a possible confusion about the meaning of "-" in the plan position of association, and activity (and now generation and use) positions of derivation.

These are considered "non-expandable" parameters.

The reason for this is that (as far as I can tell) the consensus has been that for these particular optional parameters, if the parameter is missing or given as "-", then it means "there is no plan" and so on.

For all other, expandable parameters, a missing parameter means "there is an object, whose identity is uncertain".  These are handled by generating fresh existential variables, which can be later merged with other known variables if need be.

This distinction is important in the document.  It is connected to the treatment of merging.  We do not allow merging a "-" with an identifier, because (after expansion of optional parameters) a "-" denotes a non-expandable parameter, which indicates absence of a value, not an unknown value.  If we instead allowed anything to merge with a non-expandable "-", then it would in effect just be an existential parameter.  (terminology really needs work here though!)

I understand that this behavior may be surprising - it's one reason I was arguing for making the parameters that have "optional means absent" semantics into attributes, where this is the default.  Then all of the "-" parameters could have been treated uniformly.

As far as I am aware this is consistent with the resolution of ISSUE-331.  (I personally would be happy to make all of the "-"'s expandable, and remove the distinction, for uniformity, but I don't believe that reflects the consensus).

To resolve this, Simon, is there new information that means we should revisit this design decision?


On Aug 8, 2012, at 5:44 PM, James Cheney wrote:

Having gone over the reviews and discussed with other editors, it appears to me that the problem is that we don't make it clear enough when a symbol like "_pl" may denote a "-", since people may otherwise assume that such symbols stand for identifiers or literals.

I had intended that such a symbol behaves like a variable, so stands for any of the following: identifier, literal, another existential variable, or "-" (in places where this is possible).

To resolve this issue, I propose to add an explicit statement whenever such a symbol occurs in the IF part of a rule to indicate that it MAY be instantiated with a "-", and state that the symbol MUST NOT be a placeholder when this is needed.

Thus, normally an identifier can be assumed to represent one of "identifier", "literal", "another existential variable", and wherever it is also possible that it represents "-", we say explicitly whether this is possible to prevent confusion.

The change is made; anyone tracking this issue, please look at the inferences and constraints involving wasDerivedFrom (activity, gen, use) and wasAssociatedWith (plan) to review the change.

Marked for review, Tim, Stian, others please see if this addresses the issue.


On Aug 6, 2012, at 5:15 PM, James Cheney wrote:

Several reviewers commented that the meaning and usage of "-" is still confusing, in association and other places.  I have re-opened the issue and we will try to take all the review comments on it into account.


On Jul 18, 2012, at 7:02 PM, James Cheney wrote:

I have added a remark to explain that existential variables can be instantiated with either an identifier or '-', thus, the existing inference is general enough already.

(As with the treatment of existential variables generally, this needs to be explained a little more carefully and visibly, but this is a generic issue).

I am marking this issue "pending review" so please continue discussion if the way this is handled in the document is not satisfactory.


On Jul 18, 2012, at 12:07 PM, James Cheney wrote:

Yes, that's true, but not inconsistent with what I said.

I have in mind allowing existential variables to range over both regular identifiers and "-".  That is, in the plan position, "-" would be a special constant denoting "no plan".  (It might be clearer to call this "nil" or something explicitly in order to avoid complication.)

This is not the same as saying that wasAssociatedWith(id; a, ag, -, attr) is equivalent to wasAssociatedWith(id; a, ag, pl, attr) (they are not).

I acknowledge that this reading is not evident in the current document, andore generally the handling of different kinds of "-" and of existential variables needs work.  Proposed resolution: Do this.

Regarding whether an issue is appropriate, I agree that this is an open process.  Of course, the constraints document is online and anyone can read it and raise issues.  I just think that among editors of the document, it will be more efficient to discuss things that are essentially typos or things that are not clearly explained over email before making it a formal issue and clogging everyone's inbox.  I would rather spend the time working on the document than answering many different issue emails.  But I am happy to do it this way instead, I just think it will take longer.


On Jul 18, 2012, at 11:13 AM, Luc Moreau wrote:

Hi James,

I am fine with your response, but section 6.1

states that wasAssociatedWith(id; a, ag, -, attr) is not equivalent to wasAssociatedWith(id; a, ag, pl, attr) where a plan is given.

It seems that some fine tuning is required here.


On 07/18/2012 10:52 AM, James Cheney wrote:
Hi Luc,

I don't see a need to raise issues about things that can be fixed easily through discussion.  It just clogs the issue system.

If we are treating "-" as an explicit "no plan" argument in association statements, then the most general form is "there exists _pl such that ... (... _pl ...).  So the urrent form of the rule already subsumes the disjunctive form you suggest.  (Having rules with explicit disjunctions in the heads is a bad idea, as it will take us outside a well-behaved rule formalism.)


On Jul 18, 2012, at 10:20 AM, Tom De Nies wrote:

Isn't this related to the notion of default values for optional attributes?

I think you're correct that we need to clarify this somewhere earlier in the document.
Perhaps we can expand the conventions section (1.1) with the used notational conventions, such as the underscore for arguments that only occur once in a constraint/inference. Maybe we could use a similar symbol for possibly empty attributes, or just specify here that although the constraints always specify all arguments, those with an underscore that are optional, can possibly be omitted when applying the rule,


2012/7/18 Provenance Working Group Issue Tracker <sysbot+tracker@w3.org<mailto:sysbot+tracker@w3.org>>
PROV-ISSUE-452: what is plan in association inference [prov-dm-constraints]


Raised by: Luc Moreau
On product: prov-dm-constraints

Some inferences allow new association statements to be inferred.


When we write: wasAssociatedWith(_id2;a, ag2, _pl2, _attrs2) in the consequent,
a plan may not necessarily exist.

So, shouldn't it be:

wasAssociatedWith(_id2;a, ag2, _pl2, _attrs2)
wasAssociatedWith(_id2;a, ag2, -, _attrs2)

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

Professor Luc Moreau
Electronics and Computer Science   tel:   +44 23 8059 4487
University of Southampton          fax:   +44 23 8059 2865
Southampton SO17 1BJ               email: l.moreau@ecs.soton.ac.uk<mailto:l.moreau@ecs.soton.ac.uk>
United Kingdom                     http://www.ecs.soton.ac.uk/~lavm

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.
Received on Thursday, 9 August 2012 13:43:13 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:51:19 UTC