Logic as a Tool Chapter 3: Understanding First-order Logic 3.1 - - PowerPoint PPT Presentation

logic as a tool chapter 3 understanding first order logic
SMART_READER_LITE
LIVE PREVIEW

Logic as a Tool Chapter 3: Understanding First-order Logic 3.1 - - PowerPoint PPT Presentation

Logic as a Tool Chapter 3: Understanding First-order Logic 3.1 First-order structures and languages. Terms and formulae of first-order logic. Valentin Goranko Stockholm University October 2016 Goranko Propositional logic is too weak Goranko


slide-1
SLIDE 1

Goranko

Logic as a Tool Chapter 3: Understanding First-order Logic 3.1 First-order structures and languages. Terms and formulae of first-order logic.

Valentin Goranko Stockholm University October 2016

slide-2
SLIDE 2

Goranko

Propositional logic is too weak

slide-3
SLIDE 3

Goranko

Propositional logic is too weak

Propositional logic only deals with fixed truth values. It cannot capture the meaning and truth of statements like:

slide-4
SLIDE 4

Goranko

Propositional logic is too weak

Propositional logic only deals with fixed truth values. It cannot capture the meaning and truth of statements like: “x + 2 is greater than 5.”

slide-5
SLIDE 5

Goranko

Propositional logic is too weak

Propositional logic only deals with fixed truth values. It cannot capture the meaning and truth of statements like: “x + 2 is greater than 5.” “There exists y such that y2 = 2.”

slide-6
SLIDE 6

Goranko

Propositional logic is too weak

Propositional logic only deals with fixed truth values. It cannot capture the meaning and truth of statements like: “x + 2 is greater than 5.” “There exists y such that y2 = 2.” “For every real number x, if x is greater than 0, then there exists a real number y such that y is less than 0 and y2 equals x.”

slide-7
SLIDE 7

Goranko

Propositional logic is too weak

Propositional logic only deals with fixed truth values. It cannot capture the meaning and truth of statements like: “x + 2 is greater than 5.” “There exists y such that y2 = 2.” “For every real number x, if x is greater than 0, then there exists a real number y such that y is less than 0 and y2 equals x.” “Everybody loves Raymond”

slide-8
SLIDE 8

Goranko

Propositional logic is too weak

Propositional logic only deals with fixed truth values. It cannot capture the meaning and truth of statements like: “x + 2 is greater than 5.” “There exists y such that y2 = 2.” “For every real number x, if x is greater than 0, then there exists a real number y such that y is less than 0 and y2 equals x.” “Everybody loves Raymond” “Every man loves a woman”

slide-9
SLIDE 9

Goranko

First-order structures

slide-10
SLIDE 10

Goranko

First-order structures

A first-order structure consists of:

  • A non-empty set, called a domain (of discourse) D;
slide-11
SLIDE 11

Goranko

First-order structures

A first-order structure consists of:

  • A non-empty set, called a domain (of discourse) D;
  • Distinguished predicates in D;
slide-12
SLIDE 12

Goranko

First-order structures

A first-order structure consists of:

  • A non-empty set, called a domain (of discourse) D;
  • Distinguished predicates in D;
  • Distinguished functions in D;
slide-13
SLIDE 13

Goranko

First-order structures

A first-order structure consists of:

  • A non-empty set, called a domain (of discourse) D;
  • Distinguished predicates in D;
  • Distinguished functions in D;
  • Distinguished constants in D;
slide-14
SLIDE 14

Goranko

First-order structures: some examples

slide-15
SLIDE 15

Goranko

First-order structures: some examples

  • N: The set of natural numbers N with the unary successor function

s, (where s(x) = x + 1), the binary functions + (addition) and × (multiplication), the predicates =, < and >, and the constant 0.

slide-16
SLIDE 16

Goranko

First-order structures: some examples

  • N: The set of natural numbers N with the unary successor function

