Weak approximate counting -- proof internals #
theorem
Complexity.ApproximateCounting.Weak.selectedLevel_mem_trueLevels_internal
{domainWidth : ℕ}
{responses : Level domainWidth → Bool}
(hnonempty : (trueLevels responses).Nonempty)
:
theorem
Complexity.ApproximateCounting.Weak.le_selectedLevel_of_mem_internal
{domainWidth : ℕ}
{responses : Level domainWidth → Bool}
{level : Level domainWidth}
(hlevel : level ∈ trueLevels responses)
:
theorem
Complexity.ApproximateCounting.Weak.response_selectedLevel_eq_true_of_nonempty_internal
{domainWidth : ℕ}
{responses : Level domainWidth → Bool}
(hnonempty : (trueLevels responses).Nonempty)
:
theorem
Complexity.ApproximateCounting.Weak.estimate_eq_zero_of_cardinality_eq_zero_internal
{domainWidth cardinality : ℕ}
{responses : Level domainWidth → Bool}
(haccurate : ResponsesAccurate responses)
(hzero : cardinality = 0)
:
theorem
Complexity.ApproximateCounting.Weak.estimate_eq_pow_of_cardinality_pos_internal
{domainWidth cardinality : ℕ}
{responses : Level domainWidth → Bool}
(haccurate : ResponsesAccurate responses)
(hpositive : 0 < cardinality)
:
theorem
Complexity.ApproximateCounting.Weak.selectedLevel_response_eq_true_of_cardinality_pos_internal
{domainWidth cardinality : ℕ}
{responses : Level domainWidth → Bool}
(haccurate : ResponsesAccurate responses)
(hpositive : 0 < cardinality)
:
theorem
Complexity.ApproximateCounting.Weak.estimate_le_sixteen_mul_internal
{domainWidth cardinality : ℕ}
{responses : Level domainWidth → Bool}
(haccurate : ResponsesAccurate responses)
:
theorem
Complexity.ApproximateCounting.Weak.estimate_isFactorApproximation_internal
{domainWidth cardinality : ℕ}
{responses : Level domainWidth → Bool}
(hcardinality : cardinality ≤ 2 ^ domainWidth)
(haccurate : ResponsesAccurate responses)
:
IsFactorApproximation 16 cardinality (estimate responses)