EnAuxVerb Module of the

English and Russian bilingual ghost.pl AI in Perl

Mens Latina in Latin -- MindForth for Robots


1. Diagram of EnAuxVerb English Auxiliary Verb Module


   /^^^^^^^^^\   Generation of "what do you see?"  /^^^^^^^^^\
  /   EYE     \  Pronoun +AuxVerb +Subject +Verb  /   EAR     \
 /             \    | | |    ___________         /             \
|   _______     |   | | |   / Sentence  \       |               |
|  /image  \    |   | | |   \___________/-------|-------------\ |
| / percept \---|---|-|-+     |        \        |  auditory   | |
| \ engram  /   |  s|y|w|     |        _\____   |             | |
|  \_______/    |  e|o|h|     |       /EnVerb\  |  memory     | |
|               |  e|u|a|     |      ( Phrase ) |             | |
|   visual      |   | |t|     |      /\______/  |  channel    | |
|               |   | | |     |     /    / |    |             | |
|   memory      |   | | |  ___|__  /    /  |    |     ____    | |
|               |   | | | /EnNoun\/  __/   |    |    /    \   | |
|   channel     |   | | |( Phrase ) /En-\  |    |   /"what"\  | |
|               |   | | | \______/ / Aux-\-|----|  / "do"   \ | |
|               |   | | |     |    \ Verb/ |    | /  "you"   \| |
|               |   | | |     |     \___/  |    | \  "see"   /  |
|   _______     |   | | |     |         \__|_   |  \        /   |
|  /fresh  \    |   |_|_|    _|___     / En  \  |   \      /    |
| / image   \   |  /     \  / En  \   / Verbs \-|----\    /     |
| \ engram  /---|--\ Psy /-/ Nouns \  \_______/ |     \  /      |
|  \_______/    |   \___/  \_______/------------|------\/       |


2. Purpose of the EnAuxVerb Mind Module

The EnAuxVerb module for English auxiliary verbs serves the purpose of fetching strictly defined verb-forms of auxiliary verbs from the auditory memory channel of the AI Mind. Each verb-form being fetched is strictly defined with respect to person and number, which are made available to the EnAuxVerb module as global variables loaded with the appropriate value by the mind-module calling the EnAuxVerb module.


3. Algorithm of EnAuxVerb English Auxiliary Verb Module

3.1. Simple function: negating an ordinary verb form

3.1.a. The EnVerbPhrase module has a sequence of code devoted to the negating of English verb-forms, as in the famous sentence translated from the original German of Albert Einstein: "God does not play dice with the universe." The same sentence is included in the AI MindBoot sequence as an example of verb-negation in general. Since the verb being negated will be expressed as an infinitive form, that is, a form without a personal, inflected ending, a form of the auxiliary verb "DO" must be selected to carry the information of person and number.

3.1.b.

3.2. Typical function: combining with infinitive to ask a question.

3.2.a. The AskUser module is called from another mind-module like InFerence to ask the human user a question seeking a yes-or-no confirmation or denial of an assertion made by logical inference. EnAuxVerb supplies the required form of the auxiliary verb "DO" for asking the question.


3.3. AI expert special trick: fetching auxiliary verb-forms only from the MindBoot.

3.3.a. The AI MindMaintainer has the option of fetching auxiliary verbs only from the MindBoot sequence where the parameters of person and grammatical number are presumed to be solidly stored and never corrupted. This trick is accomplished by using the $vault value as the start of the backwards search from "time equals vault" to "time equals zero" in the auditory array. In a perfectly functioning AI Mind, all forms of auxiliary verbs would always be stored with perfect spelling and with the perfect formulation of array-parameters denoting the important parameters of person and number. Since code under development may have instances of data-corruption or errors introduced by users, the AI coder may cheat, as it were, by relying on the auxiliary verb forms already stored accurately in the MindBoot sequence.


4. Code of EnAuxVerb() from ghost327.pl AI source code in Perl


