Predicates and quantifiers - PowerPoint PPT Presentation

1 / 28
About This Presentation
Title:

Predicates and quantifiers

Description:

All these statements indicate how frequently certain things are true. ... consists of three people Garry, who is 30; Ellen who is 20; and Martin who ... – PowerPoint PPT presentation

Number of Views:224
Avg rating:3.0/5.0
Slides: 29
Provided by: patbr1
Category:

less

Transcript and Presenter's Notes

Title: Predicates and quantifiers


1
Predicates and quantifiers
  • Chapter 8
  • Formal Specification using Z

2
Predicates
  • A predicate is a logical statement that depends
    on a value or values. When a predicate is applied
    to a particular value it becomes a proposition.
    For example
  • prime(x)
  • depends on some numeric value of x
  • prime(7)
  • is a true proposition the only devisors of 7 are
    1 and 7.
  • Prime(6) is a false proposition 6 can be divided
    by 2,3.
  • A predicate can be viewed as a propositional
    function, that for some set of arguments returns
    to either true or false

3
Quantifiers
  • Consider the following statements
  • All cats have tails.
  • Some people like cake.
  • Everyone gets a break once in a while.
  • All these statements indicate how frequently
    certain things are true. In predicate calculus we
    use quantifiers in this context.

4
Universal Quantifier
  • The Universal Quantifier is written
  • A
  • and is pronounced for all. It is often used in
    the form
  • A declaration constraint predicate
  • Which states the for the declarations given,
    restricted to certain values (the constraint),
    the predicate holds.

5
Universal Quantifier
  • The constraint may be omitted.
  • The declaration introduces a typical element that
    is then optionally constrained or restricted in
    some some way For example
  • A i N i lt 10 i2 lt 100
  • Which states that for all natural numbers less
    than 10 their square is less that 100 .

Constraint
Predicate
Separators
6
Universal Quantifier
  • A universal quantifier can be viewed as a chain
    of conjunctions. So
  • A i N i lt 10 i2 lt 100
  • is equivalent to
  • 02 lt 100 L 12 lt 100 L . . L 92 lt 100
  • If the set of values over which the variable is
    universally quantified is empty, then the
    quantification is defined as true.
  • A i N 0 i lt 0 i2 lt 100
  • is true.

7
Existential Quantifier
  • The Existential Quantifier is written
  • E
  • and is pronounced there exists. It is often
    used in the form
  • E declaration constraint predicate
  • The declaration introduces a typical element that
    is then optionally constrained or restricted in
    some way For example
  • E i N i lt 10 i2 lt 100

8
Existential Quantifier
  • There may be more than one value of i for which
    this is true, in the previous example there are
    ten values, 0 to 9, that satisfy the predicate.
    Another example
  • Even(x) ? E k Z k 2 x
  • The existential quantifier can be considered as a
    chain of disjunctions (ors). If the set of values
    over which the variable is existentially
    quantified is empty, then the quantification is
    defined as false.
  • E i N 0 i lt 0 i2 lt 100

9
Unique Quantifier
  • The unique quantifier is similar to the
    existential quantifier except that it states that
    there exists only one value for which the
    predicate is true. It is written as
  • E1
  • An example
  • E1i N i lt 1 0 i2 lt 100 ? i2 gt 80

10
Unique Quantifier
  • The previous unique quantifier example is
    equivalent to saying that the predicate holds for
    i, but there is no value j for which it holds
    This is written as
  • E1i N i lt 1 0 i2 lt 100 ? i2 gt 80
  • ?
  • E1i N i lt 1 0 i2 lt 100 ? i2 gt 80
  • ? (Ej N j lt 1 0 i j j2 lt 100 ? j2 gt
    80)

11
Counting Quantifier
  • Some notations use a counting quantifier that
    counts for how many values of a variable the
    predicate holds. In Z this is not needed, we use
    set comprehension instead.

12
Set Comprehension
  • Set Comprehension
  • It is possible to give the value of a set by
    giving a condition (a predicate) which must hold
    true for every member of the set. The general
    form is
  • declaration constraint expression
  • SetA xZ Even(x) xx

13
Set Comprehension
  • declaration constraint expression
  • The declaration is for a typical element and it
    gives the elements name and type.
  • The constraint restricts the possible values of
    the typical element. It is a logical expression
    which must be true for that value of the typical
    element to be included.
  • The expression indicates the value to be held in
    the set

14
Set Comprehension
  • SetA xZ Even(x) xx
  • The above defines a set of type integer. The
    value of x is constrained to be even. Each
    element will be the square of an even integer.
  • SetB xZ Even(x) x
  • The above defines a set of type integer. The
    value of x is constrained to be even. Each
    element will be an even integer.

15
Ranges of numbers
  • We have already introduced m..n. This is
    shorthand for
  • iZ m i ? n i i

16
Relationship between Logic and Set Theory
  • There is a direct relationship between some of
    the operations of logic and operations on sets
  • X any set S,T PX
  • S ? T xX x? S ? x ? T x
  • S ? T xX x? S ? x ? T x
  • S \ T xX x? S ? x ? T x

17
Summary of Quantifier
  • A xT P
  • for all x of type T, P is true.
  • E xT P
  • there exists an x of type T, such that P is
    true.
  • E1 x T P
  • there exists a unique x of type T, such that P
    is true.

18
Summary of Quantifier
  • D P t
  • The set of ts declared by D where P is true.

19
Mixing Quantifiers
  • What is the precedence or associativity used. Is
    forAll(x),forAll(y) equivalent to
    forAll(y),forAll(x)?
  • Assuming standard notation, they are read left to
    right two universal quantifiers following one
    another commute (just like multiplication
    abba).

20
Mixing Quantifiers
  • Likewise, if you have two existential
    quantifiers, they commute, because
  • Exists(x),Exists(y), p(x,y)
  • is true if and only if
  • Exists(y),Exists(x), p(x,y)
  • is true.

21
Mixing Quantifiers
  • But if you have mixed universal and existential
    quantifiers, you have to be careful. If you write
  • A(x), E(y), p(x,y)
  • that means that for each x, there exists a y,
    which may depend on x, for which p(x,y) is true.
  • But if you write
  • E(y), A(x), p(x,y)
  • you are saying that there is a y which works for
    any given x (including yx), that make p(x,y)
    true.

22
Mixing Quantifiers
23
Mixing Quantifiers
24
Exercises
  • Let O(x,y) be the predicate (or propositional
    function) x is older than y. The domain of
    discourse consists of three people Garry, who is
    30 Ellen who is 20 and Martin who is 35. Write
    each of the following propositions in words and
    state whether they are true or false.

25
Exercises
26
Exercises
27
Exercise
28
Exercise
Write a Comment
User Comments (0)
About PowerShow.com