The current stratification algorithms are very inefficient when dealing with large numbers of rules.
The global stratifier attempts to assign rules to strata like this:
a) Each rule (head) should be in a stratum at least as high as each of its positive literals
b) Each rule (head) should be in a stratum at least one higher than each of its negated literals
However, doing this by repeated passes through the rule set is slow and about as efficient as a bubble sort.
A more efficient approach is required that can process 10's of thousands of rules sub-second.