s, (where s(x) = x + 1), the binary functions + (addition) and × (multiplication), the predicates =, < and >, and the constant 0.

  • Likewise, but with the domains being the set of integers Z, rational

numbers Q, or the reals R (possibly adding more functions) we

  • btain the structures Z, Q and R respectively.
slide-17
SLIDE 17

Goranko

First-order structures: some examples

  • N: The set of natural numbers N with the unary successor function

s, (where s(x) = x + 1), the binary functions + (addition) and × (multiplication), the predicates =, < and >, and the constant 0.

  • Likewise, but with the domains being the set of integers Z, rational

numbers Q, or the reals R (possibly adding more functions) we

  • btain the structures Z, Q and R respectively.
  • H: the domain is the set of all humans, with functions m (‘the

mother of ’), f (‘the father of ’), the unary predicates M (‘man’), W (‘woman’), the binary predicates P (’parent of ’), C (’child of ’), L (‘loves’), and constants (names), e.g. ‘Adam’, ’Eve’, ‘John’, ‘Mary’ etc.

slide-18
SLIDE 18

Goranko

First-order structures: some examples

  • N: The set of natural numbers N with the unary successor function

s, (where s(x) = x + 1), the binary functions + (addition) and × (multiplication), the predicates =, < and >, and the constant 0.

  • Likewise, but with the domains being the set of integers Z, rational

numbers Q, or the reals R (possibly adding more functions) we

  • btain the structures Z, Q and R respectively.
  • H: the domain is the set of all humans, with functions m (‘the

mother of ’), f (‘the father of ’), the unary predicates M (‘man’), W (‘woman’), the binary predicates P (’parent of ’), C (’child of ’), L (‘loves’), and constants (names), e.g. ‘Adam’, ’Eve’, ‘John’, ‘Mary’ etc.

  • G: the domain is the set of all points and lines in the plane, with

unary predicates P for ‘point’, L for ‘line’ and the binary predicate I for ‘incidence’ between a point and a line.

slide-19
SLIDE 19

Goranko

First-order languages: vocabulary

slide-20
SLIDE 20

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures.

slide-21
SLIDE 21

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures. All these are referred to as non-logical symbols.

slide-22
SLIDE 22

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures. All these are referred to as non-logical symbols.

  • 2. Individual variables: x, y, z, possibly with indices.
slide-23
SLIDE 23

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures. All these are referred to as non-logical symbols.

  • 2. Individual variables: x, y, z, possibly with indices.
  • 3. Logical symbols, including:
slide-24
SLIDE 24

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures. All these are referred to as non-logical symbols.

  • 2. Individual variables: x, y, z, possibly with indices.
  • 3. Logical symbols, including:

3.1 the Propositional connectives: ¬, ∧, ∨, →, ↔ (or a sufficient subset of these);

slide-25
SLIDE 25

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures. All these are referred to as non-logical symbols.

  • 2. Individual variables: x, y, z, possibly with indices.
  • 3. Logical symbols, including:

3.1 the Propositional connectives: ¬, ∧, ∨, →, ↔ (or a sufficient subset of these); 3.2 Equality = (optional);

slide-26
SLIDE 26

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures. All these are referred to as non-logical symbols.

  • 2. Individual variables: x, y, z, possibly with indices.
  • 3. Logical symbols, including:

3.1 the Propositional connectives: ¬, ∧, ∨, →, ↔ (or a sufficient subset of these); 3.2 Equality = (optional); 3.3 Quantifiers:

slide-27
SLIDE 27

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures. All these are referred to as non-logical symbols.

  • 2. Individual variables: x, y, z, possibly with indices.
  • 3. Logical symbols, including:

3.1 the Propositional connectives: ¬, ∧, ∨, →, ↔ (or a sufficient subset of these); 3.2 Equality = (optional); 3.3 Quantifiers: ⊲ the universal quantifier ∀ (‘all’, ‘for all’, ‘every’, ‘for every ’),

slide-28
SLIDE 28

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures. All these are referred to as non-logical symbols.

  • 2. Individual variables: x, y, z, possibly with indices.
  • 3. Logical symbols, including:

