Input/output Dependencies of Normal Logic Programs
| Citations: | 17 - 7 self |
BibTeX
@MISC{Stärk_input/outputdependencies,
author = {Robert F. Stärk},
title = {Input/output Dependencies of Normal Logic Programs},
year = {}
}
OpenURL
Abstract
SLDNF-resolution is complete for allowed programs and allowed queries. But the condition of allowedness is very stringent and excludes many common Prolog constructs. We show that allowedness is a special case of a more general principle. We show that if the clauses of a normal program are correct with respect to an input/output specification then SLDNFresolution is complete for it. An input/output specification assigns to every predicate a set of positive and a set of negative mode specifications. A mode specification declares the arguments of predicates as input arguments, output arguments or normal arguments. Positive modes are used in positive calls and negative modes are used in negative calls. Definite programs together with definite goals, allowed programs together with allowed goals and many programs and goals used in practice are correct with respect to some input/output specification. Therefore our results imply that the three-valued Fitting/Kunen completion is the right declarative semantics for negation as failure. Keywords: Logic programming, negation as failure, SLDNF-resolution, completion of programs, three-valued logic. 1







