On 09/19/2017 08:23 PM, Alex wrote:
> OpenCog uses Scheme as knowledge representation language (as I
> understand, then this is one from many options for interfacing with
> OpenCog). So - this is natural question - *how close are valid Scheme
> programms to the sentences of OpenCog knowledge? Are OpenCog knowledge
Scheme itself is not represented in the AtomSpace, expect that you can
call scheme functions from the AtomSpace but that's all, here's an example
(And (Predicate "P") (Predicate "Q"))
represent the predicate that is the intersection between P and Q.
Here's another one
(Lamdba
(Variable "$X")
(Evaluation
(GroundedPredicate "scm: my-fun")
(Variable "$X")))
defines an anonymous predicate using a scheme defined function called
my-fun.
There's also a Define construct, similar (but not identical) to scheme
define, etc. So you see it is close to scheme in spirit and syntax but
it is NOT scheme, it is what is currently called atomese, although we
use scheme (or Python, or Haskell) to communicate in atomese.
> There is homoiconicity in Scheme language - Scheme code is the data and
> Scheme data is the code. So - one can represent the data/declarative or
> procedural knowledge with the Scheme code.
Same thing in OpenCog/atomese.
>
> If OpenCog sentences are more or less valid Scheme programs and if
> Scheme programs are data structures, then the following question arise -
> *how can we represent Scheme programs as data structures - can current
> production ready graph databases (Neo4j) be used for the storing the
> Scheme programs and for the querying Scheme programs and also - for
> executing Scheme programs?* If such represenation is possible then maybe
Correct, but not scheme program, atomese program.
> it is possible to move OpenCog knowledge bases (as Scheme programs) to
> graph databases. I am suspicious about Neo4J, because it is commercial
> database, but Apache ArangoDB can be very good options, because it is
> open source and it known to be very scalable. I am a bit suspicous
> whether OpenCog infrastructure can compete with the commercial ready
> databases. And if Scheme programs can be represent in current database
> then we can keep OpenCog philosophy, knowledge base code, agent code and
> gain the scalability of graph databases...
Don't know the other data bases you cite (Linas and Ben know however).
>
> If OpenCog knowledge base (AtomSpace) is the big Scheme program then we
> can consider also the self-modification of this program. And even more -
> Scheme language as functional programming language is connected to
> lambda calculus and lambda calculi are the prime formalism for the
> reasearch and implementation of the Goedel machine. So - *self modifying
> OpenCog atomspace (as Scheme program) can be the Goedel machine or at
> least the seed of Goedel machine or the seed of AGI?*
YEAH! I've been saying that ever since I've known Ben Goertzel design,
back in the Novamente days, maybe we should call it the Goertzel machine.
>
> *So - are there thoughts and ideas floating around along the lines that
> I have described?*
You may want to take a look at the URE
http://wiki.opencog.org/w/Unified_rule_engine
See the examples in the atomspace and opencog repo as well
https://github.com/opencog/atomspace/tree/master/examples/rule-engine
https://github.com/opencog/opencog/tree/master/examples/pln
Nil
>
> --
> You received this message because you are subscribed to the Google
> Groups "opencog" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to
opencog+u...@googlegroups.com
> <mailto:
opencog+u...@googlegroups.com>.
> To post to this group, send email to
ope...@googlegroups.com
> <mailto:
ope...@googlegroups.com>.
> Visit this group at
https://groups.google.com/group/opencog.
> To view this discussion on the web visit
>
https://groups.google.com/d/msgid/opencog/1a6823b8-0479-4469-a2ac-47a36b1c2140%40googlegroups.com
> <
https://groups.google.com/d/msgid/opencog/1a6823b8-0479-4469-a2ac-47a36b1c2140%40googlegroups.com?utm_medium=email&utm_source=footer>.
> For more options, visit
https://groups.google.com/d/optout.