Native linear-workspace compact-graph routines #
All runtime numbers use binary encodings. The table and register indices are fixed, so the algorithms below use finitely many linear-workspace arithmetic routines. These certificates charge no copy of the original input word: the edge routine receives only its length, two IDs, and the single supplied symbol. The time bound is unrestricted.
The routines take the radix as a computed argument, so they serve every radix, such as one stored by the caller.
Main results #
Turing.MultiTapeNTM.ConfigurationGraph.readRegisters_budget,Turing.MultiTapeNTM.ConfigurationGraph.valid_budget,Turing.MultiTapeNTM.ConfigurationGraph.nextRegisters_budget,Turing.MultiTapeNTM.ConfigurationGraph.matchesEntry_budget,Turing.MultiTapeNTM.ConfigurationGraph.fitsB_budget: register-level space-budget routines.Turing.MultiTapeNTM.ConfigurationGraph.queryIndex_budget: compute the only input query.Turing.MultiTapeNTM.ConfigurationGraph.edgeWithSymbol_budget: evaluate an edge locally.Turing.MultiTapeNTM.ConfigurationGraph.bad_budget: recognize an accepting halted vertex.Turing.MultiTapeNTM.ConfigurationGraph.overflow_budget: recognize a step leaving the radix.Turing.MultiTapeNTM.ConfigurationGraph.vertexBound_budget,Turing.MultiTapeNTM.ConfigurationGraph.startID_budget: the size and the start of the graph.
Reading any fixed register preserves a common space budget.
The ambient graph size is computable from the radix.
Syntactic validity of a packed ID preserves a common space budget.
Updating any fixed register by a fixed native action preserves a common space budget.
Checking whether decoded registers match a fixed table entry preserves a common space budget.
Checking that every register fits below the radix preserves a common space budget.
Local edge evaluation preserves any budget covering the short arguments.
The overflow test preserves any budget covering the short arguments.
Compute the only input query in native deterministic linear workspace.
Recognize the accepting halted vertices in native deterministic linear workspace.
Compute the input-independent start ID from the radix.