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
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
92 CHAPTER 4. THEORY OF FIXED POINTS<br />
For instance, the largest fixed point of the function f : 2 N → 2 N defined by<br />
f(X) = X ∪ {1, 2} is<br />
{X ⊆ N | X ⊆ X ∪ {1, 2}} = N .<br />
On the other h<strong>and</strong>, the least fixed point of f is<br />
{X ⊆ N | X ∪ {1, 2} ⊆ X} = {1, 2} .<br />
This follows because X ∪ {1, 2} ⊆ X means that X already contains 1 <strong>and</strong> 2, <strong>and</strong><br />
the smallest set with this property is {1, 2}.<br />
The following important theorem gives a characterization of the largest <strong>and</strong><br />
least fixed points for monotonic functions over finite complete lattices. We shall<br />
s<strong>ee</strong> in due course how this result gives an algorithm for computing the fixed points<br />
which will find application in equivalence checking <strong>and</strong> in the developments in<br />
Chapter 6.<br />
Definition 4.5 Let D be a set, d ∈ D, <strong>and</strong> f : D → D. For each natural number<br />
n, we define f n (d) as follows:<br />
f 0 (d) = d <strong>and</strong><br />
f n+1 (d) = f(f n (d)) .<br />
Theorem 4.2 Let (D, ⊑) be a finite complete lattice <strong>and</strong> let f : D → D be monotonic.<br />
Then the least fixed point for f is obtained as<br />
zmin = f m (⊥) ,<br />
for some natural number m. Furthermore the largest fixed point for f is obtained<br />
as<br />
for some natural number M.<br />
zmax = f M (⊤) ,<br />
Proof: We only prove the first statement as the proof for the second one is similar.<br />
As f is monotonic we have the following non-decreasing sequence<br />
⊥ ⊑ f(⊥) ⊑ f 2 (⊥) ⊑ . . . ⊑ f i (⊥) ⊑ f i+1 (⊥) ⊑ . . .