Unrestricted depth-three lower bound: reverse path recurrence #
Adapted from OpenAI's formalization at revision adc7f1241b42e322a6451854ab7e4b4c146bf78a.
Source: https://github.com/openai/math/blob/adc7f1241b42e322a6451854ab7e4b4c146bf78a/lean/OAI/Computability/DepthThree/ReversePathRecurrence.lean
Imports, namespaces, module visibility, documentation, and formatting are adapted for complexitylib. The source theorem statements and mathematical proofs are retained.
def
Complexity.DepthThreeLowerBound.reverseEligible
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
(scope : I → Finset V)
(violation : I → Bool)
(R : Finset V)
:
Finset I
The eligible choices at a reverse reconstruction step.
Equations
Instances For
@[simp]
theorem
Complexity.DepthThreeLowerBound.mem_reverseEligible
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
(scope : I → Finset V)
(violation : I → Bool)
(R : Finset V)
(i : I)
:
def
Complexity.DepthThreeLowerBound.ReverseChoice
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
(b : ℕ)
(scope : I → Finset V)
(violation : I → Bool)
(R : Finset V)
(i : I)
(D : Finset V)
:
A block and associated data selected during reverse reconstruction.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
Complexity.DepthThreeLowerBound.ReverseChoice.disjoint
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
{b : ℕ}
{scope : I → Finset V}
{violation : I → Bool}
{R : Finset V}
{i : I}
{D : Finset V}
(h : ReverseChoice b scope violation R i D)
:
Disjoint R D
theorem
Complexity.DepthThreeLowerBound.ReverseChoice.eligible_card_pos
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
{b : ℕ}
{scope : I → Finset V}
{violation : I → Bool}
{R : Finset V}
{i : I}
{D : Finset V}
(h : ReverseChoice b scope violation R i D)
:
noncomputable def
Complexity.DepthThreeLowerBound.reverseChoiceWeight
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
(α : ℝ)
(scope : I → Finset V)
(violation : I → Bool)
(R D : Finset V)
:
The weight assigned to a reverse reconstruction choice.
Equations
- Complexity.DepthThreeLowerBound.reverseChoiceWeight α scope violation R D = α ^ D.card / ↑(Complexity.DepthThreeLowerBound.reverseEligible scope violation R).card
Instances For
theorem
Complexity.DepthThreeLowerBound.reverseChoiceWeight_nonneg
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
{α : ℝ}
(hα : 0 ≤ α)
(scope : I → Finset V)
(violation : I → Bool)
(R D : Finset V)
:
def
Complexity.DepthThreeLowerBound.reverseBlockMass
{V : Type uDepth1}
(α : ℝ)
(b : ℕ)
(E : Finset V)
:
Total weight assigned to one reverse reconstruction block.
Equations
- Complexity.DepthThreeLowerBound.reverseBlockMass α b E = ∑ D ∈ Complexity.DepthThreeLowerBound.reverseBlocks b E, α ^ D.card
Instances For
theorem
Complexity.DepthThreeLowerBound.reverseBlockMass_eq_theta
{V : Type uDepth1}
(α : ℝ)
(b : ℕ)
(E : Finset V)
:
noncomputable def
Complexity.DepthThreeLowerBound.reverseOneStep
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
(α : ℝ)
(b : ℕ)
(scope : I → Finset V)
(violation : I → Bool)
(R : Finset V)
:
Sum of the weighted one-step reverse choices.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
Complexity.DepthThreeLowerBound.sum_reverseBlockMass_le
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
{α : ℝ}
(hα : 0 ≤ α)
(b k : ℕ)
(scope : I → Finset V)
(hscope : ∀ (i : I), (scope i).card ≤ k)
(violation : I → Bool)
(R : Finset V)
:
∑ i ∈ reverseEligible scope violation R, reverseBlockMass α b (scope i) ≤ ↑(reverseEligible scope violation R).card * reverseTheta α b k
def
Complexity.DepthThreeLowerBound.reverseTotal
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
(α : ℝ)
(b : ℕ)
(scope : I → Finset V)
(violation : I → Bool)
:
Total weight of reverse reconstructions of the specified length.
Equations
- One or more equations did not get rendered due to their size.
- Complexity.DepthThreeLowerBound.reverseTotal α b scope violation 0 x✝ = 1
Instances For
@[simp]
theorem
Complexity.DepthThreeLowerBound.reverseTotal_zero
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
(α : ℝ)
(b : ℕ)
(scope : I → Finset V)
(violation : I → Bool)
(R : Finset V)
:
theorem
Complexity.DepthThreeLowerBound.reverseTotal_succ_of_nonempty
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
(α : ℝ)
(b : ℕ)
(scope : I → Finset V)
(violation : I → Bool)
(s : ℕ)
(R : Finset V)
(h : (reverseEligible scope violation R).Nonempty)
:
reverseTotal α b scope violation (s + 1) R = (∑ i ∈ reverseEligible scope violation R,
∑ D ∈ reverseBlocks b (scope i), α ^ D.card * reverseTotal α b scope violation s (R ∪ D)) / ↑(reverseEligible scope violation R).card
theorem
Complexity.DepthThreeLowerBound.reverseTotal_succ_of_empty
{V : Type uDepth1}
{I : Type uDepth2}
[instDecidableEqV : DecidableEq V]
[Fintype I]
(α : ℝ)
(b : ℕ)
(scope : I → Finset V)
(violation : I → Bool)
(s : ℕ)
(R : Finset V)
(h : reverseEligible scope violation R = ∅)
: