(************************************************************************)

Fixpoint below_form (a : form) (i : Int) {struct a} : Prop :=
  match a with
  | Falsum => True
  | Atom j => Less j i
  | AndF a0 a1 => below_form a0 i /\ below_form a1 i
  | OrF a0 a1 => below_form a0 i /\ below_form a1 i
  | Imp a0 a1 => below_form a0 i /\ below_form a1 i
  end.Definition below_list (L : flist) (i : Int) :=
  forall a : form, In a L -> below_form a i.

Lemma max_int_of_form : forall a : form, {j : Int | below_form a j}.