Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions research/format-limits/MANIFEST.sha256
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
31f6e8be64f321cc58730c4fbbdba0d2f7f8b704fb3d5da23303e219d754c47d DEPENDS.json
c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4 LICENSE
d16991367957b1de0cb3c9d4b61667482c3d4985903f15846051c65812c81611 NOTICE.md
0fa0d6b2df96ddc06b876c41c5fa8d2335b97f36bc8f17d1371296d23199c263 README.md
1bcd80c1cd61fddae9f3a7f00fc9d1c796410408251e576600e94c19b16b1e5e README.md
ecdc9cb66e0631cd311ffae9c742dd1173efb99803a537778c76cdd4ea0bda1e SOURCES.json
810e9c5c3222811ee5d4b52b3429f7700ab578836f76418bada521bea98b1001 data/ceiling/gap568-inputs.json
5445f842587ab968c5001491e6479e7cc691b5114ab234652ce25b9272e2092f data/census/anchors.json
Expand All @@ -18,8 +18,8 @@ cde64e210720e0cafbea5a242ee3747d3f34447bfdbc53c62114d6c34c71feeb data/vendor/pr
6f99cffd73076a768d39c21bf97ced42b6a5d3228b1dcef79d6f072dd35c0ee5 data/vendor/pr569/width7-eight-FULL-WORD.json.gz
ee0fecf86bddcc5f4e675c60fbd5c572bd48269368a37a38c070346eefa3dd4a data/vendor/pr571/combined-eight-local-FULL-WORD.json.gz
6a080563ee39cc2c1c527bb6fb9c822253a7ee7202b7c5e53030e5526f973817 requirements.txt
d763514fc92933875b8cef8535b881cae4536937918f2a3a5d8dc87dda207dff scripts/a1_ceiling_roots.py
1628325b8c15519a6fb5850461344b90a88d950948d8c47d8d19c00a95c17a1d scripts/a2_ceiling_sup.py
7ef64e261cbcc5ff69c67653264d0448d1c004bf6b879314fc2814f45274d331 scripts/a1_ceiling_roots.py
3a6ab0ad504b6e306ade332974d9e0a6226b39ee3cc378eda642367e9ce9214f scripts/a2_ceiling_sup.py
1dc82914bf5a6ee5d1f27ea5cfbe404b83279c327cac2f56142a47a443a87159 scripts/a3_axioms.py
b2e90cbb329bfebd954166637ed04488479dd7acca32e0c6102d4a3631c347f4 scripts/a4_gap.py
6479c189696f53cc505febb2c81c4b69a5bf54f211ee4ae64ff841041244b060 scripts/a5_scope_multipliers.py
Expand Down
2 changes: 1 addition & 1 deletion research/format-limits/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ is increasing with fixed point s0, so κ ≤ X/(1 + X) with X = min(X_bit*, X_cx

Roots are rational-interval brackets of width < 10⁻¹⁵; the upper end is the certified value.

- **κ ≤ 5.1594938·10⁻³ < 5.1595·10⁻³**; the complex side binds. The bit-only corollary is c/(1 + c) ≤ 5.9647·10⁻³.
- **κ ≤ 5.1594939·10⁻³ < 5.1595·10⁻³**; the complex side binds. The bit-only corollary is c/(1 + c) ≤ 5.964704·10⁻³.
- **The supremum over s is at s = 5** on both units. For odd s = 7..401, the certified D_s/Cost_s stays below X(5);
the largest values are 5.2311·10⁻³ (bit) and 4.5292·10⁻³ (complex), both at s = 7. For s ≥ 403 a tail bound applies:
Cost_s/v ≥ 2Σ_{p<K} 2pa·ln(m/(2pa)) ≥ 4a·Σ_{p<K} p ln(K/p) (using m > 2Ka), and
Expand Down
11 changes: 6 additions & 5 deletions research/format-limits/scripts/a1_ceiling_roots.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,9 @@
'cx-120/72': {3: 3.5307429201300307e-3, 5: 4.535607180902823e-3, 7: 4.059761375276634e-3,
9: 3.6334780884322328e-3, 11: 3.2929429181725836e-3, 13: 3.0181922014469375e-3},
}
KAPPA_CEILING = 5.1595e-3 # rev. 2, complex binds
KAPPA_BIT_ONLY = 5.9647e-3 # bit-only corollary c/(1+c)
KAPPA_CEILING = Fr('0.0051595') # rev. 2 headline, complex binds
KAPPA_FINE = Fr('0.0051594939') # outward display of the complex ceiling
KAPPA_BIT_ONLY = Fr('0.005964704') # outward display of the bit-only corollary c/(1+c)
KAPPA_REV1 = 4.5151e-3 # superseded rev. 1 value (x = 3/5)
FRONTIER = {'bit': 1.733052823330162e-3, 'cx': 0.00159868506668458107128} # #555 c (s = 9), #568 b (s = 9)
HEADROOM_S9 = {'bit': 2.658, 'cx': 2.499}
Expand All @@ -56,9 +57,9 @@
xb, xc = tab['bit-111/63'][5]['hi'], tab['cx-112/64'][5]['hi']
Xmin = min(xb, xc)
kap = Xmin / (1 + Xmin)
check('A1.kappa-ceiling', xc < xb and near(kap, KAPPA_CEILING, 7),
'X_bit* %.5e, X_cx* %.5e (complex binds); kappa <= X/(1+X) = %.7e' % (xb, xc, float(kap)))
check('A1.kappa-bit-only', near(xb / (1 + xb), KAPPA_BIT_ONLY, 7), 'c/(1+c) <= %.7e' % float(xb / (1 + xb)))
check('A1.kappa-ceiling', xc < xb and kap <= KAPPA_FINE < KAPPA_CEILING,
'X_bit* %.5e, X_cx* %.5e (complex binds); kappa <= %s' % (xb, xc, KAPPA_FINE))
check('A1.kappa-bit-only', xb / (1 + xb) <= KAPPA_BIT_ONLY, 'c/(1+c) <= %s' % KAPPA_BIT_ONLY)
x1 = min(tab['bit-120/72'][5]['hi'], tab['cx-120/72'][5]['hi'])
check('A1.rev1-superseded', near(x1 / (1 + x1), KAPPA_REV1, 7),
'the x = 3/5 scope gives %.7e; the punctured units have x = 63/111, 64/112 < 3/5' % float(x1 / (1 + x1)))
Expand Down
8 changes: 5 additions & 3 deletions research/format-limits/scripts/a2_ceiling_sup.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,15 @@

