Query budgets for contiguous recovery #
The bookkeeping charges the entire remaining-candidate list whenever find? is invoked,
including its unvisited suffix after the first successful query. It therefore bounds every
actual split-query call. It is proof bookkeeping, not a trace stored by the native program.
Failure is sticky and completed blocks issue no further queries.
Upper charge for extension queries: one full remaining-list scan per nonempty search.
The only carried simulated state is the same optional block as in advance.
Instances For
Twice the charged queries is bounded by the triangular potential of remaining candidates, without a feasibility, validity or successful-search premise.
Extension-query charge for the actual starting singleton and actual fiber iteration count.
Instances For
Charged split queries in the actual outer recovery traversal. Completed fixed vertices and
failed states issue no more calls. Each split graph is computed and discarded by advance.
Instances For
Degree potentials add across the outer fold because successful steps keep the original listed graph. This is independent of all algebraic/topological completeness obligations.
Distinct listed vertices own disjoint dart fibers, so their total degree is at most 2m,
including raw graphs with undeclared endpoints, loops and parallel listed edges.
The initial query plus all charged extension scans is at most 1+2m² on general all-free
graphs, and hence also on any mixture of complete fixed/free vertices.
Previously fixed vertices charge zero even while other complete orders are recovered.
Every selected white incidence dart has an even binary index, retaining its occurrence.
Original CSP recovery charges at most 1+m² queries. Constraint-side words are already
complete, so only white vertices contribute, with one white end per actual occurrence.