author | regensbu |
Fri, 06 Oct 1995 17:25:24 +0100 | |
changeset 1274 | ea0668a1c0ba |
parent 1168 | 74be52691d62 |
child 1479 | 21eb5e156d91 |
permissions | -rw-r--r-- |
1274 | 1 |
(* Title: HOLCF/ex/Loop.thy |
244 | 2 |
ID: $Id$ |
3 |
Author: Franz Regensburger |
|
4 |
Copyright 1993 Technische Universitaet Muenchen |
|
5 |
||
6 |
Theory for a loop primitive like while |
|
7 |
*) |
|
8 |
||
9 |
Loop = Tr2 + |
|
10 |
||
11 |
consts |
|
12 |
||
13 |
step :: "('a -> tr)->('a -> 'a)->'a->'a" |
|
14 |
while :: "('a -> tr)->('a -> 'a)->'a->'a" |
|
15 |
||
1168
74be52691d62
The curried version of HOLCF is now just called HOLCF. The old
regensbu
parents:
1150
diff
changeset
|
16 |
defs |
244 | 17 |
|
1168
74be52691d62
The curried version of HOLCF is now just called HOLCF. The old
regensbu
parents:
1150
diff
changeset
|
18 |
step_def "step == (LAM b g x. If b`x then g`x else x fi)" |
74be52691d62
The curried version of HOLCF is now just called HOLCF. The old
regensbu
parents:
1150
diff
changeset
|
19 |
while_def "while == (LAM b g. fix`(LAM f x. |
74be52691d62
The curried version of HOLCF is now just called HOLCF. The old
regensbu
parents:
1150
diff
changeset
|
20 |
If b`x then f`(g`x) else x fi))" |
244 | 21 |
|
22 |
end |
|
23 |