sleyzerzon / soar

Automatically exported from code.google.com/p/soar
1 stars 0 forks source link

States that become LTI's can prevent chunk conditions from re-ordering #131

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

1. Make S1 an LTI (for e.g., smem --add {(<problem> ^is S1)})

2. Source the productions attached

3. Step 3 times

What is the expected output? What do you see instead?

It should produce the same chunk that would have been produced if S1 was not an 
LTI.  Instead, it says:

Error:  in production chunk-1*d2*opnochange*1,
        The LHS has no roots.

Unable to reorder this chunk:
   (state @S1 ^top-struct <t1> ^operator <o1>)
   (<o1> ^name real-operator)
  -->
   (<t1> ^operator <o2> +)
   (<o2> ^name faux-operator +)

This error is likely caused by the reasons outlined section 4 of the Soar
manual, subsection "revising the substructure of a previous result".

Check that the rules are not revising substructure of a result matched only
through the local state.

System halted.
Interrupt received.This Agent halted.
An agent halted during the run.

Original issue reported on code.google.com by maz...@gmail.com on 9 Jan 2013 at 9:57

Attachments: