EnAuxVerb Module of the

First Working Artificial General Intelligence

ghost.pl for webservers -- MindForth for robots


1. Diagram of EnAuxVerb Mind-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

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 AI mind-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 ghost294.pl First Working AGI 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[14];  # 2018-09-30: "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[14];  # 2018-10-08: "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[14];  # 2018-10-08: "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[14];  # 2018-10-08: "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[14];  # 2018-10-08: "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[14];  # 2018-10-08: "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.
}  # 2016jun17: EnAuxVerb() returns to EnVerbPhrase()


5. Variables for First Working Artificial General Intelligence

$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 Robotic Psychosurgery

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


7. Future Development

7.1. Using vorms 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.


8. Resources

Please see

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


9. AiTree of First Working AGI Mind-Modules


Return to top; or to
http://en.wikipedia.org/wiki/Natural_language_understanding -- solved.
http://old.reddit.com/r/ControlProblem -- NOT SOLVED.
javascript subreddit for AI Mind discussion;
Forth subreddit for MindForth discussion;
Perl subreddit for ghost.pl AI Mind Maintainers.
If you have any questions about the First Working AGI, please Join the Discussion.