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

Lemma listd_foldl_pred h c0 l s (H : forall a x, f a s -> f x s -> f (h x a) s) : f c0 s -> listd f inter TT l s -> f (fold_left h l c0) s.