equal
deleted
inserted
replaced
39 consI: "[| a: A; b: B; h: A -||> B; a ~: domain(h) |] |
39 consI: "[| a: A; b: B; h: A -||> B; a ~: domain(h) |] |
40 ==> cons(<a,b>,h) : A -||> B" |
40 ==> cons(<a,b>,h) : A -||> B" |
41 type_intros Fin.intros |
41 type_intros Fin.intros |
42 |
42 |
43 |
43 |
44 subsection {* Finite powerset operator *} |
44 subsection {* Finite Powerset Operator *} |
45 |
45 |
46 lemma Fin_mono: "A<=B ==> Fin(A) <= Fin(B)" |
46 lemma Fin_mono: "A<=B ==> Fin(A) <= Fin(B)" |
47 apply (unfold Fin.defs) |
47 apply (unfold Fin.defs) |
48 apply (rule lfp_mono) |
48 apply (rule lfp_mono) |
49 apply (rule Fin.bnd_mono)+ |
49 apply (rule Fin.bnd_mono)+ |
130 apply (simp add: succ_def mem_not_refl [THEN cons_fun_eq]) |
130 apply (simp add: succ_def mem_not_refl [THEN cons_fun_eq]) |
131 apply (fast intro!: Fin.consI) |
131 apply (fast intro!: Fin.consI) |
132 done |
132 done |
133 |
133 |
134 |
134 |
135 (*** Finite function space ***) |
135 subsection{*Finite Function Space*} |
136 |
136 |
137 lemma FiniteFun_mono: |
137 lemma FiniteFun_mono: |
138 "[| A<=C; B<=D |] ==> A -||> B <= C -||> D" |
138 "[| A<=C; B<=D |] ==> A -||> B <= C -||> D" |
139 apply (unfold FiniteFun.defs) |
139 apply (unfold FiniteFun.defs) |
140 apply (rule lfp_mono) |
140 apply (rule lfp_mono) |