Ltac destr_bool :=
 intros; destruct_all bool; simpl in *; trivial; try discriminate.(** Interpretation of booleans as propositions *)

Definition Is_true (b:bool) :=
  match b with
    | true => True
    | false => False
  end.

Lemma not_false_is_true : forall b:bool, b <> false -> b = true.