Multilinear Representation and Degree #
Every Boolean function f : (Fin n → Bool) → Bool has a unique multilinear
polynomial representation over ℤ. This file defines the Möbius coefficients
of that representation and the multilinear degree of f.
Main definitions #
LeanPoolSensitivity.indicator— the indicator assignment of a finite set of coordinates.LeanPoolSensitivity.boolToInt— the integer encoding of a Boolean value.LeanPoolSensitivity.BoolFun.moebius— the Möbius coefficientc_S(f) = ∑_{T ⊆ S} (-1)^{|S|-|T|} f(1_T).LeanPoolSensitivity.BoolFun.degree— the multilinear degree off.
The Möbius coefficient of f at S: the coefficient of the monomial
∏_{i ∈ S} x_i in the unique multilinear polynomial representing f,
computed by inclusion–exclusion as
c_S(f) = ∑_{T ⊆ S} (-1)^{|S|-|T|} f(1_T).
Equations
- f.moebius S = ∑ T ∈ S.powerset, (-1) ^ (S.card - T.card) * LeanPoolSensitivity.boolToInt (f (LeanPoolSensitivity.indicator T))