fact: Fixpoint mapo (elt elt' : Type)(f : key -> elt -> option elt')(m : t elt) : t elt' := match m with | Leaf _ => Leaf _ | Node _ l x d r => match f x d with | Some d' => join (mapo f l) x d' (mapo f r) | None => concat (mapo f l) (mapo f r) end end.
imports: Coq(Bool PeanoNat BinInt FunInd Int) Coq(Orders OrdersFacts OrdersLists) MMaps(Utils Interface OrdList GenTree)