Section establishing_membership_inversion.
(* A restricted definition of membership, not up to equivalence *)
Reserved Notation "x ⋷ y" (at level 70, no associativity).
Inductive bt_restr_mem : bt -> bt -> Prop :=
| in_btrm_0 : forall s t,            s ⋷ s⪧t
| in_btrm_1 : forall s t u, s ⋷ u -> s ⋷ t⪧u
where "s ⋷ t" := (bt_restr_mem s t).
Hint Constructors bt_restr_mem : core.
Fact btrm_inv u s t : u ⋷ s⪧t <-> u = s \/ u ⋷ t.
Notation "s ≾ t" := (forall u, u ⋷ s -> exists v, v ⋷ t /\ u ≈ v).
Fact bt_rincl_refl s : s ≾ s.
Hint Resolve bt_rincl_refl bt_rincl_trans : core.

Lemma bte_rincl s t : s ≈ t -> s ≾ t.