-
-
Notifications
You must be signed in to change notification settings - Fork 3
robots:language
Marxos edited this page Jun 18, 2022
·
10 revisions
Our droids will probably be most interesting and useful as droids, rather than imitating humans. This means that rather than training a much larger neural network with human-like experience, we'll use a knowledge base that they can accumulate knowledge in a human-readable and queriable way.
This language to populate the knowledge base, either pre-emptively (before the android has found out for themselves and received the bonus), or by the droid itself can be based on a predicate language like Prolog or like that used in math.
A predicate can be something like:
- Friends = {"Squirly", "Marcos de Lune", "R2D2"}
- Owner = "Marxosans"
- _Politeness_ = 0.43
- Odd_numbers = {3,1,11}
- Odd_numbers = {all(n)|(n mod 2)=1}
This predicate language should have these (projected) minimal primitives:
- android: Assign variable names (to a string, a set?, or another variable name), this may be shorted for referencing the set as Name{element1, element2, etc.}.
- android: Create a set which can take, as members, atomic elements (name-strings (the name of a set or an undefined name) or numbers) or other sets.
- supervisor: a set of operators on which to combine and manipulate sets (intersect, union, outer-join, and not),
- a operator(s) to check for inclusion or exclusion.
- a symbol for the null set and infinity (representing: cannot be answered, refine your question)
- No unnamed ("anonymous") sets allowed, each set created must have a name.
Keyword notes:
- an ontology is a taxonomy of knowledge rather than an epistemology or "physics" of knowledge.