From mathcomp.ssreflect Require Import seq.
Definition merge_func {A} (f1 f2:Z -> option A):
(BinNums.Z -> option A):=
fun ofs => if f1 ofs then f1 ofs else f2 ofs.

Lemma xmap_compose:
forall A B C t f1 f2 p,
@PTree.xmap B C f2 (@PTree.xmap A B f1 t p) p =
(@PTree.xmap A C (fun p x => f2 p (f1 p x)) t p).