Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

NL (natural logic): a finite domain first order theory

0 views
Skip to first unread message

Enrique Pérez

unread,
Dec 22, 2009, 4:34:52 PM12/22/09
to
Hi,

I have developed a F.O. theory, NL, interpreted in the natural
language,
which I believe can be of interest for knowledge representation and
reasoning.
A discussion about it can be found in [1].
I have also developed an open source python/CLIPS
library based on it, nl, that can be found in [2].

I would really appreciate any comments and feedback.

Thanks.

Refs:
1.- http://web.cazalla.net/nl
2.- http://bitbucket.org/enriquepablo/nl/

Tony Orlow

unread,
Dec 28, 2009, 5:49:09 PM12/28/09
to

Hola Enrique!

You propose the following three axioms as a foundation for this
theory:

1) forall x, y, z: x isa y & y is z -> x isa z.

2) forall x, y, z: x is y & y is z -> x is z.

3) forall x, y: p(x, y) isa fact -> x isa thing & y isa state.

With the first, I would make a correction. I would say "x isa y & y is
z <-> x isa z". The two statements are equal, thus the logical
implication is bidirectional. If x "isa member of z, then there is an
identical set y and x is a member of that set also.

The second is logically subsumed by what you mean by "is",; you mean
"equals". It's a transitive relation, expressed already in logic, and
therefore redundantly expressed as a function "is". It's a logical
relation, which can be applied to any non-logical operator.

The third, while attractive in its comprehension, presents some
problems. Namely, facts, things and states are undefined concepts,
and some tweaking is required to fully express the relationships
between the three. Now, we can resolve some of this. When you say, "is
a fact", you mean the statement is true. That is already covered by
whatever logical foundation you are using, and so "is a fact" is
redundant and need not be stated. Instead of saying "p(x,y) isa fact",
we can simply evaluate the truth of "p(x,y)" and apply its truth value
to the statement as a whole.

The distinction between "things" and "states" is left ambiguous.
Ultimately, it's a little bit cart-before-the-horse-walking-backwards
in its approach. After all, we can form sets based on state or
definition of object. Take, for example, the set of all yellow things.
They are in a state of emanating or reflecting yellow light,
regardless of whether they are a taxicab or schoolbus, or a banana or
lemon. Or, we can talk about objects having certain qualities, such as
vehicles that move things, or fruits produced by plants, neither of
which must be yellow. Consider this. Each quality is represented by a
set of things which share that quality, and each thing is represented
by the set of all qualities which it enjoys. If two sets contain the
same things, they are the same set. If two objects have all the same
qualities, then they are the same objects.

Hope this makes you think a bit more. :)

Peace,

Tony

Enrique Pérez

unread,
Dec 29, 2009, 6:01:57 PM12/29/09
to
Hi Tony,

Thank you for replying. I will reply to you within the lines:

You say "then there is ... y" (existential quantifier) and I say
"forall y"
(absolute); I insist on my formulation.

>
> The second is logically subsumed by what you mean by "is",; you mean
> "equals". It's a transitive relation, expressed already in logic, and
> therefore redundantly expressed as a function "is". It's a logical
> relation, which can be applied to any non-logical operator.

I still think "is" has the form of a "belongs to" predicate of set
theory,
and "isa" that of "is a subset of". In
any case I am not particularly fond of that formulation, and would not
refuse one carrying an equality symbol.

>
> The third, while attractive in its comprehension, presents some
> problems. Namely,  facts, things and states are undefined concepts,
> and some tweaking is required to fully express the relationships
> between the three. Now, we can resolve some of this. When you say, "is
> a fact", you mean the statement is true. That is already covered by
> whatever logical foundation you are using, and so "is a fact" is
> redundant and need not be stated. Instead of saying "p(x,y) isa fact",
> we can simply evaluate the truth of "p(x,y)" and apply its truth value
> to the statement as a whole.

No, because I don't want to introduce any more predicates on the
system.
It is a sort of trick, that, while carrying some redundancy as you
have
pointed out, allows us to have first order variables ranging over
those "p(x,y)",
and .


>
> The distinction between "things" and "states" is left ambiguous.
> Ultimately, it's a little bit cart-before-the-horse-walking-backwards
> in its approach. After all, we can form sets based on state or
> definition of object. Take, for example, the set of all yellow things.
> They are in a state of emanating or reflecting yellow light,
> regardless of whether they are a taxicab or schoolbus, or a banana or
> lemon. Or, we can talk about objects having certain qualities, such as
> vehicles that move things, or fruits produced by plants, neither of
> which must be yellow. Consider this. Each quality is represented by a
> set of things which share that quality, and each thing is represented
> by the set of all qualities which it enjoys. If two sets contain the
> same things, they are the same set. If two objects have all the same
> qualities, then they are the same objects.

You are right that the distinction is left ambiguous. And the
distinction
is purely syntactic, not semantic as I seem to have led you to assume.
A state would be an operation, and a thing would be an atomic term.
The main point would be that a state would be an operation: it could
have the same basic form that you indicated above for a sentence:
"p(x,y)", and at the same time you could have a first-order variable
ranging over it.

It is true that there is also some redundancy between the "p" operator
and "state"s, but this would take a little longer to justify.

Hope this makes sense.

>
> Hope this makes you think a bit more. :)
>
> Peace,
>
> Tony

Best Regards,

Enrique

Grouchy

unread,
Dec 30, 2009, 8:49:16 PM12/30/09
to
On Dec 22, 4:34 pm, Enrique Pérez <enriquepa...@gmail.com> wrote:


Mr. Perez,

Here's a link to Professor Kay's old class notes from his course at
Berkeley... the other related language and logic notes are accessible
via his home page.


http://www.icsi.berkeley.edu/~kay/bcg/lec07.html


Best,

Grouchy

0 new messages