-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
175 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,175 @@ | ||
T[{actions : <A1>}] -> C[A1] | ||
T[{actions : <A1, A2>}] -> C[A1] and C[A2] | ||
T[{actions : <A1, A2, A3>}] -> C[A1] C[A2] and C[A3] | ||
#T[{actions : <A1, A2, A3, A4>}] -> C[A1] C[A2] C[A3] and C[A4] | ||
|
||
C[{A}] -> VP[A] | ||
C[{A}] -> CALL VP[A] | ||
|
||
# take it tell the day of the week <---- | ||
|
||
CALL -> robot | please | robot please | could you | could you please | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Entities | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
NP[M] -> SMALL_OBJECT[M] | ||
NP[M] -> LOC[M] | ||
|
||
DET -> the | a | ||
|
||
LOC[{"id" : X}] -> ROOM[X] | FURNITURE[X] | ||
|
||
SMALL_OBJECT_SPEC[{ "special" : "it" }] -> it | ||
SMALL_OBJECT_SPEC[{ "type" : X }] -> DET SMALL_OBJECT[X] | ||
SMALL_OBJECT_SPEC[{ "type" : X, "loc" : Y }] -> DET SMALL_OBJECT[X] FROM_PP the LOC[Y] | ||
SMALL_OBJECT_SPEC[{ "cat" : C }] -> DET OBJ_CAT[C] | ||
SMALL_OBJECT_SPEC[{ "cat" : C, "loc" : Y }] -> DET OBJ_CAT[C] FROM_PP the LOC[Y] | ||
|
||
FROM_PP -> from | on | which is on | ||
AT_PP -> in | at | who is in | ||
|
||
ADJ_PERSON["waving"] -> waving | ||
ADJ_PERSON["calling"] -> calling | ||
|
||
LOC_DET[R] -> in the ROOM[R] | ||
|
||
TO_LOC[X] -> the LOC[X] | ||
TO_LOC[{P}] -> PERSON[P] | ||
TO_LOC[{"special" : "operator"}] -> me | ||
|
||
TO_LOC[{"id" : "entrance"}] -> entrance | ||
TO_LOC[{"id" : "exit"}] -> exit | ||
|
||
PERSON["type" : "person"] -> DET person | ||
PERSON["type" : "person", "adj" : A] -> DET ADJ_PERSON[A] person | ||
PERSON["type" : "person", "loc" : L] -> DET person LOC_DET[L] | ||
PERSON["type" : "person", "adj" : A, "loc" : L] -> DET ADJ_PERSON[A] person LOC_DET[L] | ||
PERSON["type" : "person", "id" : N] -> NAME[N] | ||
PERSON["type" : "person", "id" : N, "loc" : L] -> NAME[N] LOC_DET[L] | ||
PERSON["type" : "person", "loc" : L] -> NAME[N] NEAR_IN_ON the LOC[L] | ||
PERSON["special" : "it"] -> him | her | them | ||
|
||
NEAR_IN_ON -> near | in | on | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Exit | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action" : "exit"] -> exit the arena | leave the arena | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Follow | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action": "follow", "entity" : {X}] -> follow PERSON[X] | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Find | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action": A, "entity": X] -> V_FIND[A] OBJ_FIND[X] | ||
|
||
V_FIND["find"] -> find | look for | locate | ||
|
||
OBJ_FIND[X] -> SMALL_OBJECT_SPEC[X] | TO_LOC[X] | ||
OBJ_FIND[P] -> PERSON[P] | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Say | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action": "count", "cat" : C] -> V_SAY how many OBJ_CAT[C] there are | ||
VP["action": "count", "cat" : C] -> V_SAY how many GENDER[C] there are | ||
VP["action": "count", "cat" : C, "loc" : L] -> V_SAY how many OBJ_CAT[C] are at the LOC[L] | ||
VP["action": "count", "cat" : C, "loc" : L] -> V_SAY how many GENDER[C] are at the LOC[L] | ||
|
||
GENDER["women"] -> women | ||
GENDER["men"] -> men | ||
|
||
V_SAY -> tell | say | speak | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Grasping | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action": A, "entity": X] -> V_GRASP[A] SMALL_OBJECT_SPEC[X] | ||
|
||
V_GRASP["pick-up"] -> grab | grasp | pick up | take | get | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Placing | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action" : "bring", "to" : L] -> V_PLACE SMALL_OBJECT_SPEC[X] on the LOC[L] | ||
VP["action" : "bring", "to" : L] -> V_PLACE SMALL_OBJECT_SPEC[X] in the LOC[L] | ||
VP["action" : "bring", "to" : L] -> V_PLACE SMALL_OBJECT_SPEC[X] into the CONTAINER_SPEC[L] | ||
VP["action" : "bring", "to" : L] -> V_PLACE SMALL_OBJECT_SPEC[X] into the CONTAINER[L] at the LOC[L] | ||
V_PLACE -> put | place | ||
|
||
CONTAINER_SPEC[{"type" : X}] -> CONTAINER[X] | ||
CONTAINER_SPEC[{"type" : X, "loc" : L}] -> CONTAINER[X] at the LOC[L] | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Moving | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action": A, "entity": X] -> V_MOVE[A] NAV_LOC[X] | ||
|
||
NAV_LOC[X] -> TO_LOC[X] | ||
NAV_LOC[X] -> the ROOM[X] | ||
|
||
V_MOVE["navigate"] -> move to | go to | drive to | navigate to | come to | come back to | get into | reach | ||
|
||
VP["action": "navigate", "entity": X] -> V_GUIDE HIM_HER to TO_LOC[X] | ||
|
||
HIM_HER -> him | her | ||
|
||
V_GUIDE -> guide | take | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Bringing | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action" : "bring", "entity" : X, "to" : Y ] -> V_BRING SMALL_OBJECT_SPEC[X] ON_TO TO_LOC[Y] | ||
VP["action" : "bring", "entity" : X, "to" : {"special" : "operator"} ] -> V_BRING me SMALL_OBJECT_SPEC[X] | ||
|
||
V_BRING -> give | bring | hand | deliver | take | carry | transport | ||
|
||
ON_TO -> on | to | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Questions | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action": "answer-question"] -> answer a question | ||
VP["action": "answer-question"] -> answer the question | ||
VP["action": "answer-question"] -> answer his question | ||
VP["action": "answer-question"] -> answer her question | ||
|
||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
# Say | ||
# - - - - - - - - - - - - - - - - - - - - - - - - - | ||
|
||
VP["action": "say", "sentence": "ROBOT_NAME"] -> V_SAY your name | ||
VP["action": "say", "sentence": "TIME"] -> V_SAY the time | V_SAY what time it is | V_SAY what time is it | what time is it | ||
VP["action": "say", "sentence": "my team is tech united"] -> V_SAY the name of your team | ||
|
||
VP["action": "say", "sentence": "DAY_OF_MONTH"] -> V_SAY the day of the month | ||
VP["action": "say", "sentence": "DAY_OF_WEEK"] -> V_SAY the day of the week | ||
VP["action": "say", "sentence": "TODAY"] -> V_SAY what day is today | V_SAY me what day it is | V_SAY the date | ||
VP["action": "say", "sentence": "TOMORROW"] -> V_SAY what day is tomorrow | ||
|
||
VP["action": "say", "sentence": "JOKE"] -> V_SAY a joke | ||
VP[{"action": "say", "sentence": "DARK_SIDE"}] -> join the dark side | ||
|
||
V_SAY -> tell | say | speak | ||
|
||
ROOM[{id: "livingroom"}] -> living room | ||
NAME["me"] -> rein | ||
FURNITURE["couch"] -> couch | ||
SMALL_OBJECT["coke"] -> coke | ||
OBJ_CAT["cans"] -> cans | ||
|
||
CONTAINER["bowl"] -> bowl |