Theorem 3.10 — the Net mechanism is (α, δ)-useful once α ≥ O((VCDIM(C) log|X| log(1/α) + log(1/δ))/(εα²n))
ProvedPrivateRelease.NetMechanism.theorem_3_10There is an absolute constant with the following property. Let be a finite data universe, a class of predicates of VC-dimension , the input size, , and . If
then a minimum -net for the counting queries of exists, and the Net mechanism with privacy parameter run on any such is -useful for : for every input , with probability at least its output satisfies for every .
This is the paper's main utility theorem: ignoring computation, any class of counting queries of polynomial VC-dimension over a discretized universe admits a differentially private (Property 3.3) synthetic-database release whose error decays with the database size .
Formalization Note The paper writes ; the is an absolute constant quantified before every other binder. The paper obtains from Corollary 3.5's at , so the mechanism runs on a minimum -net and the factor is absorbed into . The hypotheses , (so ) are disclosed exclusions. Privacy is Property 3.3 and is not restated. Neighbours differ in exactly one entry; logarithms are natural.
import Mathlib import Definitions.Def_HighDimProb_Chaining_VcDim import Definitions.Def_PrivateRelease_NetMechanism_ExpMech
namespace PrivateRelease.NetMechanism
/-- Theorem 3.10 (p. 10): there is an absolute constant `c > 0` such that for every finite data
universe `X`, every class `C` of counting queries of VC-dimension `d ≥ 1`, every
input size `n ≥ 1`, every `ε > 0`, `0 < δ ≤ 1` and `0 < α ≤ 1/2` with
`α ≥ (c/(ε α² n)) (d log|X| log(1/α) + log(1/δ))`, a minimum `α/2`-net for `C` exists and the
Net mechanism run on any minimum `α/2`-net is `(α, δ)`-useful for `C` on inputs of size `n`. -/
theorem theorem_3_10 :
∃ c : ℝ, 0 < c ∧ ∀ (X : Type) [Fintype X] (C : Set (X → Bool)) (d n : ℕ) (ε α δ : ℝ),
HighDimProb.Chaining.vcDim C = (d : ℕ∞) → 1 ≤ d → 1 ≤ n →
0 < ε → 0 < α → α ≤ 1 / 2 → 0 < δ → δ ≤ 1 →
c / (ε * α ^ 2 * n) *
(d * Real.log (Fintype.card X : ℝ) * Real.log (1 / α) + Real.log (1 / δ)) ≤ α →
(∃ N : Finset (Database X), IsMinNet (countingClass C) (α / 2) N) ∧
∀ N : Finset (Database X), IsMinNet (countingClass C) (α / 2) N →
Useful (countingClass C) α δ (netMech (n := n) (countingClass C) ε N) := by sorry
end PrivateRelease.NetMechanism
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.