Encodings of finite binary machine configurations #
The encoding stores the input, control, unary input position, work tapes, output and every query and answer buffer. Its length bound charges replies separately from the machine clock: a short oracle run may receive a long word.
Main definitions #
Turing.MultiTapeTM.encFiniteCfg: encode ordinary finite binary storage.Turing.MultiTapeTM.encChannels: encode the query buffer and answer tape of every channel.Turing.MultiTapeTM.encFiniteConfig: include the fixed family of oracle channels.
Main results #
Turing.MultiTapeTM.length_encFiniteConfig_le: linear encoded storage underSpaceBound.
References #
Adapts Computability/Probabilistic/Configuration.lean on the cslib crypto branch at
5ff69ca93402e7c947208dc56396d6d86203ccd8, reusing the existing finite configuration and encodings.
The oracle channels of a configuration, as a table in Fintype.equivFin order of the oracles.
Each entry is a pair: the framed pending request word, then the complete answer tape.
Instances For
The whole encoding is linear in input length, elapsed steps and the largest installed reply. The constant depends only on the fixed control, channel type and number of work tapes.