A CLIPS dialog continued

Sorry for being so cryptic and weird in my last post.

I'm currently trying to figure out Not and Exists. I'm trying several diferent scenarios in CLIPS to see if I can make any sense of the behaviour. I've tried reading about Negation as Failure and other formal, theoretical descriptions of the underlying concepts but I'm not smart enough to make anything out of it so I'm reverse-engineering instead ;-)

CLIPS> (retract 2)
<== f-2 (digit 1)
==> Activation 0 r2: f-0,
CLIPS> (retract 3)
<== f-3 (digit 2)
==> Activation 0 r3: f-0,,
CLIPS> (assert (digit 1))
==> f-6 (digit 1)
<== Activation 0 r3: f-0,,
CLIPS> (assert (digit 2))
==> f-7 (digit 2)
<== Activation 0 r2: f-0,
I think I can easily add Not and Exists to pyRete if I don't allow multiple expressions inside them but then again it might not be too difficult to allow them either. Peter has left some comments on my previous post and there's, as always, lots of useful info on his blog. Apparently he's also doing some work on his Not implementation in Jamocha (prev Sumatra). I'll download the latest source tomorrow. It might clear things up for me.

4 kommentarer:

woolfel sa...

if you have any questions, feel free to ask. some of this stuff can be quite essoteric and very few people know enough to implement it. the wikipedia explanation of negation is rather poor in my bias opinion. anyone reading it wouldn't be able to tell how to implement it. I have a few entries that explain exactly how NOT works and why it differs from a normal join node.

Johan Lindberg sa...

Thanks Peter, I just might.
I'm still experimenting with CLIPS. And now also with Jamocha, it really helps with the Network viewer. I wish Gary would add one to the next release of CLIPS :-)

woolfel sa...

thank the hard working students at aachen university in germany for the viewer. the latest code now displays the details of the node when you click on it :)

hopefully that will make it easier to understand.

Johan Lindberg sa...

Yes, Jamocha has definitely "taken off" as an OSS project since those students came along. And they seem to be doing really great things. But I happen to know that there's lots and lots of hard work to do *before* you get a project to the stage where university professors offer you their students' time working on it.