Hint Resolve eqFalseLeaf_empty eqTrueLeaf_full emptyTree_canonical_falseLeaf
fullTree_canonical_trueLeaf.
(* Show that shareTreeOrd is a preorder (reflexive and transitive). *)

(* Specifications: *)
Lemma shareTreeOrd_refl : forall x,
shareTreeOrd x x.
Lemma shareTreeOrd_trans_leaf : forall x1 b x3,
shareTreeOrd x1 (Leaf b) ->
shareTreeOrd (Leaf b) x3 ->
shareTreeOrd x1 x3.
Lemma shareTreeOrd_trans : forall x1 x2 x3,
shareTreeOrd x1 x2 -> shareTreeOrd x2 x3 -> shareTreeOrd x1 x3.