A kripke-kleene semantics for logic programs*
✍ Scribed by Melvin Fitting
- Publisher
- Elsevier Science
- Year
- 1985
- Tongue
- English
- Weight
- 895 KB
- Volume
- 2
- Category
- Article
- ISSN
- 0743-1066
No coin nor oath required. For personal study only.
✦ Synopsis
We use a language L in which we have the propositional connectives A (and), V (or), and -i (not) as primitive. Alternatively we could take some as primitive and define others via the usual definitions, which work even in Kleene's three-valued logic. We also allow quantifiers V and 3, taking both as primitive. Quantifiers will not be used in the actual writing of programs, only in their analysis.
We systematically use statement for formula with no free variables. For a formula P, and a substitution 0, P6 is a closed instance of P if it is a statement. We sometimes write P{x) to indicate that x is the only free variable of P, and P{t) for the closed instance resulting from substituting t for x.
The idea behind Kleene's logic is simple. Say P is a statement with the informal meaning /(3) = 5, where / is a function we have a Turing machine to compute. Similarly say Q means g(4) = 7, where g is another Turing calculable function. By running the Turing machines we may determine the truth or falsity of P and Q, or we may never learn anything if the machines fail to halt. So, use a logic with truth values t (true), f (false), and u (undefined or undetermined) to mirror the situation.
In this logic, how should values be assigned to P A Q, say? Certainly in cases not involving u, truth values should behave classically. Now say P has value f but Q is u. Still Q " has" a truth value; we just don't know what it is. Since P isi, P A Q will be f no matter whether Q turns out to be t or f. Consequently P A Q is given the value f in this case. On the other hauid, say P has value t but Q is u. If we eventually discover that Q i&t, P A Q will turn out to have value t. But if we discover Q is f, P A Q will be f. Given no further information then, we must say the value of P A Q is u.
Then a table for the connective A is as follows:
📜 SIMILAR VOLUMES
## Abstract This paper deals with Kripke‐style semantics for many‐valued logics. We introduce various types of Kripke semantics, and we connect them with algebraic semantics. As for modal logics, we relate the axioms of logics extending MTL to properties of the Kripke frames in which they are valid
## Abstract This note contains a correct proof of the fact that the set of all first‐order formulas which are valid in all predicate Kripke frames for Hájek's many‐valued logic BL is not arithmetical. The result was claimed in [5], but the proof given there was incorrect. (© 2003 WILEY‐VCH Verlag G
Depth-®rst evaluation causes a gap between the result of the computation and the classical declarative semantics for logic programs. The paper presents a new semantics for logic programs closing that gap. Although not classical, this semantics, called biquantale semantics, is declarative, since it i
The stable model semantics for logic programs is extended from ground literals onto open literals by augmenting the program language with an infinite set of new constants. This, in turn, leads to a natural translation of logic programs into open default theories. @