lemma eq_fst_iff: "a = fst p \ (\b. p = (a, b))" by (cases p) auto
lemma eq_snd_iff: "b = snd p \ (\a. p = (a, b))" by (cases p) auto
lemma ex_neg_all_pos: "((\x. P x) \ Q) \ (\x. P x \ Q)" by standard blast+
lemma hypsubst_in_prems: "(\x. y = x \ z = f x \ P) \ (z = f y \ P)" by standard blast+
lemma isl_map_sum: "isl (map_sum f g s) = isl s" by (cases s) simp_all
lemma map_sum_sel: "isl s \ projl (map_sum f g s) = f (projl s)" "\ isl s \ projr (map_sum f g s) = g (projr s)" by (cases s; simp)+
lemma set_sum_sel: "isl s \ projl s \ setl s" "\ isl s \ projr s \ setr s" by (cases s; auto intro: setl.intros setr.intros)+
lemma rel_sum_sel: "rel_sum R1 R2 a b = (isl a = isl b \
(isl a \<longrightarrow> isl b \<longrightarrow> R1 (projl a) (projl b)) \<and>
(\<not> isl a \<longrightarrow> \<not> isl b \<longrightarrow> R2 (projr a) (projr b)))" by (cases a b rule: sum.exhaust[case_product sum.exhaust]) simp_all
lemma isl_transfer: "rel_fun (rel_sum A B) (=) isl isl" unfolding rel_fun_def rel_sum_sel by simp
¤ 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.0.1Bemerkung:
(vorverarbeitet)
¤
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 ist noch experimentell.