Article View: comp.lang.prolog
Article #356What does "extralogical" mean?
From: Richard O'Keefe
Date: Wed, 27 Sep 1989 08:04
Date: Wed, 27 Sep 1989 08:04
49 lines
2692 bytes
2692 bytes
Once upon a time I thought I knew what "extra-logical" meant in
logic programming circles. I could, for example, turn to
"The Art of Prolog", and find
There is a class of predicates in Prolog that lie
outside the logic programming model, and are
called {\it extra-logical\/} predicates. These
predicates achieve a side effect in the course of
being satisfied as a logical goal.
Sterling and Shapiro explicitly list
transput commands and
program manipulation commands.
[I do wish people would stop talking about SIDE effects when
referring to the MAIN effect of something like write/1 or assert/1.]
The Sterling and Shapiro text offers two definitions, really.
X is extra-logical if
[definition 1] it lies outside the logic programming model
or
[definition 2] it has a ``side effect''.
Under definition 1, I would include var/1 and anything which can be
used to simulate it, such as cut, unsound negation, unsound if then else,
findall/3, even perhaps compare/3 (but not NU Prolog's termCompare/3).
However, Sterling & Shapiro do NOT describe these operations in their
chapter on extra-logical predicates, which suggests that they may not
have intended the word to apply to them.
The reason that I ask is that I was stunned to find a paper which
described the Mycroft/O'Keefe type system as ``extralogical''. Now,
we're talking about a type system where type declarations are
syntactic sugar for certain Horn clauses, and where a predicate declaration
pred p(T1, ..., Tn)
is interpreted as saying that
p(X1, ..., Xn) :- Body
is to be read declaratively as
p(X1, ..., Xn) :- isa(X1, T1), ..., isa(Xn, Tn), Body.
(in essence, the type checks are ``factored'' out into the declaration.)
I really can't see any side effects there, nor can I see how to simulate
var/1 with this stuff, nor yet does it seem to me to lie outside the
logic programming model. Is there some other sense of ``extralogical''
which does apply? Did presenting the system in proof theoretic rather
than model theoretic terms damn it to extralogicality?
So, what DOES ``extralogical'' mean?
--
GNUs are more derived than other extant alcelaphines,| Richard A. O'Keefe
such as bonteboks, and show up later in the fossil | visiting Melbourne
record than less highly derived species. (Eldredge) | ok@munmurra.cs.mu.OZ.au
Technical Details
Message-ID:
<2204@munnari.oz.au>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!uunet!munnari.oz.au!cs.mu.oz.au!okShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!uunet!munnari.oz.au!cs.mu.oz.au!ok From: ok@cs.mu.oz.au (Richard O'Keefe) Newsgroups: comp.lang.prolog Subject: What does "extralogical" mean? Keywords: usage Message-ID: <2204@munnari.oz.au> Date: 27 Sep 89 08:04:50 GMT Sender: news@cs.mu.oz.au Lines: 49