equal
deleted
inserted
replaced
|
1 (* Title: HOLCF/ex/Fix2.thy |
|
2 Author: Franz Regensburger |
|
3 |
|
4 Show that fix is the unique least fixed-point operator. |
|
5 From axioms gix1_def,gix2_def it follows that fix = gix |
|
6 *) |
|
7 |
|
8 theory Fix2 |
|
9 imports HOLCF |
|
10 begin |
|
11 |
|
12 axiomatization |
|
13 gix :: "('a->'a)->'a" where |
|
14 gix1_def: "F$(gix$F) = gix$F" and |
|
15 gix2_def: "F$y=y ==> gix$F << y" |
|
16 |
|
17 |
|
18 lemma lemma1: "fix = gix" |
|
19 apply (rule cfun_eqI) |
|
20 apply (rule below_antisym) |
|
21 apply (rule fix_least) |
|
22 apply (rule gix1_def) |
|
23 apply (rule gix2_def) |
|
24 apply (rule fix_eq [symmetric]) |
|
25 done |
|
26 |
|
27 lemma lemma2: "gix$F=lub(range(%i. iterate i$F$UU))" |
|
28 apply (rule lemma1 [THEN subst]) |
|
29 apply (rule fix_def2) |
|
30 done |
|
31 |
|
32 end |