This should reduce generation time somewhat. It occurred to me that there's actually a very simple way to index the generation chart: just use the semantic index or the category or even a tuple of the root node. For atomic disjunction and variables, just dump into a variable slot that we always have to look up.
Note that substitution would have to be changed so that items with open substitution sites go back at the end of the agenda instead of on the chart.
Also note that substitution sites with disjunctive or variable indices would just have to look at all chart items.
This should reduce generation time somewhat. It occurred to me that there's actually a very simple way to index the generation chart: just use the semantic index or the category or even a tuple of the root node. For atomic disjunction and variables, just dump into a variable slot that we always have to look up.
Note that substitution would have to be changed so that items with open substitution sites go back at the end of the agenda instead of on the chart.
Also note that substitution sites with disjunctive or variable indices would just have to look at all chart items.