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

Lemma listd_partition_pred h l xs ys s (H : partition h l = (xs, ys)) : listd f inter TT l s -> listd f inter TT xs s /\ listd f inter TT ys s.