Repository navigation
Heaviest-term certified lower bound on exact common information - #55
Merged
Merged
Conversation
Any exact decomposition with heaviest term T = t q r^T has entropy h(t) + (1 - t) H(rest), the rest decomposing (P - T)/(1 - t) with atoms at most t/(1 - t). Branching over boxes of (q, r, t) and bounding the rest by coverage of certified caps on the remainder's upper envelope (with the least concave majorant and the atom cap) gives a lower bound on G; Kumar, Li & El Gamal's cardinality bound gives t >= 1/(2^min - 1). generative_model runs it after the exact stage when the certified lower is below the estimate and |S+| + |S-| <= 7. On three 3 x 3 survey joints it certifies G to within 1e-5 of the estimate, closing ((0,1),(2,.),(0,1)). Co-authored-by: Cursor <cursoragent@cursor.com>
…st upper So a closed bracket certifies: ((0,1),(2,.),(0,1)) now reports [0.9335075, 0.9335082] with certified True (it stopped 1.3e-6 short before). Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
New module
sofic.generators.exact_ci_boundswithheaviest_term_bound, a certified lower bound on (\operatorname{G}[X : Y]) obtained by branching on the heaviest term of the decomposition.mu1_vertexand the spectral caps of that envelope.capped_coverage_entropyturns those caps and the atom cap into an entropy lower bound, taking the least concave majorant of the caps first; plain greedy partial sums are not valid. The objective is concave in (t), so each box is evaluated at its two endpoints.generative_modelruns it after the exact stage, with 15% of the remaining budget, when the certified lower is still below the exact-common-information estimate and (|S^+| + |S^-| \le 7). It aims within half the certification tolerance of the best upper, so a bracket that closes is reported as certified.Results
On the three survey joints whose lower bound was below the exact-common-information estimate (all 3 × 3):
((0,1),(2,·),(0,1))((0,1),(2,1),(0,·))((0,1),(0,2),(0,1))This takes the 3-state benchmark from 18 to 19 certified.
Test plan
tests/test_exact_ci_bounds.py:ruff check,ruff format --check,ty check(no errors),sphinx-build -WMade with Cursor