Reactive Systems: Modelling, Specification and Verification - Cs.ioc.ee
Reactive Systems: Modelling, Specification and Verification - Cs.ioc.ee
Reactive Systems: Modelling, Specification and Verification - Cs.ioc.ee
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
4.2. TARSKI’S FIXED POINT THEOREM 89<br />
4.2 Tarski’s fixed point theorem<br />
Now that we have some familiarity with posets <strong>and</strong> complete lattices, we are in a<br />
position to state <strong>and</strong> prove Tarski’s fixed point theorem—Theorem 4.1. As you will<br />
s<strong>ee</strong> in due course, this apparently very abstract result plays a key role in computer<br />
science because it is a general tool that allows us to make sense of recursively<br />
defined objects. If you are interested in the uses of the theorem rather than in the<br />
reason why it holds, you can safely skip the proof of Theorem 4.1 on first reading.<br />
None of the future applications of that result in this textbook depend on its proof,<br />
<strong>and</strong> you should f<strong>ee</strong>l fr<strong>ee</strong> to use it as a ‘black box’.<br />
In the statement of Tarski’s fixed point theorem, <strong>and</strong> in the applications to<br />
follow, the collection of monotonic functions will play an important role. We now<br />
proc<strong>ee</strong>d to define this type of function for the sake of completeness.<br />
Definition 4.4 [Monotonic functions <strong>and</strong> fixed points] Let (D, ⊑) be a poset. A<br />
function f : D → D is monotonic iff d ⊑ d ′ implies that f(d) ⊑ f(d ′ ), for all<br />
d, d ′ ∈ D.<br />
An element d ∈ D is called a fixed point of f iff d = f(d). <br />
For example, the function f : 2 N → 2 N defined, for each X ⊆ N, by<br />
f(X) = X ∪ {1, 2}<br />
is monotonic. The set {1, 2} is a fixed point of f because<br />
f({1, 2}) = {1, 2} ∪ {1, 2} = {1, 2} .<br />
Exercise 4.6 Can you give another example of a fixed point of f? Can you characterize<br />
all of the fixed points of that function? Argue for your answers. <br />
Exercise 4.7 Consider the function that is like f above, but maps the set {2} to<br />
{1, 2, 3}. Is such a function monotonic? <br />
As another example, consider the poset<br />
⊤<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
0 <br />
<br />
1<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
⊥