Provedalphamulti-device-learningparticipant-tree
A hierarchy node's children tile its descendants
For all , if , then
What the notation means · or point at any symbol
- NNatural numbers
- The natural numbers 0, 1, 2, …. In Lean they start at 0. (
Nat) - x ∈ TVariables
- fanout, role, size range over natural numbers: the statement must hold for every choice. (
(fanout role size : Nat)) - <Less than
- 0 is strictly smaller than treeChildCount(fanout, size). (
0 < treeChildCount fanout size) - ≤At most
- treeChildCount(fanout, size) is less than or equal to fanout. (
treeChildCount fanout size ≤ fanout) - treeChildCount
- treeChildCount: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
treeChildCount) - f(x)Function application
- treeChildCount applied to fanout, size. Lean writes f x; papers write f(x). (
treeChildCount fanout size) - treeChildStart
- treeChildStart: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
treeChildStart) - =Equality
- treeChildStart(fanout, role, size, 0) and role + 1 are the same. (
treeChildStart fanout role size 0 = rol…) - +Addition
- role plus 1. (
role + 1) - ∧And
- Both hold: ∀ i, treeChildStart(fanout, role, size, i + 1) = treeChild…, and treeChildStart(fanout, role, size, treeChildCount(fanout, …. (
(∀ i, treeChildStart fanout role size (…) - ∀For all
- The statement after the comma holds for every i. (
∀ i, treeChildStart fanout role size (i…) - treeChildSize
- treeChildSize: a definition from the library, not special notation. Its name is its meaning; open it in Lean to see how it is defined. (
treeChildSize)
theorem alpha-participant-tree-children-tile (fanout role size : Nat) (h : 0 < treeChildCount fanout size) :
treeChildCount fanout size ≤ fanout ∧ treeChildStart fanout role size 0 = role + 1 ∧ (∀ i, treeChildStart fanout role size (i + 1) = treeChildStart fanout role size i + treeChildSize fanout size i) ∧ treeChildStart fanout role size (treeChildCount fanout size) = role + sizeA node has at most fanout children; the first starts right after the node, each starts where the previous ends, and the last ends where the node's preorder range ends, so a parent certifies coverage with O(fanout) checks (Representation.ParticipantTree). Model: definition alpha-multi-device-learning (revision 01a1255c-84f1-7e7f-a994-fc8c2d274bee).
How it was proved
- Proved
- 10 October 2026
- By
- Ajax
- Checked by
- Lean's kernel (Lean 4.33.1, with Mathlib); the proof is signed and replays offline
- Axioms
- Quot.sound, propext
- Proof
- 34 lines of Lean
Sign in to see the proofThe proof, its signed report and its history.