6.2.1 Syntax
Let us first introduce the symbols, or alphabet, being used. Beware that there are all sorts
of slightly different ways to define FOL.
6.2.1.1 Alphabet
•
Logical Symbols: These are symbols that have a standard meaning, like: AND,
OR, NOT, ALL, EXISTS, IMPLIES, IFF, FALSE, =.
•
Non-Logical Symbols: divided in:
o
Constants:
±
Predicates: 1-ary, 2-ary, .
., n-ary. These are usually just identifiers.
±
Functions: 0-ary, 1-ary, 2-ary, .
., n-ary. These are usually just
identifiers. 0-ary functions are also called
individual constants
.
Where predicates return true or false, functions can return any value.
o
Variables: Usually an identifier.
One needs to be able to distinguish the identifiers used for predicates, functions,
and variables by using some appropriate convention, for example, capitals for
function and predicate symbols and lower cases for variables.
6.2.1.2 Terms
A Term is either an individual constant (a 0-ary function), or a variable, or an n-ary
function applied to n terms: F(t1 t2 .
.tn)
[We will use both the notation F(t1 t2 .
.tn) and the notation (F t1 t2 .
. tn)]
6.2.1.3 Atomic Formulae
An Atomic Formula is either FALSE or an n-ary predicate applied to n terms: P(t1 t2 .
.
tn). In the case that "=" is a logical symbol in the language, (t1 = t2), where t1 and t2 are
terms, is an atomic formula.
6.2.1.4 Literals
A Literal is either an atomic formula (a
Positive Literal
), or the negation of an atomic
formula (a
Negative Literal
). A
Ground Literal
is a variable-free literal.
Version 1 CSE IIT, Kharagpur