theorem F1map_id: "F1map id id = id" by (rule F.map_id0)
theorem F2map_id: "F2map id = id" by (rule F.map_id0)
theorem F1map_comp: "F1map (f1 o g1) (f2 o g2) = F1map f1 f2 o F1map g1 g2" by (unfold F.map_comp0[symmetric] o_id) (rule refl)
theorem F2map_comp: "F2map (f o g) = F2map f o F2map g" by (unfold F.map_comp0[symmetric] o_id) (rule refl)
theorem F1map_cong: "[∧z. z ∈ F1set1 x ==> f1 z = g1 z; ∧z. z ∈ F1set2 x ==> f2 z = g2 z] ==> F1map f1 f2 x = F1map g1 g2 x" apply (rule F.map_cong0) apply (rule refl) apply assumption apply assumption done
theorem F2map_cong: "[∧z. z ∈ F2set x ==> f z = g z]==> F2map f x = F2map g x" apply (rule F.map_cong0) apply (rule refl) apply (rule refl) apply assumption done
theorem F1set1_natural: "F1set1 o F1map f1 f2 = image f1 o F1set1" by (rule F.set_map0(2))
theorem F1set2_natural: "F1set2 o F1map f1 f2 = image f2 o F1set2" by (rule F.set_map0(3))
theorem F2set_natural: "F2set o F2map f = image f o F2set" by (rule F.set_map0(3))
abbreviation Fin :: "'a1 set ==> 'a2 set ==> 'a3 set ==> (('p, 'a1, 'a2, 'a3) F) set"where "Fin A1 A2 A3 ≡ {x. Fset1 x ⊆ A1 ∧ Fset2 x ⊆ A2 ∧ Fset3 x ⊆ A3}"
abbreviation F1in :: "'a2 set ==> 'a3 set ==> (('p, 'a1, 'a2, 'a3) F) set"where "F1in A1 A2 ≡ {x. F1set1 x ⊆ A1 ∧ F1set2 x ⊆ A2}"
lemma F1in_alt: "F1in A2 A3 = Fin UNIV A2 A3" by (tactic ‹BNF_Comp_Tactics.kill_in_alt_tac @{context}›)
abbreviation F2in :: "'a3 set ==> (('p, 'a1, 'a2, 'a3) F) set"where "F2in A ≡ {x. F2set x ⊆ A}"
lemma F2in_alt: "F2in A3 = Fin UNIV UNIV A3" by (tactic ‹BNF_Comp_Tactics.kill_in_alt_tac @{context}›)
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.