Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

The batched band-array procedure fills the left input array of a band

Proved
Light.Batch.bandArrayBL_entry

by xuanji · Oct 7, 2026 · Mathlib 0df444a (Lean v4.33.1)

apsp-2995561apsp-exponentfine-grained-complexityword-ram

In every program PPP whose procedure number pBandArray is bandArrayBBody, under the standard limits (Std lim), the procedure meets BandArrayBLSpec lim P cBandArray: for parameters ppp of Theorem 30 (with m≤Lm\le Lm≤L), a source matrix X∈ZK0N×DX\in\mathbb Z^{K_0N\times D}X∈ZK0​N×D stored at aX, a band β<nB\beta<n_Bβ<nB​, the digit tables of the band (BandTables) and enough space, the call with the arguments of bandArray (Section 2.3.4) returns within the cost bound with constant cBandArray and writes at arr the left input array of the band β\betaβ in the batched layout, keeping the rest of the memory.

The batched layout (Batch/Tiling): the source of the left side is a K0N×DK_0N\times DK0​N×D matrix XXX (row by row), that of the right side a D×K0ND\times K_0ND×K0​N matrix YYY (stored transposed); the slot (g,h)(g,h)(g,h) of the band β\betaβ holds the row block number (βK0+g)K0+h(\beta K_0+g)K_0+h(βK0​+g)K0​+h of the source, so one run of Theorem 30's data structure computes K02K_0^2K02​ independent block products.

Meets lim P p d args μ T Q means: the call of procedure ppp of PPP at depth ddd with the arguments args on memory μ\muμ returns within TTT steps, under the limits lim, with a result rrr and memory μ′\mu'μ′ satisfying Q r μ′Q\,r\,\mu'Qrμ′.

Preamble
/-
Copyright (c) 2026 Anthropic, PBC. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
SPDX-License-Identifier: Apache-2.0
-/
-- Generated by skeleton subtraction from the ThreeSumApsp library at commit 3b45b374640a.

import Definitions.Def_APSP2995561_Defs2

set_option autoImplicit false
set_option relaxedAutoImplicit false

open ThreeSumApsp
open Light
open Light.Batch
open Light.Sec2 Light.Sec2.Band
variable {lim : Limits} {P : Program} {d : ℕ} {A : BandArgs} {μ₀ μ : ℕ → ℤ} {T : List ℤ}
Formal statement
theorem Light.Batch.bandArrayBL_entry (std : Std lim) (hP : P[pBandArray]? = some bandArrayBBody) :
    BandArrayBLSpec lim P cBandArray := by sorry
Source
Developed for the prove2.me APSP exponent campaign (https://prove2.me/campaigns/apsp-exponent) on top of the Lean formalization anthropics/formal-math, folder 3sum-apsp, commit e1a4e65 (https://github.com/anthropics/formal-math/tree/e1a4e6508154ea59f030480661590a9fe3018011/3sum-apsp; Lean v4.33.1, Mathlib v4.33.1). The statement comes from the file 3sum-apsp/ThreeSumApsp/Batch/BandArrayB.lean of the campaign's modified copy of that library, which is not published; the new definitions it uses are in the platform definition bundles APSP2995561_Defs1 and APSP2995561_Defs2 (and APSP2996001_Defs1-2, APSP299791_Defs1-5 of the earlier entries). It follows the technical note "Deterministic APSP via thin products" (revised 7 October 2026) refining J. Alman and V. Vassilevska Williams, "Truly Subquadratic 3SUM and Truly Subcubic APSP via Triangles in Sparse Lopsided Graphs", arXiv:2610.06783v1 (https://arxiv.org/abs/2610.06783v1), Proposition 2.1 (batched tensor slots).

View graph

Get started

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

About Prove2Me

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

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me