3.1 the Propositional connectives: ¬, ∧, ∨, →, ↔ (or a sufficient subset of these); 3.2 Equality = (optional); 3.3 Quantifiers: ⊲ the universal quantifier ∀ (‘all’, ‘for all’, ‘every’, ‘for every ’), ⊲ the existential quantifier ∃ (‘there exists’, ‘there is’, ‘some’,‘for some’, ‘a’).

slide-29
SLIDE 29

Goranko

First-order languages: vocabulary

  • 1. Functional, predicate, and constant symbols, used as names for the

distinguished functions, predicates and constants we consider in the structures. All these are referred to as non-logical symbols.

  • 2. Individual variables: x, y, z, possibly with indices.
  • 3. Logical symbols, including:

3.1 the Propositional connectives: ¬, ∧, ∨, →, ↔ (or a sufficient subset of these); 3.2 Equality = (optional); 3.3 Quantifiers: ⊲ the universal quantifier ∀ (‘all’, ‘for all’, ‘every’, ‘for every ’), ⊲ the existential quantifier ∃ (‘there exists’, ‘there is’, ‘some’,‘for some’, ‘a’). 3.4 Auxiliary symbols, such as ( , ) etc.

slide-30
SLIDE 30

Goranko

First-order languages: terms

slide-31
SLIDE 31

Goranko

First-order languages: terms

Inductive definition of the set of terms TM(L) of a first-order language L:

slide-32
SLIDE 32

Goranko

First-order languages: terms

Inductive definition of the set of terms TM(L) of a first-order language L:

  • 1. Every constant symbol in L is a term.
slide-33
SLIDE 33

Goranko

First-order languages: terms

Inductive definition of the set of terms TM(L) of a first-order language L:

  • 1. Every constant symbol in L is a term.
  • 2. Every individual variable in L is a term.
slide-34
SLIDE 34

Goranko

First-order languages: terms

Inductive definition of the set of terms TM(L) of a first-order language L:

  • 1. Every constant symbol in L is a term.
  • 2. Every individual variable in L is a term.
  • 3. If t1, ..., tn are terms and f is an n -ary functional symbol in L, then

f (t1, ..., tn) is a term in L.

slide-35
SLIDE 35

Goranko

First-order languages: terms

Inductive definition of the set of terms TM(L) of a first-order language L:

  • 1. Every constant symbol in L is a term.
  • 2. Every individual variable in L is a term.
  • 3. If t1, ..., tn are terms and f is an n -ary functional symbol in L, then

f (t1, ..., tn) is a term in L. Construction/parsing tree of a term: like those for propositional formulae.

slide-36
SLIDE 36

Goranko

Examples of terms

slide-37
SLIDE 37

Goranko

Examples of terms

  • 1. In the language LN :
slide-38
SLIDE 38

Goranko

Examples of terms

  • 1. In the language LN : x,
slide-39
SLIDE 39

Goranko

Examples of terms

  • 1. In the language LN : x, s(x),
slide-40
SLIDE 40

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0,
slide-41
SLIDE 41

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0),
slide-42
SLIDE 42

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n.

slide-43
SLIDE 43

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

slide-44
SLIDE 44

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

  • +(2, 2), which in a more familiar notation is written as 2 + 2
slide-45
SLIDE 45

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

  • +(2, 2), which in a more familiar notation is written as 2 + 2
  • 3 × y (written in the usual notation)
slide-46
SLIDE 46

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

  • +(2, 2), which in a more familiar notation is written as 2 + 2
  • 3 × y (written in the usual notation)
  • (x2 + x) × 5, where x2 is an abbreviation of x × x
slide-47
SLIDE 47

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

  • +(2, 2), which in a more familiar notation is written as 2 + 2
  • 3 × y (written in the usual notation)
  • (x2 + x) × 5, where x2 is an abbreviation of x × x
  • x1 + s((y2 + 3) × s(z)), etc.
