fn ternary_apply<T>(
args: (&Bdd, &Bdd, &Bdd),
flips: (Option<BddVariable>, Option<BddVariable>, Option<BddVariable>),
flip_out_if: Option<BddVariable>,
terminal_lookup: T
) -> Bdd where
T: Fn(Option<bool>, Option<bool>, Option<bool>) -> Option<bool>,