Theorem 1.1 in the -framework — : multiplication in time
OpenIntMul.HvdH.theorem_1_1_kappa_zeroTheorem 1.1 of Harvey–van der Hoeven, in the -framework. holds: there is one deterministic multitape Turing machine that, for every and all , halts on input with output , and whose worst-case running time satisfies
This is the paper's main theorem, written in the same form as the claimed improvements with . It is the baseline of that family of bounds.
Formalization Note is defined in IntMul_MultitapeModel, which uses the -tape Turing machine conventions of Montanaro's lecture notes (start symbol, state, read-only input tape, separate output tape). It asserts a single machine that, for every and all , halts on input with output , and whose worst-case running time is at most for all , for some and . Here .
import Mathlib import Definitions.Def_IntMul_MultitapeModel
namespace IntMul.HvdH theorem theorem_1_1_kappa_zero : KappaBound 0 := by sorry end IntMul.HvdH
Read-back
What the Lean code literally says, in plain math · claude-opus-5-5
Read-back of IntMul.HvdH.theorem_1_1_kappa_zero. The theorem has no hypotheses and no free variables; it asserts the proposition . Unfolding, is "multiplication is possible in time " for the bound function
where the power is the real power with real exponent. With the exponent is , and for every real , so the bound function is exactly
where is the natural-number ceiling logarithm (the least with ; it equals for ). Thus , , , , and so on; in particular always, and , , , .
The statement. There exists a deterministic multitape Turing machine (model described below) such that both of the following hold:
- Correctness / totality on every length : for every natural number there is some real number such that multiplies -bit integers within steps (definition below). Since is arbitrary, this just says: for every and every pair of -bit strings, halts after finitely many steps with the correct output.
- Time bound: there exist a real constant and a natural number such that for every natural number with and , multiplies -bit integers within steps.
Nothing is required for input length (both clauses exclude it), and nothing is required of on inputs whose two halves have different lengths, or on any input not of the form described below. The constant may be ; the clause is imposed separately. No explicit value of or is asserted.
" multiplies -bit integers within steps" (for ) means: for all bit strings with and , there is a natural number with (compared as reals) such that after exactly steps from the initial configuration on input :
- the state of is , and
- the output tape (tape ) holds exactly , i.e. in cell , the bit-symbols of in cells , and the blank in every cell after , where
Here reads as a binary numeral with the leftmost bit most significant ( of the empty string is ), and is the list of bits whose -th entry () is bit number of , i.e. the binary representation of most significant bit first, left-padded with zeros to length exactly (higher bits of , if any, are dropped). Since , the product is , so is exactly the product written in bits with leading zeros. Inputs may have leading zeros (any -bit strings, including all-zero ones). Bits are written as the symbols , . Because the halting state freezes the configuration, "halted with the right output at some " is the same as "halts within at most steps, with that output". The contents of the input tape and work tapes at halting are unconstrained.
The machine model. A machine consists of:
- a finite alphabet containing five pairwise distinct designated symbols: blank , start symbol , bit symbols , and separator (it may contain arbitrarily many further symbols);
- a finite set of states with designated states ;
- a number of tapes (any fixed , chosen with the machine): tape is the input tape, tape the output tape, tapes work tapes; each tape has cells indexed by ;
- a transition function satisfying: (i) whenever the scanned symbol on tape is , it is rewritten as and the head on tape does not move left; (ii) whenever the scanned symbol on tape is not , the symbol written there is not ; (iii) for every scanned tuple , so a halted configuration never changes; (iv) the symbol written on tape always equals the symbol scanned there (the input tape is read-only).
A configuration is a state, the contents of every cell of every tape, and a head position on each tape. One step reads the scanned symbols , computes , overwrites each scanned cell with , moves each head left/stays/right according to (moving left from position gives with truncated natural-number subtraction, though by (i) and the fact that sits only in cell a head never actually moves left from cell ), and sets the state to . The initial configuration on input has state , every head on cell , the input tape holding (bit symbols for the bits), and every other tape holding . Each step counts as one unit of time; there is no bound on the number of tapes, states, alphabet size, or space used, beyond their being fixed and finite for the single machine , which must work uniformly for all .
In summary, the theorem asserts: there is a single deterministic multitape Turing machine (in the above model) that, for every and all , halts on input with output tape exactly , and there are and such that for all it does so within at most steps on every such input — i.e. integer multiplication in time on this model.
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.