§6, p. 470 — at most (b + 2)^q legal hidden sequences
ProvedObliviousRAM.LowerBound.card_hidden_leaccess-patterncountingoblivious-ramp2o-batch-pfp2ap2o-gran-per-chapterp2o-plan-paperp2o-v1
Fix a hand capacity and a visible sequence of accessed cells. Let range over hidden choices that, paired with , form a legal action sequence from the game's initial state. Then
At each access, the hidden choice is to take, do nothing, or place one of at most held balls. This bounds the number of action histories compatible with one visible pattern.
Formalization Note Hidden sequences are functions on a finite index type, and the count filters for legal runs. Hidden m includes a placement constructor for every ball, but legality restricts it to the balls currently held.
Preamble
import Mathlib import Definitions.Def_ObliviousRAM_LowerBound_Game
Formal statement
namespace ObliviousRAM.LowerBound
open Classical
theorem card_hidden_le {b m : ℕ} (V : List (Fin m)) :
(Finset.univ.filter fun H : Fin V.length → Hidden m =>
Legal b (List.ofFn fun i => (V.get i, H i))).card ≤ (b + 2) ^ V.length := by sorry
end ObliviousRAM.LowerBound
Source
Goldreich and Ostrovsky, Software protection and simulation on oblivious RAMs, J. ACM 43 (1996), p. 470, §6, proof of THEOREM 6.1, hidden-action observation; https://doi.org/10.1145/233551.233553
Human review
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.