Looking for Prolog Programmers, Ontologists, SMEs, Knowledge

Looking for Prolog Programmers, Ontologists, SMEs, Knowledge Engineers

A new MUD server for doing IF has been started and reached the point of “working”


WIKI github.com/TeamSPoon/logicmoo/wiki
SOURCE CODE github.com/TeamSPoon/logicmoo
HOMEPAGE mud.prologmoo.com/
GOOGLEDOCS drive.google.com/#folders/0B0QA … XEzc3hjTWM (Developer doc in here)
WEB TELNET prologmoo.com/hmud/
SPARQL mud.prologmoo.com:3020/
MUD HTTP mud.prologmoo.com:3020/mud/
TELNET telnet://mud.prologmoo.com:4000

Project Goals

  1. To test and do practical Knowledge Engineering about a virtual realm of objects. (Expertly build rooms with objects based on rules.)
    Sometimes its easier to model the world as and how we see it.

  2. Perform higher level operations and model how state changes happen with our objects

  3. To animate non-player character agents from propositional rules

  4. Provide a interface for humans to involve themselves in the lives of logically created agent creatures.

  5. To represent episodic models of memory for each agent. (As well as abduction or creating ‘Beliefs’)

  6. Craft rooms in English (Similar to I7 … however there is no “compilation phase” needed)

Can’t ya just steal stuff from CYC? :slight_smile:

This is amazing.

David C.

Cool! When I was teaching myself Prolog a couple weeks ago, interactive fiction seemed like such a natural fit to logic-based programming.

Which implementation of Prolog does it use?

Ideally yes. In fact much of the KB design already used is guided by CYC system.

  1. Yes, 100% of CycL common sense assertions in ResearchCyc about the world are yes 80% of what we need! And there is no gain by cherry picking and leaving some behind… However we arent allowed to use all that we need without a ResearchCyc Licence :frowning: I possess one and Cycorp is willing to give more of them out I bet. But until everyone possess such a Licence I have been afraid to dump the KB into Logicmoo. and call it “Standard Rules” :slight_smile: But ideally yes we would. Here is my Dream: Cycorp says " hrrm a MUD ran inside CYC is very useful! We are going to embed something like AllegroProlog (made more ISO-Prolog) Inside of ResearchCyc and we want it be the Prolog Platform you use! OR support writing your MUD inside of Cyc written in SubLisp code."

  2. The E2C English parser was initially written to convert “English to CycL”. Because CycL can be free form like prolog facts and rules while still keeping keeping use sane making our output using very well declared semantic definition even when only explained thru #$argIsa and #$comment assertions. Also the work Cycorp did in their English parsing system (for PSP/Phrase Structure parser) was ideal for being used by Prolog’s definitive clause grammars. Cycorp I can guess felt that although its was a major success (PSP) “one pass” parsing was too naive approach and elected to try to use other parser’s in parallel to help them with “Parts of Speech” and Stanford NER (name Entity recognizer) and technology pre-existing and emerging outside of Cycorp. Then they would put the output of those parser outputs into a some “Syntactical” Microtheores (MTs). (Microtheories are not small “theories” what they are are “Sets of facts and rules meant to be used together” and deemed non-contradictory to themselves and allow a secondarg #$genlMt hierarchy between multiple MTs that allow the MTs when combined to satisfy dependencies and create even greater consistency n KBs) So I think Cycorp adopted a Mt-to-Mt workflow leveraging parsing rules that where applicable to forward their Consequent literals into new MTs. Eventually consequenting into Ideal Semantic World State MTs that where acceptable for general Homeocentic inference like (loves Jill Bob). I think they knew they where taking two steps back (in code completeness) to gain three steps forward in soundness. But the PSP suffered greatly because it made most of their parsing facts look like poor knowledge engineering when compared with new approach. So most of the data and code support is gone now. But anyhow, Their new method is still OK path for us… And especially their old method is still available at least to Logicmoo though no more in CYC :frowning: … I captured most of the data from OpenCYC and wrote us our own code for the MUDs approach to parsing. There was much KB content I’ve collected from OpenCYC to make this possible.

You probably saw this: amzi.com/articles/prolog_fun.htm

and this amzi.com/AdventureInProlog/a15nlang.php

LogicmooMUD is simply that on steroids :slight_smile:

So I ended up (so we can have a MUD yesterday) using SWI-Prolog… But that wasn’t/isn’t a final decision…

For instance if another prolog has better inferencing (and the suggester helps port away SWI-specific code) we’d switch.

I’ve only played around with gprolog, so I don’t really have any insight on which implementation would be best. Anyway, I’m a bit overloaded right now but I’ll keep an eye on your project and hopefully contribute bits and bobs when I can.

I started to make a video saved at youtu.be/XUNwYHBWJwQ

Though I need to edit it down to the meat and potatoes. Knowing myself I’d rather code than edit video or create a catalog of what is gone over in the 54 minutes so I realized I better uploaded instead of putting it off… After I get a few raw videos uploaded… I’ll edit them down the most useful parts

I been able to start dumping LarKCs bootstrap KB (only 9000 assertions) to start the coding of the CYC inference engine. When this inference engine is done. I’ll be able to sanely provide the layer above Standard Rules as the next layer.

Logicmoo Project being laid out at https://logicmoo.org/xwiki/
Repo at https://logicmoo.org/gitlab/logicmoo/logicmoo_workspace/

Our Discord Server Invite Link https://discord.gg/JREW7F2