Compilation and evaluation of linear mutual recursions

Abstract A linear mutual recursion is a recursion that consists of a set of rules, each of which has at most one predicate in its body that is mutually recursive with its head predicate. This paper studies techniques for compilation and efficient evaluation of linear mutual recursions. It demonstrates that a large class of linear mutual recursions can be compiled to one or a set of linear recursions or pseudo-linear recursions and be evaluated efficiently using the well-studied linear recursive query processing techniques and/or their variations. The benefits and limitations of such a compilation and evaluation technique are also discussed in the paper.