Minimal Objectification and Maximal Unnesting in PSOA RuleML

May 23, 2016 at 9:22:45 AM
New CS Department,
Engineering Dr,
11794 Stony Brook, NY
From Jul 8, 2016, 10:30 AM
To Jul 8, 2016, 11:00 AM
A paper by Gen Zou and Harold Boley University of New Brunswick
Abstract. Positional-Slotted, Object-Applicative (PSOA) RuleML integrates the relational and object-centered paradigms by permitting the application of a predicate (acting as a relation) to be without or with an Object IDentifier (OID) – typed by the predicate (acting as a class) – and the predicate’s arguments to be positional, slotted, or combined.
Two connected modifications of PSOA RuleML are proposed, where (1) a model-theoretic semantics, realized transformationally, directly handles atoms (i.e., predicate applications) without OIDs (e.g., relationships, as in Prolog) and (2) a transformational semantics handles nested atomic formulas (e.g., nested frames, as in Flora-2/F-logic). For (1), the model theory is extended to atoms with optional OIDs, the transformation is developed from static to dynamic objectification, and the correctness of the realization is proved. Objectification creates an OID for each oidless atom to allow the interchangeable use of oidful and oidless atoms, e.g. retrieving oidless facts with oidful queries. The earlier static transformation generated OIDs for each oidless atom, causing overhead for an atom whose predicate in the asserted clauses is used only as a Prolog-like relation (e.g., does not occur with an OID or slots). For such atoms, the novel dynamic transformation avoids explicit OID generation, e.g. allowing efficient query answering directly from Prolog or relational databases.
For (2), the unnesting transformation is defined to decompose nested atomic formulas into equivalent conjunctions. Unnesting recursively extracts oidful atoms from an atomic formula, e.g. another atom, leaving behind their OIDs in the “trimmed” version. (1) and (2) are connected because unnesting requires oidful atoms; objectification is minimal by performing as little as possible statically; and unnesting is maximal by extracting atoms not only from other atoms but also from expressions.