Greedy slot-score arithmetic and streaming candidate selection #
In §4.4, Lemma 4.5 of [OAI26c] (printed pp. 30–32), schedules a_v, d_f ∈ [r]^Q are chosen
one slot at a time over K = r ^ Q candidates per slot. Executing bestVariableLabel and
bestFactorLabel on a native machine clears denominators to bounded integers and streams
0 .. r ^ Q - 1 in polynomial workspace.
Encoded ComputableInPolyTime, NativeCertificate, ComputableInO, and ComputableInPolySpace
results in Cslib.BalancedSchedules govern the concrete list/integer algorithms (decodeLabelWord,
clearedJointScore, updateSlotSchedules, readSlotSchedule, streamBestSlotLabel,
streamBestSlotCertificate), while labelWordEquiv, wordToSchedule, scheduleToWord,
candidateScheduleList, edgesOfFin, partialScheduleListOfFin, and candidateSlotScore are
unencoded typed specification bridges. Total fallback conventions: wordToSchedule clamps digits
≥ r and missing positions to 0; streamBestSlotLabel returns List.replicate Q 0 when
r ^ Q = 0; clearedPartialCollision, updateSlotSchedules, and readSlotSchedule use total
List.getD / List.set defaults on out-of-bounds indices; and scoreDenom replaces zero
normalizers numEdges * C or Q * n by 1.
Main definitions #
decodeLabelWord,labelWordEquiv,wordToSchedule,scheduleToWord,candidateScheduleList: radix-rcandidate codec andFin Q → Fin rschedule bridges.clearedPartialCollision,clearedIncidenceCollisions,clearedIncidencePotential,clearedGroupCollisions,clearedGroupPotential,scoreDenom,clearedJointScore: cleared-integer collision and joint score arithmetic.edgesOfFin,partialScheduleListOfFin,encPartialSchedules,encScoreParams,encSlotSelectAcc,StreamSlotIn,encStreamSlotIn: list bridges and machine encodings.updateSlotSchedules,readSlotSchedule,SlotSelectAcc,selectSlotStep,streamBestSlotLabel,candidateSlotScore,streamBestSlotCertificate: streamingIndexFoldsingle-slot selector and its uniformNativeCertificate.
Main results #
decodeLabelWord_ofDigits,ofDigits_decodeLabelWord,wordToSchedule_decodeLabelWord_eq_finFunctionFinEquiv_symm,computableInPolyTime_decodeLabelWord: radix bijection and poly-time decoding.clearedJointScore_le,length_encNat_clearedJointScore_le,normalizedPartialScore_eq_clearedJointScore_div,clearedJointScore_lt_iff_normalizedPartialScore_lt,clearedJointScore_le_iff_normalizedPartialScore_le,computableInPolyTime_clearedJointScore: logarithmic bit bound, exact rational score equivalence, and poly-time score evaluation.exists_min_index_streamBestSlotLabel,streamBestSlotLabel_false_eq_bestVariableLabel,streamBestSlotLabel_true_eq_bestFactorLabel: first-minimizer andbestVariableLabel/bestFactorLabelbridges.length_encSlotSelectState_run_le,streamBestSlotCertificate_bounds,computableInO_streamBestSlotLabel,computableInPolySpace_streamBestSlotLabel: all-prefix live-state bit bound,O((r ^ Q + 1) * poly(|input|))native time, and polynomial workspace.
References #
- OpenAI, The Exponential Time Hypothesis is False, §4.4, Lemma 4.5, pp. 30–32.
Section 1: Radix-r candidate word decoder and bijections #
Binary bit-length bound for r ^ Q: at most Q * |encNat r| + 1.
Decode binary candidate index j into the length-Q radix-r word of digits via
Cslib.Radix.digit ([OAI26c], Lemma 4.5, p. 31).
Instances For
Every digit of decodeLabelWord r Q j is strictly less than r whenever 1 ≤ r.
For any j < r ^ Q (even when r = 0, Q = 0), every digit of decodeLabelWord r Q j is
< max r 1.
Decoding Nat.ofDigits r w for any bounded word w recovers w.
Nat.ofDigits r on decodeLabelWord r Q j recovers j for all j < r ^ Q (including Q = 0
and r = 1).
wordToSchedule composed with decodeLabelWord agrees identically with the standard
bijection finFunctionFinEquiv.symm : Fin (r ^ Q) ≃ (Fin Q → Fin r).
Encoded bit-length bound for any word of length Q with digits < max r 1.
decodeLabelWord r Q j is computable in polynomial time from binary r, unary Q, and
binary j.
Section 2: Cleared-integer collision scores and exact rational bridge #
Cleared-integer collision count for two indices i, j over a label space of size cardL:
returns cardL when i = j or both assigned values agree, 0 when both are assigned and distinct,
and 1 when at least one slot is unassigned (1 = cardL * (1 / cardL)).
Instances For
Common positive integer denominator clearing normalizedPartialScore across all candidate
evaluations without rational GCD reductions ([OAI26c], Lemma 4.5, p. 31).
Instances For
Logarithmic bit-length bound on encNat (clearedJointScore ...) matching Lemma 4.5's
O(log(2D) + log(2M) + log(2n) + log(2Q) + log(2 + b + w)) bit bound (p. 31), independent of
(varSched, facSched).
Exact rational collision identity on whole-word schedules (L = Fin Q → Fin r).
Exact cleared-integer score identity: for any 1 ≤ r, normalizedPartialScore equals
clearedJointScore / scoreDenom identically (including when E = 0, C = 0, Q = 0, or
n = 0).
Strict < on clearedJointScore : ℕ is equivalent to < on normalizedPartialScore : ℚ.
Non-strict ≤ on clearedJointScore : ℕ is equivalent to ≤ on
normalizedPartialScore : ℚ.
Polynomial-time certificate for clearedJointScore #
clearedJointScore is computable in polynomial time in its encoded inputs.
Section 3: Streaming IndexFold slot selector and rational minimizer bridges #
Live accumulator for inner IndexFold.run candidate streaming over j ∈ 0 .. r ^ Q - 1.
Instances For
Inner IndexFold.run callback evaluating candidate decodeLabelWord r Q j under
clearedJointScore and retaining the first strict minimizer (candScore < best.2).
Instances For
Stream j ∈ 0 .. r ^ Q - 1 via Cslib.GenericRAM.IndexFold.run to select the first candidate
word minimizing clearedJointScore for slot, falling back to List.replicate Q 0 if r ^ Q = 0
([OAI26c], Lemma 4.5, p. 31).
Instances For
First-minimizer characterization of streamBestSlotLabel when 0 < r ^ Q.
Updating partialScheduleListOfFin at index k.val with a valid length-Q word w commutes
with Function.update via wordToSchedule.
Exact agreement between streamBestSlotLabel at variable slot (false, v.val) and
bestVariableLabel over candidateScheduleList hr Q.
Exact agreement between streamBestSlotLabel at factor slot (true, f.val) and
bestFactorLabel over candidateScheduleList hr Q.
Section 4: All-prefix bit-length bounds, NativeCertificate, and ComputableInPolySpace #
Encoding of inner IndexFold accumulator SlotSelectAcc.
Instances For
Encoding of runtime inputs to streamBestSlotLabel.
Instances For
All-prefix live-state bit-length bound for the inner IndexFold.run selectSlotStep loop across
every visited prefix j ≤ r ^ Q (never multiplying workspace by r ^ Q).
updateSlotSchedules is computable in polynomial time.
readSlotSchedule is computable in polynomial time.
Uniform native machine certificate for single-slot candidate streaming streamBestSlotLabel.
Instances For
Trajectory-maximum time and polynomial-workspace bounds for streamBestSlotCertificate.
streamBestSlotLabel runs in O((r ^ Q + 1) * poly(|input|)) native time and polynomial
workspace.
streamBestSlotLabel runs in polynomial workspace (ComputableInPolySpace) without
materializing r ^ Q candidate words.