| 6093 |      1 | (*  Title:      ZF/QUniv.thy
 | 
| 0 |      2 |     ID:         $Id$
 | 
| 1478 |      3 |     Author:     Lawrence C Paulson, Cambridge University Computer Laboratory
 | 
| 0 |      4 |     Copyright   1993  University of Cambridge
 | 
|  |      5 | 
 | 
| 6093 |      6 | A small universe for lazy recursive types.
 | 
| 0 |      7 | *)
 | 
|  |      8 | 
 | 
| 2469 |      9 | QUniv = Univ + QPair + mono + equalities +
 | 
| 3923 |     10 | 
 | 
| 6112 |     11 | (*Disjoint sums as a datatype*)
 | 
|  |     12 | rep_datatype 
 | 
|  |     13 |   elim		sumE
 | 
|  |     14 |   induct	TrueI
 | 
|  |     15 |   case_eqns	case_Inl, case_Inr
 | 
|  |     16 | 
 | 
|  |     17 | (*Variant disjoint sums as a datatype*)
 | 
|  |     18 | rep_datatype 
 | 
|  |     19 |   elim		qsumE
 | 
|  |     20 |   induct	TrueI
 | 
|  |     21 |   case_eqns	qcase_QInl, qcase_QInr
 | 
|  |     22 | 
 | 
| 6093 |     23 | constdefs
 | 
|  |     24 |   quniv :: i => i
 | 
| 6112 |     25 |    "quniv(A) == Pow(univ(eclose(A)))"
 | 
| 0 |     26 | 
 | 
|  |     27 | end
 |