for name, (h, cst, v) in UNITS.items():
x = Fr(cst, v)
x5 = X(5, h, 1, x)['hi']
x5_box = X(5, h, 1, x)
x5 = x5_box['hi']
x5_lo = x5_box['lo']
worst, sworst, allbelow = Fr(0), None, True
for s in range(7, 402, 2):
prof, m, D = profile(s, h, 1, x)
clo, _ = cost_iv(prof, m)
ub = D / clo
allbelow &= ub < x5
allbelow &= ub < x5_lo
if ub > worst:
worst, sworst = ub, s
ew, es = EXPECTED_WORST[name]
Expand All @@ -36,7 +38,7 @@
K = 201
s = 2 * K + 1
tail = float(1 - x) * s / (4 * a * (K * K / 4 - K / math.e - K / 2))
check('A2.tail.' + name, tail < float(x5) and near(tail, EXPECTED_TAIL[name], 7),
check('A2.tail.' + name, tail < float(x5_lo) and near(tail, EXPECTED_TAIL[name], 7),
'analytic tail bound at s = 403: %.3e (decreasing in s)' % tail)
bad = [K for K in range(2, 5001) if sum(p * math.log(K / p) for p in range(1, K)) < K * K / 4 - K / math.e - K / 2]
check('A2.tail-inequality', not bad, 'sum_{p<K} p ln(K/p) >= K^2/4 - K/e - K/2 for K = 2..5000')
Expand Down
Loading