Definition fp (bef : bool_expr -> bool_expr) (be : bool_expr) :=
be_eq be (bef be).
Definition lfp_be (bef : bool_expr -> bool_expr) (be1 be : bool_expr) :=
fp bef be /\
be_le be1 be /\
(forall be' : bool_expr, fp bef be' -> be_le be1 be' -> be_le be be').
Definition lfp (bef : bool_expr -> bool_expr) (be : bool_expr) :=
fp bef be /\ (forall be' : bool_expr, fp bef be' -> be_le be be').

Lemma minus_n_m_le_n : forall n m : nat, n - m <= n.