Language generation in the limit: basic definitions #
This file fixes a countable universe ℕ and an indexed family of languages.
The family is indexed, rather than represented as a set of sets, because the
Kleinberg--Mullainathan algorithm depends on the enumeration order and permits
repeated languages.
@[reducible, inline]
A language over the countable universe ℕ.
Equations
Instances For
@[reducible, inline]
An indexed family of languages. Repeated languages are permitted.
Equations
Instances For
A stream is an exact presentation of L when its range is exactly L.
Equations
- GenLimit.Presents stream L = (Set.range stream = L)
Instances For
The set of observations strictly before time t.
Equations
- GenLimit.sample stream t = Finset.image stream (Finset.range t)
Instances For
Candidate i is consistent with all observations strictly before t.
Equations
- GenLimit.Consistent C stream t i = (↑(GenLimit.sample stream t) ⊆ C i)
Instances For
theorem
GenLimit.consistent_of_target_subset
{C : LanguageFamily}
{stream : ℕ → ℕ}
{z i t : ℕ}
(hP : Presents stream (C z))
(hsub : C z ⊆ C i)
:
Consistent C stream t i
Any candidate containing the presented target is consistent at every time.
theorem
GenLimit.presents_consistent
{C : LanguageFamily}
{stream : ℕ → ℕ}
{z t : ℕ}
(hP : Presents stream (C z))
:
Consistent C stream t z
theorem
GenLimit.eventually_not_consistent_of_not_subset
{C : LanguageFamily}
{stream : ℕ → ℕ}
{z i : ℕ}
(hP : Presents stream (C z))
(hbad : ¬C z ⊆ C i)
:
∃ (T : ℕ), ∀ (t : ℕ), T ≤ t → ¬Consistent C stream t i