(* Require Import VST.msl.alg_seplog. *)
Local Open Scope logic.
Hint Extern 0 (_ |-- _) => match goal with |- ?A |-- ?B => constr_eq A B; simple apply derives_refl end.
(* Hint Resolve @derives_refl.    too expensive sometimes when it fails . . . *)
Ltac solve_andp' :=
first [ apply derives_refl
| apply andp_left1; solve_andp'
| apply andp_left2; solve_andp'].
Ltac solve_andp := repeat apply andp_right; solve_andp'.

(* Specifications: *)
Lemma TT_right {A}{NA: NatDed A}: forall P:A, P |-- TT.
Lemma FF_left {A}{NA: NatDed A}: forall P, FF |-- P.
Hint Resolve @TT_right: norm.