diff --git a/.github/workflows/c8-torus-vanishing-remainder.yml b/.github/workflows/c8-torus-vanishing-remainder.yml new file mode 100644 index 000000000..f01604880 --- /dev/null +++ b/.github/workflows/c8-torus-vanishing-remainder.yml @@ -0,0 +1,80 @@ +name: C8 torus vanishing remainder (certified replay) + +'on': + pull_request: + paths: + - 'frontiers/c8_torus_vanishing_remainder_20261001/**' + - '.github/workflows/c8-torus-vanishing-remainder.yml' + - 'imports/lifetime_parent_20260925/UNIFORM_MATRIX_CAP_AND_LIFETIME.md' + - 'imports/lifetime_parent_20260925/MARKED_CYLINDER_CAP_PROOF.md' + - 'imports/lifetime_parent_20260925/ERRATUM_CONGRUENCE.md' + - 'reviews/d1_section9_borel_repair_20260925/REPAIR.md' + - 'reviews/d1_chain_reconciliation_20260928/RECONCILIATION.md' + workflow_dispatch: + +permissions: + contents: read + +jobs: + certified-replay: + runs-on: ubuntu-latest + timeout-minutes: 120 + strategy: + fail-fast: false + matrix: + flags: ['-B -S', '-B -O -S'] + name: certified-replay (${{ matrix.flags }}) + steps: + - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 + with: + persist-credentials: false + - uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 + with: + python-version: '3.11.16' + - name: Verify manifest, main-resident pin and packet copies; replay the certificate; reject the mutants + env: + PYTHONDONTWRITEBYTECODE: '1' + FLAGS: ${{ matrix.flags }} + run: | + set -euo pipefail + python -B -S - <<'PY' + import hashlib, json, os, pathlib, subprocess, sys + root = pathlib.Path('frontiers/c8_torus_vanishing_remainder_20261001').resolve() + manifest = json.loads((root / 'SOURCE_FILES.json').read_text())['files'] + present = sorted(p.name for p in root.iterdir()) + if present != sorted([e['path'] for e in manifest] + ['SOURCE_FILES.json']): + raise ValueError('packet tree differs from manifest: ' + repr(present)) + def blob(data): + return hashlib.sha1(b'blob %d\0' % len(data) + data).hexdigest() + for entry in manifest: + path = root / entry['path'] + if pathlib.PurePosixPath(entry['path']).name != entry['path'] or path.is_symlink(): + raise ValueError('flat regular source required: ' + entry['path']) + data = path.read_bytes() + if len(data) != entry['bytes'] or hashlib.sha256(data).hexdigest() != entry['sha256'] or blob(data) != entry['git_blob']: + raise ValueError('source identity mismatch: ' + entry['path']) + pins = json.loads((root / 'SOURCE_MAP.json').read_text()) + for entry in pins['sources']: + if entry.get('current_required'): + data = pathlib.Path(entry['path']).read_bytes() + elif entry.get('packet_copy'): + data = (root / entry['packet_copy']).read_bytes() + else: + continue + if len(data) != entry['bytes'] or hashlib.sha256(data).hexdigest() != entry['sha256'] or blob(data) != entry['git_blob']: + raise ValueError('pinned source identity mismatch: ' + entry['path']) + flags = os.environ['FLAGS'].split() + script = str(root / 'theorem_v.py') + out = subprocess.run([sys.executable, *flags, script, '--check'], cwd=root, capture_output=True, timeout=3600) + if out.returncode != 0: + raise RuntimeError('--check failed: ' + out.stdout.decode()[-400:] + out.stderr.decode()[-400:]) + print(flags, out.stdout.decode().strip()) + muts = ('torus-const-only', 'exp-radius', 'no-lin', 'no-om-term', 'coupling-half') + procs = [subprocess.Popen([sys.executable, *flags, script, '--mutant', m], cwd=root, + stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL) for m in muts] + for m, p in zip(muts, procs): + if p.wait(timeout=3600) != 1: + raise RuntimeError('mutant ' + m + ' not rejected') + print(json.dumps({'scientific_effect': 'NONE', 'mutants_rejected': len(muts)})) + PY + git diff --exit-code diff --git a/frontiers/c8_torus_vanishing_remainder_20261001/NOTE.md b/frontiers/c8_torus_vanishing_remainder_20261001/NOTE.md new file mode 100644 index 000000000..8758ddf22 --- /dev/null +++ b/frontiers/c8_torus_vanishing_remainder_20261001/NOTE.md @@ -0,0 +1,364 @@ +# C8: the radial ledger on the torus with a vanishing remainder (Theorem L′) + +**Object:** CL-C8-TORUS-VANISHING-REMAINDER-20261001-v1. +**Author:** Anthropic Claude (Claude Code session `session_015wNj8LPTKXsaT68G3DgPPh`), 1 October 2026. +**Disposition:** author-side theorem with certified constants; no review yet. It extends Math-#215 (Theorem L) and closes +the item that #215 lists as not given ("a vanishing-remainder rate"), which Math-#193 (comment 5932553031) records among the +open C8 items as "a vanishing torus remainder". +**Scientific effect:** NONE. No `STATUS`, `PROOF_INDEX`, `GRAPH`, claim, catalog, prize or source-body change. Same GitHub +account as every lane; zero organizational-independence credit. Nothing in Math-#215, #206 or #212 is touched. +**Delivered under:** Dylan Roy's explicit instructions in this session, given after the 2026-09-27 owner stop (quoted in +`SOURCE_MAP.json`, `delivered_under`). `OWNER_STOP.md` addresses Cursor agents and automations and is untouched. + +## 0. Statement + +Notation as in Math-#215 ([B]) and [LP]: `A_r(b, k, u) = 12 pi_r(R; v_r) Z_r / r^2` is the radial ledger of [LP] (10.2) for +the field with kernel `K`, the band is `B x K = [0, 1] x [1/2, 2]`, and `A_0 = lim_{r -> 0} A_r` is the contact integrand +**of the same kernel**. For the Gaussian kernel `A_0 = A_0^ref` (closed form, [B] §1); for the torus kernel `K_L` it is +its own `A_0^(L)`, which [B] only locates within `eps_d` of `A_0^ref`. + +**Theorem L′.** For `d = 2, 3`, every torus side `L >= 10`, every frame, every `b in B`, `k in K`, every `R` in the +table and every `0 < r <= R`, + + -(a_dn(R) r^2 + beta_dn r) <= A_r(b, k, u) / A_0(b, k, u) - 1 <= a_up(R) r^2 + beta_up r. + +The constants are exact rationals in `RESULTS.json` (key `rate_torus`), shown rounded up: + +| `R` | `a_up`, `d = 2` | `a_dn`, `d = 2` | `a_up`, `d = 3` | `a_dn`, `d = 3` | +|---|---|---|---|---| +| `1/4096` | `13.822900` | `3.637234` | `25.666574` | `25.516405` | +| `1/2048` | `13.825546` | `3.643346` | `26.256538` | `26.108063` | +| `1/1024` | `13.830904` | `3.655573` | `27.446809` | `27.301701` | +| `1/512` | `13.841883` | `3.680046` | `29.869058` | `29.730582` | +| `1/256` | `13.864900` | `3.729062` | `34.883096` | `34.757367` | +| `1/128` | `13.915213` | `3.827402` | `45.611669` | `45.508415` | +| `1/64` | `14.033374` | `4.025510` | `70.060722` | `69.981331` | + +with first-order coefficients + + beta_2 <= 1.036 x 10^-9, beta_3 <= 1.914 x 10^-7 (every R in the table). + +**For the Gaussian kernel the first-order coefficients vanish identically** (`rate_reference_kernel`: `beta = 0` exactly), +and the `a` columns are the same: `|A_r / A_0^ref - 1| <= a(R) r^2`, with no additive remainder. + +What changes against [B]: +- **The remainder vanishes.** [B] proves `|A_r / A_0^ref - 1| <= a r^2 + eps_d`, with `eps_2 <= 3.96 x 10^-10` and + `eps_3 <= 1.79 x 10^-8` independent of `r`. Theorem L′ compares `A_r` with the limit of the same kernel, and every + remainder carries a factor `r` or `r^2`. In particular `A_r^(L) = A_0^(L) (1 + O(r))` on the torus with explicit + constants, and `A_r = A_0^ref (1 + O(r^2))` for the Gaussian kernel with no remainder at all. +- **The second-order coefficients are [B]'s.** + - `a(R)` is never below [B]'s Theorem L value. + - It equals [B]'s to the displayed digits for `R <= 1/2048`. + - It exceeds [B]'s by at most `1.1 x 10^-5` for `R <= 1/512` and by at most `7.4 x 10^-4` at `R = 1/64`. The excess comes + from the cross terms and the `r^9` remainders, §§2, 5. +- **The first-order coefficient is a torus artefact.** `beta` is a bound on the torus part of the `r^1` coefficients + (§2, Lemma V2). It is not sharp: the actual torus corrections are of order `e^-50`, while `beta` comes from Cauchy + estimates at `M_1(10) < 4.46 x 10^-15`. + +**Corollary L′1 (the densities with a vanishing remainder).** Let `nu_cand`, `nu_eld` be the compact-window densities of [LP] +Theorem B in the versions (11.2), for the torus kernel or the Gaussian kernel, and +`c_{B,K} = int_{B x K x S^(d-1)} A_0(b, k, u)/(3 k^(2/3)) db dk dsigma(u)` the leading constant **of the same kernel**. The +angular integral uses ordinary surface measure `dsigma`, as in [LP] (11.2)–(11.3). The torus is not assumed isotropic. For `0 < ell < min(r_pop, R)^3 / 2`, with `r_pop` [LP]'s population radius: + + -(c2_dn ell^(2/3) + c1_dn ell^(1/3)) <= ell^(1/3) nu_cand(ell) - c_{B,K} <= c2_up ell^(2/3) + c1_up ell^(1/3), + ell^(1/3) nu_cand(ell) - C_{B,K}(R) ell <= ell^(1/3) nu_eld(ell) <= ell^(1/3) nu_cand(ell), + +with `C_{B,K}(R)` of [B] Corollary L1, and (`corollary_torus`; ratios to `c_{B,K}`, rounded up): + +| `R` | `c2_up/c`, `d = 2` | `c2_dn/c`, `d = 2` | `c2_up/c`, `d = 3` | `c2_dn/c`, `d = 3` | +|---|---|---|---|---| +| `1/4096` | `6.282558` | `4.464593` | `23.153357` | `22.427357` | +| `1/512` | `6.322008` | `4.505526` | `27.377121` | `26.661848` | +| `1/64` | `6.643378` | `4.836304` | `67.060479` | `66.396981` | + +and `c1/c <= 1.531 x 10^-10` (`d = 2`), `<= 3.985 x 10^-8` (`d = 3`). For the Gaussian kernel `c1 = 0` +(`corollary_reference_kernel`). + +So, on the torus, both densities are `c_{B,K} ell^(-1/3) + O(1) + O(ell^(1/3))` about the **torus** constant, with explicit +constants and a vanishing remainder. [B] gave the same expansion only about `c^ref_{B,K}`, up to `eps'_d ell^(-1/3)`. + +**Corollary L′2 (expected selected counts; derived in review C63, 5387311588).** Let `n_sel(t)` be the expected number per +unit volume of selected elder pairs of the population with lifetime in `(0, t]`. Multiply by `L^d` for the expected total on +the torus. For `0 < t < ell_* = min(r_pop, R)^3/2`, integrating Corollary L′1 and its elder line over `(0, t]` gives + + max(0, (3/2) c t^(2/3) - c1_dn t - (3/4) c2_dn t^(4/3) - (3/5) C_{B,K}(R) t^(5/3)) + <= n_sel(t) <= (3/2) c t^(2/3) + c1_up t + (3/4) c2_up t^(4/3), + +with `c = c_{B,K}` of the same kernel. Equivalently, `n_sel(t) = (3/2) c t^(2/3) (1 + delta)` with +`-dn <= delta <= up`. Every term is increasing in `t`, so the values at `t = ell_*` bound the whole window. The ratios +use `corollary_torus` here and `C_{B,K}(R)` of [B] (`RESULTS.json` blob `894fae2e`), divided by `c >= c_ref,lo (1 - eps_0)`; +all are rounded up: + +| `d` | `R` | `ell_*` (`r_pop >= R`) | `up` | `dn` | +|---|---|---|---|---| +| 2 | `1/4096` | `2^-37` | `1.18e-7` | `5.75e-7` | +| 2 | `1/1024` | `2^-31` | `1.90e-6` | `3.37e-5` | +| 2 | `1/512` | `2^-28` | `7.60e-6` | `2.73e-4` | +| 3 | `1/4096` | `2^-37` | `4.35e-7` | `4.03e-6` | +| 3 | `1/1024` | `2^-31` | `7.50e-6` | `2.51e-4` | +| 3 | `1/512` | `2^-28` | `3.29e-5` | `3.84e-3` | + +Each scope applies: +- the upper bound has the torus candidate corollary's scope; +- the lower bound additionally has the elder corollary's scope, through `C_{B,K}`. + +The bound is per unit volume, for the compact-window population only. It is not a count of all short bars. + +**Four result scopes, and what each consumes.** Every scope also retains the corrected parent [LP] + [CAP] + [E1] + [E2] + +[REC] (§8) and its Gaussian-field, typed-weight and Kac–Rice interpretation. +1. *Theorem L′*, the main radial rate, for both kernels: §§2–4 and the band-law, primitive and moment contracts of [E], [E3]. +2. *The Gaussian-kernel candidate corollary*: the rate and the reference integrals; `eps_0 = 0`. +3. *The torus candidate corollary*: additionally the finite contact comparison `eps_0` (§5). +4. *The elder corollary, for either kernel*: additionally [B]'s cap-derived `C_{B,K}(R)` (§5). + +## 1. Where [B]'s remainder came from + +[B]'s `eps_d` collects five things, each `r`-independent: +1. the Taylor-model remainder `e` (rounding, truncated powers `r^j`, `j > 8`, the covariance tail beyond `g_x = 60`); +2. the torus part of each covariance, as one constant `M_1`-bound; +3. the kernel normalization `Theta` in the pin density (`n theta_1 / 2`); +4. in `d = 3`, the Loewner coupling's truncation at radius 12 (`out_D2`, `tail_c`), present even for the Gaussian kernel; +5. the far set `G_0^c`, bounded at its worst radius `R`. + +Theorem L′ removes all five: +1. Every rounding goes into a coefficient radius and every truncation into a remainder proportional to `r^9` (§2). +2. The torus part is split coefficientwise (Lemma V2). Its constant term cancels against `A_0^(L)`, and its higher terms + carry powers of `r`. +3. `Theta` multiplies only increments (Lemma V3). +4. The main normalizer term is compared at `r` and at `0` directly, without truncation (Lemmas V4, V5). +5. The far set is bounded by Markov's inequality at order 64, which gives `O(r^2)` (Lemma V6). + +## 2. Interval-coefficient Taylor models (Lemmas V1, V2) + +**Lemma V1 (the class `TV`).** A `TV` on `[0, R_0]`, `R_0 = 1/64`, is a list of centers `C_j`, radii `D_j` (`j <= 8`) and a +remainder coefficient `E`. It encloses a function `f` if there are **fixed** numbers `c_j in [C_j - D_j, C_j + D_j]` and a +function `rho` with `|rho(r)| <= E r^9` such that `f(r) = sum c_j r^j + rho(r)` for every `r in [0, R_0]`. Then `f(0) = c_0`. +Sums, products, scalar multiples and reciprocals of enclosed functions are enclosed by the operations of `theorem_v.py`: +- **Products.** The coefficient `sum_{i+j=k} a_i b_j` lies in the interval product. For `k <= 8` its center is rounded + with the error added to the radius. For `k > 8` the term is at most `(|S_k| + Rd_k) R_0^(k-9) r^9`. The cross terms + `rho_a g_b`, `rho_b g_a`, `rho_a rho_b` are at most `(E_a |g_b| + E_b |g_a| + E_a E_b R_0^9) r^9`, where `|g| <= sum (|C_j| + D_j) R_0^j`. +- **Reciprocals.** Write `f = c_0 + h`, with `h(0) = 0` and `u = 1/c_0` in an interval. The interval is centered at + `1/C_0`, so that centers stay the reference values. Then `g = h u` has `|g(r)| <= G_1 r`, and + `1/f = u sum_{n <= 8} (-g)^n + u theta (G_1 r)^9/(1 - G_1 R_0)`. The certificate requires `G_1 R_0 < 1/2` and `g(0) = 0`. + +Nothing is assumed about the coefficients beyond their intervals. In particular the same unknown number appears +consistently wherever an enclosed function is reused, because each operation is sound for every admissible choice. + +**Readers.** For `0 < r <= R`, with `H = sum_{j >= 3} (|C_j| + D_j) R^(j-2) + E R^7`: + + f(r) - f(0) in [c_1^lo r + (c_2^lo - H) r^2, c_1^hi r + (c_2^hi + H) r^2]. + +**Lemma V2 (the torus part, coefficientwise).** For the covariance of two preconditioned functionals with weight `w`: +- [E] §2(c) writes the torus part as `sum_{g_x >= w} partial^gamma rho(0) pi_gamma r^(g_x - w)`, with + `|partial^gamma rho(0)| <= g_x! g_y! M_1` (Cauchy estimates on the unit polydisc). +- `|pi_gamma| <= sum |c c'| |d|^m/m!`, with `m = g_x - A`, `|d| <= 1`. +- `g_x!/(g_x - A)! <= w^A e^(g_x - w)`, because `A log x <= w(x - 1)` for `x = g_x/w >= 1`. + +So the coefficient of `r^p` in the torus part is at most `T_0 e^p`, with `T_0 = sum |c c'| g_y! max(w, 1)^A M_1`, the +quantity [E] uses at `p`-sum level. The certificate adds: +- radii `T_0 e^p` to the coefficients `p = 0, ..., 8`; +- `T_0 e^9 / (1 - e R_0) r^9` to the remainder. + +The reference series gives the centers exactly. The truncation tail beyond `g_x = 60` is at most +`2 |c c'| |h(g_y)| 61^A r^(61 - w)` for `r <= 1/64` ([E] §2(b)), so it goes into the `r^9` remainder (`61 - w >= 9` is +checked). `M_1(10) < 4.46 x 10^-15` (`d = 2`) and `< 1.94 x 10^-13` (`d = 3`) decrease in `L`, so the models hold for every +`L >= 10` and every frame; with `M_1 = 0` they are the Gaussian kernel's. + +The pins (six in `d = 2`, eight in `d = 3`), the targets of [B] §2 and Gaussian elimination without pivoting give `TV`s for `det S_r`, the energies `e_bb`, +`e_bk`, `e_kk`, the regression coefficients `alpha`, `beta` of the transverse Hessian and of `Omega'`, their covariances, and in +`d = 3` the regression of `Omega'` on `B = -A`. The certificate checks that the centers are [B]'s reference laws. In +particular the law of the transverse Hessian is flat in `r` ([B] Lemma 1): every center of `alpha_A + 1`, `beta_A` and +`Cov(A) - Cov(GOE)` vanishes to `10^-60`, so on the torus only radii survive. + +## 3. The pin density (Lemma V3) + +With `S_r` the unnormalized pin covariance and `Theta in [1, 1 + theta_1]` the normalization, `pi_r ∝ det(S_r/Theta)^(-1/2) +exp(-Theta E_r/2)`. So + + log(pi_r / pi_0) = -(1/2) log(det S_r / det S_0) - Theta (E_r - E_0)/2. + +`Theta^(n/2)` cancels and `Theta` multiplies only the increment `E_r - E_0`. With `x = (det S_r - det S_0)/det S_0` and +`|x| <= x_m < 1/2`: +- `-(1/2) log(1 + x) <= max(0, -x)/(2(1 - x_m))`; +- `(1/2) log(1 + x) <= max(0, x)/2`. + +The increments of `det S` and of the energies are read off the `TV`s as above. On a box with `b, k >= 0` the energy weights +`b^2`, `2bk`, `k^2` are nonnegative and the bounds are taken coefficientwise. There is no constant term: +`log(pi_r/pi_0) in [-(dn_a r^2 + dn_b r), up_a r^2 + up_b r]`. + +## 4. The normalizer (Lemmas V4–V6) + +As in [B] §4 (exact expansion of `W_r = r^2 P1 P2` on the typed set, the three first-order cancellations, Hölder for the +second-order terms): + + Z_r / (36 k^2 r^2) = m_r + (first-order term) + (second-order terms), + +where `m_r = E_r[lambda_+^2]` (`d = 2`) or `E_r[det(B)^2 1{B > 0}]` (`d = 3`), under the law at `r`, and `m_0` is the same +under the law at `0`. Then `A_r / A_0 = (pi_r/pi_0) (Z_r / (36 k^2 r^2 m_0))`, and every term below is divided by `m_0`. + +**Lemma V4 (`d = 2`, main term).** `lambda ~ N(mu, sigma^2)` with `mu = -(b alpha_w + k beta_w)`, `sigma^2 = C_ww / Theta`, and +`F(mu, sigma) = E[(mu + sigma z)_+^2]`. Then `dF/dmu = 2 E[lambda_+]` and `dF/d(sigma^2) = Phi(mu/sigma) <= 1`. Along the +segment from `(mu_0, sigma_0^2)` to `(mu_r, sigma_r^2)`, which stays in the band's range, + + |m_r - m_0| <= 2 F_1,max |mu_r - mu_0| + |C_ww(r) - C_ww(0)|, m_0 >= F_min. + +Both increments are `TV` increments. For the Gaussian kernel they vanish ([B] Lemma 1). + +**Lemma V5 (`d = 3`, main term).** In natural coordinates `(B_11, B_22, sqrt2 B_12)` the Frobenius norm is Euclidean. Couple +`B_r = mu_r + C_r^(1/2) Z` and `B_0 = mu_0 + C_0^(1/2) Z`. +- `g(B) = det(B)^2 1{B > 0}` is continuous, since `det B = 0` on the boundary of the cone. +- `g` is piecewise smooth along segments, with `|grad g| = 2 |det B| ||adj B||_F <= ||B||_F^3` (`2 x 2`: + `|det B| <= ||B||_F^2/2`, `||adj B||_F = ||B||_F`). + +Hence + + |m_r - m_0| <= E[max(||B_r||, ||B_0||)^3 ||B_r - B_0||] <= sqrt2 ||B||_8^3 (||mu_r - mu_0|| + ||C_r^(1/2) - C_0^(1/2)||_F). + +Square roots satisfy `||C_r^(1/2) - C_0^(1/2)||_F <= ||C_r - C_0||_F / (2 sqrt(lambda_min))`. Proof: +- `X = C_r^(1/2) - C_0^(1/2)` solves `C_r^(1/2) X + X C_0^(1/2) = C_r - C_0`. +- In the eigenbases, `|X_ij| (s_i + t_j) = |(C_r - C_0)_ij|`. +- Here `lambda_min` is the Gershgorin floor over the band. + +`||B||_8` is the band's Frobenius moment bound, and `m_0 >= m_3(b) rho_lo`, with `rho_lo` from [B]'s Loewner coupling over +`[0, R]` (which contains `r = 0`). For the Gaussian kernel the increments vanish. + +**First-order terms.** For `d = 2`, the term is `-36 k^2 r E[lambda_+ om]`. For `d = 3`, it is `-36 k^2 r E[D tr(A* Omega') 1]`. +- [B] writes each through the regression, with coefficients `mu_om`, `bw_om` (`d = 2`) and `beta(r)`, `mu_Omega`, `DG` + (`d = 3`). +- Each `TV` coefficient satisfies `|t(r)| <= c_0 + s r`. +- The explicit factor `r` turns `c_0` (a torus radius; `0` for the Gaussian kernel) into a contribution to `beta`. It turns + `s` into a contribution to `a`. +- In `d = 3`, `r beta(r) - r^2/2 = c_0 r + (c_1 - 1/2) r^2 + ...`, with `c_1` centered at `1/2`. + +**Second-order terms.** These are [B]'s, with its interval band laws, divided by `m_0` instead of the reference moment: +- in `d = 2`: the signed `kappa` term, `T_4`, `T_5`, `T_6` and the thin set; +- in `d = 3`: `U_2`, ..., `U_10` and the thin set. + +**Lemma V6 (the far set).** `G_0^c = {|T| > 3k/(2r)} u {|tau| > 3k/(2r^2)}` enters through +`E[W_r 1_(G_0^c)]/r^2 <= P1n P2n P(G_0^c)^(1/2)` ([B] §5). By Markov's inequality at order `p = 64`: + + P(G_0^c) <= (2 ||T||_64/(3 k_0))^64 R^60 r^4 + (2 ||tau||_64/(3 k_0))^64 R^124 r^4, + +so this term is `O(r^2)`. + +## 5. Assembly + +`(1 + p)(1 + z) - 1 <= p + z + p z(R)` and `1 - (1 - p)(1 - z) <= p + z`, with `exp(x) - 1 <= x exp(x(R))` for the pin factor. +This gives Theorem L′ on each of the 96 boxes `[i/8, (i+1)/8] x [1/2 + j/8, 1/2 + (j+1)/8]` (as in [B]) and each `R`. + +**Corollary L′1.** As in [B] Corollary L1: +- `ell^(1/3) nu_cand(ell) = int_{B x K x S^(d-1)} A_r(b, k, u) / (3 k^(2/3)) db dk dsigma(u)`, with `r = (ell/k)^(1/3) <= R` + ([LP] (11.2)). +- Theorem L′ holds uniformly in the direction `u`. Integrate it box by box, over each box and all of `S^(d-1)`: + `a r^2` gives the weight `int_{box x S^(d-1)} A_0 / (3 k^(4/3))`, and `beta r` gives `int_{box x S^(d-1)} A_0 / (3 k)`. + No isotropy is used. The reference weights of the pinned `theorem_b.py` are these full angular integrals for `A_0^ref` + (its `K_const` includes `|S^(d-1)|`), so the program needs no extra sphere factor (OA-227-C-01, review 5384474393). +- The weights of the torus `A_0^(L)` are at most `(1 + eps_0)` times the reference weights. Here `eps_0` is [B]'s + `|A_0/A_0^ref - 1|` bound, recomputed by the pinned `theorem_b.py` at `R = 1/4096`: + `eps_0 <= 3.95 x 10^-10` (`d = 2`), `1.78 x 10^-8` (`d = 3`). + + Only the contact (`r -> 0`) value of that bound is used. Review C60 (5386707554) proves it directly at contact: + - it uses the C57 contact intervals, Gaussian log-moment derivatives (`d = 2`), a Loewner and chi-tail comparison + (`d = 3`), the normalized pin density, and dominated convergence; + - it gives `|A_0^(L)/A_0^ref - 1| <= 3.943 x 10^-10` (`d = 2`) and `<= 1.778 x 10^-8` (`d = 3`) for `L >= 10`, every + frame and the compact marks. + + So the torus corollary does not rest on the positive-radius parts of [B]'s Theorem L. +- The elder line uses [B]'s `C_{B,K}(R)`. Review C61 (5386924911, at Math-#215 `b41eb28`) validates all fourteen published + `C_{B,K}` and `C_121` upper constants by a cellwise transfer. The transfer uses this packet's reviewed rate and C60's + contact comparison, the two cap engines at [B]'s caller, and the corrected parent set. C61's scope is + `0 <= nu_cand - nu_eld <= C_{B,K}(R) ell^(2/3)` for `ell < min(r_pop, R)^3/2` on the compact window. C61 does not claim + that every short bar is a candidate, nor an unrestricted difference rate. + +## 6. Verification + +- `python3 -B -S theorem_v.py --check` recomputes everything and compares it with `RESULTS.json` exactly: + - the `TV` laws of both kernels; + - the 2 x 7 x 96 box bounds per kernel; + - the reference integrals and the `r^1` weights; + - `eps_0`; + - the corollaries. + + It takes about 3.5 minutes on one core and passes under `-B -S` and `-B -O -S`. +- Five mutants, each of which must exit 1: + - `torus-const-only`: the torus part only in the constant coefficient; + - `exp-radius`: `e^p` replaced by `1` in the torus radii; + - `no-lin`: drop the `r^1` coefficients; + - `no-om-term`: drop the first-order terms; + - `coupling-half`: halve Lemma V5's constant. +- The workflow `.github/workflows/c8-torus-vanishing-remainder.yml` checks: + - the manifest; + - the main-resident pins [LP], [CAP], [E1], [E2], [REC]; + - the packet copies [B], [E], [E3], byte for byte; + - both modes; + - the mutants; + - a clean tree. + +**Consistency with [B].** With `beta` set aside, `a(R)` reproduces [B]'s Theorem L table, as in §0. The `c2/c` ratios +reproduce [B]'s Corollary L1 to within `5 x 10^-4`. Both come from an independent assembly, using increments rather than +deviations from `A_0^ref`. + +## 7. What this does not do + +- **Still the compact window `B x K`, `L >= 10`, `d = 2, 3`, `R <= 1/64`.** These are [B]'s ranges. +- **`beta` is not the true first-order coefficient.** It bounds the torus part of the `r^1` coefficients through + `M_1`. Whether the torus `A_r` has a nonzero `r^1` term at all (of order `e^-50`) is not decided. +- **Consumed, with their review status (OpenAI / Codex, delegated; same account, zero organizational-independence credit):** + - [LP]'s sections 8–12, as in [B], read with [E1], [E2], [REC]; + - [B]'s §§2–5 algebra (exact expansions, first-order cancellations, Hölder bounds, Loewner coupling): scoped reads + 5378815703, 5379687608, 5379747967, 5379848224, 5384256400. Its positive-radius Theorem L is not accepted as a whole; + this packet uses only these assembled conclusions of Theorem L, namely its contact value (C60) and its `C_{B,K}` (C61), + while the scoped [B] algebra and reference routines above remain consumed; + - the band laws, interval and transcendental primitives and moment routines of [E], [E3]: reviewed at the contracts used + here (C57, C59). + + [B], [E] and [E3] are author-side and unmerged. +- No `C`, `r_*`, `z_*` beyond [B], #206, #212 and #195. No new count, moment or elder statement beyond Corollary L′1. +- Same GitHub account as every lane; zero organizational-independence credit. **I will not merge.** + +## 8. Provenance + +- **Sources** (`SOURCE_MAP.json`): + - [LP] `imports/lifetime_parent_20260925/UNIFORM_MATRIX_CAP_AND_LIFETIME.md` (on `main`, verified by the workflow), read + with [CAP] `imports/lifetime_parent_20260925/MARKED_CYLINDER_CAP_PROOF.md` and its mandatory amendments, all on + `main` and verified: + - [E1] `imports/lifetime_parent_20260925/ERRATUM_CONGRUENCE.md`; + - [E2] `reviews/d1_section9_borel_repair_20260925/REPAIR.md`; + - [REC] `reviews/d1_chain_reconciliation_20260928/RECONCILIATION.md`; + - [B] Math-#215 `theorem_b.py` at `1aa250d` (v1.5; packet copy `theorem_b.py`), and its `NOTE.md` and `RESULTS.json` at + `d77cabf` (provenance); + - [E] Math-#206 `theorem_a.py` at `13f932c` (v1.2; packet copy `engine_e2.py`); + - [E3] Math-#212 `theorem_a3.py` at `250b907` (v1.1; packet copy `engine_e3.py`). +- **Files:** + - `NOTE.md`, `README.md`; + - `theorem_v.py` (new); + - the copies `theorem_b.py`, `engine_e2.py`, `engine_e3.py`; + - `RESULTS.json`, `SOURCE_MAP.json`, `SOURCE_FILES.json`. + +## 9. Revisions + +- **v1.1 (`75b5fce`):** the explicit angular integrals (OA-227-C-01). +- **v1.2:** documentation only, recording the review cycle C56–C61. In every changed Python file the AST with docstrings + removed is unchanged, and so are `RESULTS.json` and every constant. + - **NOTE.** + - "six pins" becomes "six in `d = 2`, eight in `d = 3`" (C57). + - §0 gains the four result scopes. + - §5 records C60's direct contact comparison and C61's `C_{B,K}` disposition. + - §§7–8 add the corrected parent set [E1], [E2], [REC] (C61) and the current review status, and §8 pins [CAP] as well, + so that this consumer verifies the whole parent set it cites (C63, 5943439412). + - **v1.2.3.** It adds Corollary L′2 (§0), the expected selected-count bound derived in review C63, with its relative + error table. The integration is checked symbolically, and the numbers are computed with exact rationals from the cited + tables. + - **v1.2.2 (C63, 5943465973).** Three wording changes: + - the `TV` docstring adds C56's integer `E`, integer `s, N >= 0` with `N >= 2` for the second-order readers, and + exact rational reader inputs; + - Corollary L′1's window becomes `ell < min(r_pop, R)^3/2`, as in §5; + - §7 says "these assembled conclusions of Theorem L". + - **`theorem_v.py`.** + - The `TV` docstring states its preconditions (C56). + - `combine_v` states the positivity case split of the lower bound (C58). + - A comment at the planar `omega` regression says that `Theta` cancels exactly and `cwlo` is conservative (C58). + - A comment in `explained` keeps the diagonal surplus (C58). + - **The copies follow Math-#215 v1.5, Math-#206 v1.2 and Math-#212 v1.1.** These change docstrings and comments only: + `sqrt_up` (`2^-198`, C59-DOC-01), `box_bound`'s parameter domain (C61), `wq_bound`'s diagonal surplus (C58), and the + `3/4` multiplier comment (C60). diff --git a/frontiers/c8_torus_vanishing_remainder_20261001/README.md b/frontiers/c8_torus_vanishing_remainder_20261001/README.md new file mode 100644 index 000000000..c7aed0099 --- /dev/null +++ b/frontiers/c8_torus_vanishing_remainder_20261001/README.md @@ -0,0 +1,19 @@ +# C8: the radial ledger on the torus with a vanishing remainder + +Theorem L′ (`NOTE.md`): for the torus kernel (every side `L >= 10`, every frame) and the Gaussian kernel, `d = 2, 3`, on the +band `b in [0, 1]`, `k in [1/2, 2]`, + + -(a_dn r^2 + beta_dn r) <= A_r / A_0 - 1 <= a_up r^2 + beta_up r (0 < r <= R <= 1/64), + +with `A_0` the contact integrand of the same kernel. The `a(R)` are Math-#215's Theorem L constants (13.82 / 3.64 in the +plane, 25.67 / 25.52 in `d = 3` at `R = 1/4096`); `beta_2 <= 1.04e-9`, `beta_3 <= 1.92e-7` on the torus and `beta = 0` for +the Gaussian kernel. This removes the `r`-independent `eps_d` of Math-#215. Corollary L′1 gives `ell^(1/3) nu(ell)` about +the torus's own `c_{B,K}` with remainder `c1 ell^(1/3) + c2 ell^(2/3)`. + +Replay (standard library, about 3.5 minutes): + + python3 -B -S theorem_v.py --check + python3 -B -S theorem_v.py --mutant torus-const-only # must exit 1 (also exp-radius, no-lin, no-om-term, coupling-half) + +`theorem_b.py`, `engine_e2.py` and `engine_e3.py` are byte-identical copies of Math-#215's files (and of the engines of +Math-#206, #212), pinned in `SOURCE_MAP.json`. Scientific effect NONE; author-side; not merged by its author. diff --git a/frontiers/c8_torus_vanishing_remainder_20261001/RESULTS.json b/frontiers/c8_torus_vanishing_remainder_20261001/RESULTS.json new file mode 100644 index 000000000..70681a5db --- /dev/null +++ b/frontiers/c8_torus_vanishing_remainder_20261001/RESULTS.json @@ -0,0 +1,18129 @@ +{ + "certified": true, + "dims": { + "2": { + "corollary_reference_kernel": { + "1/1024": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.010698556040", + "c2_up": "0.015036390012", + "ell_max": "1/2147483648", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "4.482126", + "rel2_up": "6.299448" + }, + "1/128": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.011090941614", + "c2_up": "0.015415839381", + "ell_max": "1/4194304", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "4.646515", + "rel2_up": "6.458417" + }, + "1/2048": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.010670652230", + "c2_up": "0.015009506668", + "ell_max": "1/17179869184", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "4.470436", + "rel2_up": "6.288185" + }, + "1/256": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.010866311691", + "c2_up": "0.015198288849", + "ell_max": "1/33554432", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "4.552407", + "rel2_up": "6.367275" + }, + "1/4096": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.010656705895", + "c2_up": "0.014996075926", + "ell_max": "1/137438953472", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "4.464593", + "rel2_up": "6.282558" + }, + "1/512": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.010754411105", + "c2_up": "0.015090240581", + "ell_max": "1/268435456", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "4.505526", + "rel2_up": "6.322008" + }, + "1/64": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.011543957681", + "c2_up": "0.015857329256", + "ell_max": "1/524288", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "4.836304", + "rel2_up": "6.643378" + } + }, + "corollary_torus": { + "1/1024": { + "c1_dn": "0.000000000000364798138861593824", + "c1_up": "0.000000000000364799613521211216", + "c2_dn": "0.010698556044", + "c2_up": "0.015036390026", + "ell_max": "1/2147483648", + "rel1_dn": "0.000000000152831007337990412546", + "rel1_up": "0.000000000152831625141895635141", + "rel2_dn": "4.482126", + "rel2_up": "6.299448" + }, + "1/128": { + "c1_dn": "0.000000000000364798138861593860", + "c1_up": "0.000000000000364894772007892620", + "c2_dn": "0.011090941618", + "c2_up": "0.015415839387", + "ell_max": "1/4194304", + "rel1_dn": "0.000000000152831007337990427389", + "rel1_up": "0.000000000152871491483927043970", + "rel2_dn": "4.646515", + "rel2_up": "6.458417" + }, + "1/2048": { + "c1_dn": "0.000000000000364798138861593818", + "c1_up": "0.000000000000364798506902226212", + "c2_dn": "0.010670652234", + "c2_up": "0.015009506674", + "ell_max": "1/17179869184", + "rel1_dn": "0.000000000152831007337990409887", + "rel1_up": "0.000000000152831161527429987784", + "rel2_dn": "4.470436", + "rel2_up": "6.288185" + }, + "1/256": { + "c1_dn": "0.000000000000364798138861593844", + "c1_up": "0.000000000000364821973988093072", + "c2_dn": "0.010866311695", + "c2_up": "0.015198288855", + "ell_max": "1/33554432", + "rel1_dn": "0.000000000152831007337990420638", + "rel1_up": "0.000000000152840992987600019080", + "rel2_dn": "4.552407", + "rel2_up": "6.367275" + }, + "1/4096": { + "c1_dn": "0.000000000000364798138861593522", + "c1_up": "0.000000000000364798230793778613", + "c2_dn": "0.010656705899", + "c2_up": "0.014996075932", + "ell_max": "1/137438953472", + "rel1_dn": "0.000000000152831007337990285914", + "rel1_up": "0.000000000152831045852683639488", + "rel2_dn": "4.464593", + "rel2_up": "6.282558" + }, + "1/512": { + "c1_dn": "0.000000000000364798138861593834", + "c1_up": "0.000000000000364804057506862746", + "c2_dn": "0.010754411109", + "c2_up": "0.015090240587", + "ell_max": "1/268435456", + "rel1_dn": "0.000000000152831007337990416644", + "rel1_up": "0.000000000152833486935395564520", + "rel2_dn": "4.505526", + "rel2_up": "6.322008" + }, + "1/64": { + "c1_dn": "0.000000000000364798138861595217", + "c1_up": "0.000000000000365195158791590526", + "c2_dn": "0.011543957686", + "c2_up": "0.015857329262", + "ell_max": "1/524288", + "rel1_dn": "0.000000000152831007337990995761", + "rel1_up": "0.000000000152997337561121500157", + "rel2_dn": "4.836304", + "rel2_up": "6.643378" + } + }, + "eps0_215": "0.000000000394295484178315", + "rate_reference_kernel": { + "1/1024": { + "a_dn": "3.655573", + "a_up": "13.830904", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "4.836494", + "0.000000000000000000000000", + "3.655573", + "0.000000000000000000000000" + ], + [ + "4.655049", + "0.000000000000000000000000", + "3.485943", + "0.000000000000000000000000" + ], + [ + "4.496177", + "0.000000000000000000000000", + "3.340769", + "0.000000000000000000000000" + ], + [ + "4.356068", + "0.000000000000000000000000", + "3.216214", + "0.000000000000000000000000" + ], + [ + "4.231551", + "0.000000000000000000000000", + "3.109096", + "0.000000000000000000000000" + ], + [ + "4.119980", + "0.000000000000000000000000", + "3.016767", + "0.000000000000000000000000" + ], + [ + "4.019142", + "0.000000000000000000000000", + "2.937020", + "0.000000000000000000000000" + ], + [ + "3.927179", + "0.000000000000000000000000", + "2.868009", + "0.000000000000000000000000" + ], + [ + "4.768572", + "0.000000000000000000000000", + "2.973875", + "0.000000000000000000000000" + ], + [ + "4.638565", + "0.000000000000000000000000", + "2.851052", + "0.000000000000000000000000" + ], + [ + "4.524827", + "0.000000000000000000000000", + "2.746423", + "0.000000000000000000000000" + ], + [ + "4.424453", + "0.000000000000000000000000", + "2.657071", + "0.000000000000000000000000" + ], + [ + "4.335034", + "0.000000000000000000000000", + "2.580578", + "0.000000000000000000000000" + ], + [ + "4.254562", + "0.000000000000000000000000", + "2.514934", + "0.000000000000000000000000" + ], + [ + "4.181364", + "0.000000000000000000000000", + "2.458470", + "0.000000000000000000000000" + ], + [ + "4.114039", + "0.000000000000000000000000", + "2.409793", + "0.000000000000000000000000" + ], + [ + "5.023655", + "0.000000000000000000000000", + "2.561515", + "0.000000000000000000000000" + ], + [ + "4.925541", + "0.000000000000000000000000", + "2.468082", + "0.000000000000000000000000" + ], + [ + "4.839750", + "0.000000000000000000000000", + "2.388923", + "0.000000000000000000000000" + ], + [ + "4.763949", + "0.000000000000000000000000", + "2.321695", + "0.000000000000000000000000" + ], + [ + "4.696206", + "0.000000000000000000000000", + "2.264459", + "0.000000000000000000000000" + ], + [ + "4.634916", + "0.000000000000000000000000", + "2.215611", + "0.000000000000000000000000" + ], + [ + "4.578742", + "0.000000000000000000000000", + "2.173817", + "0.000000000000000000000000" + ], + [ + "4.526573", + "0.000000000000000000000000", + "2.137969", + "0.000000000000000000000000" + ], + [ + "5.490725", + "0.000000000000000000000000", + "2.287587", + "0.000000000000000000000000" + ], + [ + "5.414220", + "0.000000000000000000000000", + "2.214261", + "0.000000000000000000000000" + ], + [ + "5.347346", + "0.000000000000000000000000", + "2.152531", + "0.000000000000000000000000" + ], + [ + "5.288160", + "0.000000000000000000000000", + "2.100448", + "0.000000000000000000000000" + ], + [ + "5.235059", + "0.000000000000000000000000", + "2.056403", + "0.000000000000000000000000" + ], + [ + "5.186712", + "0.000000000000000000000000", + "2.019065", + "0.000000000000000000000000" + ], + [ + "5.142014", + "0.000000000000000000000000", + "1.987333", + "0.000000000000000000000000" + ], + [ + "5.100051", + "0.000000000000000000000000", + "1.960292", + "0.000000000000000000000000" + ], + [ + "6.119866", + "0.000000000000000000000000", + "2.093416", + "0.000000000000000000000000" + ], + [ + "6.058928", + "0.000000000000000000000000", + "2.034686", + "0.000000000000000000000000" + ], + [ + "6.005671", + "0.000000000000000000000000", + "1.985611", + "0.000000000000000000000000" + ], + [ + "5.958436", + "0.000000000000000000000000", + "1.944528", + "0.000000000000000000000000" + ], + [ + "5.915858", + "0.000000000000000000000000", + "1.910067", + "0.000000000000000000000000" + ], + [ + "5.876804", + "0.000000000000000000000000", + "1.881096", + "0.000000000000000000000000" + ], + [ + "5.840341", + "0.000000000000000000000000", + "1.856681", + "0.000000000000000000000000" + ], + [ + "5.805694", + "0.000000000000000000000000", + "1.836053", + "0.000000000000000000000000" + ], + [ + "6.885552", + "0.000000000000000000000000", + "1.949079", + "0.000000000000000000000000" + ], + [ + "6.836344", + "0.000000000000000000000000", + "1.901415", + "0.000000000000000000000000" + ], + [ + "6.793341", + "0.000000000000000000000000", + "1.861936", + "0.000000000000000000000000" + ], + [ + "6.755100", + "0.000000000000000000000000", + "1.829195", + "0.000000000000000000000000" + ], + [ + "6.720434", + "0.000000000000000000000000", + "1.802004", + "0.000000000000000000000000" + ], + [ + "6.688366", + "0.000000000000000000000000", + "1.779383", + "0.000000000000000000000000" + ], + [ + "6.658087", + "0.000000000000000000000000", + "1.760526", + "0.000000000000000000000000" + ], + [ + "6.628931", + "0.000000000000000000000000", + "1.744769", + "0.000000000000000000000000" + ], + [ + "7.773460", + "0.000000000000000000000000", + "1.837824", + "0.000000000000000000000000" + ], + [ + "7.733399", + "0.000000000000000000000000", + "1.798832", + "0.000000000000000000000000" + ], + [ + "7.698387", + "0.000000000000000000000000", + "1.766873", + "0.000000000000000000000000" + ], + [ + "7.667151", + "0.000000000000000000000000", + "1.740673", + "0.000000000000000000000000" + ], + [ + "7.638647", + "0.000000000000000000000000", + "1.719183", + "0.000000000000000000000000" + ], + [ + "7.612013", + "0.000000000000000000000000", + "1.701543", + "0.000000000000000000000000" + ], + [ + "7.586543", + "0.000000000000000000000000", + "1.687047", + "0.000000000000000000000000" + ], + [ + "7.561655", + "0.000000000000000000000000", + "1.675114", + "0.000000000000000000000000" + ], + [ + "8.774968", + "0.000000000000000000000000", + "1.749587", + "0.000000000000000000000000" + ], + [ + "8.742234", + "0.000000000000000000000000", + "1.717570", + "0.000000000000000000000000" + ], + [ + "8.713621", + "0.000000000000000000000000", + "1.691663", + "0.000000000000000000000000" + ], + [ + "8.687992", + "0.000000000000000000000000", + "1.670725", + "0.000000000000000000000000" + ], + [ + "8.664416", + "0.000000000000000000000000", + "1.653823", + "0.000000000000000000000000" + ], + [ + "8.642128", + "0.000000000000000000000000", + "1.640192", + "0.000000000000000000000000" + ], + [ + "8.620502", + "0.000000000000000000000000", + "1.629207", + "0.000000000000000000000000" + ], + [ + "8.599024", + "0.000000000000000000000000", + "1.620355", + "0.000000000000000000000000" + ], + [ + "9.884590", + "0.000000000000000000000000", + "1.677977", + "0.000000000000000000000000" + ], + [ + "9.857854", + "0.000000000000000000000000", + "1.651691", + "0.000000000000000000000000" + ], + [ + "9.834478", + "0.000000000000000000000000", + "1.630755", + "0.000000000000000000000000" + ], + [ + "9.813436", + "0.000000000000000000000000", + "1.614141", + "0.000000000000000000000000" + ], + [ + "9.793891", + "0.000000000000000000000000", + "1.601010", + "0.000000000000000000000000" + ], + [ + "9.775156", + "0.000000000000000000000000", + "1.590675", + "0.000000000000000000000000" + ], + [ + "9.756671", + "0.000000000000000000000000", + "1.582578", + "0.000000000000000000000000" + ], + [ + "9.737978", + "0.000000000000000000000000", + "1.576260", + "0.000000000000000000000000" + ], + [ + "11.098676", + "0.000000000000000000000000", + "1.618751", + "0.000000000000000000000000" + ], + [ + "11.076941", + "0.000000000000000000000000", + "1.597255", + "0.000000000000000000000000" + ], + [ + "11.057929", + "0.000000000000000000000000", + "1.580475", + "0.000000000000000000000000" + ], + [ + "11.040708", + "0.000000000000000000000000", + "1.567476", + "0.000000000000000000000000" + ], + [ + "11.024519", + "0.000000000000000000000000", + "1.557498", + "0.000000000000000000000000" + ], + [ + "11.008741", + "0.000000000000000000000000", + "1.549921", + "0.000000000000000000000000" + ], + [ + "10.992871", + "0.000000000000000000000000", + "1.544239", + "0.000000000000000000000000" + ], + [ + "10.976496", + "0.000000000000000000000000", + "1.540042", + "0.000000000000000000000000" + ], + [ + "12.414711", + "0.000000000000000000000000", + "1.568984", + "0.000000000000000000000000" + ], + [ + "12.397207", + "0.000000000000000000000000", + "1.551552", + "0.000000000000000000000000" + ], + [ + "12.381886", + "0.000000000000000000000000", + "1.538297", + "0.000000000000000000000000" + ], + [ + "12.367897", + "0.000000000000000000000000", + "1.528366", + "0.000000000000000000000000" + ], + [ + "12.354546", + "0.000000000000000000000000", + "1.521064", + "0.000000000000000000000000" + ], + [ + "12.341268", + "0.000000000000000000000000", + "1.515825", + "0.000000000000000000000000" + ], + [ + "12.327607", + "0.000000000000000000000000", + "1.512194", + "0.000000000000000000000000" + ], + [ + "12.313190", + "0.000000000000000000000000", + "1.509798", + "0.000000000000000000000000" + ], + [ + "13.830904", + "0.000000000000000000000000", + "1.526601", + "0.000000000000000000000000" + ], + [ + "13.817026", + "0.000000000000000000000000", + "1.512659", + "0.000000000000000000000000" + ], + [ + "13.804868", + "0.000000000000000000000000", + "1.502432", + "0.000000000000000000000000" + ], + [ + "13.793648", + "0.000000000000000000000000", + "1.495135", + "0.000000000000000000000000" + ], + [ + "13.782727", + "0.000000000000000000000000", + "1.490131", + "0.000000000000000000000000" + ], + [ + "13.771590", + "0.000000000000000000000000", + "1.486903", + "0.000000000000000000000000" + ], + [ + "13.759820", + "0.000000000000000000000000", + "1.485033", + "0.000000000000000000000000" + ], + [ + "13.747079", + "0.000000000000000000000000", + "1.484184", + "0.000000000000000000000000" + ] + ] + }, + "1/128": { + "a_dn": "3.827402", + "a_up": "13.915213", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "5.003115", + "0.000000000000000000000000", + "3.827402", + "0.000000000000000000000000" + ], + [ + "4.802291", + "0.000000000000000000000000", + "3.638142", + "0.000000000000000000000000" + ], + [ + "4.626955", + "0.000000000000000000000000", + "3.476226", + "0.000000000000000000000000" + ], + [ + "4.472812", + "0.000000000000000000000000", + "3.337336", + "0.000000000000000000000000" + ], + [ + "4.336291", + "0.000000000000000000000000", + "3.217895", + "0.000000000000000000000000" + ], + [ + "4.214420", + "0.000000000000000000000000", + "3.114933", + "0.000000000000000000000000" + ], + [ + "4.104719", + "0.000000000000000000000000", + "3.025975", + "0.000000000000000000000000" + ], + [ + "4.005107", + "0.000000000000000000000000", + "2.948958", + "0.000000000000000000000000" + ], + [ + "4.902019", + "0.000000000000000000000000", + "3.110797", + "0.000000000000000000000000" + ], + [ + "4.756793", + "0.000000000000000000000000", + "2.972388", + "0.000000000000000000000000" + ], + [ + "4.630140", + "0.000000000000000000000000", + "2.854460", + "0.000000000000000000000000" + ], + [ + "4.518776", + "0.000000000000000000000000", + "2.753714", + "0.000000000000000000000000" + ], + [ + "4.419974", + "0.000000000000000000000000", + "2.667420", + "0.000000000000000000000000" + ], + [ + "4.331469", + "0.000000000000000000000000", + "2.593314", + "0.000000000000000000000000" + ], + [ + "4.251376", + "0.000000000000000000000000", + "2.529517", + "0.000000000000000000000000" + ], + [ + "4.178119", + "0.000000000000000000000000", + "2.474461", + "0.000000000000000000000000" + ], + [ + "5.138396", + "0.000000000000000000000000", + "2.678487", + "0.000000000000000000000000" + ], + [ + "5.027481", + "0.000000000000000000000000", + "2.571787", + "0.000000000000000000000000" + ], + [ + "4.930845", + "0.000000000000000000000000", + "2.481301", + "0.000000000000000000000000" + ], + [ + "4.845832", + "0.000000000000000000000000", + "2.404364", + "0.000000000000000000000000" + ], + [ + "4.770242", + "0.000000000000000000000000", + "2.338773", + "0.000000000000000000000000" + ], + [ + "4.702251", + "0.000000000000000000000000", + "2.282707", + "0.000000000000000000000000" + ], + [ + "4.640344", + "0.000000000000000000000000", + "2.234653", + "0.000000000000000000000000" + ], + [ + "4.583259", + "0.000000000000000000000000", + "2.193358", + "0.000000000000000000000000" + ], + [ + "5.593832", + "0.000000000000000000000000", + "2.391886", + "0.000000000000000000000000" + ], + [ + "5.506102", + "0.000000000000000000000000", + "2.306776", + "0.000000000000000000000000" + ], + [ + "5.429736", + "0.000000000000000000000000", + "2.234980", + "0.000000000000000000000000" + ], + [ + "5.362505", + "0.000000000000000000000000", + "2.174266", + "0.000000000000000000000000" + ], + [ + "5.302567", + "0.000000000000000000000000", + "2.122789", + "0.000000000000000000000000" + ], + [ + "5.248399", + "0.000000000000000000000000", + "2.079028", + "0.000000000000000000000000" + ], + [ + "5.198738", + "0.000000000000000000000000", + "2.041722", + "0.000000000000000000000000" + ], + [ + "5.152536", + "0.000000000000000000000000", + "2.009828", + "0.000000000000000000000000" + ], + [ + "6.215318", + "0.000000000000000000000000", + "2.189080", + "0.000000000000000000000000" + ], + [ + "6.144267", + "0.000000000000000000000000", + "2.119587", + "0.000000000000000000000000" + ], + [ + "6.082475", + "0.000000000000000000000000", + "2.061315", + "0.000000000000000000000000" + ], + [ + "6.028022", + "0.000000000000000000000000", + "2.012342", + "0.000000000000000000000000" + ], + [ + "5.979326", + "0.000000000000000000000000", + "1.971084", + "0.000000000000000000000000" + ], + [ + "5.935082", + "0.000000000000000000000000", + "1.936235", + "0.000000000000000000000000" + ], + [ + "5.894209", + "0.000000000000000000000000", + "1.906719", + "0.000000000000000000000000" + ], + [ + "5.855813", + "0.000000000000000000000000", + "1.881645", + "0.000000000000000000000000" + ], + [ + "6.975838", + "0.000000000000000000000000", + "2.038563", + "0.000000000000000000000000" + ], + [ + "6.917346", + "0.000000000000000000000000", + "1.980878", + "0.000000000000000000000000" + ], + [ + "6.866524", + "0.000000000000000000000000", + "1.932833", + "0.000000000000000000000000" + ], + [ + "6.821687", + "0.000000000000000000000000", + "1.892740", + "0.000000000000000000000000" + ], + [ + "6.781448", + "0.000000000000000000000000", + "1.859212", + "0.000000000000000000000000" + ], + [ + "6.744666", + "0.000000000000000000000000", + "1.831109", + "0.000000000000000000000000" + ], + [ + "6.710399", + "0.000000000000000000000000", + "1.807490", + "0.000000000000000000000000" + ], + [ + "6.677869", + "0.000000000000000000000000", + "1.787581", + "0.000000000000000000000000" + ], + [ + "7.860277", + "0.000000000000000000000000", + "1.922727", + "0.000000000000000000000000" + ], + [ + "7.811578", + "0.000000000000000000000000", + "1.874274", + "0.000000000000000000000000" + ], + [ + "7.769307", + "0.000000000000000000000000", + "1.834225", + "0.000000000000000000000000" + ], + [ + "7.731964", + "0.000000000000000000000000", + "1.801078", + "0.000000000000000000000000" + ], + [ + "7.698315", + "0.000000000000000000000000", + "1.773597", + "0.000000000000000000000000" + ], + [ + "7.667347", + "0.000000000000000000000000", + "1.750772", + "0.000000000000000000000000" + ], + [ + "7.638225", + "0.000000000000000000000000", + "1.731769", + "0.000000000000000000000000" + ], + [ + "7.610265", + "0.000000000000000000000000", + "1.715906", + "0.000000000000000000000000" + ], + [ + "8.859563", + "0.000000000000000000000000", + "1.831004", + "0.000000000000000000000000" + ], + [ + "8.818712", + "0.000000000000000000000000", + "1.789962", + "0.000000000000000000000000" + ], + [ + "8.783294", + "0.000000000000000000000000", + "1.756334", + "0.000000000000000000000000" + ], + [ + "8.751955", + "0.000000000000000000000000", + "1.728763", + "0.000000000000000000000000" + ], + [ + "8.723586", + "0.000000000000000000000000", + "1.706139", + "0.000000000000000000000000" + ], + [ + "8.697275", + "0.000000000000000000000000", + "1.687553", + "0.000000000000000000000000" + ], + [ + "8.672276", + "0.000000000000000000000000", + "1.672260", + "0.000000000000000000000000" + ], + [ + "8.647975", + "0.000000000000000000000000", + "1.659647", + "0.000000000000000000000000" + ], + [ + "9.967949", + "0.000000000000000000000000", + "1.756688", + "0.000000000000000000000000" + ], + [ + "9.933528", + "0.000000000000000000000000", + "1.721726", + "0.000000000000000000000000" + ], + [ + "9.903725", + "0.000000000000000000000000", + "1.693363", + "0.000000000000000000000000" + ], + [ + "9.877306", + "0.000000000000000000000000", + "1.670366", + "0.000000000000000000000000" + ], + [ + "9.853261", + "0.000000000000000000000000", + "1.651726", + "0.000000000000000000000000" + ], + [ + "9.830766", + "0.000000000000000000000000", + "1.636618", + "0.000000000000000000000000" + ], + [ + "9.809145", + "0.000000000000000000000000", + "1.624368", + "0.000000000000000000000000" + ], + [ + "9.787844", + "0.000000000000000000000000", + "1.614425", + "0.000000000000000000000000" + ], + [ + "11.181628", + "0.000000000000000000000000", + "1.695332", + "0.000000000000000000000000" + ], + [ + "11.152574", + "0.000000000000000000000000", + "1.665443", + "0.000000000000000000000000" + ], + [ + "11.127456", + "0.000000000000000000000000", + "1.641475", + "0.000000000000000000000000" + ], + [ + "11.105143", + "0.000000000000000000000000", + "1.622296", + "0.000000000000000000000000" + ], + [ + "11.084709", + "0.000000000000000000000000", + "1.606982", + "0.000000000000000000000000" + ], + [ + "11.065400", + "0.000000000000000000000000", + "1.594778", + "0.000000000000000000000000" + ], + [ + "11.046598", + "0.000000000000000000000000", + "1.585069", + "0.000000000000000000000000" + ], + [ + "11.027803", + "0.000000000000000000000000", + "1.577354", + "0.000000000000000000000000" + ], + [ + "12.497995", + "0.000000000000000000000000", + "1.643873", + "0.000000000000000000000000" + ], + [ + "12.473489", + "0.000000000000000000000000", + "1.618280", + "0.000000000000000000000000" + ], + [ + "12.452342", + "0.000000000000000000000000", + "1.598035", + "0.000000000000000000000000" + ], + [ + "12.433508", + "0.000000000000000000000000", + "1.582090", + "0.000000000000000000000000" + ], + [ + "12.416135", + "0.000000000000000000000000", + "1.569592", + "0.000000000000000000000000" + ], + [ + "12.399527", + "0.000000000000000000000000", + "1.559847", + "0.000000000000000000000000" + ], + [ + "12.383117", + "0.000000000000000000000000", + "1.552291", + "0.000000000000000000000000" + ], + [ + "12.366447", + "0.000000000000000000000000", + "1.546464", + "0.000000000000000000000000" + ], + [ + "13.915213", + "0.000000000000000000000000", + "1.600135", + "0.000000000000000000000000" + ], + [ + "13.894610", + "0.000000000000000000000000", + "1.578227", + "0.000000000000000000000000" + ], + [ + "13.876873", + "0.000000000000000000000000", + "1.561174", + "0.000000000000000000000000" + ], + [ + "13.861028", + "0.000000000000000000000000", + "1.548002", + "0.000000000000000000000000" + ], + [ + "13.846284", + "0.000000000000000000000000", + "1.537920", + "0.000000000000000000000000" + ], + [ + "13.831996", + "0.000000000000000000000000", + "1.530285", + "0.000000000000000000000000" + ], + [ + "13.817643", + "0.000000000000000000000000", + "1.524575", + "0.000000000000000000000000" + ], + [ + "13.802800", + "0.000000000000000000000000", + "1.520368", + "0.000000000000000000000000" + ] + ] + }, + "1/2048": { + "a_dn": "3.643346", + "a_up": "13.825546", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "4.824669", + "0.000000000000000000000000", + "3.643346", + "0.000000000000000000000000" + ], + [ + "4.644603", + "0.000000000000000000000000", + "3.475115", + "0.000000000000000000000000" + ], + [ + "4.486903", + "0.000000000000000000000000", + "3.331133", + "0.000000000000000000000000" + ], + [ + "4.347793", + "0.000000000000000000000000", + "3.207600", + "0.000000000000000000000000" + ], + [ + "4.224130", + "0.000000000000000000000000", + "3.101361", + "0.000000000000000000000000" + ], + [ + "4.113292", + "0.000000000000000000000000", + "3.009789", + "0.000000000000000000000000" + ], + [ + "4.013084", + "0.000000000000000000000000", + "2.930698", + "0.000000000000000000000000" + ], + [ + "3.921666", + "0.000000000000000000000000", + "2.862258", + "0.000000000000000000000000" + ], + [ + "4.759118", + "0.000000000000000000000000", + "2.964132", + "0.000000000000000000000000" + ], + [ + "4.630194", + "0.000000000000000000000000", + "2.842419", + "0.000000000000000000000000" + ], + [ + "4.517374", + "0.000000000000000000000000", + "2.738738", + "0.000000000000000000000000" + ], + [ + "4.417783", + "0.000000000000000000000000", + "2.650198", + "0.000000000000000000000000" + ], + [ + "4.329031", + "0.000000000000000000000000", + "2.574402", + "0.000000000000000000000000" + ], + [ + "4.249131", + "0.000000000000000000000000", + "2.509362", + "0.000000000000000000000000" + ], + [ + "4.176422", + "0.000000000000000000000000", + "2.453420", + "0.000000000000000000000000" + ], + [ + "4.109520", + "0.000000000000000000000000", + "2.405198", + "0.000000000000000000000000" + ], + [ + "5.015546", + "0.000000000000000000000000", + "2.553191", + "0.000000000000000000000000" + ], + [ + "4.918344", + "0.000000000000000000000000", + "2.460703", + "0.000000000000000000000000" + ], + [ + "4.833324", + "0.000000000000000000000000", + "2.382351", + "0.000000000000000000000000" + ], + [ + "4.758178", + "0.000000000000000000000000", + "2.315815", + "0.000000000000000000000000" + ], + [ + "4.690993", + "0.000000000000000000000000", + "2.259175", + "0.000000000000000000000000" + ], + [ + "4.630179", + "0.000000000000000000000000", + "2.210841", + "0.000000000000000000000000" + ], + [ + "4.574413", + "0.000000000000000000000000", + "2.169492", + "0.000000000000000000000000" + ], + [ + "4.522594", + "0.000000000000000000000000", + "2.134033", + "0.000000000000000000000000" + ], + [ + "5.483464", + "0.000000000000000000000000", + "2.280164", + "0.000000000000000000000000" + ], + [ + "5.407758", + "0.000000000000000000000000", + "2.207678", + "0.000000000000000000000000" + ], + [ + "5.341559", + "0.000000000000000000000000", + "2.146665", + "0.000000000000000000000000" + ], + [ + "5.282945", + "0.000000000000000000000000", + "2.095197", + "0.000000000000000000000000" + ], + [ + "5.230330", + "0.000000000000000000000000", + "2.051682", + "0.000000000000000000000000" + ], + [ + "5.182396", + "0.000000000000000000000000", + "2.014802", + "0.000000000000000000000000" + ], + [ + "5.138052", + "0.000000000000000000000000", + "1.983466", + "0.000000000000000000000000" + ], + [ + "5.096390", + "0.000000000000000000000000", + "1.956772", + "0.000000000000000000000000" + ], + [ + "6.113177", + "0.000000000000000000000000", + "2.086608", + "0.000000000000000000000000" + ], + [ + "6.052958", + "0.000000000000000000000000", + "2.028645", + "0.000000000000000000000000" + ], + [ + "6.000308", + "0.000000000000000000000000", + "1.980225", + "0.000000000000000000000000" + ], + [ + "5.953586", + "0.000000000000000000000000", + "1.939704", + "0.000000000000000000000000" + ], + [ + "5.911442", + "0.000000000000000000000000", + "1.905727", + "0.000000000000000000000000" + ], + [ + "5.872758", + "0.000000000000000000000000", + "1.877175", + "0.000000000000000000000000" + ], + [ + "5.836608", + "0.000000000000000000000000", + "1.853124", + "0.000000000000000000000000" + ], + [ + "5.802227", + "0.000000000000000000000000", + "1.832812", + "0.000000000000000000000000" + ], + [ + "6.879266", + "0.000000000000000000000000", + "1.942711", + "0.000000000000000000000000" + ], + [ + "6.830718", + "0.000000000000000000000000", + "1.895760", + "0.000000000000000000000000" + ], + [ + "6.788270", + "0.000000000000000000000000", + "1.856891", + "0.000000000000000000000000" + ], + [ + "6.750498", + "0.000000000000000000000000", + "1.824675", + "0.000000000000000000000000" + ], + [ + "6.716229", + "0.000000000000000000000000", + "1.797935", + "0.000000000000000000000000" + ], + [ + "6.684495", + "0.000000000000000000000000", + "1.775705", + "0.000000000000000000000000" + ], + [ + "6.654499", + "0.000000000000000000000000", + "1.757187", + "0.000000000000000000000000" + ], + [ + "6.625583", + "0.000000000000000000000000", + "1.741726", + "0.000000000000000000000000" + ], + [ + "7.767467", + "0.000000000000000000000000", + "1.831782", + "0.000000000000000000000000" + ], + [ + "7.728020", + "0.000000000000000000000000", + "1.793463", + "0.000000000000000000000000" + ], + [ + "7.693523", + "0.000000000000000000000000", + "1.762081", + "0.000000000000000000000000" + ], + [ + "7.662722", + "0.000000000000000000000000", + "1.736376", + "0.000000000000000000000000" + ], + [ + "7.634582", + "0.000000000000000000000000", + "1.715313", + "0.000000000000000000000000" + ], + [ + "7.608256", + "0.000000000000000000000000", + "1.698042", + "0.000000000000000000000000" + ], + [ + "7.583045", + "0.000000000000000000000000", + "1.683867", + "0.000000000000000000000000" + ], + [ + "7.558375", + "0.000000000000000000000000", + "1.672214", + "0.000000000000000000000000" + ], + [ + "8.769190", + "0.000000000000000000000000", + "1.743793", + "0.000000000000000000000000" + ], + [ + "8.737033", + "0.000000000000000000000000", + "1.712419", + "0.000000000000000000000000" + ], + [ + "8.708904", + "0.000000000000000000000000", + "1.687061", + "0.000000000000000000000000" + ], + [ + "8.683680", + "0.000000000000000000000000", + "1.666596", + "0.000000000000000000000000" + ], + [ + "8.660445", + "0.000000000000000000000000", + "1.650101", + "0.000000000000000000000000" + ], + [ + "8.638442", + "0.000000000000000000000000", + "1.636824", + "0.000000000000000000000000" + ], + [ + "8.617055", + "0.000000000000000000000000", + "1.626146", + "0.000000000000000000000000" + ], + [ + "8.595777", + "0.000000000000000000000000", + "1.617562", + "0.000000000000000000000000" + ], + [ + "9.878972", + "0.000000000000000000000000", + "1.672376", + "0.000000000000000000000000" + ], + [ + "9.852783", + "0.000000000000000000000000", + "1.646708", + "0.000000000000000000000000" + ], + [ + "9.829863", + "0.000000000000000000000000", + "1.626300", + "0.000000000000000000000000" + ], + [ + "9.809203", + "0.000000000000000000000000", + "1.610141", + "0.000000000000000000000000" + ], + [ + "9.789977", + "0.000000000000000000000000", + "1.597402", + "0.000000000000000000000000" + ], + [ + "9.771509", + "0.000000000000000000000000", + "1.587408", + "0.000000000000000000000000" + ], + [ + "9.753246", + "0.000000000000000000000000", + "1.579606", + "0.000000000000000000000000" + ], + [ + "9.734738", + "0.000000000000000000000000", + "1.573547", + "0.000000000000000000000000" + ], + [ + "11.093176", + "0.000000000000000000000000", + "1.613300", + "0.000000000000000000000000" + ], + [ + "11.071961", + "0.000000000000000000000000", + "1.592403", + "0.000000000000000000000000" + ], + [ + "11.053383", + "0.000000000000000000000000", + "1.576134", + "0.000000000000000000000000" + ], + [ + "11.036524", + "0.000000000000000000000000", + "1.563576", + "0.000000000000000000000000" + ], + [ + "11.020636", + "0.000000000000000000000000", + "1.553979", + "0.000000000000000000000000" + ], + [ + "11.005109", + "0.000000000000000000000000", + "1.546731", + "0.000000000000000000000000" + ], + [ + "10.989445", + "0.000000000000000000000000", + "1.541335", + "0.000000000000000000000000" + ], + [ + "10.973242", + "0.000000000000000000000000", + "1.537390", + "0.000000000000000000000000" + ], + [ + "12.409296", + "0.000000000000000000000000", + "1.563654", + "0.000000000000000000000000" + ], + [ + "12.392289", + "0.000000000000000000000000", + "1.546804", + "0.000000000000000000000000" + ], + [ + "12.377382", + "0.000000000000000000000000", + "1.534047", + "0.000000000000000000000000" + ], + [ + "12.363737", + "0.000000000000000000000000", + "1.524544", + "0.000000000000000000000000" + ], + [ + "12.350671", + "0.000000000000000000000000", + "1.517612", + "0.000000000000000000000000" + ], + [ + "12.337630", + "0.000000000000000000000000", + "1.512694", + "0.000000000000000000000000" + ], + [ + "12.324162", + "0.000000000000000000000000", + "1.509342", + "0.000000000000000000000000" + ], + [ + "12.309905", + "0.000000000000000000000000", + "1.507191", + "0.000000000000000000000000" + ], + [ + "13.825546", + "0.000000000000000000000000", + "1.521368", + "0.000000000000000000000000" + ], + [ + "13.812146", + "0.000000000000000000000000", + "1.507993", + "0.000000000000000000000000" + ], + [ + "13.800384", + "0.000000000000000000000000", + "1.498252", + "0.000000000000000000000000" + ], + [ + "13.789492", + "0.000000000000000000000000", + "1.491374", + "0.000000000000000000000000" + ], + [ + "13.778842", + "0.000000000000000000000000", + "1.486732", + "0.000000000000000000000000" + ], + [ + "13.767929", + "0.000000000000000000000000", + "1.483817", + "0.000000000000000000000000" + ], + [ + "13.756341", + "0.000000000000000000000000", + "1.482221", + "0.000000000000000000000000" + ], + [ + "13.743748", + "0.000000000000000000000000", + "1.481612", + "0.000000000000000000000000" + ] + ] + }, + "1/256": { + "a_dn": "3.729062", + "a_up": "13.864900", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "4.907651", + "0.000000000000000000000000", + "3.729062", + "0.000000000000000000000000" + ], + [ + "4.717916", + "0.000000000000000000000000", + "3.551029", + "0.000000000000000000000000" + ], + [ + "4.552003", + "0.000000000000000000000000", + "3.398689", + "0.000000000000000000000000" + ], + [ + "4.405892", + "0.000000000000000000000000", + "3.267999", + "0.000000000000000000000000" + ], + [ + "4.276241", + "0.000000000000000000000000", + "3.155606", + "0.000000000000000000000000" + ], + [ + "4.160266", + "0.000000000000000000000000", + "3.058726", + "0.000000000000000000000000" + ], + [ + "4.055638", + "0.000000000000000000000000", + "2.975036", + "0.000000000000000000000000" + ], + [ + "3.960405", + "0.000000000000000000000000", + "2.902598", + "0.000000000000000000000000" + ], + [ + "4.825507", + "0.000000000000000000000000", + "3.032435", + "0.000000000000000000000000" + ], + [ + "4.688992", + "0.000000000000000000000000", + "2.902941", + "0.000000000000000000000000" + ], + [ + "4.569731", + "0.000000000000000000000000", + "2.792620", + "0.000000000000000000000000" + ], + [ + "4.464657", + "0.000000000000000000000000", + "2.698391", + "0.000000000000000000000000" + ], + [ + "4.371226", + "0.000000000000000000000000", + "2.617703", + "0.000000000000000000000000" + ], + [ + "4.287320", + "0.000000000000000000000000", + "2.548438", + "0.000000000000000000000000" + ], + [ + "4.211175", + "0.000000000000000000000000", + "2.488835", + "0.000000000000000000000000" + ], + [ + "4.141314", + "0.000000000000000000000000", + "2.437428", + "0.000000000000000000000000" + ], + [ + "5.072544", + "0.000000000000000000000000", + "2.611542", + "0.000000000000000000000000" + ], + [ + "4.968956", + "0.000000000000000000000000", + "2.512431", + "0.000000000000000000000000" + ], + [ + "4.878528", + "0.000000000000000000000000", + "2.428425", + "0.000000000000000000000000" + ], + [ + "4.798789", + "0.000000000000000000000000", + "2.357041", + "0.000000000000000000000000" + ], + [ + "4.727691", + "0.000000000000000000000000", + "2.296230", + "0.000000000000000000000000" + ], + [ + "4.663536", + "0.000000000000000000000000", + "2.244293", + "0.000000000000000000000000" + ], + [ + "4.604912", + "0.000000000000000000000000", + "2.199819", + "0.000000000000000000000000" + ], + [ + "4.550643", + "0.000000000000000000000000", + "2.161640", + "0.000000000000000000000000" + ], + [ + "5.534574", + "0.000000000000000000000000", + "2.332194", + "0.000000000000000000000000" + ], + [ + "5.453270", + "0.000000000000000000000000", + "2.253825", + "0.000000000000000000000000" + ], + [ + "5.382337", + "0.000000000000000000000000", + "2.187788", + "0.000000000000000000000000" + ], + [ + "5.319713", + "0.000000000000000000000000", + "2.132011", + "0.000000000000000000000000" + ], + [ + "5.263689", + "0.000000000000000000000000", + "2.084785", + "0.000000000000000000000000" + ], + [ + "5.212854", + "0.000000000000000000000000", + "2.044698", + "0.000000000000000000000000" + ], + [ + "5.166036", + "0.000000000000000000000000", + "2.010581", + "0.000000000000000000000000" + ], + [ + "5.122262", + "0.000000000000000000000000", + "1.981463", + "0.000000000000000000000000" + ], + [ + "6.160354", + "0.000000000000000000000000", + "2.134330", + "0.000000000000000000000000" + ], + [ + "6.095093", + "0.000000000000000000000000", + "2.070994", + "0.000000000000000000000000" + ], + [ + "6.038187", + "0.000000000000000000000000", + "2.017984", + "0.000000000000000000000000" + ], + [ + "5.987868", + "0.000000000000000000000000", + "1.973524", + "0.000000000000000000000000" + ], + [ + "5.942675", + "0.000000000000000000000000", + "1.936154", + "0.000000000000000000000000" + ], + [ + "5.901404", + "0.000000000000000000000000", + "1.904668", + "0.000000000000000000000000" + ], + [ + "5.863057", + "0.000000000000000000000000", + "1.878070", + "0.000000000000000000000000" + ], + [ + "5.826809", + "0.000000000000000000000000", + "1.855539", + "0.000000000000000000000000" + ], + [ + "6.923717", + "0.000000000000000000000000", + "1.987350", + "0.000000000000000000000000" + ], + [ + "6.870541", + "0.000000000000000000000000", + "1.935398", + "0.000000000000000000000000" + ], + [ + "6.824196", + "0.000000000000000000000000", + "1.892253", + "0.000000000000000000000000" + ], + [ + "6.783136", + "0.000000000000000000000000", + "1.856366", + "0.000000000000000000000000" + ], + [ + "6.746089", + "0.000000000000000000000000", + "1.826463", + "0.000000000000000000000000" + ], + [ + "6.712008", + "0.000000000000000000000000", + "1.801496", + "0.000000000000000000000000" + ], + [ + "6.680025", + "0.000000000000000000000000", + "1.780601", + "0.000000000000000000000000" + ], + [ + "6.649429", + "0.000000000000000000000000", + "1.763068", + "0.000000000000000000000000" + ], + [ + "7.809995", + "0.000000000000000000000000", + "1.874136", + "0.000000000000000000000000" + ], + [ + "7.766243", + "0.000000000000000000000000", + "1.831095", + "0.000000000000000000000000" + ], + [ + "7.728128", + "0.000000000000000000000000", + "1.795674", + "0.000000000000000000000000" + ], + [ + "7.694283", + "0.000000000000000000000000", + "1.766501", + "0.000000000000000000000000" + ], + [ + "7.663581", + "0.000000000000000000000000", + "1.742448", + "0.000000000000000000000000" + ], + [ + "7.635096", + "0.000000000000000000000000", + "1.722589", + "0.000000000000000000000000" + ], + [ + "7.608067", + "0.000000000000000000000000", + "1.706164", + "0.000000000000000000000000" + ], + [ + "7.581868", + "0.000000000000000000000000", + "1.692549", + "0.000000000000000000000000" + ], + [ + "8.810367", + "0.000000000000000000000000", + "1.784407", + "0.000000000000000000000000" + ], + [ + "8.774165", + "0.000000000000000000000000", + "1.748529", + "0.000000000000000000000000" + ], + [ + "8.742644", + "0.000000000000000000000000", + "1.719317", + "0.000000000000000000000000" + ], + [ + "8.714576", + "0.000000000000000000000000", + "1.695541", + "0.000000000000000000000000" + ], + [ + "8.688952", + "0.000000000000000000000000", + "1.676191", + "0.000000000000000000000000" + ], + [ + "8.664947", + "0.000000000000000000000000", + "1.660440", + "0.000000000000000000000000" + ], + [ + "8.641881", + "0.000000000000000000000000", + "1.647611", + "0.000000000000000000000000" + ], + [ + "8.619199", + "0.000000000000000000000000", + "1.637150", + "0.000000000000000000000000" + ], + [ + "9.919228", + "0.000000000000000000000000", + "1.711640", + "0.000000000000000000000000" + ], + [ + "9.889209", + "0.000000000000000000000000", + "1.681641", + "0.000000000000000000000000" + ], + [ + "9.863087", + "0.000000000000000000000000", + "1.657527", + "0.000000000000000000000000" + ], + [ + "9.839748", + "0.000000000000000000000000", + "1.638182", + "0.000000000000000000000000" + ], + [ + "9.818282", + "0.000000000000000000000000", + "1.622694", + "0.000000000000000000000000" + ], + [ + "9.797942", + "0.000000000000000000000000", + "1.610317", + "0.000000000000000000000000" + ], + [ + "9.778119", + "0.000000000000000000000000", + "1.600442", + "0.000000000000000000000000" + ], + [ + "9.758315", + "0.000000000000000000000000", + "1.592573", + "0.000000000000000000000000" + ], + [ + "11.132856", + "0.000000000000000000000000", + "1.651502", + "0.000000000000000000000000" + ], + [ + "11.107994", + "0.000000000000000000000000", + "1.626415", + "0.000000000000000000000000" + ], + [ + "11.086373", + "0.000000000000000000000000", + "1.606559", + "0.000000000000000000000000" + ], + [ + "11.066977", + "0.000000000000000000000000", + "1.590917", + "0.000000000000000000000000" + ], + [ + "11.048976", + "0.000000000000000000000000", + "1.578655", + "0.000000000000000000000000" + ], + [ + "11.031691", + "0.000000000000000000000000", + "1.569098", + "0.000000000000000000000000" + ], + [ + "11.014571", + "0.000000000000000000000000", + "1.561693", + "0.000000000000000000000000" + ], + [ + "10.997164", + "0.000000000000000000000000", + "1.555991", + "0.000000000000000000000000" + ], + [ + "12.448686", + "0.000000000000000000000000", + "1.601011", + "0.000000000000000000000000" + ], + [ + "12.428190", + "0.000000000000000000000000", + "1.580088", + "0.000000000000000000000000" + ], + [ + "12.410381", + "0.000000000000000000000000", + "1.563842", + "0.000000000000000000000000" + ], + [ + "12.394323", + "0.000000000000000000000000", + "1.551338", + "0.000000000000000000000000" + ], + [ + "12.379255", + "0.000000000000000000000000", + "1.541812", + "0.000000000000000000000000" + ], + [ + "12.364556", + "0.000000000000000000000000", + "1.534646", + "0.000000000000000000000000" + ], + [ + "12.349723", + "0.000000000000000000000000", + "1.529335", + "0.000000000000000000000000" + ], + [ + "12.334347", + "0.000000000000000000000000", + "1.525471", + "0.000000000000000000000000" + ], + [ + "13.864900", + "0.000000000000000000000000", + "1.558048", + "0.000000000000000000000000" + ], + [ + "13.848149", + "0.000000000000000000000000", + "1.540698", + "0.000000000000000000000000" + ], + [ + "13.833608", + "0.000000000000000000000000", + "1.527551", + "0.000000000000000000000000" + ], + [ + "13.820413", + "0.000000000000000000000000", + "1.517740", + "0.000000000000000000000000" + ], + [ + "13.807860", + "0.000000000000000000000000", + "1.510564", + "0.000000000000000000000000" + ], + [ + "13.795380", + "0.000000000000000000000000", + "1.505450", + "0.000000000000000000000000" + ], + [ + "13.782509", + "0.000000000000000000000000", + "1.501937", + "0.000000000000000000000000" + ], + [ + "13.768873", + "0.000000000000000000000000", + "1.499651", + "0.000000000000000000000000" + ] + ] + }, + "1/4096": { + "a_dn": "3.637234", + "a_up": "13.822900", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "4.818760", + "0.000000000000000000000000", + "3.637234", + "0.000000000000000000000000" + ], + [ + "4.639384", + "0.000000000000000000000000", + "3.469702", + "0.000000000000000000000000" + ], + [ + "4.482269", + "0.000000000000000000000000", + "3.326317", + "0.000000000000000000000000" + ], + [ + "4.343659", + "0.000000000000000000000000", + "3.203295", + "0.000000000000000000000000" + ], + [ + "4.220423", + "0.000000000000000000000000", + "3.097494", + "0.000000000000000000000000" + ], + [ + "4.109951", + "0.000000000000000000000000", + "3.006302", + "0.000000000000000000000000" + ], + [ + "4.010058", + "0.000000000000000000000000", + "2.927539", + "0.000000000000000000000000" + ], + [ + "3.918911", + "0.000000000000000000000000", + "2.859385", + "0.000000000000000000000000" + ], + [ + "4.754394", + "0.000000000000000000000000", + "2.959261", + "0.000000000000000000000000" + ], + [ + "4.626012", + "0.000000000000000000000000", + "2.838104", + "0.000000000000000000000000" + ], + [ + "4.513652", + "0.000000000000000000000000", + "2.734896", + "0.000000000000000000000000" + ], + [ + "4.414451", + "0.000000000000000000000000", + "2.646762", + "0.000000000000000000000000" + ], + [ + "4.326033", + "0.000000000000000000000000", + "2.571316", + "0.000000000000000000000000" + ], + [ + "4.246418", + "0.000000000000000000000000", + "2.506577", + "0.000000000000000000000000" + ], + [ + "4.173955", + "0.000000000000000000000000", + "2.450897", + "0.000000000000000000000000" + ], + [ + "4.107263", + "0.000000000000000000000000", + "2.402902", + "0.000000000000000000000000" + ], + [ + "5.011496", + "0.000000000000000000000000", + "2.549030", + "0.000000000000000000000000" + ], + [ + "4.914749", + "0.000000000000000000000000", + "2.457015", + "0.000000000000000000000000" + ], + [ + "4.830114", + "0.000000000000000000000000", + "2.379066", + "0.000000000000000000000000" + ], + [ + "4.755296", + "0.000000000000000000000000", + "2.312876", + "0.000000000000000000000000" + ], + [ + "4.688390", + "0.000000000000000000000000", + "2.256533", + "0.000000000000000000000000" + ], + [ + "4.627814", + "0.000000000000000000000000", + "2.208457", + "0.000000000000000000000000" + ], + [ + "4.572252", + "0.000000000000000000000000", + "2.167331", + "0.000000000000000000000000" + ], + [ + "4.520607", + "0.000000000000000000000000", + "2.132065", + "0.000000000000000000000000" + ], + [ + "5.479839", + "0.000000000000000000000000", + "2.276454", + "0.000000000000000000000000" + ], + [ + "5.404532", + "0.000000000000000000000000", + "2.204388", + "0.000000000000000000000000" + ], + [ + "5.338670", + "0.000000000000000000000000", + "2.143733", + "0.000000000000000000000000" + ], + [ + "5.280342", + "0.000000000000000000000000", + "2.092573", + "0.000000000000000000000000" + ], + [ + "5.227970", + "0.000000000000000000000000", + "2.049322", + "0.000000000000000000000000" + ], + [ + "5.180243", + "0.000000000000000000000000", + "2.012671", + "0.000000000000000000000000" + ], + [ + "5.136075", + "0.000000000000000000000000", + "1.981534", + "0.000000000000000000000000" + ], + [ + "5.094563", + "0.000000000000000000000000", + "1.955012", + "0.000000000000000000000000" + ], + [ + "6.109838", + "0.000000000000000000000000", + "2.083205", + "0.000000000000000000000000" + ], + [ + "6.049980", + "0.000000000000000000000000", + "2.025625", + "0.000000000000000000000000" + ], + [ + "5.997632", + "0.000000000000000000000000", + "1.977533", + "0.000000000000000000000000" + ], + [ + "5.951167", + "0.000000000000000000000000", + "1.937293", + "0.000000000000000000000000" + ], + [ + "5.909241", + "0.000000000000000000000000", + "1.903558", + "0.000000000000000000000000" + ], + [ + "5.870740", + "0.000000000000000000000000", + "1.875215", + "0.000000000000000000000000" + ], + [ + "5.834747", + "0.000000000000000000000000", + "1.851346", + "0.000000000000000000000000" + ], + [ + "5.800499", + "0.000000000000000000000000", + "1.831192", + "0.000000000000000000000000" + ], + [ + "6.876131", + "0.000000000000000000000000", + "1.939528", + "0.000000000000000000000000" + ], + [ + "6.827913", + "0.000000000000000000000000", + "1.892934", + "0.000000000000000000000000" + ], + [ + "6.785743", + "0.000000000000000000000000", + "1.854370", + "0.000000000000000000000000" + ], + [ + "6.748205", + "0.000000000000000000000000", + "1.822415", + "0.000000000000000000000000" + ], + [ + "6.714134", + "0.000000000000000000000000", + "1.795902", + "0.000000000000000000000000" + ], + [ + "6.682567", + "0.000000000000000000000000", + "1.773867", + "0.000000000000000000000000" + ], + [ + "6.652712", + "0.000000000000000000000000", + "1.755519", + "0.000000000000000000000000" + ], + [ + "6.623916", + "0.000000000000000000000000", + "1.740205", + "0.000000000000000000000000" + ], + [ + "7.764480", + "0.000000000000000000000000", + "1.828762", + "0.000000000000000000000000" + ], + [ + "7.725340", + "0.000000000000000000000000", + "1.790780", + "0.000000000000000000000000" + ], + [ + "7.691101", + "0.000000000000000000000000", + "1.759686", + "0.000000000000000000000000" + ], + [ + "7.660517", + "0.000000000000000000000000", + "1.734228", + "0.000000000000000000000000" + ], + [ + "7.632560", + "0.000000000000000000000000", + "1.713378", + "0.000000000000000000000000" + ], + [ + "7.606387", + "0.000000000000000000000000", + "1.696293", + "0.000000000000000000000000" + ], + [ + "7.581306", + "0.000000000000000000000000", + "1.682278", + "0.000000000000000000000000" + ], + [ + "7.556745", + "0.000000000000000000000000", + "1.670765", + "0.000000000000000000000000" + ], + [ + "8.766314", + "0.000000000000000000000000", + "1.740897", + "0.000000000000000000000000" + ], + [ + "8.734446", + "0.000000000000000000000000", + "1.709844", + "0.000000000000000000000000" + ], + [ + "8.706558", + "0.000000000000000000000000", + "1.684761", + "0.000000000000000000000000" + ], + [ + "8.681537", + "0.000000000000000000000000", + "1.664532", + "0.000000000000000000000000" + ], + [ + "8.658471", + "0.000000000000000000000000", + "1.648241", + "0.000000000000000000000000" + ], + [ + "8.636612", + "0.000000000000000000000000", + "1.635141", + "0.000000000000000000000000" + ], + [ + "8.615344", + "0.000000000000000000000000", + "1.624616", + "0.000000000000000000000000" + ], + [ + "8.594166", + "0.000000000000000000000000", + "1.616166", + "0.000000000000000000000000" + ], + [ + "9.876180", + "0.000000000000000000000000", + "1.669576", + "0.000000000000000000000000" + ], + [ + "9.850264", + "0.000000000000000000000000", + "1.644216", + "0.000000000000000000000000" + ], + [ + "9.827572", + "0.000000000000000000000000", + "1.624073", + "0.000000000000000000000000" + ], + [ + "9.807103", + "0.000000000000000000000000", + "1.608142", + "0.000000000000000000000000" + ], + [ + "9.788037", + "0.000000000000000000000000", + "1.595599", + "0.000000000000000000000000" + ], + [ + "9.769701", + "0.000000000000000000000000", + "1.585775", + "0.000000000000000000000000" + ], + [ + "9.751550", + "0.000000000000000000000000", + "1.578121", + "0.000000000000000000000000" + ], + [ + "9.733134", + "0.000000000000000000000000", + "1.572191", + "0.000000000000000000000000" + ], + [ + "11.090447", + "0.000000000000000000000000", + "1.610576", + "0.000000000000000000000000" + ], + [ + "11.069492", + "0.000000000000000000000000", + "1.589978", + "0.000000000000000000000000" + ], + [ + "11.051131", + "0.000000000000000000000000", + "1.573965", + "0.000000000000000000000000" + ], + [ + "11.034452", + "0.000000000000000000000000", + "1.561627", + "0.000000000000000000000000" + ], + [ + "11.018715", + "0.000000000000000000000000", + "1.552219", + "0.000000000000000000000000" + ], + [ + "11.003313", + "0.000000000000000000000000", + "1.545136", + "0.000000000000000000000000" + ], + [ + "10.987753", + "0.000000000000000000000000", + "1.539884", + "0.000000000000000000000000" + ], + [ + "10.971635", + "0.000000000000000000000000", + "1.536064", + "0.000000000000000000000000" + ], + [ + "12.406614", + "0.000000000000000000000000", + "1.560990", + "0.000000000000000000000000" + ], + [ + "12.389857", + "0.000000000000000000000000", + "1.544430", + "0.000000000000000000000000" + ], + [ + "12.375156", + "0.000000000000000000000000", + "1.531922", + "0.000000000000000000000000" + ], + [ + "12.361683", + "0.000000000000000000000000", + "1.522634", + "0.000000000000000000000000" + ], + [ + "12.348760", + "0.000000000000000000000000", + "1.515886", + "0.000000000000000000000000" + ], + [ + "12.335836", + "0.000000000000000000000000", + "1.511130", + "0.000000000000000000000000" + ], + [ + "12.322466", + "0.000000000000000000000000", + "1.507917", + "0.000000000000000000000000" + ], + [ + "12.308288", + "0.000000000000000000000000", + "1.505888", + "0.000000000000000000000000" + ], + [ + "13.822900", + "0.000000000000000000000000", + "1.518752", + "0.000000000000000000000000" + ], + [ + "13.809739", + "0.000000000000000000000000", + "1.505661", + "0.000000000000000000000000" + ], + [ + "13.798175", + "0.000000000000000000000000", + "1.496163", + "0.000000000000000000000000" + ], + [ + "13.787446", + "0.000000000000000000000000", + "1.489494", + "0.000000000000000000000000" + ], + [ + "13.776933", + "0.000000000000000000000000", + "1.485033", + "0.000000000000000000000000" + ], + [ + "13.766130", + "0.000000000000000000000000", + "1.482275", + "0.000000000000000000000000" + ], + [ + "13.754634", + "0.000000000000000000000000", + "1.480815", + "0.000000000000000000000000" + ], + [ + "13.742115", + "0.000000000000000000000000", + "1.480326", + "0.000000000000000000000000" + ] + ] + }, + "1/512": { + "a_dn": "3.680046", + "a_up": "13.841883", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "4.860173", + "0.000000000000000000000000", + "3.680046", + "0.000000000000000000000000" + ], + [ + "4.675967", + "0.000000000000000000000000", + "3.507617", + "0.000000000000000000000000" + ], + [ + "4.514750", + "0.000000000000000000000000", + "3.360055", + "0.000000000000000000000000" + ], + [ + "4.372643", + "0.000000000000000000000000", + "3.233456", + "0.000000000000000000000000" + ], + [ + "4.246416", + "0.000000000000000000000000", + "3.124581", + "0.000000000000000000000000" + ], + [ + "4.133378", + "0.000000000000000000000000", + "3.030736", + "0.000000000000000000000000" + ], + [ + "4.031278", + "0.000000000000000000000000", + "2.949675", + "0.000000000000000000000000" + ], + [ + "3.938227", + "0.000000000000000000000000", + "2.879523", + "0.000000000000000000000000" + ], + [ + "4.787510", + "0.000000000000000000000000", + "2.993376", + "0.000000000000000000000000" + ], + [ + "4.655335", + "0.000000000000000000000000", + "2.868331", + "0.000000000000000000000000" + ], + [ + "4.539758", + "0.000000000000000000000000", + "2.761806", + "0.000000000000000000000000" + ], + [ + "4.437819", + "0.000000000000000000000000", + "2.670829", + "0.000000000000000000000000" + ], + [ + "4.347064", + "0.000000000000000000000000", + "2.592938", + "0.000000000000000000000000" + ], + [ + "4.265449", + "0.000000000000000000000000", + "2.526088", + "0.000000000000000000000000" + ], + [ + "4.191269", + "0.000000000000000000000000", + "2.468578", + "0.000000000000000000000000" + ], + [ + "4.123101", + "0.000000000000000000000000", + "2.418992", + "0.000000000000000000000000" + ], + [ + "5.039905", + "0.000000000000000000000000", + "2.578175", + "0.000000000000000000000000" + ], + [ + "4.939969", + "0.000000000000000000000000", + "2.482851", + "0.000000000000000000000000" + ], + [ + "4.852634", + "0.000000000000000000000000", + "2.402076", + "0.000000000000000000000000" + ], + [ + "4.775522", + "0.000000000000000000000000", + "2.333464", + "0.000000000000000000000000" + ], + [ + "4.706662", + "0.000000000000000000000000", + "2.275037", + "0.000000000000000000000000" + ], + [ + "4.644417", + "0.000000000000000000000000", + "2.225160", + "0.000000000000000000000000" + ], + [ + "4.587428", + "0.000000000000000000000000", + "2.182473", + "0.000000000000000000000000" + ], + [ + "4.534560", + "0.000000000000000000000000", + "2.145849", + "0.000000000000000000000000" + ], + [ + "5.505287", + "0.000000000000000000000000", + "2.302442", + "0.000000000000000000000000" + ], + [ + "5.427184", + "0.000000000000000000000000", + "2.227436", + "0.000000000000000000000000" + ], + [ + "5.358958", + "0.000000000000000000000000", + "2.164271", + "0.000000000000000000000000" + ], + [ + "5.298628", + "0.000000000000000000000000", + "2.110958", + "0.000000000000000000000000" + ], + [ + "5.244553", + "0.000000000000000000000000", + "2.065853", + "0.000000000000000000000000" + ], + [ + "5.195378", + "0.000000000000000000000000", + "2.027600", + "0.000000000000000000000000" + ], + [ + "5.149975", + "0.000000000000000000000000", + "1.995072", + "0.000000000000000000000000" + ], + [ + "5.107409", + "0.000000000000000000000000", + "1.967340", + "0.000000000000000000000000" + ], + [ + "6.133294", + "0.000000000000000000000000", + "2.107042", + "0.000000000000000000000000" + ], + [ + "6.070917", + "0.000000000000000000000000", + "2.046777", + "0.000000000000000000000000" + ], + [ + "6.016445", + "0.000000000000000000000000", + "1.996391", + "0.000000000000000000000000" + ], + [ + "5.968183", + "0.000000000000000000000000", + "1.954183", + "0.000000000000000000000000" + ], + [ + "5.924734", + "0.000000000000000000000000", + "1.918753", + "0.000000000000000000000000" + ], + [ + "5.884943", + "0.000000000000000000000000", + "1.888944", + "0.000000000000000000000000" + ], + [ + "5.847852", + "0.000000000000000000000000", + "1.863802", + "0.000000000000000000000000" + ], + [ + "5.812673", + "0.000000000000000000000000", + "1.842540", + "0.000000000000000000000000" + ], + [ + "6.898188", + "0.000000000000000000000000", + "1.961824", + "0.000000000000000000000000" + ], + [ + "6.847659", + "0.000000000000000000000000", + "1.912732", + "0.000000000000000000000000" + ], + [ + "6.803543", + "0.000000000000000000000000", + "1.872031", + "0.000000000000000000000000" + ], + [ + "6.764363", + "0.000000000000000000000000", + "1.838243", + "0.000000000000000000000000" + ], + [ + "6.728905", + "0.000000000000000000000000", + "1.810148", + "0.000000000000000000000000" + ], + [ + "6.696166", + "0.000000000000000000000000", + "1.786746", + "0.000000000000000000000000" + ], + [ + "6.665321", + "0.000000000000000000000000", + "1.767210", + "0.000000000000000000000000" + ], + [ + "6.635686", + "0.000000000000000000000000", + "1.750861", + "0.000000000000000000000000" + ], + [ + "7.785529", + "0.000000000000000000000000", + "1.849917", + "0.000000000000000000000000" + ], + [ + "7.744239", + "0.000000000000000000000000", + "1.809576", + "0.000000000000000000000000" + ], + [ + "7.708194", + "0.000000000000000000000000", + "1.776464", + "0.000000000000000000000000" + ], + [ + "7.676089", + "0.000000000000000000000000", + "1.749274", + "0.000000000000000000000000" + ], + [ + "7.646853", + "0.000000000000000000000000", + "1.726930", + "0.000000000000000000000000" + ], + [ + "7.619603", + "0.000000000000000000000000", + "1.708551", + "0.000000000000000000000000" + ], + [ + "7.593615", + "0.000000000000000000000000", + "1.693412", + "0.000000000000000000000000" + ], + [ + "7.568291", + "0.000000000000000000000000", + "1.680919", + "0.000000000000000000000000" + ], + [ + "8.786628", + "0.000000000000000000000000", + "1.761183", + "0.000000000000000000000000" + ], + [ + "8.752739", + "0.000000000000000000000000", + "1.727880", + "0.000000000000000000000000" + ], + [ + "8.723158", + "0.000000000000000000000000", + "1.700872", + "0.000000000000000000000000" + ], + [ + "8.696717", + "0.000000000000000000000000", + "1.678988", + "0.000000000000000000000000" + ], + [ + "8.672459", + "0.000000000000000000000000", + "1.661271", + "0.000000000000000000000000" + ], + [ + "8.649600", + "0.000000000000000000000000", + "1.646934", + "0.000000000000000000000000" + ], + [ + "8.627495", + "0.000000000000000000000000", + "1.635335", + "0.000000000000000000000000" + ], + [ + "8.605616", + "0.000000000000000000000000", + "1.625947", + "0.000000000000000000000000" + ], + [ + "9.895957", + "0.000000000000000000000000", + "1.689188", + "0.000000000000000000000000" + ], + [ + "9.868129", + "0.000000000000000000000000", + "1.661665", + "0.000000000000000000000000" + ], + [ + "9.843839", + "0.000000000000000000000000", + "1.639670", + "0.000000000000000000000000" + ], + [ + "9.822032", + "0.000000000000000000000000", + "1.622146", + "0.000000000000000000000000" + ], + [ + "9.801847", + "0.000000000000000000000000", + "1.608230", + "0.000000000000000000000000" + ], + [ + "9.782578", + "0.000000000000000000000000", + "1.597215", + "0.000000000000000000000000" + ], + [ + "9.763648", + "0.000000000000000000000000", + "1.588526", + "0.000000000000000000000000" + ], + [ + "9.744586", + "0.000000000000000000000000", + "1.581691", + "0.000000000000000000000000" + ], + [ + "11.109844", + "0.000000000000000000000000", + "1.629658", + "0.000000000000000000000000" + ], + [ + "11.087068", + "0.000000000000000000000000", + "1.606966", + "0.000000000000000000000000" + ], + [ + "11.067187", + "0.000000000000000000000000", + "1.589161", + "0.000000000000000000000000" + ], + [ + "11.049242", + "0.000000000000000000000000", + "1.575282", + "0.000000000000000000000000" + ], + [ + "11.032450", + "0.000000000000000000000000", + "1.564543", + "0.000000000000000000000000" + ], + [ + "11.016171", + "0.000000000000000000000000", + "1.556306", + "0.000000000000000000000000" + ], + [ + "10.999885", + "0.000000000000000000000000", + "1.550050", + "0.000000000000000000000000" + ], + [ + "10.983167", + "0.000000000000000000000000", + "1.545352", + "0.000000000000000000000000" + ], + [ + "12.425753", + "0.000000000000000000000000", + "1.579650", + "0.000000000000000000000000" + ], + [ + "12.407253", + "0.000000000000000000000000", + "1.561055", + "0.000000000000000000000000" + ], + [ + "12.391103", + "0.000000000000000000000000", + "1.546804", + "0.000000000000000000000000" + ], + [ + "12.376426", + "0.000000000000000000000000", + "1.536016", + "0.000000000000000000000000" + ], + [ + "12.362503", + "0.000000000000000000000000", + "1.527973", + "0.000000000000000000000000" + ], + [ + "12.348753", + "0.000000000000000000000000", + "1.522092", + "0.000000000000000000000000" + ], + [ + "12.334702", + "0.000000000000000000000000", + "1.517901", + "0.000000000000000000000000" + ], + [ + "12.319966", + "0.000000000000000000000000", + "1.515016", + "0.000000000000000000000000" + ], + [ + "13.841883", + "0.000000000000000000000000", + "1.537074", + "0.000000000000000000000000" + ], + [ + "13.827049", + "0.000000000000000000000000", + "1.521997", + "0.000000000000000000000000" + ], + [ + "13.814098", + "0.000000000000000000000000", + "1.510797", + "0.000000000000000000000000" + ], + [ + "13.802220", + "0.000000000000000000000000", + "1.502663", + "0.000000000000000000000000" + ], + [ + "13.790756", + "0.000000000000000000000000", + "1.496935", + "0.000000000000000000000000" + ], + [ + "13.779173", + "0.000000000000000000000000", + "1.493078", + "0.000000000000000000000000" + ], + [ + "13.767036", + "0.000000000000000000000000", + "1.490661", + "0.000000000000000000000000" + ], + [ + "13.753998", + "0.000000000000000000000000", + "1.489334", + "0.000000000000000000000000" + ] + ] + }, + "1/64": { + "a_dn": "4.025510", + "a_up": "14.033374", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "5.196329", + "0.000000000000000000000000", + "4.025510", + "0.000000000000000000000000" + ], + [ + "4.973162", + "0.000000000000000000000000", + "3.813685", + "0.000000000000000000000000" + ], + [ + "4.778842", + "0.000000000000000000000000", + "3.632524", + "0.000000000000000000000000" + ], + [ + "4.608510", + "0.000000000000000000000000", + "3.477156", + "0.000000000000000000000000" + ], + [ + "4.458140", + "0.000000000000000000000000", + "3.343549", + "0.000000000000000000000000" + ], + [ + "4.324384", + "0.000000000000000000000000", + "3.228363", + "0.000000000000000000000000" + ], + [ + "4.204451", + "0.000000000000000000000000", + "3.128818", + "0.000000000000000000000000" + ], + [ + "4.096007", + "0.000000000000000000000000", + "3.042597", + "0.000000000000000000000000" + ], + [ + "5.057336", + "0.000000000000000000000000", + "3.268677", + "0.000000000000000000000000" + ], + [ + "4.894548", + "0.000000000000000000000000", + "3.112345", + "0.000000000000000000000000" + ], + [ + "4.752992", + "0.000000000000000000000000", + "2.979124", + "0.000000000000000000000000" + ], + [ + "4.628940", + "0.000000000000000000000000", + "2.865275", + "0.000000000000000000000000" + ], + [ + "4.519303", + "0.000000000000000000000000", + "2.767711", + "0.000000000000000000000000" + ], + [ + "4.421520", + "0.000000000000000000000000", + "2.683875", + "0.000000000000000000000000" + ], + [ + "4.333459", + "0.000000000000000000000000", + "2.611644", + "0.000000000000000000000000" + ], + [ + "4.253344", + "0.000000000000000000000000", + "2.549253", + "0.000000000000000000000000" + ], + [ + "5.272631", + "0.000000000000000000000000", + "2.813381", + "0.000000000000000000000000" + ], + [ + "5.146933", + "0.000000000000000000000000", + "2.691418", + "0.000000000000000000000000" + ], + [ + "5.037772", + "0.000000000000000000000000", + "2.587902", + "0.000000000000000000000000" + ], + [ + "4.942115", + "0.000000000000000000000000", + "2.499796", + "0.000000000000000000000000" + ], + [ + "4.857456", + "0.000000000000000000000000", + "2.424594", + "0.000000000000000000000000" + ], + [ + "4.781717", + "0.000000000000000000000000", + "2.360225", + "0.000000000000000000000000" + ], + [ + "4.713177", + "0.000000000000000000000000", + "2.304971", + "0.000000000000000000000000" + ], + [ + "4.650401", + "0.000000000000000000000000", + "2.257410", + "0.000000000000000000000000" + ], + [ + "5.715316", + "0.000000000000000000000000", + "2.512179", + "0.000000000000000000000000" + ], + [ + "5.614614", + "0.000000000000000000000000", + "2.413508", + "0.000000000000000000000000" + ], + [ + "5.527276", + "0.000000000000000000000000", + "2.330131", + "0.000000000000000000000000" + ], + [ + "5.450740", + "0.000000000000000000000000", + "2.259484", + "0.000000000000000000000000" + ], + [ + "5.382892", + "0.000000000000000000000000", + "2.199456", + "0.000000000000000000000000" + ], + [ + "5.321987", + "0.000000000000000000000000", + "2.148303", + "0.000000000000000000000000" + ], + [ + "5.266577", + "0.000000000000000000000000", + "2.104585", + "0.000000000000000000000000" + ], + [ + "5.215461", + "0.000000000000000000000000", + "2.067107", + "0.000000000000000000000000" + ], + [ + "6.328861", + "0.000000000000000000000000", + "2.299428", + "0.000000000000000000000000" + ], + [ + "6.246113", + "0.000000000000000000000000", + "2.217547", + "0.000000000000000000000000" + ], + [ + "6.174446", + "0.000000000000000000000000", + "2.148690", + "0.000000000000000000000000" + ], + [ + "6.111638", + "0.000000000000000000000000", + "2.090635", + "0.000000000000000000000000" + ], + [ + "6.055860", + "0.000000000000000000000000", + "2.041553", + "0.000000000000000000000000" + ], + [ + "6.005600", + "0.000000000000000000000000", + "1.999940", + "0.000000000000000000000000" + ], + [ + "5.959612", + "0.000000000000000000000000", + "1.964551", + "0.000000000000000000000000" + ], + [ + "5.916863", + "0.000000000000000000000000", + "1.934360", + "0.000000000000000000000000" + ], + [ + "7.084582", + "0.000000000000000000000000", + "2.141798", + "0.000000000000000000000000" + ], + [ + "7.015344", + "0.000000000000000000000000", + "2.072576", + "0.000000000000000000000000" + ], + [ + "6.955469", + "0.000000000000000000000000", + "2.014667", + "0.000000000000000000000000" + ], + [ + "6.902990", + "0.000000000000000000000000", + "1.966109", + "0.000000000000000000000000" + ], + [ + "6.856291", + "0.000000000000000000000000", + "1.925286", + "0.000000000000000000000000" + ], + [ + "6.814041", + "0.000000000000000000000000", + "1.890870", + "0.000000000000000000000000" + ], + [ + "6.775142", + "0.000000000000000000000000", + "1.861770", + "0.000000000000000000000000" + ], + [ + "6.738688", + "0.000000000000000000000000", + "1.837082", + "0.000000000000000000000000" + ], + [ + "7.966508", + "0.000000000000000000000000", + "2.020691", + "0.000000000000000000000000" + ], + [ + "7.907803", + "0.000000000000000000000000", + "1.961343", + "0.000000000000000000000000" + ], + [ + "7.857121", + "0.000000000000000000000000", + "1.911976", + "0.000000000000000000000000" + ], + [ + "7.812696", + "0.000000000000000000000000", + "1.870827", + "0.000000000000000000000000" + ], + [ + "7.773078", + "0.000000000000000000000000", + "1.836449", + "0.000000000000000000000000" + ], + [ + "7.737075", + "0.000000000000000000000000", + "1.807652", + "0.000000000000000000000000" + ], + [ + "7.703707", + "0.000000000000000000000000", + "1.783460", + "0.000000000000000000000000" + ], + [ + "7.672166", + "0.000000000000000000000000", + "1.763070", + "0.000000000000000000000000" + ], + [ + "8.965114", + "0.000000000000000000000000", + "1.924959", + "0.000000000000000000000000" + ], + [ + "8.914854", + "0.000000000000000000000000", + "1.873522", + "0.000000000000000000000000" + ], + [ + "8.871544", + "0.000000000000000000000000", + "1.830999", + "0.000000000000000000000000" + ], + [ + "8.833578", + "0.000000000000000000000000", + "1.795788", + "0.000000000000000000000000" + ], + [ + "8.799641", + "0.000000000000000000000000", + "1.766573", + "0.000000000000000000000000" + ], + [ + "8.768651", + "0.000000000000000000000000", + "1.742279", + "0.000000000000000000000000" + ], + [ + "8.739722", + "0.000000000000000000000000", + "1.722022", + "0.000000000000000000000000" + ], + [ + "8.712126", + "0.000000000000000000000000", + "1.705078", + "0.000000000000000000000000" + ], + [ + "10.074419", + "0.000000000000000000000000", + "1.847535", + "0.000000000000000000000000" + ], + [ + "10.031083", + "0.000000000000000000000000", + "1.802575", + "0.000000000000000000000000" + ], + [ + "9.993820", + "0.000000000000000000000000", + "1.765655", + "0.000000000000000000000000" + ], + [ + "9.961154", + "0.000000000000000000000000", + "1.735303", + "0.000000000000000000000000" + ], + [ + "9.931878", + "0.000000000000000000000000", + "1.710316", + "0.000000000000000000000000" + ], + [ + "9.905005", + "0.000000000000000000000000", + "1.689709", + "0.000000000000000000000000" + ], + [ + "9.879724", + "0.000000000000000000000000", + "1.672674", + "0.000000000000000000000000" + ], + [ + "9.855371", + "0.000000000000000000000000", + "1.658553", + "0.000000000000000000000000" + ], + [ + "11.290512", + "0.000000000000000000000000", + "1.783735", + "0.000000000000000000000000" + ], + [ + "11.252961", + "0.000000000000000000000000", + "1.744171", + "0.000000000000000000000000" + ], + [ + "11.220751", + "0.000000000000000000000000", + "1.711919", + "0.000000000000000000000000" + ], + [ + "11.192517", + "0.000000000000000000000000", + "1.685617", + "0.000000000000000000000000" + ], + [ + "11.167142", + "0.000000000000000000000000", + "1.664152", + "0.000000000000000000000000" + ], + [ + "11.143713", + "0.000000000000000000000000", + "1.646616", + "0.000000000000000000000000" + ], + [ + "11.121487", + "0.000000000000000000000000", + "1.632266", + "0.000000000000000000000000" + ], + [ + "11.099852", + "0.000000000000000000000000", + "1.620497", + "0.000000000000000000000000" + ], + [ + "12.610765", + "0.000000000000000000000000", + "1.730335", + "0.000000000000000000000000" + ], + [ + "12.578124", + "0.000000000000000000000000", + "1.695333", + "0.000000000000000000000000" + ], + [ + "12.550204", + "0.000000000000000000000000", + "1.667028", + "0.000000000000000000000000" + ], + [ + "12.525734", + "0.000000000000000000000000", + "1.644150", + "0.000000000000000000000000" + ], + [ + "12.503673", + "0.000000000000000000000000", + "1.625664", + "0.000000000000000000000000" + ], + [ + "12.483175", + "0.000000000000000000000000", + "1.610724", + "0.000000000000000000000000" + ], + [ + "12.463548", + "0.000000000000000000000000", + "1.598645", + "0.000000000000000000000000" + ], + [ + "12.444228", + "0.000000000000000000000000", + "1.588863", + "0.000000000000000000000000" + ], + [ + "14.033374", + "0.000000000000000000000000", + "1.685046", + "0.000000000000000000000000" + ], + [ + "14.004955", + "0.000000000000000000000000", + "1.653952", + "0.000000000000000000000000" + ], + [ + "13.980728", + "0.000000000000000000000000", + "1.629026", + "0.000000000000000000000000" + ], + [ + "13.959498", + "0.000000000000000000000000", + "1.609079", + "0.000000000000000000000000" + ], + [ + "13.940293", + "0.000000000000000000000000", + "1.593142", + "0.000000000000000000000000" + ], + [ + "13.922321", + "0.000000000000000000000000", + "1.580426", + "0.000000000000000000000000" + ], + [ + "13.904938", + "0.000000000000000000000000", + "1.570289", + "0.000000000000000000000000" + ], + [ + "13.887617", + "0.000000000000000000000000", + "1.562209", + "0.000000000000000000000000" + ] + ] + } + }, + "rate_torus": { + "1/1024": { + "a_dn": "3.655573", + "a_up": "13.830904", + "beta_dn": "0.000000001031826892986738", + "beta_up": "0.000000001031840226697547", + "boxes": [ + [ + "4.836494", + "0.000000000114447742994620", + "3.655573", + "0.000000000114447233687811" + ], + [ + "4.655049", + "0.000000000115178846731284", + "3.485943", + "0.000000000115178351429642" + ], + [ + "4.496177", + "0.000000000115938610807029", + "3.340769", + "0.000000000115938127493659" + ], + [ + "4.356068", + "0.000000000116723565261434", + "3.216214", + "0.000000000116723092255898" + ], + [ + "4.231551", + "0.000000000117530898361706", + "3.109096", + "0.000000000117530434266563" + ], + [ + "4.119980", + "0.000000000118358321858340", + "3.016767", + "0.000000000118357865514981" + ], + [ + "4.019142", + "0.000000000119203964920206", + "2.937020", + "0.000000000119203515372235" + ], + [ + "3.927179", + "0.000000000120066290347605", + "2.868009", + "0.000000000120065846810388" + ], + [ + "4.768572", + "0.000000000157918398066736", + "2.973875", + "0.000000000157917703424564" + ], + [ + "4.638565", + "0.000000000158811978118087", + "2.851052", + "0.000000000158811296584101" + ], + [ + "4.524827", + "0.000000000159735555101138", + "2.746423", + "0.000000000159734884602901" + ], + [ + "4.424453", + "0.000000000160685642861489", + "2.657071", + "0.000000000160684981694725" + ], + [ + "4.335034", + "0.000000000161659412198110", + "2.580578", + "0.000000000161658758967562" + ], + [ + "4.254562", + "0.000000000162654556086381", + "2.514934", + "0.000000000162653909656951" + ], + [ + "4.181364", + "0.000000000163669183592825", + "2.458470", + "0.000000000163668543049082" + ], + [ + "4.114039", + "0.000000000164701736081155", + "2.409793", + "0.000000000164701100693683" + ], + [ + "5.023655", + "0.000000000209039566162056", + "2.561515", + "0.000000000209038595951501" + ], + [ + "4.925541", + "0.000000000210095622793665", + "2.468082", + "0.000000000210094664528744" + ], + [ + "4.839750", + "0.000000000211183012951927", + "2.388923", + "0.000000000211182064502327" + ], + [ + "4.763949", + "0.000000000212298234284824", + "2.321695", + "0.000000000212297293923736" + ], + [ + "4.696206", + "0.000000000213438440120161", + "2.264459", + "0.000000000213437506458744" + ], + [ + "4.634916", + "0.000000000214601304655855", + "2.215611", + "0.000000000214600376589105" + ], + [ + "4.578742", + "0.000000000215784916854201", + "2.173817", + "0.000000000215783993516112" + ], + [ + "4.526574", + "0.000000000216987696640829", + "2.137969", + "0.000000000216986777367162" + ], + [ + "5.490725", + "0.000000000267811271801141", + "2.287587", + "0.000000000267809911268621" + ], + [ + "5.414220", + "0.000000000269029805471984", + "2.214261", + "0.000000000269028455263570" + ], + [ + "5.347346", + "0.000000000270281009251359", + "2.152531", + "0.000000000270279667191937" + ], + [ + "5.288160", + "0.000000000271561364588040", + "2.100448", + "0.000000000271560028942931" + ], + [ + "5.235059", + "0.000000000272868007337467", + "2.056403", + "0.000000000272866676740111" + ], + [ + "5.186712", + "0.000000000274198592919200", + "2.019065", + "0.000000000274197266311442" + ], + [ + "5.142014", + "0.000000000275551190190667", + "1.987333", + "0.000000000275549866773327" + ], + [ + "5.100051", + "0.000000000276924197638978", + "1.960292", + "0.000000000276922876830825" + ], + [ + "6.119866", + "0.000000000334233544792695", + "2.093416", + "0.000000000334231649375927" + ], + [ + "6.058928", + "0.000000000335614556081389", + "2.034686", + "0.000000000335612668788581" + ], + [ + "6.005671", + "0.000000000337029574040187", + "1.985611", + "0.000000000337027692671730" + ], + [ + "5.958436", + "0.000000000338475063918029", + "1.944528", + "0.000000000338473186752310" + ], + [ + "5.915858", + "0.000000000339948144097598", + "1.910067", + "0.000000000339946269811661" + ], + [ + "5.876804", + "0.000000000341446451219894", + "1.881096", + "0.000000000341444578823964" + ], + [ + "5.840341", + "0.000000000342968034037419", + "1.856681", + "0.000000000342966162820724" + ], + [ + "5.805694", + "0.000000000344511269598824", + "1.836053", + "0.000000000344509399084671" + ], + [ + "6.885552", + "0.000000000408306419537185", + "1.949079", + "0.000000000408303810273416" + ], + [ + "6.836344", + "0.000000000409849909111380", + "1.901415", + "0.000000000409847305103776" + ], + [ + "6.793341", + "0.000000000411428741893109", + "1.861936", + "0.000000000411426140941708" + ], + [ + "6.755100", + "0.000000000413039366931367", + "1.829195", + "0.000000000413036767351873" + ], + [ + "6.720434", + "0.000000000414678885136117", + "1.802004", + "0.000000000414676285673395" + ], + [ + "6.688366", + "0.000000000416344914369957", + "1.779383", + "0.000000000416342314126668" + ], + [ + "6.658087", + "0.000000000418035483280719", + "1.760526", + "0.000000000418032881658306" + ], + [ + "6.628931", + "0.000000000419748947478919", + "1.744769", + "0.000000000419746344128701" + ], + [ + "7.773460", + "0.000000000490029934769175", + "1.837824", + "0.000000000490026393961089" + ], + [ + "7.733399", + "0.000000000491735903371025", + "1.798832", + "0.000000000491732364209154" + ], + [ + "7.698387", + "0.000000000493478551691484", + "1.766873", + "0.000000000493475012001870" + ], + [ + "7.667151", + "0.000000000495254312579782", + "1.740673", + "0.000000000495250770741620" + ], + [ + "7.638647", + "0.000000000497060269473450", + "1.719183", + "0.000000000497056724325313" + ], + [ + "7.612013", + "0.000000000498894021457057", + "1.701543", + "0.000000000498890472219557" + ], + [ + "7.586543", + "0.000000000500753577074193", + "1.687047", + "0.000000000500750023286071" + ], + [ + "7.561655", + "0.000000000502637270497719", + "1.675114", + "0.000000000502633711962915" + ], + [ + "8.774968", + "0.000000000579404133447089", + "1.749587", + "0.000000000579399400438946" + ], + [ + "8.742234", + "0.000000000581272581885656", + "1.717570", + "0.000000000581267846104717" + ], + [ + "8.713621", + "0.000000000583179046526181", + "1.691663", + "0.000000000583174305852215" + ], + [ + "8.687992", + "0.000000000585119944018495", + "1.670725", + "0.000000000585115196921551" + ], + [ + "8.664416", + "0.000000000587092340328139", + "1.653823", + "0.000000000587087585767414" + ], + [ + "8.642128", + "0.000000000589093815762152", + "1.640192", + "0.000000000589089053102630" + ], + [ + "8.620502", + "0.000000000591122358760429", + "1.629207", + "0.000000000591117587704020" + ], + [ + "8.599024", + "0.000000000593176282058746", + "1.620355", + "0.000000000593171502587312" + ], + [ + "9.884590", + "0.000000000676429062700749", + "1.677977", + "0.000000000676422829706987" + ], + [ + "9.857854", + "0.000000000678459991847711", + "1.651691", + "0.000000000678453750790463" + ], + [ + "9.834478", + "0.000000000680530273651368", + "1.630755", + "0.000000000680524022492745" + ], + [ + "9.813436", + "0.000000000682636308562631", + "1.614141", + "0.000000000682630045891665" + ], + [ + "9.793891", + "0.000000000684775145075598", + "1.601010", + "0.000000000684768869999699" + ], + [ + "9.775156", + "0.000000000686944344720359", + "1.590675", + "0.000000000686938056775886" + ], + [ + "9.756671", + "0.000000000689141875833732", + "1.582578", + "0.000000000689135574912153" + ], + [ + "9.737978", + "0.000000000691366029715044", + "1.576260", + "0.000000000691359716001893" + ], + [ + "11.098676", + "0.000000000781104773804246", + "1.618751", + "0.000000000781096681765212" + ], + [ + "11.076941", + "0.000000000783298184591339", + "1.597255", + "0.000000000783290078266394" + ], + [ + "11.057929", + "0.000000000785532284460642", + "1.580475", + "0.000000000785524161923458" + ], + [ + "11.040708", + "0.000000000787803457664718", + "1.567476", + "0.000000000787795317651963" + ], + [ + "11.024519", + "0.000000000790108735226826", + "1.557498", + "0.000000000790100577022169" + ], + [ + "11.008742", + "0.000000000792445659900757", + "1.549921", + "0.000000000792437483239326" + ], + [ + "10.992871", + "0.000000000794812179920911", + "1.544239", + "0.000000000794803984910469" + ], + [ + "10.976496", + "0.000000000797206565150845", + "1.540042", + "0.000000000797198352206658" + ], + [ + "12.414711", + "0.000000000893431322160984", + "1.568984", + "0.000000000893420956613621" + ], + [ + "12.397207", + "0.000000000895787215578384", + "1.551552", + "0.000000000895776828532508" + ], + [ + "12.381886", + "0.000000000898185134473871", + "1.538297", + "0.000000000898174724144355" + ], + [ + "12.367897", + "0.000000000900621446902277", + "1.528366", + "0.000000000900611012202445" + ], + [ + "12.354546", + "0.000000000903093166416683", + "1.521064", + "0.000000000903082706834821" + ], + [ + "12.341268", + "0.000000000905597816995263", + "1.515825", + "0.000000000905587332492949" + ], + [ + "12.327607", + "0.000000000908133326770700", + "1.512194", + "0.000000000908122817698969" + ], + [ + "12.313190", + "0.000000000910697944171485", + "1.509798", + "0.000000000910687411201606" + ], + [ + "13.830904", + "0.000000001013408767294971", + "1.526601", + "0.000000001013395654252215" + ], + [ + "13.817026", + "0.000000001015927144390250", + "1.512659", + "0.000000001015914001588807" + ], + [ + "13.804868", + "0.000000001018488883329545", + "1.502432", + "0.000000001018475709155437" + ], + [ + "13.793648", + "0.000000001021090335970620", + "1.495135", + "0.000000001021077129543111" + ], + [ + "13.782727", + "0.000000001023728498397076", + "1.490131", + "0.000000001023715259437658" + ], + [ + "13.771590", + "0.000000001026400875812178", + "1.486903", + "0.000000001026387604536757" + ], + [ + "13.759820", + "0.000000001029105376247618", + "1.485033", + "0.000000001029092073277653" + ], + [ + "13.747079", + "0.000000001031840226697547", + "1.484184", + "0.000000001031826892986738" + ] + ] + }, + "1/128": { + "a_dn": "3.827402", + "a_up": "13.915213", + "beta_dn": "0.000000001031826892986740", + "beta_up": "0.000000001032683405098226", + "boxes": [ + [ + "5.003115", + "0.000000000114480918809350", + "3.827402", + "0.000000000114447233687811" + ], + [ + "4.802291", + "0.000000000115211022640101", + "3.638142", + "0.000000000115178351429642" + ], + [ + "4.626955", + "0.000000000115969930927021", + "3.476226", + "0.000000000115938127493659" + ], + [ + "4.472812", + "0.000000000116754149772556", + "3.337336", + "0.000000000116723092255898" + ], + [ + "4.336291", + "0.000000000117560847360807", + "3.217895", + "0.000000000117530434266563" + ], + [ + "4.214420", + "0.000000000118387718534776", + "3.114933", + "0.000000000118357865514981" + ], + [ + "4.104719", + "0.000000000119232878181648", + "3.025975", + "0.000000000119203515372235" + ], + [ + "4.005107", + "0.000000000120094776998466", + "2.948958", + "0.000000000120065846810388" + ], + [ + "4.902019", + "0.000000000157963376500218", + "3.110797", + "0.000000000157917703424564" + ], + [ + "4.756793", + "0.000000000158856000731241", + "2.972388", + "0.000000000158811296584101" + ], + [ + "4.630140", + "0.000000000159778771598804", + "2.854460", + "0.000000000159734884602901" + ], + [ + "4.518776", + "0.000000000160728176670468", + "2.753714", + "0.000000000160684981694725" + ], + [ + "4.419974", + "0.000000000161701364741744", + "2.667420", + "0.000000000161658758967562" + ], + [ + "4.331469", + "0.000000000162696010306115", + "2.593314", + "0.000000000162653909656951" + ], + [ + "4.251376", + "0.000000000163710206858803", + "2.529517", + "0.000000000163668543049082" + ], + [ + "4.178119", + "0.000000000164742382605247", + "2.474461", + "0.000000000164701100693683" + ], + [ + "5.138396", + "0.000000000209102082706911", + "2.678487", + "0.000000000209038595951501" + ], + [ + "5.027481", + "0.000000000210157239839431", + "2.571787", + "0.000000000210094664528744" + ], + [ + "4.930845", + "0.000000000211243886668606", + "2.481301", + "0.000000000211182064502327" + ], + [ + "4.845832", + "0.000000000212358491876591", + "2.404364", + "0.000000000212297293923737" + ], + [ + "4.770242", + "0.000000000213498184586371", + "2.338773", + "0.000000000213437506458745" + ], + [ + "4.702251", + "0.000000000214660618711874", + "2.282707", + "0.000000000214600376589105" + ], + [ + "4.640344", + "0.000000000215843866170133", + "2.234653", + "0.000000000215783993516113" + ], + [ + "4.583259", + "0.000000000217046332524435", + "2.193358", + "0.000000000216986777367163" + ], + [ + "5.593832", + "0.000000000267898596213126", + "2.391886", + "0.000000000267809911268622" + ], + [ + "5.506102", + "0.000000000269116312522684", + "2.306776", + "0.000000000269028455263571" + ], + [ + "5.429736", + "0.000000000270366861300594", + "2.234980", + "0.000000000270279667191937" + ], + [ + "5.362505", + "0.000000000271646692153362", + "2.174266", + "0.000000000271560028942932" + ], + [ + "5.302567", + "0.000000000272952914381835", + "2.122789", + "0.000000000272866676740111" + ], + [ + "5.248399", + "0.000000000274283161203529", + "2.079028", + "0.000000000274197266311443" + ], + [ + "5.198738", + "0.000000000275635482866875", + "2.041722", + "0.000000000275549866773327" + ], + [ + "5.152536", + "0.000000000277008262223972", + "2.009828", + "0.000000000276922876830825" + ], + [ + "6.215318", + "0.000000000334354821344163", + "2.189080", + "0.000000000334231649375928" + ], + [ + "6.144267", + "0.000000000335735131425277", + "2.119587", + "0.000000000335612668788582" + ], + [ + "6.082475", + "0.000000000337149615916043", + "2.061315", + "0.000000000337027692671731" + ], + [ + "6.028022", + "0.000000000338594705231388", + "2.012342", + "0.000000000338473186752311" + ], + [ + "5.979326", + "0.000000000340067488762739", + "1.971084", + "0.000000000339946269811662" + ], + [ + "5.935082", + "0.000000000341565578966874", + "1.936235", + "0.000000000341444578823964" + ], + [ + "5.894209", + "0.000000000343087004377697", + "1.906719", + "0.000000000342966162820725" + ], + [ + "5.855813", + "0.000000000344630125104943", + "1.881645", + "0.000000000344509399084672" + ], + [ + "6.975838", + "0.000000000408472959316388", + "2.038563", + "0.000000000408303810273417" + ], + [ + "6.917346", + "0.000000000410015903840954", + "1.980878", + "0.000000000409847305103777" + ], + [ + "6.866524", + "0.000000000411594363601358", + "1.932833", + "0.000000000411426140941709" + ], + [ + "6.821687", + "0.000000000413204749744068", + "1.892740", + "0.000000000413036767351874" + ], + [ + "6.781448", + "0.000000000414844131696560", + "1.859212", + "0.000000000414676285673396" + ], + [ + "6.744666", + "0.000000000416510101118163", + "1.831109", + "0.000000000416342314126669" + ], + [ + "6.710399", + "0.000000000418200664805732", + "1.807490", + "0.000000000418032881658307" + ], + [ + "6.677869", + "0.000000000419914160115369", + "1.787581", + "0.000000000419746344128702" + ], + [ + "7.860277", + "0.000000000490255490395758", + "1.922727", + "0.000000000490026393961090" + ], + [ + "7.811578", + "0.000000000491961115057063", + "1.874274", + "0.000000000491732364209156" + ], + [ + "7.769307", + "0.000000000493703594501836", + "1.834225", + "0.000000000493475012001871" + ], + [ + "7.731964", + "0.000000000495479320553622", + "1.801078", + "0.000000000495250770741621" + ], + [ + "7.698315", + "0.000000000497285342640231", + "1.773597", + "0.000000000497056724325314" + ], + [ + "7.667347", + "0.000000000499119231602704", + "1.750772", + "0.000000000498890472219558" + ], + [ + "7.638225", + "0.000000000500978972491764", + "1.731769", + "0.000000000500750023286072" + ], + [ + "7.610265", + "0.000000000502862879910063", + "1.715906", + "0.000000000502633711962916" + ], + [ + "8.859563", + "0.000000000579705166359148", + "1.831004", + "0.000000000579399400438948" + ], + [ + "8.818712", + "0.000000000581573521322655", + "1.789962", + "0.000000000581267846104718" + ], + [ + "8.783294", + "0.000000000583480069238410", + "1.756334", + "0.000000000583174305852217" + ], + [ + "8.751955", + "0.000000000585421182566331", + "1.728763", + "0.000000000585115196921552" + ], + [ + "8.723586", + "0.000000000587393890710408", + "1.706139", + "0.000000000587087585767416" + ], + [ + "8.697275", + "0.000000000589395743682293", + "1.687553", + "0.000000000589089053102631" + ], + [ + "8.672276", + "0.000000000591424704785763", + "1.672260", + "0.000000000591117587704022" + ], + [ + "8.647975", + "0.000000000593479065877227", + "1.659647", + "0.000000000593171502587313" + ], + [ + "9.967949", + "0.000000000676825006981880", + "1.756688", + "0.000000000676422829706989" + ], + [ + "9.933528", + "0.000000000678856146577371", + "1.721726", + "0.000000000678453750790465" + ], + [ + "9.903725", + "0.000000000680926815850214", + "1.693363", + "0.000000000680524022492747" + ], + [ + "9.877306", + "0.000000000683033367864904", + "1.670366", + "0.000000000682630045891667" + ], + [ + "9.853261", + "0.000000000685172811984919", + "1.651726", + "0.000000000684768869999701" + ], + [ + "9.830766", + "0.000000000687342677387734", + "1.636618", + "0.000000000686938056775887" + ], + [ + "9.809145", + "0.000000000689540905634704", + "1.624368", + "0.000000000689135574912154" + ], + [ + "9.787844", + "0.000000000691765765847756", + "1.614425", + "0.000000000691359716001894" + ], + [ + "11.181628", + "0.000000000781618298293620", + "1.695332", + "0.000000000781096681765215" + ], + [ + "11.152574", + "0.000000000783812280832261", + "1.665443", + "0.000000000783290078266396" + ], + [ + "11.127456", + "0.000000000786047128286019", + "1.641475", + "0.000000000785524161923460" + ], + [ + "11.105143", + "0.000000000788319174298152", + "1.622296", + "0.000000000787795317651965" + ], + [ + "11.084709", + "0.000000000790625408179976", + "1.606982", + "0.000000000790100577022170" + ], + [ + "11.065400", + "0.000000000792963338274250", + "1.594778", + "0.000000000792437483239327" + ], + [ + "11.046598", + "0.000000000795330884408030", + "1.585069", + "0.000000000794803984910471" + ], + [ + "11.027803", + "0.000000000797726292983589", + "1.577354", + "0.000000000797198352206659" + ], + [ + "12.497995", + "0.000000000894088591686220", + "1.643873", + "0.000000000893420956613624" + ], + [ + "12.473489", + "0.000000000896445479346737", + "1.618280", + "0.000000000895776828532511" + ], + [ + "12.452342", + "0.000000000898844565642358", + "1.598035", + "0.000000000898174724144358" + ], + [ + "12.433508", + "0.000000000901282164773467", + "1.582090", + "0.000000000900611012202447" + ], + [ + "12.416135", + "0.000000000903755245991073", + "1.569592", + "0.000000000903082706834824" + ], + [ + "12.399527", + "0.000000000906261296805639", + "1.559847", + "0.000000000905587332492951" + ], + [ + "12.383117", + "0.000000000908798215320565", + "1.552291", + "0.000000000908122817698971" + ], + [ + "12.366447", + "0.000000000911364225235431", + "1.546464", + "0.000000000910687411201608" + ], + [ + "13.915213", + "0.000000001014239703464818", + "1.600135", + "0.000000001013395654252218" + ], + [ + "13.894610", + "0.000000001016759562220025", + "1.578227", + "0.000000001015914001588810" + ], + [ + "13.876873", + "0.000000001019322951790714", + "1.561174", + "0.000000001018475709155439" + ], + [ + "13.861028", + "0.000000001021926166915750", + "1.548002", + "0.000000001021077129543114" + ], + [ + "13.846284", + "0.000000001024566156780201", + "1.537920", + "0.000000001023715259437660" + ], + [ + "13.831996", + "0.000000001027240388066776", + "1.530285", + "0.000000001026387604536759" + ], + [ + "13.817643", + "0.000000001029946737167654", + "1.524575", + "0.000000001029092073277655" + ], + [ + "13.802800", + "0.000000001032683405098226", + "1.520368", + "0.000000001031826892986740" + ] + ] + }, + "1/2048": { + "a_dn": "3.643346", + "a_up": "13.825546", + "beta_dn": "0.000000001031826892986737", + "beta_up": "0.000000001031830225621952", + "boxes": [ + [ + "4.824669", + "0.000000000114447360712417", + "3.643346", + "0.000000000114447233687811" + ], + [ + "4.644603", + "0.000000000115178474985653", + "3.475115", + "0.000000000115178351429642" + ], + [ + "4.486903", + "0.000000000115938248080554", + "3.331133", + "0.000000000115938127493659" + ], + [ + "4.347793", + "0.000000000116723210289806", + "3.207600", + "0.000000000116723092255898" + ], + [ + "4.224130", + "0.000000000117530550093491", + "3.101361", + "0.000000000117530434266563" + ], + [ + "4.113292", + "0.000000000118357979421744", + "3.009789", + "0.000000000118357865514981" + ], + [ + "4.013084", + "0.000000000119203627595525", + "2.930698", + "0.000000000119203515372235" + ], + [ + "3.921666", + "0.000000000120065957544312", + "2.862258", + "0.000000000120065846810388" + ], + [ + "4.759118", + "0.000000000157917876748324", + "2.964132", + "0.000000000157917703424564" + ], + [ + "4.630194", + "0.000000000158811466666960", + "2.842419", + "0.000000000158811296584101" + ], + [ + "4.517374", + "0.000000000159735051957644", + "2.738738", + "0.000000000159734884602901" + ], + [ + "4.417783", + "0.000000000160685146742956", + "2.650198", + "0.000000000160684981694725" + ], + [ + "4.329031", + "0.000000000161658922054335", + "2.574402", + "0.000000000161658758967562" + ], + [ + "4.249131", + "0.000000000162654071062861", + "2.509362", + "0.000000000162653909656951" + ], + [ + "4.176422", + "0.000000000163668703000289", + "2.453420", + "0.000000000163668543049082" + ], + [ + "4.109520", + "0.000000000164701259370244", + "2.405198", + "0.000000000164701100693683" + ], + [ + "5.015546", + "0.000000000209038838118856", + "2.553191", + "0.000000000209038595951500" + ], + [ + "4.918344", + "0.000000000210094903750534", + "2.460703", + "0.000000000210094664528744" + ], + [ + "4.833324", + "0.000000000211182301305024", + "2.382351", + "0.000000000211182064502327" + ], + [ + "4.758178", + "0.000000000212297528733922", + "2.315815", + "0.000000000212297293923736" + ], + [ + "4.690993", + "0.000000000213437739619318", + "2.259175", + "0.000000000213437506458744" + ], + [ + "4.630179", + "0.000000000214600608372675", + "2.210841", + "0.000000000214600376589105" + ], + [ + "4.574413", + "0.000000000215784224136090", + "2.169492", + "0.000000000215783993516112" + ], + [ + "4.522594", + "0.000000000216987006986976", + "2.134033", + "0.000000000216986777367162" + ], + [ + "5.483464", + "0.000000000267810250957246", + "2.280164", + "0.000000000267809911268621" + ], + [ + "5.407758", + "0.000000000269028792417572", + "2.207678", + "0.000000000269028455263570" + ], + [ + "5.341559", + "0.000000000270280002348052", + "2.146665", + "0.000000000270279667191937" + ], + [ + "5.282945", + "0.000000000271560362528927", + "2.095197", + "0.000000000271560028942931" + ], + [ + "5.230330", + "0.000000000272867009092659", + "2.051682", + "0.000000000272866676740111" + ], + [ + "5.182396", + "0.000000000274197597690883", + "2.014802", + "0.000000000274197266311442" + ], + [ + "5.138052", + "0.000000000275550197375895", + "1.983466", + "0.000000000275549866773327" + ], + [ + "5.096390", + "0.000000000276923206798797", + "1.956772", + "0.000000000276922876830825" + ], + [ + "6.113177", + "0.000000000334232122716863", + "2.086608", + "0.000000000334231649375926" + ], + [ + "6.052958", + "0.000000000335613140151168", + "2.028645", + "0.000000000335612668788581" + ], + [ + "6.000308", + "0.000000000337028162597763", + "1.980225", + "0.000000000337027692671730" + ], + [ + "5.953586", + "0.000000000338473655665398", + "1.939704", + "0.000000000338473186752310" + ], + [ + "5.911442", + "0.000000000339946738036824", + "1.905727", + "0.000000000339946269811661" + ], + [ + "5.872758", + "0.000000000341445046603815", + "1.877175", + "0.000000000341444578823963" + ], + [ + "5.836608", + "0.000000000342966630328861", + "1.853124", + "0.000000000342966162820724" + ], + [ + "5.802227", + "0.000000000344509866436777", + "1.832812", + "0.000000000344509399084671" + ], + [ + "6.879266", + "0.000000000408304461998264", + "1.942711", + "0.000000000408303810273415" + ], + [ + "6.830718", + "0.000000000409847955574033", + "1.895760", + "0.000000000409847305103775" + ], + [ + "6.788270", + "0.000000000411426790698075", + "1.856891", + "0.000000000411426140941708" + ], + [ + "6.750498", + "0.000000000413037416807637", + "1.824675", + "0.000000000413036767351873" + ], + [ + "6.716229", + "0.000000000414676935135787", + "1.797935", + "0.000000000414676285673395" + ], + [ + "6.684495", + "0.000000000416342963814488", + "1.775705", + "0.000000000416342314126668" + ], + [ + "6.654499", + "0.000000000418033531716499", + "1.757187", + "0.000000000418032881658306" + ], + [ + "6.625583", + "0.000000000419746994640441", + "1.741726", + "0.000000000419746344128701" + ], + [ + "7.767467", + "0.000000000490027278485178", + "1.831782", + "0.000000000490026393961089" + ], + [ + "7.728020", + "0.000000000491733248388455", + "1.793463", + "0.000000000491732364209154" + ], + [ + "7.693523", + "0.000000000493475896369283", + "1.762081", + "0.000000000493475012001870" + ], + [ + "7.662722", + "0.000000000495251655693473", + "1.736376", + "0.000000000495250770741620" + ], + [ + "7.634582", + "0.000000000497057610144497", + "1.715313", + "0.000000000497056724325313" + ], + [ + "7.608256", + "0.000000000498891359094612", + "1.698042", + "0.000000000498890472219557" + ], + [ + "7.583045", + "0.000000000500750911326963", + "1.683867", + "0.000000000500750023286071" + ], + [ + "7.558375", + "0.000000000502634601214105", + "1.672214", + "0.000000000502633711962915" + ], + [ + "8.769190", + "0.000000000579400582917107", + "1.743793", + "0.000000000579399400438946" + ], + [ + "8.737033", + "0.000000000581269029350609", + "1.712419", + "0.000000000581267846104717" + ], + [ + "8.708904", + "0.000000000583175490383901", + "1.687061", + "0.000000000583174305852215" + ], + [ + "8.683680", + "0.000000000585116383111465", + "1.666596", + "0.000000000585115196921550" + ], + [ + "8.660445", + "0.000000000587088773867300", + "1.650101", + "0.000000000587087585767414" + ], + [ + "8.638442", + "0.000000000589090243264096", + "1.636824", + "0.000000000589089053102630" + ], + [ + "8.617055", + "0.000000000591118779995531", + "1.626146", + "0.000000000591117587704020" + ], + [ + "8.595777", + "0.000000000593172697008242", + "1.617562", + "0.000000000593171502587312" + ], + [ + "9.878972", + "0.000000000676424387076278", + "1.672376", + "0.000000000676422829706987" + ], + [ + "9.852783", + "0.000000000678455310258336", + "1.646708", + "0.000000000678453750790463" + ], + [ + "9.829863", + "0.000000000680525584555161", + "1.626300", + "0.000000000680524022492745" + ], + [ + "9.809203", + "0.000000000682631610890045", + "1.610141", + "0.000000000682630045891665" + ], + [ + "9.789977", + "0.000000000684770438147665", + "1.597402", + "0.000000000684768869999699" + ], + [ + "9.771509", + "0.000000000686939628181300", + "1.587408", + "0.000000000686938056775886" + ], + [ + "9.753246", + "0.000000000689137149595324", + "1.579606", + "0.000000000689135574912153" + ], + [ + "9.734738", + "0.000000000691361293910626", + "1.573547", + "0.000000000691359716001893" + ], + [ + "11.093176", + "0.000000000781098703780893", + "1.613300", + "0.000000000781096681765212" + ], + [ + "11.071961", + "0.000000000783292103944816", + "1.592403", + "0.000000000783290078266394" + ], + [ + "11.053383", + "0.000000000785526191731072", + "1.576134", + "0.000000000785524161923458" + ], + [ + "11.036524", + "0.000000000787797351891921", + "1.563576", + "0.000000000787795317651963" + ], + [ + "11.020636", + "0.000000000790102615862885", + "1.553979", + "0.000000000790100577022168" + ], + [ + "11.005109", + "0.000000000792439526738006", + "1.546731", + "0.000000000792437483239326" + ], + [ + "10.989445", + "0.000000000794806033032528", + "1.541335", + "0.000000000794803984910469" + ], + [ + "10.973242", + "0.000000000797200404841767", + "1.537390", + "0.000000000797198352206658" + ], + [ + "12.409296", + "0.000000000893423546881406", + "1.563654", + "0.000000000893420956613621" + ], + [ + "12.392289", + "0.000000000895779424275082", + "1.546804", + "0.000000000895776828532508" + ], + [ + "12.377382", + "0.000000000898177325791140", + "1.534047", + "0.000000000898174724144355" + ], + [ + "12.363737", + "0.000000000900613620010982", + "1.524544", + "0.000000000900611012202445" + ], + [ + "12.350671", + "0.000000000903085320921154", + "1.517612", + "0.000000000903082706834821" + ], + [ + "12.337630", + "0.000000000905589952856640", + "1.512694", + "0.000000000905587332492949" + ], + [ + "12.324162", + "0.000000000908125444243741", + "1.509342", + "0.000000000908122817698969" + ], + [ + "12.309905", + "0.000000000910690043752385", + "1.507191", + "0.000000000910687411201606" + ], + [ + "13.825546", + "0.000000001013398931258350", + "1.521368", + "0.000000001013395654252214" + ], + [ + "13.812146", + "0.000000001015917286143981", + "1.507993", + "0.000000001015914001588806" + ], + [ + "13.800385", + "0.000000001018479001644455", + "1.498252", + "0.000000001018475709155436" + ], + [ + "13.789492", + "0.000000001021080430170496", + "1.491374", + "0.000000001021077129543111" + ], + [ + "13.778842", + "0.000000001023718568259857", + "1.486732", + "0.000000001023715259437658" + ], + [ + "13.767929", + "0.000000001026390921488659", + "1.483817", + "0.000000001026387604536756" + ], + [ + "13.756341", + "0.000000001029095398194447", + "1.482221", + "0.000000001029092073277653" + ], + [ + "13.743748", + "0.000000001031830225621952", + "1.481612", + "0.000000001031826892986737" + ] + ] + }, + "1/256": { + "a_dn": "3.729062", + "a_up": "13.864900", + "beta_dn": "0.000000001031826892986738", + "beta_up": "0.000000001032040552341058", + "boxes": [ + [ + "4.907651", + "0.000000000114455498928205", + "3.729062", + "0.000000000114447233687811" + ], + [ + "4.717916", + "0.000000000115186380013572", + "3.551029", + "0.000000000115178351429642" + ], + [ + "4.552003", + "0.000000000115945953515336", + "3.398689", + "0.000000000115938127493659" + ], + [ + "4.405892", + "0.000000000116730744133115", + "3.267999", + "0.000000000116723092255898" + ], + [ + "4.276241", + "0.000000000117537935648049", + "3.155606", + "0.000000000117530434266563" + ], + [ + "4.160266", + "0.000000000118365236029119", + "3.058726", + "0.000000000118357865514981" + ], + [ + "4.055638", + "0.000000000119210771247035", + "2.975036", + "0.000000000119203515372235" + ], + [ + "3.960405", + "0.000000000120073001388533", + "2.902598", + "0.000000000120065846810388" + ], + [ + "4.825507", + "0.000000000157928947455936", + "3.032435", + "0.000000000157917703424564" + ], + [ + "4.688992", + "0.000000000158822316983583", + "2.902941", + "0.000000000158811296584101" + ], + [ + "4.569731", + "0.000000000159745716576499", + "2.792620", + "0.000000000159734884602901" + ], + [ + "4.464657", + "0.000000000160695654228077", + "2.698391", + "0.000000000160684981694725" + ], + [ + "4.371226", + "0.000000000161669295830893", + "2.617703", + "0.000000000161658758967562" + ], + [ + "4.287320", + "0.000000000162664330234249", + "2.548438", + "0.000000000162653909656951" + ], + [ + "4.211175", + "0.000000000163678863024413", + "2.488835", + "0.000000000163668543049082" + ], + [ + "4.141314", + "0.000000000164711332620975", + "2.437428", + "0.000000000164701100693683" + ], + [ + "5.072544", + "0.000000000209054267870946", + "2.611542", + "0.000000000209038595951501" + ], + [ + "4.968956", + "0.000000000210110129609508", + "2.512431", + "0.000000000210094664528744" + ], + [ + "4.878528", + "0.000000000211197359177607", + "2.428425", + "0.000000000211182064502327" + ], + [ + "4.798789", + "0.000000000212312447791628", + "2.357041", + "0.000000000212297293923737" + ], + [ + "4.727691", + "0.000000000213452543398435", + "2.296230", + "0.000000000213437506458745" + ], + [ + "4.663536", + "0.000000000214615315681548", + "2.244293", + "0.000000000214600376589105" + ], + [ + "4.604912", + "0.000000000215798849805678", + "2.199819", + "0.000000000215783993516112" + ], + [ + "4.550643", + "0.000000000217001562493468", + "2.161640", + "0.000000000216986777367162" + ], + [ + "5.534574", + "0.000000000267831851341703", + "2.332194", + "0.000000000267809911268622" + ], + [ + "5.453270", + "0.000000000269050212303640", + "2.253825", + "0.000000000269028455263571" + ], + [ + "5.382337", + "0.000000000270301278708765", + "2.187788", + "0.000000000270279667191937" + ], + [ + "5.319713", + "0.000000000271581524961580", + "2.132011", + "0.000000000271560028942932" + ], + [ + "5.263689", + "0.000000000272888081036246", + "2.084785", + "0.000000000272866676740111" + ], + [ + "5.212854", + "0.000000000274218597429863", + "2.044698", + "0.000000000274197266311443" + ], + [ + "5.166036", + "0.000000000275571138870067", + "2.010581", + "0.000000000275549866773327" + ], + [ + "5.122262", + "0.000000000276944100371174", + "1.981463", + "0.000000000276922876830825" + ], + [ + "6.160354", + "0.000000000334262174391897", + "2.134330", + "0.000000000334231649375927" + ], + [ + "6.095093", + "0.000000000335643043574630", + "2.070994", + "0.000000000335612668788581" + ], + [ + "6.038187", + "0.000000000337057955539386", + "2.017984", + "0.000000000337027692671731" + ], + [ + "5.987868", + "0.000000000338503367860687", + "1.973524", + "0.000000000338473186752311" + ], + [ + "5.942675", + "0.000000000339976392527096", + "1.936154", + "0.000000000339946269811661" + ], + [ + "5.901404", + "0.000000000341474660840554", + "1.904668", + "0.000000000341444578823964" + ], + [ + "5.863057", + "0.000000000342996217086205", + "1.878070", + "0.000000000342966162820725" + ], + [ + "5.826809", + "0.000000000344539434567275", + "1.855539", + "0.000000000344509399084672" + ], + [ + "6.923717", + "0.000000000408345787317881", + "1.987350", + "0.000000000408303810273416" + ], + [ + "6.870541", + "0.000000000409889175183745", + "1.935398", + "0.000000000409847305103776" + ], + [ + "6.824196", + "0.000000000411467942830103", + "1.892253", + "0.000000000411426140941709" + ], + [ + "6.783136", + "0.000000000413078530992264", + "1.856366", + "0.000000000413036767351874" + ], + [ + "6.746089", + "0.000000000414718033667741", + "1.826463", + "0.000000000414676285673395" + ], + [ + "6.712008", + "0.000000000416384062960871", + "1.801496", + "0.000000000416342314126669" + ], + [ + "6.680025", + "0.000000000418074642714232", + "1.780601", + "0.000000000418032881658306" + ], + [ + "6.649429", + "0.000000000419788124521743", + "1.763068", + "0.000000000419746344128702" + ], + [ + "7.809995", + "0.000000000490083309917014", + "1.874136", + "0.000000000490026393961089" + ], + [ + "7.766243", + "0.000000000491789228147274", + "1.831095", + "0.000000000491732364209155" + ], + [ + "7.728128", + "0.000000000493531862778365", + "1.795674", + "0.000000000493475012001870" + ], + [ + "7.694283", + "0.000000000495307637702257", + "1.766501", + "0.000000000495250770741621" + ], + [ + "7.663581", + "0.000000000497113628924265", + "1.742448", + "0.000000000497056724325313" + ], + [ + "7.635096", + "0.000000000498947429352302", + "1.722589", + "0.000000000498890472219558" + ], + [ + "7.608067", + "0.000000000500807042389388", + "1.706164", + "0.000000000500750023286072" + ], + [ + "7.581868", + "0.000000000502690797924551", + "1.692549", + "0.000000000502633711962915" + ], + [ + "8.810367", + "0.000000000579475429667261", + "1.784407", + "0.000000000579399400438947" + ], + [ + "8.774165", + "0.000000000581343891033716", + "1.748529", + "0.000000000581267846104717" + ], + [ + "8.742644", + "0.000000000583250405019946", + "1.719317", + "0.000000000583174305852216" + ], + [ + "8.714576", + "0.000000000585191378673612", + "1.695541", + "0.000000000585115196921551" + ], + [ + "8.688952", + "0.000000000587163870009329", + "1.676191", + "0.000000000587087585767415" + ], + [ + "8.664947", + "0.000000000589165452742009", + "1.660440", + "0.000000000589089053102630" + ], + [ + "8.641881", + "0.000000000591194109840024", + "1.647611", + "0.000000000591117587704021" + ], + [ + "8.619199", + "0.000000000593248149493546", + "1.637150", + "0.000000000593171502587313" + ], + [ + "9.919228", + "0.000000000676522900865601", + "1.711640", + "0.000000000676422829706988" + ], + [ + "9.889209", + "0.000000000678553919158338", + "1.681641", + "0.000000000678453750790464" + ], + [ + "9.863087", + "0.000000000680624325873321", + "1.657527", + "0.000000000680524022492746" + ], + [ + "9.839748", + "0.000000000682730511214982", + "1.638182", + "0.000000000682630045891666" + ], + [ + "9.818282", + "0.000000000684869515210452", + "1.622694", + "0.000000000684768869999700" + ], + [ + "9.797942", + "0.000000000687038892386527", + "1.610317", + "0.000000000686938056775886" + ], + [ + "9.778119", + "0.000000000689236605283068", + "1.600442", + "0.000000000689135574912154" + ], + [ + "9.758315", + "0.000000000691460940398484", + "1.592573", + "0.000000000691359716001894" + ], + [ + "11.132856", + "0.000000000781226544187134", + "1.651502", + "0.000000000781096681765213" + ], + [ + "11.107994", + "0.000000000783420134171399", + "1.626415", + "0.000000000783290078266395" + ], + [ + "11.086373", + "0.000000000785654447953723", + "1.606559", + "0.000000000785524161923459" + ], + [ + "11.066977", + "0.000000000787925858897769", + "1.590917", + "0.000000000787795317651964" + ], + [ + "11.048976", + "0.000000000790231389047574", + "1.578655", + "0.000000000790100577022169" + ], + [ + "11.031691", + "0.000000000792568573747675", + "1.569098", + "0.000000000792437483239326" + ], + [ + "11.014571", + "0.000000000794935355116409", + "1.561693", + "0.000000000794803984910470" + ], + [ + "10.997164", + "0.000000000797329997968223", + "1.555991", + "0.000000000797198352206658" + ], + [ + "12.448686", + "0.000000000893587246446065", + "1.601011", + "0.000000000893420956613623" + ], + [ + "12.428190", + "0.000000000895943423835270", + "1.580088", + "0.000000000895776828532509" + ], + [ + "12.410381", + "0.000000000898341659964565", + "1.563842", + "0.000000000898174724144356" + ], + [ + "12.394323", + "0.000000000900778311360278", + "1.551338", + "0.000000000900611012202446" + ], + [ + "12.379255", + "0.000000000903250382088558", + "1.541812", + "0.000000000903082706834822" + ], + [ + "12.364556", + "0.000000000905755388318237", + "1.534646", + "0.000000000905587332492950" + ], + [ + "12.349723", + "0.000000000908291251753691", + "1.529335", + "0.000000000908122817698970" + ], + [ + "12.334347", + "0.000000000910856215533709", + "1.525471", + "0.000000000910687411201607" + ], + [ + "13.864900", + "0.000000001013605960460883", + "1.558048", + "0.000000001013395654252216" + ], + [ + "13.848149", + "0.000000001016124741899027", + "1.540698", + "0.000000001015914001588808" + ], + [ + "13.833608", + "0.000000001018686916580391", + "1.527551", + "0.000000001018475709155438" + ], + [ + "13.820413", + "0.000000001021288824198106", + "1.517740", + "0.000000001021077129543112" + ], + [ + "13.807860", + "0.000000001023927450846222", + "1.510564", + "0.000000001023715259437659" + ], + [ + "13.795380", + "0.000000001026600293524918", + "1.505450", + "0.000000001026387604536758" + ], + [ + "13.782509", + "0.000000001029305253532600", + "1.501937", + "0.000000001029092073277654" + ], + [ + "13.768873", + "0.000000001032040552341058", + "1.499651", + "0.000000001031826892986738" + ] + ] + }, + "1/4096": { + "a_dn": "3.637234", + "a_up": "13.822900", + "beta_dn": "0.000000001031826892986737", + "beta_up": "0.000000001031827726047657", + "boxes": [ + [ + "4.818760", + "0.000000000114447265406223", + "3.637234", + "0.000000000114447233687811" + ], + [ + "4.639384", + "0.000000000115178382284992", + "3.469702", + "0.000000000115178351429642" + ], + [ + "4.482269", + "0.000000000115938157610222", + "3.326317", + "0.000000000115938127493659" + ], + [ + "4.343659", + "0.000000000116723121737210", + "3.203295", + "0.000000000116723092255898" + ], + [ + "4.220423", + "0.000000000117530463198707", + "3.097494", + "0.000000000117530434266563" + ], + [ + "4.109951", + "0.000000000118357893969305", + "3.006302", + "0.000000000118357865514981" + ], + [ + "4.010058", + "0.000000000119203543407612", + "2.927539", + "0.000000000119203515372235" + ], + [ + "3.918911", + "0.000000000120065874475088", + "2.859385", + "0.000000000120065846810387" + ], + [ + "4.754394", + "0.000000000157917746713437", + "2.959261", + "0.000000000157917703424564" + ], + [ + "4.626012", + "0.000000000158811339067266", + "2.838104", + "0.000000000158811296584101" + ], + [ + "4.513652", + "0.000000000159734926407888", + "2.734896", + "0.000000000159734884602901" + ], + [ + "4.414451", + "0.000000000160685022926378", + "2.646762", + "0.000000000160684981694725" + ], + [ + "4.326033", + "0.000000000161658799711674", + "2.571316", + "0.000000000161658758967562" + ], + [ + "4.246418", + "0.000000000162653949983273", + "2.506577", + "0.000000000162653909656951" + ], + [ + "4.173955", + "0.000000000163668583013818", + "2.450897", + "0.000000000163668543049082" + ], + [ + "4.107263", + "0.000000000164701140341560", + "2.402902", + "0.000000000164701100693683" + ], + [ + "5.011496", + "0.000000000209038656445223", + "2.549030", + "0.000000000209038595951500" + ], + [ + "4.914749", + "0.000000000210094724291179", + "2.457015", + "0.000000000210094664528744" + ], + [ + "4.830114", + "0.000000000211182123664329", + "2.379066", + "0.000000000211182064502327" + ], + [ + "4.755296", + "0.000000000212297352591312", + "2.312876", + "0.000000000212297293923736" + ], + [ + "4.688390", + "0.000000000213437564717080", + "2.256533", + "0.000000000213437506458744" + ], + [ + "4.627814", + "0.000000000214600434505896", + "2.208457", + "0.000000000214600376589105" + ], + [ + "4.572252", + "0.000000000215784051144326", + "2.167331", + "0.000000000215783993516112" + ], + [ + "4.520607", + "0.000000000216986834747327", + "2.132065", + "0.000000000216986777367162" + ], + [ + "5.479839", + "0.000000000267809996135279", + "2.276454", + "0.000000000267809911268621" + ], + [ + "5.404532", + "0.000000000269028539502370", + "2.204388", + "0.000000000269028455263570" + ], + [ + "5.338670", + "0.000000000270279750936184", + "2.143733", + "0.000000000270279667191937" + ], + [ + "5.280342", + "0.000000000271560112298830", + "2.092573", + "0.000000000271560028942931" + ], + [ + "5.227970", + "0.000000000272866759791208", + "2.049322", + "0.000000000272866676740111" + ], + [ + "5.180243", + "0.000000000274197349122298", + "2.012671", + "0.000000000274197266311442" + ], + [ + "5.136075", + "0.000000000275549949392555", + "1.981534", + "0.000000000275549866773327" + ], + [ + "5.094563", + "0.000000000276922959293616", + "1.955012", + "0.000000000276922876830825" + ], + [ + "6.109838", + "0.000000000334231767647098", + "2.083205", + "0.000000000334231649375926" + ], + [ + "6.049980", + "0.000000000335612786571743", + "2.025625", + "0.000000000335612668788581" + ], + [ + "5.997632", + "0.000000000337027810101320", + "1.977533", + "0.000000000337027692671730" + ], + [ + "5.951167", + "0.000000000338473303933379", + "1.937293", + "0.000000000338473186752310" + ], + [ + "5.909241", + "0.000000000339946386824750", + "1.903558", + "0.000000000339946269811661" + ], + [ + "5.870740", + "0.000000000341444695729123", + "1.875215", + "0.000000000341444578823963" + ], + [ + "5.834747", + "0.000000000342966279660840", + "1.851346", + "0.000000000342966162820724" + ], + [ + "5.800499", + "0.000000000344509515888230", + "1.831192", + "0.000000000344509399084671" + ], + [ + "6.876131", + "0.000000000408303973130880", + "1.939528", + "0.000000000408303810273415" + ], + [ + "6.827913", + "0.000000000409847467655022", + "1.892934", + "0.000000000409847305103775" + ], + [ + "6.785743", + "0.000000000411426303320750", + "1.854370", + "0.000000000411426140941708" + ], + [ + "6.748205", + "0.000000000413036929661059", + "1.822415", + "0.000000000413036767351873" + ], + [ + "6.714134", + "0.000000000414676447988715", + "1.795902", + "0.000000000414676285673395" + ], + [ + "6.682567", + "0.000000000416342476502130", + "1.773867", + "0.000000000416342314126668" + ], + [ + "6.652712", + "0.000000000418033044129559", + "1.755519", + "0.000000000418032881658306" + ], + [ + "6.623916", + "0.000000000419746506716040", + "1.740205", + "0.000000000419746344128701" + ], + [ + "7.764480", + "0.000000000490026615007574", + "1.828762", + "0.000000000490026393961089" + ], + [ + "7.725340", + "0.000000000491732585177786", + "1.790780", + "0.000000000491732364209154" + ], + [ + "7.691101", + "0.000000000493475233024550", + "1.759686", + "0.000000000493475012001870" + ], + [ + "7.660517", + "0.000000000495250991916321", + "1.734228", + "0.000000000495250770741620" + ], + [ + "7.632560", + "0.000000000497056945721825", + "1.713378", + "0.000000000497056724325313" + ], + [ + "7.606387", + "0.000000000498890693884228", + "1.696293", + "0.000000000498890472219557" + ], + [ + "7.581306", + "0.000000000500750245245723", + "1.682278", + "0.000000000500750023286071" + ], + [ + "7.556745", + "0.000000000502633934228094", + "1.670765", + "0.000000000502633711962915" + ], + [ + "8.766314", + "0.000000000579399695962049", + "1.740897", + "0.000000000579399400438946" + ], + [ + "8.734446", + "0.000000000581268141829067", + "1.709844", + "0.000000000581267846104717" + ], + [ + "8.706558", + "0.000000000583174601905829", + "1.684761", + "0.000000000583174305852215" + ], + [ + "8.681537", + "0.000000000585115493396280", + "1.664532", + "0.000000000585115196921550" + ], + [ + "8.658471", + "0.000000000587087882725139", + "1.648241", + "0.000000000587087585767414" + ], + [ + "8.636612", + "0.000000000589089350580359", + "1.635141", + "0.000000000589089053102629" + ], + [ + "8.615344", + "0.000000000591117885718113", + "1.624616", + "0.000000000591117587704020" + ], + [ + "8.594166", + "0.000000000593171801136967", + "1.616166", + "0.000000000593171502587312" + ], + [ + "9.876180", + "0.000000000676423218939843", + "1.669576", + "0.000000000676422829706987" + ], + [ + "9.850264", + "0.000000000678454140558302", + "1.644216", + "0.000000000678453750790463" + ], + [ + "9.827572", + "0.000000000680524412917867", + "1.624073", + "0.000000000680524022492745" + ], + [ + "9.807103", + "0.000000000682630437058012", + "1.608142", + "0.000000000682630045891665" + ], + [ + "9.788037", + "0.000000000684769261959486", + "1.595599", + "0.000000000684768869999699" + ], + [ + "9.769701", + "0.000000000686938449555072", + "1.585775", + "0.000000000686938056775886" + ], + [ + "9.751550", + "0.000000000689135968514963", + "1.578121", + "0.000000000689135574912153" + ], + [ + "9.733134", + "0.000000000691360110414551", + "1.572191", + "0.000000000691359716001893" + ], + [ + "11.090447", + "0.000000000781097187145479", + "1.610576", + "0.000000000781096681765212" + ], + [ + "11.069492", + "0.000000000783290584573752", + "1.589978", + "0.000000000783290078266394" + ], + [ + "11.051131", + "0.000000000785524669272629", + "1.573965", + "0.000000000785524161923458" + ], + [ + "11.034452", + "0.000000000787795826117151", + "1.561627", + "0.000000000787795317651963" + ], + [ + "11.018715", + "0.000000000790101086644143", + "1.552219", + "0.000000000790100577022168" + ], + [ + "11.003313", + "0.000000000792437994031262", + "1.545136", + "0.000000000792437483239325" + ], + [ + "10.987753", + "0.000000000794804496862765", + "1.539884", + "0.000000000794803984910469" + ], + [ + "10.971635", + "0.000000000797198865290918", + "1.536064", + "0.000000000797198352206657" + ], + [ + "12.406614", + "0.000000000893421604041536", + "1.560990", + "0.000000000893420956613621" + ], + [ + "12.389857", + "0.000000000895777477341638", + "1.544430", + "0.000000000895776828532508" + ], + [ + "12.375156", + "0.000000000898175374439949", + "1.531922", + "0.000000000898174724144355" + ], + [ + "12.361683", + "0.000000000900611664047123", + "1.522634", + "0.000000000900611012202445" + ], + [ + "12.348760", + "0.000000000903083360256109", + "1.515886", + "0.000000000903082706834821" + ], + [ + "12.335836", + "0.000000000905587987489482", + "1.511130", + "0.000000000905587332492949" + ], + [ + "12.322466", + "0.000000000908123474245614", + "1.507917", + "0.000000000908122817698969" + ], + [ + "12.308288", + "0.000000000910688069253686", + "1.505888", + "0.000000000910687411201606" + ], + [ + "13.822900", + "0.000000001013396473348105", + "1.518752", + "0.000000001013395654252214" + ], + [ + "13.809739", + "0.000000001015914822585626", + "1.505661", + "0.000000001015914001588806" + ], + [ + "13.798175", + "0.000000001018476532147052", + "1.496163", + "0.000000001018475709155436" + ], + [ + "13.787446", + "0.000000001021077954578694", + "1.489494", + "0.000000001021077129543111" + ], + [ + "13.776933", + "0.000000001023716086529675", + "1.485033", + "0.000000001023715259437658" + ], + [ + "13.766130", + "0.000000001026388433667538", + "1.482275", + "0.000000001026387604536756" + ], + [ + "13.754634", + "0.000000001029092904404815", + "1.480815", + "0.000000001029092073277653" + ], + [ + "13.742115", + "0.000000001031827726047657", + "1.480326", + "0.000000001031826892986737" + ] + ] + }, + "1/512": { + "a_dn": "3.680046", + "a_up": "13.841883", + "beta_dn": "0.000000001031826892986738", + "beta_up": "0.000000001031880253750516", + "boxes": [ + [ + "4.860173", + "0.000000000114449280593594", + "3.680046", + "0.000000000114447233687811" + ], + [ + "4.675967", + "0.000000000115180341267848", + "3.507617", + "0.000000000115178351429642" + ], + [ + "4.514750", + "0.000000000115940068483738", + "3.360055", + "0.000000000115938127493659" + ], + [ + "4.372643", + "0.000000000116724991247068", + "3.233456", + "0.000000000116723092255898" + ], + [ + "4.246416", + "0.000000000117532296955975", + "3.124581", + "0.000000000117530434266563" + ], + [ + "4.133378", + "0.000000000118359696627890", + "3.030736", + "0.000000000118357865514981" + ], + [ + "4.031278", + "0.000000000119205318811303", + "2.949675", + "0.000000000119203515372235" + ], + [ + "3.938227", + "0.000000000120067625779811", + "2.879523", + "0.000000000120065846810388" + ], + [ + "4.787510", + "0.000000000157920492785506", + "2.993376", + "0.000000000157917703424564" + ], + [ + "4.655335", + "0.000000000158814032354934", + "2.868331", + "0.000000000158811296584101" + ], + [ + "4.539758", + "0.000000000159737575243815", + "2.761806", + "0.000000000159734884602901" + ], + [ + "4.437819", + "0.000000000160687634165807", + "2.670829", + "0.000000000160684981694725" + ], + [ + "4.347064", + "0.000000000161661378970251", + "2.592938", + "0.000000000161658758967562" + ], + [ + "4.265449", + "0.000000000162656501833426", + "2.526088", + "0.000000000162653909656951" + ], + [ + "4.191269", + "0.000000000163671111147426", + "2.468578", + "0.000000000163668543049082" + ], + [ + "4.123101", + "0.000000000164703647705109", + "2.418992", + "0.000000000164701100693683" + ], + [ + "5.039905", + "0.000000000209042489144035", + "2.578175", + "0.000000000209038595951501" + ], + [ + "4.939969", + "0.000000000210098508630915", + "2.482851", + "0.000000000210094664528744" + ], + [ + "4.852634", + "0.000000000211185868230899", + "2.402076", + "0.000000000211182064502327" + ], + [ + "4.775522", + "0.000000000212301064349897", + "2.333464", + "0.000000000212297293923736" + ], + [ + "4.706662", + "0.000000000213441249275887", + "2.275037", + "0.000000000213437506458745" + ], + [ + "4.644417", + "0.000000000214604096333891", + "2.225160", + "0.000000000214600376589105" + ], + [ + "4.587428", + "0.000000000215787693751502", + "2.182473", + "0.000000000215783993516112" + ], + [ + "4.534560", + "0.000000000216990460834364", + "2.145849", + "0.000000000216986777367162" + ], + [ + "5.505287", + "0.000000000267815367653384", + "2.302442", + "0.000000000267809911268622" + ], + [ + "5.427184", + "0.000000000269033868866051", + "2.227436", + "0.000000000269028455263570" + ], + [ + "5.358958", + "0.000000000270285046938048", + "2.164271", + "0.000000000270279667191937" + ], + [ + "5.298628", + "0.000000000271565381960400", + "2.110958", + "0.000000000271560028942932" + ], + [ + "5.244553", + "0.000000000272872008654265", + "2.065853", + "0.000000000272866676740111" + ], + [ + "5.195378", + "0.000000000274202581489312", + "2.027600", + "0.000000000274197266311442" + ], + [ + "5.149975", + "0.000000000275555168525635", + "1.995072", + "0.000000000275549866773327" + ], + [ + "5.107409", + "0.000000000276928167579549", + "1.967340", + "0.000000000276922876830825" + ], + [ + "6.133294", + "0.000000000334239247511758", + "2.107042", + "0.000000000334231649375927" + ], + [ + "6.070917", + "0.000000000335620232742991", + "2.046777", + "0.000000000335612668788581" + ], + [ + "6.016445", + "0.000000000337035231502720", + "1.996391", + "0.000000000337027692671731" + ], + [ + "5.968183", + "0.000000000338480707563910", + "1.954183", + "0.000000000338473186752311" + ], + [ + "5.924734", + "0.000000000339953778078783", + "1.918753", + "0.000000000339946269811661" + ], + [ + "5.884943", + "0.000000000341452078660381", + "1.888944", + "0.000000000341444578823964" + ], + [ + "5.847852", + "0.000000000342973657200695", + "1.863802", + "0.000000000342966162820725" + ], + [ + "5.812673", + "0.000000000344516890026645", + "1.842540", + "0.000000000344509399084671" + ], + [ + "6.898188", + "0.000000000408314266309005", + "1.961824", + "0.000000000408303810273416" + ], + [ + "6.847659", + "0.000000000409857738211063", + "1.912732", + "0.000000000409847305103776" + ], + [ + "6.803543", + "0.000000000411436560218043", + "1.872031", + "0.000000000411426140941708" + ], + [ + "6.764363", + "0.000000000413047179783773", + "1.838243", + "0.000000000413036767351873" + ], + [ + "6.728905", + "0.000000000414686696491192", + "1.810148", + "0.000000000414676285673395" + ], + [ + "6.696166", + "0.000000000416352727096936", + "1.786746", + "0.000000000416342314126669" + ], + [ + "6.665321", + "0.000000000418043299325564", + "1.767210", + "0.000000000418032881658306" + ], + [ + "6.635686", + "0.000000000419756768015616", + "1.750861", + "0.000000000419746344128701" + ], + [ + "7.785529", + "0.000000000490040578983338", + "1.849917", + "0.000000000490026393961089" + ], + [ + "7.744239", + "0.000000000491746540508730", + "1.809576", + "0.000000000491732364209154" + ], + [ + "7.708194", + "0.000000000493489188613669", + "1.776464", + "0.000000000493475012001870" + ], + [ + "7.676089", + "0.000000000495264954432993", + "1.749274", + "0.000000000495250770741620" + ], + [ + "7.646853", + "0.000000000497070919981027", + "1.726930", + "0.000000000497056724325313" + ], + [ + "7.619603", + "0.000000000498904683159091", + "1.708551", + "0.000000000498890472219557" + ], + [ + "7.593615", + "0.000000000500764251525714", + "1.693412", + "0.000000000500750023286072" + ], + [ + "7.568291", + "0.000000000502647958432700", + "1.680919", + "0.000000000502633711962915" + ], + [ + "8.786628", + "0.000000000579418357375498", + "1.761183", + "0.000000000579399400438946" + ], + [ + "8.752739", + "0.000000000581286811746009", + "1.727880", + "0.000000000581267846104717" + ], + [ + "8.723158", + "0.000000000583193289063306", + "1.700872", + "0.000000000583174305852216" + ], + [ + "8.696717", + "0.000000000585134204144129", + "1.678988", + "0.000000000585115196921551" + ], + [ + "8.672459", + "0.000000000587106621435496", + "1.661271", + "0.000000000587087585767414" + ], + [ + "8.649600", + "0.000000000589108119985031", + "1.646934", + "0.000000000589089053102630" + ], + [ + "8.627495", + "0.000000000591136687187093", + "1.635335", + "0.000000000591117587704021" + ], + [ + "8.605616", + "0.000000000593190634908782", + "1.625947", + "0.000000000593171502587312" + ], + [ + "9.895957", + "0.000000000676447790016796", + "1.689188", + "0.000000000676422829706987" + ], + [ + "9.868129", + "0.000000000678478740706034", + "1.661665", + "0.000000000678453750790464" + ], + [ + "9.843839", + "0.000000000680549050598281", + "1.639670", + "0.000000000680524022492745" + ], + [ + "9.822032", + "0.000000000682655118193561", + "1.622146", + "0.000000000682630045891665" + ], + [ + "9.801847", + "0.000000000684793990373303", + "1.608230", + "0.000000000684768869999700" + ], + [ + "9.782578", + "0.000000000686963227333402", + "1.597215", + "0.000000000686938056775886" + ], + [ + "9.763648", + "0.000000000689160796306201", + "1.588526", + "0.000000000689135574912153" + ], + [ + "9.744586", + "0.000000000691384987676382", + "1.581691", + "0.000000000691359716001893" + ], + [ + "11.109844", + "0.000000000781129082019802", + "1.629658", + "0.000000000781096681765213" + ], + [ + "11.087068", + "0.000000000783322532742760", + "1.606966", + "0.000000000783290078266394" + ], + [ + "11.067187", + "0.000000000785556678811477", + "1.589161", + "0.000000000785524161923459" + ], + [ + "11.049242", + "0.000000000787827902410975", + "1.575282", + "0.000000000787795317651963" + ], + [ + "11.032450", + "0.000000000790133232859089", + "1.564543", + "0.000000000790100577022169" + ], + [ + "11.016171", + "0.000000000792470211502190", + "1.556306", + "0.000000000792437483239326" + ], + [ + "10.999885", + "0.000000000794836785412961", + "1.550050", + "0.000000000794803984910470" + ], + [ + "10.983167", + "0.000000000797231223496122", + "1.545352", + "0.000000000797198352206658" + ], + [ + "12.425753", + "0.000000000893462455018245", + "1.579650", + "0.000000000893420956613622" + ], + [ + "12.407253", + "0.000000000895818409724758", + "1.561055", + "0.000000000895776828532509" + ], + [ + "12.391103", + "0.000000000898216395804584", + "1.546804", + "0.000000000898174724144356" + ], + [ + "12.376426", + "0.000000000900652779129691", + "1.536016", + "0.000000000900611012202445" + ], + [ + "12.362503", + "0.000000000903124571456512", + "1.527973", + "0.000000000903082706834822" + ], + [ + "12.348753", + "0.000000000905629295284266", + "1.522092", + "0.000000000905587332492950" + ], + [ + "12.334702", + "0.000000000908164877528470", + "1.517901", + "0.000000000908122817698970" + ], + [ + "12.319966", + "0.000000000910729565616455", + "1.515016", + "0.000000000910687411201606" + ], + [ + "13.841883", + "0.000000001013448147132278", + "1.537074", + "0.000000001013395654252215" + ], + [ + "13.827049", + "0.000000001015966610002743", + "1.521997", + "0.000000001015914001588807" + ], + [ + "13.814098", + "0.000000001018528440157645", + "1.510797", + "0.000000001018475709155437" + ], + [ + "13.802220", + "0.000000001021129987158009", + "1.502663", + "0.000000001021077129543111" + ], + [ + "13.790756", + "0.000000001023768245201199", + "1.496935", + "0.000000001023715259437658" + ], + [ + "13.779173", + "0.000000001026440717941772", + "1.493078", + "0.000000001026387604536757" + ], + [ + "13.767036", + "0.000000001029145312140675", + "1.490661", + "0.000000001029092073277653" + ], + [ + "13.753998", + "0.000000001031880253750516", + "1.489334", + "0.000000001031826892986738" + ] + ] + }, + "1/64": { + "a_dn": "4.025510", + "a_up": "14.033374", + "beta_dn": "0.000000001031826892986742", + "beta_up": "0.000000001035270298544811", + "boxes": [ + [ + "5.196329", + "0.000000000114587025506676", + "4.025510", + "0.000000000114447233687811" + ], + [ + "4.973162", + "0.000000000115313545474405", + "3.813685", + "0.000000000115178351429643" + ], + [ + "4.778842", + "0.000000000116069386872235", + "3.632524", + "0.000000000115938127493659" + ], + [ + "4.608510", + "0.000000000116850970356766", + "3.477156", + "0.000000000116723092255898" + ], + [ + "4.458140", + "0.000000000117655392627212", + "3.343549", + "0.000000000117530434266564" + ], + [ + "4.324384", + "0.000000000118480288511499", + "3.228363", + "0.000000000118357865514982" + ], + [ + "4.204451", + "0.000000000119323722338599", + "3.128818", + "0.000000000119203515372235" + ], + [ + "4.096007", + "0.000000000120184102071125", + "3.042597", + "0.000000000120065846810388" + ], + [ + "5.057336", + "0.000000000158106047700742", + "3.268677", + "0.000000000157917703424565" + ], + [ + "4.894548", + "0.000000000158995165340827", + "3.112345", + "0.000000000158811296584102" + ], + [ + "4.752992", + "0.000000000159914973209001", + "2.979124", + "0.000000000159734884602902" + ], + [ + "4.628940", + "0.000000000160861864713184", + "2.865275", + "0.000000000160684981694726" + ], + [ + "4.519303", + "0.000000000161832910019328", + "2.767711", + "0.000000000161658758967563" + ], + [ + "4.421520", + "0.000000000162825717746766", + "2.683875", + "0.000000000162653909656952" + ], + [ + "4.333459", + "0.000000000163838326028190", + "2.611644", + "0.000000000163668543049082" + ], + [ + "4.253344", + "0.000000000164869116396627", + "2.549253", + "0.000000000164701100693684" + ], + [ + "5.272631", + "0.000000000209299040706387", + "2.813381", + "0.000000000209038595951502" + ], + [ + "5.146933", + "0.000000000210350785207414", + "2.691418", + "0.000000000210094664528745" + ], + [ + "5.037772", + "0.000000000211434595636562", + "2.587902", + "0.000000000211182064502328" + ], + [ + "4.942115", + "0.000000000212546836204813", + "2.499796", + "0.000000000212297293923738" + ], + [ + "4.857456", + "0.000000000213684548960453", + "2.424594", + "0.000000000213437506458746" + ], + [ + "4.781717", + "0.000000000214845315024234", + "2.360225", + "0.000000000214600376589106" + ], + [ + "4.713177", + "0.000000000216027145281612", + "2.304971", + "0.000000000215783993516113" + ], + [ + "4.650401", + "0.000000000217228393979738", + "2.257410", + "0.000000000216986777367163" + ], + [ + "5.715316", + "0.000000000268172196725065", + "2.512179", + "0.000000000267809911268623" + ], + [ + "5.614614", + "0.000000000269386658792170", + "2.413508", + "0.000000000269028455263572" + ], + [ + "5.527276", + "0.000000000270634563883622", + "2.330131", + "0.000000000270279667191938" + ], + [ + "5.450740", + "0.000000000271912245838961", + "2.259484", + "0.000000000271560028942933" + ], + [ + "5.382892", + "0.000000000273216717651081", + "2.199456", + "0.000000000272866676740112" + ], + [ + "5.321987", + "0.000000000274545532195303", + "2.148303", + "0.000000000274197266311444" + ], + [ + "5.266577", + "0.000000000275896672517261", + "2.104585", + "0.000000000275549866773328" + ], + [ + "5.215461", + "0.000000000277268465110540", + "2.067107", + "0.000000000276922876830826" + ], + [ + "6.328861", + "0.000000000334733125161781", + "2.299428", + "0.000000000334231649375929" + ], + [ + "6.246113", + "0.000000000336110431826109", + "2.217547", + "0.000000000335612668788583" + ], + [ + "6.174446", + "0.000000000337522557479199", + "2.148690", + "0.000000000337027692671733" + ], + [ + "6.111638", + "0.000000000338965804768982", + "2.090635", + "0.000000000338473186752312" + ], + [ + "6.055860", + "0.000000000340437156991579", + "2.041553", + "0.000000000339946269811663" + ], + [ + "6.005600", + "0.000000000341934138279093", + "1.999940", + "0.000000000341444578823965" + ], + [ + "5.959612", + "0.000000000343454703455054", + "1.964551", + "0.000000000342966162820726" + ], + [ + "5.916863", + "0.000000000344997150970181", + "1.934360", + "0.000000000344509399084673" + ], + [ + "7.084582", + "0.000000000408990639845213", + "2.141798", + "0.000000000408303810273418" + ], + [ + "7.015344", + "0.000000000410530944206612", + "2.072576", + "0.000000000409847305103778" + ], + [ + "6.955469", + "0.000000000412107441072497", + "2.014667", + "0.000000000411426140941711" + ], + [ + "6.902990", + "0.000000000413716401263126", + "1.966109", + "0.000000000413036767351876" + ], + [ + "6.856291", + "0.000000000415354777890534", + "1.925286", + "0.000000000414676285673397" + ], + [ + "6.814041", + "0.000000000417020065975379", + "1.890870", + "0.000000000416342314126671" + ], + [ + "6.775142", + "0.000000000418710191846260", + "1.861770", + "0.000000000418032881658308" + ], + [ + "6.738688", + "0.000000000420423425714602", + "1.837082", + "0.000000000419746344128703" + ], + [ + "7.966508", + "0.000000000490954682157930", + "2.020691", + "0.000000000490026393961092" + ], + [ + "7.907803", + "0.000000000492658158589295", + "1.961343", + "0.000000000491732364209157" + ], + [ + "7.857121", + "0.000000000494399197841972", + "1.911976", + "0.000000000493475012001873" + ], + [ + "7.812696", + "0.000000000496174038377002", + "1.870827", + "0.000000000495250770741623" + ], + [ + "7.773078", + "0.000000000497979602722542", + "1.836449", + "0.000000000497056724325315" + ], + [ + "7.737075", + "0.000000000499813356493213", + "1.807652", + "0.000000000498890472219560" + ], + [ + "7.703707", + "0.000000000501673197312093", + "1.783460", + "0.000000000500750023286074" + ], + [ + "7.672166", + "0.000000000503557367007734", + "1.763070", + "0.000000000502633711962917" + ], + [ + "8.965114", + "0.000000000580636289455714", + "1.924959", + "0.000000000579399400438950" + ], + [ + "8.914854", + "0.000000000582503131128031", + "1.873522", + "0.000000000581267846104720" + ], + [ + "8.871544", + "0.000000000584408902282761", + "1.830999", + "0.000000000583174305852219" + ], + [ + "8.833578", + "0.000000000586349808553473", + "1.795788", + "0.000000000585115196921554" + ], + [ + "8.799641", + "0.000000000588322741537695", + "1.766573", + "0.000000000587087585767417" + ], + [ + "8.768651", + "0.000000000590325137194075", + "1.742279", + "0.000000000589089053102632" + ], + [ + "8.739722", + "0.000000000592354864267351", + "1.722022", + "0.000000000591117587704023" + ], + [ + "8.712126", + "0.000000000594410136091709", + "1.705078", + "0.000000000593171502587315" + ], + [ + "10.074419", + "0.000000000678047581198744", + "1.847535", + "0.000000000676422829706992" + ], + [ + "10.031083", + "0.000000000680077998706961", + "1.802575", + "0.000000000678453750790468" + ], + [ + "9.993820", + "0.000000000682148708410099", + "1.765655", + "0.000000000680524022492749" + ], + [ + "9.961154", + "0.000000000684255882686214", + "1.735303", + "0.000000000682630045891669" + ], + [ + "9.931878", + "0.000000000686396381889183", + "1.710316", + "0.000000000684768869999703" + ], + [ + "9.905005", + "0.000000000688567612100171", + "1.689709", + "0.000000000686938056775889" + ], + [ + "9.879724", + "0.000000000690767413036827", + "1.672674", + "0.000000000689135574912156" + ], + [ + "9.855371", + "0.000000000692993969447934", + "1.658553", + "0.000000000691359716001896" + ], + [ + "11.290512", + "0.000000000783201752915124", + "1.783735", + "0.000000000781096681765218" + ], + [ + "11.252961", + "0.000000000785395973472418", + "1.744171", + "0.000000000783290078266399" + ], + [ + "11.220751", + "0.000000000787631844792959", + "1.711919", + "0.000000000785524161923463" + ], + [ + "11.192517", + "0.000000000789905505597728", + "1.685617", + "0.000000000787795317651967" + ], + [ + "11.167142", + "0.000000000792213784706160", + "1.664152", + "0.000000000790100577022173" + ], + [ + "11.143713", + "0.000000000794554058119195", + "1.646616", + "0.000000000792437483239329" + ], + [ + "11.121487", + "0.000000000796924136394543", + "1.632266", + "0.000000000794803984910473" + ], + [ + "11.099852", + "0.000000000799322175618093", + "1.620497", + "0.000000000797198352206661" + ], + [ + "12.610765", + "0.000000000896113073999372", + "1.730335", + "0.000000000893420956613628" + ], + [ + "12.578124", + "0.000000000898471340945487", + "1.695333", + "0.000000000895776828532514" + ], + [ + "12.550204", + "0.000000000900872612943958", + "1.667028", + "0.000000000898174724144361" + ], + [ + "12.525734", + "0.000000000903312994675000", + "1.644150", + "0.000000000900611012202450" + ], + [ + "12.503673", + "0.000000000905789283147861", + "1.625664", + "0.000000000903082706834826" + ], + [ + "12.483175", + "0.000000000908298824093222", + "1.610724", + "0.000000000905587332492954" + ], + [ + "12.463548", + "0.000000000910839398786813", + "1.598645", + "0.000000000908122817698973" + ], + [ + "12.444228", + "0.000000000913409134583352", + "1.588863", + "0.000000000910687411201610" + ], + [ + "14.033374", + "0.000000001016796887567651", + "1.685046", + "0.000000001013395654252222" + ], + [ + "14.004955", + "0.000000001019319460060767", + "1.653952", + "0.000000001015914001588813" + ], + [ + "13.980728", + "0.000000001021886387520273", + "1.629026", + "0.000000001018475709155443" + ], + [ + "13.959498", + "0.000000001024493740214190", + "1.609079", + "0.000000001021077129543117" + ], + [ + "13.940293", + "0.000000001027138283076180", + "1.593142", + "0.000000001023715259437663" + ], + [ + "13.922321", + "0.000000001029817331385414", + "1.580426", + "0.000000001026387604536762" + ], + [ + "13.904938", + "0.000000001032528637021068", + "1.570289", + "0.000000001029092073277658" + ], + [ + "13.887617", + "0.000000001035270298544811", + "1.562209", + "0.000000001031826892986742" + ] + ] + } + }, + "reference": { + "c_ref": [ + "0.002386938000079198086995", + "0.002386938059531750967418" + ], + "w_1": [ + "0.000237854927349570655946", + "0.000266347266073575214575", + "0.000290166061451634245576", + "0.000307576018222263244011", + "0.000317257139947902391832", + "0.000318470580943481633105", + "0.000311151813368191557779", + "0.000295914807924064173877", + "0.000047121532808697937135", + "0.000052766161191806936518", + "0.000057484912072344023622", + "0.000060934005426460271589", + "0.000062851936242958561572", + "0.000063092331513814444131", + "0.000061642407603214033984", + "0.000058623798487387139910", + "0.000006263697429190978556", + "0.000007014017764387970076", + "0.000007641264502718966519", + "0.000008099740190743058959", + "0.000008354683899247571127", + "0.000008386638785905496630", + "0.000008193905567565155676", + "0.000007792652615219613633", + "0.000000563702707920714557", + "0.000000631227937154712169", + "0.000000687677133324982350", + "0.000000728937744932841312", + "0.000000751881455173631913", + "0.000000754757241615107374", + "0.000000737412176928808015", + "0.000000701301336908941677", + "0.000000034529348136597956", + "0.000000038665574760068830", + "0.000000042123344111193753", + "0.000000044650743753803067", + "0.000000046056150091785241", + "0.000000046232305057530378", + "0.000000045169841158404884", + "0.000000042957888387856309", + "0.000000001444383523981709", + "0.000000001617404386199019", + "0.000000001762044970224415", + "0.000000001867767626437346", + "0.000000001926556623873686", + "0.000000001933925292670539", + "0.000000001889481784943392", + "0.000000001796954462244828", + "0.000000000041348095935740", + "0.000000000046301131671100", + "0.000000000050441730511494", + "0.000000000053468233139842", + "0.000000000055151174730911", + "0.000000000055362116228978", + "0.000000000054089840278227", + "0.000000000051441077984767", + "0.000000000000811172329491", + "0.000000000000908341629421", + "0.000000000000989572436567", + "0.000000000001048946759174", + "0.000000000001081962926422", + "0.000000000001086101204195", + "0.000000000001061141528946", + "0.000000000001009177765411", + "0.000000000000010915881714", + "0.000000000000012223481278", + "0.000000000000013316597808", + "0.000000000000014115593359", + "0.000000000000014559889303", + "0.000000000000014615577779", + "0.000000000000014279697409", + "0.000000000000013580425163", + "0.000000000000000100824015", + "0.000000000000000112901595", + "0.000000000000000122998113", + "0.000000000000000130377997", + "0.000000000000000134481715", + "0.000000000000000134996079", + "0.000000000000000131893736", + "0.000000000000000125434942", + "0.000000000000000000639459", + "0.000000000000000000716059", + "0.000000000000000000780094", + "0.000000000000000000826900", + "0.000000000000000000852927", + "0.000000000000000000856189", + "0.000000000000000000836513", + "0.000000000000000000795550", + "0.000000000000000000002786", + "0.000000000000000000003120", + "0.000000000000000000003399", + "0.000000000000000000003603", + "0.000000000000000000003716", + "0.000000000000000000003730", + "0.000000000000000000003645", + "0.000000000000000000003466" + ], + "w_2": [ + "0.000290912596858381050365", + "0.000325760646218262175866", + "0.000354892637279712282050", + "0.000376186187057187504600", + "0.000388026850999240834555", + "0.000389510971068107734809", + "0.000380559625368207959864", + "0.000361923741422100638875", + "0.000053900971120004687519", + "0.000060357699781534066098", + "0.000065755343698740805473", + "0.000069700662753304833691", + "0.000071894528856301365009", + "0.000072169510118145989483", + "0.000070510983704144210507", + "0.000067058083234303484295", + "0.000006775806315920875066", + "0.000007587471522241081652", + "0.000008266000850847696503", + "0.000008761960704868144680", + "0.000009037748162646462370", + "0.000009072315624642990057", + "0.000008863824877303856091", + "0.000008429766189201486425", + "0.000000581269915743903771", + "0.000000650899498422712176", + "0.000000709107875002515869", + "0.000000751654330600198454", + "0.000000775313057675876592", + "0.000000778278465006807874", + "0.000000760392859443607604", + "0.000000723156662702218909", + "0.000000034142581057161162", + "0.000000038232477344921094", + "0.000000041651515835909008", + "0.000000044150605793247852", + "0.000000045540270018097366", + "0.000000045714451852425136", + "0.000000044663888729927286", + "0.000000042476712289054348", + "0.000000001375878265536356", + "0.000000001540692970119051", + "0.000000001678473436713149", + "0.000000001779181802907436", + "0.000000001835182513579040", + "0.000000001842201695863519", + "0.000000001799866086719066", + "0.000000001711727216290608", + "0.000000000038084736512493", + "0.000000000042646858580007", + "0.000000000046460664567238", + "0.000000000049248303333825", + "0.000000000050798420349162", + "0.000000000050992713488703", + "0.000000000049820850715848", + "0.000000000047381139484951", + "0.000000000000724642448376", + "0.000000000000811446444084", + "0.000000000000884012147862", + "0.000000000000937052855662", + "0.000000000000966547101707", + "0.000000000000970243938531", + "0.000000000000947946777341", + "0.000000000000901526124828", + "0.000000000000009481644387", + "0.000000000000010617438489", + "0.000000000000011566930475", + "0.000000000000012260946028", + "0.000000000000012646865943", + "0.000000000000012695237512", + "0.000000000000012403488452", + "0.000000000000011796093564", + "0.000000000000000085336371", + "0.000000000000000095558706", + "0.000000000000000104104292", + "0.000000000000000110350547", + "0.000000000000000113823890", + "0.000000000000000114259242", + "0.000000000000000111633452", + "0.000000000000000106166797", + "0.000000000000000000528357", + "0.000000000000000000591648", + "0.000000000000000000644558", + "0.000000000000000000683231", + "0.000000000000000000704736", + "0.000000000000000000707432", + "0.000000000000000000691174", + "0.000000000000000000657328", + "0.000000000000000000002251", + "0.000000000000000000002521", + "0.000000000000000000002746", + "0.000000000000000000002911", + "0.000000000000000000003002", + "0.000000000000000000003014", + "0.000000000000000000002945", + "0.000000000000000000002800" + ], + "w_c": [ + "0.000194555565365389739923", + "0.000217861128679972469368", + "0.000237343925411318685271", + "0.000251584555278610076079", + "0.000259503315388778892444", + "0.000260495860304972686909", + "0.000254509408902619539601", + "0.000242046164009227275034", + "0.000041205630416315380726", + "0.000046141600388601607716", + "0.000050267932730112013816", + "0.000053284007495720022112", + "0.000054961150484882353573", + "0.000055171365180676143510", + "0.000053903472876864006998", + "0.000051263836935837823802", + "0.000005791308219787542609", + "0.000006485041653406050971", + "0.000007064983330442071345", + "0.000007488882161865928739", + "0.000007724598783132547033", + "0.000007754143728407517911", + "0.000007575945869360439129", + "0.000007204954207103072242", + "0.000000546732791984161563", + "0.000000612225216607508658", + "0.000000666975045185189218", + "0.000000706993531998120618", + "0.000000729246536254022444", + "0.000000732035748951079808", + "0.000000715212846541996214", + "0.000000680189100678189237", + "0.000000034923519863649051", + "0.000000039106963816135185", + "0.000000042604205528901151", + "0.000000045160456845110979", + "0.000000046581906678651177", + "0.000000046760072551373234", + "0.000000045685480035501459", + "0.000000043448276592965872", + "0.000000001516395412231993", + "0.000000001698042486800862", + "0.000000001849894342209762", + "0.000000001960887958647814", + "0.000000002022607968965041", + "0.000000002030344013701278", + "0.000000001983684708813087", + "0.000000001886544298861977", + "0.000000000044893187315210", + "0.000000000050270885030529", + "0.000000000054766489365680", + "0.000000000058052477422193", + "0.000000000059879710584413", + "0.000000000060108737725105", + "0.000000000058727379737969", + "0.000000000055851518610566", + "0.000000000000908066898177", + "0.000000000001016843075047", + "0.000000000001107776905506", + "0.000000000001174243493431", + "0.000000000001211203443238", + "0.000000000001215836038464", + "0.000000000001187894928963", + "0.000000000001129724091699", + "0.000000000000012567408177", + "0.000000000000014072841992", + "0.000000000000015331342402", + "0.000000000000016251222581", + "0.000000000000016762738612", + "0.000000000000016826852517", + "0.000000000000016440154875", + "0.000000000000015635085714", + "0.000000000000000119124993", + "0.000000000000000133394824", + "0.000000000000000145324002", + "0.000000000000000154043439", + "0.000000000000000158892040", + "0.000000000000000159499768", + "0.000000000000000155834306", + "0.000000000000000148203150", + "0.000000000000000000773936", + "0.000000000000000000866645", + "0.000000000000000000944147", + "0.000000000000000001000795", + "0.000000000000000001032296", + "0.000000000000000001036244", + "0.000000000000000001012430", + "0.000000000000000000962852", + "0.000000000000000000003449", + "0.000000000000000000003862", + "0.000000000000000000004207", + "0.000000000000000000004459", + "0.000000000000000000004600", + "0.000000000000000000004617", + "0.000000000000000000004511", + "0.000000000000000000004290" + ] + }, + "tv_law_torus": { + "C_om_om": { + "c": [ + "2.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-0.500000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000002599633114745137354", + "0.000000000007066582695857756844", + "0.000000000021368033626959840713", + "0.000000000058084725808563787829" + ], + "rem_r9": "0.000430340856156959754737864586" + }, + "C_w_om": { + "c": [ + "0.000000000000000000000000000000", + "-1.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.250000000000000000000000000000" + ], + "rad": [ + "0.000000000001139565200983897252", + "0.000000000003471599917427278977", + "0.000000000010342715361857281832", + "0.000000000028602034377341761843" + ], + "rem_r9": "0.004170634130492089914112528135" + }, + "C_w_w": { + "c": [ + "2.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000000195862768918648640", + "0.000000000001030973540184753253", + "0.000000000003072919538206200998", + "0.000000000008856128382754343228" + ], + "rem_r9": "0.000411151981484072375744543282" + }, + "alpha_om": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000000120188517291371709", + "0.000000000000326708446555461953", + "0.000000000001007167230928160328", + "0.000000000002737782683852435405" + ], + "rem_r9": "0.000000001164743446980500833855" + }, + "alpha_w": { + "c": [ + "-1.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000000046739978946673328", + "0.000000000000147084704320286353", + "0.000000000000447116759024491255", + "0.000000000001240436760501712344" + ], + "rem_r9": "0.000284915323247192931517152288" + }, + "beta_om": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "1.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000004166535266103573111", + "0.000000000011325892813937290284", + "0.000000000033698407410766666097", + "0.000000000091662475124068435604" + ], + "rem_r9": "0.000646297318666597482734191266" + }, + "beta_w": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000001762764920274559981", + "0.000000000005486146427170042633", + "0.000000000016128231285709159114", + "0.000000000044599226477215676935" + ], + "rem_r9": "0.005214185917156432889306975588" + }, + "det": { + "c": [ + "12.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-18.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000092812243907716911986", + "0.000000000252291522614457554530", + "0.000000000804904189418287015859", + "0.000000002187971058096695195228" + ], + "rem_r9": "0.023648236183248396112274908258" + }, + "e_bb": { + "c": [ + "1.500000000000000000000000000000", + "0.000000000000000000000000000000", + "0.125000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000000107947094234121683", + "0.000000000000293432586259258168", + "0.000000000000947873445850502094", + "0.000000000002576604387879383540" + ], + "rem_r9": "0.000454334819372525728390555279" + }, + "e_bk": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-0.750000000000000000000000000000" + ], + "rad": [ + "0.000000000004780832132259530041", + "0.000000000012995735985221072836", + "0.000000000038144062145408372228", + "0.000000000103740977677807759198" + ], + "rem_r9": "0.000000055425439033068957620244" + }, + "e_kk": { + "c": [ + "24.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-6.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000180122524580778108685", + "0.000000000489627058571711792400", + "0.000000001519729331151923225550", + "0.000000004135861073035519975783" + ], + "rem_r9": "0.005799849493283628819597727373" + } + } + }, + "3": { + "corollary_reference_kernel": { + "1/1024": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.023602832674", + "c2_up": "0.024305708225", + "ell_max": "1/2147483648", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "24.223379", + "rel2_up": "24.944734" + }, + "1/128": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.041290445237", + "c2_up": "0.041956196259", + "ell_max": "1/4194304", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "42.376020", + "rel2_up": "43.059274" + }, + "1/2048": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.022433128839", + "c2_up": "0.023139014544", + "ell_max": "1/17179869184", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "23.022923", + "rel2_up": "23.747367" + }, + "1/256": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.030879237836", + "c2_up": "0.031564821779", + "ell_max": "1/33554432", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "31.691090", + "rel2_up": "32.394699" + }, + "1/4096": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.021852819371", + "c2_up": "0.022560220235", + "ell_max": "1/137438953472", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "22.427356", + "rel2_up": "23.153355" + }, + "1/512": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.025978831830", + "c2_up": "0.026675781630", + "ell_max": "1/268435456", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "26.661846", + "rel2_up": "27.377120" + }, + "1/64": { + "c1_dn": "0.000000000000000000000000000000", + "c1_up": "0.000000000000000000000000000000", + "c2_dn": "0.064696042554", + "c2_up": "0.065342543644", + "ell_max": "1/524288", + "rel1_dn": "0.000000000000000000000000000000", + "rel1_up": "0.000000000000000000000000000000", + "rel2_dn": "66.396978", + "rel2_up": "67.060476" + } + }, + "corollary_torus": { + "1/1024": { + "c1_dn": "0.000000000038760142617099647997", + "c1_up": "0.000000000038760242290214336182", + "c2_dn": "0.023602833263", + "c2_up": "0.024305708837", + "ell_max": "1/2147483648", + "rel1_dn": "0.000000039779193031444051996722", + "rel1_up": "0.000000039779295325083897310180", + "rel2_dn": "24.223380", + "rel2_up": "24.944735" + }, + "1/128": { + "c1_dn": "0.000000000038760142617569829072", + "c1_up": "0.000000000038771093066685055999", + "c2_dn": "0.041290446061", + "c2_up": "0.041956197020", + "ell_max": "1/4194304", + "rel1_dn": "0.000000039779193031926594693356", + "rel1_up": "0.000000039790431381419752796847", + "rel2_dn": "42.376022", + "rel2_up": "43.059276" + }, + "1/2048": { + "c1_dn": "0.000000000038760142617066762828", + "c1_up": "0.000000000038760166354788122339", + "c2_dn": "0.022433129276", + "c2_up": "0.023139015046", + "ell_max": "1/17179869184", + "rel1_dn": "0.000000039779193031410302236805", + "rel1_up": "0.000000039779217393224690144577", + "rel2_dn": "23.022924", + "rel2_up": "23.747368" + }, + "1/256": { + "c1_dn": "0.000000000038760142617298769604", + "c1_up": "0.000000000038762207456566478181", + "c2_dn": "0.030879238436", + "c2_up": "0.031564822464", + "ell_max": "1/33554432", + "rel1_dn": "0.000000039779193031648408748087", + "rel1_up": "0.000000039781312158005101995723", + "rel2_dn": "31.691091", + "rel2_up": "32.394700" + }, + "1/4096": { + "c1_dn": "0.000000000038760142617050430163", + "c1_up": "0.000000000038760148405078088540", + "c2_dn": "0.021852819773", + "c2_up": "0.022560221087", + "ell_max": "1/137438953472", + "rel1_dn": "0.000000039779193031393540166672", + "rel1_up": "0.000000039779198971595354397351", + "rel2_dn": "22.427357", + "rel2_up": "23.153357" + }, + "1/512": { + "c1_dn": "0.000000000038760142617165631851", + "c1_up": "0.000000000038760579680775627315", + "c2_dn": "0.025978832494", + "c2_up": "0.026675782116", + "ell_max": "1/268435456", + "rel1_dn": "0.000000039779193031511770644931", + "rel1_up": "0.000000039779641586045761425565", + "rel2_dn": "26.661848", + "rel2_up": "27.377121" + }, + "1/64": { + "c1_dn": "0.000000000038760142618131881661", + "c1_up": "0.000000000038828163894439079694", + "c2_dn": "0.064696043986", + "c2_up": "0.065342545201", + "ell_max": "1/524288", + "rel1_dn": "0.000000039779193032503424315625", + "rel1_up": "0.000000039849002669356398695195", + "rel2_dn": "66.396981", + "rel2_up": "67.060479" + } + }, + "eps0_215": "0.000000017776414193976447", + "rate_reference_kernel": { + "1/1024": { + "a_dn": "27.301701", + "a_up": "27.446809", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "27.446809", + "0.000000000000000000000000", + "27.301701", + "0.000000000000000000000000" + ], + [ + "24.441972", + "0.000000000000000000000000", + "24.237480", + "0.000000000000000000000000" + ], + [ + "21.884818", + "0.000000000000000000000000", + "21.625181", + "0.000000000000000000000000" + ], + [ + "19.698572", + "0.000000000000000000000000", + "19.388137", + "0.000000000000000000000000" + ], + [ + "17.820939", + "0.000000000000000000000000", + "17.464132", + "0.000000000000000000000000" + ], + [ + "16.201160", + "0.000000000000000000000000", + "15.802459", + "0.000000000000000000000000" + ], + [ + "14.797690", + "0.000000000000000000000000", + "14.361607", + "0.000000000000000000000000" + ], + [ + "13.576382", + "0.000000000000000000000000", + "13.107440", + "0.000000000000000000000000" + ], + [ + "20.652162", + "0.000000000000000000000000", + "19.819138", + "0.000000000000000000000000" + ], + [ + "18.531328", + "0.000000000000000000000000", + "17.639326", + "0.000000000000000000000000" + ], + [ + "16.724213", + "0.000000000000000000000000", + "15.777542", + "0.000000000000000000000000" + ], + [ + "15.177085", + "0.000000000000000000000000", + "14.180118", + "0.000000000000000000000000" + ], + [ + "13.846333", + "0.000000000000000000000000", + "12.803485", + "0.000000000000000000000000" + ], + [ + "12.696404", + "0.000000000000000000000000", + "11.612112", + "0.000000000000000000000000" + ], + [ + "11.698184", + "0.000000000000000000000000", + "10.576897", + "0.000000000000000000000000" + ], + [ + "10.827736", + "0.000000000000000000000000", + "9.673892", + "0.000000000000000000000000" + ], + [ + "17.065979", + "0.000000000000000000000000", + "15.524335", + "0.000000000000000000000000" + ], + [ + "15.452405", + "0.000000000000000000000000", + "13.852056", + "0.000000000000000000000000" + ], + [ + "14.075717", + "0.000000000000000000000000", + "12.421010", + "0.000000000000000000000000" + ], + [ + "12.895396", + "0.000000000000000000000000", + "11.190713", + "0.000000000000000000000000" + ], + [ + "11.878539", + "0.000000000000000000000000", + "10.128288", + "0.000000000000000000000000" + ], + [ + "10.998313", + "0.000000000000000000000000", + "9.206907", + "0.000000000000000000000000" + ], + [ + "10.232736", + "0.000000000000000000000000", + "8.404584", + "0.000000000000000000000000" + ], + [ + "9.563721", + "0.000000000000000000000000", + "7.703216", + "0.000000000000000000000000" + ], + [ + "15.100980", + "0.000000000000000000000000", + "12.792965", + "0.000000000000000000000000" + ], + [ + "13.809764", + "0.000000000000000000000000", + "11.443242", + "0.000000000000000000000000" + ], + [ + "12.706648", + "0.000000000000000000000000", + "10.285984", + "0.000000000000000000000000" + ], + [ + "11.759497", + "0.000000000000000000000000", + "9.289078", + "0.000000000000000000000000" + ], + [ + "10.942203", + "0.000000000000000000000000", + "8.426431", + "0.000000000000000000000000" + ], + [ + "10.233469", + "0.000000000000000000000000", + "7.676740", + "0.000000000000000000000000" + ], + [ + "9.615838", + "0.000000000000000000000000", + "7.022538", + "0.000000000000000000000000" + ], + [ + "9.074940", + "0.000000000000000000000000", + "6.449431", + "0.000000000000000000000000" + ], + [ + "14.075326", + "0.000000000000000000000000", + "10.927180", + "0.000000000000000000000000" + ], + [ + "13.004103", + "0.000000000000000000000000", + "9.797597", + "0.000000000000000000000000" + ], + [ + "12.087718", + "0.000000000000000000000000", + "8.827228", + "0.000000000000000000000000" + ], + [ + "11.299745", + "0.000000000000000000000000", + "7.989661", + "0.000000000000000000000000" + ], + [ + "10.618711", + "0.000000000000000000000000", + "7.263428", + "0.000000000000000000000000" + ], + [ + "10.027087", + "0.000000000000000000000000", + "6.630991", + "0.000000000000000000000000" + ], + [ + "9.510503", + "0.000000000000000000000000", + "6.077964", + "0.000000000000000000000000" + ], + [ + "9.057123", + "0.000000000000000000000000", + "5.592482", + "0.000000000000000000000000" + ], + [ + "13.653753", + "0.000000000000000000000000", + "9.583811", + "0.000000000000000000000000" + ], + [ + "12.740768", + "0.000000000000000000000000", + "8.612579", + "0.000000000000000000000000" + ], + [ + "11.958717", + "0.000000000000000000000000", + "7.776664", + "0.000000000000000000000000" + ], + [ + "11.285277", + "0.000000000000000000000000", + "7.053751", + "0.000000000000000000000000" + ], + [ + "10.702300", + "0.000000000000000000000000", + "6.425691", + "0.000000000000000000000000" + ], + [ + "10.194968", + "0.000000000000000000000000", + "5.877655", + "0.000000000000000000000000" + ], + [ + "9.751126", + "0.000000000000000000000000", + "5.397465", + "0.000000000000000000000000" + ], + [ + "9.360759", + "0.000000000000000000000000", + "4.975078", + "0.000000000000000000000000" + ], + [ + "13.654502", + "0.000000000000000000000000", + "8.576803", + "0.000000000000000000000000" + ], + [ + "12.860016", + "0.000000000000000000000000", + "7.724159", + "0.000000000000000000000000" + ], + [ + "12.178581", + "0.000000000000000000000000", + "6.988953", + "0.000000000000000000000000" + ], + [ + "11.590939", + "0.000000000000000000000000", + "6.351932", + "0.000000000000000000000000" + ], + [ + "11.081431", + "0.000000000000000000000000", + "5.797430", + "0.000000000000000000000000" + ], + [ + "10.637264", + "0.000000000000000000000000", + "5.312642", + "0.000000000000000000000000" + ], + [ + "10.247941", + "0.000000000000000000000000", + "4.887046", + "0.000000000000000000000000" + ], + [ + "9.904808", + "0.000000000000000000000000", + "4.511956", + "0.000000000000000000000000" + ], + [ + "13.971459", + "0.000000000000000000000000", + "7.797529", + "0.000000000000000000000000" + ], + [ + "13.268586", + "0.000000000000000000000000", + "7.036569", + "0.000000000000000000000000" + ], + [ + "12.664950", + "0.000000000000000000000000", + "6.379236", + "0.000000000000000000000000" + ], + [ + "12.143661", + "0.000000000000000000000000", + "5.808641", + "0.000000000000000000000000" + ], + [ + "11.690979", + "0.000000000000000000000000", + "5.311037", + "0.000000000000000000000000" + ], + [ + "11.295677", + "0.000000000000000000000000", + "4.875179", + "0.000000000000000000000000" + ], + [ + "10.948536", + "0.000000000000000000000000", + "4.491824", + "0.000000000000000000000000" + ], + [ + "10.641955", + "0.000000000000000000000000", + "4.153337", + "0.000000000000000000000000" + ], + [ + "14.538960", + "0.000000000000000000000000", + "7.178768", + "0.000000000000000000000000" + ], + [ + "13.908764", + "0.000000000000000000000000", + "6.490543", + "0.000000000000000000000000" + ], + [ + "13.366856", + "0.000000000000000000000000", + "5.894998", + "0.000000000000000000000000" + ], + [ + "12.898220", + "0.000000000000000000000000", + "5.377116", + "0.000000000000000000000000" + ], + [ + "12.490640", + "0.000000000000000000000000", + "4.924669", + "0.000000000000000000000000" + ], + [ + "12.134126", + "0.000000000000000000000000", + "4.527651", + "0.000000000000000000000000" + ], + [ + "11.820474", + "0.000000000000000000000000", + "4.177832", + "0.000000000000000000000000" + ], + [ + "11.542916", + "0.000000000000000000000000", + "3.868409", + "0.000000000000000000000000" + ], + [ + "15.314419", + "0.000000000000000000000000", + "6.676923", + "0.000000000000000000000000" + ], + [ + "14.743118", + "0.000000000000000000000000", + "6.047641", + "0.000000000000000000000000" + ], + [ + "14.251239", + "0.000000000000000000000000", + "5.502173", + "0.000000000000000000000000" + ], + [ + "13.825285", + "0.000000000000000000000000", + "5.027020", + "0.000000000000000000000000" + ], + [ + "13.454268", + "0.000000000000000000000000", + "4.611184", + "0.000000000000000000000000" + ], + [ + "13.129205", + "0.000000000000000000000000", + "4.245658", + "0.000000000000000000000000" + ], + [ + "12.842711", + "0.000000000000000000000000", + "3.923035", + "0.000000000000000000000000" + ], + [ + "12.588693", + "0.000000000000000000000000", + "3.637184", + "0.000000000000000000000000" + ], + [ + "16.269127", + "0.000000000000000000000000", + "6.262604", + "0.000000000000000000000000" + ], + [ + "15.746411", + "0.000000000000000000000000", + "5.681946", + "0.000000000000000000000000" + ], + [ + "15.295810", + "0.000000000000000000000000", + "5.177795", + "0.000000000000000000000000" + ], + [ + "14.905075", + "0.000000000000000000000000", + "4.737901", + "0.000000000000000000000000" + ], + [ + "14.564234", + "0.000000000000000000000000", + "4.352277", + "0.000000000000000000000000" + ], + [ + "14.265129", + "0.000000000000000000000000", + "4.012745", + "0.000000000000000000000000" + ], + [ + "14.001054", + "0.000000000000000000000000", + "3.712571", + "0.000000000000000000000000" + ], + [ + "13.766471", + "0.000000000000000000000000", + "3.446181", + "0.000000000000000000000000" + ], + [ + "17.383092", + "0.000000000000000000000000", + "5.915341", + "0.000000000000000000000000" + ], + [ + "16.901069", + "0.000000000000000000000000", + "5.375408", + "0.000000000000000000000000" + ], + [ + "16.485043", + "0.000000000000000000000000", + "4.905866", + "0.000000000000000000000000" + ], + [ + "16.123813", + "0.000000000000000000000000", + "4.495510", + "0.000000000000000000000000" + ], + [ + "15.808256", + "0.000000000000000000000000", + "4.135200", + "0.000000000000000000000000" + ], + [ + "15.530905", + "0.000000000000000000000000", + "3.817450", + "0.000000000000000000000000" + ], + [ + "15.285619", + "0.000000000000000000000000", + "3.536090", + "0.000000000000000000000000" + ], + [ + "15.067325", + "0.000000000000000000000000", + "3.286011", + "0.000000000000000000000000" + ] + ] + }, + "1/128": { + "a_dn": "45.508415", + "a_up": "45.611669", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "45.611669", + "0.000000000000000000000000", + "45.508415", + "0.000000000000000000000000" + ], + [ + "41.138906", + "0.000000000000000000000000", + "40.972100", + "0.000000000000000000000000" + ], + [ + "37.271100", + "0.000000000000000000000000", + "37.045478", + "0.000000000000000000000000" + ], + [ + "33.909932", + "0.000000000000000000000000", + "33.630261", + "0.000000000000000000000000" + ], + [ + "30.975637", + "0.000000000000000000000000", + "30.646703", + "0.000000000000000000000000" + ], + [ + "28.403073", + "0.000000000000000000000000", + "28.029663", + "0.000000000000000000000000" + ], + [ + "26.138682", + "0.000000000000000000000000", + "25.725573", + "0.000000000000000000000000" + ], + [ + "24.138134", + "0.000000000000000000000000", + "23.690076", + "0.000000000000000000000000" + ], + [ + "34.109819", + "0.000000000000000000000000", + "33.307655", + "0.000000000000000000000000" + ], + [ + "30.899705", + "0.000000000000000000000000", + "30.035265", + "0.000000000000000000000000" + ], + [ + "28.120559", + "0.000000000000000000000000", + "27.198524", + "0.000000000000000000000000" + ], + [ + "25.702474", + "0.000000000000000000000000", + "24.727531", + "0.000000000000000000000000" + ], + [ + "23.588736", + "0.000000000000000000000000", + "22.565571", + "0.000000000000000000000000" + ], + [ + "21.733025", + "0.000000000000000000000000", + "20.666306", + "0.000000000000000000000000" + ], + [ + "20.097245", + "0.000000000000000000000000", + "18.991618", + "0.000000000000000000000000" + ], + [ + "18.649854", + "0.000000000000000000000000", + "17.509930", + "0.000000000000000000000000" + ], + [ + "27.913968", + "0.000000000000000000000000", + "26.395973", + "0.000000000000000000000000" + ], + [ + "25.423571", + "0.000000000000000000000000", + "23.844105", + "0.000000000000000000000000" + ], + [ + "23.264372", + "0.000000000000000000000000", + "21.628072", + "0.000000000000000000000000" + ], + [ + "21.382847", + "0.000000000000000000000000", + "19.694345", + "0.000000000000000000000000" + ], + [ + "19.735561", + "0.000000000000000000000000", + "17.999474", + "0.000000000000000000000000" + ], + [ + "18.287023", + "0.000000000000000000000000", + "16.507947", + "0.000000000000000000000000" + ], + [ + "17.008031", + "0.000000000000000000000000", + "15.190531", + "0.000000000000000000000000" + ], + [ + "15.874384", + "0.000000000000000000000000", + "14.022987", + "0.000000000000000000000000" + ], + [ + "24.317167", + "0.000000000000000000000000", + "22.027554", + "0.000000000000000000000000" + ], + [ + "22.283245", + "0.000000000000000000000000", + "19.932709", + "0.000000000000000000000000" + ], + [ + "20.517025", + "0.000000000000000000000000", + "18.110165", + "0.000000000000000000000000" + ], + [ + "18.975445", + "0.000000000000000000000000", + "16.516850", + "0.000000000000000000000000" + ], + [ + "17.623544", + "0.000000000000000000000000", + "15.117785", + "0.000000000000000000000000" + ], + [ + "16.432740", + "0.000000000000000000000000", + "13.884362", + "0.000000000000000000000000" + ], + [ + "15.379497", + "0.000000000000000000000000", + "12.793011", + "0.000000000000000000000000" + ], + [ + "14.444291", + "0.000000000000000000000000", + "11.824169", + "0.000000000000000000000000" + ], + [ + "22.185294", + "0.000000000000000000000000", + "19.051401", + "0.000000000000000000000000" + ], + [ + "20.463004", + "0.000000000000000000000000", + "17.268578", + "0.000000000000000000000000" + ], + [ + "18.964977", + "0.000000000000000000000000", + "15.714586", + "0.000000000000000000000000" + ], + [ + "17.655326", + "0.000000000000000000000000", + "14.353527", + "0.000000000000000000000000" + ], + [ + "16.504899", + "0.000000000000000000000000", + "13.156226", + "0.000000000000000000000000" + ], + [ + "15.489845", + "0.000000000000000000000000", + "12.098806", + "0.000000000000000000000000" + ], + [ + "14.590507", + "0.000000000000000000000000", + "11.161574", + "0.000000000000000000000000" + ], + [ + "13.790564", + "0.000000000000000000000000", + "10.328170", + "0.000000000000000000000000" + ], + [ + "20.969267", + "0.000000000000000000000000", + "16.910059", + "0.000000000000000000000000" + ], + [ + "19.471475", + "0.000000000000000000000000", + "15.352022", + "0.000000000000000000000000" + ], + [ + "18.166615", + "0.000000000000000000000000", + "13.991459", + "0.000000000000000000000000" + ], + [ + "17.023981", + "0.000000000000000000000000", + "12.797651", + "0.000000000000000000000000" + ], + [ + "16.018618", + "0.000000000000000000000000", + "11.745621", + "0.000000000000000000000000" + ], + [ + "15.130089", + "0.000000000000000000000000", + "10.814904", + "0.000000000000000000000000" + ], + [ + "14.341538", + "0.000000000000000000000000", + "9.988608", + "0.000000000000000000000000" + ], + [ + "13.638954", + "0.000000000000000000000000", + "9.252681", + "0.000000000000000000000000" + ], + [ + "20.374368", + "0.000000000000000000000000", + "15.304231", + "0.000000000000000000000000" + ], + [ + "19.045062", + "0.000000000000000000000000", + "13.914897", + "0.000000000000000000000000" + ], + [ + "17.885155", + "0.000000000000000000000000", + "12.699481", + "0.000000000000000000000000" + ], + [ + "16.867840", + "0.000000000000000000000000", + "11.631164", + "0.000000000000000000000000" + ], + [ + "15.971313", + "0.000000000000000000000000", + "10.688120", + "0.000000000000000000000000" + ], + [ + "15.177707", + "0.000000000000000000000000", + "9.852452", + "0.000000000000000000000000" + ], + [ + "14.472267", + "0.000000000000000000000000", + "9.109371", + "0.000000000000000000000000" + ], + [ + "13.842719", + "0.000000000000000000000000", + "8.446561", + "0.000000000000000000000000" + ], + [ + "20.229668", + "0.000000000000000000000000", + "14.060284", + "0.000000000000000000000000" + ], + [ + "19.030944", + "0.000000000000000000000000", + "12.801698", + "0.000000000000000000000000" + ], + [ + "17.983370", + "0.000000000000000000000000", + "11.698764", + "0.000000000000000000000000" + ], + [ + "17.063168", + "0.000000000000000000000000", + "10.727689", + "0.000000000000000000000000" + ], + [ + "16.250980", + "0.000000000000000000000000", + "9.869093", + "0.000000000000000000000000" + ], + [ + "15.530929", + "0.000000000000000000000000", + "9.107070", + "0.000000000000000000000000" + ], + [ + "14.889893", + "0.000000000000000000000000", + "8.428463", + "0.000000000000000000000000" + ], + [ + "14.316940", + "0.000000000000000000000000", + "7.822302", + "0.000000000000000000000000" + ], + [ + "20.429857", + "0.000000000000000000000000", + "13.071214", + "0.000000000000000000000000" + ], + [ + "19.334993", + "0.000000000000000000000000", + "11.916618", + "0.000000000000000000000000" + ], + [ + "18.376764", + "0.000000000000000000000000", + "10.903142", + "0.000000000000000000000000" + ], + [ + "17.533799", + "0.000000000000000000000000", + "10.009399", + "0.000000000000000000000000" + ], + [ + "16.788687", + "0.000000000000000000000000", + "9.217959", + "0.000000000000000000000000" + ], + [ + "16.127137", + "0.000000000000000000000000", + "8.514501", + "0.000000000000000000000000" + ], + [ + "15.537324", + "0.000000000000000000000000", + "7.887166", + "0.000000000000000000000000" + ], + [ + "15.009387", + "0.000000000000000000000000", + "7.326053", + "0.000000000000000000000000" + ], + [ + "20.906836", + "0.000000000000000000000000", + "12.267802", + "0.000000000000000000000000" + ], + [ + "19.896358", + "0.000000000000000000000000", + "11.197694", + "0.000000000000000000000000" + ], + [ + "19.010719", + "0.000000000000000000000000", + "10.256895", + "0.000000000000000000000000" + ], + [ + "18.230507", + "0.000000000000000000000000", + "9.425977", + "0.000000000000000000000000" + ], + [ + "17.539895", + "0.000000000000000000000000", + "8.689094", + "0.000000000000000000000000" + ], + [ + "16.925878", + "0.000000000000000000000000", + "8.033214", + "0.000000000000000000000000" + ], + [ + "16.377687", + "0.000000000000000000000000", + "7.447531", + "0.000000000000000000000000" + ], + [ + "15.886329", + "0.000000000000000000000000", + "6.923015", + "0.000000000000000000000000" + ], + [ + "21.614786", + "0.000000000000000000000000", + "11.603456", + "0.000000000000000000000000" + ], + [ + "20.674100", + "0.000000000000000000000000", + "10.603221", + "0.000000000000000000000000" + ], + [ + "19.848499", + "0.000000000000000000000000", + "9.722527", + "0.000000000000000000000000" + ], + [ + "19.120189", + "0.000000000000000000000000", + "8.943566", + "0.000000000000000000000000" + ], + [ + "18.474655", + "0.000000000000000000000000", + "8.251801", + "0.000000000000000000000000" + ], + [ + "17.899956", + "0.000000000000000000000000", + "7.635266", + "0.000000000000000000000000" + ], + [ + "17.386194", + "0.000000000000000000000000", + "7.084030", + "0.000000000000000000000000" + ], + [ + "16.925097", + "0.000000000000000000000000", + "6.589781", + "0.000000000000000000000000" + ], + [ + "22.521840", + "0.000000000000000000000000", + "11.045754", + "0.000000000000000000000000" + ], + [ + "21.639754", + "0.000000000000000000000000", + "10.104184", + "0.000000000000000000000000" + ], + [ + "20.864563", + "0.000000000000000000000000", + "9.273951", + "0.000000000000000000000000" + ], + [ + "20.179835", + "0.000000000000000000000000", + "8.538610", + "0.000000000000000000000000" + ], + [ + "19.572152", + "0.000000000000000000000000", + "7.884725", + "0.000000000000000000000000" + ], + [ + "19.030470", + "0.000000000000000000000000", + "7.301224", + "0.000000000000000000000000" + ], + [ + "18.545623", + "0.000000000000000000000000", + "6.778909", + "0.000000000000000000000000" + ], + [ + "18.109942", + "0.000000000000000000000000", + "6.310071", + "0.000000000000000000000000" + ] + ] + }, + "1/2048": { + "a_dn": "26.108063", + "a_up": "26.256538", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "26.256538", + "0.000000000000000000000000", + "26.108063", + "0.000000000000000000000000" + ], + [ + "23.345679", + "0.000000000000000000000000", + "23.138155", + "0.000000000000000000000000" + ], + [ + "20.872444", + "0.000000000000000000000000", + "20.610069", + "0.000000000000000000000000" + ], + [ + "18.761472", + "0.000000000000000000000000", + "18.448560", + "0.000000000000000000000000" + ], + [ + "16.951611", + "0.000000000000000000000000", + "16.592558", + "0.000000000000000000000000" + ], + [ + "15.393028", + "0.000000000000000000000000", + "14.992288", + "0.000000000000000000000000" + ], + [ + "14.044949", + "0.000000000000000000000000", + "13.607011", + "0.000000000000000000000000" + ], + [ + "12.873871", + "0.000000000000000000000000", + "12.403241", + "0.000000000000000000000000" + ], + [ + "19.768196", + "0.000000000000000000000000", + "18.932615", + "0.000000000000000000000000" + ], + [ + "17.717332", + "0.000000000000000000000000", + "16.823041", + "0.000000000000000000000000" + ], + [ + "15.972657", + "0.000000000000000000000000", + "15.023935", + "0.000000000000000000000000" + ], + [ + "14.481508", + "0.000000000000000000000000", + "13.482702", + "0.000000000000000000000000" + ], + [ + "13.201132", + "0.000000000000000000000000", + "12.156633", + "0.000000000000000000000000" + ], + [ + "12.096671", + "0.000000000000000000000000", + "11.010900", + "0.000000000000000000000000" + ], + [ + "11.139593", + "0.000000000000000000000000", + "10.016980", + "0.000000000000000000000000" + ], + [ + "10.306442", + "0.000000000000000000000000", + "9.151412", + "0.000000000000000000000000" + ], + [ + "16.352271", + "0.000000000000000000000000", + "14.808580", + "0.000000000000000000000000" + ], + [ + "14.795131", + "0.000000000000000000000000", + "13.192965", + "0.000000000000000000000000" + ], + [ + "13.468809", + "0.000000000000000000000000", + "11.812489", + "0.000000000000000000000000" + ], + [ + "12.333646", + "0.000000000000000000000000", + "10.627534", + "0.000000000000000000000000" + ], + [ + "11.357430", + "0.000000000000000000000000", + "9.605914", + "0.000000000000000000000000" + ], + [ + "10.513889", + "0.000000000000000000000000", + "8.721368", + "0.000000000000000000000000" + ], + [ + "9.781505", + "0.000000000000000000000000", + "7.952375", + "0.000000000000000000000000" + ], + [ + "9.142584", + "0.000000000000000000000000", + "7.281226", + "0.000000000000000000000000" + ], + [ + "14.493950", + "0.000000000000000000000000", + "12.184243", + "0.000000000000000000000000" + ], + [ + "13.250594", + "0.000000000000000000000000", + "10.882583", + "0.000000000000000000000000" + ], + [ + "12.190212", + "0.000000000000000000000000", + "9.768241", + "0.000000000000000000000000" + ], + [ + "11.281390", + "0.000000000000000000000000", + "8.809831", + "0.000000000000000000000000" + ], + [ + "10.498605", + "0.000000000000000000000000", + "7.981842", + "0.000000000000000000000000" + ], + [ + "9.821029", + "0.000000000000000000000000", + "7.263447", + "0.000000000000000000000000" + ], + [ + "9.231598", + "0.000000000000000000000000", + "6.637572", + "0.000000000000000000000000" + ], + [ + "8.716272", + "0.000000000000000000000000", + "6.090154", + "0.000000000000000000000000" + ], + [ + "13.540740", + "0.000000000000000000000000", + "10.391162", + "0.000000000000000000000000" + ], + [ + "12.511501", + "0.000000000000000000000000", + "9.303750", + "0.000000000000000000000000" + ], + [ + "11.632629", + "0.000000000000000000000000", + "8.371062", + "0.000000000000000000000000" + ], + [ + "10.878323", + "0.000000000000000000000000", + "7.567317", + "0.000000000000000000000000" + ], + [ + "10.227612", + "0.000000000000000000000000", + "6.871548", + "0.000000000000000000000000" + ], + [ + "9.663381", + "0.000000000000000000000000", + "6.266635", + "0.000000000000000000000000" + ], + [ + "9.171598", + "0.000000000000000000000000", + "5.738529", + "0.000000000000000000000000" + ], + [ + "8.740714", + "0.000000000000000000000000", + "5.275655", + "0.000000000000000000000000" + ], + [ + "13.171276", + "0.000000000000000000000000", + "9.100104", + "0.000000000000000000000000" + ], + [ + "12.296017", + "0.000000000000000000000000", + "8.166773", + "0.000000000000000000000000" + ], + [ + "11.547700", + "0.000000000000000000000000", + "7.364752", + "0.000000000000000000000000" + ], + [ + "10.904555", + "0.000000000000000000000000", + "6.672281", + "0.000000000000000000000000" + ], + [ + "10.348881", + "0.000000000000000000000000", + "6.071660", + "0.000000000000000000000000" + ], + [ + "9.866224", + "0.000000000000000000000000", + "5.548424", + "0.000000000000000000000000" + ], + [ + "9.444732", + "0.000000000000000000000000", + "5.090702", + "0.000000000000000000000000" + ], + [ + "9.074644", + "0.000000000000000000000000", + "4.688705", + "0.000000000000000000000000" + ], + [ + "13.211155", + "0.000000000000000000000000", + "8.132390", + "0.000000000000000000000000" + ], + [ + "12.451177", + "0.000000000000000000000000", + "7.314421", + "0.000000000000000000000000" + ], + [ + "11.800622", + "0.000000000000000000000000", + "6.610249", + "0.000000000000000000000000" + ], + [ + "11.240732", + "0.000000000000000000000000", + "6.001122", + "0.000000000000000000000000" + ], + [ + "10.756250", + "0.000000000000000000000000", + "5.471779", + "0.000000000000000000000000" + ], + [ + "10.334712", + "0.000000000000000000000000", + "5.009743", + "0.000000000000000000000000" + ], + [ + "9.965893", + "0.000000000000000000000000", + "4.604768", + "0.000000000000000000000000" + ], + [ + "9.641372", + "0.000000000000000000000000", + "4.248401", + "0.000000000000000000000000" + ], + [ + "13.558490", + "0.000000000000000000000000", + "7.383631", + "0.000000000000000000000000" + ], + [ + "12.887611", + "0.000000000000000000000000", + "6.654828", + "0.000000000000000000000000" + ], + [ + "12.312630", + "0.000000000000000000000000", + "6.026300", + "0.000000000000000000000000" + ], + [ + "11.817111", + "0.000000000000000000000000", + "5.481614", + "0.000000000000000000000000" + ], + [ + "11.387681", + "0.000000000000000000000000", + "5.007393", + "0.000000000000000000000000" + ], + [ + "11.013414", + "0.000000000000000000000000", + "4.592693", + "0.000000000000000000000000" + ], + [ + "10.685342", + "0.000000000000000000000000", + "4.228523", + "0.000000000000000000000000" + ], + [ + "10.396076", + "0.000000000000000000000000", + "3.907462", + "0.000000000000000000000000" + ], + [ + "14.150208", + "0.000000000000000000000000", + "6.789205", + "0.000000000000000000000000" + ], + [ + "13.549991", + "0.000000000000000000000000", + "6.131119", + "0.000000000000000000000000" + ], + [ + "13.034955", + "0.000000000000000000000000", + "5.562594", + "0.000000000000000000000000" + ], + [ + "12.590503", + "0.000000000000000000000000", + "5.069034", + "0.000000000000000000000000" + ], + [ + "12.204755", + "0.000000000000000000000000", + "4.638551", + "0.000000000000000000000000" + ], + [ + "11.868002", + "0.000000000000000000000000", + "4.261418", + "0.000000000000000000000000" + ], + [ + "11.572272", + "0.000000000000000000000000", + "3.929638", + "0.000000000000000000000000" + ], + [ + "11.310993", + "0.000000000000000000000000", + "3.636606", + "0.000000000000000000000000" + ], + [ + "14.945390", + "0.000000000000000000000000", + "6.307189", + "0.000000000000000000000000" + ], + [ + "14.402419", + "0.000000000000000000000000", + "5.706395", + "0.000000000000000000000000" + ], + [ + "13.935954", + "0.000000000000000000000000", + "5.186488", + "0.000000000000000000000000" + ], + [ + "13.532886", + "0.000000000000000000000000", + "4.734360", + "0.000000000000000000000000" + ], + [ + "13.182543", + "0.000000000000000000000000", + "4.339328", + "0.000000000000000000000000" + ], + [ + "12.876199", + "0.000000000000000000000000", + "3.992649", + "0.000000000000000000000000" + ], + [ + "12.606690", + "0.000000000000000000000000", + "3.687129", + "0.000000000000000000000000" + ], + [ + "12.368105", + "0.000000000000000000000000", + "3.416826", + "0.000000000000000000000000" + ], + [ + "15.916448", + "0.000000000000000000000000", + "5.909317", + "0.000000000000000000000000" + ], + [ + "15.420689", + "0.000000000000000000000000", + "5.355773", + "0.000000000000000000000000" + ], + [ + "14.994287", + "0.000000000000000000000000", + "4.875970", + "0.000000000000000000000000" + ], + [ + "14.625358", + "0.000000000000000000000000", + "4.458021", + "0.000000000000000000000000" + ], + [ + "14.304227", + "0.000000000000000000000000", + "4.092239", + "0.000000000000000000000000" + ], + [ + "14.022977", + "0.000000000000000000000000", + "3.770690", + "0.000000000000000000000000" + ], + [ + "13.775108", + "0.000000000000000000000000", + "3.486844", + "0.000000000000000000000000" + ], + [ + "13.555254", + "0.000000000000000000000000", + "3.235301", + "0.000000000000000000000000" + ], + [ + "17.044170", + "0.000000000000000000000000", + "5.575904", + "0.000000000000000000000000" + ], + [ + "16.587942", + "0.000000000000000000000000", + "5.061923", + "0.000000000000000000000000" + ], + [ + "16.195090", + "0.000000000000000000000000", + "4.615704", + "0.000000000000000000000000" + ], + [ + "15.854755", + "0.000000000000000000000000", + "4.226383", + "0.000000000000000000000000" + ], + [ + "15.558092", + "0.000000000000000000000000", + "3.885103", + "0.000000000000000000000000" + ], + [ + "15.297865", + "0.000000000000000000000000", + "3.584606", + "0.000000000000000000000000" + ], + [ + "15.068128", + "0.000000000000000000000000", + "3.318920", + "0.000000000000000000000000" + ], + [ + "14.863971", + "0.000000000000000000000000", + "3.083099", + "0.000000000000000000000000" + ] + ] + }, + "1/256": { + "a_dn": "34.757367", + "a_up": "34.883096", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "34.883096", + "0.000000000000000000000000", + "34.757367", + "0.000000000000000000000000" + ], + [ + "31.284651", + "0.000000000000000000000000", + "31.097615", + "0.000000000000000000000000" + ], + [ + "28.197441", + "0.000000000000000000000000", + "27.953567", + "0.000000000000000000000000" + ], + [ + "25.535858", + "0.000000000000000000000000", + "25.239687", + "0.000000000000000000000000" + ], + [ + "23.230479", + "0.000000000000000000000000", + "22.886602", + "0.000000000000000000000000" + ], + [ + "21.224704", + "0.000000000000000000000000", + "20.837745", + "0.000000000000000000000000" + ], + [ + "19.472138", + "0.000000000000000000000000", + "19.046728", + "0.000000000000000000000000" + ], + [ + "17.934537", + "0.000000000000000000000000", + "17.475306", + "0.000000000000000000000000" + ], + [ + "26.168313", + "0.000000000000000000000000", + "25.349859", + "0.000000000000000000000000" + ], + [ + "23.606234", + "0.000000000000000000000000", + "22.727266", + "0.000000000000000000000000" + ], + [ + "21.405349", + "0.000000000000000000000000", + "20.470351", + "0.000000000000000000000000" + ], + [ + "19.505281", + "0.000000000000000000000000", + "18.518773", + "0.000000000000000000000000" + ], + [ + "17.857062", + "0.000000000000000000000000", + "16.823586", + "0.000000000000000000000000" + ], + [ + "16.420758", + "0.000000000000000000000000", + "15.344860", + "0.000000000000000000000000" + ], + [ + "15.163622", + "0.000000000000000000000000", + "14.049841", + "0.000000000000000000000000" + ], + [ + "14.058648", + "0.000000000000000000000000", + "12.911506", + "0.000000000000000000000000" + ], + [ + "21.516160", + "0.000000000000000000000000", + "19.986005", + "0.000000000000000000000000" + ], + [ + "19.547041", + "0.000000000000000000000000", + "17.956879", + "0.000000000000000000000000" + ], + [ + "17.853034", + "0.000000000000000000000000", + "16.207350", + "0.000000000000000000000000" + ], + [ + "16.388272", + "0.000000000000000000000000", + "14.691568", + "0.000000000000000000000000" + ], + [ + "15.115545", + "0.000000000000000000000000", + "13.372328", + "0.000000000000000000000000" + ], + [ + "14.004494", + "0.000000000000000000000000", + "12.219264", + "0.000000000000000000000000" + ], + [ + "13.030210", + "0.000000000000000000000000", + "11.207451", + "0.000000000000000000000000" + ], + [ + "12.172140", + "0.000000000000000000000000", + "10.316309", + "0.000000000000000000000000" + ], + [ + "18.883900", + "0.000000000000000000000000", + "16.585202", + "0.000000000000000000000000" + ], + [ + "17.291339", + "0.000000000000000000000000", + "14.932982", + "0.000000000000000000000000" + ], + [ + "15.919157", + "0.000000000000000000000000", + "13.505619", + "0.000000000000000000000000" + ], + [ + "14.730722", + "0.000000000000000000000000", + "12.266490", + "0.000000000000000000000000" + ], + [ + "13.696307", + "0.000000000000000000000000", + "11.185865", + "0.000000000000000000000000" + ], + [ + "12.791647", + "0.000000000000000000000000", + "10.239464", + "0.000000000000000000000000" + ], + [ + "11.996819", + "0.000000000000000000000000", + "9.407342", + "0.000000000000000000000000" + ], + [ + "11.295375", + "0.000000000000000000000000", + "8.673020", + "0.000000000000000000000000" + ], + [ + "17.405485", + "0.000000000000000000000000", + "14.265005", + "0.000000000000000000000000" + ], + [ + "16.070007", + "0.000000000000000000000000", + "12.870115", + "0.000000000000000000000000" + ], + [ + "14.917519", + "0.000000000000000000000000", + "11.662689", + "0.000000000000000000000000" + ], + [ + "13.917706", + "0.000000000000000000000000", + "10.612412", + "0.000000000000000000000000" + ], + [ + "13.045955", + "0.000000000000000000000000", + "9.694661", + "0.000000000000000000000000" + ], + [ + "12.282162", + "0.000000000000000000000000", + "8.889315", + "0.000000000000000000000000" + ], + [ + "11.609813", + "0.000000000000000000000000", + "8.179835", + "0.000000000000000000000000" + ], + [ + "11.015262", + "0.000000000000000000000000", + "7.552541", + "0.000000000000000000000000" + ], + [ + "16.658476", + "0.000000000000000000000000", + "12.594866", + "0.000000000000000000000000" + ], + [ + "15.508086", + "0.000000000000000000000000", + "11.385248", + "0.000000000000000000000000" + ], + [ + "14.513767", + "0.000000000000000000000000", + "10.336167", + "0.000000000000000000000000" + ], + [ + "13.649752", + "0.000000000000000000000000", + "9.421853", + "0.000000000000000000000000" + ], + [ + "12.895110", + "0.000000000000000000000000", + "8.621363", + "0.000000000000000000000000" + ], + [ + "12.232736", + "0.000000000000000000000000", + "7.917571", + "0.000000000000000000000000" + ], + [ + "11.648569", + "0.000000000000000000000000", + "7.296389", + "0.000000000000000000000000" + ], + [ + "11.130982", + "0.000000000000000000000000", + "6.746153", + "0.000000000000000000000000" + ], + [ + "16.415020", + "0.000000000000000000000000", + "11.342516", + "0.000000000000000000000000" + ], + [ + "15.403406", + "0.000000000000000000000000", + "10.271812", + "0.000000000000000000000000" + ], + [ + "14.527683", + "0.000000000000000000000000", + "9.341458", + "0.000000000000000000000000" + ], + [ + "13.765494", + "0.000000000000000000000000", + "8.529092", + "0.000000000000000000000000" + ], + [ + "13.098668", + "0.000000000000000000000000", + "7.816529", + "0.000000000000000000000000" + ], + [ + "12.512348", + "0.000000000000000000000000", + "7.188889", + "0.000000000000000000000000" + ], + [ + "11.994314", + "0.000000000000000000000000", + "6.633922", + "0.000000000000000000000000" + ], + [ + "11.534450", + "0.000000000000000000000000", + "6.141476", + "0.000000000000000000000000" + ], + [ + "16.542534", + "0.000000000000000000000000", + "10.372780", + "0.000000000000000000000000" + ], + [ + "15.638355", + "0.000000000000000000000000", + "9.409615", + "0.000000000000000000000000" + ], + [ + "14.854449", + "0.000000000000000000000000", + "8.571177", + "0.000000000000000000000000" + ], + [ + "14.171098", + "0.000000000000000000000000", + "7.837741", + "0.000000000000000000000000" + ], + [ + "13.572268", + "0.000000000000000000000000", + "7.193256", + "0.000000000000000000000000" + ], + [ + "13.044842", + "0.000000000000000000000000", + "6.624581", + "0.000000000000000000000000" + ], + [ + "12.578023", + "0.000000000000000000000000", + "6.120889", + "0.000000000000000000000000" + ], + [ + "12.162864", + "0.000000000000000000000000", + "5.673196", + "0.000000000000000000000000" + ], + [ + "16.959151", + "0.000000000000000000000000", + "9.602179", + "0.000000000000000000000000" + ], + [ + "16.140321", + "0.000000000000000000000000", + "8.724445", + "0.000000000000000000000000" + ], + [ + "15.429360", + "0.000000000000000000000000", + "7.959028", + "0.000000000000000000000000" + ], + [ + "14.808649", + "0.000000000000000000000000", + "7.288300", + "0.000000000000000000000000" + ], + [ + "14.263849", + "0.000000000000000000000000", + "6.697905", + "0.000000000000000000000000" + ], + [ + "13.783225", + "0.000000000000000000000000", + "6.176084", + "0.000000000000000000000000" + ], + [ + "13.357108", + "0.000000000000000000000000", + "5.713136", + "0.000000000000000000000000" + ], + [ + "12.977483", + "0.000000000000000000000000", + "5.301009", + "0.000000000000000000000000" + ], + [ + "17.611849", + "0.000000000000000000000000", + "8.976644", + "0.000000000000000000000000" + ], + [ + "16.862281", + "0.000000000000000000000000", + "8.168232", + "0.000000000000000000000000" + ], + [ + "16.210521", + "0.000000000000000000000000", + "7.462074", + "0.000000000000000000000000" + ], + [ + "15.640650", + "0.000000000000000000000000", + "6.842237", + "0.000000000000000000000000" + ], + [ + "15.139707", + "0.000000000000000000000000", + "6.295743", + "0.000000000000000000000000" + ], + [ + "14.697076", + "0.000000000000000000000000", + "5.811951", + "0.000000000000000000000000" + ], + [ + "14.304004", + "0.000000000000000000000000", + "5.382078", + "0.000000000000000000000000" + ], + [ + "13.953230", + "0.000000000000000000000000", + "4.998824", + "0.000000000000000000000000" + ], + [ + "18.464917", + "0.000000000000000000000000", + "8.459745", + "0.000000000000000000000000" + ], + [ + "17.772564", + "0.000000000000000000000000", + "7.708598", + "0.000000000000000000000000" + ], + [ + "17.169714", + "0.000000000000000000000000", + "7.051391", + "0.000000000000000000000000" + ], + [ + "16.641849", + "0.000000000000000000000000", + "6.473598", + "0.000000000000000000000000" + ], + [ + "16.177145", + "0.000000000000000000000000", + "5.963375", + "0.000000000000000000000000" + ], + [ + "15.765910", + "0.000000000000000000000000", + "5.511006", + "0.000000000000000000000000" + ], + [ + "15.400149", + "0.000000000000000000000000", + "5.108462", + "0.000000000000000000000000" + ], + [ + "15.073224", + "0.000000000000000000000000", + "4.749068", + "0.000000000000000000000000" + ], + [ + "19.493495", + "0.000000000000000000000000", + "8.026124", + "0.000000000000000000000000" + ], + [ + "18.849128", + "0.000000000000000000000000", + "7.322999", + "0.000000000000000000000000" + ], + [ + "18.287301", + "0.000000000000000000000000", + "6.706847", + "0.000000000000000000000000" + ], + [ + "17.794671", + "0.000000000000000000000000", + "6.164316", + "0.000000000000000000000000" + ], + [ + "17.360368", + "0.000000000000000000000000", + "5.684516", + "0.000000000000000000000000" + ], + [ + "16.975475", + "0.000000000000000000000000", + "5.258504", + "0.000000000000000000000000" + ], + [ + "16.632629", + "0.000000000000000000000000", + "4.878887", + "0.000000000000000000000000" + ], + [ + "16.325716", + "0.000000000000000000000000", + "4.539510", + "0.000000000000000000000000" + ] + ] + }, + "1/4096": { + "a_dn": "25.516405", + "a_up": "25.666574", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "25.666574", + "0.000000000000000000000000", + "25.516405", + "0.000000000000000000000000" + ], + [ + "22.802185", + "0.000000000000000000000000", + "22.593135", + "0.000000000000000000000000" + ], + [ + "20.370444", + "0.000000000000000000000000", + "20.106692", + "0.000000000000000000000000" + ], + [ + "18.296695", + "0.000000000000000000000000", + "17.982537", + "0.000000000000000000000000" + ], + [ + "16.520351", + "0.000000000000000000000000", + "16.160167", + "0.000000000000000000000000" + ], + [ + "14.992037", + "0.000000000000000000000000", + "14.590270", + "0.000000000000000000000000" + ], + [ + "13.671359", + "0.000000000000000000000000", + "13.232488", + "0.000000000000000000000000" + ], + [ + "12.525134", + "0.000000000000000000000000", + "12.053655", + "0.000000000000000000000000" + ], + [ + "19.329939", + "0.000000000000000000000000", + "18.493069", + "0.000000000000000000000000" + ], + [ + "17.313686", + "0.000000000000000000000000", + "16.418241", + "0.000000000000000000000000" + ], + [ + "15.599897", + "0.000000000000000000000000", + "14.650141", + "0.000000000000000000000000" + ], + [ + "14.136439", + "0.000000000000000000000000", + "13.136705", + "0.000000000000000000000000" + ], + [ + "12.880983", + "0.000000000000000000000000", + "11.835653", + "0.000000000000000000000000" + ], + [ + "11.799020", + "0.000000000000000000000000", + "10.712503", + "0.000000000000000000000000" + ], + [ + "10.862301", + "0.000000000000000000000000", + "9.739019", + "0.000000000000000000000000" + ], + [ + "10.047609", + "0.000000000000000000000000", + "8.891981", + "0.000000000000000000000000" + ], + [ + "15.998362", + "0.000000000000000000000000", + "14.453638", + "0.000000000000000000000000" + ], + [ + "14.469144", + "0.000000000000000000000000", + "12.866060", + "0.000000000000000000000000" + ], + [ + "13.167741", + "0.000000000000000000000000", + "11.510606", + "0.000000000000000000000000" + ], + [ + "12.054921", + "0.000000000000000000000000", + "10.348086", + "0.000000000000000000000000" + ], + [ + "11.098815", + "0.000000000000000000000000", + "9.346659", + "0.000000000000000000000000" + ], + [ + "10.273428", + "0.000000000000000000000000", + "8.480343", + "0.000000000000000000000000" + ], + [ + "9.557474", + "0.000000000000000000000000", + "7.727849", + "0.000000000000000000000000" + ], + [ + "8.933450", + "0.000000000000000000000000", + "7.071660", + "0.000000000000000000000000" + ], + [ + "14.192903", + "0.000000000000000000000000", + "11.882338", + "0.000000000000000000000000" + ], + [ + "12.973228", + "0.000000000000000000000000", + "10.604462", + "0.000000000000000000000000" + ], + [ + "11.933992", + "0.000000000000000000000000", + "9.511359", + "0.000000000000000000000000" + ], + [ + "11.044138", + "0.000000000000000000000000", + "8.572000", + "0.000000000000000000000000" + ], + [ + "10.278431", + "0.000000000000000000000000", + "7.761164", + "0.000000000000000000000000" + ], + [ + "9.616277", + "0.000000000000000000000000", + "7.058261", + "0.000000000000000000000000" + ], + [ + "9.040806", + "0.000000000000000000000000", + "6.446409", + "0.000000000000000000000000" + ], + [ + "8.538141", + "0.000000000000000000000000", + "5.911711", + "0.000000000000000000000000" + ], + [ + "13.275596", + "0.000000000000000000000000", + "10.125289", + "0.000000000000000000000000" + ], + [ + "12.267134", + "0.000000000000000000000000", + "9.058748", + "0.000000000000000000000000" + ], + [ + "11.406826", + "0.000000000000000000000000", + "8.144710", + "0.000000000000000000000000" + ], + [ + "10.669181", + "0.000000000000000000000000", + "7.357703", + "0.000000000000000000000000" + ], + [ + "10.033479", + "0.000000000000000000000000", + "6.677015", + "0.000000000000000000000000" + ], + [ + "9.482807", + "0.000000000000000000000000", + "6.085726", + "0.000000000000000000000000" + ], + [ + "9.003303", + "0.000000000000000000000000", + "5.569960", + "0.000000000000000000000000" + ], + [ + "8.583558", + "0.000000000000000000000000", + "5.118282", + "0.000000000000000000000000" + ], + [ + "12.931962", + "0.000000000000000000000000", + "8.860160", + "0.000000000000000000000000" + ], + [ + "12.075373", + "0.000000000000000000000000", + "7.945588", + "0.000000000000000000000000" + ], + [ + "11.343751", + "0.000000000000000000000000", + "7.160342", + "0.000000000000000000000000" + ], + [ + "10.715600", + "0.000000000000000000000000", + "6.482939", + "0.000000000000000000000000" + ], + [ + "10.173440", + "0.000000000000000000000000", + "5.895901", + "0.000000000000000000000000" + ], + [ + "9.702998", + "0.000000000000000000000000", + "5.384944", + "0.000000000000000000000000" + ], + [ + "9.292572", + "0.000000000000000000000000", + "4.938347", + "0.000000000000000000000000" + ], + [ + "8.932527", + "0.000000000000000000000000", + "4.546448", + "0.000000000000000000000000" + ], + [ + "12.991241", + "0.000000000000000000000000", + "7.911924", + "0.000000000000000000000000" + ], + [ + "12.248340", + "0.000000000000000000000000", + "7.111118", + "0.000000000000000000000000" + ], + [ + "11.613068", + "0.000000000000000000000000", + "6.422307", + "0.000000000000000000000000" + ], + [ + "11.066914", + "0.000000000000000000000000", + "5.826988", + "0.000000000000000000000000" + ], + [ + "10.594820", + "0.000000000000000000000000", + "5.310099", + "0.000000000000000000000000" + ], + [ + "10.184484", + "0.000000000000000000000000", + "4.859328", + "0.000000000000000000000000" + ], + [ + "9.825819", + "0.000000000000000000000000", + "4.464565", + "0.000000000000000000000000" + ], + [ + "9.510515", + "0.000000000000000000000000", + "4.117471", + "0.000000000000000000000000" + ], + [ + "13.353639", + "0.000000000000000000000000", + "7.178293", + "0.000000000000000000000000" + ], + [ + "12.698594", + "0.000000000000000000000000", + "6.465406", + "0.000000000000000000000000" + ], + [ + "12.137794", + "0.000000000000000000000000", + "5.851136", + "0.000000000000000000000000" + ], + [ + "11.655029", + "0.000000000000000000000000", + "5.319276", + "0.000000000000000000000000" + ], + [ + "11.237109", + "0.000000000000000000000000", + "4.856631", + "0.000000000000000000000000" + ], + [ + "10.873256", + "0.000000000000000000000000", + "4.452407", + "0.000000000000000000000000" + ], + [ + "10.554627", + "0.000000000000000000000000", + "4.097739", + "0.000000000000000000000000" + ], + [ + "10.273936", + "0.000000000000000000000000", + "3.785309", + "0.000000000000000000000000" + ], + [ + "13.957365", + "0.000000000000000000000000", + "6.595932", + "0.000000000000000000000000" + ], + [ + "13.371986", + "0.000000000000000000000000", + "5.952764", + "0.000000000000000000000000" + ], + [ + "12.870250", + "0.000000000000000000000000", + "5.397614", + "0.000000000000000000000000" + ], + [ + "12.437767", + "0.000000000000000000000000", + "4.916094", + "0.000000000000000000000000" + ], + [ + "12.062827", + "0.000000000000000000000000", + "4.496484", + "0.000000000000000000000000" + ], + [ + "11.735858", + "0.000000000000000000000000", + "4.129198", + "0.000000000000000000000000" + ], + [ + "11.449002", + "0.000000000000000000000000", + "3.806352", + "0.000000000000000000000000" + ], + [ + "11.195786", + "0.000000000000000000000000", + "3.521439", + "0.000000000000000000000000" + ], + [ + "14.762330", + "0.000000000000000000000000", + "6.123748", + "0.000000000000000000000000" + ], + [ + "14.233381", + "0.000000000000000000000000", + "5.537054", + "0.000000000000000000000000" + ], + [ + "13.779494", + "0.000000000000000000000000", + "5.029801", + "0.000000000000000000000000" + ], + [ + "13.387753", + "0.000000000000000000000000", + "4.589070", + "0.000000000000000000000000" + ], + [ + "13.047644", + "0.000000000000000000000000", + "4.204339", + "0.000000000000000000000000" + ], + [ + "12.750569", + "0.000000000000000000000000", + "3.866991", + "0.000000000000000000000000" + ], + [ + "12.489471", + "0.000000000000000000000000", + "3.569943", + "0.000000000000000000000000" + ], + [ + "12.258529", + "0.000000000000000000000000", + "3.307341", + "0.000000000000000000000000" + ], + [ + "15.741502", + "0.000000000000000000000000", + "5.734032", + "0.000000000000000000000000" + ], + [ + "15.259083", + "0.000000000000000000000000", + "5.193908", + "0.000000000000000000000000" + ], + [ + "14.844658", + "0.000000000000000000000000", + "4.726156", + "0.000000000000000000000000" + ], + [ + "14.486523", + "0.000000000000000000000000", + "4.319072", + "0.000000000000000000000000" + ], + [ + "14.175148", + "0.000000000000000000000000", + "3.963114", + "0.000000000000000000000000" + ], + [ + "13.902739", + "0.000000000000000000000000", + "3.650469", + "0.000000000000000000000000" + ], + [ + "13.662894", + "0.000000000000000000000000", + "3.374709", + "0.000000000000000000000000" + ], + [ + "13.450336", + "0.000000000000000000000000", + "3.130522", + "0.000000000000000000000000" + ], + [ + "16.876052", + "0.000000000000000000000000", + "5.407486", + "0.000000000000000000000000" + ], + [ + "16.432589", + "0.000000000000000000000000", + "4.906351", + "0.000000000000000000000000" + ], + [ + "16.051206", + "0.000000000000000000000000", + "4.471676", + "0.000000000000000000000000" + ], + [ + "15.721213", + "0.000000000000000000000000", + "4.092768", + "0.000000000000000000000000" + ], + [ + "15.433904", + "0.000000000000000000000000", + "3.760910", + "0.000000000000000000000000" + ], + [ + "15.182156", + "0.000000000000000000000000", + "3.468958", + "0.000000000000000000000000" + ], + [ + "14.960118", + "0.000000000000000000000000", + "3.211034", + "0.000000000000000000000000" + ], + [ + "14.762963", + "0.000000000000000000000000", + "2.982276", + "0.000000000000000000000000" + ] + ] + }, + "1/512": { + "a_dn": "29.730582", + "a_up": "29.869058", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "29.869058", + "0.000000000000000000000000", + "29.730582", + "0.000000000000000000000000" + ], + [ + "26.672065", + "0.000000000000000000000000", + "26.473546", + "0.000000000000000000000000" + ], + [ + "23.943326", + "0.000000000000000000000000", + "23.689083", + "0.000000000000000000000000" + ], + [ + "21.603182", + "0.000000000000000000000000", + "21.297629", + "0.000000000000000000000000" + ], + [ + "19.587022", + "0.000000000000000000000000", + "19.234640", + "0.000000000000000000000000" + ], + [ + "17.842189", + "0.000000000000000000000000", + "17.447506", + "0.000000000000000000000000" + ], + [ + "16.325568", + "0.000000000000000000000000", + "15.893138", + "0.000000000000000000000000" + ], + [ + "15.001690", + "0.000000000000000000000000", + "14.536073", + "0.000000000000000000000000" + ], + [ + "22.450147", + "0.000000000000000000000000", + "21.622141", + "0.000000000000000000000000" + ], + [ + "20.186348", + "0.000000000000000000000000", + "19.298836", + "0.000000000000000000000000" + ], + [ + "18.251651", + "0.000000000000000000000000", + "17.309004", + "0.000000000000000000000000" + ], + [ + "16.590154", + "0.000000000000000000000000", + "15.596795", + "0.000000000000000000000000" + ], + [ + "15.156501", + "0.000000000000000000000000", + "14.116888", + "0.000000000000000000000000" + ], + [ + "13.913715", + "0.000000000000000000000000", + "12.832324", + "0.000000000000000000000000" + ], + [ + "12.831507", + "0.000000000000000000000000", + "11.712816", + "0.000000000000000000000000" + ], + [ + "11.884945", + "0.000000000000000000000000", + "10.733422", + "0.000000000000000000000000" + ], + [ + "18.517158", + "0.000000000000000000000000", + "16.979506", + "0.000000000000000000000000" + ], + [ + "16.788323", + "0.000000000000000000000000", + "15.191519", + "0.000000000000000000000000" + ], + [ + "15.308767", + "0.000000000000000000000000", + "13.657204", + "0.000000000000000000000000" + ], + [ + "14.036223", + "0.000000000000000000000000", + "12.334326", + "0.000000000000000000000000" + ], + [ + "12.936386", + "0.000000000000000000000000", + "11.188595", + "0.000000000000000000000000" + ], + [ + "11.981275", + "0.000000000000000000000000", + "10.192035", + "0.000000000000000000000000" + ], + [ + "11.147960", + "0.000000000000000000000000", + "9.321706", + "0.000000000000000000000000" + ], + [ + "10.417557", + "0.000000000000000000000000", + "8.558703", + "0.000000000000000000000000" + ], + [ + "16.334950", + "0.000000000000000000000000", + "14.030215", + "0.000000000000000000000000" + ], + [ + "14.946012", + "0.000000000000000000000000", + "12.582372", + "0.000000000000000000000000" + ], + [ + "13.755641", + "0.000000000000000000000000", + "11.337500", + "0.000000000000000000000000" + ], + [ + "12.730232", + "0.000000000000000000000000", + "10.262013", + "0.000000000000000000000000" + ], + [ + "11.842500", + "0.000000000000000000000000", + "9.328631", + "0.000000000000000000000000" + ], + [ + "11.070180", + "0.000000000000000000000000", + "8.515085", + "0.000000000000000000000000" + ], + [ + "10.395017", + "0.000000000000000000000000", + "7.803102", + "0.000000000000000000000000" + ], + [ + "9.801969", + "0.000000000000000000000000", + "7.177616", + "0.000000000000000000000000" + ], + [ + "15.161844", + "0.000000000000000000000000", + "12.016446", + "0.000000000000000000000000" + ], + [ + "14.004910", + "0.000000000000000000000000", + "10.800787", + "0.000000000000000000000000" + ], + [ + "13.011943", + "0.000000000000000000000000", + "9.753505", + "0.000000000000000000000000" + ], + [ + "12.155247", + "0.000000000000000000000000", + "8.846913", + "0.000000000000000000000000" + ], + [ + "11.412325", + "0.000000000000000000000000", + "8.058515", + "0.000000000000000000000000" + ], + [ + "10.764812", + "0.000000000000000000000000", + "7.369934", + "0.000000000000000000000000" + ], + [ + "10.197642", + "0.000000000000000000000000", + "6.766084", + "0.000000000000000000000000" + ], + [ + "9.698394", + "0.000000000000000000000000", + "6.234514", + "0.000000000000000000000000" + ], + [ + "14.634242", + "0.000000000000000000000000", + "10.566627", + "0.000000000000000000000000" + ], + [ + "13.644245", + "0.000000000000000000000000", + "9.518042", + "0.000000000000000000000000" + ], + [ + "12.793335", + "0.000000000000000000000000", + "8.612954", + "0.000000000000000000000000" + ], + [ + "12.058061", + "0.000000000000000000000000", + "7.827921", + "0.000000000000000000000000" + ], + [ + "11.419369", + "0.000000000000000000000000", + "7.143881", + "0.000000000000000000000000" + ], + [ + "10.861699", + "0.000000000000000000000000", + "6.545260", + "0.000000000000000000000000" + ], + [ + "10.372278", + "0.000000000000000000000000", + "6.019260", + "0.000000000000000000000000" + ], + [ + "9.940568", + "0.000000000000000000000000", + "5.555314", + "0.000000000000000000000000" + ], + [ + "14.555394", + "0.000000000000000000000000", + "9.479674", + "0.000000000000000000000000" + ], + [ + "13.690471", + "0.000000000000000000000000", + "8.556267", + "0.000000000000000000000000" + ], + [ + "12.946003", + "0.000000000000000000000000", + "7.757728", + "0.000000000000000000000000" + ], + [ + "12.301723", + "0.000000000000000000000000", + "7.063790", + "0.000000000000000000000000" + ], + [ + "11.741151", + "0.000000000000000000000000", + "6.457967", + "0.000000000000000000000000" + ], + [ + "11.250826", + "0.000000000000000000000000", + "5.926778", + "0.000000000000000000000000" + ], + [ + "10.819690", + "0.000000000000000000000000", + "5.459141", + "0.000000000000000000000000" + ], + [ + "10.438618", + "0.000000000000000000000000", + "5.045897", + "0.000000000000000000000000" + ], + [ + "14.810576", + "0.000000000000000000000000", + "8.638325", + "0.000000000000000000000000" + ], + [ + "14.042397", + "0.000000000000000000000000", + "7.811744", + "0.000000000000000000000000" + ], + [ + "13.380275", + "0.000000000000000000000000", + "7.095632", + "0.000000000000000000000000" + ], + [ + "12.806396", + "0.000000000000000000000000", + "6.472175", + "0.000000000000000000000000" + ], + [ + "12.306273", + "0.000000000000000000000000", + "5.926874", + "0.000000000000000000000000" + ], + [ + "11.868066", + "0.000000000000000000000000", + "5.447870", + "0.000000000000000000000000" + ], + [ + "11.482044", + "0.000000000000000000000000", + "5.025405", + "0.000000000000000000000000" + ], + [ + "11.140170", + "0.000000000000000000000000", + "4.651409", + "0.000000000000000000000000" + ], + [ + "15.328851", + "0.000000000000000000000000", + "7.970068", + "0.000000000000000000000000" + ], + [ + "14.637462", + "0.000000000000000000000000", + "7.220340", + "0.000000000000000000000000" + ], + [ + "14.040706", + "0.000000000000000000000000", + "6.569660", + "0.000000000000000000000000" + ], + [ + "13.522720", + "0.000000000000000000000000", + "6.002157", + "0.000000000000000000000000" + ], + [ + "13.070595", + "0.000000000000000000000000", + "5.504912", + "0.000000000000000000000000" + ], + [ + "12.673776", + "0.000000000000000000000000", + "5.067347", + "0.000000000000000000000000" + ], + [ + "12.323584", + "0.000000000000000000000000", + "4.680757", + "0.000000000000000000000000" + ], + [ + "12.012848", + "0.000000000000000000000000", + "4.337935", + "0.000000000000000000000000" + ], + [ + "16.064236", + "0.000000000000000000000000", + "7.427897", + "0.000000000000000000000000" + ], + [ + "15.435106", + "0.000000000000000000000000", + "6.740480", + "0.000000000000000000000000" + ], + [ + "14.891357", + "0.000000000000000000000000", + "6.142856", + "0.000000000000000000000000" + ], + [ + "14.418699", + "0.000000000000000000000000", + "5.620730", + "0.000000000000000000000000" + ], + [ + "14.005505", + "0.000000000000000000000000", + "5.162460", + "0.000000000000000000000000" + ], + [ + "13.642260", + "0.000000000000000000000000", + "4.758510", + "0.000000000000000000000000" + ], + [ + "13.321138", + "0.000000000000000000000000", + "4.401024", + "0.000000000000000000000000" + ], + [ + "13.035667", + "0.000000000000000000000000", + "4.083495", + "0.000000000000000000000000" + ], + [ + "16.985741", + "0.000000000000000000000000", + "6.980129", + "0.000000000000000000000000" + ], + [ + "16.407999", + "0.000000000000000000000000", + "6.344142", + "0.000000000000000000000000" + ], + [ + "15.908004", + "0.000000000000000000000000", + "5.790312", + "0.000000000000000000000000" + ], + [ + "15.472768", + "0.000000000000000000000000", + "5.305647", + "0.000000000000000000000000" + ], + [ + "15.091719", + "0.000000000000000000000000", + "4.879555", + "0.000000000000000000000000" + ], + [ + "14.756198", + "0.000000000000000000000000", + "4.503360", + "0.000000000000000000000000" + ], + [ + "14.459083", + "0.000000000000000000000000", + "4.169908", + "0.000000000000000000000000" + ], + [ + "14.194481", + "0.000000000000000000000000", + "3.873269", + "0.000000000000000000000000" + ], + [ + "18.071787", + "0.000000000000000000000000", + "6.604705", + "0.000000000000000000000000" + ], + [ + "17.537106", + "0.000000000000000000000000", + "6.011811", + "0.000000000000000000000000" + ], + [ + "17.073780", + "0.000000000000000000000000", + "5.494683", + "0.000000000000000000000000" + ], + [ + "16.669911", + "0.000000000000000000000000", + "5.041413", + "0.000000000000000000000000" + ], + [ + "16.315806", + "0.000000000000000000000000", + "4.642294", + "0.000000000000000000000000" + ], + [ + "16.003529", + "0.000000000000000000000000", + "4.289365", + "0.000000000000000000000000" + ], + [ + "15.726544", + "0.000000000000000000000000", + "3.976063", + "0.000000000000000000000000" + ], + [ + "15.479441", + "0.000000000000000000000000", + "3.696939", + "0.000000000000000000000000" + ] + ] + }, + "1/64": { + "a_dn": "69.981330", + "a_up": "70.060722", + "beta_dn": "0.000000000000000000000000", + "beta_up": "0.000000000000000000000000", + "boxes": [ + [ + "70.060722", + "0.000000000000000000000000", + "69.981330", + "0.000000000000000000000000" + ], + [ + "63.529329", + "0.000000000000000000000000", + "63.383801", + "0.000000000000000000000000" + ], + [ + "57.824720", + "0.000000000000000000000000", + "57.618109", + "0.000000000000000000000000" + ], + [ + "52.819491", + "0.000000000000000000000000", + "52.556834", + "0.000000000000000000000000" + ], + [ + "48.409894", + "0.000000000000000000000000", + "48.096205", + "0.000000000000000000000000" + ], + [ + "44.510728", + "0.000000000000000000000000", + "44.150987", + "0.000000000000000000000000" + ], + [ + "41.051418", + "0.000000000000000000000000", + "40.650565", + "0.000000000000000000000000" + ], + [ + "37.973024", + "0.000000000000000000000000", + "37.535950", + "0.000000000000000000000000" + ], + [ + "52.153089", + "0.000000000000000000000000", + "51.364029", + "0.000000000000000000000000" + ], + [ + "47.423293", + "0.000000000000000000000000", + "46.570148", + "0.000000000000000000000000" + ], + [ + "43.288809", + "0.000000000000000000000000", + "42.376461", + "0.000000000000000000000000" + ], + [ + "39.658022", + "0.000000000000000000000000", + "38.691327", + "0.000000000000000000000000" + ], + [ + "36.456352", + "0.000000000000000000000000", + "35.440137", + "0.000000000000000000000000" + ], + [ + "33.622558", + "0.000000000000000000000000", + "32.561612", + "0.000000000000000000000000" + ], + [ + "31.105911", + "0.000000000000000000000000", + "30.004982", + "0.000000000000000000000000" + ], + [ + "28.864038", + "0.000000000000000000000000", + "27.727822", + "0.000000000000000000000000" + ], + [ + "42.421659", + "0.000000000000000000000000", + "40.908547", + "0.000000000000000000000000" + ], + [ + "38.711689", + "0.000000000000000000000000", + "37.135844", + "0.000000000000000000000000" + ], + [ + "35.464711", + "0.000000000000000000000000", + "33.830884", + "0.000000000000000000000000" + ], + [ + "32.609788", + "0.000000000000000000000000", + "30.922709", + "0.000000000000000000000000" + ], + [ + "30.089161", + "0.000000000000000000000000", + "28.353527", + "0.000000000000000000000000" + ], + [ + "27.855376", + "0.000000000000000000000000", + "26.075853", + "0.000000000000000000000000" + ], + [ + "25.869105", + "0.000000000000000000000000", + "24.050315", + "0.000000000000000000000000" + ], + [ + "24.097469", + "0.000000000000000000000000", + "22.243984", + "0.000000000000000000000000" + ], + [ + "36.622112", + "0.000000000000000000000000", + "34.330375", + "0.000000000000000000000000" + ], + [ + "33.556949", + "0.000000000000000000000000", + "31.203445", + "0.000000000000000000000000" + ], + [ + "30.870591", + "0.000000000000000000000000", + "28.459969", + "0.000000000000000000000000" + ], + [ + "28.505355", + "0.000000000000000000000000", + "26.042244", + "0.000000000000000000000000" + ], + [ + "26.414240", + "0.000000000000000000000000", + "23.903246", + "0.000000000000000000000000" + ], + [ + "24.558606", + "0.000000000000000000000000", + "22.004300", + "0.000000000000000000000000" + ], + [ + "22.906396", + "0.000000000000000000000000", + "20.313312", + "0.000000000000000000000000" + ], + [ + "21.430782", + "0.000000000000000000000000", + "18.803407", + "0.000000000000000000000000" + ], + [ + "33.001752", + "0.000000000000000000000000", + "29.859244", + "0.000000000000000000000000" + ], + [ + "30.376282", + "0.000000000000000000000000", + "27.172740", + "0.000000000000000000000000" + ], + [ + "28.071969", + "0.000000000000000000000000", + "24.811956", + "0.000000000000000000000000" + ], + [ + "26.040249", + "0.000000000000000000000000", + "22.728316", + "0.000000000000000000000000" + ], + [ + "24.241521", + "0.000000000000000000000000", + "20.882198", + "0.000000000000000000000000" + ], + [ + "22.643195", + "0.000000000000000000000000", + "19.240982", + "0.000000000000000000000000" + ], + [ + "21.218205", + "0.000000000000000000000000", + "17.777568", + "0.000000000000000000000000" + ], + [ + "19.943869", + "0.000000000000000000000000", + "16.469230", + "0.000000000000000000000000" + ], + [ + "30.720005", + "0.000000000000000000000000", + "26.645778", + "0.000000000000000000000000" + ], + [ + "28.411252", + "0.000000000000000000000000", + "24.276573", + "0.000000000000000000000000" + ], + [ + "26.382007", + "0.000000000000000000000000", + "22.191369", + "0.000000000000000000000000" + ], + [ + "24.590320", + "0.000000000000000000000000", + "20.348206", + "0.000000000000000000000000" + ], + [ + "23.001951", + "0.000000000000000000000000", + "18.712828", + "0.000000000000000000000000" + ], + [ + "21.588692", + "0.000000000000000000000000", + "17.257003", + "0.000000000000000000000000" + ], + [ + "20.327086", + "0.000000000000000000000000", + "15.957240", + "0.000000000000000000000000" + ], + [ + "19.197449", + "0.000000000000000000000000", + "14.793817", + "0.000000000000000000000000" + ], + [ + "29.328589", + "0.000000000000000000000000", + "24.236815", + "0.000000000000000000000000" + ], + [ + "27.257633", + "0.000000000000000000000000", + "22.105894", + "0.000000000000000000000000" + ], + [ + "25.434847", + "0.000000000000000000000000", + "20.227569", + "0.000000000000000000000000" + ], + [ + "23.823272", + "0.000000000000000000000000", + "18.564879", + "0.000000000000000000000000" + ], + [ + "22.392711", + "0.000000000000000000000000", + "17.087617", + "0.000000000000000000000000" + ], + [ + "21.118258", + "0.000000000000000000000000", + "15.770854", + "0.000000000000000000000000" + ], + [ + "19.979174", + "0.000000000000000000000000", + "14.593824", + "0.000000000000000000000000" + ], + [ + "18.958031", + "0.000000000000000000000000", + "13.539063", + "0.000000000000000000000000" + ], + [ + "28.568672", + "0.000000000000000000000000", + "22.370593", + "0.000000000000000000000000" + ], + [ + "26.682148", + "0.000000000000000000000000", + "20.424520", + "0.000000000000000000000000" + ], + [ + "25.019447", + "0.000000000000000000000000", + "18.706640", + "0.000000000000000000000000" + ], + [ + "23.547500", + "0.000000000000000000000000", + "17.183883", + "0.000000000000000000000000" + ], + [ + "22.239255", + "0.000000000000000000000000", + "15.829194", + "0.000000000000000000000000" + ], + [ + "21.072374", + "0.000000000000000000000000", + "14.620215", + "0.000000000000000000000000" + ], + [ + "20.028231", + "0.000000000000000000000000", + "13.538299", + "0.000000000000000000000000" + ], + [ + "19.091153", + "0.000000000000000000000000", + "12.567736", + "0.000000000000000000000000" + ], + [ + "28.281308", + "0.000000000000000000000000", + "20.886273", + "0.000000000000000000000000" + ], + [ + "26.541597", + "0.000000000000000000000000", + "19.087383", + "0.000000000000000000000000" + ], + [ + "25.006305", + "0.000000000000000000000000", + "17.497227", + "0.000000000000000000000000" + ], + [ + "23.645467", + "0.000000000000000000000000", + "16.085846", + "0.000000000000000000000000" + ], + [ + "22.434542", + "0.000000000000000000000000", + "14.828698", + "0.000000000000000000000000" + ], + [ + "21.353243", + "0.000000000000000000000000", + "13.705483", + "0.000000000000000000000000" + ], + [ + "20.384627", + "0.000000000000000000000000", + "12.699239", + "0.000000000000000000000000" + ], + [ + "19.514420", + "0.000000000000000000000000", + "11.795658", + "0.000000000000000000000000" + ], + [ + "28.363963", + "0.000000000000000000000000", + "19.680021", + "0.000000000000000000000000" + ], + [ + "26.743637", + "0.000000000000000000000000", + "18.000853", + "0.000000000000000000000000" + ], + [ + "25.311936", + "0.000000000000000000000000", + "16.514572", + "0.000000000000000000000000" + ], + [ + "24.041424", + "0.000000000000000000000000", + "15.193756", + "0.000000000000000000000000" + ], + [ + "22.909609", + "0.000000000000000000000000", + "14.015916", + "0.000000000000000000000000" + ], + [ + "21.897870", + "0.000000000000000000000000", + "12.962423", + "0.000000000000000000000000" + ], + [ + "20.990642", + "0.000000000000000000000000", + "12.017692", + "0.000000000000000000000000" + ], + [ + "20.174784", + "0.000000000000000000000000", + "11.168557", + "0.000000000000000000000000" + ], + [ + "28.747785", + "0.000000000000000000000000", + "18.682041", + "0.000000000000000000000000" + ], + [ + "27.226278", + "0.000000000000000000000000", + "17.102005", + "0.000000000000000000000000" + ], + [ + "25.880311", + "0.000000000000000000000000", + "15.701723", + "0.000000000000000000000000" + ], + [ + "24.684549", + "0.000000000000000000000000", + "14.455877", + "0.000000000000000000000000" + ], + [ + "23.618197", + "0.000000000000000000000000", + "13.343680", + "0.000000000000000000000000" + ], + [ + "22.664017", + "0.000000000000000000000000", + "12.347891", + "0.000000000000000000000000" + ], + [ + "21.807582", + "0.000000000000000000000000", + "11.454067", + "0.000000000000000000000000" + ], + [ + "21.036693", + "0.000000000000000000000000", + "10.649986", + "0.000000000000000000000000" + ], + [ + "29.384974", + "0.000000000000000000000000", + "17.843805", + "0.000000000000000000000000" + ], + [ + "27.946498", + "0.000000000000000000000000", + "16.347097", + "0.000000000000000000000000" + ], + [ + "26.672561", + "0.000000000000000000000000", + "15.019093", + "0.000000000000000000000000" + ], + [ + "25.539595", + "0.000000000000000000000000", + "13.836249", + "0.000000000000000000000000" + ], + [ + "24.528233", + "0.000000000000000000000000", + "12.779213", + "0.000000000000000000000000" + ], + [ + "23.622403", + "0.000000000000000000000000", + "11.831909", + "0.000000000000000000000000" + ], + [ + "22.808633", + "0.000000000000000000000000", + "10.980855", + "0.000000000000000000000000" + ], + [ + "22.075518", + "0.000000000000000000000000", + "10.214626", + "0.000000000000000000000000" + ] + ] + } + }, + "rate_torus": { + "1/1024": { + "a_dn": "27.301701", + "a_up": "27.446809", + "beta_dn": "0.000000191067548409902371", + "beta_up": "0.000000191068265174879350", + "boxes": [ + [ + "27.446809", + "0.000000055544980993238273", + "27.301701", + "0.000000055544858076244615" + ], + [ + "24.441972", + "0.000000047527828283145034", + "24.237480", + "0.000000047527717690858524" + ], + [ + "21.884819", + "0.000000040950875123291234", + "21.625182", + "0.000000040950775077750625" + ], + [ + "19.698572", + "0.000000035539489284146085", + "19.388137", + "0.000000035539398302851702" + ], + [ + "17.820939", + "0.000000031073252450211488", + "17.464132", + "0.000000031073169291931957" + ], + [ + "16.201160", + "0.000000027375198922997767", + "15.802459", + "0.000000027375122544360073" + ], + [ + "14.797690", + "0.000000024303118534131466", + "14.361607", + "0.000000024303048054714828" + ], + [ + "13.576382", + "0.000000021742570952673646", + "13.107440", + "0.000000021742505626832015" + ], + [ + "20.652162", + "0.000000066201867893919054", + "19.819138", + "0.000000066201738977929911" + ], + [ + "18.531328", + "0.000000056758223332630846", + "17.639326", + "0.000000056758106623809838" + ], + [ + "16.724213", + "0.000000049016344061737154", + "15.777542", + "0.000000049016237795549159" + ], + [ + "15.177085", + "0.000000042650805760891324", + "14.180119", + "0.000000042650708467176462" + ], + [ + "13.846334", + "0.000000037400604744790017", + "12.803485", + "0.000000037400515193641855" + ], + [ + "12.696404", + "0.000000033056330851907547", + "11.612113", + "0.000000033056248010352788" + ], + [ + "11.698185", + "0.000000029449810683685126", + "10.576897", + "0.000000029449733680874241" + ], + [ + "10.827736", + "0.000000026445796100765551", + "9.673892", + "0.000000026445724199892076" + ], + [ + "17.065980", + "0.000000077191434634428217", + "15.524335", + "0.000000077191292614580797" + ], + [ + "15.452405", + "0.000000066321297882248705", + "13.852056", + "0.000000066321168292128834" + ], + [ + "14.075717", + "0.000000057414492208446041", + "12.421010", + "0.000000057414373249298045" + ], + [ + "12.895396", + "0.000000050094801194124863", + "11.190713", + "0.000000050094691368096392" + ], + [ + "11.878539", + "0.000000044060635777830360", + "10.128288", + "0.000000044060533832571911" + ], + [ + "10.998313", + "0.000000039070141329792716", + "9.206907", + "0.000000039070046214137601" + ], + [ + "10.232736", + "0.000000034929181216949306", + "8.404584", + "0.000000034929092045319109" + ], + [ + "9.563721", + "0.000000031481699487948247", + "7.703216", + "0.000000031481615511652367" + ], + [ + "15.100981", + "0.000000088513680814258805", + "12.792966", + "0.000000088513518986099255" + ], + [ + "13.809764", + "0.000000076217051695638641", + "11.443242", + "0.000000076216902695495541" + ], + [ + "12.706649", + "0.000000066145319468551957", + "10.285984", + "0.000000066145181438409137" + ], + [ + "11.759497", + "0.000000057871475611476504", + "9.289078", + "0.000000057871347004738516" + ], + [ + "10.942204", + "0.000000051053345683477651", + "8.426431", + "0.000000051053225207589043" + ], + [ + "10.233469", + "0.000000045416630583784930", + "7.676740", + "0.000000045416517154343811" + ], + [ + "9.615838", + "0.000000040741230442563275", + "7.022538", + "0.000000040741123146482321" + ], + [ + "9.074940", + "0.000000036850281494566215", + "6.449431", + "0.000000036850179560378898" + ], + [ + "14.075326", + "0.000000100168607065001628", + "10.927180", + "0.000000100168418092434423" + ], + [ + "13.004104", + "0.000000086445485480176815", + "9.797598", + "0.000000086445309833735297" + ], + [ + "12.087719", + "0.000000075208826614933026", + "8.827228", + "0.000000075208662362549824" + ], + [ + "11.299745", + "0.000000065980829842721459", + "7.989662", + "0.000000065980675376616493" + ], + [ + "10.618711", + "0.000000058378735341142879", + "7.263428", + "0.000000058378589318053467" + ], + [ + "10.027087", + "0.000000052095799536804564", + "6.630992", + "0.000000052095660830201879" + ], + [ + "9.510503", + "0.000000046885959321739301", + "6.077964", + "0.000000046885826983476629" + ], + [ + "9.057123", + "0.000000042551543115685443", + "5.592482", + "0.000000042551416345092625" + ], + [ + "13.653754", + "0.000000112156214540033799", + "9.583812", + "0.000000112155989933550906" + ], + [ + "12.740768", + "0.000000097006600429470438", + "8.612579", + "0.000000097006389706740117" + ], + [ + "11.958718", + "0.000000084605014876131333", + "7.776664", + "0.000000084604816021523397" + ], + [ + "11.285277", + "0.000000074422865146888769", + "7.053751", + "0.000000074422676483432910" + ], + [ + "10.702300", + "0.000000066036806036613284", + "6.425691", + "0.000000066036626163581151" + ], + [ + "10.194969", + "0.000000059107649498227308", + "5.877655", + "0.000000059107477241242275" + ], + [ + "9.751127", + "0.000000053363369184763413", + "5.397465", + "0.000000053363203555765833" + ], + [ + "9.360759", + "0.000000048585485700204389", + "4.975078", + "0.000000048585325865195452" + ], + [ + "13.654503", + "0.000000124476504730127622", + "8.576804", + "0.000000124476234509431397" + ], + [ + "12.860017", + "0.000000107900398058061278", + "7.724160", + "0.000000107900142314440278" + ], + [ + "12.178581", + "0.000000094333885787469162", + "6.988953", + "0.000000094333642415199878" + ], + [ + "11.590939", + "0.000000083197583077579220", + "6.351932", + "0.000000083197350325001340" + ], + [ + "11.081431", + "0.000000074027559339646486", + "5.797430", + "0.000000074027335743922503" + ], + [ + "10.637264", + "0.000000066452182052190131", + "5.312642", + "0.000000066451966387166972" + ], + [ + "10.247941", + "0.000000060173461628626249", + "4.887046", + "0.000000060173252863002503" + ], + [ + "9.904808", + "0.000000054952110856680022", + "4.511956", + "0.000000054951908120305316" + ], + [ + "13.971459", + "0.000000137129479386004495", + "7.797529", + "0.000000137129151820058679" + ], + [ + "13.268586", + "0.000000119126880132020785", + "7.036570", + "0.000000119126567656793415" + ], + [ + "12.664950", + "0.000000104395441128548470", + "6.379237", + "0.000000104395141543496966" + ], + [ + "12.143661", + "0.000000092304985426401008", + "5.808642", + "0.000000092304696901192736" + ], + [ + "11.690979", + "0.000000082350997052588131", + "5.311037", + "0.000000082350718058914043" + ], + [ + "11.295677", + "0.000000074129399010684645", + "4.875179", + "0.000000074129128267772466" + ], + [ + "10.948536", + "0.000000067316238474054708", + "4.491824", + "0.000000067315974904956443" + ], + [ + "10.641955", + "0.000000061651420413782286", + "4.153337", + "0.000000061651163110162331" + ], + [ + "14.538960", + "0.000000150115140482037533", + "7.178768", + "0.000000150114741865426902" + ], + [ + "13.908764", + "0.000000130686048636388585", + "6.490544", + "0.000000130685665733764641" + ], + [ + "13.366856", + "0.000000114789682893925051", + "5.894998", + "0.000000114789313406354168" + ], + [ + "12.898221", + "0.000000101745074196456690", + "5.377116", + "0.000000101744716211921977" + ], + [ + "12.490640", + "0.000000091007121186260033", + "4.924669", + "0.000000091006773108437942" + ], + [ + "12.134126", + "0.000000082139302391569883", + "4.527652", + "0.000000082138962882920892" + ], + [ + "11.820474", + "0.000000074791701745347840", + "4.177832", + "0.000000074791369681463813" + ], + [ + "11.542917", + "0.000000068683416401756903", + "3.868409", + "0.000000068683090834588462" + ], + [ + "15.314419", + "0.000000163433490197698895", + "6.676924", + "0.000000163433004645525391" + ], + [ + "14.743118", + "0.000000142577905758566829", + "6.047641", + "0.000000142577436545334885" + ], + [ + "14.251239", + "0.000000125516613278143795", + "5.502174", + "0.000000125516158003727448" + ], + [ + "13.825285", + "0.000000111517851588788727", + "5.027021", + "0.000000111517408257123207" + ], + [ + "13.454269", + "0.000000099995933947662267", + "4.611184", + "0.000000099995500892414159" + ], + [ + "13.129205", + "0.000000090481894407330437", + "4.245659", + "0.000000090481470232509261" + ], + [ + "12.842711", + "0.000000082599853660091515", + "3.923035", + "0.000000082599437192410692" + ], + [ + "12.588693", + "0.000000076048101042946804", + "3.637184", + "0.000000076047691293452354" + ], + [ + "16.269128", + "0.000000177084530907449594", + "6.262604", + "0.000000177083940160353218" + ], + [ + "15.746412", + "0.000000154802453879227970", + "5.681946", + "0.000000154801880091483879" + ], + [ + "15.295810", + "0.000000136576234667566810", + "5.177796", + "0.000000136575675335589067" + ], + [ + "14.905075", + "0.000000121623319994991833", + "4.737901", + "0.000000121622773036753200" + ], + [ + "14.564234", + "0.000000109317437733237910", + "4.352277", + "0.000000109316901410779065" + ], + [ + "14.265130", + "0.000000099157177458948606", + "4.012746", + "0.000000099156650316466101" + ], + [ + "14.001055", + "0.000000090740696623524781", + "3.712571", + "0.000000090740177437709178" + ], + [ + "13.766471", + "0.000000083745476746624907", + "3.446182", + "0.000000083744964486660843" + ], + [ + "17.383093", + "0.000000191068265174879350", + "5.915341", + "0.000000191067548409902371" + ], + [ + "16.901069", + "0.000000167359695567089786", + "5.375408", + "0.000000167358996372203045" + ], + [ + "16.485043", + "0.000000147968549635641352", + "4.905867", + "0.000000147967865401912141" + ], + [ + "16.123814", + "0.000000132061481992931163", + "4.495510", + "0.000000132060810550775677" + ], + [ + "15.808256", + "0.000000118971635125002096", + "4.135200", + "0.000000118970974663489849" + ], + [ + "15.530905", + "0.000000108165154132350754", + "3.817450", + "0.000000108164503134733010" + ], + [ + "15.285619", + "0.000000099214233225301720", + "3.536090", + "0.000000099213590417297332" + ], + [ + "15.067326", + "0.000000091775546105997286", + "3.286012", + "0.000000091774910414139855" + ] + ] + }, + "1/128": { + "a_dn": "45.508415", + "a_up": "45.611669", + "beta_dn": "0.000000191067548414218681", + "beta_up": "0.000000191126951781981628", + "boxes": [ + [ + "45.611669", + "0.000000055557894056758897", + "45.508415", + "0.000000055544858077060670" + ], + [ + "41.138906", + "0.000000047539592445269795", + "40.972101", + "0.000000047527717691520203" + ], + [ + "37.271100", + "0.000000040961640228680220", + "37.045478", + "0.000000040950775078291392" + ], + [ + "33.909932", + "0.000000035549381494537516", + "33.630261", + "0.000000035539398303294201" + ], + [ + "30.975637", + "0.000000031082378635849777", + "30.646703", + "0.000000031073169292296460" + ], + [ + "28.403073", + "0.000000027383650136695936", + "28.029663", + "0.000000027375122544661812" + ], + [ + "26.138682", + "0.000000024310972771729738", + "25.725573", + "0.000000024303048054965855" + ], + [ + "24.138134", + "0.000000021749895357874090", + "23.690076", + "0.000000021742505627041895" + ], + [ + "34.109820", + "0.000000066215329419957804", + "33.307655", + "0.000000066201738978958003" + ], + [ + "30.899705", + "0.000000056770523807907291", + "30.035265", + "0.000000056758106624643951" + ], + [ + "28.120559", + "0.000000049027634992911531", + "27.198524", + "0.000000049016237796228028" + ], + [ + "25.702474", + "0.000000042661214644501985", + "24.727531", + "0.000000042650708467733345" + ], + [ + "23.588736", + "0.000000037410239532918200", + "22.565571", + "0.000000037400515194099360" + ], + [ + "21.733025", + "0.000000033065283480294788", + "20.666306", + "0.000000033056248010731917" + ], + [ + "20.097245", + "0.000000029458159871785640", + "18.991618", + "0.000000029449733681188707" + ], + [ + "18.649854", + "0.000000026453609585897968", + "17.509930", + "0.000000026445724200155382" + ], + [ + "27.913969", + "0.000000077206123676605053", + "26.395973", + "0.000000077191292615840641" + ], + [ + "25.423571", + "0.000000066334777538371878", + "23.844105", + "0.000000066321168293151315" + ], + [ + "23.264372", + "0.000000057426919899397366", + "21.628073", + "0.000000057414373250130860" + ], + [ + "21.382847", + "0.000000050106309399589487", + "19.694345", + "0.000000050094691368777991" + ], + [ + "19.735561", + "0.000000044071336680206089", + "17.999474", + "0.000000044060533833132487" + ], + [ + "18.287023", + "0.000000039080130479628036", + "16.507947", + "0.000000039070046214600932" + ], + [ + "17.008031", + "0.000000034938540439496968", + "15.190531", + "0.000000034929092045703978" + ], + [ + "15.874384", + "0.000000031490499200595854", + "14.022987", + "0.000000031481615511973663" + ], + [ + "24.317168", + "0.000000088530162332966382", + "22.027554", + "0.000000088513518987614750" + ], + [ + "22.283246", + "0.000000076232255113491206", + "19.932709", + "0.000000076216902696724738" + ], + [ + "20.517025", + "0.000000066159410491598731", + "18.110165", + "0.000000066145181439408620" + ], + [ + "18.975445", + "0.000000057884593744756266", + "16.516850", + "0.000000057871347005557120" + ], + [ + "17.623544", + "0.000000051065609108570815", + "15.117785", + "0.000000051053225208260990" + ], + [ + "16.432741", + "0.000000045428140006067362", + "13.884363", + "0.000000045416517154899762" + ], + [ + "15.379497", + "0.000000040752072140045972", + "12.793011", + "0.000000040741123146943095" + ], + [ + "14.444291", + "0.000000036860529747570016", + "11.824169", + "0.000000036850179560763328" + ], + [ + "22.185295", + "0.000000100187447875314684", + "19.051402", + "0.000000100168418094225283" + ], + [ + "20.463004", + "0.000000086462966228638841", + "17.268578", + "0.000000086445309835186961" + ], + [ + "18.964977", + "0.000000075225122818315626", + "15.714587", + "0.000000075208662363731034" + ], + [ + "17.655326", + "0.000000065996089352536615", + "14.353527", + "0.000000065980675377582279" + ], + [ + "16.504899", + "0.000000058393083488290451", + "13.156226", + "0.000000058378589318847001" + ], + [ + "15.489845", + "0.000000052109343187540944", + "12.098806", + "0.000000052095660830856153" + ], + [ + "14.590507", + "0.000000046898790090546576", + "11.161574", + "0.000000046885826984020399" + ], + [ + "13.790564", + "0.000000042563739924790859", + "10.328170", + "0.000000042551416345545334" + ], + [ + "20.969267", + "0.000000112178035430048477", + "16.910060", + "0.000000112155989935639931" + ], + [ + "19.471476", + "0.000000097026969760997209", + "15.352022", + "0.000000097006389708431255" + ], + [ + "18.166615", + "0.000000084624119069212335", + "13.991459", + "0.000000084604816022898884" + ], + [ + "17.023982", + "0.000000074440861351519528", + "12.797651", + "0.000000074422676484557069" + ], + [ + "16.018618", + "0.000000066053827566616310", + "11.745621", + "0.000000066036626164504424" + ], + [ + "15.130089", + "0.000000059123810113832685", + "10.814904", + "0.000000059107477242004333" + ], + [ + "14.341538", + "0.000000053378766483973560", + "9.988608", + "0.000000053363203556397975" + ], + [ + "13.638954", + "0.000000048600203819966671", + "9.252681", + "0.000000048585325865722460" + ], + [ + "20.374368", + "0.000000124502010252115614", + "15.304232", + "0.000000124476234511838104" + ], + [ + "19.045063", + "0.000000107924353136073664", + "13.914897", + "0.000000107900142316387893" + ], + [ + "17.885155", + "0.000000094356488593834015", + "12.699482", + "0.000000094333642416784872" + ], + [ + "16.867840", + "0.000000083219000805262890", + "11.631165", + "0.000000083197350326295066" + ], + [ + "15.971313", + "0.000000074047933941129043", + "10.688120", + "0.000000074027335744985877" + ], + [ + "15.177707", + "0.000000066471634761439828", + "9.852452", + "0.000000066451966388043352" + ], + [ + "14.472267", + "0.000000060192096541370781", + "9.109371", + "0.000000060173252863730235" + ], + [ + "13.842719", + "0.000000054970017781714802", + "8.446561", + "0.000000054951908120910951" + ], + [ + "20.229668", + "0.000000137159478484631133", + "14.060284", + "0.000000137129151822806063" + ], + [ + "19.030944", + "0.000000119155223864901179", + "12.801698", + "0.000000119126567659014511" + ], + [ + "17.983371", + "0.000000104422340122378740", + "11.698765", + "0.000000104395141545303847" + ], + [ + "17.063169", + "0.000000092330617536446323", + "10.727689", + "0.000000092304696902668633" + ], + [ + "16.250980", + "0.000000082375513418464256", + "9.869093", + "0.000000082350718060125525" + ], + [ + "15.530929", + "0.000000074152928827460974", + "9.107070", + "0.000000074129128268771861" + ], + [ + "14.889893", + "0.000000067338892769338802", + "8.428464", + "0.000000067315974905783935" + ], + [ + "14.316940", + "0.000000061673295055693945", + "7.822302", + "0.000000061651163110852730" + ], + [ + "20.429858", + "0.000000150150562899511352", + "13.071214", + "0.000000150114741868534284" + ], + [ + "19.334994", + "0.000000130719705645510467", + "11.916618", + "0.000000130685665736278022" + ], + [ + "18.376765", + "0.000000114821798184211210", + "10.903142", + "0.000000114789313408396700" + ], + [ + "17.533799", + "0.000000101775836825063205", + "10.009400", + "0.000000101744716213589905" + ], + [ + "16.788688", + "0.000000091036691960127432", + "9.217959", + "0.000000091006773109806679" + ], + [ + "16.127138", + "0.000000082167818895397375", + "8.514501", + "0.000000082138962884049704" + ], + [ + "15.537324", + "0.000000074819282321853606", + "7.887166", + "0.000000074791369682399426" + ], + [ + "15.009387", + "0.000000068710163321537537", + "7.326053", + "0.000000068683090835367838" + ], + [ + "20.906837", + "0.000000163475400753150719", + "12.267802", + "0.000000163433004649015963" + ], + [ + "19.896358", + "0.000000142617936401363883", + "11.197694", + "0.000000142577436548155847" + ], + [ + "19.010719", + "0.000000125555001306778417", + "10.256895", + "0.000000125516158006019393" + ], + [ + "18.230507", + "0.000000111554797748852908", + "9.425978", + "0.000000111517408258995928" + ], + [ + "17.539895", + "0.000000100031609148180712", + "8.689095", + "0.000000099995500893949299" + ], + [ + "16.925878", + "0.000000090516445012054775", + "8.033214", + "0.000000090481470233776318" + ], + [ + "16.377687", + "0.000000082633405676222819", + "7.447531", + "0.000000082599437193459547" + ], + [ + "15.886330", + "0.000000076080763457284747", + "6.923015", + "0.000000076047691294326958" + ], + [ + "21.614787", + "0.000000177134142629725869", + "11.603456", + "0.000000177083940164243924" + ], + [ + "20.674101", + "0.000000154850067223851622", + "10.603222", + "0.000000154801880094631407" + ], + [ + "19.848499", + "0.000000136622101045194567", + "9.722527", + "0.000000136575675338144188" + ], + [ + "19.120190", + "0.000000121667652289639385", + "8.943566", + "0.000000121622773038840417" + ], + [ + "18.474655", + "0.000000109360417359488284", + "8.251801", + "0.000000109316901412491263" + ], + [ + "17.899956", + "0.000000099198959922086608", + "7.635266", + "0.000000099156650317877671" + ], + [ + "17.386194", + "0.000000090781415921315425", + "7.084031", + "0.000000090740177438878746" + ], + [ + "16.925098", + "0.000000083785248875534818", + "6.589781", + "0.000000083744964487634773" + ], + [ + "22.521841", + "0.000000191126951781981628", + "11.045754", + "0.000000191067548414218681" + ], + [ + "21.639755", + "0.000000167416261770026725", + "10.104184", + "0.000000167358996375692254" + ], + [ + "20.864564", + "0.000000148023261429956954", + "9.273951", + "0.000000147967865404746090" + ], + [ + "20.179835", + "0.000000132114564825112922", + "8.538610", + "0.000000132060810553088582" + ], + [ + "19.572153", + "0.000000119023281296472845", + "7.884725", + "0.000000118970974665386820" + ], + [ + "19.030471", + "0.000000108215528633331343", + "7.301224", + "0.000000108164503136298055" + ], + [ + "18.545624", + "0.000000099263478353686821", + "6.778909", + "0.000000099213590418592609" + ], + [ + "18.109942", + "0.000000091823785147054837", + "6.310072", + "0.000000091774910415218255" + ] + ] + }, + "1/2048": { + "a_dn": "26.108063", + "a_up": "26.256538", + "beta_dn": "0.000000191067548409602206", + "beta_up": "0.000000191067724114048058", + "boxes": [ + [ + "26.256538", + "0.000000055544887482387704", + "26.108063", + "0.000000055544858076188109" + ], + [ + "23.345680", + "0.000000047527744108676726", + "23.138155", + "0.000000047527717690812672" + ], + [ + "20.872444", + "0.000000040950798942280096", + "20.610069", + "0.000000040950775077713248" + ], + [ + "18.761472", + "0.000000035539419976574997", + "18.448560", + "0.000000035539398302820230" + ], + [ + "16.951611", + "0.000000031073189078065990", + "16.592558", + "0.000000031073169291906764" + ], + [ + "15.393028", + "0.000000027375140697503824", + "14.992288", + "0.000000027375122544338537" + ], + [ + "14.044949", + "0.000000024303064789431911", + "13.607011", + "0.000000024303048054697513" + ], + [ + "12.873871", + "0.000000021742521124575446", + "12.403241", + "0.000000021742505626816975" + ], + [ + "19.768196", + "0.000000066201769836864794", + "18.932615", + "0.000000066201738977858631" + ], + [ + "17.717332", + "0.000000056758134529061894", + "16.823041", + "0.000000056758106623752052" + ], + [ + "15.972657", + "0.000000049016263178130580", + "15.023935", + "0.000000049016237795501055" + ], + [ + "14.481508", + "0.000000042650731685926885", + "13.482702", + "0.000000042650708467137950" + ], + [ + "13.201132", + "0.000000037400536548466574", + "12.156633", + "0.000000037400515193609341" + ], + [ + "12.096671", + "0.000000033056267752845377", + "11.010901", + "0.000000033056248010326624" + ], + [ + "11.139593", + "0.000000029449752022849600", + "10.016980", + "0.000000029449733680851817" + ], + [ + "10.306442", + "0.000000026445741320289404", + "9.151412", + "0.000000026445724199873949" + ], + [ + "16.352271", + "0.000000077191326643960252", + "14.808581", + "0.000000077191292614491871" + ], + [ + "14.795131", + "0.000000066321199321024089", + "13.192966", + "0.000000066321168292057925" + ], + [ + "13.468810", + "0.000000057414401716312894", + "11.812489", + "0.000000057414373249240334" + ], + [ + "12.333646", + "0.000000050094717638162798", + "10.627534", + "0.000000050094691368048182" + ], + [ + "11.357430", + "0.000000044060558210491424", + "9.605914", + "0.000000044060533832533134" + ], + [ + "10.513889", + "0.000000039070068955419541", + "8.721368", + "0.000000039070046214104744" + ], + [ + "9.781505", + "0.000000034929113364909023", + "7.952375", + "0.000000034929092045292541" + ], + [ + "9.142584", + "0.000000031481635590965363", + "7.281226", + "0.000000031481615511629516" + ], + [ + "14.493951", + "0.000000088513557825815031", + "12.184243", + "0.000000088513518985994000" + ], + [ + "13.250594", + "0.000000076216938446263557", + "10.882583", + "0.000000076216902695410320" + ], + [ + "12.190212", + "0.000000066145214552496082", + "9.768242", + "0.000000066145181438338604" + ], + [ + "11.281391", + "0.000000057871377858267265", + "8.809832", + "0.000000057871347004681860" + ], + [ + "10.498605", + "0.000000051053254114535110", + "7.981842", + "0.000000051053225207541520" + ], + [ + "9.821029", + "0.000000045416544377758803", + "7.263447", + "0.000000045416517154305412" + ], + [ + "9.231598", + "0.000000040741148907501217", + "6.637572", + "0.000000040741123146449649" + ], + [ + "8.716272", + "0.000000036850204045502753", + "6.090154", + "0.000000036850179560352356" + ], + [ + "13.540740", + "0.000000100168463549843111", + "10.391162", + "0.000000100168418092308376" + ], + [ + "12.511502", + "0.000000086445352090487645", + "9.303750", + "0.000000086445309833634575" + ], + [ + "11.632629", + "0.000000075208701888130627", + "8.371063", + "0.000000075208662362467930" + ], + [ + "10.878323", + "0.000000065980712561314445", + "7.567317", + "0.000000065980675376548417" + ], + [ + "10.227613", + "0.000000058378624487535258", + "6.871548", + "0.000000058378589317998548" + ], + [ + "9.663381", + "0.000000052095694257169467", + "6.266635", + "0.000000052095660830155601" + ], + [ + "9.171598", + "0.000000046885858897051252", + "5.738529", + "0.000000046885826983439072" + ], + [ + "8.740714", + "0.000000042551446938371423", + "5.275655", + "0.000000042551416345060522" + ], + [ + "13.171277", + "0.000000112156044109096236", + "9.100104", + "0.000000112155989933405775" + ], + [ + "12.296017", + "0.000000097006440556460336", + "8.166774", + "0.000000097006389706621181" + ], + [ + "11.547700", + "0.000000084604864034385015", + "7.364752", + "0.000000084604816021426588" + ], + [ + "10.904555", + "0.000000074422722065790698", + "6.672281", + "0.000000074422676483354980" + ], + [ + "10.348881", + "0.000000066036669654375360", + "6.071660", + "0.000000066036626163516061" + ], + [ + "9.866225", + "0.000000059107518924174410", + "5.548424", + "0.000000059107477241189541" + ], + [ + "9.444732", + "0.000000053363243669066675", + "5.090702", + "0.000000053363203555721179" + ], + [ + "9.074644", + "0.000000048585364609520898", + "4.688705", + "0.000000048585325865159058" + ], + [ + "13.211156", + "0.000000124476299878833376", + "8.132390", + "0.000000124476234509262328" + ], + [ + "12.451177", + "0.000000107900204225197884", + "7.314421", + "0.000000107900142314304990" + ], + [ + "11.800622", + "0.000000094333701377282709", + "6.610249", + "0.000000094333642415089955" + ], + [ + "11.240733", + "0.000000083197406762104934", + "6.001122", + "0.000000083197350324910267" + ], + [ + "10.756250", + "0.000000074027390009344440", + "5.471779", + "0.000000074027335743848884" + ], + [ + "10.334712", + "0.000000066452018776501325", + "5.009743", + "0.000000066451966387105173" + ], + [ + "9.965894", + "0.000000060173303624356611", + "4.604768", + "0.000000060173252862952224" + ], + [ + "9.641372", + "0.000000054951957462524201", + "4.248401", + "0.000000054951908120262524" + ], + [ + "13.558491", + "0.000000137129231298249896", + "7.383631", + "0.000000137129151819867771" + ], + [ + "12.887612", + "0.000000119126643539607228", + "6.654828", + "0.000000119126567656637353" + ], + [ + "12.312630", + "0.000000104395214362998141", + "6.026300", + "0.000000104395141543370034" + ], + [ + "11.817111", + "0.000000092304767099330311", + "5.481614", + "0.000000092304696901090404" + ], + [ + "11.387681", + "0.000000082350786004092043", + "5.007393", + "0.000000082350718058828828" + ], + [ + "11.013414", + "0.000000074129194268123729", + "4.592693", + "0.000000074129128267703296" + ], + [ + "10.685342", + "0.000000067316039218988845", + "4.228523", + "0.000000067315974904898074" + ], + [ + "10.396076", + "0.000000061651225955363633", + "3.907462", + "0.000000061651163110114646" + ], + [ + "14.150208", + "0.000000150114838861871820", + "6.789205", + "0.000000150114741865208909" + ], + [ + "13.549992", + "0.000000130685758996813687", + "6.131119", + "0.000000130685665733590033" + ], + [ + "13.034956", + "0.000000114789403490959803", + "5.562594", + "0.000000114789313406210732" + ], + [ + "12.590503", + "0.000000101744803578953778", + "5.069034", + "0.000000101744716211804779" + ], + [ + "12.204756", + "0.000000091006858141975068", + "4.638551", + "0.000000091006773108343067" + ], + [ + "11.868003", + "0.000000082139045904091039", + "4.261418", + "0.000000082138962882841470" + ], + [ + "11.572273", + "0.000000074791450959573203", + "3.929638", + "0.000000074791369681399079" + ], + [ + "11.310993", + "0.000000068683170596081148", + "3.636606", + "0.000000068683090834533544" + ], + [ + "14.945390", + "0.000000163433123115177217", + "6.307189", + "0.000000163433004645282806" + ], + [ + "14.402419", + "0.000000142577551144217133", + "5.706395", + "0.000000142577436545136944" + ], + [ + "13.935954", + "0.000000125516269310303866", + "5.186489", + "0.000000125516158003566545" + ], + [ + "13.532886", + "0.000000111517516751693621", + "4.734360", + "0.000000111517408256993342" + ], + [ + "13.182543", + "0.000000099995606975148969", + "4.339328", + "0.000000099995500892306262" + ], + [ + "12.876200", + "0.000000090481574237894692", + "3.992649", + "0.000000090481470232421554" + ], + [ + "12.606690", + "0.000000082599539400833066", + "3.687129", + "0.000000082599437192336875" + ], + [ + "12.368105", + "0.000000076047791940560939", + "3.416826", + "0.000000076047691293391939" + ], + [ + "15.916449", + "0.000000177084084652178005", + "5.909318", + "0.000000177083940160080399" + ], + [ + "15.420690", + "0.000000154802020577355907", + "5.355773", + "0.000000154801880091265197" + ], + [ + "14.994287", + "0.000000136575812417953036", + "4.875970", + "0.000000136575675335409736" + ], + [ + "14.625359", + "0.000000121622907215739983", + "4.458021", + "0.000000121622773036606748" + ], + [ + "14.304227", + "0.000000109317033102991264", + "4.092240", + "0.000000109316901410660376" + ], + [ + "14.022977", + "0.000000099156779870010965", + "3.770690", + "0.000000099156650316366957" + ], + [ + "13.775108", + "0.000000090740305144288437", + "3.486844", + "0.000000090740177437628254" + ], + [ + "13.555254", + "0.000000083745090591301944", + "3.235301", + "0.000000083744964486592359" + ], + [ + "17.044171", + "0.000000191067724114048058", + "5.575904", + "0.000000191067548409602206" + ], + [ + "16.587943", + "0.000000167359167938649559", + "5.061924", + "0.000000167358996371958470" + ], + [ + "16.195090", + "0.000000147968033457485304", + "4.615704", + "0.000000147967865401713420" + ], + [ + "15.854755", + "0.000000132060975615756538", + "4.226383", + "0.000000132060810550613424" + ], + [ + "15.558092", + "0.000000118971137171172505", + "3.885103", + "0.000000118970974663356714" + ], + [ + "15.297865", + "0.000000108164663447073847", + "3.584607", + "0.000000108164503134624667" + ], + [ + "15.068128", + "0.000000099213748837479361", + "3.318920", + "0.000000099213590417206331" + ], + [ + "14.863971", + "0.000000091775067196720679", + "3.083099", + "0.000000091774910414065273" + ] + ] + }, + "1/256": { + "a_dn": "34.757367", + "a_up": "34.883096", + "beta_dn": "0.000000191067548411730969", + "beta_up": "0.000000191080406357093183", + "boxes": [ + [ + "34.883096", + "0.000000055547353787586494", + "34.757367", + "0.000000055544858076590767" + ], + [ + "31.284651", + "0.000000047529978616505354", + "31.097615", + "0.000000047527717691138621" + ], + [ + "28.197442", + "0.000000040952833486662713", + "27.953567", + "0.000000040950775077980080" + ], + [ + "25.535858", + "0.000000035541281215121296", + "25.239687", + "0.000000035539398303039000" + ], + [ + "23.230479", + "0.000000031074899448684161", + "22.886602", + "0.000000031073169292086234" + ], + [ + "21.224704", + "0.000000027376719179930411", + "20.837745", + "0.000000027375122544487777" + ], + [ + "19.472138", + "0.000000024304527513907807", + "19.046728", + "0.000000024303048054821063" + ], + [ + "17.934537", + "0.000000021743881860515009", + "17.475306", + "0.000000021742505626920831" + ], + [ + "26.168313", + "0.000000066204348811959178", + "25.349860", + "0.000000066201738978364616" + ], + [ + "23.606234", + "0.000000056760481498970436", + "22.727266", + "0.000000056758106624163626" + ], + [ + "21.405349", + "0.000000049018410027740436", + "20.470351", + "0.000000049016237795836544" + ], + [ + "19.505281", + "0.000000042652705099457353", + "18.518773", + "0.000000042650708467412738" + ], + [ + "17.857062", + "0.000000037402358973276958", + "16.823586", + "0.000000037400515193835513" + ], + [ + "16.420758", + "0.000000033057958165844591", + "15.344860", + "0.000000033056248010513706" + ], + [ + "15.163622", + "0.000000029451326542457072", + "14.049842", + "0.000000029449733681007338" + ], + [ + "14.058648", + "0.000000026447213697283150", + "12.911506", + "0.000000026445724200003243" + ], + [ + "21.516160", + "0.000000077194153795242561", + "19.986005", + "0.000000077191292615114197" + ], + [ + "19.547041", + "0.000000066323787430236560", + "17.956879", + "0.000000066321168292561194" + ], + [ + "17.853034", + "0.000000057416783593094237", + "16.207350", + "0.000000057414373249651272" + ], + [ + "16.388273", + "0.000000050096920734837201", + "14.691568", + "0.000000050094691368384509" + ], + [ + "15.115546", + "0.000000044062605616298357", + "13.372328", + "0.000000044060533832809747" + ], + [ + "14.004494", + "0.000000039071980186467973", + "12.219264", + "0.000000039070046214333375" + ], + [ + "13.030210", + "0.000000034930904994466689", + "11.207451", + "0.000000034929092045482457" + ], + [ + "12.172141", + "0.000000031483321754672651", + "10.316309", + "0.000000031481615511788063" + ], + [ + "18.883900", + "0.000000088516753320840619", + "16.585202", + "0.000000088513518986741785" + ], + [ + "17.291340", + "0.000000076219884162629858", + "14.932982", + "0.000000076216902696016180" + ], + [ + "15.919157", + "0.000000066147944697450164", + "13.505619", + "0.000000066145181438832995" + ], + [ + "14.730722", + "0.000000057873921054576338", + "12.266491", + "0.000000057871347005085251" + ], + [ + "13.696308", + "0.000000051055634437333172", + "11.185865", + "0.000000051053225207873089" + ], + [ + "12.791647", + "0.000000045418782177865686", + "10.239464", + "0.000000045416517154579300" + ], + [ + "11.996819", + "0.000000040743261467972654", + "9.407342", + "0.000000040741123146677021" + ], + [ + "11.295375", + "0.000000036852206107638457", + "8.673021", + "0.000000036850179560542058" + ], + [ + "17.405485", + "0.000000100172153643457194", + "14.265005", + "0.000000100168418093192038" + ], + [ + "16.070007", + "0.000000086448779398316390", + "12.870115", + "0.000000086445309834350165" + ], + [ + "14.917519", + "0.000000075211902306796008", + "11.662689", + "0.000000075208662363050143" + ], + [ + "13.917707", + "0.000000065983716133211307", + "10.612412", + "0.000000065980675377025570" + ], + [ + "13.045955", + "0.000000058381456487501451", + "9.694661", + "0.000000058378589318389587" + ], + [ + "12.282162", + "0.000000052098376055011554", + "8.889315", + "0.000000052095660830479427" + ], + [ + "11.609813", + "0.000000046888408645056050", + "8.179836", + "0.000000046885826983706961" + ], + [ + "11.015263", + "0.000000042553880121941334", + "7.552542", + "0.000000042551416345283918" + ], + [ + "16.658476", + "0.000000112160371316403937", + "12.594867", + "0.000000112155989934435731" + ], + [ + "15.508086", + "0.000000097010490451731357", + "11.385248", + "0.000000097006389707454894" + ], + [ + "14.513767", + "0.000000084608674402316631", + "10.336167", + "0.000000084604816022106006" + ], + [ + "13.649752", + "0.000000074426324538873495", + "9.421853", + "0.000000074422676483909070" + ], + [ + "12.895110", + "0.000000066040090854077357", + "8.621363", + "0.000000066036626163972226" + ], + [ + "12.232736", + "0.000000059110781366414170", + "7.917571", + "0.000000059107477241565066" + ], + [ + "11.648569", + "0.000000053366366485770659", + "7.296389", + "0.000000053363203556033598" + ], + [ + "11.130982", + "0.000000048588364126351080", + "6.746153", + "0.000000048585325865418686" + ], + [ + "16.415021", + "0.000000124481429155836438", + "11.342516", + "0.000000124476234510450784" + ], + [ + "15.403407", + "0.000000107905040584460307", + "10.271812", + "0.000000107900142315265217" + ], + [ + "14.527683", + "0.000000094338284637798300", + "9.341458", + "0.000000094333642415872074" + ], + [ + "13.765494", + "0.000000083201770272563679", + "8.529092", + "0.000000083197350325549324" + ], + [ + "13.098668", + "0.000000074031561847036836", + "7.816529", + "0.000000074027335744372406" + ], + [ + "12.512349", + "0.000000066456022698384970", + "7.188889", + "0.000000066451966387538188" + ], + [ + "11.994314", + "0.000000060177159824748002", + "6.633922", + "0.000000060173252863310328" + ], + [ + "11.534450", + "0.000000054955683179683936", + "6.141477", + "0.000000054951908120561856" + ], + [ + "16.542534", + "0.000000137135354567278186", + "10.372780", + "0.000000137129151821221568" + ], + [ + "15.638355", + "0.000000119132457486348758", + "9.409615", + "0.000000119126567657734193" + ], + [ + "14.854449", + "0.000000104400760955223963", + "8.571178", + "0.000000104395141544261646" + ], + [ + "14.171098", + "0.000000092310081501193424", + "7.837741", + "0.000000092304696901818698" + ], + [ + "13.572268", + "0.000000082355897835103836", + "7.193256", + "0.000000082350718059426651" + ], + [ + "13.044843", + "0.000000074134128601712994", + "6.624581", + "0.000000074129128268196467" + ], + [ + "12.578023", + "0.000000067320817377913908", + "6.120889", + "0.000000067315974905306955" + ], + [ + "12.162864", + "0.000000061655866148404125", + "5.673196", + "0.000000061651163110454356" + ], + [ + "16.959151", + "0.000000150122178768142286", + "9.602180", + "0.000000150114741866742236" + ], + [ + "16.140321", + "0.000000130692772570150849", + "8.724445", + "0.000000130685665734828463" + ], + [ + "15.429361", + "0.000000114796134942143456", + "7.959029", + "0.000000114789313407218629" + ], + [ + "14.808649", + "0.000000101751289969720477", + "7.288300", + "0.000000101744716212627834" + ], + [ + "14.263850", + "0.000000091013130705883005", + "6.697905", + "0.000000091006773109018490" + ], + [ + "13.783225", + "0.000000082145131094042265", + "6.176084", + "0.000000082138962883398506" + ], + [ + "13.357108", + "0.000000074797371282138005", + "5.713136", + "0.000000074791369681860782" + ], + [ + "12.977483", + "0.000000068688945279292018", + "5.301010", + "0.000000068683090834918152" + ], + [ + "17.611850", + "0.000000163441936393696424", + "8.976644", + "0.000000163433004647004194" + ], + [ + "16.862281", + "0.000000142586020614186524", + "8.168233", + "0.000000142577436546528953" + ], + [ + "16.210522", + "0.000000125524441506201643", + "7.462074", + "0.000000125516158004699239" + ], + [ + "15.640651", + "0.000000111525430703527176", + "6.842237", + "0.000000111517408257916681" + ], + [ + "15.139708", + "0.000000100003295592632423", + "6.295743", + "0.000000099995500893063801" + ], + [ + "14.697076", + "0.000000090489065408102910", + "5.811952", + "0.000000090481470233046161" + ], + [ + "14.304004", + "0.000000082606856862400074", + "5.382078", + "0.000000082599437192854460" + ], + [ + "13.953230", + "0.000000076054955983365425", + "4.998824", + "0.000000076047691293822995" + ], + [ + "18.464917", + "0.000000177094665283182340", + "8.459745", + "0.000000177083940162000267" + ], + [ + "17.772565", + "0.000000154812239568412655", + "7.708598", + "0.000000154801880092817377" + ], + [ + "17.169715", + "0.000000136585718698581692", + "7.051392", + "0.000000136575675336670579" + ], + [ + "16.641850", + "0.000000121632541847002108", + "6.473598", + "0.000000121622773037637543" + ], + [ + "16.177146", + "0.000000109326430726135147", + "5.963375", + "0.000000109316901411504544" + ], + [ + "15.765911", + "0.000000099165969855246797", + "5.511006", + "0.000000099156650317064226" + ], + [ + "15.400150", + "0.000000090749312505639288", + "5.108463", + "0.000000090740177438204783" + ], + [ + "15.073224", + "0.000000083753936718846487", + "4.749068", + "0.000000083744964487072401" + ], + [ + "19.493496", + "0.000000191080406357093183", + "8.026124", + "0.000000191067548411730969" + ], + [ + "18.849129", + "0.000000167371470443191490", + "7.322999", + "0.000000167358996373679213" + ], + [ + "18.287301", + "0.000000147980007612764521", + "6.706847", + "0.000000147967865403112813" + ], + [ + "17.794672", + "0.000000132072664571017514", + "6.164316", + "0.000000132060810551753903" + ], + [ + "17.360368", + "0.000000118982577349804284", + "5.684516", + "0.000000118970974664293606" + ], + [ + "16.975475", + "0.000000108175885747282602", + "5.258504", + "0.000000108164503135395541" + ], + [ + "16.632630", + "0.000000099224779588506304", + "4.878888", + "0.000000099213590417846195" + ], + [ + "16.325716", + "0.000000091785928924170342", + "4.539511", + "0.000000091774910414596840" + ] + ] + }, + "1/4096": { + "a_dn": "25.516405", + "a_up": "25.666574", + "beta_dn": "0.000000191067548409450171", + "beta_up": "0.000000191067591903883650", + "boxes": [ + [ + "25.666574", + "0.000000055544865263789871", + "25.516405", + "0.000000055544858076159917" + ], + [ + "22.802186", + "0.000000047527724142804641", + "22.593135", + "0.000000047527717690788728" + ], + [ + "20.370444", + "0.000000040950780901688095", + "20.106692", + "0.000000040950775077694601" + ], + [ + "18.296696", + "0.000000035539403588392098", + "17.982537", + "0.000000035539398302804957" + ], + [ + "16.520351", + "0.000000031073174114003806", + "16.160167", + "0.000000031073169291894195" + ], + [ + "14.992037", + "0.000000027375126965840462", + "14.590270", + "0.000000027375122544328142" + ], + [ + "13.671359", + "0.000000024303052128560970", + "13.232488", + "0.000000024303048054688875" + ], + [ + "12.525135", + "0.000000021742509397793980", + "12.053655", + "0.000000021742505626809761" + ], + [ + "19.329939", + "0.000000066201746522807652", + "18.493070", + "0.000000066201738977821771" + ], + [ + "17.313686", + "0.000000056758113442407238", + "16.418241", + "0.000000056758106623723222" + ], + [ + "15.599897", + "0.000000049016243994363307", + "14.650141", + "0.000000049016237795477575" + ], + [ + "14.136439", + "0.000000042650714134841484", + "13.136705", + "0.000000042650708467118737" + ], + [ + "12.880983", + "0.000000037400520404196198", + "11.835653", + "0.000000037400515193593543" + ], + [ + "11.799020", + "0.000000033056252825873665", + "10.712503", + "0.000000033056248010313571" + ], + [ + "10.862301", + "0.000000029449738153585471", + "9.739019", + "0.000000029449733680840978" + ], + [ + "10.047609", + "0.000000026445728373878430", + "8.891981", + "0.000000026445724199864267" + ], + [ + "15.998363", + "0.000000077191300938962202", + "14.453638", + "0.000000077191292614448202" + ], + [ + "14.469144", + "0.000000066321175879624589", + "12.866060", + "0.000000066321168292021296" + ], + [ + "13.167741", + "0.000000057414380208187065", + "11.510606", + "0.000000057414373249211541" + ], + [ + "12.054921", + "0.000000050094697788429586", + "10.348086", + "0.000000050094691368024637" + ], + [ + "11.098815", + "0.000000044060539789525616", + "9.346659", + "0.000000044060533832513787" + ], + [ + "10.273428", + "0.000000039070051770687302", + "8.480343", + "0.000000039070046214088770" + ], + [ + "9.557474", + "0.000000034929097254404930", + "7.727849", + "0.000000034929092045279286" + ], + [ + "8.933451", + "0.000000031481620417915489", + "7.071660", + "0.000000031481615511618462" + ], + [ + "14.192903", + "0.000000088513528495476562", + "11.882338", + "0.000000088513518985939994" + ], + [ + "12.973229", + "0.000000076216911447249247", + "10.604463", + "0.000000076216902695367802" + ], + [ + "11.933992", + "0.000000066145189544087228", + "9.511359", + "0.000000066145181438304019" + ], + [ + "11.044139", + "0.000000057871354557069836", + "8.572000", + "0.000000057871347004653594" + ], + [ + "10.278431", + "0.000000051053232283932141", + "7.761164", + "0.000000051053225207518306" + ], + [ + "9.616277", + "0.000000045416523819467301", + "7.058261", + "0.000000045416517154286255" + ], + [ + "9.040806", + "0.000000040741129454786401", + "6.446409", + "0.000000040741123146433761" + ], + [ + "8.538141", + "0.000000036850185557702256", + "5.911712", + "0.000000036850179560338359" + ], + [ + "13.275597", + "0.000000100168429235351330", + "10.125289", + "0.000000100168418092246285" + ], + [ + "12.267135", + "0.000000086445320192685884", + "9.058748", + "0.000000086445309833582890" + ], + [ + "11.406826", + "0.000000075208672053230546", + "8.144710", + "0.000000075208662362427073" + ], + [ + "10.669181", + "0.000000065980684495154183", + "7.357703", + "0.000000065980675376515039" + ], + [ + "10.033479", + "0.000000058378597944610483", + "6.677015", + "0.000000058378589317971148" + ], + [ + "9.482808", + "0.000000052095669031847903", + "6.085726", + "0.000000052095660830132999" + ], + [ + "9.003303", + "0.000000046885834816513684", + "5.569960", + "0.000000046885826983419446" + ], + [ + "8.583558", + "0.000000042551423856921703", + "5.118282", + "0.000000042551416345044912" + ], + [ + "12.931963", + "0.000000112156003232407659", + "8.860161", + "0.000000112155989933331679" + ], + [ + "12.075373", + "0.000000097006402192100230", + "7.945588", + "0.000000097006389706562604" + ], + [ + "11.343751", + "0.000000084604827813777137", + "7.160343", + "0.000000084604816021378979" + ], + [ + "10.715600", + "0.000000074422687682574468", + "6.482940", + "0.000000074422676483316100" + ], + [ + "10.173440", + "0.000000066036636852953279", + "5.895901", + "0.000000066036626163484156" + ], + [ + "9.702999", + "0.000000059107487490548497", + "5.384944", + "0.000000059107477241163232" + ], + [ + "9.292572", + "0.000000053363213423476669", + "4.938347", + "0.000000053363203555699377" + ], + [ + "8.932527", + "0.000000048585335400505756", + "4.546448", + "0.000000048585325865140028" + ], + [ + "12.991241", + "0.000000124476250580770400", + "7.911924", + "0.000000124476234509178870" + ], + [ + "12.248340", + "0.000000107900157540993563", + "7.111118", + "0.000000107900142314235877" + ], + [ + "11.613069", + "0.000000094333656922423610", + "6.422307", + "0.000000094333642415035113" + ], + [ + "11.066915", + "0.000000083197364217057366", + "5.826988", + "0.000000083197350324865495" + ], + [ + "10.594820", + "0.000000074027349107601832", + "5.310099", + "0.000000074027335743812155" + ], + [ + "10.184484", + "0.000000066451979295013604", + "4.859328", + "0.000000066451966387074894" + ], + [ + "9.825819", + "0.000000060173265375842581", + "4.464565", + "0.000000060173252862926124" + ], + [ + "9.510515", + "0.000000054951920289276690", + "4.117471", + "0.000000054951908120241640" + ], + [ + "13.353639", + "0.000000137129171390413655", + "7.178294", + "0.000000137129151819770640" + ], + [ + "12.698594", + "0.000000119126586350240639", + "6.465407", + "0.000000119126567656560345" + ], + [ + "12.137794", + "0.000000104395159490815129", + "5.851137", + "0.000000104395141543307480" + ], + [ + "11.655030", + "0.000000092304714210936034", + "5.319277", + "0.000000092304696901039349" + ], + [ + "11.237110", + "0.000000082350734821491183", + "4.856631", + "0.000000082350718058786956" + ], + [ + "10.873257", + "0.000000074129144558727738", + "4.452407", + "0.000000074129128267668787" + ], + [ + "10.554627", + "0.000000067315990787589634", + "4.097739", + "0.000000067315974904869492" + ], + [ + "10.273937", + "0.000000061651178637660185", + "3.785309", + "0.000000061651163110089865" + ], + [ + "13.957366", + "0.000000150114765785085133", + "6.595933", + "0.000000150114741865101140" + ], + [ + "13.371986", + "0.000000130685688744206242", + "5.952764", + "0.000000130685665733501120" + ], + [ + "12.870250", + "0.000000114789335643871215", + "5.397614", + "0.000000114789313406139986" + ], + [ + "12.437767", + "0.000000101744737789612485", + "4.916094", + "0.000000101744716211747051" + ], + [ + "12.062828", + "0.000000091006794120468451", + "4.496485", + "0.000000091006773108295733" + ], + [ + "11.735858", + "0.000000082138983407933678", + "4.129198", + "0.000000082138962882802468" + ], + [ + "11.449003", + "0.000000074791389785328769", + "3.806352", + "0.000000074791369681365641" + ], + [ + "11.195786", + "0.000000068683110572612109", + "3.521439", + "0.000000068683090834506667" + ], + [ + "14.762331", + "0.000000163433033901221980", + "6.123748", + "0.000000163433004645159695" + ], + [ + "14.233381", + "0.000000142577464859800345", + "5.537055", + "0.000000142577436545039132" + ], + [ + "13.779494", + "0.000000125516185518909767", + "5.029801", + "0.000000125516158003487128" + ], + [ + "13.387753", + "0.000000111517435090785059", + "4.589071", + "0.000000111517408256928551" + ], + [ + "13.047644", + "0.000000099995527142568470", + "4.204339", + "0.000000099995500892253147" + ], + [ + "12.750570", + "0.000000090481495980985816", + "3.866991", + "0.000000090481470232376483" + ], + [ + "12.489471", + "0.000000082599462507709708", + "3.569943", + "0.000000082599437192300648" + ], + [ + "12.258529", + "0.000000076047716233054194", + "3.307341", + "0.000000076047691293360691" + ], + [ + "15.741502", + "0.000000177083975887380930", + "5.734032", + "0.000000177083940159945375" + ], + [ + "15.259084", + "0.000000154801914845939388", + "5.193908", + "0.000000154801880091154112" + ], + [ + "14.844658", + "0.000000136575709265186363", + "4.726157", + "0.000000136575675335321167" + ], + [ + "14.486523", + "0.000000121622806264007068", + "4.319072", + "0.000000121622773036534504" + ], + [ + "14.175148", + "0.000000109316934037632197", + "3.963114", + "0.000000109316901410601161" + ], + [ + "13.902739", + "0.000000099156682427987365", + "3.650469", + "0.000000099156650316318183" + ], + [ + "13.662895", + "0.000000090740209105080736", + "3.374710", + "0.000000090740177437586612" + ], + [ + "13.450337", + "0.000000083744995769575677", + "3.130522", + "0.000000083744964486558773" + ], + [ + "16.876052", + "0.000000191067591903883650", + "5.407486", + "0.000000191067548409450171" + ], + [ + "16.432590", + "0.000000167359038863257548", + "4.906351", + "0.000000167358996371837484" + ], + [ + "16.051206", + "0.000000147967907043606802", + "4.471676", + "0.000000147967865401615219" + ], + [ + "15.721213", + "0.000000132060851470450097", + "4.092768", + "0.000000132060810550533336" + ], + [ + "15.433904", + "0.000000118971014967068159", + "3.760910", + "0.000000118970974663291080" + ], + [ + "15.182156", + "0.000000108164542910577304", + "3.468958", + "0.000000108164503134569164" + ], + [ + "14.960118", + "0.000000099213629739305637", + "3.211034", + "0.000000099213590417161595" + ], + [ + "14.762963", + "0.000000091774949344246472", + "2.982276", + "0.000000091774910414026838" + ] + ] + }, + "1/512": { + "a_dn": "29.730582", + "a_up": "29.869058", + "beta_dn": "0.000000191067548410507607", + "beta_up": "0.000000191070528863972620", + "boxes": [ + [ + "29.869058", + "0.000000055545392825327912", + "29.730582", + "0.000000055544858076359327" + ], + [ + "26.672065", + "0.000000047528200101630924", + "26.473546", + "0.000000047527717690951700" + ], + [ + "23.943326", + "0.000000040951212571294166", + "23.689083", + "0.000000040950775077826665" + ], + [ + "21.603182", + "0.000000035539797075792461", + "21.297629", + "0.000000035539398302914057" + ], + [ + "19.587022", + "0.000000031073534541705948", + "19.234640", + "0.000000031073169291983342" + ], + [ + "17.842189", + "0.000000027375458649259869", + "17.447507", + "0.000000027375122544401925" + ], + [ + "16.325568", + "0.000000024303358718360407", + "15.893138", + "0.000000024303048054750246" + ], + [ + "15.001690", + "0.000000021742793994556608", + "14.536073", + "0.000000021742505626861062" + ], + [ + "22.450147", + "0.000000066202299229568948", + "21.622141", + "0.000000066201738978074399" + ], + [ + "20.186348", + "0.000000056758614837806307", + "19.298837", + "0.000000056758106623927081" + ], + [ + "18.251651", + "0.000000049016701360814269", + "17.309004", + "0.000000049016237795644743" + ], + [ + "16.590154", + "0.000000042651133549105127", + "15.596795", + "0.000000042650708467254763" + ], + [ + "15.156501", + "0.000000037400906959779444", + "14.116888", + "0.000000037400515193706315" + ], + [ + "13.913715", + "0.000000033056610810602364", + "12.832324", + "0.000000033056248010406117" + ], + [ + "12.831507", + "0.000000029450071191971996", + "11.712816", + "0.000000029449733680917882" + ], + [ + "11.884945", + "0.000000026446039541718206", + "10.733422", + "0.000000026445724199929129" + ], + [ + "18.517158", + "0.000000077191908699788021", + "16.979507", + "0.000000077191292614756628" + ], + [ + "16.788323", + "0.000000066321731162071300", + "15.191519", + "0.000000066321168292272530" + ], + [ + "15.308767", + "0.000000057414890461121311", + "13.657204", + "0.000000057414373249415103" + ], + [ + "14.036224", + "0.000000050095169224924167", + "12.334326", + "0.000000050094691368192210" + ], + [ + "12.936386", + "0.000000044060977615131831", + "11.188595", + "0.000000044060533832650730" + ], + [ + "11.981276", + "0.000000039070460365608460", + "10.192035", + "0.000000039070046214202758" + ], + [ + "11.147961", + "0.000000034929480319436840", + "9.321706", + "0.000000034929092045373244" + ], + [ + "10.417557", + "0.000000031481981091873356", + "8.558703", + "0.000000031481615511696872" + ], + [ + "16.334950", + "0.000000088514218904192894", + "14.030216", + "0.000000088513518986312185" + ], + [ + "14.946012", + "0.000000076217547443017690", + "12.582372", + "0.000000076216902695668078" + ], + [ + "13.755641", + "0.000000066145778847159756", + "11.337500", + "0.000000066145181438549601" + ], + [ + "12.730232", + "0.000000057871903605415069", + "10.262013", + "0.000000057871347004853423" + ], + [ + "11.842500", + "0.000000051053746470273739", + "9.328631", + "0.000000051053225207683506" + ], + [ + "11.070180", + "0.000000045417007680330368", + "8.515085", + "0.000000045416517154421852" + ], + [ + "10.395017", + "0.000000040741586821905364", + "7.803103", + "0.000000040741123146547119" + ], + [ + "9.801969", + "0.000000036850619679772077", + "7.177616", + "0.000000036850179560432970" + ], + [ + "15.161845", + "0.000000100169232057014220", + "12.016446", + "0.000000100168418092684427" + ], + [ + "14.004911", + "0.000000086446066217055111", + "10.800787", + "0.000000086445309833939061" + ], + [ + "13.011943", + "0.000000075209369334916551", + "9.753505", + "0.000000075208662362715628" + ], + [ + "12.155247", + "0.000000065981339750314346", + "8.846913", + "0.000000065980675376752060" + ], + [ + "11.412325", + "0.000000058379216798388521", + "8.058515", + "0.000000058378589318164857" + ], + [ + "10.764812", + "0.000000052096256215681013", + "7.369935", + "0.000000052095660830293858" + ], + [ + "10.197642", + "0.000000046886394326072696", + "6.766084", + "0.000000046885826983552961" + ], + [ + "9.698394", + "0.000000042551959079101456", + "6.234514", + "0.000000042551416345156290" + ], + [ + "14.634242", + "0.000000112156952617579126", + "10.566627", + "0.000000112155989933844131" + ], + [ + "13.644246", + "0.000000097007292113969238", + "9.518042", + "0.000000097006389706977496" + ], + [ + "12.793335", + "0.000000084605666702718922", + "8.612954", + "0.000000084604816021716471" + ], + [ + "12.058061", + "0.000000074423482568031771", + "7.827921", + "0.000000074422676483590708" + ], + [ + "11.419369", + "0.000000066037393622379459", + "7.143881", + "0.000000066036626163710753" + ], + [ + "10.861700", + "0.000000059108211095802658", + "6.545260", + "0.000000059107477241349248" + ], + [ + "10.372278", + "0.000000053363908046029479", + "6.019260", + "0.000000053363203555854571" + ], + [ + "9.940568", + "0.000000048586004584217238", + "5.555314", + "0.000000048585325865269433" + ], + [ + "14.555394", + "0.000000124477386464779405", + "9.479675", + "0.000000124476234509769216" + ], + [ + "13.690471", + "0.000000107901231113052998", + "8.556267", + "0.000000107900142314713659" + ], + [ + "12.946004", + "0.000000094334677017884411", + "7.757729", + "0.000000094333642415423621" + ], + [ + "12.301723", + "0.000000083198338203495750", + "7.063791", + "0.000000083197350325182940" + ], + [ + "11.741151", + "0.000000074028283155969959", + "6.457967", + "0.000000074027335744071600" + ], + [ + "11.250826", + "0.000000066452878595742359", + "5.926778", + "0.000000066451966387289993" + ], + [ + "10.819691", + "0.000000060174134311757846", + "5.459142", + "0.000000060173252863104517" + ], + [ + "10.438618", + "0.000000054952762574578790", + "5.045897", + "0.000000054951908120390334" + ], + [ + "14.810576", + "0.000000137130540552131850", + "8.638325", + "0.000000137129151820444054" + ], + [ + "14.042398", + "0.000000119127890232378484", + "7.811744", + "0.000000119126567657105185" + ], + [ + "13.380275", + "0.000000104396407355539283", + "7.095632", + "0.000000104395141543750378" + ], + [ + "12.806396", + "0.000000092305913782585918", + "6.472175", + "0.000000092304696901401123" + ], + [ + "12.306273", + "0.000000082351892570463961", + "5.926874", + "0.000000082350718059083921" + ], + [ + "11.868066", + "0.000000074130265927691297", + "5.447870", + "0.000000074129128267912591" + ], + [ + "11.482044", + "0.000000067317080372481398", + "5.025405", + "0.000000067315974905072604" + ], + [ + "11.140171", + "0.000000061652240333124845", + "4.651409", + "0.000000061651163110259110" + ], + [ + "15.328851", + "0.000000150116422746607715", + "7.970068", + "0.000000150114741865862798" + ], + [ + "14.637462", + "0.000000130687277383620954", + "7.220341", + "0.000000130685665734117188" + ], + [ + "14.040707", + "0.000000114790865667287622", + "6.569660", + "0.000000114789313406640648" + ], + [ + "13.522720", + "0.000000101746217292793136", + "6.002157", + "0.000000101744716212155897" + ], + [ + "13.070596", + "0.000000091008229885834856", + "5.504912", + "0.000000091006773108631245" + ], + [ + "12.673776", + "0.000000082140381141212650", + "5.067347", + "0.000000082138962883079174" + ], + [ + "12.323585", + "0.000000074792754304874882", + "4.680758", + "0.000000074791369681594991" + ], + [ + "12.012849", + "0.000000068684445961533893", + "4.337936", + "0.000000068683090834697723" + ], + [ + "16.064237", + "0.000000163435041746562984", + "7.427897", + "0.000000163433004646014770" + ], + [ + "15.435107", + "0.000000142579401298175996", + "6.740481", + "0.000000142577436545730595" + ], + [ + "14.891357", + "0.000000125518060714352486", + "6.142857", + "0.000000125516158004048927" + ], + [ + "14.418700", + "0.000000111519257522488180", + "5.620731", + "0.000000111517408257387212" + ], + [ + "14.005506", + "0.000000099997303915313506", + "5.162460", + "0.000000099995500892629450" + ], + [ + "13.642260", + "0.000000090483233072467566", + "4.758510", + "0.000000090481470232688069" + ], + [ + "13.321138", + "0.000000082601164966382383", + "4.401024", + "0.000000082599437192557758" + ], + [ + "13.035667", + "0.000000076049388337111594", + "4.083495", + "0.000000076047691293574819" + ], + [ + "16.985741", + "0.000000177086407037035620", + "6.980130", + "0.000000177083940160899044" + ], + [ + "16.407999", + "0.000000154804271486877907", + "6.344142", + "0.000000154801880091925140" + ], + [ + "15.908004", + "0.000000136578002031165149", + "5.790313", + "0.000000136575675335947478" + ], + [ + "15.472769", + "0.000000121625044027821540", + "5.305647", + "0.000000121622773037045725" + ], + [ + "15.091719", + "0.000000109319124235205073", + "4.879556", + "0.000000109316901411020497" + ], + [ + "14.756198", + "0.000000099158831316566303", + "4.503360", + "0.000000099156650316663863" + ], + [ + "14.459083", + "0.000000090742321969780912", + "4.169908", + "0.000000090740177437874271" + ], + [ + "14.194481", + "0.000000083747077089325635", + "3.873269", + "0.000000083744964486797235" + ], + [ + "18.071787", + "0.000000191070528863972620", + "6.604705", + "0.000000191067548410507607" + ], + [ + "17.537106", + "0.000000167361898216823080", + "6.011812", + "0.000000167358996372692244" + ], + [ + "17.073780", + "0.000000147970699904376096", + "5.494683", + "0.000000147967865402309416" + ], + [ + "16.669911", + "0.000000132063587113681730", + "5.041413", + "0.000000132060810551099861" + ], + [ + "16.315806", + "0.000000118973701167498084", + "4.642294", + "0.000000118970974663755691" + ], + [ + "16.003529", + "0.000000108167186211653381", + "4.289365", + "0.000000108164503134953543" + ], + [ + "15.726544", + "0.000000099216235668545868", + "3.976063", + "0.000000099213590417478786" + ], + [ + "15.479441", + "0.000000091777522586288080", + "3.696939", + "0.000000091774910414292121" + ] + ] + }, + "1/64": { + "a_dn": "69.981331", + "a_up": "70.060722", + "beta_dn": "0.000000191067548419376344", + "beta_up": "0.000000191377355191345935", + "boxes": [ + [ + "70.060722", + "0.000000055624834740161678", + "69.981331", + "0.000000055544858078034689" + ], + [ + "63.529330", + "0.000000047600948822716754", + "63.383801", + "0.000000047527717692311131" + ], + [ + "57.824720", + "0.000000041018080842360315", + "57.618109", + "0.000000040950775078936648" + ], + [ + "52.819491", + "0.000000035601475874314565", + "52.556834", + "0.000000035539398303823140" + ], + [ + "48.409894", + "0.000000031130615453439635", + "48.096206", + "0.000000031073169292732943" + ], + [ + "44.510728", + "0.000000027428451432935141", + "44.150987", + "0.000000027375122545022497" + ], + [ + "41.051418", + "0.000000024352705171171570", + "40.650565", + "0.000000024303048055266559" + ], + [ + "37.973025", + "0.000000021788878974765568", + "37.535950", + "0.000000021742505627292780" + ], + [ + "52.153090", + "0.000000066284739409734359", + "51.364029", + "0.000000066201738980185276" + ], + [ + "47.423294", + "0.000000056834216780380717", + "46.570149", + "0.000000056758106625640699" + ], + [ + "43.288809", + "0.000000049086297105537254", + "42.376461", + "0.000000049016237797040490" + ], + [ + "39.658023", + "0.000000042715430074219234", + "38.691327", + "0.000000042650708468398782" + ], + [ + "36.456353", + "0.000000037460509237296799", + "35.440137", + "0.000000037400515194647049" + ], + [ + "33.622558", + "0.000000033112039880907309", + "32.561613", + "0.000000033056248011184929" + ], + [ + "31.105911", + "0.000000029501778415036510", + "30.004982", + "0.000000029449733681565280" + ], + [ + "28.864038", + "0.000000026494417915133441", + "27.727822", + "0.000000026445724200469343" + ], + [ + "42.421660", + "0.000000077281332759006060", + "40.908547", + "0.000000077191292617349167" + ], + [ + "38.711690", + "0.000000066403940377361315", + "37.135844", + "0.000000066321168294373120" + ], + [ + "35.464711", + "0.000000057490760816228928", + "33.830884", + "0.000000057414373251126008" + ], + [ + "32.609788", + "0.000000050165445186772860", + "30.922709", + "0.000000050094691369592433" + ], + [ + "30.089161", + "0.000000044126296387394021", + "28.353528", + "0.000000044060533833802305" + ], + [ + "27.855376", + "0.000000039131370885930850", + "26.075853", + "0.000000039070046215154541" + ], + [ + "25.869105", + "0.000000034986458226937955", + "24.050315", + "0.000000034929092046163826" + ], + [ + "24.097469", + "0.000000031535440607271891", + "22.243984", + "0.000000031481615512357542" + ], + [ + "36.622112", + "0.000000088613664370271873", + "34.330376", + "0.000000088513518989427143" + ], + [ + "33.556949", + "0.000000076309265691691325", + "31.203445", + "0.000000076216902698191907" + ], + [ + "30.870591", + "0.000000066230704102509390", + "28.459969", + "0.000000066145181440604100" + ], + [ + "28.505355", + "0.000000057950830337641981", + "26.042244", + "0.000000057871347006533933" + ], + [ + "26.414240", + "0.000000051127355130630075", + "23.903246", + "0.000000051053225209064857" + ], + [ + "24.558606", + "0.000000045485884847540585", + "22.004300", + "0.000000045416517155562941" + ], + [ + "22.906396", + "0.000000040806241068052880", + "20.313312", + "0.000000040741123147494450" + ], + [ + "21.430782", + "0.000000036911494160055495", + "18.803407", + "0.000000036850179561223387" + ], + [ + "33.001752", + "0.000000100281535017549381", + "29.859244", + "0.000000100168418096366751" + ], + [ + "30.376283", + "0.000000086550036301672608", + "27.172740", + "0.000000086445309836921234" + ], + [ + "28.071970", + "0.000000075306008701320675", + "24.811956", + "0.000000075208662365142154" + ], + [ + "26.040250", + "0.000000066071501403508713", + "22.728317", + "0.000000065980675378734830" + ], + [ + "24.241521", + "0.000000058463631983935901", + "20.882198", + "0.000000058378589319794917" + ], + [ + "22.643196", + "0.000000052175555857643262", + "19.240983", + "0.000000052095660831638847" + ], + [ + "21.218206", + "0.000000046961125906250617", + "17.777568", + "0.000000046885826984669905" + ], + [ + "19.943869", + "0.000000042622600030040462", + "16.469230", + "0.000000042551416346087020" + ], + [ + "30.720006", + "0.000000112285062966863334", + "26.645778", + "0.000000112155989938135681" + ], + [ + "28.411252", + "0.000000097126392379151413", + "24.276574", + "0.000000097006389710451596" + ], + [ + "26.382007", + "0.000000084716834329046960", + "22.191369", + "0.000000084604816024542080" + ], + [ + "24.590320", + "0.000000074527635605039539", + "20.348206", + "0.000000074422676485901232" + ], + [ + "23.001951", + "0.000000066135319897863954", + "18.712829", + "0.000000066036626165607316" + ], + [ + "21.588693", + "0.000000059200591044322798", + "17.257003", + "0.000000059107477242915651" + ], + [ + "20.327087", + "0.000000053451332681894853", + "15.957240", + "0.000000053363203557153037" + ], + [ + "19.197449", + "0.000000048668989763680328", + "14.793817", + "0.000000048585325866352788" + ], + [ + "29.328590", + "0.000000124624534465628567", + "24.236816", + "0.000000124476234514715135" + ], + [ + "27.257634", + "0.000000108038632617702556", + "22.105894", + "0.000000107900142318716224" + ], + [ + "25.434847", + "0.000000094463490806523161", + "20.227569", + "0.000000094333642418678044" + ], + [ + "23.823272", + "0.000000083319552751807197", + "18.564880", + "0.000000083197350327841856" + ], + [ + "22.392711", + "0.000000074142747681502486", + "17.087617", + "0.000000074027335746255882" + ], + [ + "21.118258", + "0.000000066561327351545574", + "15.770854", + "0.000000066451966389091294" + ], + [ + "19.979174", + "0.000000060277205714117829", + "14.593824", + "0.000000060173252864598260" + ], + [ + "18.958032", + "0.000000055051014384663057", + "13.539063", + "0.000000054951908121635253" + ], + [ + "28.568673", + "0.000000137300343051337500", + "22.370594", + "0.000000137129151826087891" + ], + [ + "26.682148", + "0.000000119287158227376425", + "20.424521", + "0.000000119126567661669614" + ], + [ + "25.019448", + "0.000000104546386226521432", + "18.706640", + "0.000000104395141547462051" + ], + [ + "23.547500", + "0.000000092447667138061897", + "17.183884", + "0.000000092304696904431418" + ], + [ + "22.239255", + "0.000000082486335239137679", + "15.829194", + "0.000000082350718061572426" + ], + [ + "21.072374", + "0.000000074258189777125214", + "14.620215", + "0.000000074129128269965397" + ], + [ + "20.028232", + "0.000000067439174640781092", + "13.538299", + "0.000000067315974906774487" + ], + [ + "19.091154", + "0.000000061769107770925926", + "12.567736", + "0.000000061651163111677148" + ], + [ + "28.281309", + "0.000000150312961830128326", + "20.886273", + "0.000000150114741872246120" + ], + [ + "26.541597", + "0.000000130872447371092388", + "19.087383", + "0.000000130685665739282003" + ], + [ + "25.006306", + "0.000000114966003310066263", + "17.497227", + "0.000000114789313410836370" + ], + [ + "23.645467", + "0.000000101912465613161281", + "16.085846", + "0.000000101744716215583540" + ], + [ + "22.434543", + "0.000000091166573175654269", + "14.828699", + "0.000000091006773111442761" + ], + [ + "21.353243", + "0.000000082291672356158328", + "13.705483", + "0.000000082138962885399054" + ], + [ + "20.384628", + "0.000000074937736641806674", + "12.699239", + "0.000000074791369683517879" + ], + [ + "19.514420", + "0.000000068823769995706479", + "11.795659", + "0.000000068683090836298517" + ], + [ + "28.363964", + "0.000000163662929638502575", + "19.680022", + "0.000000163433004653185096" + ], + [ + "26.743637", + "0.000000142795042412769638", + "18.000853", + "0.000000142577436551527304" + ], + [ + "25.311936", + "0.000000125722887620605146", + "16.514572", + "0.000000125516158008758684" + ], + [ + "24.041424", + "0.000000111714496657739755", + "15.193757", + "0.000000111517408261232369" + ], + [ + "22.909609", + "0.000000100184012644192847", + "14.015917", + "0.000000099995500895784199" + ], + [ + "21.897871", + "0.000000090662328700963268", + "12.962423", + "0.000000090481470235289275" + ], + [ + "20.990642", + "0.000000082773447601726123", + "12.017692", + "0.000000082599437194713308" + ], + [ + "20.174784", + "0.000000076215559051106513", + "11.168557", + "0.000000076047691295371150" + ], + [ + "28.747786", + "0.000000177350843646683833", + "18.682042", + "0.000000177083940168895759" + ], + [ + "27.226279", + "0.000000155055543107678038", + "17.102006", + "0.000000154801880098390647" + ], + [ + "25.880312", + "0.000000136817641276039373", + "15.701723", + "0.000000136575675341199705" + ], + [ + "24.684550", + "0.000000121854364561039691", + "14.455877", + "0.000000121622773041333030" + ], + [ + "23.618197", + "0.000000109539259939740874", + "13.343680", + "0.000000109316901414537412" + ], + [ + "22.664018", + "0.000000099370766968061704", + "12.347892", + "0.000000099156650319563209" + ], + [ + "21.807582", + "0.000000090946917412337143", + "11.454067", + "0.000000090740177440276489" + ], + [ + "21.036694", + "0.000000083945086453133976", + "10.649986", + "0.000000083744964488797573" + ], + [ + "29.384975", + "0.000000191377355191345935", + "17.843805", + "0.000000191067548419376344" + ], + [ + "27.946499", + "0.000000167654602770975686", + "16.347097", + "0.000000167358996379861656" + ], + [ + "26.672562", + "0.000000148250919415620880", + "15.019093", + "0.000000147967865408132548" + ], + [ + "25.539595", + "0.000000132332726153827470", + "13.836250", + "0.000000132060810555852461" + ], + [ + "24.528233", + "0.000000119232973469954506", + "12.779213", + "0.000000118970974667653707" + ], + [ + "23.622403", + "0.000000108417647042338123", + "11.831909", + "0.000000108164503138165146" + ], + [ + "22.808633", + "0.000000099458807348607357", + "10.980855", + "0.000000099213590420140536" + ], + [ + "22.075518", + "0.000000092013014790297838", + "10.214626", + "0.000000091774910416507030" + ] + ] + } + }, + "reference": { + "c_ref": [ + "0.000974382342936858487003", + "0.000974382390951252498046" + ], + "w_1": [ + "0.000055072225732008314613", + "0.000071725665654684234276", + "0.000090486799222976533608", + "0.000110598248420050317532", + "0.000130993101347969691838", + "0.000150373556192409094932", + "0.000167341603970229305229", + "0.000180564771308019657369", + "0.000010910380207784805729", + "0.000014209599712877265131", + "0.000017926375231541943148", + "0.000021910662308250613753", + "0.000025951094609066923566", + "0.000029790564108294805178", + "0.000033152110698780236317", + "0.000035771757558678326067", + "0.000001450277959684354656", + "0.000001888831451063350287", + "0.000002382889175281579169", + "0.000002912506257579300247", + "0.000003449586524432839865", + "0.000003959953522242633434", + "0.000004406791930967799560", + "0.000004755012252415048532", + "0.000000130518056204606857", + "0.000000169985765724917101", + "0.000000214448589825111959", + "0.000000262111585496161430", + "0.000000310446231959955266", + "0.000000356376812412003834", + "0.000000396590124732534078", + "0.000000427928282485500310", + "0.000000007994823046751804", + "0.000000010412399302874016", + "0.000000013135948987698102", + "0.000000016055523699037449", + "0.000000019016240068422821", + "0.000000021829696488376496", + "0.000000024292944298491029", + "0.000000026212548628587655", + "0.000000000334428285184978", + "0.000000000435556962694276", + "0.000000000549484693850486", + "0.000000000671612270467624", + "0.000000000795460827532927", + "0.000000000913149411816234", + "0.000000001016188558061872", + "0.000000001096486768615600", + "0.000000000009573615725922", + "0.000000000012468607388512", + "0.000000000015729995156632", + "0.000000000019226118361115", + "0.000000000022771507749746", + "0.000000000026140556754177", + "0.000000000029090239046562", + "0.000000000031388920842856", + "0.000000000000187816439773", + "0.000000000000244610763131", + "0.000000000000308593092991", + "0.000000000000377180493203", + "0.000000000000446734403831", + "0.000000000000512828845842", + "0.000000000000570696097095", + "0.000000000000615791935858", + "0.000000000000002527430937", + "0.000000000000003291707643", + "0.000000000000004152712782", + "0.000000000000005075687988", + "0.000000000000006011669448", + "0.000000000000006901097112", + "0.000000000000007679812124", + "0.000000000000008286663250", + "0.000000000000000023344494", + "0.000000000000000030403699", + "0.000000000000000038356332", + "0.000000000000000046881348", + "0.000000000000000055526495", + "0.000000000000000063741651", + "0.000000000000000070934214", + "0.000000000000000076539366", + "0.000000000000000000148059", + "0.000000000000000000192831", + "0.000000000000000000243269", + "0.000000000000000000297337", + "0.000000000000000000352168", + "0.000000000000000000404271", + "0.000000000000000000449888", + "0.000000000000000000485438", + "0.000000000000000000000645", + "0.000000000000000000000841", + "0.000000000000000000001060", + "0.000000000000000000001296", + "0.000000000000000000001535", + "0.000000000000000000001762", + "0.000000000000000000001960", + "0.000000000000000000002115" + ], + "w_2": [ + "0.000067357041457978496710", + "0.000087725320175242721206", + "0.000110671450184723516636", + "0.000135269107158663425342", + "0.000160213385984075326208", + "0.000183916987628645735000", + "0.000204670052943151902947", + "0.000220842877243217680917", + "0.000012480071284513238074", + "0.000016253953937789742233", + "0.000020505466949991795650", + "0.000025062978767940149912", + "0.000029684713498912960057", + "0.000034076572639705188104", + "0.000037921749459990209513", + "0.000040918288437472584487", + "0.000001568850135268957891", + "0.000002043258988880962033", + "0.000002577710003801673404", + "0.000003150627647385231209", + "0.000003731618652369441778", + "0.000004283712358409746206", + "0.000004767083489640628746", + "0.000005143773692203465084", + "0.000000134585515497968118", + "0.000000175283195081764508", + "0.000000221131656789156899", + "0.000000270280020081585372", + "0.000000320120965464222208", + "0.000000367482924621576440", + "0.000000408949442940352361", + "0.000000441264221742511207", + "0.000000007905272142165546", + "0.000000010295768857017615", + "0.000000012988811758072333", + "0.000000015875683987458209", + "0.000000018803237042589924", + "0.000000021585179623407006", + "0.000000024020836320081512", + "0.000000025918938947988783", + "0.000000000318566780447734", + "0.000000000414899054457556", + "0.000000000523423339411725", + "0.000000000639758561671069", + "0.000000000757733140482692", + "0.000000000869839906122589", + "0.000000000967992037786333", + "0.000000001044481807177897", + "0.000000000008818027145923", + "0.000000000011484534325527", + "0.000000000014488520144051", + "0.000000000017708715126302", + "0.000000000020974288005645", + "0.000000000024077437999078", + "0.000000000026794319402169", + "0.000000000028911579908529", + "0.000000000000167781567263", + "0.000000000000218517491105", + "0.000000000000275674657933", + "0.000000000000336945660173", + "0.000000000000399080072626", + "0.000000000000458124047059", + "0.000000000000509818446763", + "0.000000000000550103794061", + "0.000000000000002195351872", + "0.000000000000002859210288", + "0.000000000000003607087991", + "0.000000000000004408793516", + "0.000000000000005221796403", + "0.000000000000005994362198", + "0.000000000000006670761870", + "0.000000000000007197878848", + "0.000000000000000019758531", + "0.000000000000000025733367", + "0.000000000000000032464390", + "0.000000000000000039679873", + "0.000000000000000046997034", + "0.000000000000000053950254", + "0.000000000000000060037963", + "0.000000000000000064782103", + "0.000000000000000000122335", + "0.000000000000000000159328", + "0.000000000000000000201002", + "0.000000000000000000245677", + "0.000000000000000000290981", + "0.000000000000000000334031", + "0.000000000000000000371723", + "0.000000000000000000401096", + "0.000000000000000000000522", + "0.000000000000000000000679", + "0.000000000000000000000857", + "0.000000000000000000001047", + "0.000000000000000000001240", + "0.000000000000000000001423", + "0.000000000000000000001584", + "0.000000000000000000001709" + ], + "w_c": [ + "0.000045046819641765067078", + "0.000058668649786460677463", + "0.000074014486801265276341", + "0.000090464826562793308546", + "0.000107146978940926460273", + "0.000122999395333195580416", + "0.000136878561787077810595", + "0.000147694569788223813659", + "0.000009540629681309499282", + "0.000012425646604274389049", + "0.000015675797209185017634", + "0.000019159874465794437714", + "0.000022693048159135082801", + "0.000026050489051862086196", + "0.000028990008167191033901", + "0.000031280769818949036624", + "0.000001340902360601656364", + "0.000001746381467495193508", + "0.000002203178845028181185", + "0.000002692853800870811190", + "0.000003189429090350643377", + "0.000003661305745143961928", + "0.000004074444945851023964", + "0.000004396403538629823736", + "0.000000126588892106452475", + "0.000000164868451022983536", + "0.000000207992749732613525", + "0.000000254220880858120023", + "0.000000301100443151147455", + "0.000000345648312329618147", + "0.000000384651028142413091", + "0.000000415045770341042350", + "0.000000008086088401525934", + "0.000000010531262636167276", + "0.000000013285903156495399", + "0.000000016238806438118515", + "0.000000019233321032712550", + "0.000000022078894623591346", + "0.000000024570261778433345", + "0.000000026511779460356239", + "0.000000000351101704606217", + "0.000000000457272302701554", + "0.000000000576880070294356", + "0.000000000705096498835938", + "0.000000000835119709864864", + "0.000000000958675833509449", + "0.000000001066852149600662", + "0.000000001151153746837418", + "0.000000000010394435689024", + "0.000000000013537637329714", + "0.000000000017078649041820", + "0.000000000020874521870881", + "0.000000000024723884854283", + "0.000000000028381788431394", + "0.000000000031584369751660", + "0.000000000034080135279037", + "0.000000000000210251121360", + "0.000000000000273829529018", + "0.000000000000345454550856", + "0.000000000000422234718893", + "0.000000000000500096847054", + "0.000000000000574086272927", + "0.000000000000638865769764", + "0.000000000000689348308352", + "0.000000000000002909820485", + "0.000000000000003789729005", + "0.000000000000004781000559", + "0.000000000000005843617986", + "0.000000000000006921209459", + "0.000000000000007945203746", + "0.000000000000008841735025", + "0.000000000000009540400145", + "0.000000000000000027581849", + "0.000000000000000035922399", + "0.000000000000000045318546", + "0.000000000000000055390972", + "0.000000000000000065605336", + "0.000000000000000075311658", + "0.000000000000000083809773", + "0.000000000000000090432338", + "0.000000000000000000179195", + "0.000000000000000000233382", + "0.000000000000000000294428", + "0.000000000000000000359867", + "0.000000000000000000426228", + "0.000000000000000000489288", + "0.000000000000000000544499", + "0.000000000000000000587525", + "0.000000000000000000000799", + "0.000000000000000000001040", + "0.000000000000000000001312", + "0.000000000000000000001604", + "0.000000000000000000001899", + "0.000000000000000000002180", + "0.000000000000000000002426", + "0.000000000000000000002618" + ] + }, + "tv_law_torus": { + "C_a11_a11": { + "c": [ + "2.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000008516941419262891848", + "0.000000000044831089116420169177", + "0.000000000133623535742009776180", + "0.000000000385101911407162765737" + ], + "rem_r9": "0.000411313495669015593094214974" + }, + "C_a11_a12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000001354967952919135478", + "0.000000000003876776237095731666", + "0.000000000010538240846075666984", + "0.000000000028646100094031801484" + ], + "rem_r9": "0.000000012069775901299935523603" + }, + "C_a11_a22": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000004645604411168991511", + "0.000000000034307633727310371922", + "0.000000000105017626957769716316", + "0.000000000307342469558900767413" + ], + "rem_r9": "0.000411280732446237253212168381" + }, + "C_a11_o11": { + "c": [ + "0.000000000000000000000000000000", + "-1.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.250000000000000000000000000000" + ], + "rad": [ + "0.000000000049553113717135860899", + "0.000000000150959844493497510892", + "0.000000000449744999475897242338", + "0.000000001243737402561865513112" + ], + "rem_r9": "0.004171150606477495395280786006" + }, + "C_a11_o12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000002709935905869069754", + "0.000000000007753552474371118693", + "0.000000000021076481692913622517", + "0.000000000057292200190890063851" + ], + "rem_r9": "0.000000024139553992648450736014" + }, + "C_a11_o22": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000041810439700948060224", + "0.000000000129912933715277916381", + "0.000000000392533181907417122608", + "0.000000001088218518865341516464" + ], + "rem_r9": "0.003650241150132522934631188232" + }, + "C_a12_a12": { + "c": [ + "1.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000000774267401647536854", + "0.000000000002104691077978298597", + "0.000000000005721181757494408484", + "0.000000000015551888372011384780" + ], + "rem_r9": "0.000000006552644558196390387640" + }, + "C_a12_o11": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000015485348036897404618", + "0.000000000042093821581022424676", + "0.000000000125360162290013731905", + "0.000000000340766529257500133192" + ], + "rem_r9": "0.000000144393976871017368063659" + }, + "C_a12_o12": { + "c": [ + "0.000000000000000000000000000000", + "-0.500000000000000000000000000000", + "0.000000000000000000000000000000", + "0.125000000000000000000000000000" + ], + "rad": [ + "0.000000000001548534803305339975", + "0.000000000004209382156012410776", + "0.000000000011442363515219054303", + "0.000000000031103776744862062637" + ], + "rem_r9": "0.000260435070238825180733237413" + }, + "C_a12_o22": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000015485348036897404618", + "0.000000000042093821581022424676", + "0.000000000125360162290013731905", + "0.000000000340766529257500133192" + ], + "rem_r9": "0.000000144393976871017368063659" + }, + "C_a22_a12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000001354967952919135478", + "0.000000000003876776237095731666", + "0.000000000010538240846075666984", + "0.000000000028646100094031801484" + ], + "rem_r9": "0.000000012069775901299935523603" + }, + "C_a22_a22": { + "c": [ + "2.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000008516941419262891848", + "0.000000000044831089116420169177", + "0.000000000133623535742009776180", + "0.000000000385101911407162765737" + ], + "rem_r9": "0.000411313495669015593094214974" + }, + "C_a22_o11": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000041810439700948060224", + "0.000000000129912933715277916381", + "0.000000000392533181907417122608", + "0.000000001088218518865341516464" + ], + "rem_r9": "0.003650241150132522934631188232" + }, + "C_a22_o12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000002709935905869069754", + "0.000000000007753552474371118693", + "0.000000000021076481692913622517", + "0.000000000057292200190890063851" + ], + "rem_r9": "0.000000024139553992648450736014" + }, + "C_a22_o22": { + "c": [ + "0.000000000000000000000000000000", + "-1.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.250000000000000000000000000000" + ], + "rad": [ + "0.000000000049553113717135860899", + "0.000000000150959844493497510892", + "0.000000000449744999475897242338", + "0.000000001243737402561865513112" + ], + "rem_r9": "0.004171150606477495395280786006" + }, + "C_o11_o11": { + "c": [ + "2.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-0.500000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000113043040668378935699", + "0.000000000307284897536178683347", + "0.000000000929172459697033601668", + "0.000000002525769497950771802147" + ], + "rem_r9": "0.000431389396173965743806347216" + }, + "C_o11_o12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000005419871811811427162", + "0.000000000014732837547363103059", + "0.000000000040048272308806138670", + "0.000000000108863218627381773923" + ], + "rem_r9": "0.000000045868513715345657953746" + }, + "C_o11_o22": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000097557692636003334350", + "0.000000000265191075979739494325", + "0.000000000814748824560073362209", + "0.000000002214731730557723808852" + ], + "rem_r9": "0.000429901982824299097600240248" + }, + "C_o12_o12": { + "c": [ + "1.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-0.250000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000003097069606635109167", + "0.000000000008418764312157633438", + "0.000000000022884727030986911247", + "0.000000000062207553491726378115" + ], + "rem_r9": "0.000000704390807513368800601435" + }, + "C_o22_o12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000005419871811811427162", + "0.000000000014732837547363103059", + "0.000000000040048272308806138670", + "0.000000000108863218627381773923" + ], + "rem_r9": "0.000000045868513715345657953746" + }, + "C_o22_o22": { + "c": [ + "2.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-0.500000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000113043040668378935699", + "0.000000000307284897536178683347", + "0.000000000929172459697033601668", + "0.000000002525769497950771802147" + ], + "rem_r9": "0.000431389396173965743806347216" + }, + "alpha_a11": { + "c": [ + "-1.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000002032451929933830965", + "0.000000000006395864910094054305", + "0.000000000019442527377403441550", + "0.000000000053939435722330911502" + ], + "rem_r9": "0.000284937786222106057603528901" + }, + "alpha_a12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000000677483976645147365", + "0.000000000001841604694337645433", + "0.000000000005562538737502284968", + "0.000000000015120649055510763585" + ], + "rem_r9": "0.000000006412564956864632848607" + }, + "alpha_a22": { + "c": [ + "-1.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000002032451929933830965", + "0.000000000006395864910094054305", + "0.000000000019442527377403441550", + "0.000000000053939435722330911502" + ], + "rem_r9": "0.000284937786222106057603528901" + }, + "alpha_o11": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000005226304962545706960", + "0.000000000014206664784099763680", + "0.000000000043795890145184239818", + "0.000000000119050368220374517148" + ], + "rem_r9": "0.000000050647970465188662390848" + }, + "alpha_o12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000001742101654182976407", + "0.000000000004735554928039093938", + "0.000000000014372802056184604585", + "0.000000000039069587841995820448" + ], + "rem_r9": "0.000000016574913498725381153073" + }, + "alpha_o22": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000005226304962545706960", + "0.000000000014206664784099763680", + "0.000000000043795890145184239818", + "0.000000000119050368220374517148" + ], + "rem_r9": "0.000000050647970465188662390848" + }, + "beta_a11": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000076652472786113357380", + "0.000000000238560845518228354214", + "0.000000000701323696776831785026", + "0.000000001939362961907563106298" + ], + "rem_r9": "0.005214990260300554012323687459" + }, + "beta_a12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000025550824262056669729", + "0.000000000069454805615080181951", + "0.000000000202155110852267641281", + "0.000000000549856980010719068585" + ], + "rem_r9": "0.000000232714439212334848604983" + }, + "beta_a22": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000076652472786113357380", + "0.000000000238560845518228354214", + "0.000000000701323696776831785026", + "0.000000001939362961907563106298" + ], + "rem_r9": "0.005214990260300554012323687459" + }, + "beta_o11": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "1.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000181178572040001416642", + "0.000000000492497712543095840062", + "0.000000001465349252683660429117", + "0.000000003985872027446272687455" + ], + "rem_r9": "0.000647949763528107897281975568" + }, + "beta_o12": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000060392857346704906752", + "0.000000000164165904181237275493", + "0.000000000477610007269116820230", + "0.000000001299158334042653772086" + ], + "rem_r9": "0.000000549834408249809419984461" + }, + "beta_o22": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "1.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000181178572040001416642", + "0.000000000492497712543095840062", + "0.000000001465349252683660429117", + "0.000000003985872027446272687455" + ], + "rem_r9": "0.000647949763528107897281975568" + }, + "det": { + "c": [ + "12.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-24.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000004059096853070345487039", + "0.000000011033842975937704142365", + "0.000000037230856682343600262804", + "0.000000101204637721791950237849" + ], + "rem_r9": "0.084691439869118210112789986365" + }, + "e_bb": { + "c": [ + "1.500000000000000000000000000000", + "0.000000000000000000000000000000", + "0.125000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000000004693996124153740517", + "0.000000000012759689669298355346", + "0.000000000041217545645908047904", + "0.000000000112041654374669984501" + ], + "rem_r9": "0.000454381808974259510701588272" + }, + "e_bk": { + "c": [ + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-0.750000000000000000000000000000" + ], + "rad": [ + "0.000000000207890797404159721757", + "0.000000000565109554773133722560", + "0.000000001658665119622304390162", + "0.000000004511096394298263714954" + ], + "rem_r9": "0.000001923137705965183959203919" + }, + "e_kk": { + "c": [ + "24.000000000000000000000000000000", + "0.000000000000000000000000000000", + "-6.000000000000000000000000000000", + "0.000000000000000000000000000000" + ], + "rad": [ + "0.000000007832489037405072732901", + "0.000000021291054957542446554332", + "0.000000066084257706027554262454", + "0.000000179844728582176189711284" + ], + "rem_r9": "0.005874909563534531616655974883" + } + } + } + }, + "mutant": null, + "object": "CL-C8-TORUS-VANISHING-REMAINDER-20261001-v1", + "parameters": { + "E_UP": "27183/10000", + "L_min": 10, + "MARKOV_P": 64, + "R0_COUPLING": "12", + "R_STARS": [ + "1/4096", + "1/2048", + "1/1024", + "1/512", + "1/256", + "1/128", + "1/64" + ], + "SUB_B": [ + [ + "0", + "1/8" + ], + [ + "1/8", + "1/4" + ], + [ + "1/4", + "3/8" + ], + [ + "3/8", + "1/2" + ], + [ + "1/2", + "5/8" + ], + [ + "5/8", + "3/4" + ], + [ + "3/4", + "7/8" + ], + [ + "7/8", + "1" + ] + ], + "SUB_K": [ + [ + "1/2", + "5/8" + ], + [ + "5/8", + "3/4" + ], + [ + "3/4", + "7/8" + ], + [ + "7/8", + "1" + ], + [ + "1", + "9/8" + ], + [ + "9/8", + "5/4" + ], + [ + "5/4", + "11/8" + ], + [ + "11/8", + "3/2" + ], + [ + "3/2", + "13/8" + ], + [ + "13/8", + "7/4" + ], + [ + "7/4", + "15/8" + ], + [ + "15/8", + "2" + ] + ], + "TV": { + "N": 8, + "P": 288, + "s": 6 + }, + "band": { + "b": [ + "0", + "1" + ], + "k": [ + "1/2", + "2" + ] + } + }, + "schema": 1, + "scientific_effect": "NONE" +} diff --git a/frontiers/c8_torus_vanishing_remainder_20261001/SOURCE_FILES.json b/frontiers/c8_torus_vanishing_remainder_20261001/SOURCE_FILES.json new file mode 100644 index 000000000..a6c4c960e --- /dev/null +++ b/frontiers/c8_torus_vanishing_remainder_20261001/SOURCE_FILES.json @@ -0,0 +1,53 @@ +{ + "object": "CL-C8-TORUS-VANISHING-REMAINDER-20261001-v1", + "files": [ + { + "path": "NOTE.md", + "bytes": 23886, + "sha256": "5ac08f6418750db3b1d0c156f8ed37b2eda904e3b0a9ac08bd7a842b4f23e2d8", + "git_blob": "8758ddf22870302db178f66d8265d946179e0705" + }, + { + "path": "README.md", + "bytes": 1219, + "sha256": "604355ec86f604510bdc30757f1f372bb36193098811ae0e251d60ec06f89f24", + "git_blob": "c7aed0099859a5fa6fa6e4774e9c40d4ce8b6ab7" + }, + { + "path": "RESULTS.json", + "bytes": 405837, + "sha256": "395171fac7e6656c8fa4e6ef518633f99e0921d2d83bf7317608fe0cd73983a6", + "git_blob": "70681a5db9072486d83278bfee07de9c8dcb8773" + }, + { + "path": "SOURCE_MAP.json", + "bytes": 7411, + "sha256": "5d249d94e292413ac0cf7d4e3270a0c39d3284b2159cfc0253e111110a26e616", + "git_blob": "ffc6bbafbcb3c05140f021600c8ba9e5b806705e" + }, + { + "path": "engine_e2.py", + "bytes": 52864, + "sha256": "c5ea8bf87c54761866315f28f6c93c6ce5c1e0f99d47c5a03f14d095d06871cc", + "git_blob": "ae279e9015483a666ece8deb2544cbc458a5e270" + }, + { + "path": "engine_e3.py", + "bytes": 76209, + "sha256": "310d4ab3d3a38a377d753753f3b814591a9090a947f87d6843ab7389389572d3", + "git_blob": "267890232119b35206be7a8cc74d730de9a68644" + }, + { + "path": "theorem_b.py", + "bytes": 53141, + "sha256": "1e510cc385b2ed6502e2864cfdbd60514d92ed4217b035083dbf822d6e1543a1", + "git_blob": "36b39dbd33ef2e6d277ce1c3820b3f0d6659d779" + }, + { + "path": "theorem_v.py", + "bytes": 41036, + "sha256": "1a3bc1c82bab6ea2b5a96cd7ad395fc3c6a7d4bbedd2cee12cda5812d4e8699d", + "git_blob": "5fd6b75df48940f293f0c112c1005418dcd75bde" + } + ] +} diff --git a/frontiers/c8_torus_vanishing_remainder_20261001/SOURCE_MAP.json b/frontiers/c8_torus_vanishing_remainder_20261001/SOURCE_MAP.json new file mode 100644 index 000000000..ffc6bbafb --- /dev/null +++ b/frontiers/c8_torus_vanishing_remainder_20261001/SOURCE_MAP.json @@ -0,0 +1,131 @@ +{ + "schema": 1, + "object": "CL-C8-TORUS-VANISHING-REMAINDER-20261001-v1", + "scientific_effect": "NONE", + "certified": true, + "review_status": "AUTHOR_SIDE_THEOREM_WITH_CERTIFIED_CONSTANTS", + "source_repository": "d6g8k5htny-coder/Math-", + "main_at_creation": "c2f1270d28192b3c06dd31f728ebf04d03d4246e", + "delivered_under": "explicit owner instructions of Dylan Roy in Claude Code session session_015wNj8LPTKXsaT68G3DgPPh, given after OWNER_STOP (2026-09-27): 2026-09-28 \"you have my full permisions and approval to make the proper changes and uploads\"; 2026-09-30 \"Work on closing as many mathematical items as possible while working with and supporting the other models in the GitHub. Also advance the mathematics in every place that's justified based on what we currently know. Ultra tokens, ultra depth @GitHub @Superpowers\" (repeated 2026-09-30 as \"Continue to Work on closing ...\"). Pull requests only, never merged by their author; no register, GRAPH, STATUS, lemma_closed, prize or premise edits. OWNER_STOP.md addresses Cursor agents and automations and is untouched.", + "note": "current_required sources ([LP], [CAP] and the mandatory parent amendments [E1], [E2], [REC]) are verified on the tree by the workflow; packet_copy sources ([B], [E], [E3]) are verified against the packet copies byte for byte; [B-NOTE] and [B-RESULTS] are read-only provenance pinned by identity", + "sources": [ + { + "path": "imports/lifetime_parent_20260925/UNIFORM_MATRIX_CAP_AND_LIFETIME.md", + "bytes": 40261, + "sha256": "9350ad6eaba6626b93c3dedeef9e2ff816e5cdf1c8318e85fb27499141c84bc7", + "git_blob": "dfed3b8d318a3ab1950957f393307733a4bef3f2", + "id": "LP", + "commit": "c2f1270d28192b3c06dd31f728ebf04d03d4246e", + "current_required": true, + "on_main": true, + "role": "sections 1, 3, 8-12: the model, the preconditioned pins, the radial ledger A_r = 12 pi_r Z_r / r^2 (10.2) and its limit A_0 (10.3), the lifetime pushforward (11.1)-(11.3); section 11 records that A_r -> A_0 was not assigned a numerical rate. Consumed as statements, as in Math-#215" + }, + { + "path": "imports/lifetime_parent_20260925/MARKED_CYLINDER_CAP_PROOF.md", + "bytes": 15160, + "sha256": "0bf922b9203c29088b12388807aa0e2ecd020485eb0f6e919679841b5b2636fc", + "git_blob": "0633aca3c2a2882b0de4399da0a75d64c2e6b2e1", + "id": "CAP", + "commit": "6f74f7a77bae15d6aa07506bab38977e34dcc449", + "current_required": true, + "on_main": true, + "role": "section 1: the marked-cylinder good event G_r and the cap criterion; part of the corrected parent P + CAP + E1 + E2 + REC that every scope of Corollary L'1 retains (review C63), and through [B] and [E], [E3] the cap route behind the elder line's C_{B,K}" + }, + { + "path": "imports/lifetime_parent_20260925/ERRATUM_CONGRUENCE.md", + "bytes": 1782, + "sha256": "bad7ef609c4ad8c41ad6af562c1b6807921e19a9d556ed793ad1a0db6e202028", + "git_blob": "213594d6ca6a86fb938110f4d166d9ce275a02d0", + "id": "E1", + "commit": "6f74f7a77bae15d6aa07506bab38977e34dcc449", + "current_required": true, + "on_main": true, + "role": "mandatory erratum to [LP]: the preconditioning congruence is diag(r^(-1/2), I) (corrected parent P + CAP + E1 + E2 + REC; review C61)" + }, + { + "path": "reviews/d1_section9_borel_repair_20260925/REPAIR.md", + "bytes": 9062, + "sha256": "845abf9f9c99d672c2a10a887b5a2e7206a3d2de3d876f35f75ff6e2dc13e62f", + "git_blob": "fe9b9ce4999908bb3814b500ee2d0ceb0c6f704a", + "id": "E2", + "commit": "6f74f7a77bae15d6aa07506bab38977e34dcc449", + "current_required": true, + "on_main": true, + "role": "mandatory repair of [LP] section 9: the marked Kac-Rice identity for the Borel elder indicator (replaces LP section 9 wherever sections 9-11 are consumed)" + }, + { + "path": "reviews/d1_chain_reconciliation_20260928/RECONCILIATION.md", + "bytes": 23312, + "sha256": "451b9d7ffee072a73fc904cab891b6693e3f233808b89df10cce1b57036b65da", + "git_blob": "75da2597971510f843f8d90c743950cb8c177342", + "id": "REC", + "commit": "6f74f7a77bae15d6aa07506bab38977e34dcc449", + "current_required": true, + "on_main": true, + "role": "chain reconciliation and reading rule for the parent: consumers cite P + CAP + E1 + E2 + REC; embedding condition r < L/(4 sqrt 2), met by r <= 1/64, L >= 10" + }, + { + "path": "frontiers/c8_lifetime_difference_constant_20261001/theorem_b.py", + "bytes": 53141, + "sha256": "1e510cc385b2ed6502e2864cfdbd60514d92ed4217b035083dbf822d6e1543a1", + "git_blob": "36b39dbd33ef2e6d277ce1c3820b3f0d6659d779", + "id": "B", + "commit": "1aa250df3020dd71db8b091d1d4516bc5054e2b8", + "pull_request": 215, + "packet_copy": "theorem_b.py", + "current_required": false, + "on_main": false, + "role": "Math-#215 Theorem L certificate: the Taylor-model law (tm_law), the second-order term bounds of bounds_d2/bounds_d3 (reproduced in theorem_v.py with the new increments), the reference integrals (reference, b_cells, k_integral, K_const) and eps_0; carried byte for byte and used as a library" + }, + { + "path": "frontiers/c8_lifetime_difference_constant_20261001/NOTE.md", + "bytes": 31488, + "sha256": "dfb4f7053354a9616239c833c6e7d05799a2e391c42e0ea6e90dde691a4db830", + "git_blob": "2e6a364297e19a6d3224dc78a225d75e58828452", + "id": "B-NOTE", + "commit": "d77cabf4fee5d36de2a85a810359c1c8812fc28c", + "pull_request": 215, + "current_required": false, + "on_main": false, + "role": "read-only provenance: Theorem L and Corollary L1 with the r-independent eps_d, sections 2-5 (exact expansions, first-order cancellations, Hoelder bounds, Loewner coupling), whose algebra theorem_v.py reuses" + }, + { + "path": "frontiers/c8_lifetime_difference_constant_20261001/RESULTS.json", + "bytes": 463344, + "sha256": "77703dbdd7969ab62c179aa49391c6cddb545d37e0d59654476a09166a0b938f", + "git_blob": "894fae2e48e67dd1f21ab2ffffaf7050260cfbc1", + "id": "B-RESULTS", + "commit": "d77cabf4fee5d36de2a85a810359c1c8812fc28c", + "pull_request": 215, + "current_required": false, + "on_main": false, + "role": "read-only comparison: Theorem L a(R) and eps_d, Corollary L1 ratios, which theorem_v.py reproduces (a) and removes (eps)" + }, + { + "path": "frontiers/c8_theorem_a_constants_planar_20260930/theorem_a.py", + "bytes": 52864, + "sha256": "c5ea8bf87c54761866315f28f6c93c6ce5c1e0f99d47c5a03f14d095d06871cc", + "git_blob": "ae279e9015483a666ece8deb2544cbc458a5e270", + "id": "E", + "commit": "13f932c2f6ec07d8c4c9996bd030ab22eaa32108", + "pull_request": 206, + "packet_copy": "engine_e2.py", + "current_required": false, + "on_main": false, + "role": "the planar engine of Math-#206 (as carried by Math-#215): exact covariance series pair_series, the truncation tail (NOTE 2(b)) and the torus remainder M_1 with its coefficient majorant (NOTE 2(c)), interval band laws, transcendentals" + }, + { + "path": "frontiers/c8_theorem_a_constants_d3_20261001/theorem_a3.py", + "bytes": 76209, + "sha256": "310d4ab3d3a38a377d753753f3b814591a9090a947f87d6843ab7389389572d3", + "git_blob": "267890232119b35206be7a8cc74d730de9a68644", + "id": "E3", + "commit": "250b90722e8c47adf8f7e7c41a61e8a8085d9741", + "pull_request": 212, + "packet_copy": "engine_e3.py", + "current_required": false, + "on_main": false, + "role": "the d = 3 engine of Math-#212 (as carried by Math-#215): exact 3D covariance series, band laws, contact moments E[det^a tr^c 1{B > 0}], Frobenius moment bounds" + } + ] +} diff --git a/frontiers/c8_torus_vanishing_remainder_20261001/engine_e2.py b/frontiers/c8_torus_vanishing_remainder_20261001/engine_e2.py new file mode 100644 index 000000000..ae279e901 --- /dev/null +++ b/frontiers/c8_torus_vanishing_remainder_20261001/engine_e2.py @@ -0,0 +1,1249 @@ +#!/usr/bin/env python3 +"""Explicit constants for Theorem A of [LP] in the plane (d = 2), for the torus kernel K_L with L >= 10 in every frame: +for 0 < r <= r_*, b in [0, 1], k in [1/2, 2], + + 1 - p_r(b, k, R) <= Q^W(G_r^c) <= C(r_*) r^3, + +with G_r the good event of [LP] section 7 / [CAP] (1) and C(r_*) certified here (NOTE.md Theorem E); the same at the single +fixed-axis SIDE24 point (b, k) = (6/5, 1/6) of [CAP] section 1 (Theorem E'). The proof bounds +Q^W(G_r^c) = E_Q[W_r 1{G_r^c}] / Z_r from above by an exact Gaussian regression near r = 0: + + * covariances of the preconditioned pin and target functionals are exact power series in r, obtained from the Taylor + coefficients of the kernel at 0 (every negative power cancels identically, checked); the torus remainder is bounded + uniformly in r and in the frame by Cauchy estimates on a polydisc; + * the failure event is reduced to {lambda <= (4/(3k)) r M_3^2} u {r M_4 > 3k/10}; M_3 is bounded through exact averaging + identities of the pinned jets and M_4 through the Taylor series at the midpoint; + * the main term is integrated in lambda = -f_yy(M) against its Gaussian density after an exact regression on w = f_yy(M); + the remaining expectations are closed-form incomplete Gaussian moments plus Hoelder-controlled perturbations; + * the normalizer Z_r is bounded below in closed form; the rare branches are Gaussian tails. +All arithmetic is exact rational interval arithmetic (outward rounding to 2^-160); standard library only. +""" +import argparse +import json +import math +import multiprocessing +import os +import sys +from fractions import Fraction as Fr + +HERE = os.path.dirname(os.path.abspath(__file__)) +MUTANTS = ('no-delta', 'cap-half', 'no-zfloor-correction', 'no-om-term') +MUT = None +PBITS = 160 +L_MIN = 10 +NX = 60 # Taylor order in x of the covariance series (exact); the rest is a bounded tail +NB = 24 # truncation order of the Taylor tails of the 4-jets at the midpoint (the rest is bounded) +X0 = Fr(1, 64) # default threshold for the quadratic near-branch analysis (records use COMBOS) +THETA = Fr(1, 32) # default splitting parameter in the max-moment lemma (records use COMBOS) +THETA_E = Fr(1, 16) # splitting parameter for the (r nu + v)^2 factor +QS = (2, 4, 8, 16) # Hoelder exponents of the rare branches: E[W 1_E] <= ||W||_q P(E)^(1 - 1/q), smallest bound used +R_STARS = (Fr(1, 4096), Fr(1, 2048), Fr(1, 1024), Fr(1, 512), Fr(1, 256), Fr(1, 128), Fr(1, 64)) +BAND_B = (Fr(0), Fr(1)) +BAND_K = (Fr(1, 2), Fr(2)) + + +def require(cond, msg): + if not cond: + print(json.dumps({'check': 'FAIL', 'reason': msg, 'mutant': MUT})) + sys.exit(1) + + +# ----------------------------------------------------------------------------- rational intervals (from Math-#195 / #203) +def rdown(x): + return Fr(x.numerator * (1 << PBITS) // x.denominator, 1 << PBITS) + + +def rup(x): + return Fr(-((-x.numerator) * (1 << PBITS) // x.denominator), 1 << PBITS) + + +class IV: + __slots__ = ('lo', 'hi') + + def __init__(self, lo, hi=None): + lo = Fr(lo) + hi = lo if hi is None else Fr(hi) + if hi < lo: + raise ValueError('empty interval') + self.lo, self.hi = rdown(lo), rup(hi) + + def __repr__(self): + return 'IV(%s, %s)' % (float(self.lo), float(self.hi)) + + def __add__(self, o): + o = o if isinstance(o, IV) else IV(o) + return IV(self.lo + o.lo, self.hi + o.hi) + __radd__ = __add__ + + def __neg__(self): + return IV(-self.hi, -self.lo) + + def __sub__(self, o): + return self + (-(o if isinstance(o, IV) else IV(o))) + + def __rsub__(self, o): + return IV(o) - self + + def __mul__(self, o): + o = o if isinstance(o, IV) else IV(o) + c = (self.lo * o.lo, self.lo * o.hi, self.hi * o.lo, self.hi * o.hi) + return IV(min(c), max(c)) + __rmul__ = __mul__ + + def inv(self): + if self.lo <= 0 <= self.hi: + raise ZeroDivisionError('interval contains zero') + return IV(1 / self.hi, 1 / self.lo) + + def __truediv__(self, o): + o = o if isinstance(o, IV) else IV(o) + return self * o.inv() + + def __rtruediv__(self, o): + return IV(o) * self.inv() + + def sq(self): + if self.lo >= 0: + return IV(self.lo * self.lo, self.hi * self.hi) + if self.hi <= 0: + return IV(self.hi * self.hi, self.lo * self.lo) + return IV(0, max(self.lo * self.lo, self.hi * self.hi)) + + def meet(self, o): + lo, hi = max(self.lo, o.lo), min(self.hi, o.hi) + if hi < lo: + raise ValueError('inconsistent enclosures') + return IV(lo, hi) + + def width(self): + return self.hi - self.lo + + def mid(self): + return (self.lo + self.hi) / 2 + + def contains(self, x): + return self.lo <= x <= self.hi + + +def isqrt_iv(x): + """Enclosure of sqrt(x) for an interval x with x.lo > 0.""" + if x.lo <= 0: + raise ValueError('sqrt of interval reaching zero: %r' % x) + + def lo_root(v): + n = v.numerator * (1 << (2 * PBITS)) // v.denominator + s = math.isqrt(n) + return Fr(s, 1 << PBITS) + + def hi_root(v): + n = -((-v.numerator * (1 << (2 * PBITS))) // v.denominator) + s = math.isqrt(n) + 1 + return Fr(s, 1 << PBITS) + return IV(lo_root(x.lo), hi_root(x.hi)) + + +def exp_neg_point(t): + """Enclosure of exp(-t) for a rational t >= 0: halve t to t <= 1/2, evaluate the alternating series in fixed point + (ulp = 2^-(PBITS+40)) with an integer bound on the accumulated rounding error, then square back.""" + t = Fr(t) + m = 0 + while t > Fr(1, 2): + t /= 2 + m += 1 + P2 = PBITS + 40 + ONE = 1 << P2 + X = t.numerator * ONE // t.denominator # X / ONE <= t < (X + 1) / ONE + # series at x_lo = X / ONE: exp(-x_lo) = sum (-1)^n x_lo^n / n! (alternating, terms decreasing for x_lo <= 1/2) + S = ONE + T = ONE + E = 0 # error bound of T in ulps + Etot = 0 + n = 0 + while T > 0: + n += 1 + T = (T * X) // (ONE * n) + E = (E * X) // (ONE * n) + 2 + S += (-1) ** n * T + Etot += E + Etot += E + 1 # first omitted exact term is below (T_n + E) <= E + 1 ulps + # exp(-t) in [exp(-(X + 1)/ONE), exp(-X/ONE)] and exp(-(X + 1)/ONE) >= exp(-X/ONE) - 1/ONE (Lipschitz 1) + v = IV(Fr(S - Etot - 1, ONE), Fr(S + Etot, ONE)) + for _ in range(m): + v = v.sq() + return v + + +def exp_neg(t): + """exp(-t) on an interval t with t.lo >= 0 (monotone decreasing).""" + return IV(exp_neg_point(t.hi).lo, exp_neg_point(t.lo).hi) + + +def _atan_inv(n): + """Enclosure of arctan(1/n), n >= 2, alternating series.""" + x = Fr(1, n) + s = Fr(0) + term = x + k = 0 + while True: + s += term / (2 * k + 1) + k += 1 + term = term * (-x * x) + if abs(term) / (2 * k + 1) < Fr(1, 1 << (PBITS + 8)): + break + return IV(s - abs(term), s + abs(term)) + + +PI = 4 * (4 * _atan_inv(5) - _atan_inv(239)) +SQRT2 = isqrt_iv(IV(2)) +SQRT2PI = isqrt_iv(2 * PI) + + +def phi_point(x): + """Enclosure of Phi(x) = P(N(0,1) <= x) for a rational x with |x| <= 12, from the series + Phi(x) = 1/2 + (1/sqrt(2 pi)) sum_n (-1)^n x^(2n+1) / (2^n n! (2n+1)), evaluated in fixed point (ulp = 2^-(PBITS+40)) + with an explicit integer bound E on the accumulated rounding error (in ulps) and the alternating-tail bound.""" + x = Fr(x) + if x < 0: + p = phi_point(-x) + return IV(1 - p.hi, 1 - p.lo) + if x > 12: + raise ValueError('phi_point range') + P2 = PBITS + 40 + ONE = 1 << P2 + X = x.numerator * ONE // x.denominator # x_lo = X / ONE <= x < (X + 1) / ONE ; |Phi(x) - Phi(x_lo)| <= 1 ulp + if X == 0: # 0 <= x < 1 ulp: Phi(x) in [1/2, 1/2 + ulp] + return IV(Fr(1, 2), Fr(1, 2) + Fr(1, ONE)) + X2u = (X + 1) * (X + 1) # upper bound of x^2 ONE^2 + S = 0 + T = X # T_n ~ x^(2n+1) / (2^n n!) in ulps + E = 1 # error bound of T_n in ulps + Etot = 1 # error of S in ulps (starts with the x rounding) + n = 0 + while T > 0: + S += (-1) ** n * (T // (2 * n + 1)) + Etot += E + 1 + n += 1 + T = (T * X * X) // (ONE * ONE * 2 * n) + E = (E * X2u) // (ONE * ONE * 2 * n) + 2 + # once T == 0 in fixed point the remaining terms are each below 1 ulp; if x^2 >= 2 n they are still growing in + # exact arithmetic, so continue counting until they decrease: bound the tail by the first omitted exact term + # <= (T_n + E) ulps <= (E + 1) ulps when T_n == 0 ... but growth may resume; require the decreasing regime. + if x * x > 2 * n: + raise ValueError('series terminated before the decreasing regime') + Etot += E + 1 + core = IV(Fr(S - Etot, ONE), Fr(S + Etot, ONE)) / SQRT2PI + return IV(Fr(1, 2) + core.lo, Fr(1, 2) + core.hi) + + +def Phi(x): + """Phi on an interval (monotone); arguments clipped to [-12, 12] (clipping only widens).""" + lo = min(max(x.lo, Fr(-12)), Fr(12)) + hi = max(min(x.hi, Fr(12)), Fr(-12)) + if x.lo < -12: + plo = Fr(0) + else: + plo = phi_point(lo).lo + if x.hi > 12: + phi_ = Fr(1) + else: + phi_ = phi_point(hi).hi + return IV(plo, phi_) + + + + +def phi_pt(x): + """phi(x) for rational x (interval).""" + x = Fr(x) + return exp_neg_point(x * x / 2) / SQRT2PI + + +def Phibar_pt(x): + """1 - Phi(x) for rational x (interval).""" + p = phi_point(Fr(x)) if abs(Fr(x)) <= 12 else None + if p is None: + if x > 0: + # Mills: Phibar(x) <= phi(x)/x + return IV(0, (phi_pt(x) / x).hi) + return IV(1 - (phi_pt(-x) / (-x)).hi, 1) + return IV(1 - p.hi, 1 - p.lo) + + +def upper_moments(x, J): + """[M_0(x), ..., M_J(x)], M_j(x) = integral_x^inf t^j phi(t) dt, for rational x >= 0 (intervals).""" + x = Fr(x) + require(x >= 0, 'upper moment at negative point') + ph = phi_pt(x) + M = [Phibar_pt(x), ph] + for j in range(2, J + 1): + M.append(ph * x ** (j - 1) + M[j - 2] * (j - 1)) + return M + + +def dfact(n): + """(n)!! for n >= -1.""" + return math.prod(range(n, 0, -2)) if n > 0 else 1 + + +def rup_rel(x, bits=200): + """Round a rational x >= 0 up to a dyadic with `bits` significant bits (upper bounds stay upper bounds).""" + x = Fr(x) + if x <= 0: + return x + e = x.numerator.bit_length() - x.denominator.bit_length() + sh = bits - e + if sh >= 0: + return Fr(-((-x.numerator << sh) // x.denominator), 1 << sh) + return Fr(-((-x.numerator) // (x.denominator << -sh)) << -sh) + + +def sqrt_up(x): + """Rational upper bound of sqrt(x), x >= 0 rational, relative excess below 2^-198 (no absolute rounding floor): the root + step adds less than 2^-209 and rup_rel(., 200) less than 2^-199. (The earlier '2^-200' was too sharp: at x = 49/100 the + excess is (8/7) 2^-200, review C59-DOC-01.)""" + x = Fr(x) + if x == 0: + return Fr(0) + n, d = x.numerator, x.denominator + nd = n * d + m = max(0, (420 - nd.bit_length()) // 2 + 1) + return rup_rel(Fr(math.isqrt(nd << (2 * m)) + 1, d << m)) + + +def iroot(x, p): + """Upper bound (rational) of x^(1/p) for rational x >= 0 and p a power of two.""" + v = Fr(x) + while p > 1: + v = sqrt_up(v) + p //= 2 + return v + + +def pow2(p): + q = 1 + while q < p: + q *= 2 + return q + + +ZN = {} + + +def znorm(p): + """Upper bound of ||N(0,1)||_p for p a power of two (p = 1 uses sqrt(2/pi) < 4/5).""" + if p == 1: + return Fr(4, 5) + if p not in ZN: + ZN[p] = iroot(Fr(dfact(p - 1)), p) + return ZN[p] + + +def habs_moment(j): + """E|zeta|^j (interval).""" + if j % 2 == 0: + return IV(dfact(j - 1)) + return SQRT2 / isqrt_iv(PI) * (2 ** ((j - 1) // 2) * math.factorial((j - 1) // 2)) + + +# ----------------------------------------------------------------------------- functionals and exact covariance series +HALF = Fr(1, 2) +XM, XS, X0PT = -HALF, HALF, Fr(0) + + +def term(c, p, a, b, x0): + """c r^p d_x^a d_y^b f(x0 r, 0).""" + return (Fr(c), p, a, b, Fr(x0)) + + +def functionals(): + pins = { + 'p1': [term(HALF, 0, 0, 0, XM), term(HALF, 0, 0, 0, XS)], + 'p2': [term(-1, -1, 0, 0, XM), term(1, -1, 0, 0, XS)], + 'p3p': [term(6, -2, 1, 0, XM), term(6, -2, 1, 0, XS), term(12, -3, 0, 0, XM), term(-12, -3, 0, 0, XS)], + 'p4': [term(-1, -1, 1, 0, XM), term(1, -1, 1, 0, XS)], + 'q1': [term(HALF, 0, 0, 1, XM), term(HALF, 0, 0, 1, XS)], + 'q2': [term(-1, -1, 0, 1, XM), term(1, -1, 0, 1, XS)], + } + targets = { + 'w': [term(1, 0, 0, 2, XM)], + 'v': [term(1, -1, 1, 1, XM), term(1, -2, 0, 1, XM), term(-1, -2, 0, 1, XS)], + 'om': [term(1, -1, 0, 2, XS), term(-1, -1, 0, 2, XM)], + 'Y': [term(1, 0, 0, 3, X0PT)], + 'T': [term(1, -2, 2, 0, XM), term(4, -3, 1, 0, XM), term(2, -3, 1, 0, XS), term(6, -4, 0, 0, XM), term(-6, -4, 0, 0, XS)], + 'tau': [term(1, -3, 2, 0, XS), term(-1, -3, 2, 0, XM), term(-6, -4, 1, 0, XM), term(-6, -4, 1, 0, XS), + term(-12, -5, 0, 0, XM), term(12, -5, 0, 0, XS)], + 'nu': [term(1, -2, 1, 1, XM), term(1, -2, 1, 1, XS), term(2, -3, 0, 1, XM), term(-2, -3, 0, 1, XS)], + 'X40': [term(1, 0, 4, 0, X0PT)], 'X31': [term(1, 0, 3, 1, X0PT)], 'X22': [term(1, 0, 2, 2, X0PT)], + 'X13': [term(1, 0, 1, 3, X0PT)], 'X04': [term(1, 0, 0, 4, X0PT)], + } + return pins, targets + + +PIN_NAMES = ('p1', 'p2', 'p3p', 'p4', 'q1', 'q2') +TARGET_NAMES = ('w', 'v', 'om', 'Y', 'T', 'tau', 'nu', 'X40', 'X31', 'X22', 'X13', 'X04') +JET4 = ('X40', 'X31', 'X22', 'X13', 'X04') +JET4_IDX = {'X40': (4, 0), 'X31': (3, 1), 'X22': (2, 2), 'X13': (1, 3), 'X04': (0, 4)} + + +def weight(F): + """Scaling weight a - (power of r), common to all terms of a preconditioned functional.""" + ws = {t[2] - t[1] for t in F} + require(len(ws) == 1, 'functional not homogeneous') + return ws.pop() + + +def hcoef(n): + """d^n/dx^n exp(-x^2/2) at 0.""" + if n % 2: + return 0 + return (-1) ** (n // 2) * dfact(n - 1) + + +PAIR_CACHE = {} + + +def pair_series(F, G, key): + """Exact data of Cov_K(F, G) = sum_gamma kappa_gamma pi_gamma r^(gx - wF - wG): + returns (reference series {power: rational}, weight w, list of (|c c'|, a+a', b+b') for the remainder bounds).""" + if key in PAIR_CACHE: + return PAIR_CACHE[key] + wF, wG = weight(F), weight(G) + w = wF + wG + pi = {} + absterms = [] + for (cf, pf, af, bf, xf) in F: + for (cg, pg, ag, bg, xg) in G: + gy = bf + bg + sgn = (-1) ** (ag + bg) + d = xf - xg + absterms.append((abs(cf * cg), af + ag, gy)) + for gx in range(af + ag, NX + 1): + m = gx - af - ag + val = cf * cg * sgn * d ** m / math.factorial(m) + if val != 0: + pi[(gx, gy)] = pi.get((gx, gy), Fr(0)) + val + for (gx, gy), v in pi.items(): + require(v == 0 or gx - w >= 0, 'negative power of r in a covariance (regularity fails)') + ser = {} + for (gx, gy), v in pi.items(): + kap = hcoef(gx) * hcoef(gy) + if kap and v: + ser[gx - w] = ser.get(gx - w, Fr(0)) + kap * v + out = ({p: c for p, c in ser.items() if c != 0}, w, absterms) + PAIR_CACHE[key] = out + return out + + +def torus_M1(L): + """Bound of |sum_{n != 0} G(z + p_n)| on the polydisc |z_1|, |z_2| <= 1 (every frame, |p_n| = |n| L): + exp(1) * sum_{j >= 1} 8 j exp(-(j L - 3/2)^2 / 2).""" + L = Fr(L) + tot = Fr(0) + for j in range(1, 6): + tot += 8 * j * exp_neg_point((j * L - Fr(3, 2)) ** 2 / 2).hi + tail = 8 * 7 * exp_neg_point((6 * L - Fr(3, 2)) ** 2 / 2).hi * 4 # j >= 6, very crude + return Fr(27183, 10000) * (tot + tail) + + +def theta_minus_one(L): + L = Fr(L) + tot = Fr(0) + for j in range(1, 6): + tot += 8 * j * exp_neg_point((j * L) ** 2 / 2).hi + return tot + 8 * 7 * exp_neg_point((6 * L) ** 2 / 2).hi * 4 + + +def cov_band(F, G, key, r0, r1, M1): + """Enclosure of the covariance (unnormalized torus kernel sum_n G(z + p_n)) of F and G, for r in [r0, r1].""" + ser, w, absterms = pair_series(F, G, key) + val = IV(0) + for p, c in ser.items(): + val = val + IV(r0 ** p, r1 ** p) * c + A = max((t[1] for t in absterms), default=0) + # Taylor truncation tail of the reference kernel (orders gx > NX) + tail = Fr(0) + for (acc, aa, gy) in absterms: + tail += acc * abs(hcoef(gy)) + tail *= 2 * Fr(NX + 1) ** A * r1 ** (NX + 1 - w) + # torus remainder: Cauchy estimates |rho_gamma| <= gx! gy! M1 on the unit polydisc + tor = Fr(0) + if True: + for (acc, aa, gy) in absterms: + tor += acc * math.factorial(gy) * Fr(max(w, 1)) ** aa + tor = tor * M1 / (1 - Fr(27183, 10000) * r1) + err = tail + tor + return val + IV(-err, err) + + +# ----------------------------------------------------------------------------- interval linear algebra +def solve_iv(A, B): + """Interval Gaussian elimination with partial pivoting on midpoints: X[c] solves A X[c] = B[c].""" + n = len(A) + M = [[A[i][j] for j in range(n)] + [B[c][i] for c in range(len(B))] for i in range(n)] + for col in range(n): + p = max(range(col, n), key=lambda i: abs(M[i][col].mid())) + M[col], M[p] = M[p], M[col] + piv = M[col][col] + for i in range(col + 1, n): + f = M[i][col] / piv + for j in range(col, len(M[i])): + M[i][j] = M[i][j] - f * M[col][j] + X = [] + for c in range(len(B)): + x = [None] * n + for i in reversed(range(n)): + s = M[i][n + c] + for j in range(i + 1, n): + s = s - M[i][j] * x[j] + x[i] = s / M[i][i] + X.append(x) + return X + + +def cholesky3(C): + """Interval Cholesky of a 3 x 3 SPD interval matrix.""" + L = [[IV(0)] * 3 for _ in range(3)] + for i in range(3): + for j in range(i + 1): + s = C[i][j] - sum((L[i][l] * L[j][l] for l in range(j)), IV(0)) + if i == j: + require(s.lo > 0, 'Cholesky pivot not positive') + L[i][j] = isqrt_iv(s) + else: + L[i][j] = s / L[j][j] + return L + + +def absup(x): + return max(abs(x.lo), abs(x.hi)) + + +# ----------------------------------------------------------------------------- the conditional law on an r-band +class Law: + pass + + +def band_law(r0, r1, L=L_MIN): + """Interval enclosures, uniform over r in [r0, r1], every frame and every torus side >= L, of the Q-law of the + targets: mean = b alpha + k beta, covariance C (normalized kernel), and the pin energy coefficients.""" + pins, targets = functionals() + P = [pins[n] for n in PIN_NAMES] + T = [targets[n] for n in TARGET_NAMES] + M1 = torus_M1(L) + th1 = theta_minus_one(L) + nt = len(T) + Spp = [[cov_band(P[i], P[j], ('p', i, j), r0, r1, M1) for j in range(6)] for i in range(6)] + Stp = [[cov_band(T[i], P[j], ('tp', i, j), r0, r1, M1) for j in range(6)] for i in range(nt)] + Stt = [[cov_band(T[i], T[j], ('tt', i, j), r0, r1, M1) for j in range(nt)] for i in range(nt)] + r = IV(r0, r1) + kvec = [-(r * r * r) * HALF, -(r * r), IV(12), IV(0), IV(0), IV(0)] + e1 = [IV(1), IV(0), IV(0), IV(0), IV(0), IV(0)] + W = solve_iv(Spp, Stp) + xs = solve_iv(Spp, [e1, kvec]) + law = Law() + law.r0, law.r1, law.L, law.M1, law.th1 = r0, r1, L, M1, th1 + law.alpha = {n: W[i][0] for i, n in enumerate(TARGET_NAMES)} + law.beta = {n: sum((W[i][j] * kvec[j] for j in range(6)), IV(0)) for i, n in enumerate(TARGET_NAMES)} + scale = IV(1 / (1 + th1), 1) # K_L = (unnormalized) / Theta, Theta in [1, 1 + th1] + C = {} + for i, a in enumerate(TARGET_NAMES): + for j, c in enumerate(TARGET_NAMES): + if j < i: + continue + v = Stt[i][j] - sum((W[i][l] * Stp[j][l] for l in range(6)), IV(0)) + if i != j: + v2 = Stt[j][i] - sum((W[j][l] * Stp[i][l] for l in range(6)), IV(0)) + v = v.meet(v2) + C[(a, c)] = C[(c, a)] = v * scale + law.C = C + escale = IV(1, 1 + th1) + law.e_bb = xs[0][0] * escale + law.e_bk = sum((kvec[j] * xs[0][j] for j in range(6)), IV(0)) * escale + law.e_kk = sum((kvec[j] * xs[1][j] for j in range(6)), IV(0)) * escale + # regression on w and the g-parts + sw2 = C[('w', 'w')] + require(sw2.lo > 0, 'Var w not positive') + law.sw2 = sw2 + law.sw = isqrt_iv(sw2) + law.bw = {n: C[(n, 'w')] / sw2 for n in TARGET_NAMES if n != 'w'} + Cg = {} + for a in TARGET_NAMES: + for c in TARGET_NAMES: + if a != 'w' and c != 'w': + Cg[(a, c)] = C[(a, c)] - C[(a, 'w')] * C[(c, 'w')] / sw2 + law.Cg = Cg + law.L3 = cholesky3([[Cg[(a, c)] for c in ('v', 'om', 'Y')] for a in ('v', 'om', 'Y')]) + law.sdg = {n: isqrt_iv(IV(max(Cg[(n, n)].lo, Fr(0)), Cg[(n, n)].hi)) if Cg[(n, n)].lo > 0 else IV(0, isqrt_iv(IV(Cg[(n, n)].hi)).hi) + for n in TARGET_NAMES if n != 'w'} + law.sdQ = {n: isqrt_iv(C[(n, n)]) for n in TARGET_NAMES} + # crude higher jets: Taylor-tail coefficients S_alpha(r1) = sum_{beta != 0} sd0_{alpha+beta} (2 r1)^{|beta|} / beta! + law.S = {n: taylor_tail_coefficient(JET4_IDX[n], r1, M1) for n in JET4} + return law + + +def sd0_bound(gx, gy, M1): + """Upper bound of sqrt(Var d^gamma f(0)) = sqrt(|d^{2 gamma} K_L(0)|) (normalized, every frame, L >= L_MIN).""" + v = dfact(2 * gx - 1) * dfact(2 * gy - 1) + math.factorial(2 * gx) * math.factorial(2 * gy) * M1 + return isqrt_iv(IV(v)).hi + + +def taylor_tail_coefficient(alpha, r1, M1): + ax, ay = alpha + tot = Fr(0) + for n in range(1, NB + 1): + for bx in range(n + 1): + by = n - bx + tot += sd0_bound(ax + bx, ay + by, M1) * (2 * r1) ** n / (math.factorial(bx) * math.factorial(by)) + # tail |beta| > NB: sd0_gamma <= 2^|gamma| gx! gy! sqrt(1 + M1) (binom(2m, m) <= 4^m), so a term is at most + # 2^|alpha| (4 + n)^4 (4 r1)^n 2 per multi-index; n + 1 multi-indices of order n + q = 4 * r1 + require(q <= Fr(1, 16), 'Taylor tail ratio too large') + tail = Fr(0) + base = 2 ** (ax + ay) * 2 + n = NB + 1 + # sum_{n > NB} (n + 1)(n + 4)^8 q^n <= (NB + 2)(NB + 5)^8 q^(NB+1) / (1 - 2 q) (consecutive ratio <= 2q for these n) + tail = base * (NB + 2) * Fr(NB + 5) ** 8 * q ** (NB + 1) / (1 - 2 * q) + return tot + tail + + +# ----------------------------------------------------------------------------- moment calculus (normalized by K = 12 k) +def binom(n, k): + return math.comb(n, k) + + +def gauss_norm(mu_abs, sd, p): + """Upper bound of ||X||_p for X Gaussian with |mean| <= mu_abs and sd <= sd.""" + return rup_rel(mu_abs + sd * znorm(pow2(p))) + + +def pos_part_moments(s, c, nmax, extra_max): + """P[n][e] = upper bound of E[u^e (u^n - c^n)_+], u = s |zeta|, for 1 <= n <= nmax, 0 <= e <= extra_max.""" + x = c / s + M = upper_moments(x, nmax + extra_max) + out = {} + for n in range(1, nmax + 1): + for e in range(extra_max + 1): + out[(n, e)] = rup_rel(((M[n + e] * s ** (n + e) - M[e] * c ** n * s ** e) * 2).hi) + return out + + +def normalized_moments(q, nmax, theta): + """Component moments, normalized by K = 12 k (K >= Klo), for n <= nmax: + E1[n], E1o[n], E1v[n] : upper bounds of E[y1^n], E[o0 y1^n], E[v0^2 y1^n], y1 = 1 + cmu1/K + (r1/K) Delta1; + Tn[n], To[n], Tv[n] : upper bounds of sum_{i=2,3,4} E[(y_i^n - c^n)_+] (and with the factors o0, v0^2), + y_i <= u_i + delta_i (u_i = s_i |zeta| independent half-normals), threshold c = q['c']. + o0 = s3 |z2| and v0^2 = s2^2 z1^2 / 4 are unnormalized.""" + th = theta + cp = q['c'] * (1 - th) # <= c (1 + th)^{-(n-1)/n} for every n (Bernoulli) + PP = {i: pos_part_moments(q['s'][i], cp, nmax, 2) for i in (2, 3, 4)} + Eu3 = (habs_moment(1) * q['s3']).hi + Eu2sq = (habs_moment(2) * q['s2'] * q['s2']).hi + n_o0_2 = q['s3'] * znorm(2) + n_u2sq_2 = q['s2'] * q['s2'] * znorm(4) ** 2 + r3 = q['s3'] / q['s'][3] + r2sq = (q['s2'] / q['s'][2]) ** 2 + E1, E1o, E1v, Tn, To, Tv = {}, {}, {}, {}, {}, {} + base = 1 + q['cmt1'] + for n in range(0, nmax + 1): + ey = base ** n + eo = base ** n * Eu3 + ev = base ** n * Eu2sq + for j in range(1, n + 1): + coef = binom(n, j) * base ** (n - j) * q['rK'] ** j + ey += coef * q['nD1'](pow2(j)) ** j + eo += coef * n_o0_2 * q['nD1'](pow2(2 * j)) ** j + ev += coef * n_u2sq_2 * q['nD1'](pow2(2 * j)) ** j + E1[n], E1o[n], E1v[n] = rup_rel(ey), rup_rel(eo), rup_rel(ev / 4) + if n == 0: + continue + f1 = (1 + th) ** (n - 1) + f2 = (1 + 1 / th) ** (n - 1) + tn = to = tv = Fr(0) + for i in (2, 3, 4): + P = PP[i] + dn = q['nd'](i, pow2(n)) ** n + dn2 = q['nd'](i, pow2(2 * n)) ** n + tn += f1 * P[(n, 0)] + f2 * dn + to += (f1 * r3 * P[(n, 1)] if i == 3 else f1 * Eu3 * P[(n, 0)]) + f2 * n_o0_2 * dn2 + tv += (f1 * r2sq * P[(n, 2)] if i == 2 else f1 * Eu2sq * P[(n, 0)]) + f2 * n_u2sq_2 * dn2 + Tn[n], To[n], Tv[n] = rup_rel(tn), rup_rel(to), rup_rel(tv / 4) + return E1, E1o, E1v, Tn, To, Tv + + +def elam_pos(m, s): + """E[(s z + m)_+] at a point (rational m, s > 0).""" + x = Fr(m) / s + return m * Phi(IV(x)) + phi_pt(x) * s + + +def elam2_pos(m, s): + """E[(s z + m)_+^2] at a point.""" + x = Fr(m) / s + return (m * m + s * s) * Phi(IV(x)) + phi_pt(x) * (m * s) + + +def box_bound(law, bb, kb, r0, r1, last_band=False, x0=None, theta=None): + """Certified upper bound of sup_{r in [r0, r1]} Q^W(G_r^c) / r^3 over b in bb, k in kb, with its pieces, for the near-branch + threshold x0 (X_0 of NOTE section 4) and the split parameter theta (section 5). The bound is proved for 0 < x0 < 2/9 and + 0 < theta < 1: then 3 x0 < 1, x0 <= 1/4 (root bounds), kappa = 3/(1 - 3 x0), c = 1 - kappa x0/2 > 0 and + (1 + kappa x0) c^2 <= 1. No claim is made outside that domain. Both COMBOS pairs, and the (1/64, 1/32) of Math-#215's + caller, lie inside it (review C61).""" + x0 = X0 if x0 is None else Fr(x0) + theta = THETA if theta is None else Fr(theta) + b = IV(bb[0], bb[1]) + k = IV(kb[0], kb[1]) + klo, khi = kb[0], kb[1] + Klo = 12 * klo + mu = {n: b * law.alpha[n] + k * law.beta[n] for n in TARGET_NAMES} + mabs = {n: absup(mu[n]) for n in TARGET_NAMES} + E = b * b * law.e_bb + b * k * law.e_bk * 2 + k * k * law.e_kk + require(E.hi > 0, 'energy') + sqE = isqrt_iv(IV(E.hi)).hi + sw_lo, sw_hi = law.sw.lo, law.sw.hi + muw_abs = mabs['w'] + bw = {n: absup(law.bw[n]) for n in law.bw} + t = {n: law.S[n] / sw_lo for n in JET4} + a_fac = Fr(1, 2) if MUT == 'cap-half' else Fr(1) # the cap constant 4/(3k) (mutant: halved) + B = lambda n: bw[n] + t[n] + bbars = {1: r1 * (Fr(5, 2) * B('X40') + 2 * B('X31')), + 2: 2 * bw['v'] + r1 * (Fr(5, 2) * B('X31') + 2 * B('X22')), + 3: bw['om'] + r1 * (Fr(5, 2) * B('X22') + 2 * B('X13')), + 4: bw['Y'] + r1 * (2 * B('X13') + 2 * B('X04'))} + bbars = {i: rup_rel(v) for i, v in bbars.items()} + bbar = max(bbars.values()) + L3 = law.L3 + s2, s3, s4 = 2 * L3[0][0].hi, L3[1][1].hi, L3[2][2].hi + l21, l31, l32 = absup(L3[1][0]), absup(L3[2][0]), absup(L3[2][1]) + + memo = {} + + def nA(n, p): # ||A_alpha^g||_p, A_alpha^g = |X_alpha,g| + T_alpha^g + key = ('A', n, p) + if key not in memo: + memo[key] = rup_rel(gauss_norm(mabs[n], law.sdg[n].hi, p) + law.S[n] * (sqE + znorm(pow2(p)))) + return memo[key] + + def nDelta(i, p): + key = ('D', i, p) + if key not in memo: + memo[key] = rup_rel(nDelta0(i, p)) + return memo[key] + + def nDelta0(i, p): + if MUT == 'no-delta': + return Fr(0) + if i == 1: + return Fr(5, 2) * nA('X40', p) + 2 * nA('X31', p) + if i == 2: + return Fr(5, 2) * nA('X31', p) + 2 * nA('X22', p) + if i == 3: + return Fr(5, 2) * nA('X22', p) + 2 * nA('X13', p) + return 2 * nA('X13', p) + 2 * nA('X04', p) + + def nd(i, p): + key = ('d', i, p) + if key not in memo: + memo[key] = rup_rel(nd0(i, p)) + return memo[key] + + def nd0(i, p): # ||delta_i||_p / Klo, delta_i including beta_i |mu_w| + zp = znorm(pow2(p)) + cm = bbars[i] * muw_abs + if i == 2: + v = 2 * mabs['v'] + cm + r1 * nDelta(2, p) + elif i == 3: + v = mabs['om'] + l21 * zp + cm + r1 * nDelta(3, p) + else: + v = mabs['Y'] + (l31 + l32) * zp + cm + r1 * nDelta(4, p) + return v / Klo + + kappa = 3 / (1 - 3 * x0) + Fk = 1 + kappa * x0 # (1 + kappa x_i) <= Fk on the event {x_i <= x0} + cth = 1 - kappa * x0 / 2 # <= Fk^{-1/2} + NMAX = 24 + q = {'cmt1': bbars[1] * muw_abs / Klo, 'rK': r1 / Klo, 'nD1': lambda p: nDelta(1, p), + 's': {2: s2 / Klo, 3: s3 / Klo, 4: s4 / Klo}, 'nd': nd, 's3': s3, 's2': s2, 'c': cth} + E1, E1o, E1v, Tn, To, Tv = normalized_moments(q, NMAX, theta) + et1 = rup_rel(16 * kappa * r1 * bbars[1] * a_fac) # eta_1 K, k-free + aK2_hi = 192 * khi * a_fac # a K^2 = 192 k + + # moments of Ut = U / (a K^2) <= max(Z1, Fk y_i^2), Z1 = y1^2 (1 + et1 y1) + def EUt(p): # upper bound of E[Ut^p] + key = ('U', p) + if key not in memo: + memo[key] = rup_rel(sum(binom(p, l) * et1 ** l * E1[2 * p + l] for l in range(p + 1)) + Fk ** p * Tn[2 * p]) + return memo[key] + + def EoUt2(): + return sum(binom(2, l) * et1 ** l * E1o[4 + l] for l in range(3)) + Fk ** 2 * To[4] + + def EvUt2(): + return sum(binom(2, l) * et1 ** l * E1v[4 + l] for l in range(3)) + Fk ** 2 * Tv[4] + + def sq(x): + return isqrt_iv(IV(x)).hi + + U3_2 = sq(EUt(6)) # ||Ut^3||_2 + U2_2 = sq(EUt(4)) # ||Ut^2||_2 + + def nU(p): # ||U||_p <= a K^2 Fk ||max_i y_i||_2p^2 (on the event x_i <= X0) + require(2 * p <= NMAX and pow2(p) == p, 'norm order') + key = ('nU', p) + if key not in memo: + memo[key] = rup_rel(aK2_hi * Fk * iroot(E1[2 * p] + Tn[2 * p], p)) + return memo[key] + + def nbar(n, p): # ||F_bar||_p, F_bar = |F_g| + |beta_F| (|mu_w| + r1 U) + return gauss_norm(mabs[n], law.sdg[n].hi, p) + bw[n] * (muw_abs + r1 * nU(p)) + + six_klo = 6 * klo + nT2, nT4, nt2, nt4 = nbar('T', 2), nbar('T', 4), nbar('tau', 2), nbar('tau', 4) + epsc2 = (2 * r1 * nT2 + r1 * r1 * nt2) / six_klo + (r1 * nT4) * (r1 * nT4 + r1 * r1 * nt4) / six_klo ** 2 + nT8, nt8 = nbar('T', 8), nbar('tau', 8) + epsc4 = (2 * r1 * nT4 + r1 * r1 * nt4) / six_klo + (r1 * nT8) * (r1 * nT8 + r1 * r1 * nt8) / six_klo ** 2 + # Term A / (36 k^2) + A_n = EUt(3) + epsc2 * U3_2 + termA = aK2_hi ** 3 / 3 * A_n + # Term B / (36 k^2) + ndo = lambda p: l21 * znorm(pow2(p)) + mabs['om'] + bw['om'] * (muw_abs + r1 * nU(p)) + no4 = s3 * znorm(4) + ndo(4) + B_n = EoUt2() + (ndo(2) + epsc4 * no4) * U2_2 + termB = aK2_hi ** 2 / 2 * B_n + if MUT == 'no-om-term': + termB = Fr(0) + # Term C / (36 k^2) = (a K^2)^2 / (12 k) * E[(1 + r T/(6k)) e Ut^2] + th = THETA_E + dv = lambda p: mabs['v'] + bw['v'] * (muw_abs + r1 * nU(p)) + ebar4 = (r1 * nbar('nu', 8) + L3[0][0].hi * znorm(8) + dv(8)) ** 2 + C_n = ((1 + th) ** 2 * EvUt2() + + ((1 + th) * (1 + 1 / th) * dv(4) ** 2 + (1 + 1 / th) * r1 * r1 * nbar('nu', 4) ** 2) * U2_2 + + r1 * nT4 / six_klo * ebar4 * U2_2) + termC = aK2_hi ** 2 / (12 * klo) * C_n + # one more power of U for the density refinement: the same three terms with lambda inserted, divided by r + # (int_0^{rU} lambda W dlambda <= r^6 |c1| [|c2| (U^4/4 + om U^3/3) + e U^3/3]) + U3_2_ = U3_2 + termAp = aK2_hi ** 4 / 4 * (EUt(4) + epsc2 * sq(EUt(8))) + EoUt3 = sum(binom(3, l) * et1 ** l * E1o[6 + l] for l in range(4)) + Fk ** 3 * To[6] + EvUt3 = sum(binom(3, l) * et1 ** l * E1v[6 + l] for l in range(4)) + Fk ** 3 * Tv[6] + termBp = aK2_hi ** 3 / 3 * (EoUt3 + (ndo(2) + epsc4 * no4) * U3_2_) + if MUT == 'no-om-term': + termBp = Fr(0) + termCp = aK2_hi ** 3 / (18 * klo) * ((1 + th) ** 2 * EvUt3 + + ((1 + th) * (1 + 1 / th) * dv(4) ** 2 + (1 + 1 / th) * r1 * r1 * nbar('nu', 4) ** 2) * U3_2_ + + r1 * nT4 / six_klo * ebar4 * U3_2_) + # density of lambda = -w: pbar = its supremum on [0, inf); on the failure window [0, rU] also p(lambda) <= p0 + lambda Lp + # with p0 = sup over the box of the density at 0 and Lp = sup |p'| <= phi(1)/sigma^2, phi(1) < 0.24198 + mlo = max(Fr(0), mu['w'].lo) + pbar = (phi_pt(mlo / sw_hi) / sw_lo).hi + m0 = Fr(0) if mu['w'].lo <= 0 <= mu['w'].hi else min(abs(mu['w'].lo), abs(mu['w'].hi)) + p0 = (phi_pt(m0 / sw_hi) / sw_lo).hi + Lp = Fr(24198, 100000) / (sw_lo * sw_lo) + # ---- normalizer floor Z_r / (36 k^2 r^2) >= El2 - corr + m_lam = -mu['w'] + El2 = elam2_pos(m_lam.lo, sw_lo).lo + Elp = elam_pos(m_lam.hi, sw_hi).hi + lam_n = lambda p: muw_abs + sw_hi * znorm(pow2(p)) + sdT, sdtau = law.sdQ['T'].hi, law.sdQ['tau'].hi + q_bad = gauss_tail2(mabs['T'], sdT, 3 * klo / (2 * r1)) + gauss_tail2(mabs['tau'], sdtau, 3 * klo / (2 * r1 * r1)) + Eom_g = mabs['om'] + law.sdg['om'].hi * Fr(4, 5) + Evg2 = mabs['v'] ** 2 + law.sdg['v'].hi ** 2 + E_om_lam = Eom_g * Elp + bw['om'] * (muw_abs * lam_n(1) + lam_n(2) ** 2) + E_v2_lam = 2 * Evg2 * Elp + 2 * bw['v'] ** 2 * (sw_hi * znorm(4)) ** 2 * lam_n(2) + corr = (lam_n(4) ** 2 * iroot(q_bad, 2) if q_bad > 0 else Fr(0)) \ + + (2 * r1 * gauss_norm(mabs['T'], sdT, 2) + r1 * r1 * gauss_norm(mabs['tau'], sdtau, 2)) * lam_n(4) ** 2 / six_klo \ + + r1 * (E_v2_lam / (3 * klo) + E_om_lam) + if MUT == 'no-zfloor-correction': + corr = Fr(0) + zt = El2 - corr + require(zt > 0, 'normalizer floor not positive') + main = min(pbar * (termA + termB + termC), p0 * (termA + termB + termC) + r1 * Lp * (termAp + termBp + termCp)) / zt + # ---- rare branches at the band top: E[W 1_E] <= ||W 1_typed||_q P(E)^(1 - 1/q) (Hoelder), ||W 1_typed||_q / r^2 <= g1 g2, + # for each q in QS; the smallest resulting bound is used + six_khi = 6 * khi + + def wnorm(q): + p4 = 4 * q + nTQ = gauss_norm(mabs['T'], sdT, p4) + ntauQ = gauss_norm(mabs['tau'], sdtau, p4) + g1 = (six_khi + r1 * nTQ) * lam_n(p4) + g2 = (six_khi + r1 * nTQ + r1 * r1 * ntauQ) * (lam_n(p4) + r1 * gauss_norm(mabs['om'], law.sdQ['om'].hi, p4)) \ + + r1 * (r1 * gauss_norm(mabs['nu'], law.sdQ['nu'].hi, p4) + gauss_norm(mabs['v'], law.sdQ['v'].hi, p4)) ** 2 + return g1 * g2 + thr = 3 * klo / (10 * r1) + qA2 = Fr(0) + args = [] + for n in JET4: + args.append((thr * Fr(7, 8) - mabs[n]) / law.sdQ[n].hi) + qA2 += gauss_tail2(mabs[n], law.sdQ[n].hi, thr * Fr(7, 8)) + qA2 += (law.S[n] * (sqE + znorm(32)) / (thr / 8)) ** 32 + a_hi = Fr(4, 3) / klo * a_fac + qfar = Fr(0) + qx = Fr(0) + if bbar > 0: + lam_far = 1 / (4 * a_hi * r1 * bbar * bbar) + args.append((lam_far - muw_abs) / sw_hi) + qfar = gauss_tail1(muw_abs, sw_hi, lam_far) + for i in (1, 2, 3, 4): # x_i > X0 <=> y_i' > X0 / (a r1 beta_i) + if bbars[i] == 0: + continue + tx = x0 / (a_hi * r1 * bbars[i]) + if i == 1: + cb = 12 * khi + bbars[1] * muw_abs + qx += Fr(1) if tx <= cb else (r1 * nDelta(1, 32) / (tx - cb)) ** 32 + else: + s_i = {2: s2, 3: s3, 4: s4}[i] + args.append(tx / (2 * s_i)) + qx += gauss_tail2(0, s_i, tx / 2) + (nd(i, 32) * Klo / (tx / 2)) ** 32 + qs = [min(Fr(1), x) for x in (qA2, qfar, qx)] + tail_num = min(wnorm(q) * sum(pow_tail(x, q) for x in qs) for q in QS) + if last_band: + # (0, R] is the union of [R 2^-(j+1), R 2^-j]; every Gaussian tail argument scales at least like 1/r and is >= 3 at R, + # so each Gaussian piece drops by more than 64 when r halves; every Markov piece is a power r^m with m >= 32; after the + # power 1 - 1/q (q >= 2) each piece still drops by more than 8, so for the q chosen at R the supremum of tail / r^3 + # over (0, R] is attained on [R/2, R] + require(min(args) >= 3, 'last-band tail arguments') + # no piece is capped at 1, so the factor-64 decrease of every piece per halving carries over to each sum + require(max(qA2, qfar, qx) < 1, 'last-band tail pieces') + rdiv = r1 / 2 + else: + rdiv = r0 + tail = tail_num / (36 * klo * klo * zt * rdiv ** 3) + total = main + tail + return {'total': total, 'main': main, 'tail': tail, 'zt': zt, 'pbar': pbar, 'termA': termA, 'termB': termB, + 'termC': termC, 'qA2': qA2, 'qfar': qfar, 'qx': qx, 'El2': El2, 'corr': corr, 'min_arg': min(args)} + + +def pow_tail(x, q): + """Upper bound of x^(1 - 1/q) for 0 <= x <= 1 (q a power of two).""" + if x <= 0: + return Fr(0) + return iroot(rup_rel(x, 64) ** (q - 1), q) + + +def phibar_upper(x): + """Rational upper bound of 1 - Phi(x) for rational x >= 0: the series value for x <= 12, and for x > 12 the Mills bound + phi(x)/x with exp(-y) <= m!/y^m (m = 40), which stays exact far below the 2^-160 rounding floor.""" + x = Fr(x) + if x <= 12: + return Phibar_pt(x).hi + y = x * x / 2 + m = 40 + return Fr(math.factorial(m)) / y ** m / (x * Fr(5, 2)) # sqrt(2 pi) > 5/2 + + +def gauss_tail2(mu_abs, sd, t): + """Upper bound of P(|X| > t) for X Gaussian with |mean| <= mu_abs, sd <= sd.""" + if t <= mu_abs: + return Fr(1) + return min(Fr(1), 2 * phibar_upper((t - mu_abs) / sd)) + + +def gauss_tail1(mu_abs, sd, t): + if t <= mu_abs: + return Fr(1) + return min(Fr(1), phibar_upper((t - mu_abs) / sd)) + + +# ----------------------------------------------------------------------------- bands, boxes, runs +B_BOXES = ((Fr(0), Fr(1, 64)), (Fr(1, 64), Fr(1, 16)), (Fr(1, 16), Fr(1, 4)), (Fr(1, 4), Fr(1))) +K_BOXES = ((Fr(1, 2), Fr(1)), (Fr(1), Fr(3, 2)), (Fr(3, 2), Fr(7, 4)), (Fr(7, 4), Fr(15, 8)), (Fr(15, 8), Fr(31, 16)), + (Fr(31, 16), Fr(63, 32)), (Fr(63, 32), Fr(2))) +HIGH_OCTAVES = 3 # octaves [2^-(j+1), 2^-j], j = 6..8 (r up to 1/64), split into 8 sub-bands +TOP_OCTAVES = 4 # octaves j = 9..12, split into 16 sub-bands +LOW_OCTAVES = 16 # octaves j = 13..28, split into 4 sub-bands +R_LAST = Fr(1, 2 ** 29) # last band [0, 2^-29] + + +def bands(): + """Sub-bands [r0, r1] covering (0, 1/64]; each octave split into equal sub-bands; the last band is [0, R_LAST].""" + out = [] + for j in range(6, 9 + TOP_OCTAVES + LOW_OCTAVES): + hi = Fr(1, 2 ** j) + lo = hi / 2 + m = 8 if j < 9 else (16 if j < 9 + TOP_OCTAVES else 4) + for i in range(m): + out.append((lo + (hi - lo) * i / m, lo + (hi - lo) * (i + 1) / m)) + out.append((Fr(0), R_LAST)) + require(min(b[0] for b in out) == 0 and max(b[1] for b in out) == Fr(1, 64), 'band cover') + return sorted(out) + + +def up(x, digits=6): + """Decimal string of a rational rounded UP to `digits` significant digits (as a string float).""" + x = Fr(x) + if x <= 0: + return '0' + e = len(str(x.numerator // x.denominator)) if x >= 1 else -len(str(x.denominator // x.numerator)) + scale = Fr(10) ** (digits - e) + n = -((-x.numerator * scale.numerator) // (x.denominator * scale.denominator)) + return str(Fr(n) / scale) if scale.denominator == 1 else '%s' % (Fr(n) / scale) + + +def dec_down(x, places=4): + x = Fr(x) + n = (x.numerator * 10 ** places) // x.denominator + s = str(abs(n)).rjust(places + 1, '0') + return ('-' if n < 0 else '') + s[:-places] + '.' + s[-places:] + + +def dec_up(x, places=4): + x = Fr(x) + n = -((-x.numerator * 10 ** places) // x.denominator) + s = str(abs(n)).rjust(places + 1, '0') + return ('-' if n < 0 else '') + s[:-places] + '.' + s[-places:] + + +BOXES = tuple((bb, kb) for bb in B_BOXES for kb in K_BOXES) # the order of the per-box lists in a band record +# (x0, theta) choices; each gives a valid bound and the record keeps the smaller one +COMBOS = ((Fr(1, 64), Fr(1, 32)), (Fr(1, 1024), Fr(1, 256))) +# the fixed-axis SIDE24 point of [CAP] section 1 (b = 6/5, kappa = 1/6), a single (b, k) point outside the band +SIDE24_B, SIDE24_K = (Fr(6, 5), Fr(6, 5)), (Fr(1, 6), Fr(1, 6)) +CG_02_LO, CG_SIDE24_LO = Fr('5324360.4426'), Fr('35736.7352') # certified lower ends of c_G at (0, 2), (6/5, 1/6) ([G]) + + +def best_box(law, bb, kb, r0, r1, last): + best = None + for x0, theta in COMBOS: + res = box_bound(law, bb, kb, r0, r1, last_band=last, x0=x0, theta=theta) + if best is None or res['total'] < best['total']: + best = res + return best + + +def band_record(args): + """Per band: the certified bound of sup Q^W(G_r^c)/r^3 (rounded up, 4 places) and the floor of Z_r/r^2 (rounded down, + 6 places) for each of the 28 boxes in BOXES order, the largest tail part (rounded up, 12 places), and the same two + numbers at the SIDE24 point.""" + r0, r1 = args + law = band_law(r0, r1) + last = (r0 == 0) + bound, zfloor, tails = [], [], [] + for bb, kb in BOXES: + res = best_box(law, bb, kb, r0, r1, last) + bound.append(dec_up(res['total'])) + zfloor.append(dec_down(36 * kb[0] * kb[0] * res['zt'], 6)) + tails.append(res['tail']) + s24 = best_box(law, SIDE24_B, SIDE24_K, r0, r1, last) + return {'r': [str(r0), str(r1)], 'bound': bound, 'zfloor': zfloor, 'tail_max': dec_up(max(tails), 12), + 'side24': [dec_up(s24['total']), dec_down(36 * SIDE24_K[0] ** 2 * s24['zt'], 6)]} + + +def full_run(procs): + bl = bands() + with multiprocessing.Pool(procs) as pool: + recs = pool.map(band_record, bl) + return assemble(recs) + + +def assemble(recs): + table = {} + for rs in R_STARS: + mx, arg, zmin = Fr(0), None, None + for rec in recs: + if Fr(rec['r'][1]) <= rs: + for (bb, kb), bs, zs in zip(BOXES, rec['bound'], rec['zfloor']): + v = Fr(bs) + if v > mx: + mx, arg = v, {'r': rec['r'], 'b': [str(bb[0]), str(bb[1])], 'k': [str(kb[0]), str(kb[1])]} + z = Fr(zs) + zmin = z if zmin is None or z < zmin else zmin + table[str(rs)] = {'C': str(mx), 'argmax': arg, 'C_over_cG02': dec_up(mx / CG_02_LO, 6), + 'C_rstar3': dec_up(mx * rs ** 3, 10), 'z_star': str(zmin)} + side = {} + for rs in R_STARS: + rows = [rec for rec in recs if Fr(rec['r'][1]) <= rs] + mx = max(Fr(rec['side24'][0]) for rec in rows) + arg = [rec['r'] for rec in rows if Fr(rec['side24'][0]) == mx][0] + zmin = min(Fr(rec['side24'][1]) for rec in rows) + side[str(rs)] = {'C': str(mx), 'argmax_r': arg, 'C_over_cG': dec_up(mx / CG_SIDE24_LO, 6), + 'C_rstar3': dec_up(mx * rs ** 3, 10), 'z_star': str(zmin)} + return {'schema': 1, 'object': 'CL-C8-THEOREM-A-CONSTANTS-PLANAR-20260930-v1', 'scientific_effect': 'NONE', + 'certified': True, 'mutant': MUT, 'L_min': L_MIN, + 'band': {'b': [str(BAND_B[0]), str(BAND_B[1])], 'k': [str(BAND_K[0]), str(BAND_K[1])]}, + 'side24_point': {'b': str(SIDE24_B[0]), 'k': str(SIDE24_K[0])}, + 'parameters': params(), 'C_table': table, 'C_table_side24': side, 'bands': recs} + + +def params(): + return {'PBITS': PBITS, 'NX': NX, 'NB': NB, 'COMBOS_X0_THETA': [[str(a), str(b)] for a, b in COMBOS], 'THETA_E': str(THETA_E), 'QS': list(QS), + 'R_STARS': [str(x) for x in R_STARS], 'HIGH_OCTAVES': HIGH_OCTAVES, 'TOP_OCTAVES': TOP_OCTAVES, + 'LOW_OCTAVES': LOW_OCTAVES, 'R_LAST': str(R_LAST), + 'B_BOXES': [[str(a), str(b)] for a, b in B_BOXES], 'K_BOXES': [[str(a), str(b)] for a, b in K_BOXES]} + + +def results_text(res): + """RESULTS.json layout: the summary indented, then one line per band record.""" + head = json.dumps({key: val for key, val in res.items() if key != 'bands'}, indent=1, sort_keys=True) + lines = ',\n'.join(' ' + json.dumps(rec, sort_keys=True) for rec in res['bands']) + return head[:-2] + ',\n "bands": [\n' + lines + '\n ]\n}\n' + + +def write_results(res): + with open(os.path.join(HERE, 'RESULTS.json'), 'w') as fh: + fh.write(results_text(res)) + + +def load_results(): + with open(os.path.join(HERE, 'RESULTS.json')) as fh: + return json.load(fh) + + +def replay_sample(): + """Band indices replayed by --check: the band ending at each r_*, the bands ending at 2^-14, 2^-20, 2^-26, the last band.""" + bl = bands() + idx = [] + for rs in R_STARS: + j = max(i for i, b in enumerate(bl) if b[1] == rs) + idx.append(j) + idx += [i for i, b in enumerate(bl) if b[1] in (Fr(1, 2 ** 14), Fr(1, 2 ** 20), Fr(1, 2 ** 26))] + idx.append(0) + return sorted(set(idx)) + + +def check_run(procs, full=False): + ref = load_results() + with open(os.path.join(HERE, 'RESULTS.json')) as fh: + require(fh.read() == results_text(ref), 'RESULTS.json is not in the canonical layout') + require(ref['parameters'] == params(), 'parameters differ from RESULTS.json') + require(ref['mutant'] is None, 'RESULTS.json produced under a mutant') + require(abs(PI.mid() - Fr('3.14159265358979323846')) < Fr(1, 10 ** 19) and PI.width() < Fr(1, 10 ** 30), 'pi enclosure') + require(abs(Phi(IV(1)).mid() - Fr('0.841344746068542948585')) < Fr(1, 10 ** 19), 'Phi(1) enclosure') + bl = bands() + require([rec['r'] for rec in ref['bands']] == [[str(a), str(b)] for a, b in bl], 'band list differs') + idx = list(range(len(bl))) if full else replay_sample() + with multiprocessing.Pool(procs) as pool: + recs = pool.map(band_record, [bl[i] for i in idx]) + for i, rec in zip(idx, recs): + require(rec == ref['bands'][i], 'band %d (%s) differs from RESULTS.json' % (i, rec['r'])) + # the table is the maximum over the stored records + asm = assemble(ref['bands']) + require(asm['C_table'] == ref['C_table'] and asm['C_table_side24'] == ref['C_table_side24'], + 'C tables are not the maxima of the stored bounds') + # sanity: every C exceeds the sharp reference-kernel cap coefficient c_G(0, 2) of Math-#203 (a lower bound for every + # cap-route constant valid for all L >= 10, since c_G^{L,R} -> c_G^{ref} as L -> infinity) + for rs, row in ref['C_table'].items(): + require(Fr(row['C']) > CG_02_LO, 'C below the sharp cap coefficient') + for rs, row in ref['C_table_side24'].items(): + require(Fr(row['C']) > CG_SIDE24_LO, 'SIDE24 C below the sharp cap coefficient') + print(json.dumps({'check': 'ok', 'bands_replayed': len(idx), 'C_table': {rs: row['C'] for rs, row in ref['C_table'].items()}, + 'C_table_side24': {rs: row['C'] for rs, row in ref['C_table_side24'].items()}, 'mutant': MUT})) + + +def main(): + global MUT + ap = argparse.ArgumentParser() + ap.add_argument('--check', action='store_true') + ap.add_argument('--check-full', action='store_true') + ap.add_argument('--mutant', choices=MUTANTS) + ap.add_argument('--procs', type=int, default=4) + ap.add_argument('--mc', nargs=5, metavar=('R', 'B', 'K', 'N', 'SEED'), help='floating end-to-end control') + args = ap.parse_args() + MUT = args.mutant + if args.mc: + rr, bb, kk, nn, sd = args.mc + print(json.dumps(mc_event(float(Fr(rr)), float(Fr(bb)), float(Fr(kk)), int(nn), int(sd)))) + return + if args.check or args.check_full: + check_run(args.procs, full=args.check_full) + return + res = full_run(args.procs) + write_results(res) + print(json.dumps({'band': {rs: row['C'] for rs, row in res['C_table'].items()}, + 'side24': {rs: row['C'] for rs, row in res['C_table_side24'].items()}})) + + + +# ----------------------------------------------------------------------------- floating control (not part of the certificate) +def mc_event(r, b, k, n, seed, deg=8, grid=9): + """End-to-end Monte Carlo of Q^W(G_r^c) / r^3 and Z_r / r^2 for the reference kernel (floating point): the Taylor jet of + order deg at the midpoint is sampled under Q, the field near D is rebuilt from it, W_r and G_r (M_3, M_4 on a grid of D) + are evaluated directly from the definitions.""" + import random + pins, _ = functionals() + P = [pins[nm] for nm in PIN_NAMES] + jets = [(i, m - i) for m in range(deg + 1) for i in range(m, -1, -1)] + J = [[term(1, 0, a, bb, X0PT)] for (a, bb) in jets] + + def ev(F, G, key): + ser, w, _ = pair_series(F, G, key) + return sum(float(c) * r ** p for p, c in ser.items()) + Spp = [[ev(P[i], P[j], ('p', i, j)) for j in range(6)] for i in range(6)] + Sjp = [[ev(J[i], P[j], ('jp', deg, i, j)) for j in range(6)] for i in range(len(J))] + Sjj = [[ev(J[i], J[j], ('jj', deg, i, j)) for j in range(len(J))] for i in range(len(J))] + + def solve(A, bv): + m = len(A) + M = [A[i][:] + [bv[i]] for i in range(m)] + for c in range(m): + p = max(range(c, m), key=lambda i: abs(M[i][c])) + M[c], M[p] = M[p], M[c] + for i in range(c + 1, m): + f = M[i][c] / M[c][c] + for j in range(c, m + 1): + M[i][j] -= f * M[c][j] + x = [0.0] * m + for i in reversed(range(m)): + x[i] = (M[i][m] - sum(M[i][j] * x[j] for j in range(i + 1, m))) / M[i][i] + return x + vr = [b - k * r ** 3 / 2, -k * r * r, 12 * k, 0, 0, 0] + Wt = [solve(Spp, Sjp[i]) for i in range(len(J))] + mu = [sum(Wt[i][j] * vr[j] for j in range(6)) for i in range(len(J))] + C = [[Sjj[i][j] - sum(Wt[i][l] * Sjp[j][l] for l in range(6)) for j in range(len(J))] for i in range(len(J))] + # symmetric square root (Jacobi) + m = len(J) + A = [row[:] for row in C] + V = [[float(i == j) for j in range(m)] for i in range(m)] + for _ in range(100): + off = sum(A[p][q] ** 2 for p in range(m) for q in range(p + 1, m)) + if off < 1e-26: + break + for p in range(m - 1): + for q in range(p + 1, m): + if abs(A[p][q]) < 1e-300: + continue + th = 0.5 * math.atan2(2 * A[p][q], A[q][q] - A[p][p]) + c, s = math.cos(th), math.sin(th) + for kk in range(m): + akp, akq = A[kk][p], A[kk][q] + A[kk][p], A[kk][q] = c * akp - s * akq, s * akp + c * akq + for kk in range(m): + apk, aqk = A[p][kk], A[q][kk] + A[p][kk], A[q][kk] = c * apk - s * aqk, s * apk + c * aqk + for kk in range(m): + vkp, vkq = V[kk][p], V[kk][q] + V[kk][p], V[kk][q] = c * vkp - s * vkq, s * vkp + c * vkq + lam = [max(A[i][i], 0.0) for i in range(m)] + S = [[sum(V[i][kk] * math.sqrt(lam[kk]) * V[j][kk] for kk in range(m)) for j in range(m)] for i in range(m)] + fact = [math.factorial(i) for i in range(deg + 2)] + pts = [(-2 * r + 4 * r * i / (grid - 1), -2 * r + 4 * r * j / (grid - 1)) for i in range(grid) for j in range(grid)] + + def deriv(cf, a0, b0, x, y): + tot = 0.0 + for idx, (a, bb) in enumerate(jets): + if a >= a0 and bb >= b0: + tot += cf[idx] * x ** (a - a0) * y ** (bb - b0) / (fact[a - a0] * fact[bb - b0]) + return tot + rng = random.Random(seed) + num = den = 0.0 + acap = 4 / (3 * k) + for _ in range(n): + z = [rng.gauss(0, 1) for _ in jets] + cf = [mu[i] + sum(S[i][j] * z[j] for j in range(m)) for i in range(m)] + hM = [deriv(cf, 2, 0, -r / 2, 0.0), deriv(cf, 1, 1, -r / 2, 0.0), deriv(cf, 0, 2, -r / 2, 0.0)] + hS = [deriv(cf, 2, 0, r / 2, 0.0), deriv(cf, 1, 1, r / 2, 0.0), deriv(cf, 0, 2, r / 2, 0.0)] + dM = hM[0] * hM[2] - hM[1] ** 2 + dS = hS[0] * hS[2] - hS[1] ** 2 + if not (hM[0] < 0 and dM > 0 and dS < 0): + continue + Wv = abs(dM * dS) + den += Wv + lamv = -hM[2] + M3 = max(abs(deriv(cf, a, 3 - a, x, y)) for (x, y) in pts for a in range(4)) + M4 = max(abs(deriv(cf, a, 4 - a, x, y)) for (x, y) in pts for a in range(5)) + if not (lamv > acap * r * M3 * M3 and r * M4 <= 3 * k / 10): + num += Wv + return {'r': r, 'b': b, 'k': k, 'n': n, 'seed': seed, 'QW_Gc_over_r3': num / den / r ** 3, 'Z_over_r2': den / n / r ** 2} + + +if __name__ == '__main__': + main() diff --git a/frontiers/c8_torus_vanishing_remainder_20261001/engine_e3.py b/frontiers/c8_torus_vanishing_remainder_20261001/engine_e3.py new file mode 100644 index 000000000..267890232 --- /dev/null +++ b/frontiers/c8_torus_vanishing_remainder_20261001/engine_e3.py @@ -0,0 +1,1714 @@ +#!/usr/bin/env python3 +"""Explicit cap-route constants for Theorem A of [LP] in dimension d = 3, for the torus kernel K_L with L >= 10 in every +frame: for 0 < r <= r_*, b in [0, 1], k in [1/2, 2], + + 1 - p_r(b, k, R) <= Q^W(G_r^c) <= C3(r_*) r^3, Z_r / r^2 >= z3(r_*), + +with G_r the good event of [LP] section 7 / [CAP] (1) (partial-block operator norms on the cylinder +D = [-2r, 2r] x ball(0, 2r)) and C3(r_*), z3(r_*) certified here (NOTE.md Theorem E3). The proof bounds +Q^W(G_r^c) = E_Q[W_r 1{G_r^c}] / Z_r from above by an exact Gaussian regression near r = 0: + + * covariances of the eight preconditioned pins and the 31 targets are exact power series in r, obtained from the Taylor + coefficients of the kernel at 0 (every negative power cancels identically, checked); the torus remainder is bounded + uniformly in r and in the frame by Cauchy estimates on a polydisc in C^3; + * the failure event is reduced to {lambda_1 <= (4/(3k)) r M_3^2} u {r M_4 > 3k/10}; M_3 is bounded blockwise through exact + averaging identities of the pinned jets and M_4 through the Taylor series at the midpoint (Frobenius norms); + * the main term is integrated over the transverse Hessian B = -D_y^2 f(M) in eigenvalue coordinates after an exact + regression on its three entries, against an angle-free Gaussian majorant of its density; the remaining expectations are + closed-form incomplete Gaussian and chi moments plus Hoelder-controlled perturbations; + * the normalizer Z_r is bounded below through a Loewner-order coupling with the contact law, whose moments + E[det(B)^a tr(B)^c 1{B > 0}] are in closed form; the rare branches are Gaussian and chi tails. +All arithmetic is exact rational interval arithmetic (outward rounding to 2^-160); standard library only. +""" +import argparse +import json +import math +import multiprocessing +import os +import sys +from fractions import Fraction as Fr + +HERE = os.path.dirname(os.path.abspath(__file__)) +MUTANTS = ('no-delta', 'cap-half', 'no-zfloor-correction', 'no-om-term', 'no-lambda2') +MUT = None +PBITS = 160 +L_MIN = 10 +NX = 60 # Taylor order in x of the covariance series (exact); the rest is a bounded tail +NB = 24 # truncation order of the Taylor tails of the 4-jets at the midpoint (the rest is bounded) +X0 = Fr(1, 64) # default threshold for the quadratic near-branch analysis (records use COMBOS) +THETA = Fr(1, 32) # default splitting parameter in the max-moment lemma (records use COMBOS) +THETA_E = Fr(1, 16) # splitting parameter for the ||r nu - v||^2 factor +QS = (2, 4, 8, 16) # Hoelder exponents of the rare branches: E[W 1_E] <= ||W||_q P(E)^(1 - 1/q), smallest bound used +R0_COUPLING = 12 # radius of the Loewner coupling of the transverse Hessian with the contact law (floor, section 6) +R_STARS = (Fr(1, 4096), Fr(1, 2048), Fr(1, 1024), Fr(1, 512), Fr(1, 256), Fr(1, 128), Fr(1, 64)) +BAND_B = (Fr(0), Fr(1)) +BAND_K = (Fr(1, 2), Fr(2)) + + +def require(cond, msg): + if not cond: + print(json.dumps({'check': 'FAIL', 'reason': msg, 'mutant': MUT})) + sys.exit(1) + + +# ----------------------------------------------------------------------------- rational intervals (from Math-#195 / #203 / #206) +def rdown(x): + return Fr(x.numerator * (1 << PBITS) // x.denominator, 1 << PBITS) + + +def rup(x): + return Fr(-((-x.numerator) * (1 << PBITS) // x.denominator), 1 << PBITS) + + +class IV: + __slots__ = ('lo', 'hi') + + def __init__(self, lo, hi=None): + lo = Fr(lo) + hi = lo if hi is None else Fr(hi) + if hi < lo: + raise ValueError('empty interval') + self.lo, self.hi = rdown(lo), rup(hi) + + def __repr__(self): + return 'IV(%s, %s)' % (float(self.lo), float(self.hi)) + + def __add__(self, o): + o = o if isinstance(o, IV) else IV(o) + return IV(self.lo + o.lo, self.hi + o.hi) + __radd__ = __add__ + + def __neg__(self): + return IV(-self.hi, -self.lo) + + def __sub__(self, o): + return self + (-(o if isinstance(o, IV) else IV(o))) + + def __rsub__(self, o): + return IV(o) - self + + def __mul__(self, o): + o = o if isinstance(o, IV) else IV(o) + c = (self.lo * o.lo, self.lo * o.hi, self.hi * o.lo, self.hi * o.hi) + return IV(min(c), max(c)) + __rmul__ = __mul__ + + def inv(self): + if self.lo <= 0 <= self.hi: + raise ZeroDivisionError('interval contains zero') + return IV(1 / self.hi, 1 / self.lo) + + def __truediv__(self, o): + o = o if isinstance(o, IV) else IV(o) + return self * o.inv() + + def __rtruediv__(self, o): + return IV(o) * self.inv() + + def sq(self): + if self.lo >= 0: + return IV(self.lo * self.lo, self.hi * self.hi) + if self.hi <= 0: + return IV(self.hi * self.hi, self.lo * self.lo) + return IV(0, max(self.lo * self.lo, self.hi * self.hi)) + + def meet(self, o): + lo, hi = max(self.lo, o.lo), min(self.hi, o.hi) + if hi < lo: + raise ValueError('inconsistent enclosures') + return IV(lo, hi) + + def width(self): + return self.hi - self.lo + + def mid(self): + return (self.lo + self.hi) / 2 + + def contains(self, x): + return self.lo <= x <= self.hi + + +def isqrt_iv(x): + """Enclosure of sqrt(x) for an interval x with x.lo > 0.""" + if x.lo <= 0: + raise ValueError('sqrt of interval reaching zero: %r' % x) + + def lo_root(v): + n = v.numerator * (1 << (2 * PBITS)) // v.denominator + s = math.isqrt(n) + return Fr(s, 1 << PBITS) + + def hi_root(v): + n = -((-v.numerator * (1 << (2 * PBITS))) // v.denominator) + s = math.isqrt(n) + 1 + return Fr(s, 1 << PBITS) + return IV(lo_root(x.lo), hi_root(x.hi)) + + +def exp_neg_point(t): + """Enclosure of exp(-t) for a rational t >= 0: halve t to t <= 1/2, evaluate the alternating series in fixed point + (ulp = 2^-(PBITS+40)) with an integer bound on the accumulated rounding error, then square back.""" + t = Fr(t) + m = 0 + while t > Fr(1, 2): + t /= 2 + m += 1 + P2 = PBITS + 40 + ONE = 1 << P2 + X = t.numerator * ONE // t.denominator # X / ONE <= t < (X + 1) / ONE + # series at x_lo = X / ONE: exp(-x_lo) = sum (-1)^n x_lo^n / n! (alternating, terms decreasing for x_lo <= 1/2) + S = ONE + T = ONE + E = 0 # error bound of T in ulps + Etot = 0 + n = 0 + while T > 0: + n += 1 + T = (T * X) // (ONE * n) + E = (E * X) // (ONE * n) + 2 + S += (-1) ** n * T + Etot += E + Etot += E + 1 # first omitted exact term is below (T_n + E) <= E + 1 ulps + # exp(-t) in [exp(-(X + 1)/ONE), exp(-X/ONE)] and exp(-(X + 1)/ONE) >= exp(-X/ONE) - 1/ONE (Lipschitz 1) + v = IV(Fr(S - Etot - 1, ONE), Fr(S + Etot, ONE)) + for _ in range(m): + v = v.sq() + return v + + +def exp_neg(t): + """exp(-t) on an interval t with t.lo >= 0 (monotone decreasing).""" + return IV(exp_neg_point(t.hi).lo, exp_neg_point(t.lo).hi) + + +def _atan_inv(n): + """Enclosure of arctan(1/n), n >= 2, alternating series.""" + x = Fr(1, n) + s = Fr(0) + term = x + k = 0 + while True: + s += term / (2 * k + 1) + k += 1 + term = term * (-x * x) + if abs(term) / (2 * k + 1) < Fr(1, 1 << (PBITS + 8)): + break + return IV(s - abs(term), s + abs(term)) + + +PI = 4 * (4 * _atan_inv(5) - _atan_inv(239)) +SQRT2 = isqrt_iv(IV(2)) +SQRT2PI = isqrt_iv(2 * PI) + + +def phi_point(x): + """Enclosure of Phi(x) = P(N(0,1) <= x) for a rational x with |x| <= 12, from the series + Phi(x) = 1/2 + (1/sqrt(2 pi)) sum_n (-1)^n x^(2n+1) / (2^n n! (2n+1)), evaluated in fixed point (ulp = 2^-(PBITS+40)) + with an explicit integer bound E on the accumulated rounding error (in ulps) and the alternating-tail bound.""" + x = Fr(x) + if x < 0: + p = phi_point(-x) + return IV(1 - p.hi, 1 - p.lo) + if x > 12: + raise ValueError('phi_point range') + P2 = PBITS + 40 + ONE = 1 << P2 + X = x.numerator * ONE // x.denominator # x_lo = X / ONE <= x < (X + 1) / ONE ; |Phi(x) - Phi(x_lo)| <= 1 ulp + if X == 0: # 0 <= x < 1 ulp: Phi(x) in [1/2, 1/2 + ulp] + return IV(Fr(1, 2), Fr(1, 2) + Fr(1, ONE)) + X2u = (X + 1) * (X + 1) # upper bound of x^2 ONE^2 + S = 0 + T = X # T_n ~ x^(2n+1) / (2^n n!) in ulps + E = 1 # error bound of T_n in ulps + Etot = 1 # error of S in ulps (starts with the x rounding) + n = 0 + while T > 0: + S += (-1) ** n * (T // (2 * n + 1)) + Etot += E + 1 + n += 1 + T = (T * X * X) // (ONE * ONE * 2 * n) + E = (E * X2u) // (ONE * ONE * 2 * n) + 2 + # once T == 0 in fixed point the remaining terms are each below 1 ulp; if x^2 >= 2 n they are still growing in + # exact arithmetic, so continue counting until they decrease: bound the tail by the first omitted exact term + # <= (T_n + E) ulps <= (E + 1) ulps when T_n == 0 ... but growth may resume; require the decreasing regime. + if x * x > 2 * n: + raise ValueError('series terminated before the decreasing regime') + Etot += E + 1 + core = IV(Fr(S - Etot, ONE), Fr(S + Etot, ONE)) / SQRT2PI + return IV(Fr(1, 2) + core.lo, Fr(1, 2) + core.hi) + + +def Phi(x): + """Phi on an interval (monotone); arguments clipped to [-12, 12] (clipping only widens).""" + lo = min(max(x.lo, Fr(-12)), Fr(12)) + hi = max(min(x.hi, Fr(12)), Fr(-12)) + if x.lo < -12: + plo = Fr(0) + else: + plo = phi_point(lo).lo + if x.hi > 12: + phi_ = Fr(1) + else: + phi_ = phi_point(hi).hi + return IV(plo, phi_) + + +def phi_pt(x): + """phi(x) for rational x (interval).""" + x = Fr(x) + return exp_neg_point(x * x / 2) / SQRT2PI + + +def Phibar_pt(x): + """1 - Phi(x) for rational x (interval).""" + x = Fr(x) + if abs(x) <= 12: + p = phi_point(x) + return IV(1 - p.hi, 1 - p.lo) + if x > 0: + return IV(0, (phi_pt(x) / x).hi) # Mills: Phibar(x) <= phi(x)/x + return IV(1 - (phi_pt(-x) / (-x)).hi, 1) + + +def dfact(n): + """(n)!! for n >= -1.""" + return math.prod(range(n, 0, -2)) if n > 0 else 1 + + +def gauss_moment(j): + """E[Z^j] for Z ~ N(0, 1).""" + return 0 if j % 2 else dfact(j - 1) + + +def upper_moments(x, J): + """[M_0(x), ..., M_J(x)], M_j(x) = integral_x^inf t^j phi(t) dt, for rational x (intervals). For x < 0, + M_j(x) = E[Z^j] - (-1)^j M_j(-x).""" + x = Fr(x) + if x < 0: + M = upper_moments(-x, J) + return [IV(gauss_moment(j)) - M[j] * (-1) ** j for j in range(J + 1)] + ph = phi_pt(x) + M = [Phibar_pt(x), ph] + for j in range(2, J + 1): + M.append(ph * x ** (j - 1) + M[j - 2] * (j - 1)) + return M[:J + 1] + + +def rup_rel(x, bits=200): + """Round a rational x >= 0 up to a dyadic with `bits` significant bits (upper bounds stay upper bounds).""" + x = Fr(x) + if x <= 0: + return x + e = x.numerator.bit_length() - x.denominator.bit_length() + sh = bits - e + if sh >= 0: + return Fr(-((-x.numerator << sh) // x.denominator), 1 << sh) + return Fr(-((-x.numerator) // (x.denominator << -sh)) << -sh) + + +def rdown_rel(x, bits=200): + """Round a rational x >= 0 down to a dyadic with `bits` significant bits.""" + x = Fr(x) + if x <= 0: + return x + e = x.numerator.bit_length() - x.denominator.bit_length() + sh = bits - e + if sh >= 0: + return Fr((x.numerator << sh) // x.denominator, 1 << sh) + return Fr((x.numerator // (x.denominator << -sh)) << -sh) + + +def sqrt_up(x): + """Rational upper bound of sqrt(x), x >= 0 rational, relative excess below 2^-198 (no absolute rounding floor): the root + step adds less than 2^-209 and rup_rel(., 200) less than 2^-199. (The earlier '2^-200' was too sharp: at x = 49/100 the + excess is (8/7) 2^-200, review C59-DOC-01.)""" + x = Fr(x) + if x == 0: + return Fr(0) + n, d = x.numerator, x.denominator + nd = n * d + m = max(0, (420 - nd.bit_length()) // 2 + 1) + return rup_rel(Fr(math.isqrt(nd << (2 * m)) + 1, d << m)) + + +def sqrt_down(x): + """Rational lower bound of sqrt(x), x >= 0 rational.""" + x = Fr(x) + if x <= 0: + return Fr(0) + n, d = x.numerator, x.denominator + nd = n * d + m = max(0, (420 - nd.bit_length()) // 2 + 1) + return rdown_rel(Fr(math.isqrt(nd << (2 * m)), d << m)) + + +def iroot(x, p): + """Upper bound (rational) of x^(1/p) for rational x >= 0 and p a power of two.""" + v = Fr(x) + while p > 1: + v = sqrt_up(v) + p //= 2 + return v + + +def pow2(p): + q = 1 + while q < p: + q *= 2 + return q + + +ZN = {} + + +def znorm(p): + """Upper bound of ||N(0,1)||_p for p a power of two (p = 1 uses sqrt(2/pi) < 4/5).""" + if p == 1: + return Fr(4, 5) + if p not in ZN: + ZN[p] = iroot(Fr(dfact(p - 1)), p) + return ZN[p] + + +def znorm1(p): + """max(1, ||N(0,1)||_p): the factor in ||(|mu| + ||Sigma^(1/2) z||)||_p <= |mu| + sqrt(tr Sigma) znorm1(p).""" + return Fr(1) if p <= 2 else znorm(p) + + +def frob_norm(mu_abs, tr_hi, p): + """Upper bound of || ||X|| ||_p for a Gaussian vector X with ||E X|| <= mu_abs and tr Cov X <= tr_hi (Minkowski in + L^(p/2) on the eigen-decomposition for p >= 2; Lyapunov for p <= 2).""" + return rup_rel(mu_abs + sqrt_up(tr_hi) * znorm1(pow2(p))) + + +def gamma_half(n2): + """Gamma(n2 / 2) for an integer n2 >= 1, as an interval (sqrt(pi) for odd n2).""" + if n2 % 2 == 0: + return IV(math.factorial(n2 // 2 - 1)) + n = (n2 - 1) // 2 # Gamma(n + 1/2) = (2n - 1)!! sqrt(pi) / 2^n + return isqrt_iv(PI) * Fr(dfact(2 * n - 1), 2 ** n) + + +def chi_moment(nu, j): + """E[chi_nu^j] = 2^(j/2) Gamma((nu + j)/2) / Gamma(nu/2) (interval), integer j >= 0.""" + if j % 2 == 0: + return IV(math.prod(nu + 2 * i for i in range(j // 2))) + out = gamma_half(nu + j) / gamma_half(nu) + for _ in range(j): + out = out * SQRT2 + return out + + +CN = {} + + +def chi_norm(nu, p): + """Upper bound of ||chi_nu||_p for p a power of two.""" + if p == 1: + return sqrt_up(Fr(nu)) + key = (nu, p) + if key not in CN: + CN[key] = iroot(Fr(math.prod(nu + 2 * i for i in range(p // 2))), p) + return CN[key] + + +CC = {} + + +def chi_const(nu): + """C_nu sqrt(2 pi) with C_nu = 1 / (2^(nu/2 - 1) Gamma(nu/2)): E[chi_nu^j 1{chi > x}] = C_nu sqrt(2 pi) M_(j+nu-1)(x).""" + if nu not in CC: + p2 = IV(Fr(2) ** ((nu - 2) // 2)) if nu % 2 == 0 else IV(Fr(2) ** ((nu - 3) // 2)) * SQRT2 + CC[nu] = SQRT2PI / (p2 * gamma_half(nu)) + return CC[nu] + + +def chi_upper_moments(nu, x, J): + """[E[chi_nu^j 1{chi_nu > x}] for j = 0..J] (intervals), rational x >= 0.""" + M = upper_moments(x, J + nu - 1) + c = chi_const(nu) + return [M[j + nu - 1] * c for j in range(J + 1)] + + +def chi_tail(nu, x): + """Rational upper bound of P(chi_nu > x) for rational x >= 0 (Mills-type bound beyond the series range).""" + x = Fr(x) + if x <= 0: + return Fr(1) + if x <= 12: + return min(Fr(1), chi_upper_moments(nu, x, 0)[0].hi) + # x > 12: P(chi_nu > x) = c_nu sqrt(2pi) M_(nu-1)(x), M_j(x) <= phi(x) x^(j-1) (1 + 2 (j-1)/x^2) for x^2 >= 2 j, and + # phi(x) <= m!/(x^2/2)^m / sqrt(2 pi) (m = 40) + y = x * x / 2 + ph = Fr(math.factorial(40)) / y ** 40 * Fr(2, 5) # 1/sqrt(2 pi) < 2/5 + j = nu - 1 + Mj = ph * (x ** (j - 1) if j >= 1 else 1 / x) * (1 + Fr(2 * max(j - 1, 1)) / (x * x)) + return min(Fr(1), Mj * Fr(51, 20)) # c_nu sqrt(2 pi) <= sqrt(2 pi) < 51/20 + + +def phibar_upper(x): + """Rational upper bound of 1 - Phi(x) for rational x >= 0: the series value for x <= 12, and for x > 12 the Mills bound + phi(x)/x with exp(-y) <= m!/y^m (m = 40), which stays exact far below the 2^-160 rounding floor.""" + x = Fr(x) + if x <= 12: + return Phibar_pt(x).hi + y = x * x / 2 + m = 40 + return Fr(math.factorial(m)) / y ** m / (x * Fr(5, 2)) # sqrt(2 pi) > 5/2 + + +def gauss_tail2(mu_abs, sd, t): + """Upper bound of P(|X| > t) for X Gaussian with |mean| <= mu_abs, sd <= sd.""" + if t <= mu_abs: + return Fr(1) + return min(Fr(1), 2 * phibar_upper((t - mu_abs) / sd)) + + +def gauss_tail1(mu_abs, sd, t): + if t <= mu_abs: + return Fr(1) + return min(Fr(1), phibar_upper((t - mu_abs) / sd)) + + +def gauss_norm(mu_abs, sd, p): + """Upper bound of ||X||_p for X Gaussian with |mean| <= mu_abs and sd <= sd.""" + return rup_rel(mu_abs + sd * znorm(pow2(p))) + + +def absup(x): + return max(abs(x.lo), abs(x.hi)) + + +def pow_tail(x, q): + """Upper bound of x^(1 - 1/q) for 0 <= x <= 1 (q a power of two).""" + if x <= 0: + return Fr(0) + return iroot(rup_rel(x, 64) ** (q - 1), q) + + +# ----------------------------------------------------------------------------- functionals and exact covariance series (d = 3) +HALF = Fr(1, 2) +XM, XS, X0PT = -HALF, HALF, Fr(0) +JET4_IDX = {'X%d%d%d' % (a, b1, 4 - a - b1): (a, b1, 4 - a - b1) for a in range(5) for b1 in range(5 - a)} +JET4 = tuple(sorted(JET4_IDX, key=lambda n: (-JET4_IDX[n][0], -JET4_IDX[n][1]))) +BLOCKS = ((4, 0), (3, 1), (2, 2), (1, 3), (0, 4)) # partial blocks (a, c) of the fourth derivatives, a + c = 4 + + +def block_members(a, c): + """[(name, Frobenius multiplicity c!/beta!)] of the 4-jet block d_x^a D_y^c f(0).""" + out = [] + for b1 in range(c, -1, -1): + b2 = c - b1 + out.append(('X%d%d%d' % (a, b1, b2), math.factorial(c) // (math.factorial(b1) * math.factorial(b2)))) + return out + + +def term(c, p, a, b1, b2, x0): + """c r^p d_x^a d_y1^b1 d_y2^b2 f(x0 r, 0, 0).""" + return (Fr(c), p, a, b1, b2, Fr(x0)) + + +def functionals(): + pins = { + 'p1': [term(HALF, 0, 0, 0, 0, XM), term(HALF, 0, 0, 0, 0, XS)], + 'p2': [term(-1, -1, 0, 0, 0, XM), term(1, -1, 0, 0, 0, XS)], + 'p3p': [term(6, -2, 1, 0, 0, XM), term(6, -2, 1, 0, 0, XS), term(12, -3, 0, 0, 0, XM), term(-12, -3, 0, 0, 0, XS)], + 'p4': [term(-1, -1, 1, 0, 0, XM), term(1, -1, 1, 0, 0, XS)], + } + for j, (e1, e2) in ((1, (1, 0)), (2, (0, 1))): + pins['q1%d' % j] = [term(HALF, 0, 0, e1, e2, XM), term(HALF, 0, 0, e1, e2, XS)] + pins['q2%d' % j] = [term(-1, -1, 0, e1, e2, XM), term(1, -1, 0, e1, e2, XS)] + targets = { + 'a11': [term(1, 0, 0, 2, 0, XM)], 'a22': [term(1, 0, 0, 0, 2, XM)], 'a12': [term(1, 0, 0, 1, 1, XM)], + 'o11': [term(1, -1, 0, 2, 0, XS), term(-1, -1, 0, 2, 0, XM)], + 'o22': [term(1, -1, 0, 0, 2, XS), term(-1, -1, 0, 0, 2, XM)], + 'o12': [term(1, -1, 0, 1, 1, XS), term(-1, -1, 0, 1, 1, XM)], + 'T': [term(1, -2, 2, 0, 0, XM), term(4, -3, 1, 0, 0, XM), term(2, -3, 1, 0, 0, XS), term(6, -4, 0, 0, 0, XM), + term(-6, -4, 0, 0, 0, XS)], + 'tau': [term(1, -3, 2, 0, 0, XS), term(-1, -3, 2, 0, 0, XM), term(-6, -4, 1, 0, 0, XM), term(-6, -4, 1, 0, 0, XS), + term(-12, -5, 0, 0, 0, XM), term(12, -5, 0, 0, 0, XS)], + } + for j, (e1, e2) in ((1, (1, 0)), (2, (0, 1))): + targets['v%d' % j] = [term(1, -1, 1, e1, e2, XM), term(1, -2, 0, e1, e2, XM), term(-1, -2, 0, e1, e2, XS)] + targets['nu%d' % j] = [term(1, -2, 1, e1, e2, XM), term(1, -2, 1, e1, e2, XS), term(2, -3, 0, e1, e2, XM), + term(-2, -3, 0, e1, e2, XS)] + for b1 in range(3, -1, -1): + targets['y%s' % ('1' * b1 + '2' * (3 - b1))] = [term(1, 0, 0, b1, 3 - b1, X0PT)] + for n, (a, b1, b2) in JET4_IDX.items(): + targets[n] = [term(1, 0, a, b1, b2, X0PT)] + return pins, targets + + +PIN_NAMES = ('p1', 'p2', 'p3p', 'p4', 'q11', 'q21', 'q12', 'q22') +BNAMES = ('a11', 'a22', 'a12') # the transverse Hessian A = D_y^2 f(M) = -B +VNAMES = ('v1', 'v2') +ONAMES = ('o11', 'o22', 'o12') +YNAMES = ('y111', 'y112', 'y122', 'y222') +FREE = VNAMES + ONAMES + YNAMES # the free third-derivative blocks, in Cholesky order +FREE_W = (1, 1, 1, 1, 2, 1, 3, 3, 1) # Frobenius multiplicities (Euclidean norms in these weights) +TARGET_NAMES = BNAMES + FREE + ('T', 'tau', 'nu1', 'nu2') + JET4 +NP = len(PIN_NAMES) + + +def weight(F): + """Scaling weight a - (power of r), common to all terms of a preconditioned functional.""" + ws = {t[2] - t[1] for t in F} + require(len(ws) == 1, 'functional not homogeneous') + return ws.pop() + + +def hcoef(n): + """d^n/dx^n exp(-x^2/2) at 0.""" + if n % 2: + return 0 + return (-1) ** (n // 2) * dfact(n - 1) + + +PAIR_CACHE = {} + + +def pair_series(F, G, key): + """Exact data of Cov_K(F, G) = sum_gamma kappa_gamma pi_gamma r^(gx - wF - wG), gamma = (gx, gy1, gy2): + returns (reference series {power: rational}, weight w, list of (|c c'|, a+a', gy1, gy2) for the remainder bounds).""" + if key in PAIR_CACHE: + return PAIR_CACHE[key] + wF, wG = weight(F), weight(G) + w = wF + wG + pi = {} + absterms = [] + for (cf, pf, af, bf1, bf2, xf) in F: + for (cg, pg, ag, bg1, bg2, xg) in G: + g1, g2 = bf1 + bg1, bf2 + bg2 + sgn = (-1) ** (ag + bg1 + bg2) + d = xf - xg + absterms.append((abs(cf * cg), af + ag, g1, g2)) + for gx in range(af + ag, NX + 1): + m = gx - af - ag + val = cf * cg * sgn * d ** m / math.factorial(m) + if val != 0: + pi[(gx, g1, g2)] = pi.get((gx, g1, g2), Fr(0)) + val + for (gx, g1, g2), v in pi.items(): + require(v == 0 or gx - w >= 0, 'negative power of r in a covariance (regularity fails)') + ser = {} + for (gx, g1, g2), v in pi.items(): + kap = hcoef(gx) * hcoef(g1) * hcoef(g2) + if kap and v: + ser[gx - w] = ser.get(gx - w, Fr(0)) + kap * v + out = ({p: c for p, c in ser.items() if c != 0}, w, absterms) + PAIR_CACHE[key] = out + return out + + +E_UP = Fr(27183, 10000) # > e +SQRT3_UP = Fr(7, 4) # > sqrt(3) + + +def torus_M1(L): + """Bound of |sum_{n != 0} G(z + p_n)| on the polydisc |z_1|, |z_2|, |z_3| <= 1 (every frame, |p_n| = |n| L): + exp(3/2) sum_{j >= 1} (24 j^2 + 2) exp(-(j L - sqrt 3)^2 / 2); 24 j^2 + 2 lattice points have sup-norm j.""" + L = Fr(L) + e32 = exp_neg_point(Fr(3, 2)).inv().hi + tot = Fr(0) + for j in range(1, 6): + tot += (24 * j * j + 2) * exp_neg_point((j * L - SQRT3_UP) ** 2 / 2).hi + # j >= 6: (24 j^2 + 2) exp(-(jL - 7/4)^2/2) decreases by more than 1/2 per step for L >= 10 + tail = 2 * (24 * 36 + 2) * exp_neg_point((6 * L - SQRT3_UP) ** 2 / 2).hi + return e32 * (tot + tail) + + +def theta_minus_one(L): + L = Fr(L) + tot = Fr(0) + for j in range(1, 6): + tot += (24 * j * j + 2) * exp_neg_point((j * L) ** 2 / 2).hi + return tot + 2 * (24 * 36 + 2) * exp_neg_point((6 * L) ** 2 / 2).hi + + +def cov_band(F, G, key, r0, r1, M1): + """Enclosure of the covariance (unnormalized torus kernel sum_n G(z + p_n)) of F and G, for r in [r0, r1].""" + ser, w, absterms = pair_series(F, G, key) + val = IV(0) + for p, c in ser.items(): + val = val + IV(r0 ** p, r1 ** p) * c + A = max((t[1] for t in absterms), default=0) + # Taylor truncation tail of the reference kernel (orders gx > NX) + tail = Fr(0) + for (acc, aa, g1, g2) in absterms: + tail += acc * abs(hcoef(g1) * hcoef(g2)) + tail *= 2 * Fr(NX + 1) ** A * r1 ** (NX + 1 - w) + # torus remainder: Cauchy estimates |rho_gamma| <= gx! gy1! gy2! M1 on the unit polydisc + tor = Fr(0) + for (acc, aa, g1, g2) in absterms: + tor += acc * math.factorial(g1) * math.factorial(g2) * Fr(max(w, 1)) ** aa + tor = tor * M1 / (1 - E_UP * r1) + err = tail + tor + return val + IV(-err, err) + + +# ----------------------------------------------------------------------------- interval linear algebra +def solve_iv(A, B): + """Interval Gaussian elimination with partial pivoting on midpoints: X[c] solves A X[c] = B[c].""" + n = len(A) + M = [[A[i][j] for j in range(n)] + [B[c][i] for c in range(len(B))] for i in range(n)] + for col in range(n): + p = max(range(col, n), key=lambda i: abs(M[i][col].mid())) + M[col], M[p] = M[p], M[col] + piv = M[col][col] + for i in range(col + 1, n): + f = M[i][col] / piv + for j in range(col, len(M[i])): + M[i][j] = M[i][j] - f * M[col][j] + X = [] + for c in range(len(B)): + x = [None] * n + for i in reversed(range(n)): + s = M[i][n + c] + for j in range(i + 1, n): + s = s - M[i][j] * x[j] + x[i] = s / M[i][i] + X.append(x) + return X + + +def cholesky(C): + """Interval Cholesky of an n x n SPD interval matrix (pivots must be positive).""" + n = len(C) + L = [[IV(0)] * n for _ in range(n)] + for i in range(n): + for j in range(i + 1): + s = C[i][j] - sum((L[i][l] * L[j][l] for l in range(j)), IV(0)) + if i == j: + require(s.lo > 0, 'Cholesky pivot not positive') + L[i][j] = isqrt_iv(s) + else: + L[i][j] = s / L[j][j] + return L + + +def opnorm_lower_tri(L, rows, cols): + """Upper bound of the operator norm of the block L[rows][cols] of an interval lower-triangular matrix: + max |diagonal| + Frobenius norm of the rest (square diagonal blocks), Frobenius norm otherwise.""" + if rows == cols: + dg = max(absup(L[i][i]) for i in rows) + off = sum(absup(L[i][j]) ** 2 for i in rows for j in cols if j < i) + return rup_rel(dg + sqrt_up(off)) + return sqrt_up(sum(absup(L[i][j]) ** 2 for i in rows for j in cols)) + + +def sym3_eig_bounds(C): + """(lower bound of lambda_min, upper bound of lambda_max) of a symmetric 3 x 3 interval matrix (Gershgorin).""" + lo = min(C[i][i].lo - sum(absup(C[i][j]) for j in range(3) if j != i) for i in range(3)) + hi = max(C[i][i].hi + sum(absup(C[i][j]) for j in range(3) if j != i) for i in range(3)) + return lo, hi + + +def det3(C): + a, b, c = C[0] + d, e, f = C[1] + g, h, i = C[2] + return a * (e * i - f * h) - b * (d * i - f * g) + c * (d * h - e * g) + + +# ----------------------------------------------------------------------------- the conditional law on an r-band +class Law: + pass + + +def band_law(r0, r1, L=L_MIN): + """Interval enclosures, uniform over r in [r0, r1], every frame and every torus side >= L, of the Q-law of the + targets: mean = b alpha + k beta, covariance C (normalized kernel), and the pin energy coefficients; then the + regression on the transverse Hessian (three entries) and the g-law of the remaining targets.""" + pins, targets = functionals() + P = [pins[n] for n in PIN_NAMES] + T = [targets[n] for n in TARGET_NAMES] + M1 = torus_M1(L) + th1 = theta_minus_one(L) + nt = len(T) + Spp = [[None] * NP for _ in range(NP)] + for i in range(NP): + for j in range(i, NP): + Spp[i][j] = Spp[j][i] = cov_band(P[i], P[j], ('p', i, j), r0, r1, M1) + Stp = [[cov_band(T[i], P[j], ('tp', i, j), r0, r1, M1) for j in range(NP)] for i in range(nt)] + Stt = [[None] * nt for _ in range(nt)] + for i in range(nt): + for j in range(i, nt): + Stt[i][j] = Stt[j][i] = cov_band(T[i], T[j], ('tt', i, j), r0, r1, M1) + r = IV(r0, r1) + kvec = [-(r * r * r) * HALF, -(r * r), IV(12)] + [IV(0)] * (NP - 3) + e1 = [IV(1)] + [IV(0)] * (NP - 1) + W = solve_iv(Spp, Stp) + xs = solve_iv(Spp, [e1, kvec]) + law = Law() + law.r0, law.r1, law.L, law.M1, law.th1 = r0, r1, L, M1, th1 + law.alpha = {n: W[i][0] for i, n in enumerate(TARGET_NAMES)} + law.beta = {n: sum((W[i][j] * kvec[j] for j in range(NP)), IV(0)) for i, n in enumerate(TARGET_NAMES)} + scale = IV(1 / (1 + th1), 1) # K_L = (unnormalized) / Theta, Theta in [1, 1 + th1] + C = {} + for i, a in enumerate(TARGET_NAMES): + for j in range(i, nt): + c = TARGET_NAMES[j] + v = Stt[i][j] - sum((W[i][l] * Stp[j][l] for l in range(NP)), IV(0)) + C[(a, c)] = C[(c, a)] = v * scale + law.C = C + escale = IV(1, 1 + th1) + law.e_bb = xs[0][0] * escale + law.e_bk = sum((kvec[j] * xs[0][j] for j in range(NP)), IV(0)) * escale + law.e_kk = sum((kvec[j] * xs[1][j] for j in range(NP)), IV(0)) * escale + regress_on_B(law) + law.S = {blk: taylor_tail_coefficient(blk, r1, M1) for blk in BLOCKS} + law.net_var = {blk: net_max_variance(law.C, blk) for blk in BLOCKS if blk[1] >= 2} + return law + + +NET_M = 128 # rational unit vectors ((1 - t^2), 2 t)/(1 + t^2), t = j/NET_M, and their rotations + + +def circle_net(): + """Rational unit vectors u_j covering angles [0, pi) with consecutive angular gaps <= 2/NET_M (theta = 2 arctan t has + d theta/dt <= 2), together with the rotated copies (-u2, u1).""" + pts = [] + for j in range(NET_M + 1): + t = Fr(j, NET_M) + pts.append(((1 - t * t) / (1 + t * t), 2 * t / (1 + t * t))) + return pts + [(-u2, u1) for (u1, u2) in pts] + + +NET = circle_net() + + +def block_form_weights(blk, u): + """w_beta = (c!/beta!) u1^beta1 u2^beta2: d_x^a d_u^c f(0) = sum_beta w_beta X_(a,beta).""" + a, c = blk + return [(n, m * u[0] ** int(n[2]) * u[1] ** int(n[3])) for n, m in block_members(a, c)] + + +def net_max_variance(C, blk): + """Upper bound of max_j Var_Q(d_x^a d_(u_j)^c f(0)) over the net.""" + best = Fr(0) + for u in NET: + w = block_form_weights(blk, u) + v = sum(abs(wi) * abs(wj) * absup(C[(ni, nj)]) if ni != nj else wi * wi * C[(ni, ni)].hi + for ni, wi in w for nj, wj in w) + best = max(best, v) + return best + + +FROB_B = (IV(1), IV(1), SQRT2) # (B11, B22, B12) -> Frobenius-isometric coordinates (B11, B22, sqrt2 B12) + + +def regress_on_B(law): + """Regression of every target on the three entries of the transverse Hessian, in the Frobenius-isometric coordinates + b~ = (B11, B22, sqrt2 B12) of B = -A: F = F_g + beta~_F . (b~ - mu~), with F_g independent of B.""" + C = law.C + # covariance of b~ (B = -A: signs cancel in the covariance) + Cb = [[C[(BNAMES[i], BNAMES[j])] * FROB_B[i] * FROB_B[j] for j in range(3)] for i in range(3)] + law.Cb = Cb + law.detCb = det3(Cb) + require(law.detCb.lo > 0, 'transverse Hessian covariance not positive') + lo, hi = sym3_eig_bounds(Cb) + require(lo > 0, 'transverse Hessian covariance eigenvalue bound') + law.sB_lo2, law.sB_hi2 = lo, hi + law.sB_lo = sqrt_down(lo) + # regression coefficients of F on b~: beta~_F = Cov(F, b~) Cb^-1, Cov(F, b~_i) = -Cov(F, A_i) FROB_B[i] + others = [n for n in TARGET_NAMES if n not in BNAMES] + rhs = [[-C[(n, BNAMES[i])] * FROB_B[i] for i in range(3)] for n in others] + sol = solve_iv(Cb, rhs) + law.bt = {n: sol[i] for i, n in enumerate(others)} + law.bnorm = {n: sqrt_up(sum(absup(x) ** 2 for x in law.bt[n])) for n in others} + Cg = {} + for a in others: + for c in others: + Cg[(a, c)] = C[(a, c)] - sum((law.bt[a][i] * (-C[(c, BNAMES[i])] * FROB_B[i]) for i in range(3)), IV(0)) + law.Cg = Cg + # the free blocks in Frobenius coordinates: v, omega = (o11, o22, sqrt2 o12), Y~ = (y111, sqrt3 y112, sqrt3 y122, y222) + fw = [isqrt_iv(IV(w)) if w != 1 else IV(1) for w in FREE_W] + law.Lfree = cholesky([[Cg[(FREE[i], FREE[j])] * fw[i] * fw[j] for j in range(9)] for i in range(9)]) + law.fw = fw + law.sdg = {n: sqrt_up(max(Cg[(n, n)].hi, Fr(0))) for n in others} + law.sdQ = {n: sqrt_up(C[(n, n)].hi) for n in TARGET_NAMES} + + +def sd0_sq(g, M1): + """Upper bound of Var d^g f(0) = |d^(2g) K_L(0)| (normalized kernel, every frame, L >= L_MIN), g = (gx, gy1, gy2): + the reference value prod (2 g_i - 1)!! plus the Cauchy bound (2g)! M1 of the torus remainder.""" + return math.prod(dfact(2 * x - 1) for x in g) + math.prod(math.factorial(2 * x) for x in g) * M1 + + +def taylor_tail_coefficient(blk, r1, M1): + """S_(a,c)(r1) = sum_{gamma != 0} sigma_(a,c),gamma (2 r1)^|gamma| / gamma!, sigma^2 = sum_beta (c!/beta!) s^2_(a+gx, beta+gy): + the Frobenius norm of the Taylor tail of the block d_x^a D_y^c f at the midpoint over D.""" + a, c = blk + tot = Fr(0) + for n in range(1, NB + 1): + for gx in range(n + 1): + for g1 in range(n - gx + 1): + g2 = n - gx - g1 + s2 = Fr(0) + for b1 in range(c + 1): + b2 = c - b1 + mult = math.factorial(c) // (math.factorial(b1) * math.factorial(b2)) + s2 += mult * sd0_sq((a + gx, b1 + g1, b2 + g2), M1) + tot += sqrt_up(s2) * (2 * r1) ** n / (math.factorial(gx) * math.factorial(g1) * math.factorial(g2)) + # tail |gamma| = n > NB: s_delta <= 2^|delta| delta! sqrt(1 + M1) and (alpha + gamma)!/gamma! <= (n + 4)^4, so + # sigma (2 r1)^n / gamma! <= 2^(c/2) 2^(4 + n) (n + 4)^4 (2 r1)^n sqrt(1 + M1); (n+1)(n+2)/2 multi-indices of order n; + # the ratio of consecutive bounds is below 2 q for these n (q = 4 r1 <= 1/16) + q = 4 * r1 + require(q <= Fr(1, 16), 'Taylor tail ratio too large') + n = NB + 1 + base = 2 * 2 ** 4 * sqrt_up(Fr(2) ** c * (1 + M1)) + tail = base * Fr((n + 1) * (n + 2), 2) * Fr(n + 4) ** 4 * q ** n / (1 - 2 * q) + return rup_rel(tot + tail) + + +# ----------------------------------------------------------------------------- closed forms for the contact transverse Hessian +# B = m I + GOE_2 (diagonal N(0, 2), off-diagonal N(0, 1)): its eigenvalues are s -+ rho with s = m + (G11 + G22)/2 ~ N(m, 1) +# and rho = sqrt(((G11 - G22)/2)^2 + G12^2) Rayleigh, independent; det B = s^2 - rho^2, tr B = 2 s, B > 0 iff s > rho. +def upper_moments_iv(x, J): + """[M_0(x), ..., M_J(x)] over an interval x whose interior does not contain 0 (each M_j is monotone there).""" + if x.lo == x.hi: + return upper_moments(x.lo, J) + require(not (x.lo < 0 < x.hi), 'incomplete moment over an interval containing 0') + A, B = upper_moments(x.lo, J), upper_moments(x.hi, J) + return [IV(min(a.lo, b.lo), max(a.hi, b.hi)) for a, b in zip(A, B)] + + +def es_pos(m, n): + """[E[s^j 1{s > 0}] for j = 0..n], s ~ N(m, 1), rational m (intervals).""" + M = upper_moments(-Fr(m), n) + return [sum((M[i] * (math.comb(j, i) * Fr(m) ** (j - i)) for i in range(j + 1)), IV(0)) for j in range(n + 1)] + + +def isqrt2_pow(i): + """2^(-i/2) (interval).""" + return IV(Fr(1, 2 ** (i // 2))) if i % 2 == 0 else IV(Fr(1, 2 ** (i // 2))) / SQRT2 + + +def es_pos_exp(m, n): + """[E[s^j exp(-s^2/2) 1{s > 0}] for j = 0..n], s ~ N(m, 1), rational m: + = exp(-m^2/4)/sqrt2 . E[(m/2 + U/sqrt2)^j 1{U > -m/sqrt2}], U ~ N(0, 1).""" + m = Fr(m) + M = upper_moments_iv(-(IV(m) / SQRT2), n) + pre = exp_neg_point(m * m / 4) / SQRT2 + out = [] + for j in range(n + 1): + tot = IV(0) + for i in range(j + 1): + tot = tot + M[i] * (math.comb(j, i) * (m / 2) ** (j - i)) * isqrt2_pow(i) + out.append(pre * tot) + return out + + +def inner_rho_polys(a): + """integral_0^s (s^2 - rho^2)^a rho exp(-rho^2/2) d rho = P_a(s) - exp(-s^2/2) Q_a(s) (exact polynomial coefficient + dicts {power: Fraction}); with u = rho^2/2 it is integral_0^(s^2/2) (s^2 - 2u)^a e^(-u) du.""" + P, Q = {}, {} + for i in range(a + 1): + c = Fr(math.comb(a, i) * (-2) ** i * math.factorial(i)) + P[2 * (a - i)] = P.get(2 * (a - i), Fr(0)) + c + for l in range(i + 1): + pw = 2 * (a - i) + 2 * l + Q[pw] = Q.get(pw, Fr(0)) + c / (2 ** l * math.factorial(l)) + return P, Q + + +def contact_moment(a, c, m): + """E[det(B)^a tr(B)^c 1{B > 0}] for B = m I + GOE_2, rational m (interval).""" + P, Q = inner_rho_polys(a) + n = 2 * a + c + E1 = es_pos(m, n) + E2 = es_pos_exp(m, n) + tot = IV(0) + for pw, cf in P.items(): + tot = tot + E1[pw + c] * (cf * 2 ** c) + for pw, cf in Q.items(): + tot = tot - E2[pw + c] * (cf * 2 ** c) + return tot + + +def m3(m): + """m_(3,m) = E[det(B)^2 1{B > 0}] = E[(s^4 - 4 s^2 + 8) 1{s > 0}] - 4 sqrt2 exp(-m^2/4) Phi(m/sqrt2).""" + return contact_moment(2, 0, m) + + +def gauss_half_moment(j, m, sig): + """J_j(m, sig) = integral_0^inf lambda^j exp(-(lambda - m)^2/(2 sig^2)) d lambda for rational m, sig > 0 (interval): + sig sqrt(2 pi) E[(m + sig Z)^j 1{m + sig Z > 0}].""" + m, sig = Fr(m), Fr(sig) + M = upper_moments(-m / sig, j) + tot = sum((M[i] * (math.comb(j, i) * m ** (j - i) * sig ** i) for i in range(j + 1)), IV(0)) + return tot * SQRT2PI * sig + + +# ----------------------------------------------------------------------------- moment calculus (normalized by K = 12 k) +def binom(n, k): + return math.comb(n, k) + + +def pos_part_moments_chi(s, c, nu, nmax, extra_max): + """P[(n, e)] = upper bound of E[u^e (u^n - c^n)_+], u = s chi_nu, for 1 <= n <= nmax, 0 <= e <= extra_max.""" + x = c / s + M = chi_upper_moments(nu, x, nmax + extra_max) + out = {} + for n in range(1, nmax + 1): + for e in range(extra_max + 1): + out[(n, e)] = rup_rel((M[n + e] * s ** (n + e) - M[e] * c ** n * s ** e).hi) + return out + + +NU = {2: 2, 3: 3, 4: 4} # chi degrees of freedom of the free blocks v (2), omega (3), Y~ (4) + + +def normalized_moments(q, nmax, theta): + """Component moments, normalized by K = 12 k (K >= Klo), for n <= nmax, under the product of the g-law and nu: + E1[n], E1o[n], E1v[n] : upper bounds of E[y1^n], E[o0 y1^n], E[v0^2 y1^n], y1 = 1 + cmt1 + (r1/Klo) D1; + Tn[n], To[n], Tv[n] : upper bounds of sum_{i=2,3,4} E[(y_i^n - c^n)_+] (and with the factors o0, v0^2), + y_i <= u_i + delta_i (u_i = s_i chi_nu_i independent), threshold c = q['c']. + o0 = Klo u_3 and v0^2 = Klo^2 u_2^2 / 4 are unnormalized.""" + th = theta + cp = q['c'] * (1 - th) # <= c (1 + th)^{-(n-1)/n} for every n (Bernoulli) + PP = {i: pos_part_moments_chi(q['s'][i], cp, NU[i], nmax, 2) for i in (2, 3, 4)} + Eo0 = (chi_moment(3, 1) * q['s3']).hi + Ev0sq = (chi_moment(2, 2) * q['s2'] * q['s2']).hi / 4 + n_o0_2 = q['s3'] * chi_norm(3, 2) + n_v0sq_2 = q['s2'] * q['s2'] * chi_norm(2, 4) ** 2 / 4 + Klo = q['Klo'] + E1, E1o, E1v, Tn, To, Tv = {}, {}, {}, {}, {}, {} + base = rup_rel(1 + q['cmt1']) + bp = [Fr(1)] + for _ in range(nmax): + bp.append(rup_rel(bp[-1] * base)) + # (r/K) D1 terms: ||(rK D1)^j||_1 <= (rK ||D1||_pow2(j))^j and ||(rK D1)^j||_2 <= (rK ||D1||_pow2(2j))^j + d1 = [Fr(1)] + [rup_rel((q['rK'] * q['nD1'](pow2(j))) ** j) for j in range(1, nmax + 1)] + d2 = [Fr(1)] + [rup_rel((q['rK'] * q['nD1'](pow2(2 * j))) ** j) for j in range(1, nmax + 1)] + for n in range(0, nmax + 1): + ey = bp[n] + eo = bp[n] * Eo0 + ev = bp[n] * Ev0sq + for j in range(1, n + 1): + coef = binom(n, j) * bp[n - j] + ey += coef * d1[j] + eo += coef * n_o0_2 * d2[j] + ev += coef * n_v0sq_2 * d2[j] + E1[n], E1o[n], E1v[n] = rup_rel(ey), rup_rel(eo), rup_rel(ev) + if n == 0: + continue + f1 = (1 + th) ** (n - 1) + f2 = (1 + 1 / th) ** (n - 1) + tn = to = tv = Fr(0) + for i in (2, 3, 4): + P = PP[i] + dn = rup_rel(q['nd'](i, pow2(n)) ** n) + dn2 = rup_rel(q['nd'](i, pow2(2 * n)) ** n) + tn += f1 * P[(n, 0)] + f2 * dn + to += (f1 * Klo * P[(n, 1)] if i == 3 else f1 * Eo0 * P[(n, 0)]) + f2 * n_o0_2 * dn2 + tv += (f1 * Klo * Klo / 4 * P[(n, 2)] if i == 2 else f1 * Ev0sq * P[(n, 0)]) + f2 * n_v0sq_2 * dn2 + Tn[n], To[n], Tv[n] = rup_rel(tn), rup_rel(to), rup_rel(tv) + return E1, E1o, E1v, Tn, To, Tv + + +def half_gauss_moments(m, sig, J): + """[J_j(m, sig) for j = 0..J], J_j = integral_0^inf l^j exp(-(l - m)^2/(2 sig^2)) dl, rational m >= 0, sig > 0 (intervals): + J_0 = sig sqrt(2 pi) Phi(m/sig), J_1 = m J_0 + sig^2 exp(-m^2/(2 sig^2)), J_(j+1) = m J_j + j sig^2 J_(j-1) + (integration by parts; every term is positive for m >= 0).""" + m, sig = Fr(m), Fr(sig) + require(m >= 0 and sig > 0, 'half-line Gaussian moments') + s2 = sig * sig + out = [SQRT2PI * sig * (1 - Phibar_pt(m / sig))] + out.append(out[0] * m + exp_neg_point(m * m / (2 * s2)) * s2) + for j in range(1, J): + nxt = out[j] * m + out[j - 1] * (j * s2) + out.append(IV(rdown_rel(nxt.lo), rup_rel(nxt.hi))) + return out + + +def lam2_moments(b_lo, b_hi, eps, sig): + """Bounds on the lambda_2-integrals of the density majorant g(l) = exp(-(l - b)^2/(2 sig^2) + eps |l - b|/sig^2), + uniformly over b in [b_lo, b_hi] (b >= 0): I_hi[j] >= integral_0^inf l^j g(l) dl (j = 0..JM), I3_lo <= integral l^3 g. + For l >= 0, eps |l - b| <= eps (l + b), so g(l) <= exp((4 b eps + eps^2)/(2 sig^2)) exp(-(l - b - eps)^2/(2 sig^2)); + each J_j(m, sig) increases with m; and g(l) >= exp(-(l - b)^2/(2 sig^2)).""" + JM = 3 + 64 + shift = (4 * b_hi * eps + eps * eps) / (2 * sig * sig) + fac = exp_neg_point(shift).inv().hi + Jh = half_gauss_moments(b_hi + eps, sig, JM) + I_hi = [rup_rel(x.hi * fac) for x in Jh] + I3_lo = rdown_rel(half_gauss_moments(b_lo, sig, 3)[3].lo) + return I_hi, I3_lo + + +DETN = {} + + +def det_norm(p, bpp, muB, sig): + """Upper bound of ||det(B) 1{B > 0}||_p (p a power of two) for B = mu_B + Gaussian with Loewner coupling + B <= (b'' + eta ||z||) I + GOE (b'' rounded up to a 1/1024 grid): the contact moment E[det^p 1{B > 0}] at b'' on + {||z|| <= R0}, plus E[(||B||_F^2/2)^p 1{||z|| > R0}] <= 2^-p E[(||mu_B|| + sig chi_3)^(2p) 1{chi_3 > R0}].""" + bg = Fr(math.ceil(bpp * 1024), 1024) + key = (p, bg) + if key not in DETN: + DETN[key] = contact_moment(p, 0, bg).hi + cm = DETN[key] + R0 = Fr(R0_COUPLING) + U = chi_upper_moments(3, R0, 2 * p) + out = sum((U[i] * (binom(2 * p, i) * muB ** (2 * p - i) * sig ** i) for i in range(2 * p + 1)), IV(0)).hi / 2 ** p + return iroot(rup_rel(cm + out), p) + + +def box_bound(law, bb, kb, r0, r1, last_band=False, x0=None, theta=None): + """Certified upper bound of sup_{r in [r0, r1]} Q^W(G_r^c) / r^3 over b in bb, k in kb, with its pieces, for the near-branch + threshold x0 (X_0 of NOTE section 4) and the split parameter theta (section 5). The bound is proved for 0 < x0 < 2/9 and + 0 < theta < 1: then 3 x0 < 1, x0 <= 1/4 (root bounds), kappa = 3/(1 - 3 x0), c = 1 - kappa x0/2 > 0 and + (1 + kappa x0) c^2 <= 1. No claim is made outside that domain. COMBO = (1/64, 1/32), also used by Math-#215's caller, + lies inside it (review C61).""" + x0 = X0 if x0 is None else Fr(x0) + theta = THETA if theta is None else Fr(theta) + b = IV(bb[0], bb[1]) + k = IV(kb[0], kb[1]) + blo, bhi = bb + klo, khi = kb[0], kb[1] + require(blo >= 0, 'b >= 0 assumed by the density majorant') + Klo = 12 * klo + mu = {n: b * law.alpha[n] + k * law.beta[n] for n in TARGET_NAMES} + mabs = {n: absup(mu[n]) for n in TARGET_NAMES} + E = b * b * law.e_bb + b * k * law.e_bk * 2 + k * k * law.e_kk + require(E.hi > 0, 'energy') + sqE = sqrt_up(E.hi) + nl2 = MUT != 'no-lambda2' + # ---- the transverse Hessian B = -A: mean in Frobenius coordinates, its distance to b I, the density majorant + dmu = [b * (-law.alpha['a11'] - 1) + k * (-law.beta['a11']), b * (-law.alpha['a22'] - 1) + k * (-law.beta['a22']), + (b * law.alpha['a12'] + k * law.beta['a12']) * SQRT2] + eps = sqrt_up(sum(absup(x) ** 2 for x in dmu)) # sup over the box of ||mu_B - b I||_F + muB = rup_rel(bhi * sqrt_up(Fr(2)) + eps) # sup ||mu_B||_F + sig = sqrt_up(law.sB_hi2) # rational, >= sqrt(lambda_max(Cov b~)) + sB_lo = law.sB_lo # <= sqrt(lambda_min(Cov b~)) + KB = rup_rel((PI * SQRT2 / (2 * PI * SQRT2PI) / isqrt_iv(law.detCb)).hi) # pi sqrt2 (2 pi)^(-3/2) det^(-1/2) + s2g = sig * sig + ex0 = blo * blo / (2 * s2g) - eps * bhi / s2g # g(0; b) <= exp(-ex0) over the box + g0 = exp_neg_point(ex0).hi if ex0 >= 0 else exp_neg_point(-ex0).inv().hi + gbar = exp_neg_point(eps * eps / (2 * s2g)).inv().hi + # slope of the linear density bound g(l) <= g0 + l Lg on l >= 0: the global |g'| <= exp(-1/2) gbar / sig, or the chord + # of min(gbar, g0 exp(c l)) with c = (b_hi + eps)/sig^2 (g(l; b) <= g(0; b) exp((b + eps) l / sig^2) for l >= 0): + # g0 c (x - 1)/log x with log x = log(gbar/g0) = y (rational), (x - 1)/log x increasing in x + Lg = rup_rel(exp_neg_point(Fr(1, 2)).hi * gbar / sig) + y = (eps * eps + blo * blo - 2 * eps * bhi) / (2 * s2g) + if y > 0: + cc = (bhi + eps) / s2g + Lg = min(Lg, rup_rel(g0 * cc * (exp_neg_point(y).inv().hi - 1) / y)) + else: + Lg = Fr(0) # gbar <= g0: the bound g <= gbar alone is the smaller one + I_hi, I3_lo = lam2_moments(blo, bhi, eps, sig) + require(I3_lo > 0, 'lambda_2 moment') + + def l2norm(p): # ||lambda_2||_p under nu (and under nu'), p a power of two + if not nl2: + return Fr(0) + return iroot(rup_rel(I_hi[3 + p] / I3_lo), p) + # ---- regression on B and the coefficients bar-beta_i (NOTE section 4) + bn = law.bnorm + bv = sqrt_up(bn['v1'] ** 2 + bn['v2'] ** 2) + bo = sqrt_up(bn['o11'] ** 2 + bn['o22'] ** 2 + 2 * bn['o12'] ** 2) + by = sqrt_up(bn['y111'] ** 2 + 3 * bn['y112'] ** 2 + 3 * bn['y122'] ** 2 + bn['y222'] ** 2) + bnu = sqrt_up(bn['nu1'] ** 2 + bn['nu2'] ** 2) + a_fac = Fr(1, 2) if MUT == 'cap-half' else Fr(1) # the cap constant 4/(3k) (mutant: halved) + + def Bblk(blk): + return rup_rel(sqrt_up(sum(m * bn[n] ** 2 for n, m in block_members(*blk))) + law.S[blk] / sB_lo) + Bb = {blk: Bblk(blk) for blk in BLOCKS} + bb1 = rup_rel(Fr(5, 2) * Bb[(4, 0)] + 2 * Bb[(3, 1)]) # bar-beta_1 / r + bbars = {1: rup_rel(r1 * bb1), + 2: rup_rel(2 * bv + r1 * (Fr(5, 2) * Bb[(3, 1)] + 2 * Bb[(2, 2)])), + 3: rup_rel(bo + r1 * (Fr(5, 2) * Bb[(2, 2)] + 2 * Bb[(1, 3)])), + 4: rup_rel(by + r1 * (2 * Bb[(1, 3)] + 2 * Bb[(0, 4)]))} + bbar = max(bbars.values()) + # ---- free blocks: Cholesky factors in Frobenius coordinates (v | omega | Y~) + Lf = law.Lfree + Iv, Io, Iy = (0, 1), (2, 3, 4), (5, 6, 7, 8) + Lvv, Low, Loo = opnorm_lower_tri(Lf, Iv, Iv), opnorm_lower_tri(Lf, Io, Iv), opnorm_lower_tri(Lf, Io, Io) + Lyv, Lyo, Lyy = opnorm_lower_tri(Lf, Iy, Iv), opnorm_lower_tri(Lf, Iy, Io), opnorm_lower_tri(Lf, Iy, Iy) + mu_v = sqrt_up(mabs['v1'] ** 2 + mabs['v2'] ** 2) + mu_o = sqrt_up(mabs['o11'] ** 2 + mabs['o22'] ** 2 + 2 * mabs['o12'] ** 2) + mu_y = sqrt_up(mabs['y111'] ** 2 + 3 * mabs['y112'] ** 2 + 3 * mabs['y122'] ** 2 + mabs['y222'] ** 2) + mu_nu = sqrt_up(mabs['nu1'] ** 2 + mabs['nu2'] ** 2) + s2, s3, s4 = 2 * Lvv, Loo, Lyy + + memo = {} + + def blk_g_norm(blk, p): # || ||X_blk,g||_F ||_p + mem = block_members(*blk) + m_ = sqrt_up(sum(m * mabs[n] ** 2 for n, m in mem)) + tr = sum(m * max(law.Cg[(n, n)].hi, Fr(0)) for n, m in mem) + return frob_norm(m_, tr, p) + + def nA(blk, p): # ||A^g_blk||_p, A^g = ||X_blk,g||_F + T^g_blk + key = ('A', blk, p) + if key not in memo: + memo[key] = rup_rel(blk_g_norm(blk, p) + law.S[blk] * (sqE + znorm1(pow2(p)))) + return memo[key] + + def nDelta(i, p): + key = ('D', i, p) + if key not in memo: + memo[key] = rup_rel(nDelta0(i, p)) + return memo[key] + + def nDelta0(i, p): + if MUT == 'no-delta': + return Fr(0) + if i == 1: + return Fr(5, 2) * nA((4, 0), p) + 2 * nA((3, 1), p) + if i == 2: + return Fr(5, 2) * nA((3, 1), p) + 2 * nA((2, 2), p) + if i == 3: + return Fr(5, 2) * nA((2, 2), p) + 2 * nA((1, 3), p) + return 2 * nA((1, 3), p) + 2 * nA((0, 4), p) + + def nd(i, p, lam=True): + key = ('d', i, p, lam) + if key not in memo: + memo[key] = rup_rel(nd0(i, p, lam)) + return memo[key] + + def nd0(i, p, lam): # ||delta_i||_p / Klo, delta_i including bar-beta_i (||mu_B|| + lambda_2) + cm = bbars[i] * (muB + (l2norm(p) if lam else 0)) + if i == 2: + v = 2 * mu_v + cm + r1 * nDelta(2, p) + elif i == 3: + v = mu_o + Low * chi_norm(2, pow2(p)) + cm + r1 * nDelta(3, p) + else: + v = mu_y + Lyv * chi_norm(2, pow2(p)) + Lyo * chi_norm(3, pow2(p)) + cm + r1 * nDelta(4, p) + return v / Klo + + kappa = 3 / (1 - 3 * x0) + Fk = 1 + kappa * x0 # (1 + kappa x_i) <= Fk on the event {x_i <= x0} + cth = 1 - kappa * x0 / 2 # <= Fk^{-1/2} + NMAX = 24 + q = {'cmt1': bbars[1] * muB / Klo, 'rK': r1 / Klo, + 'nD1': lambda p: rup_rel(nDelta(1, p) + bb1 * l2norm(pow2(p))), + 's': {2: s2 / Klo, 3: s3 / Klo, 4: s4 / Klo}, 'nd': nd, 's3': s3, 's2': s2, 'c': cth, 'Klo': Klo} + E1, E1o, E1v, Tn, To, Tv = normalized_moments(q, NMAX, theta) + et1 = rup_rel(16 * kappa * r1 * bbars[1] * a_fac) # eta_1 K, k-free + aK2_hi = 192 * khi * a_fac # a K^2 = 192 k + + def EUt(p): # upper bound of E[Ut^p], Ut = U/(a K^2) <= max(Z1, Fk y_i^2) + key = ('U', p) + if key not in memo: + memo[key] = rup_rel(sum(binom(p, l) * et1 ** l * E1[2 * p + l] for l in range(p + 1)) + Fk ** p * Tn[2 * p]) + return memo[key] + + def EoUt(p): + return sum(binom(p, l) * et1 ** l * E1o[2 * p + l] for l in range(p + 1)) + Fk ** p * To[2 * p] + + def EvUt(p): + return sum(binom(p, l) * et1 ** l * E1v[2 * p + l] for l in range(p + 1)) + Fk ** p * Tv[2 * p] + + def sq(x): + return sqrt_up(x) + + def nUt(m, p): # ||Ut^m||_p <= Fk^m ||max_i y_i||_2mp^2m (on the event x_i <= X0) + require(2 * m * p <= NMAX and pow2(p) == p, 'norm order') + key = ('nUt', m, p) + if key not in memo: + memo[key] = rup_rel(Fk ** m * iroot(E1[2 * m * p] + Tn[2 * m * p], p)) + return memo[key] + + def nU(p): + return rup_rel(aK2_hi * nUt(1, p)) + + def ndel(p): # || ||B - mu_B||_F ||_p <= ||mu_B|| + lambda_1 + lambda_2 <= ||mu_B|| + 2 lambda_2 + return rup_rel(muB + 2 * l2norm(p)) + + def nbar(n, p): # ||F_bar||_p, F_bar = |F_g| + ||beta_F|| ||B - mu_B||_F + return rup_rel(gauss_norm(mabs[n], law.sdg[n], p) + bn[n] * ndel(p)) + + six_klo = 6 * klo + nT2, nT4, nt2, nt4 = nbar('T', 2), nbar('T', 4), nbar('tau', 2), nbar('tau', 4) + epsc2 = (2 * r1 * nT2 + r1 * r1 * nt2) / six_klo + (r1 * nT4) * (r1 * nT4 + r1 * r1 * nt4) / six_klo ** 2 + nT8, nt8 = nbar('T', 8), nbar('tau', 8) + epsc4 = (2 * r1 * nT4 + r1 * r1 * nt4) / six_klo + (r1 * nT8) * (r1 * nT8 + r1 * r1 * nt8) / six_klo ** 2 + U2_2, U3_2, U4_2 = sq(EUt(4)), sq(EUt(6)), sq(EUt(8)) + U2_4, U3_4 = nUt(2, 4), nUt(3, 4) + # the Omega majorant: Omega_bar = o0 + d_o, o0 = s3 chi_3 (shares u_3), d_o = rest + ndo = lambda p: rup_rel(mu_o + Low * chi_norm(2, pow2(p)) + bo * ndel(p)) + no4 = rup_rel(s3 * chi_norm(3, 4) + ndo(4)) + # the ||r nu - v||^2 majorant (Term C) + th = THETA_E + dv = lambda p: rup_rel(mu_v + bv * ndel(p)) + nnu = lambda p: rup_rel(frob_norm(mu_nu, law.Cg[('nu1', 'nu1')].hi + law.Cg[('nu2', 'nu2')].hi, p) + + bnu * ndel(p)) + ebar4 = rup_rel((r1 * nnu(8) + Lvv * chi_norm(2, 8) + dv(8)) ** 2) # ||e_bar||_4 + ebar8 = rup_rel((r1 * nnu(16) + Lvv * chi_norm(2, 16) + dv(16)) ** 2) # ||e_bar||_8 + cC = (1 + th) * (1 + 1 / th) * dv(4) ** 2 + (1 + 1 / th) * r1 * r1 * nnu(4) ** 2 + # ---- Term A, B, C (one power of U per lambda_1 integration), normalized by 36 k^2 r^5 and by the lambda_2 weight + termA = aK2_hi ** 3 / 3 * (EUt(3) + epsc2 * U3_2) + termB = aK2_hi ** 2 / 2 * (EoUt(2) + (ndo(2) + epsc4 * no4) * U2_2) + termC = aK2_hi ** 2 / (12 * klo) * ((1 + th) ** 2 * EvUt(2) + cC * U2_2 + r1 * nT4 / six_klo * ebar4 * U2_2) + termAp = aK2_hi ** 4 / 4 * (EUt(4) + epsc2 * U4_2) + termBp = aK2_hi ** 3 / 3 * (EoUt(3) + (ndo(2) + epsc4 * no4) * U3_2) + termCp = aK2_hi ** 3 / (18 * klo) * ((1 + th) ** 2 * EvUt(3) + cC * U3_2 + r1 * nT4 / six_klo * ebar4 * U3_2) + if MUT == 'no-om-term': + termB = termBp = Fr(0) + # ---- the Jacobian-correction terms: the part r Omega_bar of (lambda_2 + r Omega_bar), integrated against nu' + # D = E[Omega_bar (A + B + C integrands)], D' = E[Omega_bar (A' + B' + C' integrands)] + nT16 = nbar('T', 16) + termD = (aK2_hi ** 3 / 3 * (EoUt(3) + (ndo(2) + epsc4 * no4) * U3_2) + + aK2_hi ** 2 / 2 * no4 * no4 * (U2_2 + epsc4 * U2_4) + + aK2_hi ** 2 / (12 * klo) * no4 * (1 + r1 * nT16 / six_klo) * ebar8 * U2_4) + termDp = (aK2_hi ** 4 / 4 * (EoUt(4) + (ndo(2) + epsc4 * no4) * U4_2) + + aK2_hi ** 3 / 3 * no4 * no4 * (U3_2 + epsc4 * U3_4) + + aK2_hi ** 3 / (18 * klo) * no4 * (1 + r1 * nT16 / six_klo) * ebar8 * U3_4) + if MUT == 'no-om-term': + termD = termDp = Fr(0) + I2, I3 = I_hi[2], I_hi[3] + lead = I3 * (termA + termB + termC) + r1 * I2 * termD + leadp = I3 * (termAp + termBp + termCp) + r1 * I2 * termDp + # ---- normalizer floor Z_r / (36 k^2 r^2) >= m3(b'_lo) - corrections (NOTE section 6) + Lb = cholesky([[IV(x.lo, x.hi) for x in row] for row in law.Cb]) + eta = sqrt_up(sum(absup(Lb[i][j] - (SQRT2 if i == j else 0)) ** 2 for i in range(3) for j in range(i + 1))) + R0 = Fr(R0_COUPLING) + bp_lo = blo - eps - eta * R0 + bp_hi = bhi + eps + eta * R0 + bp_lo = Fr(math.floor(bp_lo * 2 ** 40), 2 ** 40) + bp_hi = Fr(math.ceil(bp_hi * 2 ** 40), 2 ** 40) + pR0 = chi_tail(3, R0) + m3lo = m3(bp_lo).lo + tail_c = sqrt_up(contact_moment(4, 0, bp_lo).hi) * sqrt_up(pR0) + # upper bounds of E[h(B)] for Loewner-monotone h through b'' = bp_hi, plus the outside-ball part + nBF16 = rup_rel(muB + sig * chi_norm(3, 16)) # || ||B||_F ||_16 + out_ball = sqrt_up(pR0) + + def up_moment(a, c): # E[det^a tr^c 1{B > 0}] <= contact value at b'' + outside-ball part + crude = rup_rel(nBF16 ** (2 * a + c)) # det <= ||B||^2, tr <= sqrt2 ||B|| <= 2 ||B||: crude, times P^(1/2) + return rup_rel(contact_moment(a, c, bp_hi).hi + 2 ** c * crude * out_ball) + F2 = up_moment(4, 0) # E[(det B)^4 1{B > 0}] + DT, TDT, TTDT = up_moment(1, 1), up_moment(1, 2), up_moment(1, 3) + sdT, sdtau = law.sdQ['T'], law.sdQ['tau'] + q_bad = gauss_tail2(mabs['T'], sdT, 3 * klo / (2 * r1)) + gauss_tail2(mabs['tau'], sdtau, 3 * klo / (2 * r1 * r1)) + nF = sqrt_up(F2) + corr_G0 = nF * sqrt_up(q_bad) if q_bad > 0 else Fr(0) + corr_eps = (2 * r1 * gauss_norm(mabs['T'], sdT, 2) + r1 * r1 * gauss_norm(mabs['tau'], sdtau, 2)) / six_klo * nF + trO = sum(m * max(law.Cg[(n, n)].hi, Fr(0)) for n, m in zip(ONAMES, (1, 1, 2))) + trV = law.Cg[('v1', 'v1')].hi + law.Cg[('v2', 'v2')].hi + Eog = rup_rel(mu_o + sqrt_up(trO)) + corr_om = Eog * DT + bo * (TDT + muB * DT) + Evg2 = mu_v ** 2 + trV + corr_v = (Fr(17, 16) * Evg2 * DT + 17 * bv ** 2 * (TTDT + 2 * muB * TDT + muB * muB * DT)) / (4 * klo) + corr = tail_c + corr_G0 + corr_eps + r1 * (corr_om + corr_v) + if MUT == 'no-zfloor-correction': + corr = Fr(0) + zt = m3lo - corr + require(zt > 0, 'normalizer floor not positive') + main = KB * min(gbar * lead, g0 * lead + r1 * Lg * leadp) / zt + # ---- rare branches at the band top: E[W 1_E] <= ||W 1_typed||_q P(E)^(1 - 1/q), ||W 1_typed||_q / r^2 <= g1 g2 + six_khi = 6 * khi + trB = sum(x.hi for x in (law.Cb[0][0], law.Cb[1][1], law.Cb[2][2])) + trOQ = sum(m * law.C[(n, n)].hi for n, m in zip(ONAMES, (1, 1, 2))) + trVQ = law.C[('v1', 'v1')].hi + law.C[('v2', 'v2')].hi + trNQ = law.C[('nu1', 'nu1')].hi + law.C[('nu2', 'nu2')].hi + + # W_r / r^2 <= |c1| D [|c2| (D + r Om tr + r^2 Om^2) + r ||e||^2 (tr + r Om)] on the typed support, D = det B 1{B > 0}, + # tr = tr B, Om = ||Omega'||_F (NOTE section 7) + sd_tr = sqrt_up(law.C[('a11', 'a11')].hi + law.C[('a22', 'a22')].hi + 2 * absup(law.C[('a11', 'a22')])) + m_tr = absup(mu['a11'] + mu['a22']) + + def wnorm(qq): + p4, p8 = 4 * qq, 8 * qq + nD = lambda p: det_norm(p, bp_hi, muB, sig) + ntr = lambda p: gauss_norm(m_tr, sd_tr, p) + no = lambda p: frob_norm(mu_o, trOQ, p) + nT = lambda p: gauss_norm(mabs['T'], sdT, p) + nc2 = lambda p: six_khi + r1 * nT(p) + r1 * r1 * gauss_norm(mabs['tau'], sdtau, p) + ne = lambda p: r1 * frob_norm(mu_nu, trNQ, p) + frob_norm(mu_v, trVQ, p) + g1 = (six_khi + r1 * nT(p4)) * nD(p4) + g2 = (nc2(p4) * (nD(p4) + r1 * no(p8) * ntr(p8) + r1 * r1 * no(p8) ** 2) + + r1 * ne(p8) ** 2 * (ntr(p4) + r1 * no(p4))) + return g1 * g2 + thr = 3 * klo / (10 * r1) + qA2 = Fr(0) + args = [] + for blk in BLOCKS: + a_, c_ = blk + mem = block_members(*blk) + m_ = sqrt_up(sum(m * mabs[n] ** 2 for n, m in mem)) # |mean of d_x^a d_u^c f(0)| <= ||mean||_F for unit u + best = None + for frac in (Fr(7, 8), Fr(15, 16)): # split t = frac t + (1 - frac) t between jet and Taylor tail + if c_ == 0: # scalar block + x_ = (thr * frac - m_) / law.sdQ[mem[0][0]] + pj = gauss_tail2(m_, law.sdQ[mem[0][0]], thr * frac) + elif c_ == 1: # vector block: ||X - mean|| <= sqrt(lambda_max) chi_2 + lmax = max(sum(absup(law.C[(ni, nj)]) for nj, mj in mem) for ni, mi in mem) + x_ = (thr * frac - m_) / sqrt_up(lmax) + pj = chi_tail(2, x_) if x_ > 0 else Fr(1) + else: # ||X||_op = max_theta |Q(theta)|, Q a trigonometric + rho = 1 - Fr(c_, NET_M) # polynomial of degree c: Bernstein |Q'| <= c max|Q| and + sdn = sqrt_up(law.net_var[blk]) # net gaps <= 2/NET_M give max|Q| <= max_j |Q_j| / rho + x_ = (thr * frac * rho - m_) / sdn + pj = min(Fr(1), len(NET) * gauss_tail2(m_, sdn, thr * frac * rho)) + pj += (law.S[blk] * (sqE + znorm(32)) / (thr * (1 - frac))) ** 32 + if best is None or pj < best[0]: + best = (pj, x_) + args.append(best[1]) + qA2 += best[0] + a_hi = Fr(4, 3) / klo * a_fac + qfar = Fr(0) + qx = Fr(0) + sdB11 = sqrt_up(law.C[('a11', 'a11')].hi) + if bbar > 0: + lam_far = 1 / (4 * a_hi * r1 * bbar * bbar) + args.append((lam_far - absup(mu['a11'])) / sdB11) + qfar = gauss_tail1(absup(mu['a11']), sdB11, lam_far) + + def lam2_tail(s): # P(lambda_2 > s) <= P(sig chi_3 > s - ||mu_B||) + x_ = (s - muB) / sig + args.append(x_) + return chi_tail(3, x_) if x_ > 0 else Fr(1) + for i in (1, 2, 3, 4): # x_i > X0 <=> y_i' + bar-beta_i lambda_2 > X0 / (a r1 bar-beta_i) + if bbars[i] == 0: + continue + tx = x0 / (a_hi * r1 * bbars[i]) + if i == 1: + cb = 12 * khi + bbars[1] * muB + if tx <= cb: + qx += Fr(1) + else: + qx += (r1 * nDelta(1, 32) / ((tx - cb) / 2)) ** 32 + qx += lam2_tail((tx - cb) / (2 * bbars[1])) + else: + s_i = {2: s2, 3: s3, 4: s4}[i] + x_ = tx / (3 * s_i) + args.append(x_) + qx += chi_tail(NU[i], x_) + (nd(i, 32, lam=False) * Klo / (tx / 3)) ** 32 + lam2_tail(tx / (3 * bbars[i])) + qs = [min(Fr(1), x) for x in (qA2, qfar, qx)] + tail_num = min(wnorm(qq) * sum(pow_tail(x, qq) for x in qs) for qq in QS) + if last_band: + # (0, R] is the union of [R 2^-(j+1), R 2^-j]; every Gaussian or chi tail argument scales at least like 1/r and is + # >= 3 at R, so each such piece drops by more than 64 when r halves; every Markov piece is a power r^m with m >= 32; + # after the power 1 - 1/q (q >= 2) each piece still drops by more than 8, so for the q chosen at R the supremum of + # tail / r^3 over (0, R] is attained on [R/2, R] + require(min(args) >= 3, 'last-band tail arguments') + require(max(qA2, qfar, qx) < 1, 'last-band tail pieces') + rdiv = r1 / 2 + else: + rdiv = r0 + tail = tail_num / (36 * klo * klo * zt * rdiv ** 3) + total = main + tail + return {'total': total, 'main': main, 'tail': tail, 'zt': zt, 'tail_num': tail_num, 'KB': KB, 'g0': g0, 'gbar': gbar, 'I3': I3, + 'termA': termA, 'termB': termB, 'termC': termC, 'termD': termD, 'qA2': qA2, 'qfar': qfar, 'qx': qx, + 'm3lo': m3lo, 'corr': corr, 'eps': eps, 'eta': eta, 'min_arg': min(args)} +# ----------------------------------------------------------------------------- the (k, b) boxes of the sweep +F_ = Fr +GRID = ( + ((F_(1, 2), F_(3, 4)), (F_(0), F_(1, 2), F_(1))), + ((F_(3, 4), F_(1)), (F_(0), F_(1, 2), F_(1))), + ((F_(1), F_(5, 4)), (F_(0), F_(1, 2), F_(1))), + ((F_(5, 4), F_(3, 2)), (F_(0), F_(1, 2), F_(1))), + ((F_(3, 2), F_(13, 8)), (F_(0), F_(243, 512), F_(1))), + ((F_(13, 8), F_(7, 4)), (F_(0), F_(309, 1024), F_(899, 1024), F_(1))), + ((F_(7, 4), F_(15, 8)), (F_(0), F_(37, 256), F_(105, 256), F_(933, 1024), F_(1))), + ((F_(15, 8), F_(31, 16)), (F_(0), F_(37, 512), F_(207, 1024), F_(225, 512), F_(113, 128), F_(1))), + ((F_(31, 16), F_(63, 32)), (F_(0), F_(37, 1024), F_(103, 1024), F_(111, 512), F_(439, 1024), F_(421, 512), F_(1))), + ((F_(63, 32), F_(2)), (F_(0), F_(1, 512), F_(5, 1024), F_(5, 512), F_(19, 1024), F_(35, 1024), F_(1, 16), F_(29, 256), + F_(209, 1024), F_(377, 1024), F_(685, 1024), F_(1))), +) + + +# ----------------------------------------------------------------------------- bands, boxes, runs +TOP_OCTAVES = 7 # octaves [2^-(j+1), 2^-j], j = 6..12 (r up to 1/64), split into 8 sub-bands +LOW_OCTAVES = 16 # octaves j = 13..28, split into 4 sub-bands +R_LAST = Fr(1, 2 ** 29) # last band [0, 2^-29] +COMBO = (Fr(1, 64), Fr(1, 32)) # (X_0, theta) of NOTE sections 4-5 + + +def bands(): + """Sub-bands [r0, r1] covering (0, 1/64]; each octave split into equal sub-bands; the last band is [0, R_LAST].""" + out = [] + for j in range(6, 6 + TOP_OCTAVES + LOW_OCTAVES): + hi = Fr(1, 2 ** j) + lo = hi / 2 + m = 8 if j < 6 + TOP_OCTAVES else 4 + for i in range(m): + out.append((lo + (hi - lo) * i / m, lo + (hi - lo) * (i + 1) / m)) + out.append((Fr(0), R_LAST)) + require(min(b[0] for b in out) == 0 and max(b[1] for b in out) == Fr(1, 64), 'band cover') + out = sorted(out) + require(all(out[i][1] == out[i + 1][0] for i in range(len(out) - 1)), 'bands contiguous') + return out + + +def dec_down(x, places=4): + x = Fr(x) + n = (x.numerator * 10 ** places) // x.denominator + s = str(abs(n)).rjust(places + 1, '0') + return ('-' if n < 0 else '') + s[:-places] + '.' + s[-places:] + + +def dec_up(x, places=4): + x = Fr(x) + n = -((-x.numerator * 10 ** places) // x.denominator) + s = str(abs(n)).rjust(places + 1, '0') + return ('-' if n < 0 else '') + s[:-places] + '.' + s[-places:] + + +def grid_boxes(): + out = [] + for kb, bg in GRID: + require(bg[0] == 0 and bg[-1] == 1 and all(bg[i] < bg[i + 1] for i in range(len(bg) - 1)), 'b grid') + for i in range(len(bg) - 1): + out.append(((Fr(bg[i]), Fr(bg[i + 1])), (Fr(kb[0]), Fr(kb[1])))) + ks = [kb for kb, _ in GRID] + require(ks[0][0] == BAND_K[0] and ks[-1][1] == BAND_K[1] and all(ks[i][1] == ks[i + 1][0] for i in range(len(ks) - 1)), + 'k boxes cover K') + return tuple(out) + + +CG3_02_LO = Fr('22424320.655069') # certified lower end of c_G^(3)(0, 2) (Math-#208) + + +def band_record(args): + """Per band: the certified bound of sup Q^W(G_r^c)/r^3 (rounded up, 4 places) and the floor of Z_r/r^2 (rounded down, + 6 places) for each box in BOXES order, and the largest tail part (rounded up, 12 places).""" + r0, r1 = args + law = band_law(r0, r1) + last = (r0 == 0) + bound, zfloor, tails = [], [], [] + for bb, kb in BOXES: + res = box_bound(law, bb, kb, r0, r1, last_band=last, x0=COMBO[0], theta=COMBO[1]) + bound.append(dec_up(res['total'])) + zfloor.append(dec_down(36 * kb[0] * kb[0] * res['zt'], 6)) + tails.append(res['tail']) + return {'r': [str(r0), str(r1)], 'bound': bound, 'zfloor': zfloor, 'tail_max': dec_up(max(tails), 12)} + + +def full_run(procs): + bl = bands() + with multiprocessing.Pool(procs) as pool: + recs = pool.map(band_record, bl) + return assemble(recs) + + +def assemble(recs): + table = {} + for rs in R_STARS: + mx, arg, zmin = Fr(0), None, None + for rec in recs: + if Fr(rec['r'][1]) <= rs: + for (bb, kb), bs, zs in zip(BOXES, rec['bound'], rec['zfloor']): + v = Fr(bs) + if v > mx: + mx, arg = v, {'r': rec['r'], 'b': [str(bb[0]), str(bb[1])], 'k': [str(kb[0]), str(kb[1])]} + z = Fr(zs) + zmin = z if zmin is None or z < zmin else zmin + table[str(rs)] = {'C': str(mx), 'argmax': arg, 'C_over_cG3_02': dec_up(mx / CG3_02_LO, 6), + 'C_rstar3': dec_up(mx * rs ** 3, 10), 'z_star': str(zmin)} + return {'schema': 1, 'object': 'CL-C8-THEOREM-A-CONSTANTS-D3-20261001-v1', 'scientific_effect': 'NONE', + 'certified': True, 'mutant': MUT, 'L_min': L_MIN, 'dimension': 3, + 'band': {'b': [str(BAND_B[0]), str(BAND_B[1])], 'k': [str(BAND_K[0]), str(BAND_K[1])]}, + 'parameters': params(), 'C_table': table, 'bands': recs} + + +def params(): + return {'PBITS': PBITS, 'NX': NX, 'NB': NB, 'COMBO_X0_THETA': [str(COMBO[0]), str(COMBO[1])], 'THETA_E': str(THETA_E), + 'QS': list(QS), 'R0_COUPLING': R0_COUPLING, 'NET_M': NET_M, 'R_STARS': [str(x) for x in R_STARS], + 'TOP_OCTAVES': TOP_OCTAVES, 'LOW_OCTAVES': LOW_OCTAVES, 'R_LAST': str(R_LAST), + 'GRID': [[[str(kb[0]), str(kb[1])], [str(x) for x in bg]] for kb, bg in GRID]} + + +def results_text(res): + """RESULTS.json layout: the summary indented, then one line per band record.""" + head = json.dumps({key: val for key, val in res.items() if key != 'bands'}, indent=1, sort_keys=True) + lines = ',\n'.join(' ' + json.dumps(rec, sort_keys=True) for rec in res['bands']) + return head[:-2] + ',\n "bands": [\n' + lines + '\n ]\n}\n' + + +def write_results(res): + with open(os.path.join(HERE, 'RESULTS.json'), 'w') as fh: + fh.write(results_text(res)) + + +def load_results(): + with open(os.path.join(HERE, 'RESULTS.json')) as fh: + return json.load(fh) + + +def replay_sample(): + """Band indices replayed by --check: the band ending at each r_*, the bands ending at 2^-14, 2^-20, 2^-26, the last band.""" + bl = bands() + idx = [] + for rs in R_STARS: + j = max(i for i, b in enumerate(bl) if b[1] == rs) + idx.append(j) + idx += [i for i, b in enumerate(bl) if b[1] in (Fr(1, 2 ** 14), Fr(1, 2 ** 20), Fr(1, 2 ** 26))] + idx.append(0) + return sorted(set(idx)) + + +def check_run(procs, full=False): + ref = load_results() + with open(os.path.join(HERE, 'RESULTS.json')) as fh: + require(fh.read() == results_text(ref), 'RESULTS.json is not in the canonical layout') + require(ref['parameters'] == params(), 'parameters differ from RESULTS.json') + require(ref['mutant'] is None, 'RESULTS.json produced under a mutant') + require(abs(PI.mid() - Fr('3.14159265358979323846')) < Fr(1, 10 ** 19) and PI.width() < Fr(1, 10 ** 30), 'pi enclosure') + require(abs(Phi(IV(1)).mid() - Fr('0.841344746068542948585')) < Fr(1, 10 ** 19), 'Phi(1) enclosure') + require(abs(m3(0).mid() - (Fr(7, 2) - 2 * SQRT2.mid())) < Fr(1, 10 ** 40), 'm_(3,0) closed form') + bl = bands() + require([rec['r'] for rec in ref['bands']] == [[str(a), str(b)] for a, b in bl], 'band list differs') + idx = list(range(len(bl))) if full else replay_sample() + with multiprocessing.Pool(procs) as pool: # in order; the first differing band exits (and stops the pool) + for i, rec in zip(idx, pool.imap(band_record, [bl[i] for i in idx])): + require(rec == ref['bands'][i], 'band %d (%s) differs from RESULTS.json' % (i, rec['r'])) + # the table is the maximum over the stored records + asm = assemble(ref['bands']) + require(asm['C_table'] == ref['C_table'], 'C table is not the maximum of the stored bounds') + # sanity: every C exceeds the sharp reference-kernel cap coefficient c_G^(3)(0, 2) of Math-#208 (a lower bound for every + # d = 3 cap-route constant valid at (0, 2) for the reference kernel, which this certificate covers) + for rs, row in ref['C_table'].items(): + require(Fr(row['C']) > CG3_02_LO, 'C below the sharp cap coefficient') + print(json.dumps({'check': 'ok', 'bands_replayed': len(idx), 'C_table': {rs: row['C'] for rs, row in ref['C_table'].items()}, + 'z_star': {rs: row['z_star'] for rs, row in ref['C_table'].items()}, 'mutant': MUT})) + + +def main(): + global MUT + ap = argparse.ArgumentParser() + ap.add_argument('--check', action='store_true') + ap.add_argument('--check-full', action='store_true') + ap.add_argument('--mutant', choices=MUTANTS) + ap.add_argument('--procs', type=int, default=4) + ap.add_argument('--mc', nargs=5, metavar=('R', 'B', 'K', 'N', 'SEED'), help='floating end-to-end control') + args = ap.parse_args() + MUT = args.mutant + if args.mc: + rr, bb, kk, nn, sd = args.mc + print(json.dumps(mc_event(float(Fr(rr)), float(Fr(bb)), float(Fr(kk)), int(nn), int(sd)))) + return + if args.check or args.check_full: + check_run(args.procs, full=args.check_full) + return + res = full_run(args.procs) + write_results(res) + print(json.dumps({'C': {rs: row['C'] for rs, row in res['C_table'].items()}, + 'z': {rs: row['z_star'] for rs, row in res['C_table'].items()}})) +BOXES = grid_boxes() + + +# ----------------------------------------------------------------------------- floating control (not part of the certificate) +def mc_event(r, b, k, n, seed, deg=7, nang=24): + """End-to-end Monte Carlo of Q^W(G_r^c) / r^3 and Z_r / r^2 for the reference kernel in d = 3 (floating point): the + Taylor jet of order deg at the midpoint is sampled under Q (exact pin series evaluated in floating point), W_r is + evaluated from the Hessians at M and S, and M_3, M_4 are the partial-block operator norms ([CAP] (1)) maximized over a + grid of the cylinder D (binary forms maximized over nang angles; floating, so slightly below the true suprema).""" + import random + pins, _ = functionals() + P = [pins[nm] for nm in PIN_NAMES] + jets = [(a, b1, m - a - b1) for m in range(deg + 1) for a in range(m, -1, -1) for b1 in range(m - a, -1, -1)] + J = [[term(1, 0, a, b1, b2, X0PT)] for (a, b1, b2) in jets] + nj = len(J) + + def ev(F, G, key): + ser, w, _ = pair_series(F, G, key) + return sum(float(c) * r ** p for p, c in ser.items()) + Spp = [[ev(P[i], P[j], ('p', i, j)) for j in range(NP)] for i in range(NP)] + Sjp = [[ev(J[i], P[j], ('jp3', deg, i, j)) for j in range(NP)] for i in range(nj)] + Sjj = [[ev(J[i], J[j], ('jj3', deg, i, j)) for j in range(nj)] for i in range(nj)] + + def solve(A, bv): + m = len(A) + M = [A[i][:] + [bv[i]] for i in range(m)] + for c in range(m): + p = max(range(c, m), key=lambda i: abs(M[i][c])) + M[c], M[p] = M[p], M[c] + for i in range(c + 1, m): + f = M[i][c] / M[c][c] + for j in range(c, m + 1): + M[i][j] -= f * M[c][j] + x = [0.0] * m + for i in reversed(range(m)): + x[i] = (M[i][m] - sum(M[i][j] * x[j] for j in range(i + 1, m))) / M[i][i] + return x + vr = [b - k * r ** 3 / 2, -k * r * r, 12 * k] + [0.0] * (NP - 3) + Wt = [solve(Spp, Sjp[i]) for i in range(nj)] + mu = [sum(Wt[i][j] * vr[j] for j in range(NP)) for i in range(nj)] + C = [[Sjj[i][j] - sum(Wt[i][l] * Sjp[j][l] for l in range(NP)) for j in range(nj)] for i in range(nj)] + # Cholesky with clamped pivots (the conditional covariance is positive semidefinite up to rounding) + L = [[0.0] * nj for _ in range(nj)] + for i in range(nj): + for j in range(i + 1): + s = C[i][j] - sum(L[i][l] * L[j][l] for l in range(j)) + if i == j: + L[i][i] = math.sqrt(s) if s > 1e-300 else 0.0 + else: + L[i][j] = s / L[j][j] if L[j][j] > 0 else 0.0 + index = {al: i for i, al in enumerate(jets)} + fact = [math.factorial(i) for i in range(deg + 2)] + + def deriv(cf, be, p): + """d^be f(p) from the jet (Taylor at 0).""" + tot = 0.0 + for al, i in index.items(): + if al[0] >= be[0] and al[1] >= be[1] and al[2] >= be[2]: + e = (al[0] - be[0], al[1] - be[1], al[2] - be[2]) + tot += cf[i] * (p[0] ** e[0] * p[1] ** e[1] * p[2] ** e[2]) / (fact[e[0]] * fact[e[1]] * fact[e[2]]) + return tot + angs = [(math.cos(math.pi * t / nang), math.sin(math.pi * t / nang)) for t in range(nang)] + pts = [(x, 0.0, 0.0) for x in (-2 * r, -r, 0.0, r, 2 * r)] + pts += [(x, 2 * r * math.cos(2 * math.pi * t / 6), 2 * r * math.sin(2 * math.pi * t / 6)) for x in (-2 * r, 0.0, 2 * r) + for t in range(6)] + + def block_norm(vals, c): + """Operator norm of the symmetric c-form with components vals[(b1, b2)] (b1 + b2 = c) over unit vectors.""" + if c == 0: + return abs(vals[(0, 0)]) + best = 0.0 + for (u1, u2) in angs: + q = sum(math.comb(c, b1) * vals[(b1, c - b1)] * u1 ** b1 * u2 ** (c - b1) for b1 in range(c + 1)) + best = max(best, abs(q)) + return best + + def Mj(cf, j): + best = 0.0 + for p in pts: + for a in range(j + 1): + c = j - a + vals = {(b1, c - b1): deriv(cf, (a, b1, c - b1), p) for b1 in range(c + 1)} + best = max(best, block_norm(vals, c)) + return best + + def hess(cf, p): + return [[deriv(cf, tuple(int(x == i) + int(x == j) for x in range(3)), p) for j in range(3)] for i in range(3)] + + def det3f(H): + return (H[0][0] * (H[1][1] * H[2][2] - H[1][2] * H[2][1]) - H[0][1] * (H[1][0] * H[2][2] - H[1][2] * H[2][0]) + + H[0][2] * (H[1][0] * H[2][1] - H[1][1] * H[2][0])) + + def neg_def(H): + return H[0][0] < 0 and H[0][0] * H[1][1] - H[0][1] ** 2 > 0 and det3f(H) < 0 + + def index2(H): + """Number of negative eigenvalues of a symmetric 3 x 3 matrix is 2: det > 0 and not positive definite.""" + d = det3f(H) + pd = H[0][0] > 0 and H[0][0] * H[1][1] - H[0][1] ** 2 > 0 and d > 0 + return d > 0 and not pd + rng = random.Random(seed) + num = den = 0.0 + acap = 4 / (3 * k) + for _ in range(n): + z = [rng.gauss(0, 1) for _ in range(nj)] + cf = [mu[i] + sum(L[i][j] * z[j] for j in range(i + 1)) for i in range(nj)] + HM, HS = hess(cf, (-r / 2, 0.0, 0.0)), hess(cf, (r / 2, 0.0, 0.0)) + if not (neg_def(HM) and index2(HS)): + continue + Wv = abs(det3f(HM) * det3f(HS)) + den += Wv + a11, a22, a12 = -HM[1][1], -HM[2][2], -HM[1][2] + lam1 = (a11 + a22) / 2 - math.sqrt(((a11 - a22) / 2) ** 2 + a12 * a12) + M3 = Mj(cf, 3) + if lam1 <= acap * r * M3 * M3: + num += Wv + continue + if r * Mj(cf, 4) > 3 * k / 10: + num += Wv + return {'r': r, 'b': b, 'k': k, 'n': n, 'seed': seed, 'QW_Gc_over_r3': num / den / r ** 3 if den else None, + 'Z_over_r2': den / n / r ** 2} + + +if __name__ == '__main__': + main() diff --git a/frontiers/c8_torus_vanishing_remainder_20261001/theorem_b.py b/frontiers/c8_torus_vanishing_remainder_20261001/theorem_b.py new file mode 100644 index 000000000..36b39dbd3 --- /dev/null +++ b/frontiers/c8_torus_vanishing_remainder_20261001/theorem_b.py @@ -0,0 +1,1166 @@ +#!/usr/bin/env python3 +"""Explicit constants for [LP] Theorem B on the C8 band, d = 2 and d = 3 (NOTE.md Theorem L and its corollaries). + +For the radial ledger A_r = 12 pi_r(R; v_r) Z_r / r^2 of [LP] (10.2) the certificate proves, for 0 < r <= R, every frame, +every torus side L >= 10 and the reference kernel, + + -(a_dn r^2 + eps) <= A_r(b, k, u) / A_0^ref(b, k) - 1 <= a_up r^2 + eps (b in [0, 1], k in [1/2, 2]), + +with A_0^ref the closed-form contact integrand of the Gaussian kernel, and assembles from it two-sided second-order bounds for +nu_cand and nu_eld, the difference constant C_{B,K} of [LP] (1.2), and the constants of (12.1) and (12.3). + +Standard library only; exact rational interval arithmetic throughout. +- Taylor models in r (fixed-point integer coefficients, every rounding carried in the remainder) for the pin covariance, its + determinant, the pin energies and the law of the transverse Hessian and of Omega' (section 2 of NOTE.md). +- The interval band laws and the box-bound engines of Math-#206 (d = 2) and Math-#212 (d = 3), as byte-identical pinned + copies engine_e2.py and engine_e3.py (section 2; SOURCE_MAP.json). + + python3 -B -S theorem_b.py --procs N regenerate RESULTS.json + python3 -B -S theorem_b.py --check --procs N replay: Taylor models, rate sweep, reference integrals, a sample of + cap bands, and the assembled tables (exact comparison) + python3 -B -S theorem_b.py --check-full --procs N replay every cap band as well + python3 -B -S theorem_b.py --mutant NAME --check a semantic mutation; the replay must then fail (exit 1) + python3 -B -S theorem_b.py --controls floating controls (not part of the certificate) +""" +import argparse +import importlib.util +import json +import math +import multiprocessing +import os +import sys +from fractions import Fraction as Fr + +HERE = os.path.dirname(os.path.abspath(__file__)) +MUTANTS = ('no-om-term', 'no-bad-set', 'no-det', 'no-torus', 'cap-half') +MUT = None + +R_STARS = (Fr(1, 4096), Fr(1, 2048), Fr(1, 1024), Fr(1, 512), Fr(1, 256), Fr(1, 128), Fr(1, 64)) +TM_S = 6 # Taylor models on [0, 2^-TM_S] = [0, 1/64] +TM_N = 8 # Taylor-model degree +TM_P = 288 # fixed-point bits of the Taylor-model coefficients +R0C = Fr(12) # Loewner coupling radius (d = 3) +TINY = Fr(1, 10 ** 60) # polynomial coefficients below this are rounding residue of exact zeros +SUB_B = tuple((Fr(i, 8), Fr(i + 1, 8)) for i in range(8)) +SUB_K = tuple((Fr(1, 2) + Fr(j, 8), Fr(1, 2) + Fr(j + 1, 8)) for j in range(12)) +SUBBOXES = tuple((bb, kb) for kb in SUB_K for bb in SUB_B) +NH = 4096 # b-cells of the reference integrals +BLOCK = 16 # cells per second-derivative block +CAP_B = tuple((Fr(i, 4), Fr(i + 1, 4)) for i in range(4)) +CAP_K = tuple((Fr(1, 2) + Fr(i, 32), Fr(1, 2) + Fr(i + 1, 32)) for i in range(8)) \ + + tuple((Fr(3, 4) + Fr(i, 16), Fr(3, 4) + Fr(i + 1, 16)) for i in range(4)) + ((Fr(1), Fr(3, 2)), (Fr(3, 2), Fr(2))) +CAP_BOXES = tuple((bb, kb) for kb in CAP_K for bb in CAP_B) +C_REF_197 = Fr('0.0023869380211529483091019117') # Math-#197, reference c_{B,K} in d = 2 (cross-check only) +C_REF_205 = Fr('0.0009743823660242504624710565') # Math-#205, reference c_{B,K} in d = 3 (cross-check only) + + +def require(cond, msg): + if not cond: + raise SystemExit('FAIL: ' + msg) + + +def load_engine(name, fn): + spec = importlib.util.spec_from_file_location(name, os.path.join(HERE, fn)) + mod = importlib.util.module_from_spec(spec) + spec.loader.exec_module(mod) + return mod + + +E2 = load_engine('engine_e2', 'engine_e2.py') +E3 = load_engine('engine_e3', 'engine_e3.py') +ENG = {2: E2, 3: E3} + + +def exp_minus(M, t): + """Enclosure of exp(-t) for rational t of either sign.""" + t = Fr(t) + return M.exp_neg_point(t) if t >= 0 else M.exp_neg_point(-t).inv() + + +def grid_up(x, g=2 ** 40): + return Fr(math.ceil(Fr(x) * g), g) + + +def grid_dn(x, g=2 ** 40): + return Fr(math.floor(Fr(x) * g), g) + + +def dec_up(x, places): + x = Fr(x) + n = -((-x.numerator * 10 ** places) // x.denominator) + s = str(abs(n)).rjust(places + 1, '0') + return ('-' if n < 0 else '') + s[:-places] + '.' + s[-places:] + + +def dec_down(x, places): + x = Fr(x) + n = (x.numerator * 10 ** places) // x.denominator + s = str(abs(n)).rjust(places + 1, '0') + return ('-' if n < 0 else '') + s[:-places] + '.' + s[-places:] + + +# ============================================================================= 1. Taylor models in r +def cdiv(a, b): + return -((-a) // b) + + +class TM: + """f(r) = sum_{j <= N} (C_j / 2^P) r^j + theta (E / 2^P), |theta| <= 1, for every r in [0, 2^-s].""" + __slots__ = ('C', 'E', 's', 'N') + + def __init__(self, C, E, s, N): + self.C, self.E, self.s, self.N = C, E, s, N + + @classmethod + def from_fracs(cls, coeffs, e, s, N): + items = coeffs.items() if isinstance(coeffs, dict) else enumerate(coeffs) + C = [0] * (N + 1) + E = Fr(e) + for p, x in items: + x = Fr(x) + if x == 0: + continue + if p <= N: + v = round(x * (1 << TM_P)) + C[p] += v + E += abs(x - Fr(v, 1 << TM_P)) / Fr(2) ** (s * p) + else: + E += abs(x) / Fr(2) ** (s * p) + return cls(C, cdiv(E.numerator << TM_P, E.denominator), s, N) + + @classmethod + def const(cls, x, s, N): + return cls.from_fracs({0: Fr(x)}, 0, s, N) + + def polybound(self): + return sum(cdiv(abs(c), 1 << (self.s * j)) for j, c in enumerate(self.C) if c) + + def bound(self): + return self.polybound() + self.E + + def frac_coeffs(self): + return [Fr(c, 1 << TM_P) for c in self.C] + + def frac_e(self): + return Fr(self.E, 1 << TM_P) + + def __add__(self, o): + if not isinstance(o, TM): + o = TM.const(o, self.s, self.N) + return TM([a + b for a, b in zip(self.C, o.C)], self.E + o.E, self.s, self.N) + __radd__ = __add__ + + def __neg__(self): + return TM([-a for a in self.C], self.E, self.s, self.N) + + def __sub__(self, o): + if not isinstance(o, TM): + o = TM.const(o, self.s, self.N) + return self + (-o) + + def scale(self, x): + x = Fr(x) + C = [] + E = Fr(self.E, 1 << TM_P) * abs(x) + for j, c in enumerate(self.C): + v = Fr(c, 1 << TM_P) * x + w = round(v * (1 << TM_P)) + C.append(w) + E += abs(v - Fr(w, 1 << TM_P)) / Fr(2) ** (self.s * j) + return TM(C, cdiv(E.numerator << TM_P, E.denominator), self.s, self.N) + + def __mul__(self, o): + if not isinstance(o, TM): + return self.scale(o) + N, s = self.N, self.s + S = [0] * (2 * N + 1) + for i, a in enumerate(self.C): + if a: + for j, b in enumerate(o.C): + if b: + S[i + j] += a * b + C, E = [], 0 + for k in range(N + 1): + v = S[k] >> TM_P # floor: error below one unit, times r^k <= 1 + C.append(v) + if S[k] - (v << TM_P): + E += 1 + for k in range(N + 1, 2 * N + 1): + if S[k]: + E += cdiv(abs(S[k]), 1 << (TM_P + s * k)) + E += cdiv(self.E * o.polybound() + o.E * self.polybound() + self.E * o.E, 1 << TM_P) + return TM(C, E, s, N) + __rmul__ = __mul__ + + def inv(self): + c0 = Fr(self.C[0], 1 << TM_P) + require(c0 != 0, 'Taylor-model inverse at a zero constant term') + h = (self - TM([self.C[0]] + [0] * self.N, 0, self.s, self.N)).scale(1 / c0) + H = Fr(h.bound(), 1 << TM_P) + require(H < Fr(1, 2), 'Taylor-model inverse: |h| too large') + acc = TM.const(1, self.s, self.N) + p = TM.const(1, self.s, self.N) + mh = -h + for _ in range(self.N): + p = p * mh + acc = acc + p + tail = H ** (self.N + 1) / (1 - H) + acc = TM(acc.C, acc.E + cdiv(tail.numerator << TM_P, tail.denominator), self.s, self.N) + return acc.scale(1 / c0) + + def enclose(self, r0, r1): + lo = hi = Fr(0) + for j, c in enumerate(self.C): + if c: + x = Fr(c, 1 << TM_P) + a, b = Fr(r0) ** j, Fr(r1) ** j + lo += x * (a if x >= 0 else b) + hi += x * (b if x >= 0 else a) + e = self.frac_e() + return lo - e, hi + e + + +def cov_tm(M, F, G, key, s, N, M1): + """Taylor model on [0, 2^-s] of the covariance of F, G under the unnormalized torus kernel: the engine's exact series, + its truncation tail and its torus remainder (as in the engines' cov_band, at r1 = 2^-s).""" + R = Fr(1, 2 ** s) + ser, w, absterms = M.pair_series(F, G, key) + A = max((t[1] for t in absterms), default=0) + tail = tor = Fr(0) + for t in absterms: + acc, aa, gys = t[0], t[1], t[2:] + hprod = fprod = 1 + for g in gys: + hprod *= M.hcoef(g) + fprod *= math.factorial(g) + tail += acc * abs(hprod) + tor += acc * fprod * Fr(max(w, 1)) ** aa + tail *= 2 * Fr(M.NX + 1) ** A * R ** (M.NX + 1 - w) + tor = tor * M1 / (1 - Fr(27183, 10000) * R) + return TM.from_fracs(ser, tail + tor, s, N) + + +def solve_tm(A, B): + """Gaussian elimination without pivoting (A(0) is positive definite): X[c] solves A X[c] = B[c]; also det A.""" + n = len(A) + Mx = [[A[i][j] for j in range(n)] + [B[c][i] for c in range(len(B))] for i in range(n)] + det, invs = None, [] + for col in range(n): + piv = Mx[col][col] + det = piv if det is None else det * piv + ip = piv.inv() + invs.append(ip) + for i in range(col + 1, n): + f = Mx[i][col] * ip + for j in range(col, len(Mx[i])): + Mx[i][j] = Mx[i][j] - f * Mx[col][j] + X = [] + for c in range(len(B)): + x = [None] * n + for i in reversed(range(n)): + acc = Mx[i][n + c] + for j in range(i + 1, n): + acc = acc - Mx[i][j] * x[j] + x[i] = acc * invs[i] + X.append(x) + return X, det + + +class TMLaw: + pass + + +TM_NAMES = {2: ('w', 'om'), 3: ('a11', 'a22', 'a12', 'o11', 'o22', 'o12')} + + +def tm_law(d, s=TM_S, N=TM_N, L=10): + """Taylor-model law over r in [0, 2^-s] of the targets TM_NAMES[d] (every frame, every torus side >= L, the reference + kernel): alpha, beta (mean = b alpha + k beta), the unnormalized covariance block, the unnormalized pin energies, det.""" + M = ENG[d] + names = TM_NAMES[d] + pins, targets = M.functionals() + P = [pins[nm] for nm in M.PIN_NAMES] + idx = [M.TARGET_NAMES.index(nm) for nm in names] + T = [targets[nm] for nm in names] + M1 = Fr(0) if MUT == 'no-torus' else M.torus_M1(L) + n, nt = len(P), len(T) + Spp = [[None] * n for _ in range(n)] + for i in range(n): + for j in range(i, n): + Spp[i][j] = Spp[j][i] = cov_tm(M, P[i], P[j], ('p', i, j), s, N, M1) + Stp = [[cov_tm(M, T[a], P[j], ('tp', idx[a], j), s, N, M1) for j in range(n)] for a in range(nt)] + Stt = [[None] * nt for _ in range(nt)] + for a in range(nt): + for b in range(a, nt): + i, j = idx[a], idx[b] + if i <= j: + Stt[a][b] = Stt[b][a] = cov_tm(M, T[a], T[b], ('tt', i, j), s, N, M1) + else: + Stt[a][b] = Stt[b][a] = cov_tm(M, T[b], T[a], ('tt', j, i), s, N, M1) + zero = TM.const(0, s, N) + kvec = [TM.from_fracs({3: Fr(-1, 2)}, 0, s, N), TM.from_fracs({2: Fr(-1)}, 0, s, N), TM.const(12, s, N)] + [zero] * (n - 3) + e1 = [TM.const(1, s, N)] + [zero] * (n - 1) + X, det = solve_tm(Spp, Stp + [e1, kvec]) + W, xs0, xs1 = X[:nt], X[nt], X[nt + 1] + law = TMLaw() + law.d, law.M1, law.th1, law.s, law.N = d, M1, (Fr(0) if MUT == 'no-torus' else M.theta_minus_one(L)), s, N + law.alpha = {nm: W[a][0] for a, nm in enumerate(names)} + law.beta = {nm: sum((W[a][j] * kvec[j] for j in range(n)), zero) for a, nm in enumerate(names)} + law.Cu = {} + for a, na in enumerate(names): + for b, nb in enumerate(names): + law.Cu[(na, nb)] = Stt[a][b] - sum((W[a][l] * Stp[b][l] for l in range(n)), zero) + law.e_bb = xs0[0] + law.e_bk = sum((kvec[j] * xs0[j] for j in range(n)), zero) + law.e_kk = sum((kvec[j] * xs1[j] for j in range(n)), zero) + law.det = det + if d == 3: + # E[O - mu_O | B] = sum_l G[O][l] (B_l - mu_B_l) in natural coordinates (B11, B22, B12), B = -A: + # G = -Cu(O, A) Cu(A, A)^-1 + an = ('a11', 'a22', 'a12') + Xg, _ = solve_tm([[law.Cu[(x, y)] for y in an] for x in an], [[law.Cu[(o, y)] for y in an] for o in ('o11', 'o22', 'o12')]) + law.G = {o: [-Xg[c][l] for l in range(3)] for c, o in enumerate(('o11', 'o22', 'o12'))} + return law + + +def tm_summary(law): + """Exact low-order coefficients (decimal, 30 places) and remainders of the Taylor models, for the record.""" + def row(t): + c = t.frac_coeffs() + return {'c': [dec_down(x, 30) if x >= 0 else dec_up(x, 30) for x in c[:5]], 'rem': dec_up(t.frac_e(), 30)} + out = {'det': row(law.det), 'e_bb': row(law.e_bb), 'e_bk': row(law.e_bk), 'e_kk': row(law.e_kk)} + for nm in law.alpha: + out['alpha_' + nm] = row(law.alpha[nm]) + out['beta_' + nm] = row(law.beta[nm]) + names = TM_NAMES[law.d] + for i, a in enumerate(names): + for b in names[i:]: + out['C_%s_%s' % (a, b)] = row(law.Cu[(a, b)]) + return out + + +# ============================================================================= 2. (a, eps) forms and Taylor-model readers +def ae_add(*xs): + return (sum(x[0] for x in xs), sum(x[1] for x in xs)) + + +def ae_mul(x, c): + return (x[0] * c, x[1] * c) + + +def ae_at(x, R): + return x[0] * R * R + x[1] + + +def exp_up(M, x, R): + """exp(a0 r^2 + e0) - 1 <= (a0 r^2 + e0) exp(a0 R^2 + e0) on (0, R].""" + f = exp_minus(M, -ae_at(x, R)).hi + return (x[0] * f, x[1] * f) + + +def tm_dev(t, ref, R): + """(a, eps): |t(r) - ref| <= a r^2 + eps for 0 <= r <= R.""" + c = t.frac_coeffs() + eps = abs(c[0] - ref) + abs(c[1]) * R + t.frac_e() + a, Rp = Fr(0), Fr(1) + for x in c[2:]: + a += abs(x) * Rp + Rp *= R + return (a, eps) + + +def tm_lin(t, R): + """(s, eps): |t(r)| <= s r + eps for 0 <= r <= R.""" + c = t.frac_coeffs() + s, Rp = Fr(0), Fr(1) + for x in c[1:]: + s += abs(x) * Rp + Rp *= R + return (s, abs(c[0]) + t.frac_e()) + + +def tm_shift(t, ref, R): + """(lo, hi, eps): t(r) - ref in [lo r^2 - eps, hi r^2 + eps] for 0 <= r <= R.""" + c = t.frac_coeffs() + eps = abs(c[0] - ref) + abs(c[1]) * R + t.frac_e() + lo = hi = c[2] + Rp = R + for x in c[3:]: + v = x * Rp + lo += min(v, 0) + hi += max(v, 0) + Rp *= R + return (lo, hi, eps) + + +def assert_flat(t, ref, what): + c = t.frac_coeffs() + require(abs(c[0] - ref) <= TINY and all(abs(x) <= TINY for x in c[1:]), + 'the reference law of %s is not the contact law for every r' % what) + + +def gersh_min(C): + n = len(C) + return min(C[i][i].lo - sum(max(abs(C[i][j].lo), abs(C[i][j].hi)) for j in range(n) if j != i) for i in range(n)) + + +def wq_bound(M, Cg, rows, vecs): + """Upper bound of ||V' Cg^-1 V|| (rows of V given as magnitude lists). With D the lower endpoints of the diagonal, + Cg = D^(1/2)(I + H + E)D^(1/2) exactly, where H >= 0 is diagonal (the actual diagonal's surplus over D) and E has zero + diagonal with ||E||_F <= Ef; so Cg >= (1 - Ef) D and Cg^-1 <= D^-1/(1 - Ef) (review C58: the surplus H only helps).""" + n = len(rows) + D = [Cg[(rows[i], rows[i])].lo for i in range(n)] + Ef2 = Fr(0) + for i in range(n): + for j in range(n): + if i != j: + c = max(abs(Cg[(rows[i], rows[j])].lo), abs(Cg[(rows[i], rows[j])].hi)) + Ef2 += c * c / (D[i] * D[j]) + Ef = M.sqrt_up(Ef2) + require(Ef < Fr(1, 2), 'diagonal scaling of the conditional covariance') + return sum(sum(x * x for x in vecs[i]) / D[i] for i in range(n)) / (1 - Ef) + + +def half_moments(M, c): + """H_j = int_0^inf u^j exp(-u^2/(2c)) du, j = 0..3: sqrt(pi c/2), c, c sqrt(pi c/2), 2 c^2 (upper bounds).""" + s = M.isqrt_iv(M.PI * c / 2).hi + return [s, Fr(c), c * s, 2 * Fr(c) ** 2] + + +# ============================================================================= 3. the ratio A_r / A_0^ref on a (b, k) box +def pi_ratio(M, tml, n, Q, R): + """log(pi_r / pi_0^ref) in [-dn, up], with dn, up in (a, eps) form; pi_0^ref has det 12 and energy 3b^2/2 + 24k^2.""" + b0, b1, k0, k1 = Q + th1 = tml.th1 + dlo, dhi, de = tm_shift(tml.det, 12, R) + if MUT == 'no-det': + dlo = dhi = de = Fr(0) + xm = (max(abs(dlo), abs(dhi)) * R * R + de) / 12 + require(xm < Fr(1, 2), 'pin determinant deviation') + half_log_up = (max(Fr(0), -dlo) / (24 * (1 - xm)), de / (24 * (1 - xm))) + half_log_dn = (max(Fr(0), dhi) / 24, de / 24) + parts = ((tml.e_bb, Fr(3, 2), (b0 * b0, b1 * b1)), (tml.e_bk, Fr(0), (2 * b0 * k0, 2 * b1 * k1)), + (tml.e_kk, Fr(24), (k0 * k0, k1 * k1))) + Elo = Ehi = Ee = Eu = Fr(0) + for t, ref, (wlo, whi) in parts: + lo, hi, e = tm_shift(t, ref, R) + Elo += min(wlo * lo, whi * lo) + Ehi += max(wlo * hi, whi * hi) + Ee += whi * e + Eu += whi * (abs(ref) + max(abs(lo), abs(hi)) * R * R + e) + up = ae_add(half_log_up, (max(Fr(0), -Elo / 2), Ee / 2 + n * th1 / 2)) + dn = ae_add(half_log_dn, (max(Fr(0), Ehi / 2), (Ee + th1 * Eu) / 2)) + return up, dn + + +def combine(M, p_up, p_dn, z_up, z_dn, R): + pu = exp_up(M, p_up, R) + zR = ae_at(z_up, R) + up = (pu[0] + z_up[0] + pu[0] * zR, pu[1] + z_up[1] + pu[1] * zR) + return up, ae_add(p_dn, z_dn) + + +def bounds_d2(Q, R, tml, il): + """(up, dn): A_r/A_0^ref - 1 <= up(r), 1 - A_r/A_0^ref <= dn(r) on the box, for 0 < r <= R (NOTE sections 3-5).""" + M = E2 + b0, b1, k0, k1 = Q + th1 = tml.th1 + assert_flat(tml.alpha['w'], -1, 'alpha_w') + assert_flat(tml.beta['w'], 0, 'beta_w') + assert_flat(tml.Cu[('w', 'w')], 2, 'Var w') + # the law of lambda = -w: mean b + D, variance 2 + S (remainder only) + Dae = ae_add(ae_mul(tm_dev(tml.alpha['w'], -1, R), b1), ae_mul(tm_dev(tml.beta['w'], 0, R), k1)) + aC = tm_dev(tml.Cu[('w', 'w')], 2, R) + Sae = (aC[0], aC[1] + (2 + ae_at(aC, R)) * th1) + Dm, Sm = ae_at(Dae, R), ae_at(Sae, R) + r2 = M.isqrt_iv(M.IV(2)) + s_lo, s_hi = M.isqrt_iv(M.IV(2 - Sm)).lo, M.isqrt_iv(M.IV(2 + Sm)).hi + sa, sb = min(s_lo, r2.lo), max(s_hi, r2.hi) + m_lo, m_hi = b0 - Dm, b1 + Dm + mmax = max(abs(m_lo), abs(m_hi)) + Fmin = M.elam2_pos(m_lo, sa).lo + Fmax = M.elam2_pos(m_hi, sb).hi + F1max = M.elam_pos(m_hi, sb).hi + # the variance multiplier (3/4) 2 sb = (3/2) sb only needs to be >= 1 (dF/d(sigma^2) = Phi(mu/sigma) <= 1); it is not + # a claim that Phi <= 3/4, which fails at mu = 1, sigma^2 = 2 (review C60) + Fae = ae_add(ae_mul(Dae, 2 * F1max / Fmin), ae_mul(Sae, 2 * sb / Fmin * Fr(3, 4))) + Fref = M.elam2_pos(b0, r2.lo).lo + # secondary law: the engine's interval law over [0, R] + b, k = M.IV(b0, b1), M.IV(k0, k1) + ma = {nm: M.absup(b * il.alpha[nm] + k * il.beta[nm]) for nm in M.TARGET_NAMES} + gn = lambda nm, p: M.gauss_norm(ma[nm], il.sdQ[nm].hi, p) + lam = lambda p: M.gauss_norm(mmax, s_hi, p) + T, tau, om, v, nu = (lambda p, x=x: gn(x, p) for x in ('T', 'tau', 'om', 'v', 'nu')) + kap = lambda p: 6 * k1 * tau(p) + T(2 * p) ** 2 + R * T(2 * p) * tau(2 * p) + norm36 = 36 * k0 * k0 * Fref + # first order: r E[lambda_+ om] = r [mu_om F_1 - bw_om (F - m F_1)], with mu_om, bw_om = O(r) (Taylor models) + sa_, ea_ = tm_lin(tml.alpha['om'], R) + sb_, eb_ = tm_lin(tml.beta['om'], R) + sc_, ec_ = tm_lin(tml.Cu[('om', 'w')], R) + cwlo = 2 - ae_at(aC, R) + T2 = (((b1 * sa_ + k1 * sb_) * F1max + sc_ / cwlo * (Fmax + mmax * F1max)) / Fref, + R * ((b1 * ea_ + k1 * eb_) * F1max + ec_ / cwlo * (Fmax + mmax * F1max)) / Fref) + if MUT == 'no-om-term': + T2 = (Fr(0), Fr(0)) + # second order (explicit r^2). kappa = 6k tau - T^2 - r T tau with E[tau | w] = mu_tau + bw_tau (w - mu_w): + # 6k mu_tau F + 6k bw_tau E[(w - mu_w) lambda_+^2] - E[T^2 lambda_+^2] - r E[T tau lambda_+^2] (signed in the leading part) + mt = M.IV(6 * k0, 6 * k1) * (b * il.alpha['tau'] + k * il.beta['tau']) * M.IV(Fmin, Fmax) + side = 6 * k1 * M.absup(il.bw['tau']) * s_hi * lam(4) ** 2 + R * T(4) * tau(4) * lam(4) ** 2 + T3_up = max(Fr(0), mt.hi + side) / norm36 + T3_dn = max(Fr(0), -mt.lo + side + T(4) ** 2 * lam(4) ** 2) / norm36 + if MUT == 'no-om-term': + T3_up = T3_dn = Fr(0) + T4 = R * kap(4) * lam(4) * om(2) + xi2 = 6 * k1 * (R * nu(4) ** 2 + 2 * nu(4) * v(4)) + T(4) * (R * R * nu(8) ** 2 + 2 * R * nu(8) * v(8) + 2 * v(8) ** 2) \ + + R * tau(4) * v(8) ** 2 + T5 = lam(2) * xi2 + T6 = v(8) ** 2 * (6 * k1 + R * T(4) + R * R * tau(4)) * om(4) + v(4) ** 2 * (R * nu(4) + v(4)) ** 2 + # the thin set {0 < lambda <= r h} on G_0 (conditional density of lambda given (v, om, nu)) + Yn = ('v', 'om', 'nu') + prec = 1 / (2 - Sm) + wq_bound(M, il.Cg, Yn, [[M.absup(il.bw[nm])] for nm in Yn]) + pbar = Fr(2, 5) * M.sqrt_up(prec) + h = lambda p: Fr(2) / (9 * k0) * v(2 * p) ** 2 + om(p) + bad = R * pbar * h(2) * (Fr(15, 2) * k1 * h(4) + v(8) ** 2) * (9 * k1 * (h(4) + om(4)) + (R * nu(8) + v(8)) ** 2) + if MUT == 'no-bad-set': + bad = Fr(0) + # G_0^c (not r^2-scaled; astronomically small) + q = M.gauss_tail2(ma['T'], il.sdQ['T'].hi, 3 * k0 / (2 * R)) + M.gauss_tail2(ma['tau'], il.sdQ['tau'].hi, 3 * k0 / (2 * R * R)) + P1n = (6 * k1 + R * T(8)) * lam(8) + R * v(8) ** 2 + P2n = (6 * k1 + R * T(8) + R * R * tau(8)) * (lam(8) + R * om(8)) + R * (R * nu(8) + v(8)) ** 2 + g0c = P1n * P2n * M.sqrt_up(q) if q > 0 else Fr(0) + X = ae_add(T2, ((T4 + T5 + T6 + bad) / norm36, g0c / norm36)) + p_up, p_dn = pi_ratio(M, tml, 6, Q, R) + return combine(M, p_up, p_dn, ae_add(exp_up(M, Fae, R), X, (T3_up, Fr(0))), ae_add(Fae, X, (T3_dn, Fr(0))), R) + + +def bounds_d3(Q, R, tml, il): + """(up, dn) in d = 3 (NOTE sections 3-5).""" + M = E3 + b0, b1, k0, k1 = Q + th1 = tml.th1 + names = ('a11', 'a22', 'a12') + for nm, ref in (('a11', -1), ('a22', -1), ('a12', 0)): + assert_flat(tml.alpha[nm], ref, 'alpha_' + nm) + assert_flat(tml.beta[nm], 0, 'beta_' + nm) + for (x, y), ref in ((('a11', 'a11'), 2), (('a22', 'a22'), 2), (('a12', 'a12'), 1), (('a11', 'a22'), 0), + (('a11', 'a12'), 0), (('a22', 'a12'), 0)): + assert_flat(tml.Cu[(x, y)], ref, 'Cov(%s, %s)' % (x, y)) + # Loewner coupling with the contact law at the same b: eps = sup ||mu_B - b I||_F, eta = ||chol(Cb) - sqrt2 I|| + comps = [] + for nm, ref, f in (('a11', -1, 1), ('a22', -1, 1), ('a12', 0, 2)): + comps.append(ae_at(ae_add(ae_mul(tm_dev(tml.alpha[nm], ref, R), b1), ae_mul(tm_dev(tml.beta[nm], 0, R), k1)), R) * f) + eps = M.sqrt_up(sum(x * x for x in comps)) + Fw = (Fr(1), Fr(1), M.SQRT2) + Cb = [] + for i in range(3): + row = [] + for j in range(3): + lo, hi = tml.Cu[(names[i], names[j])].enclose(0, R) + row.append(M.IV(lo, hi) * Fw[i] * Fw[j] * M.IV(1 / (1 + th1), 1)) + Cb.append(row) + Lb = M.cholesky(Cb) + eta = M.sqrt_up(sum(M.absup(Lb[i][j] - (M.SQRT2 if i == j else 0)) ** 2 for i in range(3) for j in range(i + 1))) + Dl = M.rup_rel(eps + eta * R0C) + cm = M.contact_moment + bA, bB = grid_dn(b0 - Dl), grid_up(b1 + Dl) + m3b0 = cm(2, 0, b0).lo + L3up = 2 * cm(1, 1, bB).hi / m3b0 + L3dn = 2 * cm(1, 1, b1).hi / cm(2, 0, bA).lo + pR0 = M.chi_tail(3, R0C) + muB = M.rup_rel(b1 * M.sqrt_up(Fr(2)) + eps) + sig = M.sqrt_up(max(x.hi for x in (Cb[0][0], Cb[1][1], Cb[2][2])) + + 2 * max(M.absup(Cb[i][j]) for i in range(3) for j in range(3) if i != j)) + U = M.chi_upper_moments(3, R0C, 4) + out_D2 = sum((U[i] * (M.binom(4, i) * muB ** (4 - i) * sig ** i) for i in range(5)), M.IV(0)).hi / 4 + tail_c = M.sqrt_up(cm(4, 0, b1).hi) * M.sqrt_up(pR0) + nBF16 = M.rup_rel(muB + sig * M.chi_norm(3, 16)) + out_ball = M.sqrt_up(pR0) + + def up_moment(a, c): + return M.rup_rel(cm(a, c, bB).hi + 2 ** c * M.rup_rel(nBF16 ** (2 * a + c)) * out_ball) + ED2, ED4, ED2T2, ET4, DT = up_moment(2, 0), up_moment(4, 0), up_moment(2, 2), up_moment(0, 4), up_moment(1, 1) + trCb = sum(x.hi for x in (Cb[0][0], Cb[1][1], Cb[2][2])) + BF = lambda p: M.frob_norm(muB, trCb, p) + # secondary law (engine interval law over [0, R]) + b, k = M.IV(b0, b1), M.IV(k0, k1) + ma = {nm: M.absup(b * il.alpha[nm] + k * il.beta[nm]) for nm in M.TARGET_NAMES} + T = lambda p: M.gauss_norm(ma['T'], il.sdQ['T'], p) + tau = lambda p: M.gauss_norm(ma['tau'], il.sdQ['tau'], p) + mu_o = M.sqrt_up(ma['o11'] ** 2 + ma['o22'] ** 2 + 2 * ma['o12'] ** 2) + trO = sum(m * il.C[(nm, nm)].hi for nm, m in zip(M.ONAMES, (1, 1, 2))) + Om = lambda p: M.frob_norm(mu_o, trO, p) + mu_v = M.sqrt_up(ma['v1'] ** 2 + ma['v2'] ** 2) + v = lambda p: M.frob_norm(mu_v, il.C[('v1', 'v1')].hi + il.C[('v2', 'v2')].hi, p) + mu_nu = M.sqrt_up(ma['nu1'] ** 2 + ma['nu2'] ** 2) + nu = lambda p: M.frob_norm(mu_nu, il.C[('nu1', 'nu1')].hi + il.C[('nu2', 'nu2')].hi, p) + e = lambda p: R * nu(p) + v(p) + kap = lambda p: 6 * k1 * tau(p) + T(2 * p) ** 2 + R * T(2 * p) * tau(2 * p) + c1 = lambda p: 6 * k1 + R * T(p) + c2 = lambda p: 6 * k1 + R * T(p) + R * R * tau(p) + norm36 = 36 * k0 * k0 * m3b0 + # the mean of Omega': ||mu_Omega'||_F <= s_mu r + e_mu (Taylor models; beta_O = r^2 on the diagonal) + s_mu2 = e_mu2 = Fr(0) + for nm, mult in zip(M.ONAMES, (1, 1, 2)): + sa_, ea_ = tm_lin(tml.alpha[nm], R) + sb_, eb_ = tm_lin(tml.beta[nm], R) + s_mu2 += mult * (b1 * sa_ + k1 * sb_) ** 2 + e_mu2 += mult * (b1 * ea_ + k1 * eb_) ** 2 + muO = M.sqrt_up(s_mu2) * R + M.sqrt_up(e_mu2) # sup over (0, R] (it multiplies r^2 or more) + # the regression of Omega' on B: E[Omega' - mu | B] = beta (B - mu_B) + DY, beta = (r - r^3/4)/2 + ..., DY remainder-only + G = tml.G + beta_t = G['o11'][0] + bc = beta_t.frac_coeffs() + require(abs(bc[0]) <= TINY, 'regression of Omega on B at r = 0') + for (o, l) in (('o22', 1), ('o12', 2)): + assert_flat(G[o][l] - beta_t, 0, 'regression of %s on B' % o) + for o, ls in (('o11', (1, 2)), ('o22', (0, 2)), ('o12', (0, 1))): + for l in ls: + assert_flat(G[o][l], 0, 'off-diagonal regression of %s on B' % o) + dG2 = Fr(0) + for o, mult in zip(('o11', 'o22', 'o12'), (1, 1, 2)): + for l in range(3): + t = G[o][l] - beta_t if (o, l) in (('o11', 0), ('o22', 1), ('o12', 2)) else G[o][l] + dG2 += mult * Fr(t.bound(), 1 << TM_P) ** 2 + dGn = M.sqrt_up(dG2) + b1c = bc[1] # = 1/2 + require(b1c > 0, 'sign of the first-order regression coefficient of Omega on B') + sb_beta = sum(abs(x) * R ** (j - 2) for j, x in enumerate(bc) if j >= 2) + e_beta = beta_t.frac_e() + # E[D tr(A* Omega') 1] = beta (2 E[D^2 1] - E[D tr(A* mu_B) 1]) + R1, tr(A* mu_B) = b tr B + tr(A* dmu), ||dmu||_F <= eps + DTlo = cm(1, 1, bA).lo - M.sqrt_up(cm(2, 2, b1).hi) * M.sqrt_up(pR0) + m3up = cm(2, 0, b1).hi + rho_lo = exp_minus(M, Dl * L3dn).lo - tail_c / m3b0 # m3_r / m3(b) + rho_hi = exp_minus(M, -(Dl * L3up)).hi + out_D2 / m3b0 + tau_lo = b0 * max(DTlo, Fr(0)) / m3up # b E[D tr B 1] / m3(b) + tau_hi = b1 * DT / m3b0 + X3lo = 2 * rho_lo - tau_hi - eps * DT / m3b0 + X3hi = 2 * rho_hi - tau_lo + eps * DT / m3b0 + X3m = max(abs(X3lo), abs(X3hi)) + # |R1|/m3(b) <= (s_mu r + e_mu) DT/m3 + ||DG|| sqrt(E[D^2 tr^2 1]) sqrt(tr Cb)/m3, so r |R1|/m3 <= r^2 s_mu DT/m3 + R (...) + R1a = M.sqrt_up(s_mu2) * DT / m3b0 + R1e = (M.sqrt_up(e_mu2) * DT + dGn * M.sqrt_up(ED2T2) * M.sqrt_up(trCb)) / m3b0 + # -r E[D tr(A* Omega') 1]/m3(b) = -(b1c r^2 + (r beta - b1c r^2)) X3 - r R1/m3(b), |r beta - b1c r^2| <= sb_beta R r^2 + e_beta r + U3_up = (max(Fr(0), -b1c * X3lo) + sb_beta * R * X3m + R1a, R * (e_beta * X3m + R1e)) + U3_dn = (max(Fr(0), b1c * X3hi) + sb_beta * R * X3m + R1a, R * (e_beta * X3m + R1e)) + if MUT == 'no-om-term': + U3_up = U3_dn = (Fr(0), Fr(0)) + # explained parts of Omega' by B (for U4) and by zeta = (B, v, nu) (for U6, U7): traces of C_Oz C_zz^-1 C_zO + zB = ('a11', 'a22', 'a12') + zA = zB + tuple(M.VNAMES) + ('nu1', 'nu2') + def cov_Oz(o, z): + if z in zB: + s_, e_ = tm_lin(tml.Cu[(o, z)], R) + return s_ * R + e_ + return M.absup(il.C[(o, z)]) + def explained(zs): + rows = [] + for o, mult in zip(M.ONAMES, (1, 1, 2)): + rows.append([cov_Oz(o, z) for z in zs]) + D = [il.C[(z, z)].lo for z in zs] + Ef2 = Fr(0) + for i in range(len(zs)): + for j in range(len(zs)): + if i != j: + c = M.absup(il.C[(zs[i], zs[j])]) + Ef2 += c * c / (D[i] * D[j]) + Ef = M.sqrt_up(Ef2) + require(Ef < Fr(1, 2), 'diagonal scaling (explained part of Omega)') + return sum(mult * sum(x * x / Dz for x, Dz in zip(row, D)) for row, mult in zip(rows, (1, 1, 2))) / (1 - Ef) + tB, tK = explained(zB), explained(zA) + YB4, YK4 = M.frob_norm(0, tB, 4), M.frob_norm(0, tK, 4) + detX = M.absup(il.Cg[('o11', 'o22')] - il.Cg[('o12', 'o12')]) # |E[det(Omega' - E[Omega' | B])]| + E1 = up_moment(1, 0) + # second order (explicit r^2) + # signed kappa term: 6k mu_tau E[D^2 1] + 6k E[(tau - mu_tau) D^2 1] - E[T^2 D^2 1] - r E[T tau D^2 1] + ED2lo = max(Fr(0), cm(2, 0, bA).lo - tail_c) + mt = M.IV(6 * k0, 6 * k1) * (b * il.alpha['tau'] + k * il.beta['tau']) * M.IV(ED2lo, ED2) + side = 6 * k1 * il.bnorm['tau'] * M.sqrt_up(trCb) * M.sqrt_up(ED4) + R * T(4) * tau(4) * M.sqrt_up(ED4) + U2_up = max(Fr(0), mt.hi + side) / norm36 + U2_dn = max(Fr(0), -mt.lo + side + T(4) ** 2 * M.sqrt_up(ED4)) / norm36 + if MUT == 'no-om-term': + U2_up = U2_dn = Fr(0) + U2 = Fr(0) + U3r = R * kap(4) * M.sqrt_up(ED2T2) * Om(4) + # U4 = r^2 E[c1 c2 D det Omega' 1]: E[det Omega' | B] = det(mu + Y_B) + E[det X'] (36 k^2 cancels; relative) + U4rel = (detX * E1 + M.sqrt_up(ED2) * (muO + YB4) ** 2 / 2) / m3b0 + U4 = R * R * kap(4) * M.sqrt_up(ED2) * Om(8) ** 2 / 2 + U5 = M.sqrt_up(ED2T2) * ((2 * T(4) + R * tau(4)) * v(8) ** 2 + 2 * c1(4) * nu(8) * v(8) + R * c1(4) * nu(8) ** 2) + # U6, U7: the 6k parts through E[Omega' | B, v, nu] = mu + Y_K (Omega' - E[Omega' | zeta] has conditional mean 0) + U67rel = (M.sqrt_up(ED2) * (muO * e(4) ** 2 + e(8) ** 2 * YK4) + M.sqrt_up(ET4) * (muO * v(4) ** 2 + v(8) ** 2 * YK4)) / (6 * k0 * m3b0) + U6 = R * T(8) * M.sqrt_up(ED2) * Om(8) * e(8) ** 2 + U7 = R * (T(8) + R * tau(8)) * M.sqrt_up(ET4) * Om(8) * v(8) ** 2 + U8 = R * c2(8) * Om(16) ** 2 / 2 * M.iroot(ET4, 4) * v(16) ** 2 + U9 = M.sqrt_up(ET4) * v(8) ** 2 * e(8) ** 2 + U10 = R * M.iroot(ET4, 4) * v(8) ** 2 * Om(4) * e(8) ** 2 + # the thin set {0 < lambda_1 <= r h} on G_0: conditional law of B given Y = (v, Omega', nu), eigenvalue coordinates + Yn = tuple(M.VNAMES) + tuple(M.ONAMES) + ('nu1', 'nu2') + lmB = gersh_min(Cb) + rows = [] + for nm in Yn: + if nm in M.ONAMES: + cov = [(tm_lin(tml.Cu[(nm, an)], R)[0] * R + tm_lin(tml.Cu[(nm, an)], R)[1]) * f for an, f in zip(names, (1, 1, 2))] + rows.append([M.sqrt_up(sum(x * x for x in cov)) / lmB]) + else: + rows.append([M.absup(x) for x in il.bt[nm]]) + Wt = wq_bound(M, il.Cg, Yn, rows) + c_hi = sig * sig + cl = 1 / (1 / lmB + Wt) + KBp = M.rup_rel((M.PI * M.SQRT2 / (2 * M.PI * M.SQRT2PI)).hi / (cl * M.sqrt_down(cl))) + m1 = muB + c_hi * M.sqrt_up(Wt) * M.chi_norm(7, 8) + Hs = half_moments(M, c_hi) + Ja = m1 ** 4 / 4 + sum(M.binom(3, i) * m1 ** (3 - i) * Hs[i] for i in range(4)) + Jb = m1 ** 3 / 3 + sum(M.binom(2, i) * m1 ** (2 - i) * Hs[i] for i in range(3)) + h = lambda p: Fr(2) / (9 * k0) * v(2 * p) ** 2 + Om(p) + nhg = h(4) * (Fr(15, 2) * k1 * h(8) + v(16) ** 2) * (9 * k1 * (h(8) + Om(8)) + e(16) ** 2) + nhgO = h(8) * (Fr(15, 2) * k1 * h(16) + v(32) ** 2) * (9 * k1 * (h(16) + Om(16)) + e(32) ** 2) * Om(8) + bad = R * KBp * (Ja * nhg + R * Jb * nhgO) + if MUT == 'no-bad-set': + bad = Fr(0) + q = M.gauss_tail2(ma['T'], il.sdQ['T'], 3 * k0 / (2 * R)) + M.gauss_tail2(ma['tau'], il.sdQ['tau'], 3 * k0 / (2 * R * R)) + P1n = c1(8) * BF(16) ** 2 + R * BF(8) * v(16) ** 2 + P2n = c2(8) * (BF(16) + R * Om(16)) ** 2 + R * (BF(8) + R * Om(8)) * e(16) ** 2 + g0c = P1n * P2n * M.sqrt_up(q) if q > 0 else Fr(0) + X = ((U2 + U3r + U4 + U5 + U6 + U7 + U8 + U9 + U10 + bad) / norm36 + U4rel + U67rel, g0c / norm36) + z_up = ae_add(exp_up(M, (Fr(0), Dl * L3up), R), (Fr(0), out_D2 / m3b0), U3_up, X, (U2_up, Fr(0))) + z_dn = ae_add((Fr(0), Dl * L3dn), (Fr(0), tail_c / m3b0), U3_dn, X, (U2_dn, Fr(0))) + p_up, p_dn = pi_ratio(M, tml, 8, Q, R) + return combine(M, p_up, p_dn, z_up, z_dn, R) + + +def rate_sweep(d, tml): + """For every R in R_STARS and every sub-box: (a_up, eps_up, a_dn, eps_dn) as decimal strings (rounded up).""" + M = ENG[d] + fn = bounds_d2 if d == 2 else bounds_d3 + out = {} + for R in R_STARS: + il = M.band_law(Fr(0), R) + rows = [] + for bb, kb in SUBBOXES: + up, dn = fn((bb[0], bb[1], kb[0], kb[1]), R, tml, il) + rows.append([dec_up(up[0], 6), dec_up(up[1], 20), dec_up(dn[0], 6), dec_up(dn[1], 20)]) + out[str(R)] = {'boxes': rows, + 'a_up': max((r[0] for r in rows), key=Fr), 'eps_up': max((r[1] for r in rows), key=Fr), + 'a_dn': max((r[2] for r in rows), key=Fr), 'eps_dn': max((r[3] for r in rows), key=Fr)} + return out + + +# ============================================================================= 4. certified reference integrals +PREC = 240 + + +def iroot_int(N, p): + """Largest y >= 0 with y^p <= N.""" + if N < 2: + return N + y = 1 << ((N.bit_length() + p - 1) // p) + while True: + z = ((p - 1) * y + N // y ** (p - 1)) // p + if z >= y: + break + y = z + while y ** p > N: + y -= 1 + while (y + 1) ** p <= N: + y += 1 + return y + + +def pow_frac(M, x, num, den): + """Enclosure of x^(num/den), rational x > 0.""" + x = Fr(x) ** num + S = 1 << (den * PREC) + lo_n = (x.numerator * S) // x.denominator + hi_n = -((-x.numerator * S) // x.denominator) + ylo, yhi = iroot_int(lo_n, den), iroot_int(hi_n, den) + if yhi ** den < hi_n: + yhi += 1 + return M.IV(Fr(ylo, 1 << PREC), Fr(yhi, 1 << PREC)) + + +def lower_gamma(M, an, ad, x): + """gamma(a, x) = x^a e^-x sum_n x^n / (a (a+1) ... (a+n)), a = an/ad > 0, rational x > 0 (series with a geometric tail).""" + a, x = Fr(an, ad), Fr(x) + term = s = 1 / a + n = 0 + while True: + n += 1 + term = term * x / (a + n) + s += term + if a + n + 1 > 2 * x and term < Fr(1, 10 ** 70) * s: + break + rho = x / (a + n + 1) + return pow_frac(M, x, an, ad) * M.exp_neg_point(x) * M.IV(s, s + term * rho / (1 - rho)) + + +def k_integral(M, qn, qd, k0, k1): + """int_{k0}^{k1} k^q exp(-12 k^2) dk = (1/2) 12^(-a) [gamma(a, 12 k1^2) - gamma(a, 12 k0^2)], a = (q + 1)/2.""" + an, ad = qn + qd, 2 * qd + g = math.gcd(an, ad) + an, ad = an // g, ad // g + pre = pow_frac(M, Fr(1, 12), an, ad) * Fr(1, 2) + return pre * (lower_gamma(M, an, ad, 12 * Fr(k1) ** 2) - lower_gamma(M, an, ad, 12 * Fr(k0) ** 2)) + + +def m_ref(d, b): + """The reference contact moment: F(b, sqrt2) = E[(b + sqrt2 z)_+^2] (d = 2), m_3(b) = E[det(B)^2 1{B > 0}] (d = 3).""" + if d == 2: + s = E2.isqrt_iv(E2.IV(2)) + return E2.IV(E2.elam2_pos(Fr(b), s.lo).lo, E2.elam2_pos(Fr(b), s.hi).hi) + return E3.contact_moment(2, 0, Fr(b)) + + +def m_ref_derivs(d, b): + """Upper bounds of m, m', m'' at b (each increasing in b).""" + if d == 2: + s = E2.isqrt_iv(E2.IV(2)).hi + return E2.elam2_pos(Fr(b), s).hi, 2 * E2.elam_pos(Fr(b), s).hi, Fr(2) + cm = E3.contact_moment + return cm(2, 0, Fr(b)).hi, 2 * cm(1, 1, Fr(b)).hi, 2 * cm(0, 2, Fr(b)).hi + 4 * cm(1, 0, Fr(b)).hi + + +def b_cells(d): + """Enclosures of int over [j h, (j+1) h] of exp(-3b^2/4) m(b) db, h = 1/NH (midpoint rule, |g''| bounded per block).""" + M = ENG[d] + h = Fr(1, NH) + out = [] + for blk in range(NH // BLOCK): + x0, x1 = blk * BLOCK * h, (blk + 1) * BLOCK * h + m, m1, m2 = m_ref_derivs(d, x1) + g2 = M.exp_neg_point(3 * x0 * x0 / 4).hi * ((Fr(9, 4) * x1 * x1 + Fr(3, 2)) * m + 3 * x1 * m1 + m2) + err = h ** 3 / 24 * g2 + for j in range(BLOCK): + c = x0 + (j + Fr(1, 2)) * h + out.append(M.exp_neg_point(3 * c * c / 4) * m_ref(d, c) * h + M.IV(-err, err)) + return out + + +def b_integral(M, cells, b0, b1): + i0, i1 = Fr(b0) * NH, Fr(b1) * NH + require(i0.denominator == 1 and i1.denominator == 1, 'b-box off the cell grid') + return sum((cells[j] for j in range(int(i0), int(i1))), M.IV(0)) + + +def K_const(d): + """|S^(d-1)| 144 (2 pi)^(-(d+1)) / sqrt12: A_0^ref/(3 k^p) = K k^(2-p) e^(-12 k^2) e^(-3 b^2/4) m(b).""" + M = ENG[d] + tp = 2 * M.PI + pw = M.IV(1) + for _ in range(d + 1): + pw = pw * tp + return (tp if d == 2 else 2 * tp) * 144 / pw / M.isqrt_iv(M.IV(12)) + + +def reference(d): + M = ENG[d] + cells = b_cells(d) + K = K_const(d) + Ib = b_integral(M, cells, 0, 1) + c_ref = K * Ib * k_integral(M, 4, 3, Fr(1, 2), Fr(2)) + J23, J43, J13 = {}, {}, {} + for kb in SUB_K: + J23[kb] = k_integral(M, 2, 3, kb[0], kb[1]) + J43[kb] = k_integral(M, 4, 3, kb[0], kb[1]) + for kb in CAP_K: + J13[kb] = k_integral(M, 1, 3, kb[0], kb[1]) + Ibs = {bb: b_integral(M, cells, bb[0], bb[1]) for bb in set(SUB_B) | set(CAP_B)} + return {'c_ref': [dec_down(c_ref.lo, 24), dec_up(c_ref.hi, 24)], + 'w_c': [dec_up((K * Ibs[bb] * J43[kb]).hi, 24) for bb, kb in SUBBOXES], # int A_0/(3 k^(2/3)) + 'w_2': [dec_up((K * Ibs[bb] * J23[kb]).hi, 24) for bb, kb in SUBBOXES], # int A_0/(3 k^(4/3)) + 'w_cap': [dec_up((K * Ibs[bb] * J13[kb]).hi, 24) for bb, kb in CAP_BOXES]} # int A_0/(3 k^(5/3)) + + +# ============================================================================= 5. the refined cap sweep (engines of #206, #212) +CAPM = {} + + +def cap_init(d): + CAPM['M'] = ENG[d] + CAPM['d'] = d + if MUT == 'cap-half': + CAPM['M'].MUT = 'cap-half' + + +def cap_band(args): + """Certified bound of sup over the band of Q^W(G_r^c)/r^3 on every refined box (rounded up, 4 places).""" + d, r0, r1 = args + M = ENG[d] + if MUT == 'cap-half': + M.MUT = 'cap-half' + law = M.band_law(r0, r1) + x0, th = (M.COMBOS[0] if d == 2 else M.COMBO) + return {'r': [str(r0), str(r1)], + 'bound': [M.dec_up(M.box_bound(law, bb, kb, r0, r1, last_band=(r0 == 0), x0=x0, theta=th)['total']) + for bb, kb in CAP_BOXES]} + + +def cap_sweep(d, procs, which=None): + bl = ENG[d].bands() + idx = range(len(bl)) if which is None else which + jobs = [(d, bl[i][0], bl[i][1]) for i in idx] + if procs <= 1: + return [cap_band(j) for j in jobs] + with multiprocessing.Pool(procs, initializer=cap_init, initargs=(d,)) as pool: + return pool.map(cap_band, jobs, chunksize=1) + + +def cap_sample(d): + """Band indices replayed by --check: the band ending at each r_*, the band ending at 2^-20 and the last band.""" + bl = ENG[d].bands() + ends = set(R_STARS) | {Fr(1, 2 ** 20)} + return sorted({i for i, (r0, r1) in enumerate(bl) if r1 in ends} | {0}) + + +# ============================================================================= 6. assembly +def assemble(d, rate, ref, cap): + """The C_{B,K}(r_*) table, the second-order density constants, and the (12.1), (12.3) constants.""" + c_lo, c_hi = Fr(ref['c_ref'][0]), Fr(ref['c_ref'][1]) + wc = [Fr(x) for x in ref['w_c']] + w2 = [Fr(x) for x in ref['w_2']] + wcap = [Fr(x) for x in ref['w_cap']] + out = {} + for R in R_STARS: + rr = rate[str(R)] + a_up, e_up, a_dn, e_dn = Fr(rr['a_up']), Fr(rr['eps_up']), Fr(rr['a_dn']), Fr(rr['eps_dn']) + c2_up = sum(Fr(row[0]) * w for row, w in zip(rr['boxes'], w2)) + c2_dn = sum(Fr(row[2]) * w for row, w in zip(rr['boxes'], w2)) + e_c_up = sum(Fr(row[1]) * w for row, w in zip(rr['boxes'], wc)) + e_c_dn = sum(Fr(row[3]) * w for row, w in zip(rr['boxes'], wc)) + Cbox = [Fr(0)] * len(CAP_BOXES) + for rec in cap: + if Fr(rec['r'][1]) <= R: + for i, x in enumerate(rec['bound']): + Cbox[i] = max(Cbox[i], Fr(x)) + S = sum(c * w for c, w in zip(Cbox, wcap)) + CBK = (1 + a_up * R * R + e_up) * S + out[str(R)] = {'C_BK': dec_up(CBK, 4), 'C_121': dec_up(Fr(3, 5) * CBK, 4), + 'c2_up': dec_up(c2_up, 12), 'c2_dn': dec_up(c2_dn, 12), + 'epsc_up': dec_up(e_c_up, 30), 'epsc_dn': dec_up(e_c_dn, 30), + 'rel2_up': dec_up(c2_up / c_lo, 6), 'rel2_dn': dec_up(c2_dn / c_lo, 6), + 'ell_max': '%s' % (R ** 3 / 2)} + return out + + +def params(): + return {'R_STARS': [str(x) for x in R_STARS], 'TM': {'s': TM_S, 'N': TM_N, 'P': TM_P}, 'R0_COUPLING': str(R0C), + 'SUB_B': [[str(a), str(b)] for a, b in SUB_B], 'SUB_K': [[str(a), str(b)] for a, b in SUB_K], + 'NH': NH, 'BLOCK': BLOCK, 'CAP_B': [[str(a), str(b)] for a, b in CAP_B], 'CAP_K': [[str(a), str(b)] for a, b in CAP_K], + 'band': {'b': ['0', '1'], 'k': ['1/2', '2']}, 'L_min': 10} + + +def compute_core(d): + tml = tm_law(d) + return tm_summary(tml), rate_sweep(d, tml), reference(d) + + +def full_run(procs): + res = {'schema': 1, 'object': 'CL-C8-LIFETIME-DIFFERENCE-CONSTANT-20261001-v1', 'scientific_effect': 'NONE', + 'certified': True, 'mutant': None, 'parameters': params(), 'dims': {}} + for d in (2, 3): + summ, rate, ref = compute_core(d) + cap = cap_sweep(d, procs) + res['dims'][str(d)] = {'tm_law': summ, 'rate': rate, 'reference': ref, 'table': assemble(d, rate, ref, cap), + 'cap_boxes': [[str(bb[0]), str(bb[1]), str(kb[0]), str(kb[1])] for bb, kb in CAP_BOXES], + 'cap_bands': cap} + return res + + +def results_text(res): + """Canonical layout: everything indented except the cap-band records, one line each.""" + caps = {d: res['dims'][d].pop('cap_bands') for d in res['dims']} + head = json.dumps(res, indent=1, sort_keys=True) + for d in res['dims']: + res['dims'][d]['cap_bands'] = caps[d] + tail = ',\n "cap_bands": {\n' + ',\n'.join( + ' "%s": [\n' % d + ',\n'.join(' ' + json.dumps(rec, sort_keys=True) for rec in caps[d]) + '\n ]' + for d in sorted(caps)) + '\n }\n}\n' + return head[:-2] + tail + + +def load_results(): + with open(os.path.join(HERE, 'RESULTS.json')) as fh: + res = json.load(fh) + for d, recs in res.pop('cap_bands').items(): + res['dims'][d]['cap_bands'] = recs + return res + + +def check_run(procs, full=False): + res = load_results() + with open(os.path.join(HERE, 'RESULTS.json')) as fh: + require(fh.read() == results_text(res), 'RESULTS.json is not in canonical layout') + require(res['parameters'] == params(), 'parameters differ') + require(res['mutant'] is None and res['certified'] is True, 'header') + for d in (2, 3): + rd = res['dims'][str(d)] + tml = tm_law(d) + require(tm_summary(tml) == rd['tm_law'], 'Taylor-model law differs (d = %d)' % d) + rate = rate_sweep(d, tml) + require(rate == rd['rate'], 'rate sweep differs (d = %d)' % d) + ref = reference(d) + require(ref == rd['reference'], 'reference integrals differ (d = %d)' % d) + c_lo, c_hi = Fr(ref['c_ref'][0]), Fr(ref['c_ref'][1]) + cx = C_REF_197 if d == 2 else C_REF_205 + require(c_lo <= cx <= c_hi, 'reference c_{B,K} does not contain the value of Math-#197/#205 (d = %d)' % d) + require(rd['cap_boxes'] == [[str(bb[0]), str(bb[1]), str(kb[0]), str(kb[1])] for bb, kb in CAP_BOXES], 'cap boxes') + bl = ENG[d].bands() + require([rec['r'] for rec in rd['cap_bands']] == [[str(a), str(b)] for a, b in bl], 'cap band layout (d = %d)' % d) + which = None if full else cap_sample(d) + recs = cap_sweep(d, procs, which) + for i, rec in zip(range(len(bl)) if which is None else which, recs): + require(rec == rd['cap_bands'][i], 'cap band %d differs (d = %d)' % (i, d)) + require(assemble(d, rate, ref, rd['cap_bands']) == rd['table'], 'assembled table differs (d = %d)' % d) + print('CHECK PASSED (%s)' % ('full' if full else 'sample')) + + +# ============================================================================= 7. floating controls (not part of the certificate) +def controls(): + """Floating estimates of the reference-kernel cap-route benchmarks Gamma_{B,K} = |S| int A_0^ref c_G / (3 k^(5/3)) for comparison with C_{B,K}: + planar c_G = R(b) J(k) of Math-#203 with J(k) = 2359296 k^3 (1 + delta(k)), delta(1/2) = 0.0232, delta(3/4) = 1.3e-4; + d = 3 from the floating R_3(b) R(b) and J^(3)/J ratios of Math-#208.""" + from math import exp, pi, sqrt, erf + out = {} + K2 = 2 * pi * 144 / (2 * pi) ** 3 / sqrt(12) + Ib2 = sqrt(pi) / 2 * erf(1) / (2 * sqrt(pi)) # int_0^1 e^{-b^2} db / (2 sqrt(pi)) (m R = p_w(0)) + def J2(k): + dl = 0.0232 + (k - 0.5) / 0.25 * (1.3e-4 - 0.0232) if k < 0.75 else 1.3e-4 * max(0.0, (1 - k) / 0.25) + return 2359296 * k ** 3 * (1 + dl) + n = 200000 + Ik2 = sum(((0.5 + (i + 0.5) * 1.5 / n) ** (1 / 3)) * exp(-12 * (0.5 + (i + 0.5) * 1.5 / n) ** 2) * J2(0.5 + (i + 0.5) * 1.5 / n) + * 1.5 / n for i in range(n)) + out['Gamma_2'] = K2 * Ib2 * Ik2 + bs = [0, 0.25, 0.5, 0.75, 1.0] + m3 = [0.6715728752625627, 1.195532362807149, 2.05794812257308, 3.43079921823, 5.54806027367761] + r3r = [1.1880833639847637, 0.9085531055205767, 0.6853903187865128, 0.5096151204445851, 0.37314989157732215] + f = [exp(-0.75 * b * b) * m * r for b, m, r in zip(bs, m3, r3r)] + Ib3 = 0.25 / 3 * (f[0] + 4 * f[1] + 2 * f[2] + 4 * f[3] + f[4]) + K3 = 4 * pi * 144 / (2 * pi) ** 4 / sqrt(12) + def J3(k): + dl = 0.1617 + (k - 0.5) / 0.25 * (0.0012 - 0.1617) if k < 0.75 else 0.0012 * max(0.0, (1 - k) / 0.25) + return 2359296 * k ** 3 * (1 + dl) + Ik3 = sum(((0.5 + (i + 0.5) * 1.5 / n) ** (1 / 3)) * exp(-12 * (0.5 + (i + 0.5) * 1.5 / n) ** 2) * J3(0.5 + (i + 0.5) * 1.5 / n) + * 1.5 / n for i in range(n)) + out['Gamma_3'] = K3 * Ib3 * Ik3 + return out + + +def mc_ratio(d, n, seed=20261001): + """Floating Monte Carlo of (A_r/A_0^ref - 1)/r^2 for the reference kernel at r = 1/8, 1/16: the exact law at r from the + series (all r, not only r <= 1/64), Z_r/r^2 by sampling W_r/r^2 = P1 P2 1{typed}, and the exact pin ratio.""" + import random + M = ENG[d] + names = ('w', 'v', 'om', 'T', 'tau', 'nu') if d == 2 else \ + ('a11', 'a22', 'a12', 'v1', 'v2', 'o11', 'o22', 'o12', 'T', 'tau', 'nu1', 'nu2') + pins, targets = M.functionals() + P = [pins[x] for x in M.PIN_NAMES] + idx = [M.TARGET_NAMES.index(x) for x in names] + Tf = [targets[x] for x in names] + tml = tm_law(d) + def cov(F, G, key, r): + ser, w, _ = M.pair_series(F, G, key) + return sum(c * r ** p for p, c in ser.items()) + def law(r, b, k): + n_ = len(P) + S = [[None] * n_ for _ in range(n_)] + for i in range(n_): + for j in range(i, n_): + S[i][j] = S[j][i] = cov(P[i], P[j], ('p', i, j), r) + Stp = [[cov(Tf[a], P[j], ('tp', idx[a], j), r) for j in range(n_)] for a in range(len(Tf))] + Mx = [list(S[i]) + [Stp[a][i] for a in range(len(Tf))] for i in range(n_)] + for col in range(n_): + for i in range(col + 1, n_): + f = Mx[i][col] / Mx[col][col] + for j in range(col, len(Mx[i])): + Mx[i][j] -= f * Mx[col][j] + W = [] + for a in range(len(Tf)): + x = [None] * n_ + for i in reversed(range(n_)): + x[i] = (Mx[i][n_ + a] - sum(Mx[i][j] * x[j] for j in range(i + 1, n_))) / Mx[i][i] + W.append(x) + kv = [-r ** 3 / 2, -r ** 2, Fr(12)] + [Fr(0)] * (n_ - 3) + mu = [float(b * W[a][0] + k * sum(W[a][j] * kv[j] for j in range(n_))) for a in range(len(Tf))] + def stt(a, c): + i, j = idx[a], idx[c] + return cov(Tf[a], Tf[c], ('tt', i, j), r) if i <= j else cov(Tf[c], Tf[a], ('tt', j, i), r) + C = [[float(stt(a, c) - sum(W[a][l] * Stp[c][l] for l in range(n_))) for c in range(len(Tf))] for a in range(len(Tf))] + L = [[0.0] * len(C) for _ in C] + for i in range(len(C)): + for j in range(i + 1): + s = C[i][j] - sum(L[i][l] * L[j][l] for l in range(j)) + L[i][j] = math.sqrt(max(s, 0.0)) if i == j else (s / L[j][j] if L[j][j] > 0 else 0.0) + return mu, L + rng = random.Random(seed) + out = [] + for r in (Fr(1, 8), Fr(1, 16)): + rf = float(r) + for b, k in ((Fr(0), Fr(1, 2)), (Fr(0), Fr(2)), (Fr(1), Fr(1, 2)), (Fr(1), Fr(2))): + mu, L = law(r, b, k) + kf = float(k) + tot = tot2 = 0.0 + for _ in range(n): + z = [rng.gauss(0.0, 1.0) for _ in mu] + x = [mu[i] + sum(L[i][j] * z[j] for j in range(i + 1)) for i in range(len(mu))] + if d == 2: + w, v, om, T, tau, nu = x + lam = -w + c1, c2 = 6 * kf - rf * T, 6 * kf + rf * T + rf * rf * tau + P1 = c1 * lam - rf * v * v + P2 = c2 * (lam - rf * om) + rf * (rf * nu - v) ** 2 + Wv = P1 * P2 if (c1 > 0 and P1 > 0 and P2 > 0) else 0.0 + else: + a11, a22, a12, v1, v2, o11, o22, o12, T, tau, nu1, nu2 = x + B = (-a11, -a22, -a12) + S_ = (B[0] - rf * o11, B[1] - rf * o22, B[2] - rf * o12) + detB, detS = B[0] * B[1] - B[2] ** 2, S_[0] * S_[1] - S_[2] ** 2 + c1, c2 = 6 * kf - rf * T, 6 * kf + rf * T + rf * rf * tau + e1, e2 = rf * nu1 - v1, rf * nu2 - v2 + P1 = c1 * detB - rf * (B[1] * v1 * v1 - 2 * B[2] * v1 * v2 + B[0] * v2 * v2) + P2 = c2 * detS + rf * (S_[1] * e1 * e1 - 2 * S_[2] * e1 * e2 + S_[0] * e2 * e2) + Wv = 0.0 + if B[0] > 0 and detB > 0 and P1 > 0 and P2 > 0: + # index(H_S) = 2: sign changes of the leading minors (-S_11, det S, r P2) of H_S reordered (y1, y2, x) + m1, m2, m3 = -S_[0], detS, rf * P2 + if m1 != 0 and m2 != 0: + neg = (m1 < 0) + (m2 / m1 < 0) + (m3 / m2 < 0) + Wv = P1 * P2 if neg == 2 else 0.0 + tot += Wv + tot2 += Wv * Wv + mean = tot / n + se = math.sqrt(max(tot2 / n - mean * mean, 0.0) / n) + mref = float(m_ref(d, b).mid()) + zr, zse = mean / (36 * kf * kf * mref), se / (36 * kf * kf * mref) + ev = lambda t: sum(float(c) * rf ** j for j, c in enumerate(t.frac_coeffs())) + E = ev(tml.e_bb) * float(b) ** 2 + 2 * ev(tml.e_bk) * float(b) * kf + ev(tml.e_kk) * kf * kf + pr = math.sqrt(12 / ev(tml.det)) * math.exp(-(E - (1.5 * float(b) ** 2 + 24 * kf * kf)) / 2) + out.append({'d': d, 'r': str(r), 'b': str(b), 'k': str(k), 'n': n, 'Z_ratio': round(zr, 5), 'Z_se': round(zse, 5), + 'pin_ratio': round(pr, 6), 'coef': round((pr * zr - 1) / rf ** 2, 3), 'coef_se': round(pr * zse / rf ** 2, 3)}) + return out + + +def main(): + global MUT + ap = argparse.ArgumentParser() + ap.add_argument('--check', action='store_true') + ap.add_argument('--check-full', action='store_true') + ap.add_argument('--mutant', choices=MUTANTS) + ap.add_argument('--procs', type=int, default=4) + ap.add_argument('--controls', action='store_true') + args = ap.parse_args() + MUT = args.mutant + if args.controls: + out = controls() + out['mc'] = mc_ratio(2, 200000) + mc_ratio(3, 100000) + print(json.dumps(out, indent=1)) + return + if args.check or args.check_full: + check_run(args.procs, full=args.check_full) + return + require(MUT is None, 'a mutant cannot regenerate RESULTS.json') + res = full_run(args.procs) + with open(os.path.join(HERE, 'RESULTS.json'), 'w') as fh: + fh.write(results_text(res)) + print(json.dumps({d: {R: row['C_BK'] for R, row in res['dims'][d]['table'].items()} for d in res['dims']})) + + +if __name__ == '__main__': + main() diff --git a/frontiers/c8_torus_vanishing_remainder_20261001/theorem_v.py b/frontiers/c8_torus_vanishing_remainder_20261001/theorem_v.py new file mode 100644 index 000000000..5fd6b75df --- /dev/null +++ b/frontiers/c8_torus_vanishing_remainder_20261001/theorem_v.py @@ -0,0 +1,863 @@ +#!/usr/bin/env python3 +"""Theorem L' (NOTE.md): the radial ledger of [LP] Theorem B on the C8 band with a VANISHING remainder, d = 2 and d = 3. + +For the torus kernel (every side L >= 10, every frame) and for the reference kernel, b in [0, 1], k in [1/2, 2], 0 < r <= R: + + -(a_dn r^2 + beta_dn r) <= A_r(b, k, u) / A_0(b, k, u) - 1 <= a_up r^2 + beta_up r, + +where A_0 = lim_{r -> 0} A_r is the contact integrand of THE SAME kernel (for the torus: its own A_0^(L), not the Gaussian +A_0^ref). Math-#215 (Theorem L) proved the same shape against A_0^ref with an additive, r-independent eps_d; here every +remainder carries a positive power of r. The first-order coefficient beta collects the torus corrections only (about +1e-12); for the reference kernel it is exactly 0 (torus=False gives M1 = 0, and the computed beta is the rational 0: its +upward-rounded stored values are all 0). + +Method (NOTE.md sections 2-5): +- Taylor models with INTERVAL coefficients and a remainder proportional to r^(N+1) (class TV): every rounding goes into a + coefficient radius, every truncation into the r^(N+1) remainder. The value at r = 0 is the constant coefficient, so + t(r) - t(0) is controlled by the coefficients of r^1, r^2, ... only. +- The torus part of each covariance has the coefficient majorant |tau_p| <= T0 e^p (Cauchy estimates and + g_x!/(g_x - A)! <= w^A e^(g_x - w), as in the engines of Math-#206/#212); it enters as radii T0 e^p on the coefficients + p <= N and as T0 e^(N+1)/(1 - e R) r^(N+1). +- Increments against r = 0: the pin-density ratio pi_r/pi_0 (the kernel normalization Theta multiplies increments only), + the main normalizer term by the derivative bound dF = 2 E[lambda_+] dmu + Phi(mu/sigma) d(sigma^2) (d = 2) and by a Gaussian + gradient coupling with |grad det(B)^2 1{B > 0}| <= ||B||_F^3 (d = 3); first-order terms carry an explicit factor r; the + thin set and the far set G_0^c by Markov at a high moment (r^2). +- The interval band laws, the second-order term bounds and the reference integrals are those of Math-#215's theorem_b.py and + the engines of Math-#206/#212, as byte-identical pinned copies (SOURCE_MAP.json). + + python3 -B -S theorem_v.py --write regenerate RESULTS.json + python3 -B -S theorem_v.py --check replay and compare with RESULTS.json (exact) + python3 -B -S theorem_v.py --mutant NAME a semantic mutation; the replay must then fail (exit 1) +""" +import argparse +import importlib.util +import json +import math +import os +import sys +from fractions import Fraction as Fr + +HERE = os.path.dirname(os.path.abspath(__file__)) +OBJECT = 'CL-C8-TORUS-VANISHING-REMAINDER-20261001-v1' +MUTANTS = ('torus-const-only', 'exp-radius', 'no-lin', 'no-om-term', 'coupling-half') +MUT = None + + +def require(cond, msg): + if not cond: + raise SystemExit('FAIL: ' + msg) + + +def _load(name, fn): + spec = importlib.util.spec_from_file_location(name, os.path.join(HERE, fn)) + mod = importlib.util.module_from_spec(spec) + spec.loader.exec_module(mod) + return mod + + +TB = _load('theorem_b', 'theorem_b.py') # Math-#215, pinned byte-identical copy (loads engine_e2.py, engine_e3.py) +E2, E3, ENG = TB.E2, TB.E3, TB.ENG +R_STARS = TB.R_STARS +SUBBOXES, SUB_K = TB.SUBBOXES, TB.SUB_K +TM_S, TM_N, TM_P = TB.TM_S, TB.TM_N, TB.TM_P +TINY = TB.TINY +E_UP = Fr(27183, 10000) # > e +SQRT2_UP = Fr(14143, 10000) # > sqrt(2) +MARKOV_P = 64 # moment order of the far-set bound +dec_up, dec_down, cdiv = TB.dec_up, TB.dec_down, TB.cdiv + + +# ============================================================================= 1. interval-coefficient Taylor models +class TV: + """f(r) = sum_{j <= N} c_j r^j + rho(r) for 0 <= r <= 2^-s, with FIXED (r-independent) coefficients + c_j in [(C_j - D_j)/2^P, (C_j + D_j)/2^P] and |rho(r)| <= (E/2^P) r^(N+1). In particular f(0) = c_0. + Preconditions (the reuse boundary; reviews C56, C63): C and D are integer lists of length N + 1 with every D_j >= 0; + E is an integer >= 0; s >= 0 and N >= 0 are integers, with N >= 2 for the second-order readers (inc, absinc and + their callers read coeff(2)); the operands of +, -, * share (s, N); powers are nonnegative integers; reader radii + and scalars are exact rationals, with 0 < R <= 2^-s; the lists are not mutated after construction. The certificate + meets all of them (s = TM_S, N = TM_N = 8); inputs outside them are not covered.""" + __slots__ = ('C', 'D', 'E', 's', 'N') + + def __init__(self, C, D, E, s, N): + self.C, self.D, self.E, self.s, self.N = C, D, E, s, N + + @classmethod + def build(cls, centers, radii, e, s, N): + """centers, radii: {power: rational}; e: rational coefficient of r^(N+1) in the remainder bound.""" + C, D = [0] * (N + 1), [0] * (N + 1) + R = Fr(1, 2 ** s) + E = Fr(e) + for p, x in centers.items(): + x = Fr(x) + if x == 0: + continue + if p <= N: + v = round(x * (1 << TM_P)) + C[p] += v + if x * (1 << TM_P) != v: + D[p] += 1 + else: + E += abs(x) * R ** (p - N - 1) + for p, x in radii.items(): + x = Fr(x) + if p <= N: + D[p] += cdiv((x * (1 << TM_P)).numerator, (x * (1 << TM_P)).denominator) + else: + E += x * R ** (p - N - 1) + return cls(C, D, cdiv(E.numerator << TM_P, E.denominator), s, N) + + @classmethod + def const(cls, x, s, N, rad=0): + return cls.build({0: Fr(x)}, {0: Fr(rad)} if rad else {}, 0, s, N) + + def zero(self): + return TV([0] * (self.N + 1), [0] * (self.N + 1), 0, self.s, self.N) + + def polybound(self): + """Upper bound (units 2^-P) of |sum c_j r^j| on [0, 2^-s].""" + return sum(cdiv(abs(c) + d, 1 << (self.s * j)) for j, (c, d) in enumerate(zip(self.C, self.D)) if c or d) + + def __add__(self, o): + if not isinstance(o, TV): + o = TV.const(o, self.s, self.N) + return TV([a + b for a, b in zip(self.C, o.C)], [a + b for a, b in zip(self.D, o.D)], self.E + o.E, self.s, self.N) + __radd__ = __add__ + + def __neg__(self): + return TV([-a for a in self.C], list(self.D), self.E, self.s, self.N) + + def __sub__(self, o): + if not isinstance(o, TV): + o = TV.const(o, self.s, self.N) + return self + (-o) + + def scale(self, x): + x = Fr(x) + C, D = [], [] + for c, d in zip(self.C, self.D): + v = c * x + w = round(v) + C.append(w) + D.append(cdiv((d * abs(x)).numerator, (d * abs(x)).denominator) + (1 if v != w else 0)) + e = self.E * abs(x) + return TV(C, D, cdiv(e.numerator, e.denominator), self.s, self.N) + + def __mul__(self, o): + if not isinstance(o, TV): + return self.scale(o) + N, s = self.N, self.s + S = [0] * (2 * N + 1) + Rd = [0] * (2 * N + 1) + for i, (a, da) in enumerate(zip(self.C, self.D)): + if a or da: + for j, (b, db) in enumerate(zip(o.C, o.D)): + if b or db: + S[i + j] += a * b + Rd[i + j] += abs(a) * db + da * abs(b) + da * db + C, D, E = [], [], 0 + for k in range(N + 1): + v = S[k] >> TM_P + C.append(v) + D.append(cdiv(Rd[k], 1 << TM_P) + (1 if S[k] - (v << TM_P) else 0)) + for k in range(N + 1, 2 * N + 1): + if S[k] or Rd[k]: + E += cdiv(abs(S[k]) + Rd[k], 1 << (TM_P + s * (k - N - 1))) + E += cdiv(self.E * o.polybound() + o.E * self.polybound(), 1 << TM_P) + E += cdiv(self.E * o.E, 1 << (TM_P + s * (N + 1))) + return TV(C, D, E, s, N) + __rmul__ = __mul__ + + def c0(self): + return Fr(self.C[0] - self.D[0], 1 << TM_P), Fr(self.C[0] + self.D[0], 1 << TM_P) + + def lin_bound(self): + """G with |f(r) - f(0)| <= G r on [0, 2^-s] (exact rational).""" + R = Fr(1, 2 ** self.s) + g = sum(Fr(abs(c) + d, 1 << TM_P) * R ** (j - 1) for j, (c, d) in enumerate(zip(self.C, self.D)) if j >= 1) + return g + Fr(self.E, 1 << TM_P) * R ** self.N + + def inv(self): + lo, hi = self.c0() + require(lo > 0 or hi < 0, 'TV inverse at a constant term containing 0') + # centered at 1/C_0 (so that centers stay the reference values), radius covering [1/hi, 1/lo] + uc = Fr(1 << TM_P, self.C[0]) + u = TV.build({0: uc}, {0: max(abs(1 / hi - uc), abs(1 / lo - uc))}, 0, self.s, self.N) + h = TV([0] + self.C[1:], [0] + self.D[1:], self.E, self.s, self.N) + g = h * u + require(g.C[0] == 0 and g.D[0] == 0, 'TV inverse: g(0) = 0') + G1 = g.lin_bound() + R = Fr(1, 2 ** self.s) + require(G1 * R < Fr(1, 2), 'TV inverse: |g| too large') + acc = TV.const(1, self.s, self.N) + p = TV.const(1, self.s, self.N) + mg = -g + for _ in range(self.N): + p = p * mg + acc = acc + p + tail = G1 ** (self.N + 1) / (1 - G1 * R) + acc = TV(acc.C, acc.D, acc.E + cdiv(tail.numerator << TM_P, tail.denominator), self.s, self.N) + return acc * u + + # ----------------------------------------------------------------------------- readers + def coeff(self, j): + return Fr(self.C[j] - self.D[j], 1 << TM_P), Fr(self.C[j] + self.D[j], 1 << TM_P) + + def high(self, R): + """H with |sum_{j >= 3} c_j r^j + rho(r)| <= H r^2 on (0, R].""" + h = sum(Fr(abs(c) + d, 1 << TM_P) * R ** (j - 2) for j, (c, d) in enumerate(zip(self.C, self.D)) if j >= 3) + return h + Fr(self.E, 1 << TM_P) * R ** (self.N - 1) + + def inc(self, R): + """(l_lo, l_hi, q_lo, q_hi): f(r) - f(0) in [l_lo r + q_lo r^2, l_hi r + q_hi r^2] for 0 < r <= R.""" + l_lo, l_hi = self.coeff(1) + q_lo, q_hi = self.coeff(2) + H = self.high(R) + if MUT == 'no-lin': + l_lo = l_hi = Fr(0) + return l_lo, l_hi, q_lo - H, q_hi + H + + def absinc(self, R): + """(a, b): |f(r) - f(0)| <= a r^2 + b r.""" + l_lo, l_hi, q_lo, q_hi = self.inc(R) + return max(abs(q_lo), abs(q_hi)), max(abs(l_lo), abs(l_hi)) + + def absval(self, R): + """(s, c): |f(r)| <= c + s r on [0, R], c = sup |c_0|.""" + lo, hi = self.c0() + s = sum(Fr(abs(c) + d, 1 << TM_P) * R ** (j - 1) for j, (c, d) in enumerate(zip(self.C, self.D)) if j >= 1) + return s + Fr(self.E, 1 << TM_P) * R ** self.N, max(abs(lo), abs(hi)) + + def enclose(self, R): + """Interval of f(r) over r in [0, R].""" + lo, hi = self.c0() + for j in range(1, self.N + 1): + a, b = self.coeff(j) + Rj = R ** j + lo += min(a, 0) * Rj + hi += max(b, 0) * Rj + e = Fr(self.E, 1 << TM_P) * R ** (self.N + 1) + return lo - e, hi + e + + def center(self, j): + return Fr(self.C[j], 1 << TM_P) + + +def cov_tv(M, F, G, key, s, N, M1): + """TV on [0, 2^-s] of the covariance of F, G under the unnormalized torus kernel: the exact reference series (centers), + the Taylor truncation tail (gx > NX, proportional to r^(NX+1-w)) and the torus part sum_p tau_p r^p with + |tau_p| <= T0 e^p (radii T0 e^p for p <= N, remainder T0 e^(N+1)/(1 - e R) r^(N+1)).""" + R = Fr(1, 2 ** s) + ser, w, absterms = M.pair_series(F, G, key) + A = max((t[1] for t in absterms), default=0) + tail = T0 = Fr(0) + for t in absterms: + acc, aa, gys = t[0], t[1], t[2:] + hprod = fprod = 1 + for g in gys: + hprod *= M.hcoef(g) + fprod *= math.factorial(g) + tail += acc * abs(hprod) + T0 += acc * fprod * Fr(max(w, 1)) ** aa + require(M.NX + 1 - w >= N + 1, 'truncation tail below the Taylor-model order') + tail_e = 2 * Fr(M.NX + 1) ** A * tail * R ** (M.NX + 1 - w - (N + 1)) + T0 = T0 * M1 + eu = Fr(1) if MUT == 'exp-radius' else E_UP + if MUT == 'torus-const-only': + radii = {0: T0} + tor_e = Fr(0) + else: + radii = {p: T0 * eu ** p for p in range(N + 1)} + tor_e = T0 * eu ** (N + 1) / (1 - eu * R) + return TV.build(ser, radii, tail_e + tor_e, s, N) + + +def solve_tv(A, B): + n = len(A) + Mx = [[A[i][j] for j in range(n)] + [B[c][i] for c in range(len(B))] for i in range(n)] + det, invs = None, [] + for col in range(n): + piv = Mx[col][col] + det = piv if det is None else det * piv + ip = piv.inv() + invs.append(ip) + for i in range(col + 1, n): + f = Mx[i][col] * ip + for j in range(col, len(Mx[i])): + Mx[i][j] = Mx[i][j] - f * Mx[col][j] + X = [] + for c in range(len(B)): + x = [None] * n + for i in reversed(range(n)): + acc = Mx[i][n + c] + for j in range(i + 1, n): + acc = acc - Mx[i][j] * x[j] + x[i] = acc * invs[i] + X.append(x) + return X, det + + +class Law: + pass + + +def tv_law(d, torus=True, s=TM_S, N=TM_N, L=10): + """The TV law over [0, 2^-s] of the targets TB.TM_NAMES[d]: as TB.tm_law, with interval-coefficient models.""" + M = ENG[d] + names = TB.TM_NAMES[d] + pins, targets = M.functionals() + P = [pins[nm] for nm in M.PIN_NAMES] + idx = [M.TARGET_NAMES.index(nm) for nm in names] + T = [targets[nm] for nm in names] + M1 = M.torus_M1(L) if torus else Fr(0) + n, nt = len(P), len(T) + Spp = [[None] * n for _ in range(n)] + for i in range(n): + for j in range(i, n): + Spp[i][j] = Spp[j][i] = cov_tv(M, P[i], P[j], ('p', i, j), s, N, M1) + Stp = [[cov_tv(M, T[a], P[j], ('tp', idx[a], j), s, N, M1) for j in range(n)] for a in range(nt)] + Stt = [[None] * nt for _ in range(nt)] + for a in range(nt): + for b in range(a, nt): + i, j = idx[a], idx[b] + if i <= j: + Stt[a][b] = Stt[b][a] = cov_tv(M, T[a], T[b], ('tt', i, j), s, N, M1) + else: + Stt[a][b] = Stt[b][a] = cov_tv(M, T[b], T[a], ('tt', j, i), s, N, M1) + zero = TV.const(0, s, N) + kvec = [TV.build({3: Fr(-1, 2)}, {}, 0, s, N), TV.build({2: Fr(-1)}, {}, 0, s, N), TV.const(12, s, N)] + [zero] * (n - 3) + e1 = [TV.const(1, s, N)] + [zero] * (n - 1) + X, det = solve_tv(Spp, Stp + [e1, kvec]) + W, xs0, xs1 = X[:nt], X[nt], X[nt + 1] + law = Law() + law.d, law.M1, law.s, law.N = d, M1, s, N + law.th1 = M.theta_minus_one(L) if torus else Fr(0) + law.alpha = {nm: W[a][0] for a, nm in enumerate(names)} + law.beta = {nm: sum((W[a][j] * kvec[j] for j in range(n)), zero) for a, nm in enumerate(names)} + law.Cu = {} + for a, na in enumerate(names): + for b, nb in enumerate(names): + law.Cu[(na, nb)] = Stt[a][b] - sum((W[a][l] * Stp[b][l] for l in range(n)), zero) + law.e_bb = xs0[0] + law.e_bk = sum((kvec[j] * xs0[j] for j in range(n)), zero) + law.e_kk = sum((kvec[j] * xs1[j] for j in range(n)), zero) + law.det = det + if d == 3: + an = ('a11', 'a22', 'a12') + Xg, _ = solve_tv([[law.Cu[(x, y)] for y in an] for x in an], [[law.Cu[(o, y)] for y in an] for o in ('o11', 'o22', 'o12')]) + law.G = {o: [-Xg[c][l] for l in range(3)] for c, o in enumerate(('o11', 'o22', 'o12'))} + return law + + +def tv_summary(law): + """Low-order centers and radii (decimal, 30 places) and remainder coefficients of the TV law, for the record.""" + def row(t): + out = {'c': [], 'rad': []} + for j in range(4): + x = t.center(j) + out['c'].append(dec_down(x, 30) if x >= 0 else dec_up(x, 30)) + out['rad'].append(dec_up(Fr(t.D[j], 1 << TM_P), 30)) + out['rem_r9'] = dec_up(Fr(t.E, 1 << TM_P), 30) + return out + out = {'det': row(law.det), 'e_bb': row(law.e_bb), 'e_bk': row(law.e_bk), 'e_kk': row(law.e_kk)} + for nm in law.alpha: + out['alpha_' + nm] = row(law.alpha[nm]) + out['beta_' + nm] = row(law.beta[nm]) + names = TB.TM_NAMES[law.d] + for i, a in enumerate(names): + for b in names[i:]: + out['C_%s_%s' % (a, b)] = row(law.Cu[(a, b)]) + return out + + +# ============================================================================= 2. (a, b) forms: a r^2 + b r +def ab_add(*xs): + return (sum(x[0] for x in xs), sum(x[1] for x in xs)) + + +def ab_mul(x, c): + return (x[0] * c, x[1] * c) + + +def ab_at(x, R): + return x[0] * R * R + x[1] * R + + +def ab_norm(xs): + """Minkowski: || (a_i r^2 + b_i r)_i ||_2 <= sqrt(sum a_i^2) r^2 + sqrt(sum b_i^2) r.""" + return (E3.sqrt_up(sum(x[0] * x[0] for x in xs)), E3.sqrt_up(sum(x[1] * x[1] for x in xs))) + + +def exp_up_ab(M, x, R): + """exp(a r^2 + b r) - 1 <= (a r^2 + b r) exp(a R^2 + b R) on (0, R].""" + f = TB.exp_minus(M, -ab_at(x, R)).hi + return (x[0] * f, x[1] * f) + + +def flat(t, ref, what): + """The reference part (centers) of t is the constant ref for every r (Lemma 1 of Math-#215).""" + require(abs(t.center(0) - ref) <= TINY and all(abs(t.center(j)) <= TINY for j in range(1, t.N + 1)), + 'the reference law of %s is not flat in r' % what) + + +def mean_inc(law, nm, b1, k1, R): + """|mu(r) - mu(0)| for mu = b alpha + k beta (b <= b1, k <= k1), in (a, b) form.""" + return ab_add(ab_mul(law.alpha[nm].absinc(R), b1), ab_mul(law.beta[nm].absinc(R), k1)) + + +def pi_ratio_v(law, Q, R): + """log(pi_r / pi_0) in [-dn, up] for the SAME kernel: pi_r ~ det(S_r/Theta)^(-1/2) exp(-Theta E_r/2), so + log(pi_r/pi_0) = -(1/2) log(det S_r/det S_0) - Theta (E_r - E_0)/2; Theta in [1, 1 + th1] multiplies increments only.""" + b0, b1, k0, k1 = Q + th1 = law.th1 + l_lo, l_hi, q_lo, q_hi = law.det.inc(R) + d0lo = law.det.c0()[0] + require(d0lo > 0, 'pin determinant at r = 0') + xm = (max(abs(q_lo), abs(q_hi)) * R * R + max(abs(l_lo), abs(l_hi)) * R) / d0lo + require(xm < Fr(1, 2), 'pin determinant increment') + up = (max(Fr(0), -q_lo) / (2 * d0lo * (1 - xm)), max(Fr(0), -l_lo) / (2 * d0lo * (1 - xm))) + dn = (max(Fr(0), q_hi) / (2 * d0lo), max(Fr(0), l_hi) / (2 * d0lo)) + parts = ((law.e_bb, (b0 * b0, b1 * b1)), (law.e_bk, (2 * b0 * k0, 2 * b1 * k1)), (law.e_kk, (k0 * k0, k1 * k1))) + EL = EH = EQ = EP = Fr(0) + for t, (wlo, whi) in parts: + a_lo, a_hi, c_lo, c_hi = t.inc(R) + EL += min(wlo * a_lo, whi * a_lo) + EH += max(wlo * a_hi, whi * a_hi) + EQ += min(wlo * c_lo, whi * c_lo) + EP += max(wlo * c_hi, whi * c_hi) + f = (1 + th1) / 2 + up = ab_add(up, (f * max(Fr(0), -EQ), f * max(Fr(0), -EL))) + dn = ab_add(dn, (f * max(Fr(0), EP), f * max(Fr(0), EH))) + return up, dn + + +def combine_v(M, p_up, p_dn, z_up, z_dn, R): + """A_r/A_0 = (pi_r/pi_0) (z_r/z_0): (1 + pu)(1 + zu) - 1 <= pu + zu + pu zu(R); 1 - (1 - pd)(1 - zd) <= pd + zd. + The lower sum is valid even when one lower estimate exceeds 1 (review C58): if pd + zd >= 1 it holds because both ratios + are positive; otherwise 0 <= 1 - pd, 1 - zd and the two lower factors may be multiplied.""" + pu = exp_up_ab(M, p_up, R) + zR = ab_at(z_up, R) + up = (pu[0] + z_up[0] + pu[0] * zR, pu[1] + z_up[1] + pu[1] * zR) + return up, ab_add(p_dn, z_dn) + + +def far_set(M, ma_T, sd_T, ma_tau, sd_tau, k0, R): + """q4 with P(G_0^c) <= q4 r^4 on (0, R]: G_0^c = {|T| > 3k/(2r)} u {|tau| > 3k/(2r^2)}, Markov at order p = MARKOV_P: + P(|X| > t) <= (||X||_p / t)^p, and r^p <= R^(p-4) r^4, r^(2p) <= R^(2p-4) r^4.""" + p = MARKOV_P + nT = M.gauss_norm(ma_T, sd_T, p) + nt = M.gauss_norm(ma_tau, sd_tau, p) + c = Fr(2) / (3 * k0) + q4 = (nT * c) ** p * R ** (p - 4) + (nt * c) ** p * R ** (2 * p - 4) + return q4 + + +# ============================================================================= 3. the ratio A_r / A_0 on a (b, k) box +def bounds_d2_v(Q, R, law, il): + """(up, dn) in (a, b) form: A_r/A_0 - 1 <= up(r), 1 - A_r/A_0 <= dn(r) on the box, 0 < r <= R (NOTE sections 3-4).""" + M = E2 + b0, b1, k0, k1 = Q + th1 = law.th1 + flat(law.alpha['w'], -1, 'alpha_w') + flat(law.beta['w'], 0, 'beta_w') + flat(law.Cu[('w', 'w')], 2, 'Var w') + # law of lambda = -w at r and at 0: mean mu = -(b alpha_w + k beta_w), variance Cu_ww / Theta + sA, cA = (law.alpha['w'] + 1).absval(R) + sB, cB = law.beta['w'].absval(R) + Dm = b1 * (cA + sA * R) + k1 * (cB + sB * R) # sup |mu - b| over [0, R] + sC, cC = (law.Cu[('w', 'w')] - 2).absval(R) + Sm = cC + sC * R + s_lo = M.isqrt_iv(M.IV((2 - Sm) / (1 + th1))).lo + s_hi = M.isqrt_iv(M.IV(2 + Sm)).hi + m_lo, m_hi = b0 - Dm, b1 + Dm + mmax = max(abs(m_lo), abs(m_hi)) + Fmin = M.elam2_pos(m_lo, s_lo).lo # <= F_r and <= F_0 + Fmax = M.elam2_pos(m_hi, s_hi).hi + F1max = M.elam_pos(m_hi, s_hi).hi + # main term: |F(mu_r, s_r) - F(mu_0, s_0)| <= 2 E[lambda_+] |dmu| + Phi(mu/s) |d(s^2)| along the segment (both <= sup) + dmu = mean_inc(law, 'w', b1, k1, R) + dS = law.Cu[('w', 'w')].absinc(R) # |d(s^2)| <= |dCu| / Theta, Theta >= 1 + Fae = ab_mul(ab_add(ab_mul(dmu, 2 * F1max), dS), 1 / Fmin) + norm = 36 * k0 * k0 * Fmin # 36 k^2 F_0 >= norm + b, k = M.IV(b0, b1), M.IV(k0, k1) + ma = {nm: M.absup(b * il.alpha[nm] + k * il.beta[nm]) for nm in M.TARGET_NAMES} + gn = lambda nm, p: M.gauss_norm(ma[nm], il.sdQ[nm].hi, p) + lam = lambda p: M.gauss_norm(mmax, s_hi, p) + T, tau, om, v, nu = (lambda p, x=x: gn(x, p) for x in ('T', 'tau', 'om', 'v', 'nu')) + kap = lambda p: 6 * k1 * tau(p) + T(2 * p) ** 2 + R * T(2 * p) * tau(2 * p) + # first order: r E[lambda_+ om] = r [mu_om F_1 - bw_om (F - m F_1)], |mu_om| <= c + s r, |bw_om| <= |Cu_om,w| / Cu_ww + sa_, ca_ = law.alpha['om'].absval(R) + sb_, cb_ = law.beta['om'].absval(R) + sc_, cc_ = law.Cu[('om', 'w')].absval(R) + cwlo = (2 - Sm) / (1 + th1) # Var w = Cu_ww / Theta >= cwlo + # the regression coefficient Cu_om,w / Cu_ww is free of Theta (it cancels exactly); dividing |Cu_om,w| by the + # normalized floor cwlo is deliberately conservative (review C58) + # relative to 36 k^2 r^2 F_0: the 36 k^2 cancels, so the normalizer is F_0 >= Fmin + T2 = (((b1 * sa_ + k1 * sb_) * F1max + sc_ / cwlo * (Fmax + mmax * F1max)) / Fmin, + ((b1 * ca_ + k1 * cb_) * F1max + cc_ / cwlo * (Fmax + mmax * F1max)) / Fmin) + if MUT == 'no-om-term': + T2 = (Fr(0), Fr(0)) + # second order (explicit r^2), as in Math-#215 + mt = M.IV(6 * k0, 6 * k1) * (b * il.alpha['tau'] + k * il.beta['tau']) * M.IV(Fmin, Fmax) + side = 6 * k1 * M.absup(il.bw['tau']) * s_hi * lam(4) ** 2 + R * T(4) * tau(4) * lam(4) ** 2 + T3_up = max(Fr(0), mt.hi + side) / norm + T3_dn = max(Fr(0), -mt.lo + side + T(4) ** 2 * lam(4) ** 2) / norm + T4 = R * kap(4) * lam(4) * om(2) + xi2 = 6 * k1 * (R * nu(4) ** 2 + 2 * nu(4) * v(4)) + T(4) * (R * R * nu(8) ** 2 + 2 * R * nu(8) * v(8) + 2 * v(8) ** 2) \ + + R * tau(4) * v(8) ** 2 + T5 = lam(2) * xi2 + T6 = v(8) ** 2 * (6 * k1 + R * T(4) + R * R * tau(4)) * om(4) + v(4) ** 2 * (R * nu(4) + v(4)) ** 2 + Yn = ('v', 'om', 'nu') + prec = 1 / cwlo + TB.wq_bound(M, il.Cg, Yn, [[M.absup(il.bw[nm])] for nm in Yn]) + pbar = Fr(2, 5) * M.sqrt_up(prec) + h = lambda p: Fr(2) / (9 * k0) * v(2 * p) ** 2 + om(p) + bad = R * pbar * h(2) * (Fr(15, 2) * k1 * h(4) + v(8) ** 2) * (9 * k1 * (h(4) + om(4)) + (R * nu(8) + v(8)) ** 2) + # G_0^c: E[W 1{G_0^c}]/r^2 <= P1n P2n P(G_0^c)^(1/2) <= P1n P2n sqrt(q4) r^2 + q4 = far_set(M, ma['T'], il.sdQ['T'].hi, ma['tau'], il.sdQ['tau'].hi, k0, R) + P1n = (6 * k1 + R * T(8)) * lam(8) + R * v(8) ** 2 + P2n = (6 * k1 + R * T(8) + R * R * tau(8)) * (lam(8) + R * om(8)) + R * (R * nu(8) + v(8)) ** 2 + g0c = P1n * P2n * M.sqrt_up(q4) + X = ab_add(T2, ((T4 + T5 + T6 + bad + g0c) / norm, Fr(0))) + p_up, p_dn = pi_ratio_v(law, Q, R) + z_up = ab_add(Fae, X, (T3_up, Fr(0))) + z_dn = ab_add(Fae, X, (T3_dn, Fr(0))) + return combine_v(M, p_up, p_dn, z_up, z_dn, R) + + +def bounds_d3_v(Q, R, law, il): + """(up, dn) in (a, b) form in d = 3 (NOTE sections 3-4).""" + M = E3 + b0, b1, k0, k1 = Q + th1 = law.th1 + names = ('a11', 'a22', 'a12') + for nm, ref in (('a11', -1), ('a22', -1), ('a12', 0)): + flat(law.alpha[nm], ref, 'alpha_' + nm) + flat(law.beta[nm], 0, 'beta_' + nm) + for (x, y), ref in ((('a11', 'a11'), 2), (('a22', 'a22'), 2), (('a12', 'a12'), 1), (('a11', 'a22'), 0), + (('a11', 'a12'), 0), (('a22', 'a12'), 0)): + flat(law.Cu[(x, y)], ref, 'Cov(%s, %s)' % (x, y)) + Fw = (Fr(1), Fr(1), M.SQRT2) + # Loewner coupling with the contact law over the whole band [0, R] (as in Math-#215): moment bounds and m_0 >= m0lo + comps = [] + for nm, ref, f in (('a11', -1, 1), ('a22', -1, 1), ('a12', 0, 2)): + sA, cA = (law.alpha[nm] - ref).absval(R) + sB, cB = law.beta[nm].absval(R) + comps.append((b1 * (cA + sA * R) + k1 * (cB + sB * R)) * f) + eps = M.sqrt_up(sum(x * x for x in comps)) + Cb = [] + for i in range(3): + row = [] + for j in range(3): + lo, hi = law.Cu[(names[i], names[j])].enclose(R) + row.append(M.IV(lo, hi) * Fw[i] * Fw[j] * M.IV(1 / (1 + th1), 1)) + Cb.append(row) + Lb = M.cholesky(Cb) + eta = M.sqrt_up(sum(M.absup(Lb[i][j] - (M.SQRT2 if i == j else 0)) ** 2 for i in range(3) for j in range(i + 1))) + Dl = M.rup_rel(eps + eta * TB.R0C) + cm = M.contact_moment + bA, bB = TB.grid_dn(b0 - Dl), TB.grid_up(b1 + Dl) + m3b0 = cm(2, 0, b0).lo + L3up = 2 * cm(1, 1, bB).hi / m3b0 + L3dn = 2 * cm(1, 1, b1).hi / cm(2, 0, bA).lo + pR0 = M.chi_tail(3, TB.R0C) + muB = M.rup_rel(b1 * M.sqrt_up(Fr(2)) + eps) + sig = M.sqrt_up(max(x.hi for x in (Cb[0][0], Cb[1][1], Cb[2][2])) + + 2 * max(M.absup(Cb[i][j]) for i in range(3) for j in range(3) if i != j)) + U = M.chi_upper_moments(3, TB.R0C, 4) + out_D2 = sum((U[i] * (M.binom(4, i) * muB ** (4 - i) * sig ** i) for i in range(5)), M.IV(0)).hi / 4 + tail_c = M.sqrt_up(cm(4, 0, b1).hi) * M.sqrt_up(pR0) + nBF16 = M.rup_rel(muB + sig * M.chi_norm(3, 16)) + out_ball = M.sqrt_up(pR0) + + def up_moment(a, c): + return M.rup_rel(cm(a, c, bB).hi + 2 ** c * M.rup_rel(nBF16 ** (2 * a + c)) * out_ball) + ED2, ED4, ED2T2, ET4, DT = up_moment(2, 0), up_moment(4, 0), up_moment(2, 2), up_moment(0, 4), up_moment(1, 1) + trCb = sum(x.hi for x in (Cb[0][0], Cb[1][1], Cb[2][2])) + BF = lambda p: M.frob_norm(muB, trCb, p) + rho_lo = TB.exp_minus(M, Dl * L3dn).lo - tail_c / m3b0 # m3_r / m3(b) over [0, R], r = 0 included + rho_hi = TB.exp_minus(M, -(Dl * L3up)).hi + out_D2 / m3b0 + require(rho_lo > 0, 'contact moment floor') + m0lo = m3b0 * rho_lo # m_0 = E_0[D^2 1{B > 0}] >= m0lo + rel = 1 / rho_lo # bounds relative to m3(b) -> relative to m_0 + # main term: gradient coupling B_r = mu_r + C_r^(1/2) Z, B_0 = mu_0 + C_0^(1/2) Z (natural coordinates), + # |g(B_r) - g(B_0)| <= max(||B_r||, ||B_0||)^3 ||B_r - B_0||, g = det(B)^2 1{B > 0}; + # ||C_r^(1/2) - C_0^(1/2)||_F <= ||C_r - C_0||_F / (2 sqrt(lmB)) (Sylvester equation in the eigenbases) + Fu = (Fr(1), Fr(1), SQRT2_UP) # rational upper bounds of the weights Fw + dmuB = ab_norm([ab_mul(mean_inc(law, nm, b1, k1, R), f) for nm, f in zip(names, Fu)]) + dC = ab_norm([ab_mul(law.Cu[(names[i], names[j])].absinc(R), Fu[i] * Fu[j]) for i in range(3) for j in range(3)]) + lmB = TB.gersh_min(Cb) + require(lmB > 0, 'Gershgorin floor of the transverse covariance') + dS = ab_mul(dC, 1 / (2 * M.sqrt_down(lmB))) + K3 = M.sqrt_up(Fr(2)) * BF(8) ** 3 / m0lo + if MUT == 'coupling-half': + K3 = K3 / 2 + main = ab_mul(ab_add(dmuB, dS), K3) + # secondary law (engine interval law over [0, R]) + b, k = M.IV(b0, b1), M.IV(k0, k1) + ma = {nm: M.absup(b * il.alpha[nm] + k * il.beta[nm]) for nm in M.TARGET_NAMES} + T = lambda p: M.gauss_norm(ma['T'], il.sdQ['T'], p) + tau = lambda p: M.gauss_norm(ma['tau'], il.sdQ['tau'], p) + mu_o = M.sqrt_up(ma['o11'] ** 2 + ma['o22'] ** 2 + 2 * ma['o12'] ** 2) + trO = sum(m * il.C[(nm, nm)].hi for nm, m in zip(M.ONAMES, (1, 1, 2))) + Om = lambda p: M.frob_norm(mu_o, trO, p) + mu_v = M.sqrt_up(ma['v1'] ** 2 + ma['v2'] ** 2) + v = lambda p: M.frob_norm(mu_v, il.C[('v1', 'v1')].hi + il.C[('v2', 'v2')].hi, p) + mu_nu = M.sqrt_up(ma['nu1'] ** 2 + ma['nu2'] ** 2) + nu = lambda p: M.frob_norm(mu_nu, il.C[('nu1', 'nu1')].hi + il.C[('nu2', 'nu2')].hi, p) + e = lambda p: R * nu(p) + v(p) + kap = lambda p: 6 * k1 * tau(p) + T(2 * p) ** 2 + R * T(2 * p) * tau(2 * p) + c1 = lambda p: 6 * k1 + R * T(p) + c2 = lambda p: 6 * k1 + R * T(p) + R * R * tau(p) + norm36 = 36 * k0 * k0 * m3b0 + # mean of Omega': ||mu_Omega'(r)||_F <= c_mu + s_mu r + s_mu2 = c_mu2 = Fr(0) + for nm, mult in zip(M.ONAMES, (1, 1, 2)): + sa_, ca_ = law.alpha[nm].absval(R) + sb_, cb_ = law.beta[nm].absval(R) + s_mu2 += mult * (b1 * sa_ + k1 * sb_) ** 2 + c_mu2 += mult * (b1 * ca_ + k1 * cb_) ** 2 + s_mu, c_mu = M.sqrt_up(s_mu2), M.sqrt_up(c_mu2) + muO = s_mu * R + c_mu + # regression of Omega' on B: E[Omega' - mu | B] = beta (B - mu_B) + DY + G = law.G + beta_t = G['o11'][0] + for (o, l) in (('o22', 1), ('o12', 2)): + flat(G[o][l] - beta_t, 0, 'regression of %s on B' % o) + for o, ls in (('o11', (1, 2)), ('o22', (0, 2)), ('o12', (0, 1))): + for l in ls: + flat(G[o][l], 0, 'off-diagonal regression of %s on B' % o) + require(abs(beta_t.center(0)) <= TINY, 'regression of Omega on B at r = 0 (reference part)') + dGs2 = dGc2 = Fr(0) + for o, mult in zip(('o11', 'o22', 'o12'), (1, 1, 2)): + for l in range(3): + t = G[o][l] - beta_t if (o, l) in (('o11', 0), ('o22', 1), ('o12', 2)) else G[o][l] + s_, c_ = t.absval(R) + dGs2 += mult * s_ ** 2 + dGc2 += mult * c_ ** 2 + dGs, dGc = M.sqrt_up(dGs2), M.sqrt_up(dGc2) + b1c = beta_t.center(1) # = 1/2 + require(b1c > 0, 'sign of the first-order regression coefficient of Omega on B') + # r beta(r) - b1c r^2 = c0 r + (c1 - b1c) r^2 + ...: |.| <= e_beta r + sb_beta r^2 + b0lo, b0hi = beta_t.c0() + e_beta = max(abs(b0lo), abs(b0hi)) + c1lo, c1hi = beta_t.coeff(1) + sb_beta = max(abs(c1lo - b1c), abs(c1hi - b1c)) + (max(abs(x) for x in beta_t.coeff(2)) + beta_t.high(R)) * R + DTlo = cm(1, 1, bA).lo - M.sqrt_up(cm(2, 2, b1).hi) * M.sqrt_up(pR0) + m3up = cm(2, 0, b1).hi + tau_lo = b0 * max(DTlo, Fr(0)) / m3up + tau_hi = b1 * DT / m3b0 + X3lo = 2 * rho_lo - tau_hi - eps * DT / m3b0 + X3hi = 2 * rho_hi - tau_lo + eps * DT / m3b0 + X3m = max(abs(X3lo), abs(X3hi)) + # r |R1|/m3(b) <= r (c_mu + s_mu r) DT/m3 + r (dGc + dGs r) sqrt(E[D^2 tr^2 1]) sqrt(tr Cb)/m3 + R1a = (s_mu * DT + dGs * M.sqrt_up(ED2T2) * M.sqrt_up(trCb)) / m3b0 + R1b = (c_mu * DT + dGc * M.sqrt_up(ED2T2) * M.sqrt_up(trCb)) / m3b0 + U3_up = (max(Fr(0), -b1c * X3lo) + sb_beta * X3m + R1a, e_beta * X3m + R1b) + U3_dn = (max(Fr(0), b1c * X3hi) + sb_beta * X3m + R1a, e_beta * X3m + R1b) + if MUT == 'no-om-term': + U3_up = U3_dn = (Fr(0), Fr(0)) + + def cov_Oz(o, z): + if z in names: + s_, c_ = law.Cu[(o, z)].absval(R) + return s_ * R + c_ + return M.absup(il.C[(o, z)]) + + def explained(zs): + # with D the lower diagonal endpoints, C_zz = D^(1/2)(I + H + E)D^(1/2): H >= 0 diagonal (surplus), E zero-diagonal + # with ||E||_F <= Ef, so C_zz >= (1 - Ef) D; the surplus H only helps (review C58) + rows = [[cov_Oz(o, z) for z in zs] for o in M.ONAMES] + D = [il.C[(z, z)].lo for z in zs] + Ef2 = Fr(0) + for i in range(len(zs)): + for j in range(len(zs)): + if i != j: + c = M.absup(il.C[(zs[i], zs[j])]) + Ef2 += c * c / (D[i] * D[j]) + Ef = M.sqrt_up(Ef2) + require(Ef < Fr(1, 2), 'diagonal scaling (explained part of Omega)') + return sum(mult * sum(x * x / Dz for x, Dz in zip(row, D)) for row, mult in zip(rows, (1, 1, 2))) / (1 - Ef) + zA = names + tuple(M.VNAMES) + ('nu1', 'nu2') + tB, tK = explained(names), explained(zA) + YB4, YK4 = M.frob_norm(0, tB, 4), M.frob_norm(0, tK, 4) + detX = M.absup(il.Cg[('o11', 'o22')] - il.Cg[('o12', 'o12')]) + E1 = up_moment(1, 0) + ED2lo = max(Fr(0), cm(2, 0, bA).lo - tail_c) + mt = M.IV(6 * k0, 6 * k1) * (b * il.alpha['tau'] + k * il.beta['tau']) * M.IV(ED2lo, ED2) + side = 6 * k1 * il.bnorm['tau'] * M.sqrt_up(trCb) * M.sqrt_up(ED4) + R * T(4) * tau(4) * M.sqrt_up(ED4) + U2_up = max(Fr(0), mt.hi + side) / norm36 + U2_dn = max(Fr(0), -mt.lo + side + T(4) ** 2 * M.sqrt_up(ED4)) / norm36 + U3r = R * kap(4) * M.sqrt_up(ED2T2) * Om(4) + U4rel = (detX * E1 + M.sqrt_up(ED2) * (muO + YB4) ** 2 / 2) / m3b0 + U4 = R * R * kap(4) * M.sqrt_up(ED2) * Om(8) ** 2 / 2 + U5 = M.sqrt_up(ED2T2) * ((2 * T(4) + R * tau(4)) * v(8) ** 2 + 2 * c1(4) * nu(8) * v(8) + R * c1(4) * nu(8) ** 2) + U67rel = (M.sqrt_up(ED2) * (muO * e(4) ** 2 + e(8) ** 2 * YK4) + M.sqrt_up(ET4) * (muO * v(4) ** 2 + v(8) ** 2 * YK4)) / (6 * k0 * m3b0) + U6 = R * T(8) * M.sqrt_up(ED2) * Om(8) * e(8) ** 2 + U7 = R * (T(8) + R * tau(8)) * M.sqrt_up(ET4) * Om(8) * v(8) ** 2 + U8 = R * c2(8) * Om(16) ** 2 / 2 * M.iroot(ET4, 4) * v(16) ** 2 + U9 = M.sqrt_up(ET4) * v(8) ** 2 * e(8) ** 2 + U10 = R * M.iroot(ET4, 4) * v(8) ** 2 * Om(4) * e(8) ** 2 + Yn = tuple(M.VNAMES) + tuple(M.ONAMES) + ('nu1', 'nu2') + rows = [] + for nm in Yn: + if nm in M.ONAMES: + cov = [] + for an, f in zip(names, (1, 1, 2)): + s_, c_ = law.Cu[(nm, an)].absval(R) + cov.append((s_ * R + c_) * f) + rows.append([M.sqrt_up(sum(x * x for x in cov)) / lmB]) + else: + rows.append([M.absup(x) for x in il.bt[nm]]) + Wt = TB.wq_bound(M, il.Cg, Yn, rows) + c_hi = sig * sig + cl = 1 / (1 / lmB + Wt) + KBp = M.rup_rel((M.PI * M.SQRT2 / (2 * M.PI * M.SQRT2PI)).hi / (cl * M.sqrt_down(cl))) + m1 = muB + c_hi * M.sqrt_up(Wt) * M.chi_norm(7, 8) + Hs = TB.half_moments(M, c_hi) + Ja = m1 ** 4 / 4 + sum(M.binom(3, i) * m1 ** (3 - i) * Hs[i] for i in range(4)) + Jb = m1 ** 3 / 3 + sum(M.binom(2, i) * m1 ** (2 - i) * Hs[i] for i in range(3)) + h = lambda p: Fr(2) / (9 * k0) * v(2 * p) ** 2 + Om(p) + nhg = h(4) * (Fr(15, 2) * k1 * h(8) + v(16) ** 2) * (9 * k1 * (h(8) + Om(8)) + e(16) ** 2) + nhgO = h(8) * (Fr(15, 2) * k1 * h(16) + v(32) ** 2) * (9 * k1 * (h(16) + Om(16)) + e(32) ** 2) * Om(8) + bad = R * KBp * (Ja * nhg + R * Jb * nhgO) + q4 = far_set(M, ma['T'], il.sdQ['T'], ma['tau'], il.sdQ['tau'], k0, R) + P1n = c1(8) * BF(16) ** 2 + R * BF(8) * v(16) ** 2 + P2n = c2(8) * (BF(16) + R * Om(16)) ** 2 + R * (BF(8) + R * Om(8)) * e(16) ** 2 + g0c = P1n * P2n * M.sqrt_up(q4) + Xa = (U3r + U4 + U5 + U6 + U7 + U8 + U9 + U10 + bad + g0c) / norm36 + U4rel + U67rel + # everything above except `main` is relative to m3(b); m3(b)/m_0 <= 1/rho_lo + z_up = ab_add(main, ab_mul(ab_add(U3_up, (Xa, Fr(0)), (U2_up, Fr(0))), rel)) + z_dn = ab_add(main, ab_mul(ab_add(U3_dn, (Xa, Fr(0)), (U2_dn, Fr(0))), rel)) + p_up, p_dn = pi_ratio_v(law, Q, R) + return combine_v(M, p_up, p_dn, z_up, z_dn, R) + + +def rate_sweep_v(d, law): + """For every R and every sub-box: (a_up, beta_up, a_dn, beta_dn), decimal strings rounded up.""" + M = ENG[d] + fn = bounds_d2_v if d == 2 else bounds_d3_v + out = {} + for R in R_STARS: + il = M.band_law(Fr(0), R) + rows = [] + for bb, kb in SUBBOXES: + up, dn = fn((bb[0], bb[1], kb[0], kb[1]), R, law, il) + rows.append([dec_up(up[0], 6), dec_up(up[1], 24), dec_up(dn[0], 6), dec_up(dn[1], 24)]) + out[str(R)] = {'boxes': rows, + 'a_up': max((r[0] for r in rows), key=Fr), 'beta_up': max((r[1] for r in rows), key=Fr), + 'a_dn': max((r[2] for r in rows), key=Fr), 'beta_dn': max((r[3] for r in rows), key=Fr)} + return out + + +# ============================================================================= 4. reference integrals and the corollary +def k_weights(d): + """int_box A_0^ref/(3k) on every sub-box (the r^1 weight), as decimal upper bounds.""" + M = ENG[d] + cells = TB.b_cells(d) + K = TB.K_const(d) + J11 = {kb: TB.k_integral(M, 1, 1, kb[0], kb[1]) for kb in SUB_K} + Ibs = {bb: TB.b_integral(M, cells, bb[0], bb[1]) for bb in set(bb for bb, _ in SUBBOXES)} + return [dec_up((K * Ibs[bb] * J11[kb]).hi, 24) for bb, kb in SUBBOXES] + + +def assemble_v(d, rate, ref, w1, eps0): + """Corollary L'1: for 0 < ell < R^3/2, + ell^(1/3) nu_cand(ell) - c_{B,K} in [-(c2_dn ell^(2/3) + c1_dn ell^(1/3)), c2_up ell^(2/3) + c1_up ell^(1/3)], + c_{B,K} = int_{B x K x S^(d-1)} A_0(b, k, u)/(3 k^(2/3)) db dk dsigma(u) of the same kernel; the weights are + int_{box x S^(d-1)} A_0/(3k^(4/3)) and int_{box x S^(d-1)} A_0/(3k), bounded by (1 + eps0) times the reference + weights (eps0 = Math-#215's |A_0/A_0^ref - 1| bound). The reference weights w_2, w_1 are full angular integrals + (theorem_b's K_const includes |S^(d-1)|); Theorem L' is uniform in u, and no isotropy is assumed.""" + c_lo = Fr(ref['c_ref'][0]) + w2 = [Fr(x) for x in ref['w_2']] + w1 = [Fr(x) for x in w1] + f = 1 + eps0 + out = {} + for R in R_STARS: + rr = rate[str(R)] + c2_up = f * sum(Fr(row[0]) * w for row, w in zip(rr['boxes'], w2)) + c2_dn = f * sum(Fr(row[2]) * w for row, w in zip(rr['boxes'], w2)) + c1_up = f * sum(Fr(row[1]) * w for row, w in zip(rr['boxes'], w1)) + c1_dn = f * sum(Fr(row[3]) * w for row, w in zip(rr['boxes'], w1)) + cl = c_lo * (1 - eps0) + out[str(R)] = {'c2_up': dec_up(c2_up, 12), 'c2_dn': dec_up(c2_dn, 12), + 'c1_up': dec_up(c1_up, 30), 'c1_dn': dec_up(c1_dn, 30), + 'rel2_up': dec_up(c2_up / cl, 6), 'rel2_dn': dec_up(c2_dn / cl, 6), + 'rel1_up': dec_up(c1_up / cl, 30), 'rel1_dn': dec_up(c1_dn / cl, 30), + 'ell_max': '%s' % (R ** 3 / 2)} + return out + + +def params(): + return {'R_STARS': [str(x) for x in R_STARS], 'TV': {'s': TM_S, 'N': TM_N, 'P': TM_P}, 'E_UP': str(E_UP), + 'MARKOV_P': MARKOV_P, 'R0_COUPLING': str(TB.R0C), 'L_min': 10, + 'SUB_B': [[str(a), str(b)] for a, b in TB.SUB_B], 'SUB_K': [[str(a), str(b)] for a, b in SUB_K], + 'band': {'b': ['0', '1'], 'k': ['1/2', '2']}} + + +def eps0_215(d): + """Math-#215 Theorem L at r -> 0: |A_0/A_0^ref - 1| <= max(eps_up, eps_dn) over R (pinned RESULTS.json of #215, + recomputed here by TB.rate_sweep for R = 1/4096 and compared).""" + tml = TB.tm_law(d) + M = ENG[d] + R = R_STARS[0] + il = M.band_law(Fr(0), R) + fn = TB.bounds_d2 if d == 2 else TB.bounds_d3 + e = Fr(0) + for bb, kb in SUBBOXES: + up, dn = fn((bb[0], bb[1], kb[0], kb[1]), R, tml, il) + e = max(e, up[1], dn[1]) + return e + + +def compute(d): + law_t = tv_law(d, torus=True) + law_r = tv_law(d, torus=False) + rate_t = rate_sweep_v(d, law_t) + rate_r = rate_sweep_v(d, law_r) + ref = TB.reference(d) + w1 = k_weights(d) + e0 = eps0_215(d) + return {'tv_law_torus': tv_summary(law_t), 'rate_torus': rate_t, 'rate_reference_kernel': rate_r, + 'reference': {'c_ref': ref['c_ref'], 'w_c': ref['w_c'], 'w_2': ref['w_2'], 'w_1': w1}, + 'eps0_215': dec_up(e0, 24), + 'corollary_torus': assemble_v(d, rate_t, ref, w1, Fr(dec_up(e0, 24))), + 'corollary_reference_kernel': assemble_v(d, rate_r, ref, w1, Fr(0))} + + +def full_run(): + res = {'schema': 1, 'object': OBJECT, 'scientific_effect': 'NONE', 'certified': True, 'mutant': MUT, + 'parameters': params(), 'dims': {}} + for d in (2, 3): + res['dims'][str(d)] = compute(d) + return res + + +def text(res): + return json.dumps(res, indent=1, sort_keys=True) + '\n' + + +def main(): + global MUT + ap = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter) + ap.add_argument('--write', action='store_true') + ap.add_argument('--check', action='store_true') + ap.add_argument('--mutant', choices=MUTANTS) + a = ap.parse_args() + MUT = a.mutant + res = full_run() + path = os.path.join(HERE, 'RESULTS.json') + if a.write: + require(MUT is None, 'no --write under a mutant') + with open(path, 'w') as fh: + fh.write(text(res)) + print('RESULTS.json written') + return + with open(path) as fh: + stored = fh.read() + if MUT is not None: + res['mutant'] = None + require(text(res) == stored, 'replay differs from RESULTS.json') + print(json.dumps({'object': OBJECT, 'check': 'passed', 'scientific_effect': 'NONE'})) + + +if __name__ == '__main__': + main()