Fixpoint list_denote l : T :=
  match l with nil => b | x :: l' => g (f x) (list_denote l')
  end.Notation "'un'" := (@orp _).

Lemma listd_map_pred {C : Type} h (g : C -> pred B) l s (H : forall a, f a s -> g (h a) s) : listd f inter TT l s -> listd g inter TT (map h l) s.