- From: Axel Polleres <axel.polleres@deri.org>
- Date: Thu, 08 Nov 2007 22:31:04 +0000
- To: Michael Kifer <kifer@cs.sunysb.edu>, "Public-Rif-Wg (E-mail)" <public-rif-wg@w3.org>
Michael Kifer wrote: >> Michael Kifer wrote: >>> Model theory of builtin predicates is not a problem. Modes (binding >>> patterns) are extra-logical. We have to decide what do about them in terms >>> of our recommendation (e.g., issue an error and abort). >> Do you think the definition of binding patterns below works? > > What do you mean by "works"? I was talking about a model-theory. I did not > find a model-theoretic definition (for binding patterns) in what you wrote > below. I meant to say: the fixed interpretation has to guarantee that for any fixed input parameters, a finite and uniquely determined number of output tuples is true in any model. Would that work? >> BTW: One thing which is non-standard in the Eiter et al. definition is >> that an the extension of a predicate can be input. >> >>> Builtin functions present a bigger challenge. They can also have fixed >>> interpretation as functions, but builtin functions are partial, so they >>> require special treatment in the model theory, and I am not sure if this >>> complication is worth the trouble. >> Would an extra "error" constant value solve that problem? > > Yes. This is what I called a "complication". Once you have this constant, > you need to explain what would be the truth value of things like > p(abc,error) and Not p(abc,error), where p/2 is a non-builtin predicate. > This would require to introduce a multivalued logic already into BLD (since > neither p(abc,error) nor Not p(abc,error) should be considered as true). > I do not think we should do it. yes, indeed, that is one of the ugly things they do in SPARQL FILTERs Axel > --michael > > >> Axel >> >>> --michael >>> >>>> Evaluable predicates: >>>> >>>> The most general definition of external predicates (built-ins), I know >>>> of (in an attempt to write down the definition of Eiter et al. [1] in a >>>> RIF suitable way): >>>> >>>> An evaluable predicate &pred(X_1,....,X_n) is assigned with one or more >>>> binding patterns, where a binding pattern is a vector {in,out}^n. >>>> Intuitively, an evaluable atom provides a way for deciding the truth >>>> value of an output tuple depending on the extension of a set of input >>>> predicates and terms. Note that this means that evaluable predicates, >>>> unlike usual definitions of built-ins in logic programming, can not only >>>> take constant parameters but also (extensions of) predicates as input. >>>> inputs can not only be terms, but also predicate names (in which case >>>> the *extension* of the respective predicate is the input.) External >>>> predicates have a fixed interpretation assigned. The distinction >>>> between input and output terms is made in order to guarantee that >>>> whenever all input values of one of the given binding patterns are bound >>>> to concrete values, the fixed interpretation only allows a finite number >>>> of bindings for the output values, which can be computed by an external >>>> evaluation oracle. >>>> >>>> >>>> 1. T. Eiter, G. Ianni, R. Schindlauer, H. Tompits. A Uniform Integration >>>> of Higher-Order Rea- >>>> soning and External Evaluations in Answer Set Programming. In >>>> International Joint Con- >>>> ference on Artificial Intelligence (IJCAI) 2005, pp. 90–96, Edinburgh, >>>> UK, Aug. 2005. >>>> >>>> >>>> -- >>>> Dr. Axel Polleres >>>> email: axel@polleres.net url: http://www.polleres.net/ >>>> >>>> >>>> >>>> >>>> >>> >> >> -- >> Dr. Axel Polleres >> email: axel@polleres.net url: http://www.polleres.net/ >> >> >> >> >> > > -- Dr. Axel Polleres email: axel@polleres.net url: http://www.polleres.net/
Received on Thursday, 8 November 2007 22:31:20 UTC