Linearisability on Datalog programs
Linear Datalog programs are programs whose clauses have at most one intensional atom in their bodies. We explore syntactic classes of Datalog programs (syntactically non-linear) which turn out to express no more than the queries expressed by linear Datalog programs. In particular, we investigate linearisability of (database queries corresponding to) piecewise linear Datalog programs and chain queries: (a) We prove that piecewise linear Datalog programs can always be transformed into linear Datalog programs, by virtue of a procedure which performs the transformation automatically. The procedure relies upon conventional logic program transformation techniques. (b) We identify a new class of linearisable chain queries, referred to as pseudo-regular, and prove their linearisability constructively, by generating, for any given pseudo-regular chain query, the Datalog program corresponding to it. (C) 2002 Published by Elsevier B.V.
linearisability datalog programs database queries program transformation program optimisation deductive databases