src/HOLCF/ex/Fix2.ML
author paulson
Tue, 10 Dec 1996 15:08:57 +0100
changeset 2371 c5dc6f8b385b
parent 1461 6bcb44e4d6e5
child 9265 35aab1c9c08c
permissions -rw-r--r--
Now target "test" builds and tests TFL
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1461
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
     1
(*  Title:      HOLCF/ex/Fix2.ML
1274
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
     2
    ID:         $Id$
1461
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
     3
    Author:     Franz Regensburger
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
     4
    Copyright   1995 Technische Universitaet Muenchen
1274
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
     5
*)
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
     6
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
     7
open Fix2;
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
     8
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
     9
val lemma1 = prove_goal Fix2.thy "fix = gix"
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
    10
 (fn prems =>
1461
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    11
        [
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    12
        (rtac ext_cfun 1),
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    13
        (rtac antisym_less 1),
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    14
        (rtac fix_least 1),
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    15
        (rtac gix1_def 1),
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    16
        (rtac gix2_def 1),
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    17
        (rtac (fix_eq RS sym) 1)
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    18
        ]);
1274
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
    19
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
    20
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
    21
val lemma2 = prove_goal Fix2.thy "gix`F=lub(range(%i. iterate i F UU))"
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
    22
 (fn prems =>
1461
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    23
        [
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    24
        (rtac (lemma1 RS subst) 1),
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    25
        (rtac fix_def2 1)
6bcb44e4d6e5 expanded tabs
clasohm
parents: 1274
diff changeset
    26
        ]);
1274
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
    27
ea0668a1c0ba added 8bit pragmas
regensbu
parents:
diff changeset
    28