diff options
Diffstat (limited to 'modeling/prod_procedure.py')
-rw-r--r-- | modeling/prod_procedure.py | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/modeling/prod_procedure.py b/modeling/prod_procedure.py new file mode 100644 index 0000000..9b1cbaf --- /dev/null +++ b/modeling/prod_procedure.py @@ -0,0 +1,111 @@ +#!/usr/bin/env python3 + + +def procedures(Model): + prods = [] + + proc_start = Model.productionstring( + name="proc_start", + string=""" + =g> + isa math_goal + proc =proc + op None + nextop None + ?retrieval> + state free + ==> + +retrieval> + isa procedure + proc =proc + + """, + ) + prods.append(proc_start) + + proc_start_task1 = Model.productionstring( + name="proc_start_task1", + string=""" + =g> + isa math_goal + proc =proc + op None + nextop None + =retrieval> + isa procedure + proc =proc + result1 None + op1 =op + arg1_1 =arg1 + arg1_2 =arg2 + ==> + +g> + isa math_goal + proc =proc + task 1 + op =op + arg1 =arg1 + arg2 =arg2 + """, + ) + prods.append(proc_start_task1) + + proc_harvest_task1 = Model.productionstring( + name="proc_harvest_task1", + string=""" + =g> + isa math_goal + proc =proc + task 1 + op done + nextop None + =imaginal> + isa math_op + ?retrieval> + state free + ==> + +retrieval> + isa procedure + proc =proc + """, + ) + + proc_harvest_task1_done = Model.productionstring( + name="proc_harvest_task1_done", + string=""" + =g> + isa math_goal + proc =proc + task 1 + op done + nextop None + =imaginal> + isa math_op + result =result1 + =retrieval> + isa procedure + proc =proc + op1 =op1 + arg1_1 =arg1_1 + arg1_2 =arg1_2 + op2 =op2 + arg2_1 =arg2_1 + arg2_2 =arg2_2 + result2 =result2 + ==> + +g> + isa math_goal + proc =proc + +imaginal> + isa procedure + proc =proc + op1 =op1 + arg1_1 =arg1_1 + arg1_2 =arg1_2 + result1 =result1 + op2 =op2 + arg2_1 =arg2_1 + arg2_2 =arg2_2 + result2 =result2 + """, + ) |