Re: play(player, game)

Hans Chalupsky <[email protected]>
Newsgroups gmane.comp.ai.powerloom
Message-ID <[email protected]>
>>>>> Octav Popescu <[email protected]> writes:

> Then I guess my question is again: Any idea when you'll issue the next 
> release? :-)

We are working on another release which will be licensed open-source
similar to STELLA.  It will also include our database interface for
PowerLoom (currently only supporting MySQL).

> Another question: irrespective of the CLOSED declaration, does PowerLoom do 
> 3-value (or 5-value with the defaults) logic computation? Like saying (AND 
> UNKNOWN FALSE) = FALSE, (AND UNKNOWN TRUE) = UNKNOWN, (OR UNKNOWN TRUE) = 
> TRUE, (OR UNKNOWN FALSE) = UNKNOWN.

Yes, for example:

STELLA(3): (defrelation happy (?x))
|r|HAPPY
STELLA(4): (assert (not (happy joe)))
|P|(NOT (HAPPY JOE))
STELLA(5): (ask (happy fred))
UNKNOWN
STELLA(6): (ask (and (happy joe) (happy fred)))
FALSE
STELLA(7): (ask (or (happy joe) (happy fred)))
UNKNOWN
STELLA(8): (ask (or (not (happy joe)) (happy fred)))
TRUE
STELLA(10): (ask (and (not (happy joe)) (happy fred)))
UNKNOWN
STELLA(11): 

Hans

> --On Tuesday, May 24, 2005 6:46 PM -0700 Hans Chalupsky <[email protected]> wrote:

>> Octav,
>> 
>> you are right that the primary reason for this is the asymmetric
>> effort by PowerLoom on proving the query as stated as opposed to
>> trying to prove its negation.  You are also right that the system
>> looks somewhat stupid/buggy using this behavior when querying closed
>> relations.  Tom Russ was offended by this also recently and has been
>> working on a fix.  I'm not sure exactly where we are on this, but
>> we'll try to fix this for the next release.
>> 
>> Hans
>> 
>>>>>>> Octav Popescu <[email protected]> writes:
>> 
>>> Hans,
>>> After looking a little into this, now I'm confused too about the semantics
>>> of  the CLOSED predicate. :-) I understand why the example below does not
>>> lead to  any contradictions. But I'm not sure I understand why CLOSED only
>>> has effect  on NOT questions. Like for instance:
>> 
>>> ? (defconcept player)
>>> | c|PLAYER
>>> ? (assert (closed player))
>>> | P|(CLOSED PLAYER)
>>> ? (assert (player jano))
>>> | P|(PLAYER JANO)
>>> ? (ask (not (player chess)))
>>> Processing check-types agenda...
>>> TRUE
>>> ? (ask (player chess))
>>> UNKNOWN
>> 
>>> I'm not sure I understand why the last query doesn't return FALSE. I take
>>> it  it has to do with the fact that PowerLoom doesn't put much effort into
>>> disproving a query. The manual says:
>> 
>>> "The PowerLoom command ask returns one of three values: true if it can
>>> prove  the truth of a proposition, false if it can easily prove the
>>> falsity of a  proposition and otherwise it returns unknown."
>> 
>>> So in this case PowerLoom does know that the query failed, and it seems to
>>> me  it would be easy to check that the predicate is CLOSED, and then
>>> change the  result to FALSE. This would be more in line with the "negation
>>> as failure"  mode. Is there a problem with this?
>> 
>>> Thanks,
>>> Octav
>> 
>>> --On Friday, May 13, 2005 13:11 -0700 Hans Chalupsky <[email protected]> wrote:
>> 
>>>> Krzysztof,
>>>> 
>>>> I'm not sure why you think the last assertion should not be possible.
>>>> At that point both JANO and CHESS are of type PLAYER (via explicit
>>>> assertion) and GAME (inferred via the type constraint on PLAY).  You
>>>> asserted GAME and PLAYER to be closed which only means (NOT (GAME/PLAYER
>>>> ?x))  will be concluded if (GAME/PLAYER ?x) cannot be inferred.  So, there
>>>> are no contradictions I can see.
>>>> 
>>>> Hans
>>>> 
>>>>>>>>> Krzysztof Janowicz <[email protected]> writes:
>>>> 
>>>>> hi,
>>>>> i do not understand why the last assert is possible, can anyone give me
>>>>> a hand? can i assert everything independent of the definitions made
>>>>> bevor?
>>>> 
>>>>> thanks!
>>>> 
>>>>> (DEFCONCEPT PLAYER)
>>>>> (DEFCONCEPT GAME)
>>>>> (DEFRELATION PLAY (?X ?Y)
>>>>> :=> (AND (PLAYER ?X) (GAME ?Y)))
>>>> 
>>>>> // or (defrelation play ((?x player) (?y game)))
>>>> 
>>>>> (ASSERT (CLOSED GAME))
>>>>> (ASSERT (CLOSED PLAYER))
>>>>> (ASSERT (PLAYER JANO))
>>>>> (ASSERT (PLAYER CHESS))
>>>>> (ASSERT (PLAY JANO CHESS))
>>>>> (ASSERT (PLAY JANO JANO))
>>>> 
>>>> 
>>>>> regards
>>>>> k.janowicz
>>>>> _______________________________________________
>>>>> powerloom-forum mailing list
>>>>> [email protected]
>>>>> http://mailman.isi.edu/mailman/listinfo/powerloom-forum
>>>> 
>>>> _______________________________________________
>>>> powerloom-forum mailing list
>>>> [email protected]
>>>> http://mailman.isi.edu/mailman/listinfo/powerloom-forum
>>>> 
>> 
>>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.