slide-48
SLIDE 48

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

  • +(2, 2), which in a more familiar notation is written as 2 + 2
  • 3 × y (written in the usual notation)
  • (x2 + x) × 5, where x2 is an abbreviation of x × x
  • x1 + s((y2 + 3) × s(z)), etc.
  • 2. In the ‘human’ language LH:
slide-49
SLIDE 49

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

  • +(2, 2), which in a more familiar notation is written as 2 + 2
  • 3 × y (written in the usual notation)
  • (x2 + x) × 5, where x2 is an abbreviation of x × x
  • x1 + s((y2 + 3) × s(z)), etc.
  • 2. In the ‘human’ language LH:
  • x
slide-50
SLIDE 50

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

  • +(2, 2), which in a more familiar notation is written as 2 + 2
  • 3 × y (written in the usual notation)
  • (x2 + x) × 5, where x2 is an abbreviation of x × x
  • x1 + s((y2 + 3) × s(z)), etc.
  • 2. In the ‘human’ language LH:
  • x
  • Mary
slide-51
SLIDE 51

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

  • +(2, 2), which in a more familiar notation is written as 2 + 2
  • 3 × y (written in the usual notation)
  • (x2 + x) × 5, where x2 is an abbreviation of x × x
  • x1 + s((y2 + 3) × s(z)), etc.
  • 2. In the ‘human’ language LH:
  • x
  • Mary
  • m(John) (‘the mother of John’)
slide-52
SLIDE 52

Goranko

Examples of terms

  • 1. In the language LN : x, s(x), 0, s(0), s(s(0)), etc.

We denote the term s(...s(0)...), where s occurs n times, by n. More examples of terms in LN :

  • +(2, 2), which in a more familiar notation is written as 2 + 2
  • 3 × y (written in the usual notation)
  • (x2 + x) × 5, where x2 is an abbreviation of x × x
  • x1 + s((y2 + 3) × s(z)), etc.
  • 2. In the ‘human’ language LH:
  • x
  • Mary
  • m(John) (‘the mother of John’)
  • f(m(y)) (‘the father of the mother of x’), etc.
slide-53
SLIDE 53

Goranko

First-order languages: atomic formulae

slide-54
SLIDE 54

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L.

slide-55
SLIDE 55

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

slide-56
SLIDE 56

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
slide-57
SLIDE 57

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
  • < (1, 2), or in traditional notation: 1 < 2;
slide-58
SLIDE 58

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
  • < (1, 2), or in traditional notation: 1 < 2;
  • x = 2,
slide-59
SLIDE 59

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
  • < (1, 2), or in traditional notation: 1 < 2;
  • x = 2,
  • 5 < (x + 4),
slide-60
SLIDE 60

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
  • < (1, 2), or in traditional notation: 1 < 2;
  • x = 2,
  • 5 < (x + 4),
  • 2 + s(x1) = s(s(x2)),
slide-61
SLIDE 61

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
  • < (1, 2), or in traditional notation: 1 < 2;
  • x = 2,
  • 5 < (x + 4),
  • 2 + s(x1) = s(s(x2)),
  • (x2 + x) × 5 > 0,
slide-62
SLIDE 62

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
  • < (1, 2), or in traditional notation: 1 < 2;
  • x = 2,
  • 5 < (x + 4),
  • 2 + s(x1) = s(s(x2)),
  • (x2 + x) × 5 > 0,
  • x × (y + z) = (x × y) + (x × z), etc.
slide-63
SLIDE 63

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
  • < (1, 2), or in traditional notation: 1 < 2;
  • x = 2,
  • 5 < (x + 4),
  • 2 + s(x1) = s(s(x2)),
  • (x2 + x) × 5 > 0,
  • x × (y + z) = (x × y) + (x × z), etc.
  • 2. In LH:
slide-64
SLIDE 64

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
  • < (1, 2), or in traditional notation: 1 < 2;
  • x = 2,
  • 5 < (x + 4),
  • 2 + s(x1) = s(s(x2)),
  • (x2 + x) × 5 > 0,
  • x × (y + z) = (x × y) + (x × z), etc.
  • 2. In LH:
  • x = m(Mary) (‘x is the mother of Mary’).
slide-65
SLIDE 65

Goranko

First-order languages: atomic formulae

If t1, ..., tn are terms in a language L and p is an n-ary predicate symbol in L, then p(t1, ..., tn) is an atomic formula in L. Examples:

  • 1. In LN :
  • < (1, 2), or in traditional notation: 1 < 2;
  • x = 2,
  • 5 < (x + 4),
  • 2 + s(x1) = s(s(x2)),
  • (x2 + x) × 5 > 0,
  • x × (y + z) = (x × y) + (x × z), etc.
  • 2. In LH:
  • x = m(Mary) (‘x is the mother of Mary’).
  • L(f(y), y) (‘The father of y loves y’), etc.
slide-66
SLIDE 66

Goranko

First-order languages: formulae

slide-67
SLIDE 67

Goranko

First-order languages: formulae

Inductive definition of the set of formulae FOR(L):

slide-68
SLIDE 68

Goranko

First-order languages: formulae

Inductive definition of the set of formulae FOR(L):

  • 1. Every atomic formula in L is a formula in L.
slide-69
SLIDE 69

Goranko

First-order languages: formulae

Inductive definition of the set of formulae FOR(L):

  • 1. Every atomic formula in L is a formula in L.
  • 2. If A is a formula in L then ¬A is a formula in L.
slide-70
SLIDE 70

Goranko

First-order languages: formulae

Inductive definition of the set of formulae FOR(L):

  • 1. Every atomic formula in L is a formula in L.
  • 2. If A is a formula in L then ¬A is a formula in L.
  • 3. If A, B are formulae in L then (A ∨ B), (A ∧ B), (A → B), (A ↔ B)

are formulae in L.

slide-71
SLIDE 71

Goranko

First-order languages: formulae

Inductive definition of the set of formulae FOR(L):

  • 1. Every atomic formula in L is a formula in L.
  • 2. If A is a formula in L then ¬A is a formula in L.
  • 3. If A, B are formulae in L then (A ∨ B), (A ∧ B), (A → B), (A ↔ B)

are formulae in L.

  • 4. If A is a formula in L and x is a variable, then ∀xA and ∃xA are

formulae in L.

slide-72
SLIDE 72

Goranko

First-order languages: formulae

Inductive definition of the set of formulae FOR(L):

  • 1. Every atomic formula in L is a formula in L.
  • 2. If A is a formula in L then ¬A is a formula in L.
  • 3. If A, B are formulae in L then (A ∨ B), (A ∧ B), (A → B), (A ↔ B)

are formulae in L.

  • 4. If A is a formula in L and x is a variable, then ∀xA and ∃xA are

formulae in L. Construction/parsing tree of a formula, subformulae, main connectives: like in propositional logic.

slide-73
SLIDE 73

Goranko

Examples of formulae

slide-74
SLIDE 74

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
slide-75
SLIDE 75

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
  • (5 < x ∧ x2 + x − 2 = 0),
slide-76
SLIDE 76

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
  • (5 < x ∧ x2 + x − 2 = 0),
  • ∃x(5 < x ∧ x2 + x − 2 = 0),
slide-77
SLIDE 77

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
  • (5 < x ∧ x2 + x − 2 = 0),
  • ∃x(5 < x ∧ x2 + x − 2 = 0),
  • ∀x(5 < x ∧ x2 + x − 2 = 0),
slide-78
SLIDE 78

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
  • (5 < x ∧ x2 + x − 2 = 0),
  • ∃x(5 < x ∧ x2 + x − 2 = 0),
  • ∀x(5 < x ∧ x2 + x − 2 = 0),
  • (∃y(x = y 2) → (¬ x < 0)),