sub EnAuxVerb() {  # http://ai.neocities.org/EnAuxverb.html
  if ($prsn==0) { $prsn = 3 }  # 2018-09-30: third person by default.
  if ($subjnum==0 && $snu > 0) { $subjnum = $snu }  # 2018-10-08: insurance
  if ($auxverb == 818) {  # 2018-12-10: if the auxiliary is "DO" or "DOES"
    for (my $i=$vault; $i>$midway; $i--) {  # 2018-12-10: search for 818=DO
      if ($subjnum==1 && $prsn==1) {  # 2018-09-30: 
        my @k=split(',',$psy[$i]);  # 2018-09-30: examine @psy array;
        if ($k[1]==818 && $k[7]==1 && $k[8]==1) {  # 2018-12-10: 1st.p.sing. DO?
          $aud = $k[20];  # 2019-08-01: "DO" recall-vector for Speech()
          last;  # 2018-10-08: one engram is enough.
        }  # 2018-12-10: End of search for 818=DO;
      }  # 2018-09-30: end of test for 1st person singular; 
      if ($subjnum==1 && $prsn==2) {  # 2018-10-08: second person singular 
        my @k=split(',',$psy[$i]);  # 2018-10-08: examine @psy array;
        if ($k[1]==818 && $k[7]==2 && $k[8]==1) {  # 2018-12-10:
          $aud = $k[20];  # 2019-08-01: "DO" recall-vector for Speech()
          last;  # 2018-10-08: one engram is enough.
        }  # 2018-12-10: End of search for 818=DO;
      }  # 2018-10-08: end of test for person and number.
      if ($subjnum==1 && $prsn==3) {  # 2018-10-08: third person singular 
        my @k=split(',',$psy[$i]);  # 2018-10-08: examine @psy array;
        if ($k[1]==818 && $k[7]==3 && $k[8]==1) {  # 2018-12-10:
          $aud = $k[20];  # 2019-08-01: "DO" recall-vector for Speech()
          last;  # 2018-10-08: one engram is enough.
        }  # 2018-12-10: End of search for 818=DO;
      }  # 2018-10-08: end of test for person and number.
      if ($subjnum==2 && $prsn==1) {  # 2018-10-08: first person plural 
        my @k=split(',',$psy[$i]);  # 2018-10-08: examine @psy array;
        if ($k[1]==818 && $k[7]==1 && $k[8]==2) {  # 2018-12-10:
          $aud = $k[20];  # 2019-08-01: "DO" recall-vector for Speech()
          last;  # 2018-10-08: one engram is enough.
        }  # 2018-12-10: End of search for 818=DO;
      }  # 2018-10-08: end of test for person and number.
      if ($subjnum==2 && $prsn==2) {  # 2018-10-08: second person plural 
        my @k=split(',',$psy[$i]);  # 2018-10-08: examine @psy array;
        if ($k[1]==818 && $k[7]==2 && $k[8]==2) {  # 2018-12-10:
          $aud = $k[20];  # 2019-08-01: "DO" recall-vector for Speech()
          last;  # 2018-10-08: one engram is enough.
        }  # 2018-12-10: End of search for 818=DO;
      }  # 2018-10-08: end of test for person and number.
      if ($subjnum==2 && $prsn==3) {  # 2018-10-08: third person plural 
        my @k=split(',',$psy[$i]);  # 2018-10-08: examine @psy array;
        if ($k[1]==818 && $k[7]==3 && $k[8]==2) {  # 2018-12-10:
          $aud = $k[20];  # 2019-08-01: "DO" recall-vector for Speech()
          last;  # 2018-10-08: one engram is enough.
        }  # 2018-12-10: End of search for 818=DO;
      }  # 2018-10-08: end of test for person and number.
    }  # 2018-10-08: End of backwards search-loop.
    Speech();  # 2018-10-08: speak the word starting at the $aud time. 
  }  # 2018-12-10: end of test for 818=DO auxiliary verb.
}  # 2019-08-01: EnAuxVerb() returns to EnVerbPhrase()


5. Variables for EnAuxVerb Module with NLU

$aud -- in the Speech() module is an associative tag leading to the typically most recent engram of a word stored in the @ear array of the auditory memory channel.

$auxverb -- auxiliary verb such as 800=BE; 830=DO; or modal verb.

$prsn -- 1st, 2nd, 3rd person of verb-forms.

$snu -- subject-number as parameter for verb-selection.

$subjnum -- (subject number) for agreement in grammatical number between a subject and a predicate nominative noun.

$vault -- size of MindBoot() sequence in time-points.


6. Troubleshooting and Debugging for AI Mind Maintainers

6.1.a. Symptom: (Something goes wrong.)
6.1.b. Solution: (AI Mind Maintainer devises solution.)


7. Future Development

7.1. Using forms of "BE" for progressive present tense of verbs.

7.2. Using necessary forms for past and future verb-tenses.

7.3. Coding the use of modal verbs in thought and in conversation.

Roadmap to Artificial Intelligence


8. Resources

  • Artificial Intelligence in Ancient Latin

  • http://mind.sourceforge.net/auxverb.html

  • http://github.com/PriorArt/AGI/wiki/MindGrid


    9. AiTree of Mind-Modules for Natural Language Understanding

    See AI 101 AI 102 AI 103 year-long community college AI course curriculum.


    Paperback book on AI in ancient Latin

    Artificial Intelligence in Ancient Latin -- is available from Amazon in various countries:
    Australia - Canada - France - Germany - Italy - Japan - Netherlands - Singapore - Spain - United Kingdom - United States.
    https://redditfavorites.com/products/artificial-intelligence-in-ancient-latin
    Ada's Technical Books
    425 15th Avenue East
    Seattle, WA 98122
    USA Tel. 206-322-1058


    Website Counter


    >