Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Binary conditional entropy is bounded by the entropy of the error

Proved
QAlgorithms.Papers.Independent.Intakethird100.P94.binaryConditionalEntropy_S7

by Gohan · Nov 1, 2026 · Mathlib 0df444a (Lean v4.33.1)

prove2quantum

Let AAA and BBB be binary random variables with any normalized joint probability law. Let Q=Pr⁡[AeB]Q=\Pr[A e B]Q=Pr[AeB], and let h(t)=−tlog⁡2t−(1−t)log⁡2(1−t)h(t)=-t\log_2 t-(1-t)\log_2(1-t)h(t)=−tlog2​t−(1−t)log2​(1−t), with 0log⁡20=00\log_2 0=00log2​0=0. Then

H(B∣A)≤h(Q).H(B\mid A)\le h(Q).H(B∣A)≤h(Q).

The entropy is measured in bits, and a zero-probability conditioning event has weight zero. This bound converts observed binary disagreement probabilities into conditional-entropy upper bounds for the steering inequalities.

Preamble
import Definitions.Def_QAlgorithms_Papers_Independent_Intakethird100_P94
Formal statement
noncomputable section

namespace QAlgorithms.Papers.Independent.Intakethird100.P94

open MeasureTheory

open scoped ComplexConjugate

/-- arXiv:1109.1435v3, PDF p.6, (S7): for every normalized joint binary law,
H(B|A) <= h(Pr[A != B]), including zero-mass conditioning events. -/
theorem binaryConditionalEntropy_S7 (P : Bool → Bool → ℝ)
    (hNonneg : ∀ a b, 0 ≤ P a b)
    (hTotal : ∑ a : Bool, ∑ b : Bool, P a b = 1) :
    conditionalEntropyBits P ≤ QAlgorithms.binEntropy2 (binaryError P) := by sorry

end QAlgorithms.Papers.Independent.Intakethird100.P94

end
Source
One-sided Device-Independent Quantum Key Distribution: Security, feasibility, and the connection with steering, arXiv:1109.1435v3, PDF p. 6, Eq. (S7)
Read-back

What the Lean code literally says, in plain math · gpt-6.1-sol

For every real-valued array P(a,b)P(a,b)P(a,b), indexed by a,b∈B={0,1}a,b\in\mathbb B=\{0,1\}a,b∈B={0,1}, assume that P(a,b)≥0P(a,b)\ge0P(a,b)≥0 for every pair and that ∑a,bP(a,b)=1\sum_{a,b}P(a,b)=1∑a,b​P(a,b)=1. Put ma=∑bP(a,b)m_a=\sum_bP(a,b)ma​=∑b​P(a,b), let e=∑a≠bP(a,b)=P(0,1)+P(1,0)e=\sum_{a\ne b}P(a,b)=P(0,1)+P(1,0)e=∑a=b​P(a,b)=P(0,1)+P(1,0), and define h2(p)=−[pln⁡p+(1−p)ln⁡(1−p)]/ln⁡2h_2(p)=-[p\ln p+(1-p)\ln(1-p)]/\ln2h2​(p)=−[plnp+(1−p)ln(1−p)]/ln2, with 0ln⁡0=00\ln0=00ln0=0. Then

∑a∈B{0,ma=0,ma h2 ⁣(P(a,1)ma),ma≠0 ≤ h2(e).\sum_{a\in\mathbb B} \begin{cases} 0,&m_a=0,\\ m_a\,h_2\!\left(\dfrac{P(a,1)}{m_a}\right),&m_a\ne0 \end{cases} \ \le\ h_2(e).a∈B∑​⎩⎨⎧​0,ma​h2​(ma​P(a,1)​),​ma​=0,ma​=0​ ≤ h2​(e).

The assumptions allow zero rows and error probabilities e=0e=0e=0 or e=1e=1e=1; zero rows contribute zero.

Human review
  • Endorsed by Shuze Chen · Nov 1, 2026

    Confirmed by the moderator at approval.

  • Endorsed by Gohan · Nov 1, 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 paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me