(Last modified Wed May 07 23:47 2008)

home foundations

Logic
Glossary of logic terms and concepts
Propositional logic (PL)
  syntax semantics interpretation
First-order logic (FOL)
  syntax semantics interpretation
Modal and temporal logic
conceptual map FOL
First-order logic (FOL) overview

First-order logic (FOL) extends propositional logic by considering things that are true and false of objects or entities in a partial view of the world, called a domain

Each different domain (and non-logical symbols pertaining to it) results in a different FOL language.  A first-order logic language consist of a propositional logic (PL) language extended with the following: 

  1. A domain consisting of objects we want to reason about.
  2. Names of objects in the domain. 
  3. Variables that refer to objects in the domain, and are bound by quantifications (see below). 
  4. Functions representing relations among objects in the domain; a function takes an object (or a list of objects) and identifies an object with that relation to it (or them).  For example, in the domain of people, FatherOf("George Washington") refers to the father of George Washington. 
  5. Predicates that are true or false of an object or of a list of several objects.  For example, IsBlue("sky") might be defined to be true, and AreSiblings("the Dalai Lama", "Arnold Schwarzenegger") as false. 
  6. Quantifications that make an assertion about a formula applied over all objects in the domain.  FOL has two kinds:
    Existential quantification
    u α asserts that α is true if u refers to some object in the domain. 
    Universal quantification
    u α asserts that α is true if u refers to any object in the domain (i.e. that α is true for every domain object u). 

    If it is not obvious which universe U the quantification is over, write ∃u∈U α or ∀u∈U α

Names, functions, predicates, and propositional variables form a new category, non-logical symbols; these vary from one FOL language to another, in contrast to the logical symbols which are the same for all FOL languages. 

Names, variables, and functions also form a new category of language constructs:  terms (or expressions), consisting of the FOL elements that can refer to an object.  In contrast, formulae are either true or false (or unknown).  PL consists only of formulae. 

Perhaps the most intriguing features of FOL languages are that

Here, "interesting" has highly technical meanings, but roughly indicates any FOL language powerful enough to express integer mathematics — in other words, just about any FOL language you would want to use. 

Properties of FOL quantifiers

∀x α ≡ ¬∃x ¬α ∃x α ≡ ¬∀x ¬α

Binding precedence

For minimizing parentheses, the quantifiers ∀x and ∃x have lower precedence than ¬ ∨ ∧ and higher precedence than → and ↔.  For example, ∃x f(x)∧g(x) is considered to be the same as (∃x f(x)) ∧g(x), rather than ∃x (f(x)∧g(x)). 

Disproof in FOL

Disproof in FOL generally requires an interpretation. 

FOL syntax semantics interpretation

Share-Alike Made with jEdit Valid CSS! Valid HTML 4.01! UC Irvine Thomas A. Alspaugh
Assistant Professor, Informatics Dept.
School of Information and Computer Sciences