Re: [Fwd: Re: cell types, brain regions mentioned in gensat]

On 5 Mar 2007, at 17:37, Kashyap, Vipul wrote:

>
> Thanks for the response, Pat, That's quite a relief to hear.
>
> ________________________________
>
>>> EquivalentClass(X, intersectionOf(Y, Restriction 
>>> (locatedinBrainRegion
>>> allValuesFrom(Z))
>>>
>>> Is this what you had in mind?
>>> I guess, one could define macros (using the lisp backquote  
>>> mechanism) where
>>> these variables could be plugges in at run time and then sent to  
>>> the OWL
>>> reasoner.
>>>
>>> As long as these variables are instantiated, you are OK, but without
>>> instantiation you end up in higher order
>>> logics, which might be beyond OWL full.
>>> So that will not be feasible.
>
> Whoa. This isn't higher-order, even with
> variables. In fact its within OWL-DL, which is a
> tractable subcase of first-order.
>
> [VK]... The fact that X, Y, and Z range over classes (and  
> laziness :)) is what
> made me think that.
> Glad to heat that this is not the case.

If those do range over classes, then the above expression is, indeed,  
at least syntactically second order and definitely not in OWL-DL.

Depending on exactly what you wanted to do with that, especialy if  
the procedural account above is what you want, then this is fairly  
straightforward.

E.g., is the above a *query*? As long as the variables range over  
atomic classes (i.e., named classes), it's pretty easy. You do have  
to loop over all the tuples and check if the resultant expression is  
entailed (i.e., you are treating it as a certain sort of axiom  
schema). You can do a better by being clever about your testing  
(e.g., if replacing X with C1 is entailed for some given value of Y  
and Z, and C2 is known to be disjoint with C1, then you don't need to  
do a full test iwth C2 for X for those Ys and Zs.) Inside the  
reasoner, you could make use of other optimizations which are used in  
classification.

Cheers,
Bijan.

Received on Monday, 5 March 2007 18:38:49 UTC