| author | paulson | 
| Tue, 03 Aug 1999 13:06:16 +0200 | |
| changeset 7160 | 1135f3f8782c | 
| parent 5068 | fb28eaa07e01 | 
| child 12030 | 46d57d0290a2 | 
| permissions | -rw-r--r-- | 
| 
2841
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
1  | 
(* Title: HOLCF/Discrete0.ML  | 
| 
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
2  | 
ID: $Id$  | 
| 
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
3  | 
Author: Tobias Nipkow  | 
| 
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
4  | 
Copyright 1997 TUM  | 
| 
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
5  | 
|
| 
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
6  | 
Proves that 'a discr is a po  | 
| 
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
7  | 
*)  | 
| 
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
8  | 
|
| 5068 | 9  | 
Goalw [less_discr_def] "(x::('a::term)discr) << x";
 | 
| 3018 | 10  | 
by (rtac refl 1);  | 
| 
2841
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
11  | 
qed "less_discr_refl";  | 
| 
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
12  | 
|
| 5068 | 13  | 
Goalw [less_discr_def]  | 
| 
3323
 
194ae2e0c193
eliminated the constant less by the introduction of the axclass sq_ord
 
slotosch 
parents: 
3018 
diff
changeset
 | 
14  | 
  "!!x. [| (x::('a::term)discr) << y; y << z |] ==> x <<  z";
 | 
| 3018 | 15  | 
by (etac trans 1);  | 
16  | 
by (assume_tac 1);  | 
|
| 
2841
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
17  | 
qed "less_discr_trans";  | 
| 
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
18  | 
|
| 5068 | 19  | 
Goalw [less_discr_def]  | 
| 
3323
 
194ae2e0c193
eliminated the constant less by the introduction of the axclass sq_ord
 
slotosch 
parents: 
3018 
diff
changeset
 | 
20  | 
  "!!x. [| (x::('a::term)discr) << y; y << x |] ==> x=y";
 | 
| 3018 | 21  | 
by (assume_tac 1);  | 
| 
2841
 
c2508f4ab739
Added "discrete" CPOs and modified IMP to use those rather than "lift"
 
nipkow 
parents:  
diff
changeset
 | 
22  | 
qed "less_discr_antisym";  |