Proteus  Proteus Language File Examples


Base.PLF - Simple learning example


Proteus 5.3 Proteus-Language File
Copyright 2003, Artificial Ingenuity, LLC
All Rights Reserved

-------States--------
-------Modes---------
For-Mode
Fragment CUSTOM,1,-1, {x}, {}, {}
Response {},Task List,{},{}
Task {},Assignment,{Last Unhandled Input},{^Input{}}
Task {},Start Proc,{Teach Me},{}

For-Mode
Fragment CUSTOM,1000,0, {_last}, {}, {}
Response {},Task List,{},{}
Task {},Assignment,{Last Unhandled Input},{^Input{1}}
Task {},Start Proc,{New Pattern From Last},{}

For-Mode
Fragment CUSTOM,1000,0, {_new}, {}, {}
Response {},Task List,{},{}
Task {},Start Proc,{new pattern},{}

For-Mode
Fragment CUSTOM-Sub,1000,0, {_wrong }, {}, {}
Response {OK, changed to: ^Remain{}},Task List,{},{}
Task {^LastResp{}},Self Modify,{OUTTEXT},{^Remain{}}

For-Mode
Fragment CUSTOM-Sub,1000,0, {_or say }, {}, {}
Response {OK, I will remember that.},Task List,{},{}
Task {^Remain{}},Add Response,{},{}

For-Mode
Fragment CUSTOM-Sub,1000,0, {_or when }, {}, {}
Response {OK, I will remember that.},Task List,{},{}
Task {^Remain{}},Add Fragment,{5},{}

For-Mode
Fragment CUSTOM-Sub,1000,0, {_not when }, {}, {}
Response {OK, not when ^Remain{}},Task List,{},{}
Task {^Remain{}},Add Fragment,{-500},{}

For-Mode
Name-Object {Auto-LFOFPLHCKH}
Fragment CUSTOM,100,5000, {^Member{Things}}, {}, {}
Fragment CUSTOM,1000,500, {is}, {}, {}
Fragment CUSTOM,1000,500, {are}, {}, {}
Fragment CUSTOM,-1000,0, {what is}, {}, {}
Fragment CUSTOM,-1000,0, {what are}, {}, {}
Response {Oh, OK, I will remember that.},Task List,{},{}
Task {},Add To Collection,{^Member{Things}},{^Remain{}}

For-Mode
Name-Object {Auto-DTYCALMSNG}
Fragment CUSTOM,10,1000, {^Member{Things}}, {}, {}
Fragment Data-Match,-1000,0, {}, {Empty String}, {^MemberX{^Member{Things}}}
Response {^Member{Things} is ^MemberX{^Member{Things}}},Just Text,{},{}
Response {^Member{Things} are ^MemberX{^Member{Things}}},Just Text,{},{}

For-Mode
Name-Object {Auto-YFFRRANHDM}
Fragment CUSTOM,10,1000, {^Member{Things}}, {}, {}
Fragment CUSTOM,10,1000, {everything}, {}, {}
Fragment Data-Match,-1000,0, {}, {Empty String}, {^MemberX{^Member{Things}}}
Response {Everything I know about ^Member{Things} is that they are: ^Members{^Member{Things}}},Just Text,{},{}

For-Mode
Name-Object {Auto-XJFKBAOQDP}
Fragment CUSTOM-Sub,1000,0, { is a thing}, {}, {}
Fragment CUSTOM-Sub,1000,0, {a thing is }, {}, {}
Fragment CUSTOM-Sub,1000,0, { are things}, {}, {}
Response {Oh, OK. I will remember that.},Add To Collection,{Things},{^Remain{}}

For-Mode
Name-Object {Auto-TCFQDPNHDF}
Fragment CUSTOM-Sub,1000,0, {my name is }, {}, {}
Fragment CUSTOM-Sub,1000,0, { is my name}, {}, {}
Response {Hello ^Remain{}, I will remember your name.},Assignment,{UserName},{^Remain{}}

For-Mode
Name-Object {Auto-JIBJFSICVW}
Fragment CUSTOM,1000,0, {who am i}, {}, {}
Fragment CUSTOM,1000,0, {what is my name}, {}, {}
Response {I was told that your name is ^Fact{UserName}.},Just Text,{},{}