slide-79
SLIDE 79

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
  • (5 < x ∧ x2 + x − 2 = 0),
  • ∃x(5 < x ∧ x2 + x − 2 = 0),
  • ∀x(5 < x ∧ x2 + x − 2 = 0),
  • (∃y(x = y 2) → (¬ x < 0)),
  • ∀x((∃y(x = y 2) → (¬ x < 0)), etc.
slide-80
SLIDE 80

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
  • (5 < x ∧ x2 + x − 2 = 0),
  • ∃x(5 < x ∧ x2 + x − 2 = 0),
  • ∀x(5 < x ∧ x2 + x − 2 = 0),
  • (∃y(x = y 2) → (¬ x < 0)),
  • ∀x((∃y(x = y 2) → (¬ x < 0)), etc.
  • 2. In LH:
slide-81
SLIDE 81

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
  • (5 < x ∧ x2 + x − 2 = 0),
  • ∃x(5 < x ∧ x2 + x − 2 = 0),
  • ∀x(5 < x ∧ x2 + x − 2 = 0),
  • (∃y(x = y 2) → (¬ x < 0)),
  • ∀x((∃y(x = y 2) → (¬ x < 0)), etc.
  • 2. In LH:
  • John = f(Mary) → ∃xL(x, Mary);
slide-82
SLIDE 82

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
  • (5 < x ∧ x2 + x − 2 = 0),
  • ∃x(5 < x ∧ x2 + x − 2 = 0),
  • ∀x(5 < x ∧ x2 + x − 2 = 0),
  • (∃y(x = y 2) → (¬ x < 0)),
  • ∀x((∃y(x = y 2) → (¬ x < 0)), etc.
  • 2. In LH:
  • John = f(Mary) → ∃xL(x, Mary);
  • ∃x∀z(¬L(z, y) → L(x, z)),
slide-83
SLIDE 83

Goranko

Examples of formulae

  • 1. In LZ, with additional binary function − :
  • (5 < x ∧ x2 + x − 2 = 0),
  • ∃x(5 < x ∧ x2 + x − 2 = 0),
  • ∀x(5 < x ∧ x2 + x − 2 = 0),
  • (∃y(x = y 2) → (¬ x < 0)),
  • ∀x((∃y(x = y 2) → (¬ x < 0)), etc.
  • 2. In LH:
  • John = f(Mary) → ∃xL(x, Mary);
  • ∃x∀z(¬L(z, y) → L(x, z)),
  • ∀y((x = m(y)) → (C(y, x) ∧ ∃zL(x, z))).
slide-84
SLIDE 84

Goranko

Some conventions

slide-85
SLIDE 85

Goranko

Some conventions

Priority order on the logical connectives:

slide-86
SLIDE 86

Goranko

Some conventions

Priority order on the logical connectives:

  • the unary connectives: negation and quantifiers have the strongest

binding power, i.e. the highest priority,

slide-87
SLIDE 87

Goranko

Some conventions

Priority order on the logical connectives:

  • the unary connectives: negation and quantifiers have the strongest

binding power, i.e. the highest priority,

  • then come the conjunction and disjunction,
slide-88
SLIDE 88

Goranko

Some conventions

Priority order on the logical connectives:

  • the unary connectives: negation and quantifiers have the strongest

binding power, i.e. the highest priority,

  • then come the conjunction and disjunction,
  • then the implication, and
slide-89
SLIDE 89

Goranko

Some conventions

Priority order on the logical connectives:

  • the unary connectives: negation and quantifiers have the strongest

binding power, i.e. the highest priority,

  • then come the conjunction and disjunction,
  • then the implication, and
  • the biconditional has the lowest priority.
slide-90
SLIDE 90

Goranko

Some conventions

Priority order on the logical connectives:

  • the unary connectives: negation and quantifiers have the strongest

binding power, i.e. the highest priority,

  • then come the conjunction and disjunction,
  • then the implication, and
  • the biconditional has the lowest priority.

Example: ∀x(∃y(x = y2) → (¬(x < 0) ∨ (x = 0)))

slide-91
SLIDE 91

Goranko

Some conventions

Priority order on the logical connectives:

  • the unary connectives: negation and quantifiers have the strongest

binding power, i.e. the highest priority,

  • then come the conjunction and disjunction,
  • then the implication, and
  • the biconditional has the lowest priority.

Example: ∀x(∃y(x = y2) → (¬(x < 0) ∨ (x = 0))) can be simplified to ∀x(∃y x = y2 → ¬x < 0 ∨ x = 0)

slide-92
SLIDE 92

Goranko

Some conventions

Priority order on the logical connectives:

  • the unary connectives: negation and quantifiers have the strongest

binding power, i.e. the highest priority,

  • then come the conjunction and disjunction,
  • then the implication, and
  • the biconditional has the lowest priority.

Example: ∀x(∃y(x = y2) → (¬(x < 0) ∨ (x = 0))) can be simplified to ∀x(∃y x = y2 → ¬x < 0 ∨ x = 0) On the other hand, for easier readability, extra parentheses can be

  • ptionally put around subformulae.
slide-93
SLIDE 93

Goranko

First-order instances of propositional formulae

slide-94
SLIDE 94

Goranko

First-order instances of propositional formulae

Definition: Any uniform substitution of first-order formulae for the propositional variables in a propositional formula A produces a first-order formula, called a first-order instance of A.

slide-95
SLIDE 95

Goranko

First-order instances of propositional formulae

Definition: Any uniform substitution of first-order formulae for the propositional variables in a propositional formula A produces a first-order formula, called a first-order instance of A. Example: Take the propositional formula A = (p ∧ ¬q) → (q ∨ p).

slide-96
SLIDE 96

Goranko

First-order instances of propositional formulae

Definition: Any uniform substitution of first-order formulae for the propositional variables in a propositional formula A produces a first-order formula, called a first-order instance of A. Example: Take the propositional formula A = (p ∧ ¬q) → (q ∨ p). The uniform substitution of (5 < x) for p and ∃y(x = y2) for q in A results in the first-order instance ((5 < x) ∧ ¬∃y(x = y2)) → (∃y(x = y2) ∨ (5 < x)).

slide-97
SLIDE 97

Goranko

First-order instances of propositional formulae

Definition: Any uniform substitution of first-order formulae for the propositional variables in a propositional formula A produces a first-order formula, called a first-order instance of A. Example: Take the propositional formula A = (p ∧ ¬q) → (q ∨ p). The uniform substitution of (5 < x) for p and ∃y(x = y2) for q in A results in the first-order instance ((5 < x) ∧ ¬∃y(x = y2)) → (∃y(x = y2) ∨ (5 < x)). NB: there are infinitely many first-order instances of any given propositional formula that contains propositional variables.

slide-98
SLIDE 98

Goranko

Unique readability of terms and formulae

Let L be an arbitrarily fixed first-order language.

slide-99
SLIDE 99

Goranko

Unique readability of terms and formulae

Let L be an arbitrarily fixed first-order language. Then:

slide-100
SLIDE 100

Goranko

Unique readability of terms and formulae

Let L be an arbitrarily fixed first-order language. Then:

  • 1. Every occurrence of a functional symbol in a term t from TM(L) is

the beginning of a unique subterm of t.

slide-101
SLIDE 101

Goranko

Unique readability of terms and formulae

Let L be an arbitrarily fixed first-order language. Then:

  • 1. Every occurrence of a functional symbol in a term t from TM(L) is

the beginning of a unique subterm of t.

  • 2. Every occurrence of a predicate symbol, ¬, ∃, or ∀ in a formula A

from FOR(L) is the beginning of a unique subformula of A.

slide-102
SLIDE 102

Goranko

Unique readability of terms and formulae

Let L be an arbitrarily fixed first-order language. Then:

  • 1. Every occurrence of a functional symbol in a term t from TM(L) is

the beginning of a unique subterm of t.

  • 2. Every occurrence of a predicate symbol, ¬, ∃, or ∀ in a formula A

from FOR(L) is the beginning of a unique subformula of A.

  • 3. Every occurrence of any binary connective ◦ ∈ {∧, ∨, →, ↔} in a

formula A from FOR(L) is in a context (B1 ◦ B2) for a unique pair

  • f subformulae B1 and B2 of A.
slide-103
SLIDE 103

Goranko

Unique readability of terms and formulae

Let L be an arbitrarily fixed first-order language. Then:

  • 1. Every occurrence of a functional symbol in a term t from TM(L) is

the beginning of a unique subterm of t.

  • 2. Every occurrence of a predicate symbol, ¬, ∃, or ∀ in a formula A

from FOR(L) is the beginning of a unique subformula of A.

  • 3. Every occurrence of any binary connective ◦ ∈ {∧, ∨, →, ↔} in a

formula A from FOR(L) is in a context (B1 ◦ B2) for a unique pair

  • f subformulae B1 and B2 of A.

Therefore:

slide-104
SLIDE 104

Goranko

Unique readability of terms and formulae

Let L be an arbitrarily fixed first-order language. Then:

  • 1. Every occurrence of a functional symbol in a term t from TM(L) is

the beginning of a unique subterm of t.

  • 2. Every occurrence of a predicate symbol, ¬, ∃, or ∀ in a formula A

from FOR(L) is the beginning of a unique subformula of A.

  • 3. Every occurrence of any binary connective ◦ ∈ {∧, ∨, →, ↔} in a

formula A from FOR(L) is in a context (B1 ◦ B2) for a unique pair

  • f subformulae B1 and B2 of A.

Therefore:

  • 1. The set of terms TM(L) has the unique readability property.
slide-105
SLIDE 105

Goranko

Unique readability of terms and formulae

Let L be an arbitrarily fixed first-order language. Then:

  • 1. Every occurrence of a functional symbol in a term t from TM(L) is

the beginning of a unique subterm of t.

  • 2. Every occurrence of a predicate symbol, ¬, ∃, or ∀ in a formula A

from FOR(L) is the beginning of a unique subformula of A.

  • 3. Every occurrence of any binary connective ◦ ∈ {∧, ∨, →, ↔} in a

formula A from FOR(L) is in a context (B1 ◦ B2) for a unique pair

  • f subformulae B1 and B2 of A.

Therefore:

  • 1. The set of terms TM(L) has the unique readability property.
  • 2. The set of formulae FOR(L) has the unique readability property.
slide-106
SLIDE 106

Goranko

Many-sorted first-order structures and languages

Often the domain of discourse involves different sorts of objects, e.g., integers and reals; scalars and vectors; man and women; points, lines, triangles, circles; etc.

slide-107
SLIDE 107

Goranko

Many-sorted first-order structures and languages

Often the domain of discourse involves different sorts of objects, e.g., integers and reals; scalars and vectors; man and women; points, lines, triangles, circles; etc. The notion of first-order structures can be extended naturally to many-sorted structures, with cross-sort functions and predicates.

slide-108
SLIDE 108

Goranko

Many-sorted first-order structures and languages

Often the domain of discourse involves different sorts of objects, e.g., integers and reals; scalars and vectors; man and women; points, lines, triangles, circles; etc. The notion of first-order structures can be extended naturally to many-sorted structures, with cross-sort functions and predicates. These require many-sorted languages, with more complicated syntax and grammar.

slide-109
SLIDE 109

Goranko

Many-sorted first-order structures and languages

Often the domain of discourse involves different sorts of objects, e.g., integers and reals; scalars and vectors; man and women; points, lines, triangles, circles; etc. The notion of first-order structures can be extended naturally to many-sorted structures, with cross-sort functions and predicates. These require many-sorted languages, with more complicated syntax and grammar. Instead, we will only deal with single-sorted structures and languages, but will use unary predicates to identify the different sorts within a universal domain.