Section Properties.
Implicit Types x y : TVar.
Implicit Types xs ys : list TVar.
(* ---------------------------------------------------------------------- *)
(** *** Primary properties *)
(* ---------------------------------------------------------------------- *)
(** **** Properties of singulars *)
(* ---------------------------------------------------------------------- *)
(** **** Properties of concatenation *)
(* ---------------------------------------------------------------------- *)
(** **** Properties of get *)

Axiom get_concat_inv : forall A x y (v w : A) (E : gen_env A),
get x (E & (y ∶ v)) = Some w ->
(x = y /\ v = w) \/ (x <> y /\ get x E = Some w).