geneontology / design_patterns

A repository of GO design patterns
0 stars 0 forks source link

Can we strengthen our axiomatization to have spatial disjointness work for occurs_in #5

Open dosumis opened 8 years ago

dosumis commented 8 years ago

From @cmungall on August 25, 2015 21:48

cc @hdietze @kltm

We currently have spatial disjointness axioms, e.g.

 (partOf some nucleus) DisjointFrom (partOf some cytosol)

This will correctly identify any continuant with contradictory partOf axioms

However, this isn't detecting some invalid biology in some of the lego models, where we have the same activity occurring in both nucleus and cytosol

for this we would need

 (occursIn some nucleus) DisjointFrom (occursIn some cytosol)

But obviously we don't want to redundantly maintain parallel axioms

Assigned to @dosumis to see if he has any ideas here, I feel I'm missing something, but can't think of the elegant solution. We can certainly write a script that would generate one from the other but ugh.

The other approach would be to declare a superproperty that subsumes both occursIn and partOf, and use that in the axioms, effectively doing double duty (a weaker relation inside an axiom involving negation can result in a stronger axiom).

Within FOL we would just say occursIn -> occursIn o partOf (which is valid for locally reflexive partOf) which would yield the desired inferences, but we can't say this in OWL

unless I'm missing something?

Copied from original issue: geneontology/go-ontology#12028

dosumis commented 8 years ago

I think i like the new, weaker OP solution. The one aspect that feels hacky is that it relies on a po relation with domain encompassing continuant and occurrent even though we would never allow occurrent po continuant. Could fall foul of any axiomatisation added in future to flag this this as inconsistent. If we follow this route, new rel should live in gorel with gorel uri and a comment on usage.

dosumis commented 8 years ago

From @cmungall on August 26, 2015 15:19

I would opt for RO, as we'd want to use it in Uberon, PO and even ENVO

Wherever it lives we would need mechanisms to stop it being used in (non-disjointness) assertions, because there is no way to do the 'push-down' inference to the more specific relation without the ugly self-restriction pattern which lies outside EL.

dosumis commented 8 years ago

Are you sure self restriction is outside of EL? Looks like its not: http://www.w3.org/TR/owl2-profiles/#OWL_2_EL_2 (although ELK may not support)

dosumis commented 8 years ago

From @cmungall on September 24, 2015 15:25

On 24 Sep 2015, at 8:07, David Osumi-Sutherland wrote:

Are you sure self restriction is outside of EL? Looks like its not: http://www.w3.org/TR/owl2-profiles/#OWL_2_EL_2 (although ELK may not support)

You're right, it is in EL, but Elk doesn't appear to support it (I didn't test, just going by https://code.google.com/p/elk-reasoner/wiki/OwlFeatures )

cmungall commented 8 years ago

I think i like the new, weaker OP solution

sorry, which one was that?

dosumis commented 8 years ago

declare a superproperty that subsumes both occursIn and partOf

But worry that this is not safe without a processual_part of relation.