# Functions
NewAlgorithm builds a dictionary algorithm that breaks up integers using the decomposer d and uses the sequence algorithm s to generate dictionary entries.
NewRunsAlgorithm constructs a RunsAlgorithm using the given sequence algorithm to generate addition sequences for run lengths.
RunsChain takes a chain for the run lengths and generates a chain for the runs themselves.
# Structs
Algorithm implements a general dictionary-based chain construction algorithm, as in [braueraddsubchains] Algorithm 1.26.
FixedWindow breaks integers into k-bit windows.
Hybrid is a mix of the sliding window and run length decomposition methods, similar to the "Hybrid Method" of [genshortchains] Section 3.3.
RunLength decomposes integers in to runs of 1s up to a maximal length.
RunsAlgorithm is a custom variant of the dictionary approach that decomposes a target into runs of ones.
SlidingWindow breaks integers into k-bit windows, skipping runs of zeros where possible.
Term represents the integer D * 2ᴱ.
# Interfaces
Decomposer is a method of breaking an integer into a dictionary sum.
# Type aliases
Sum is the representation of an integer as a sum of dictionary terms.