(*D11*)
 Definition sub (x y : canonTree) : option canonTree :=
  match eq_dec (glb x y) y with
  | left _ => Some (glb x (comp y))
  | right _ => None
  end.

Lemma decompose_equal: forall a b aL aR bL bR, decompose a = (aL,aR) -> decompose b = (bL,bR) -> (a = b <-> aL = bL /\ aR = bR).