The modulus of continuity of circuit complexity #
Over a finite carrier U and a complete interpretation I, the modulus of continuity of circuit
complexity, ω_{I,n,m}(r) (Cslib.Circuits.complexityModulus), is the largest change
|C_I(f) - C_I(g)| in the complexity of two functions with n inputs and m outputs that differ
on at most r inputs, that is, at Hamming distance at most r as functions of their inputs. It is
a natural number, it is attained (Cslib.Circuits.exists_dist_complexity_eq_complexityModulus), it
increases with r and vanishes at r = 0, and it is subadditive,
ω(r + s) ≤ ω(r) + ω(s) (Cslib.Circuits.complexityModulus_add_le): a change on r + s inputs
is a change on r inputs followed by a change on s inputs. In particular ω(r) ≤ r ω(1).
A function with one output is at the Hamming distance of its single value
(Cslib.Circuits.hammingDist_single), so the modulus for one output measures changes of
single-valued functions. For the De Morgan basis the modulus at the square root of the number of
inputs is located in Complexity.Computability.Circuit.Boolean.Continuity.
Main definitions #
Cslib.Circuits.complexityModulus: the modulus of continuity of circuit complexity.
Main results #
Cslib.Circuits.dist_complexity_le_complexityModulus,Cslib.Circuits.complexityModulus_le_iff,Cslib.Circuits.exists_dist_complexity_eq_complexityModulus: the modulus is the least bound and is attained.Cslib.Circuits.complexityModulus_mono,Cslib.Circuits.complexityModulus_zero,Cslib.Circuits.complexityModulus_add_le,Cslib.Circuits.complexityModulus_le_mul: monotone, zero at zero, subadditive.Cslib.Circuits.hammingDist_single: the Hamming distance of functions with one output.
References #
A function with one output is at the Hamming distance of its single value.
The modulus of continuity ω_{I,n,m}(r) of circuit complexity: the largest change
|C_I(f) - C_I(g)| in the complexity of two functions with n inputs and m outputs over a
finite carrier U that differ on at most r inputs.
Instances For
Functions that differ on at most r inputs have complexities at most ω(r) apart.
The modulus is the least bound on the change in complexity over changes on at most r
inputs.
The modulus is attained.
The modulus increases with the number of changed inputs.
Changing no input does not change the complexity.
The modulus is subadditive: ω(r + s) ≤ ω(r) + ω(s).
The change in complexity is at most ω(1) per changed input.