-----Procedures------
Procedure {new pattern}

Step {Start New},{What is the sentence pattern you want me to respond to?}
For-Step
Fragment CUSTOM,1,-1, {x}, {}, {}
Response {},Task List,{},{}
Task {},Assignment,{New Pattern},{^Input{}}
Task {},Goto Step,{Get Response},{}

For-Step
Fragment CUSTOM,1000,0, {_quit}, {}, {}
Response {OK, never mind.},Halt Proc,{},{}

Step {Get Response},{What should I say if someone tells me: "^Fact{New Pattern}"?}
For-Step
Fragment CUSTOM,1,-1, {x}, {}, {}
Response {OK, I will remember that!},Task List,{},{}
Task {^Fact{New Pattern}},Create AutoPattern,{10},{^Input{}}
Task {},Halt Proc,{},{}

For-Step
Fragment CUSTOM,1000,0, {_quit}, {}, {}
Response {OK, never mind.},Halt Proc,{},{}


Procedure {Teach Me}

Step {Will You},{I don't understand that. Would you please teach me what to say?}
For-Step
Fragment CUSTOM,1000,0, {yes}, {}, {}
Fragment CUSTOM,1000,0, {ok}, {}, {}
Fragment CUSTOM,1000,0, {sure}, {}, {}
Fragment CUSTOM,1000,0, {alright}, {}, {}
Response {},Goto Step,{Get Response},{}

For-Step
Fragment CUSTOM,1,-1, {x}, {}, {}
Response {OK, we can talk about something else then.},Halt Proc,{},{}

Step {Get Response},{What should I say if someone tells me: "^Fact{Last Unhandled Input}"?}
For-Step
Fragment CUSTOM,1,-1, {x}, {}, {}
Response {OK, I will remember that!},Task List,{},{}
Task {^Fact{Last Unhandled Input}},Create AutoPattern,{10},{^Input{}}
Task {},Halt Proc,{},{}

For-Step
Fragment CUSTOM,1000,0, {_quit}, {}, {}
Response {OK, never mind.},Halt Proc,{},{}


Procedure {New Pattern From Last}

Step {Get Response},{What should I say if someone tells me: "^Fact{Last Unhandled Input}"?}
For-Step
Fragment CUSTOM,1,-1, {x}, {}, {}
Response {OK, I will remember that!},Task List,{},{}
Task {^Fact{Last Unhandled Input}},Create AutoPattern,{10},{^Input{}}
Task {},Halt Proc,{},{}

For-Step
Fragment CUSTOM,1000,0, {_quit}, {}, {}
Response {OK, never mind.},Halt Proc,{},{}


-------Facts---------
Fact {Last Unhandled Input} = {huh}
Fact {New Pattern} = {N/A}
Fact {Empty String} = {}
Fact {UserName} = {Unknown}
-----Collections-----
Start-Collection {Things}
Dogs
Cats
Monkeys
Spam
Humans
Computers
End-Collection


Not a PLF, but an actual conversation log showing how Base.PLF can be used to extend knowledge:

[user]: Good Books are things
[Proteus]: Oh, OK. I will remember that.
[user]: Narnia Chronicles are good books
[Proteus]: Oh, OK, I will remember that.
[user]: The Foundation Trilogy are good books
[Proteus]: Oh, OK, I will remember that.
[user]: The Dune Series are good books
[Proteus]: Oh, OK, I will remember that.
[user]: do you know any good books?
[Proteus]: Good Books are The Foundation Trilogy
[user]: do you know any good books?
[Proteus]: Good Books are The Dune Series
[user]: tell me everything you know about good books
[Proteus]: Everything I know about Good Books is that they are: Narnia Chronicles, The Foundation Trilogy, The Dune Series
[user]: what are all the good books you know?
[Proteus]: Good Books are The Foundation Trilogy
[user]: _not when all the good books
[Proteus]: OK, not when all the good books
[user]: what are all the good books you know?
[Proteus]: I don't understand that. Would you please teach me what to say?
[user]: ok
[Proteus]: What should I say if someone tells me: "what are all the good books you know?"?
[user]: ^Members{Good Books}.
[Proteus]: OK, I will remember that!
[user]: what are all the good books you know?
[Proteus]: Narnia Chronicles, The Foundation Trilogy, The Dune Series.
[user]: what is a good book?
[Proteus]: Narnia Chronicles, The Foundation Trilogy, The Dune Series.
[user]: _not when what is a good book
[Proteus]: OK, not when what is a good book
[user]: what is a good book?
[Proteus]: I don't understand that. Would you please teach me what to say?
[user]: yes
[Proteus]: What should I say if someone tells me: "what is a good book?"?
[user]: ^MemberX{Good Books} is a good book.
[Proteus]: OK, I will remember that!
[user]: what is a good book?
[Proteus]: The Foundation Trilogy is a good book.
[user]: do you know any other good books?
[Proteus]: Narnia Chronicles, The Foundation Trilogy, The Dune Series.
[user]: _not when any other good books
[Proteus]: OK, not when any other good books
[user]: do you know any other good books?
[Proteus]: Good Books are Narnia Chronicles
[user]: what is a good book?
[Proteus]: The Foundation Trilogy is a good book.
[user]: do you know any other good books?
[Proteus]: Good Books is The Foundation Trilogy
[user]: _not when good books
[Proteus]: OK, not when good books
[user]: do you know any other good books?
[Proteus]: Narnia Chronicles is a good book.
[user]: Any other good books?
[Proteus]: The Foundation Trilogy is a good book.
[user]: is that the only good book you know?
[Proteus]: Narnia Chronicles, The Foundation Trilogy, The Dune Series.
[user]: what else is a good book?
[Proteus]: The Foundation Trilogy is a good book.


Taxonomy.PLF - Taxonomic structure using data collections


Proteus 5.3 Proteus-Language File
Copyright 2003, Artificial Ingenuity, LLC
All Rights Reserved

-------States--------
-------Modes---------
For-Mode
Fragment CUSTOM,1,-1, {}, {}, {}
Response {What? I don't understand.},Just Text,{},{}

For-Mode
Fragment CUSTOM-Sub,1000,0, { are things}, {}, {}
Response {OK, ^Remain{} are things. I will remember that.},Task List,{},{}
Task {},Add To Collection,{Things},{^Remain{}}
Task {},Add To Collection,{^Remain{}-MemberOf},{Things}

For-Mode
Fragment CUSTOM-Sub,1000,0, { are ^Member{Things}}, {}, {}
Fragment CUSTOM-Sub,1000,0, { is a ^Member{Things}}, {}, {}
Response {Right, ^Remain{} are ^Member{Things}. I will remember that.},Task List,{},{}
Task {},Assignment,{ParentThing},{^Member{Things}}
Task {},Assignment,{NewThing},{^Remain{}}
Task {},Add To Collection,{^Fact{ParentThing}-Members},{^Fact{NewThing}}
Task {},Add To Collection,{^Fact{NewThing}-MemberOf},{^Fact{ParentThing}}
Task {},Add To Collection,{Things},{^Fact{NewThing}}

For-Mode
Fragment CUSTOM-Sub,1000,0, {^Member{Things} are }, {}, {}
Response {Oh, OK. I will remember that fact about ^Member{Things}.},Task List,{},{}
Task {},Assignment,{ParentThing},{^Member{Things}}
Task {},Add To Collection,{^Fact{ParentThing}-Facts},{^Remain{}}

For-Mode
Fragment CUSTOM,1000,0, {tell me about ^Member{Things}}, {}, {}
Response {},Task List,{},{}
Task {},Assignment,{CurrentThing},{^Member{Things}}
Task {^Fact{CurrentThing} are ^MemberX{^Fact{CurrentThing}-Facts}},Just Text,{},{}
Task {^Fact{CurrentThing} are ^MemberX{^Fact{CurrentThing}-MemberOf}},Just Text,{},{}
Task {^MemberX{^Fact{CurrentThing}-Members} are ^Fact{CurrentThing}},Just Text,{},{}

-----Procedures------
-------Facts---------
Fact {ParentThing} = {}
Fact {NewThing} = {}
Fact {CurrentThing} = {}
-----Collections-----
Start-Collection {Things}
End-Collection


Learn.PLF - Extremely simple self-extending learning


Proteus 5.3 Proteus-Language File
Copyright 2003, Artificial Ingenuity, LLC
All Rights Reserved

-------States--------
-------Modes---------
For-Mode
Fragment CUSTOM,1,-1, {x}, {}, {}
Response {That is a new one, please say it again.},Task List,{},{}
Task {^Input{}},Create AutoPattern,{5},{I recognize what you said, but don't know what to say.}

For-Mode
Fragment CUSTOM-Sub,1000,0, {wrong: }, {}, {}
Response {OK, changed to: ^Remain{}},Task List,{},{}
Task {^LastResp{}},Self Modify,{OUTTEXT},{^Remain{}}

For-Mode
Fragment CUSTOM-Sub,1000,0, {or say: }, {}, {}
Response {OK, I will remember that.},Task List,{},{}
Task {^Remain{}},Add Response,{},{}

For-Mode
Fragment CUSTOM-Sub,1000,0, {or when: }, {}, {}
Response {OK, I will remember that.},Task List,{},{}
Task {^Remain{}},Add Fragment,{5},{}

For-Mode
Fragment CUSTOM-Sub,1000,0, {not when: }, {}, {}
Response {OK, not when ^Remain{}},Task List,{},{}
Task {^Remain{}},Add Fragment,{-500},{}

-----Procedures------
-------Facts---------
-----Collections-----


VoicePlay.PLF - Silly example of changing voice output characteristics with SAPI 5.1


Proteus 5.3 Proteus-Language File
Copyright 2003, Artificial Ingenuity, LLC
All Rights Reserved

-------States--------
-------Modes---------
For-Mode
Fragment CUSTOM,1,-1, {x}, {}, {}
Response {That is a new one, please say it again.},Task List,{},{}
Task {^Input{}},Create AutoPattern,{5},{I recognize what you said, but don't know what to say.}

For-Mode
Fragment CUSTOM-Sub,1000,0, {wrong: }, {}, {}
Response {OK, changed to: ^Remain{}},Task List,{},{}
Task {^LastResp{}},Self Modify,{OUTTEXT},{^Remain{}}

For-Mode
Fragment CUSTOM-Sub,1000,0, {or say: }, {}, {}
Response {OK, I will remember that.},Task List,{},{}
Task {^Remain{}},Add Response,{},{}

For-Mode
Fragment CUSTOM-Sub,1000,0, {or when: }, {}, {}
Response {OK, I will remember that.},Task List,{},{}
Task {^Remain{}},Add Fragment,{5},{}

For-Mode
Fragment CUSTOM-Sub,1000,0, {not when: }, {}, {}
Response {OK, not when ^Remain{}},Task List,{},{}
Task {^Remain{}},Add Fragment,{-500},{}

-----Procedures------
-------Facts---------
-----Collections-----


DataCols.PLF - More complex example of structuring data in Data Collections


Proteus 5.3 Proteus-Language File
Copyright 2003, Artificial Ingenuity, LLC
All Rights Reserved

-------States--------
-------Modes---------
For-Mode
Fragment CUSTOM,1,-1, {x}, {}, {}
Response {I have NO Idea what you mean},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-10, {}, {Null}, {^MemberX{^Member{AllWords}}}
Response {What about ^MemberX{^Member{AllWords}}?},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-100, {}, {Null}, {^MemberX{^Member{AllWords}~Related}}
Response {^Member{AllWords} is related to ^MemberX{^Member{AllWords}~Related}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~CapableOf}}
Fragment CUSTOM,100,0, {what can ^Member{AllWords} do}, {}, {}
Fragment CUSTOM,100,0, {what can a ^Member{AllWords} do}, {}, {}
Fragment CUSTOM,100,0, {what can an ^Member{AllWords} do}, {}, {}
Fragment CUSTOM,100,0, {what is a ^Member{AllWords} for}, {}, {}
Fragment CUSTOM,100,0, {what is an ^Member{AllWords} for}, {}, {}
Response {^Member{AllWords} are for ^MemberX{^Member{AllWords}~CapableOf}},Just Text,{},{}
Response {^Member{AllWords} can ^MemberX{^Member{AllWords}~CapableOf}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~CapableOfState}}
Fragment CUSTOM,100,0, {what can ^Member{AllWords} do}, {}, {}
Fragment CUSTOM,100,0, {what can a ^Member{AllWords} do}, {}, {}
Fragment CUSTOM,100,0, {what can an ^Member{AllWords} do}, {}, {}
Fragment CUSTOM,100,0, {what is a ^Member{AllWords} for}, {}, {}
Fragment CUSTOM,100,0, {what is an ^Member{AllWords} for}, {}, {}
Response {^Member{AllWords} are for ^MemberX{^Member{AllWords}~CapableOfState}},Just Text,{},{}
Response {^Member{AllWords} can ^MemberX{^Member{AllWords}~CapableOfState}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~DesiresEvent}}
Fragment CUSTOM,100,0, {what do ^Member{AllWords} want}, {}, {}
Fragment CUSTOM,100,0, {what does ^Member{AllWords} want}, {}, {}
Fragment CUSTOM,100,0, {what would ^Member{AllWords} want}, {}, {}
Fragment CUSTOM,100,0, {what would a ^Member{AllWords} want}, {}, {}
Fragment CUSTOM,100,0, {what would an ^Member{AllWords} want}, {}, {}
Response {^Member{AllWords} wants ^MemberX{^Member{AllWords}~DesiresEvent}},Just Text,{},{}
Response {^Member{AllWords} desires ^MemberX{^Member{AllWords}~DesiresEvent}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~DesiresNotEvent}}
Fragment CUSTOM,100,0, {what don't ^Member{AllWords} want}, {}, {}
Fragment CUSTOM,100,0, {what dont ^Member{AllWords} want}, {}, {}
Fragment CUSTOM,100,0, {what wouldn't ^Member{AllWords} want}, {}, {}
Fragment CUSTOM,100,0, {what wouldnt ^Member{AllWords} want}, {}, {}
Fragment CUSTOM,100,0, {what would a ^Member{AllWords} not want}, {}, {}
Response {^Member{AllWords} doesn't want ^MemberX{^Member{AllWords}~DesiresNotEvent}},Just Text,{},{}
Response {^Member{AllWords} hates ^MemberX{^Member{AllWords}~DesiresNotEvent}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~Do}}
Fragment CUSTOM,100,0, {what does ^Member{AllWords} do}, {}, {}
Fragment CUSTOM,100,0, {what does a ^Member{AllWords} do}, {}, {}
Fragment CUSTOM,100,0, {what does an ^Member{AllWords} do}, {}, {}
Fragment CUSTOM,110,0, {what is a ^Member{AllWords} for}, {}, {}
Fragment CUSTOM,110,0, {what is an ^Member{AllWords} for}, {}, {}
Response {^Member{AllWords} are for ^MemberX{^Member{AllWords}~Do}},Just Text,{},{}
Response {^Member{AllWords} do ^MemberX{^Member{AllWords}~Do}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~EffectOf}}
Fragment CUSTOM,100,0, {what happens when ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what happens when you^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what happens if ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what happens if you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what happens when you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,110,0, {what would ^Member{AllWords} for}, {}, {}
Fragment CUSTOM,110,0, {what would a ^Member{AllWords} for}, {}, {}
Response {^Member{AllWords} causes ^MemberX{^Member{AllWords}~EffectOf}},Just Text,{},{}
Response {^Member{AllWords} leads to ^MemberX{^Member{AllWords}~EffectOf}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~EffectOfIsState}}
Fragment CUSTOM,100,0, {what happens when ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what happens when you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what happens if ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what happens if you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what happens when you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,110,0, {what would ^Member{AllWords}}, {}, {}
Fragment CUSTOM,110,0, {what would a ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} causes ^MemberX{^Member{AllWords}~EffectOfIsState}},Just Text,{},{}
Response {^Member{AllWords} leads to ^MemberX{^Member{AllWords}~EffectOfIsState}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~EventForGoalEvent}}
Fragment CUSTOM,100,0, {how do you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {how could you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what do you need to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {how can you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {how do I ^Member{AllWords}}, {}, {}
Fragment CUSTOM,110,0, {what should be done to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,110,0, {how to ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} is attained by ^MemberX{^Member{AllWords}~EventForGoalEvent}},Just Text,{},{}
Response {To ^Member{AllWords} you need to ^MemberX{^Member{AllWords}~EventForGoalEvent}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~EventRequiresObject}}
Fragment CUSTOM,100,0, {how do you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {how could you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what do you need to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {how can you ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {how do I ^Member{AllWords}}, {}, {}
Fragment CUSTOM,110,0, {what should be done to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,110,0, {how to ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} requires ^MemberX{^Member{AllWords}~EventRequiresObject}},Just Text,{},{}
Response {To ^Member{AllWords} you need ^MemberX{^Member{AllWords}~EventRequiresObject}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~IsA}}
Fragment CUSTOM,100,0, {what is ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is a ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is an ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what do you call a ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what do you call ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} is a ^MemberX{^Member{AllWords}~IsA}},Just Text,{},{}
Response {^Member{AllWords} are ^MemberX{^Member{AllWords}~IsA}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~FirstSubeventOf}}
Fragment CUSTOM,100,0, {what is the first step to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {need to do first to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {where do you start to ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} requires the first step of ^MemberX{^Member{AllWords}~FirstSubeventOf}},Just Text,{},{}
Response {To ^Member{AllWords} you need to ^MemberX{^Member{AllWords}~FirstSubeventOf}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~LastSubeventOf}}
Fragment CUSTOM,100,0, {what is the last step to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {need to do last to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is the last thing you do to ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} requires the last step of ^MemberX{^Member{AllWords}~LastSubeventOf}},Just Text,{},{}
Response {To ^Member{AllWords} you need to finish by ^MemberX{^Member{AllWords}~LastSubeventOf}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~LocationOf}}
Fragment CUSTOM,100,0, {where is ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {where is a ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {where is an ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {where would you find ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {where would you find a ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {where would you find an ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} are located ^MemberX{^Member{AllWords}~LocationOf}},Just Text,{},{}
Response {You would find ^Member{AllWords} in ^MemberX{^Member{AllWords}~LocationOf}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~MadeOf}}
Fragment CUSTOM,100,0, {what is ^Member{AllWords} made of}, {}, {}
Fragment CUSTOM,100,0, {what is a ^Member{AllWords} made of}, {}, {}
Fragment CUSTOM,100,0, {what is an ^Member{AllWords} made of}, {}, {}
Fragment CUSTOM,100,0, {^Member{AllWords} is made of what}, {}, {}
Fragment CUSTOM,100,0, {how do you make ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} is made of ^MemberX{^Member{AllWords}~MadeOf}},Just Text,{},{}
Response {You would make ^Member{AllWords} from ^MemberX{^Member{AllWords}~MadeOf}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~OftenNear}}
Fragment CUSTOM,100,0, {what is close to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is near to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is ^Member{AllWords} near}, {}, {}
Fragment CUSTOM,100,0, {what are ^Member{AllWords} near}, {}, {}
Fragment CUSTOM,100,0, {what ^Member{AllWords} is near}, {}, {}
Fragment CUSTOM,100,0, {close to ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} is often near ^MemberX{^Member{AllWords}~OftenNear}},Just Text,{},{}
Response {You would find ^Member{AllWords} near ^MemberX{^Member{AllWords}~OftenNear}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~PartOf}}
Fragment CUSTOM,100,0, {what is a part of ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is a part of a ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is a part of an ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is in ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is in a ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is in an ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {^Member{AllWords} is made of what}, {}, {}
Fragment CUSTOM,100,0, {how do you make ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} has parts like ^MemberX{^Member{AllWords}~PartOf}},Just Text,{},{}
Response {Part of a ^Member{AllWords} is ^MemberX{^Member{AllWords}~PartOf}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~PropertyOf}}
Fragment CUSTOM,100,0, {what is a property of ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is ^Member{AllWords} like}, {}, {}
Fragment CUSTOM,100,0, {how is ^Member{AllWords} like}, {}, {}
Fragment CUSTOM,100,0, {^Member{AllWords} is like}, {}, {}
Response {^Member{AllWords} is ^MemberX{^Member{AllWords}~PropertyOf}},Just Text,{},{}
Response {^Member{AllWords} is known to be ^MemberX{^Member{AllWords}~PropertyOf}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~SubeventOf}}
Fragment CUSTOM,100,0, {what is a step to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {need to do to ^Member{AllWords}}, {}, {}
Fragment CUSTOM,100,0, {what is one of the things you need do to ^Member{AllWords}}, {}, {}
Response {^Member{AllWords} requires that you ^MemberX{^Member{AllWords}~SubeventOf}},Just Text,{},{}
Response {To ^Member{AllWords} you need to ^MemberX{^Member{AllWords}~SubeventOf}},Just Text,{},{}

For-Mode
Fragment Data-Match,-500,-500, {}, {Null}, {^MemberX{^Member{AllWords}~UsedFor}}
Fragment CUSTOM,100,0, {what is ^Member{AllWords} used for}, {}, {}
Fragment CUSTOM,100,0, {what is a ^Member{AllWords} used for}, {}, {}
Fragment CUSTOM,100,0, {what is an ^Member{AllWords} used for}, {}, {}
Fragment CUSTOM,100,0, {what is ^Member{AllWords} for}, {}, {}
Fragment CUSTOM,100,0, {what is a ^Member{AllWords} for}, {}, {}
Fragment CUSTOM,100,0, {what is an ^Member{AllWords} for}, {}, {}
Response {^Member{AllWords} are used for ^MemberX{^Member{AllWords}~UsedFor}},Just Text,{},{}
Response {To ^MemberX{^Member{AllWords}~UsedFor} you use ^Member{AllWords}},Just Text,{},{}

-----Procedures------
-------Facts---------
Fact {Null} = {}
-----Collections-----
Start-Collection {AllWords}
abacus
animal
elk
accident
chop firewood
advance into battle
be good parent
comfort friend
design software
airplane
throw party
anemone
applesause
bedcovers
car
alcohol
cook dinner
accordion
End-Collection

Start-Collection {abacus~CapableOf}
add series of number
End-Collection

Start-Collection {animal~CapableOfState}
move itself about
End-Collection

Start-Collection {animal~DesiresEvent}
be free
End-Collection

Start-Collection {elk~DesiresNotEvent}
be shot
End-Collection

Start-Collection {accident~Do}
mean unintentional
End-Collection

Start-Collection {chop firewood~EffectOf}
you get blister on your hand
End-Collection

Start-Collection {advance into battle~EffectOfIsState}
fear
End-Collection

Start-Collection {be good parent~EventForGoalEvent}
love your child
End-Collection

Start-Collection {comfort friend~EventRequiresObject}
compassion
End-Collection

Start-Collection {design software~FirstSubeventOf}
determine problem to be solve
End-Collection

Start-Collection {airplane~IsA}
vehicle
End-Collection

Start-Collection {throw party~LastSubeventOf}
clean up mess
End-Collection

Start-Collection {anemone~LocationOf}
in ocean
End-Collection

Start-Collection {applesause~MadeOf}
apple
End-Collection

Start-Collection {bedcovers~OftenNear}
bed
End-Collection

Start-Collection {car~PartOf}
seat belt
End-Collection

Start-Collection {alcohol~PropertyOf}
intoxicating
End-Collection

Start-Collection {cook dinner~SubeventOf}
peel vegetable
End-Collection

Start-Collection {accordion~UsedFor}
annoy people
End-Collection



View Online Proteus Documentation

Return to Proteus Research

Return to Research


Home


Contact info@artificialingenuity.com
Copyright © 2005 Artificial Ingenuity, LLC
Last modified: June 11, 2005
Initial design by Webinizer, LLC