Definition bool_fun_if (x : BDDvar) (bf bf' : bool_fun) : bool_fun :=
fun vb : var_binding => ifb (vb x) (bf vb) (bf' vb).

Lemma bool_fun_if_preserves_eq :
forall (x : BDDvar) (bf1 bf2 bf1' bf2' : bool_fun),
bool_fun_eq bf1 bf1' ->
bool_fun_eq bf2 bf2' ->
bool_fun_eq (bool_fun_if x bf1 bf2) (bool_fun_if x bf1' bf2').