Documentation

Complexitylib.Circuits.Monotone.Internal

Monotone Boolean formulas -- proof internals #

theorem Complexity.MonotoneFormula.eval_eq_of_agree_internal {N : ℕ} (formula : MonotoneFormula N) {x y : BitString N} (agree : ∀ index ∈ formula.vars, x index = y index) :
eval x formula = eval y formula
theorem Complexity.MonotoneFormula.essentialInputs_subset_vars_internal {N : ℕ} (formula : MonotoneFormula N) :
(essentialInputs fun (input : BitString N) (x : Fin 1) => eval input formula) ⊆ formula.vars
theorem Complexity.MonotoneFormula.card_essentialInputs_le_leaves_of_computes_internal {N : ℕ} (formula : MonotoneFormula N) (function : BitString N → Bool) (computes : formula.Computes function) :
(essentialInputs fun (input : BitString N) (x : Fin 1) => function input).card ≤ formula.leaves