(* Check that the analysis of projectable rel's in an evar instance is up to
aliases *)
RequireImport TestSuite.list.
Definition compose (A B C : Type) (g : B -> C) (f : A -> B) : A -> C := fun x : A => g(f x).
Definition map_fuse' : forall (A B C : Type) (g : B -> C) (f : A -> B) (xs : list A),
(map g (map f xs)) = map (compose _ _ _ g f) xs
:= fun A B C g f =>
(fix loop (ys : list A) {struct ys} := match ys as ys return (map g (map f ys)) = map (compose _ _ _ g f) ys with
| nil => refl_equal nil
| cons x xs => match loop xs in eq _ a return eq _ (cons (g (f x)) a) with
| refl_equal => refl_equal (map g (map f (x :: xs))) end end).
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.