User:rhmccullough/Sandbox/mKR

From Wikiversity

Jump to: navigation, search

mKR article

Template:Infobox programming language

mKR is a high-level programming language which supports the knowledge representation primitives required to create, edit and search knowledge bases. It follows the procedural programming paradigm, using variables and procedures, but also makes use of naturalistic words and phrases, as well as the epistemological notions of definition and context.

mKE (my Knowledge Explorer) is an intelligent knowledge base assistant -- a computer program which communicates using the mKR language.

Contents

[edit] History

In 2002, the developers of mKR and RDF compared the languages in an email forum. The comparison included definitions, context, actions, n-ary relations, Entity, properSubClassOf and ClassSet. This forum produced a better understanding of both languages, but did not lead to any significant changes in either language. The developers later compared the mKR and OWL languages; this time a significant change was made in the OWL language. onProperty Restriction was added to emulate the genus-differentia definition of the mKR language.

At the suggestion of the RDF/OWL developers, a practical mKR language interface was developed for the Stanford University TAP knowledge base and the OpenCyc knowledge base. A simple mKR language interface was also developed for Amazon.com and Google. mKE (my Knowledge Explorer) was enhanced to read RDF files.[1]

The most recent changes in mKE provide command-line options to initialiize the knowledge base with concepts from a language chosen by the user. Language options include RDF, OWL, OpenCyc, TAP, Amazon, Google.

As mKE and mKR have been used to interface with more systems, they have attracted the attention of a wider audience.[2]

[edit] Design features

  • Simple English

mKR's syntax is similar to English, simplified so that the same name is used regardless of tense and number, verbs are always in the infinitive, and attributes always take the first person singular. Starting with mKR's built-in vocabulary, which includes all Natural Semantic Metalanguage concepts, [3] the user adds his own English words and phrases. These features make mKR easy to use.

  • UNIX shell

From the UNIX shell, mKR inherits the conceptual and syntax elements of variables, methods, conditionals, and iteration, but unlike the UNIX shell there are no wild cards or pipes. [4] These features give mKR its computational power.

  • Context

mKR "implements" the context theories of Ayn Rand[5] and Keith Devlin.[6] The basic mKR statement takes the form

   at space=s, time=t, view=v { subject verb object preposition-phrase-list [done]; };

view (aka situation) names a list of propositions, which logically define the context. When object is an action, space and time constitute a subcontext which characterize the changes associated with the action, and done terminates the preposition-phrase-list.

mKR uses entity-characteristic-proposition hierarchies as a visual aid in grasping the meaning of knowledge, and as a primary means of input/output. For example, see the tabula rasa hierarchy in the next section. These features give mKR the power to enhance the Real Intelligence of its user.

[edit] Special features

The brief examples given below illustrate some special features of mKR.

  • relation
address book is relation with
   format = [person:1, email:2, phone:3],
   meaning = { $1 has email=$2, phone=$3; };
begin relation address book;
   John Doe, jdoe@PioneerCA.com, 209-555-1212;
end relation address book;
  • hierarchy
begin hierarchy tabula rasa;
   existent;
   /    group;  # abstract entity
   /    entity; # physical entity
   /    characteristic;  # property
   //       attribute;
   //       part;
   //       relation;
   //       action;
   //       interaction;
   /    proposition;
end hierarchy tabula rasa;

[edit] See also

[edit] References

  1. 2003, David Beckett, Resource Description Framework (RDF) Resource Guide, RDF Editors and Tools, McCullough Knowledge Explorer.
  2. 2008, Clinton Jeffery, Lecture Notes for CS 404/504 Program Monitoring and Visualization, Lecture 14, University of Idaho.
  3. 1996, Anna Wierzbicka, Semantics: Primes and Universals, Oxford University Press.
  4. 1995, Morris I. Bolsky, David G. Korn, The New KornShell Command and Programming Language, Prentice-Hall.
  5. 1990, Ayn Rand, Introduction to Objectivist Epistemology, Expanded Second Edition, Meridian.
  6. 1995, Keith Devlin, Logic and Information, Cambridge University Press.

[edit] External links