End maps''.
(*** MAP2 ***)
Section fun2_to_map2''.
Variable A B C : Setoid''.
Definition Map2'' := Map'' A (Map_setoid'' B C).
Variable f : A -> B -> C.
Definition Map2_congl_law'' :=
forall (b1 b2 : B) (a : A), b1 =_S'' b2 -> f a b1 =_S'' f a b2.
Definition Map2_congr_law'' :=
forall (a1 a2 : A) (b : B), a1 =_S'' a2 -> f a1 b =_S'' f a2 b.
Definition Map2_cong_law'' :=
forall (a1 a2 : A) (b1 b2 : B),
a1 =_S'' a2 -> b1 =_S'' b2 -> f a1 b1 =_S'' f a2 b2.
Hypothesis pgcl : Map2_congl_law''.
Hypothesis pgcr : Map2_congr_law''.

(* Specifications: *)
Lemma Map2_map_law1'' : forall a : A, Map_law'' (f a).
Canonical Structure Map2_map1'' (a : A) := Build_Map'' (Map2_map_law1'' a).
Lemma Map2_map_law2'' : Map_law'' Map2_map1''.
Definition Build_Map2'' : Map2'' := Build_Map'' Map2_map_law2''.