Re: matching existing existentials in the consequent.

Jeff,

Good question.

Of course

	bob a :CatLover; :owns :fluffy, [a :Cat].

does not mean he owns *another* Cat.  It means he owns fluffy, and he  
owns a cat.
Those of us who know fluffy is a cat know that the second part of it,  
{:bob :owns [ a :Cat ]} doesn't give us any new information.

The resulting graph, then is not 'lean' in the sense that you can  
remove some triples from it without it losing any information.

The question for cwm is whether when it concluded {bob :owns  
[ a :Cat ]} whether it should have asked itself whether or not it  
already knew {bob :owns [ a :Cat ]} .  Cwm has varied in that at times  
during its evolution.  It obviously takes more time to actually check  
the store.  I think the current version (speaking from vague memory,  
unchecked -- I'm in a plane about to land) it does not check whether  
the store already holds (or implies) the conclusion, but it does  
chaeck that the bindings  { ?x -> bob } have  not been seen before.

Tim


On 2008-04 -11, at 12:27, Jeff Thompson wrote:
>
> Consider the following:
>
> alice a CatLover.
> bob a CatLover.
> bob owns fluffy.
> fluffy a Cat.
> {?x a CatLover} => {?x owns [a Cat]}.
>
> As expected, cwm --think knows that alice is a CatLover, so asserts  
> that she
> owns [a Cat]:
>
> :alice a :CatLover; :owns [a :Cat].
>
> However, bob already owns Fluffy who is a Cat, but cwm seems to  
> ignore this and asserts that
> he owns another Cat:
>
> :bob a :CatLover; :owns :fluffy, [a :Cat].
>
> I ask because cwm will match existing existentials in the  
> antecedent, so shouldn't
> it also match them in the consequent, and just leave it as bob owns  
> Fluffy without
> adding another assertion?
>
> Thanks,
> - Jeff
>

Received on Saturday, 19 April 2008 22:02:52 UTC