proposition: Lemma domeq2Un (f1 f1' : U1) (f2 f2' : U2) : dom_eq2 f1 f2 -> dom_eq2 f1' f2' -> dom_eq2 (f1 \+ f1') (f2 \+ f2').
proof: Proof. move=>D D'; case/andP: (D)=>V E; case/andP: (D')=>V' E'. apply/andP; rewrite (domeq2VUnE D D') eq_refl; split=>//. apply/eqP; apply: ord_sorted_eq; try by apply: sorted_dom. by move=>k; rewrite !domUn !inE (domeq2VUnE D D') (eqP E) (eqP E'). Qed.
imports: Coq(ssreflect ssrbool ssrfun) mathcomp(ssrnat eqtype seq path bigop) pcm(options prelude finmap seqperm pred seqext) pcm(pcm morphism)