Prove2Me
Navigate
DiscoverCollectionsFormalpediaGalaxyBlogsUsersMomentumMy Missions+
Prove2Me
Log in
← Formalpedia

Theorem 1, pp. 13–14 — for b1 < n*, b2 < m*, equilibria use exactly b1 detectors and b2 attacks, and are the solutions of (LP̄1), (LP̄2)

Proved
NetInspect.Rate.theorem_1

by mikedeng1 · Oct 21, 2026 · Mathlib 0df444a (Lean v4.33.1)

linear-programmingnash-equilibriump2o-batch-pfp2ap2o-gran-per-chapterp2o-plan-paperp2o-v1security-gamezero-sum-game

Let G\mathcal GG be a detection model, b1<n∗b_1<n^*b1​<n∗ and 1≤b2<m∗1\le b_2<m^*1≤b2​<m∗. Then:

  1. in every Nash equilibrium (σ1∗,σ2∗)(\sigma^{1*},\sigma^{2*})(σ1∗,σ2∗) of Γ(b1,b2)\Gamma(b_1,b_2)Γ(b1​,b2​),
∣S∣=b1  for all S∈supp⁡(σ1∗),∣T∣=b2  for all T∈supp⁡(σ2∗)(10), (11);|S|=b_1\ \text{ for all } S\in\operatorname{supp}(\sigma^{1*}),\qquad |T|=b_2\ \text{ for all } T\in\operatorname{supp}(\sigma^{2*})\qquad\text{(10), (11)};∣S∣=b1​  for all S∈supp(σ1∗),∣T∣=b2​  for all T∈supp(σ2∗)(10), (11);
  1. an inspection strategy σ1∈Δ(A1)\sigma^1\in\Delta(\mathcal A_1)σ1∈Δ(A1​) is an equilibrium strategy (some σ2\sigma^2σ2 makes (σ1,σ2)(\sigma^1,\sigma^2)(σ1,σ2) an equilibrium) if and only if it vanishes outside Aˉ1={S:∣S∣=b1}\bar{\mathcal A}_1=\{S:|S|=b_1\}Aˉ1​={S:∣S∣=b1​} and its restriction to Aˉ1\bar{\mathcal A}_1Aˉ1​ is an optimal solution of
(LP‾1)min⁡σ1∈Δ(Aˉ1) max⁡T∈Aˉ2U(σ1,T);(\overline{\mathrm{LP}}_1)\qquad \min_{\sigma^1\in\Delta(\bar{\mathcal A}_1)}\ \max_{T\in\bar{\mathcal A}_2}U(\sigma^1,T);(LP1​)σ1∈Δ(Aˉ1​)min​ T∈Aˉ2​max​U(σ1,T);
  1. an attack strategy σ2∈Δ(A2)\sigma^2\in\Delta(\mathcal A_2)σ2∈Δ(A2​) is an equilibrium strategy if and only if it vanishes outside Aˉ2={T:∣T∣=b2}\bar{\mathcal A}_2=\{T:|T|=b_2\}Aˉ2​={T:∣T∣=b2​} and its restriction to Aˉ2\bar{\mathcal A}_2Aˉ2​ is an optimal solution of
(LP‾2)max⁡σ2∈Δ(Aˉ2) min⁡S∈Aˉ1U(S,σ2).(\overline{\mathrm{LP}}_2)\qquad \max_{\sigma^2\in\Delta(\bar{\mathcal A}_2)}\ \min_{S\in\bar{\mathcal A}_1}U(S,\sigma^2).(LP2​)σ2∈Δ(Aˉ2​)max​ S∈Aˉ1​min​U(S,σ2).

Both players must use all their resources in equilibrium, and the equilibria can be computed from linear programs over the smaller action sets Aˉ1,Aˉ2\bar{\mathcal A}_1,\bar{\mathcal A}_2Aˉ1​,Aˉ2​.

Formalization Note "The NE of Γ\GammaΓ can be obtained by solving (LP‾1)(\overline{\mathrm{LP}}_1)(LP1​) and (LP‾2)(\overline{\mathrm{LP}}_2)(LP2​)" is read as parts 2 and 3: the equilibrium strategies of each player are exactly the extensions by zero of the optimal solutions of the corresponding barred program. b1<n∗b_1<n^*b1​<n∗ and b2<m∗b_2<m^*b2​<m∗ are the hypotheses of the theorem; b2≥1b_2\ge 1b2​≥1 is added (with b2=0b_2=0b2​=0 every profile is an equilibrium and (10) fails).

Preamble
import Mathlib
import Definitions.Def_BlottoLP_Flow_ZeroSum
import Definitions.Def_NetInspect_Rate_Model
Formal statement
namespace NetInspect.Rate

open Finset DetectionModel

/-- Theorem 1 (pp. 13–14): if `b1 < n*` and `1 ≤ b2 < m*`, every equilibrium of `Γ(b1, b2)`
randomizes over positionings of size exactly `b1` (10) and attack plans of size exactly `b2`
(11); and the equilibrium strategies of each player are exactly the strategies supported on
`Ā1` (resp. `Ā2`) whose restriction is an optimal solution of (LP̄1) (resp. (LP̄2)). -/
theorem theorem_1 {V E : Type*} [Fintype V] [DecidableEq V] [Fintype E] [DecidableEq E]
    (G : DetectionModel V E)
    {b1 b2 : ℕ} (hb1 : b1 < G.nStar) (hb2 : 1 ≤ b2) (hb2m : b2 < G.mStar) :
    (∀ (σ1 : Act V b1 → ℝ) (σ2 : Act E b2 → ℝ), G.IsNE b1 b2 σ1 σ2 →
      (∀ S : Act V b1, 0 < σ1 S → S.1.card = b1) ∧
      (∀ T : Act E b2, 0 < σ2 T → T.1.card = b2)) ∧
    (∀ σ1 : Act V b1 → ℝ, (∃ σ2 : Act E b2 → ℝ, G.IsNE b1 b2 σ1 σ2) ↔
      ((∀ S : Act V b1, S.1.card ≠ b1 → σ1 S = 0) ∧ G.IsOptLP1bar b1 b2 (restrictEx σ1))) ∧
    (∀ σ2 : Act E b2 → ℝ, (∃ σ1 : Act V b1 → ℝ, G.IsNE b1 b2 σ1 σ2) ↔
      ((∀ T : Act E b2, T.1.card ≠ b2 → σ2 T = 0) ∧ G.IsOptLP2bar b1 b2 (restrictEx σ2))) := by sorry

end NetInspect.Rate
Source
Dahan, Sela & Amin, Network Inspection for Detecting Strategic Attacks, arXiv:1705.00349v4, pp. 13–14, Theorem 1, (10)–(11), (LP̄1)–(LP̄2)
Human review
  • Endorsed by Shuze Chen · Oct 21, 2026

    Confirmed by the moderator at approval.

  • Endorsed by mikedeng1 · Oct 21, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paperProve2Me Team
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me