Finite history domains and query bounds for normalization #
A constructive enumeration, including repetitions, of every word of bounded length.
Equations
- GenLimit.FiniteWitness.boundedWords S 0 = {[]}
- GenLimit.FiniteWitness.boundedWords S n.succ = insert [] (Finset.image (fun (p : α × List α) => p.1 :: p.2) (S ×ˢ GenLimit.FiniteWitness.boundedWords S n))
Instances For
theorem
GenLimit.FiniteWitness.mem_boundedWords
{α : Type u_1}
[DecidableEq α]
{S : Finset α}
{n : ℕ}
{q : List α}
:
theorem
GenLimit.FiniteWitness.Candidate.congr_oracle
{α : Type u_1}
[DecidableEq α]
[Encodable α]
{F G : List α → α}
{S : Finset α}
{n k : ℕ}
(h : ∀ q ∈ boundedWords S (2 * n), F q = G q)
(p q : List α)
:
theorem
GenLimit.FiniteWitness.sampleRun_congr_oracle
{α : Type u_1}
[DecidableEq α]
[Encodable α]
{F G : List α → α}
{S : Finset α}
{n : ℕ}
(h : ∀ q ∈ boundedWords S (2 * n), F q = G q)
(k : ℕ)
:
theorem
GenLimit.FiniteWitness.normalized_finite_query_bound
{α : Type u_1}
[DecidableEq α]
[Encodable α]
{F G : List α → α}
(S : Finset α)
(h : ∀ q ∈ boundedWords S (2 * S.card), F q = G q)
:
One finite set of oracle inputs, fixed by S alone, determines the normalized output.