Section Bool.
Variable A : Type.
Variable f : A -> bool.
(** find whether a boolean function can be satisfied by an elements of the list. *)
Fixpoint existsb (l:list A) : bool :=
match l with
| nil => false
| a::l => f a || existsb l
end.

Lemma existsb_app : forall l1 l2,
existsb (l1++l2) = existsb l1 || existsb l2.