The ρLog calculus
Description
Description
The ρLog calculus performs SLDNF-resolution with leftmost literal selection: every rule is logically equivalent with the clause
where is a fresh term variable and we can use resolution with respect to this equivalent clauses. The main difference from resolution in first-order logic is that, instead of using the auxiliary function to compute a most general unifier of two terms, we use the function , which computes the finitely many matchers between a term and a ground term
Inference rules
The calculus has inference rules for the judgment with intended reading "query is reducible to if substitution σ is performed."
We write
-
, or just
,
whenever we succeed to infer a sequence of judgments
, and
is the restriction of substitution
to
- whenever we finitely fail to infer that holds.
As usual, the inference rules with respect to a program
have the form
with intended reading
" holds iff
and ... and
hold."
They are:
The proper interpretation of the other composite strategies and predefined parametric strategies is guaranteed by assuming that contains defining rules for them. For example, the rules for the strategy combinators of ρLog are:
The list of answers computed by ρLog for a query is there is an inference derivation