xxiv
Introduction
and in a rather general form by Theorem 5.4.2 and simply states that if P
is any logic program, and I is an interpretation such that T
n (I) converges
in the Cantor topology to an interpretation M , then M is a model for P ; if,
further, T is continuous in the Cantor topology, then M is a fixed point of T
(here, again, T denotes the single-step operator associated with P ). Further
comments on this result are to be found in Remark 3.3.3 and in the comments
immediately following Remark 3.3.3. In particular, this fact is exploited on a
number of occasions to find models in the presence of negation and in particular in studying acceptable programs, as just mentioned, and also in studying
the perfect model for locally stratified programs in Chapter 6. Indeed, the
working out of this observation together with some of its implications occupies a significant proportion of our time. In addition, because convergence is a
key notion, our development of topology in Chapter 3 is based on it, although
the main conclusions presented there are also given in other equivalent and
familiar forms.
In practice, detecting whether sequences converge or whether operators
have fixed points is most easily done by means of metrics and more general
distance functions (generalized metrics) together with their associated fixedpoint theorems, the latter perhaps being reminiscent of the Banach contraction mapping theorem, see Theorem 4.2.3. Furthermore, underlying the use
of generalized metrics are topologies defined on spaces of interpretations, and
we study these in Chapter 3 with a view to developing, in conjunction with
Chapter 4, the mathematical analysis we apply later in Chapters 5 and 6 in
studying acceptable programs and related semantics, as already mentioned,
and in Chapter 7 in the context of artificial neural networks in relation to logic
programming. This latter work concerns the problem of integrating different
models of computation in an attempt to combine the best of each in a single
system and understanding the semantics of the combined system. In our case,
we consider the integration of logic programming, perhaps taken as representative of discrete systems, with connectionist systems, or neural networks,
considered as continuous systems inspired by biological models of computation. A means of doing this is to compute semantic operators by means of
neural networks. However, in the case of first-order (non-propositional) programs, it is necessary to employ approximation techniques (rather than exact
computation) which depend on viewing spaces of interpretations as compact
Hausdorff spaces, that is, to employ yet again methods from mathematical
analysis. Such applications as these are another important reason for developing a quite extensive body of mathematics which provides alternative tools
to those based on order theory in studying semantics. In fact, one of the main
highlights, themes and motivating features of this book is the analysis we carry
out of foundational structures of various sorts, with an eye to potential applications in the field of computational logic in general, as exemplified by our
results in, for example, Chapter 7. Indeed, it seems probable that such methods and tools will prove useful in developing foundations in other areas where
discrete and continuous models of computation are combined, quite apart from
Introduction
and in a rather general form by Theorem 5.4.2 and simply states that if P
is any logic program, and I is an interpretation such that T
n (I) converges
in the Cantor topology to an interpretation M , then M is a model for P ; if,
further, T is continuous in the Cantor topology, then M is a fixed point of T
(here, again, T denotes the single-step operator associated with P ). Further
comments on this result are to be found in Remark 3.3.3 and in the comments
immediately following Remark 3.3.3. In particular, this fact is exploited on a
number of occasions to find models in the presence of negation and in particular in studying acceptable programs, as just mentioned, and also in studying
the perfect model for locally stratified programs in Chapter 6. Indeed, the
working out of this observation together with some of its implications occupies a significant proportion of our time. In addition, because convergence is a
key notion, our development of topology in Chapter 3 is based on it, although
the main conclusions presented there are also given in other equivalent and
familiar forms.
In practice, detecting whether sequences converge or whether operators
have fixed points is most easily done by means of metrics and more general
distance functions (generalized metrics) together with their associated fixedpoint theorems, the latter perhaps being reminiscent of the Banach contraction mapping theorem, see Theorem 4.2.3. Furthermore, underlying the use
of generalized metrics are topologies defined on spaces of interpretations, and
we study these in Chapter 3 with a view to developing, in conjunction with
Chapter 4, the mathematical analysis we apply later in Chapters 5 and 6 in
studying acceptable programs and related semantics, as already mentioned,
and in Chapter 7 in the context of artificial neural networks in relation to logic
programming. This latter work concerns the problem of integrating different
models of computation in an attempt to combine the best of each in a single
system and understanding the semantics of the combined system. In our case,
we consider the integration of logic programming, perhaps taken as representative of discrete systems, with connectionist systems, or neural networks,
considered as continuous systems inspired by biological models of computation. A means of doing this is to compute semantic operators by means of
neural networks. However, in the case of first-order (non-propositional) programs, it is necessary to employ approximation techniques (rather than exact
computation) which depend on viewing spaces of interpretations as compact
Hausdorff spaces, that is, to employ yet again methods from mathematical
analysis. Such applications as these are another important reason for developing a quite extensive body of mathematics which provides alternative tools
to those based on order theory in studying semantics. In fact, one of the main
highlights, themes and motivating features of this book is the analysis we carry
out of foundational structures of various sorts, with an eye to potential applications in the field of computational logic in general, as exemplified by our
results in, for example, Chapter 7. Indeed, it seems probable that such methods and tools will prove useful in developing foundations in other areas where
discrete and continuous models of computation are combined, quite apart from
