Small polynomial-time string functions #
A few string functions that polynomial-time constructions throughout the library
build on: a ruler of polynomial length, an emptiness flag, and dropping the
leading bit. Each is one application of the FP closure rules of
Complexitylib.Classes.Containments.Internal.FPBridge, which this module
re-exports.
Main definitions #
Complexity.polyRuler— a ruler whose length is a polynomial in the input lengthComplexity.emptyFlag— whether a string is empty, as a one-bit flagComplexity.dropOne— a string without its leading bit
Main results #
Complexity.polyRulerFn_mem_FP,Complexity.emptyFlagFn_mem_FP,Complexity.dropOneFn_mem_FP— all three are polynomial-time
Rulers of polynomial length #
A ruler whose length is a polynomial in the input length.
Equations
Instances For
@[simp]
Emptiness and the leading bit #
Is the string empty, as a flag.