Fixed Point Theorems in Logic Programming Mohamed A. Khamsi1 and Driss Misane2 1
Department of Mathematical Sciences,
University of Texas at El Paso, El Paso, TX 79968. 2 Departement
de Mathematiques,
Universite Mohamed V, Faculte des Sciences, Rabat, Morocco. email:1
[email protected] URL:1 http://www.mdrkhamsi.com
1
Introduction
Very often scientific branches which were thought to be completely disparate are suddenly seen to be related. This is the case for example with mathematics of which the level of sophistication applied to various sciences has changed drastically in recent years. Fixed point theory furnishes good example of a central concept with multitudes of different uses. It has always been a major theoretical tool in fields as widely apart as differential equations, topology, economics, game theory, dynamical systems (and chaos), optimal control, functional analysis, logic programming and artificial intelligence. Moreover, more or less recently, the usefulness of the concept for applications increased enormously by the development of accurate and efficient techniques for computing fixed points, making fixed point methods a major weapon in the arsenal of the applied mathematician.
2
Elementary fixed point theorems
The theory of fixed points is concerned with the conditions which guarantee that a map F : X → X of a set X into itself admits one or more fixed points, that is, points x ∈ X for which F (x) = x. The set of fixed points of F will be denoted F ix(F ). In the sequel, we will discuss two majors fixed point theorems which are based on a notion of completeness. Although the spaces involved are of different nature, there is a similarity between the two theorems.
2.1
Knaster-Tarski theorem [8]
Let (P, ≤) be a partially ordered set and M ⊂ P a non-empty subset. Recall that an upper (lower) bound for M is an element p ∈ P with m ≤ p (p ≤ m) for each m ∈ M ; the leastupper (greatest-lower) bound of M will be denoted sup M (resp. inf M ). Of course there 1
is, in general, no reason for inf M and sup M to exist. (P, ≤) will be called complete if for every subset M ⊂ P , inf M and sup M do exist. Recall that M ⊂ P is said to be linearly ordered if for every m1 , m2 ∈ M we have m1 ≤ m2 or m2 ≤ m1 . A linearly ordered subset of P is called a chain. A map F : P → P is monotone (also called isotone or increasing) if F (x) ≤ F (y) whenever x ≤ y. Theorem of Knaster-Tarski Let (P, ≤) be a complete ordered set and F : P → P monotone. Then F ix(F ) is not empty, that is F has a fixed point. Moreover, F ix(F ) is a complete ordered subset of P . In particular, it has the least and greatest elements. Note that one classical proof is based on a transfinite iteration of F . Indeed, denote m to be the least element of P . Clearly, we have m ≤ F (m). Since F is monotone, we will get F n (m) ≤ F n+1 (m) for every n = 1, 2, .... Set xn = F n (m). Since P is complete then xω = supn xn does exist. There is no reason for xω to be a fixed point. Therefore, we should continue the process, that is if (xα )α β. A decomposition {Litα } of Π satisfying the above conditions is called a stratification of Π. Theorem. Let Π be a stratified extended disjunctive logic program. Then Π has an answer set. Idea of the proof. Let Litα denote the stratas of Π. Define the generalized distance D : 2Lit × 2Lit → V as follows: (1) if A = B, then d(A, B) = 0; (2) if A 6= B, then d(A, B) = 2−α , where α is the smallest ordinal for which A ∪ Litα 6= B ∪ Litα . Consider the GL-operator T (X) = α(X). Then T satisfies the assumptions of Banach contraction principle. Therefore, T has a fixed point which happens to be an answer set to the program Π. For more on this theorem, the reader may consult [10]. Remark. Let us point out that the above ideas go beyond the class of stratified programs. For example, Fitting provides an example when metric fixed point theorems proves the existence of a stable set for a non-stratified program. Namely, he considers a program that describes wining positions in a positional game, in which players make moves in turn and there are no draws. If a position is winning for one of the players, then no further moves are possible. This program consists of the rules and the facts. Rules are of the following type: win(X) ← move(X, Y ), not win(Y ), and the facts (of the type move(X, Y )) describe possible moves. Predicate win(X) means that X is a winning position, i.e., if a player is in a position X, then there exists a strategy that enables him to win (no matter what the actions of the opposite player are). The (informal) meaning of the above rule is as follows: if a player is in a position X, and he can move into another position Y that is not winning (i.e., losing) for the opposite player, then he wins. If he cannot make such a move, this means that wherever he moves to, the resulting position is winning for the second player. So, if no such move exists, then X is a losing position for X. Let’s modify this example into an example where a metric fixed point theorem helps to find a stable model for a non-stratified disjunctive logic program. We will consider the 12
same game, but this time, we will assume that the players are still training (it is not yet a championship). So, if a person is about to win, then instead of going all the way to his victory, he can stop the game and teach another player (i.e., explain how he could win). A program that describes this situations contains the same facts move(X, Y ), but slightly different rules: can win(X) ← move(X, Y ), not can win(Y ) win(X) ∨ teach(X) ← can win(X). Rules of the first type describe when a player can win. Rules of the second type tell that if a player can win, then he will either win, or teach. This program is non-stratified. However, for this program, the mapping S → α(ΠS ) is a contraction and therefore, the fixed point theorem for multi-valued contractions proves that this mapping has a fixed point (i.e., proves the existence of a stable model of Π).
References [1] C.R. Baral, V.S. Subrahmanian,“Stable and Extension Class Theory for Logic Programs and Default Logics”, Journal of Automated Reasoning, 8(1992), 345-366. [2] F. Fages,“Consistency of Clark’s completion and existence of stable models”, Journal of Methods of Logic in Computer Science, 1(1994),51-60. [3] M. Fitting,“Metric methods, three examples and a theorem”, Journal of Logic Programming, 1993 (to appear). [4] M. Gelfond, V. Lifschitz,“The stable model semantics for logic programming”, R. Kowalski and K. Bowen (eds), Logic programming: Proceedings of the 5th Intl. Conference and Symposium, 1988, pp. 1070-1080. [5] J. Kelley, “General Topology”, Van Nostrand, Princeton, NJ, 1955. [6] K. Kunen,“Signed data dependencies in logic programs”, Journal of Logic Programming, 7(3)(1989), 231-245. [7] J.W. Loyd,“Foundations of logic programming”, Springer-Verlag, N.J., 1987. [8] A. Tarski,“A lattice-theoretical fixpoint theorem and its applications”, Pacific Journal of Math., 5(1955), 285-309. [9] H. Turner,“Signed logic programs”, In Maurice Bruynooghe, editor, Logic Programming: Proc. of the 1994 Intl. Symposium, pp. 61-75. MIT Press, 1994. [10] M.A. Khamsi, D. Misane, and V. Kreinovitch,“A new method of proving the existence of answer sets for disjunctive logic programs”, In C. Baral and M. Gelfond (Edts.), Proc. ILPS’93 Workshop on Logic Programming with Incomplete Information, 1993. [11] M.A. Khamsi, and D. Misane,“Disjunctive Signed Logic Programs”, Preprint.
13