W3C home > Mailing lists > Public > www-ws@w3.org > September 2003

Re: [OWL-S] arguments for PAI and PAC

From: Drew McDermott <drew.mcdermott@yale.edu>
Date: Tue, 16 Sep 2003 09:16:09 -0400 (EDT)
Message-Id: <200309161316.h8GDG9I17311@pantheon-po02.its.yale.edu>
To: www-ws@w3.org, epsl-writing@eeld.org

   [Mike Pool]

   I guess my remaining question concerns the extent to which moving
   to PAI solves rather than just ignores this representational
   problem.  Despite moving to a "classless" system, isn't the above
   (i.e., your sentence, "In every execution trace of ...")  still
   what one is trying to communicate in one's representational
   language?  Even if the process language uses instance-level
   prototypes, in the end the user must recognize that the information
   contained therein is equivalent to what you've suggested above, no?

I posted some stuff on the formal semantics of DAML-S to www-ws@w3.org
recently, and of course you're right --- processes do denote execution
traces, more or less, in that semantics.  (Someone else may find a
better one in which they denote something else.)

The question is whether it's a good idea to expose the semantics via
DL-style classes.  It seemed like a good idea at the outset --- why
not? --- but DL's put strong limits on expressiveness in order to
retain decidability.  Having gained the ability to talk about
execution traces explicitly, we found we had lost the ability to do a
lot of other things easily or at all.  Then it turned out that we
never actually wanted to talk about execution traces.  It would have
been just fine to leave them in the semantics.  On top of that, in a
system where processes are individuals, if we ever need to talk about
execution traces, we can use a role (traceOf, or whatnot) to say "This
individual, trace TR, is an execution trace of that individual,
process PR."

It's scary reversing a design decision seemingly so deeply embedded in
the system, but it turned out to be surprisingly easy, partly because
that very design decision had kept the system "shallow" in lots of
places; there wasn't that much to uproot.

   In other words, if in a PAI approach I say, "the output of step 3
   is in the input to step 5" I really mean "whenever (for all) an
   instantiation/execution trace of the process occurs, the output of
   the third step is the input for the fifth step" ...


   ...and whichever system I'm using that implements this process
   description must recognize this.


Well, it depends on what you mean by "recognize."  Does a Fortran
compiler "recognize" the formal semantics of Fortran?  Only
implicitly, where by "implicitly" I mean something like this:

 Notation processor P implicitly recognizes the semantics of notation
 N if, whenever P infers expression B (in notation N) from A (in
 notation N), it must be the case that the semantics says that B is
 true whenever A is true.

"Infers" can probably be generalized here, but you get the idea.  The
person who _wrote_ P must "recognize" the meaning of N, but P doesn't
have to in any sense except being correct. 

                                             -- Drew McDermott
                                                Yale Computer Science Department
Received on Tuesday, 16 September 2003 09:16:11 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:05:12 UTC