Conjectures.io

Optimisation · Float kernels

Faster float kernels, proved exact.

Miners submit one Lean file with four binary32 kernels: FloatLib's add and mul, and TorchLean's sum and batched matrix multiply built from them. Each one is proved equal to its specification, bit for bit. An entry 3% faster than the champion becomes the new champion, and the last three champions share the payout 60/30/10.

Paid championsThe last three champions share the payout. A new champion takes 1st and moves the others down.
  1. 5Gq3gF…Q35pqu#14

    1st60%
  2. 5CQLTf…KYXEXx#12

    2nd30%
  3. 5FPSjK…eBwRsS#9

    3rd10%
Of validator weight
20%
To take over
0.970×
Challengers
0
In the queue
1
Challengers, timed against #8
#EntryTime
  1. 25FPSjK…eBwRsS#90.838×Paid 3rdTakes over14 Oct 2026, 15:50 UTC
  • Faster
  • Within noise
  • Slower
  • Takes over
  • Champion, 1.000×

Former champion

5CyWuL…bLSbp9#8

Time against the champion before it

0.926×

7% faster than the one beforeFrom 14 Oct 2026, 15:52 UTC to 14 Oct 2026, 15:57 UTC

Nanoseconds per step

  • add66.7
  • mul49.4
  • sum27.0
  • bmm79.8

Click a challenger to see where its time goes.

Where the time goes

Nanoseconds per step, each kernel summed over its three input types. Click an entry to compare it.

Champion before it240.7

addmulsumbmm

#8 5CyWuL…bLSbp9222.9 · 0.926×

addmulsumbmm

By input type

add28% of the time1.007×

  • Cancellation1.208×
  • Near one0.825×
  • Wide gap1.083×

mul27% of the time0.766×

  • Tiny0.785×
  • Spread0.752×
  • Near one0.763×

sum14% of the time0.791×

  • ReLU-like0.743×
  • Wide range0.854×
  • Dense0.756×

bmm32% of the time1.052×

  • ReLU-like1.099×
  • Wide range1.101×
  • Dense0.983×

How to enter

One file, one hotkey, one try per registration

An entry is a single Kernel.lean sent from the miner client in the competition repository. Run the same gate on your machine first, against the shipped reference, before you spend a registration.

  1. 1Register a hotkey

    Register on Subnet 66. Each registration allows one submission, and every stored entry spends it, whatever the outcome.

  2. 2Set up the kit

    On Linux x86_64, clone the competition repository and run ./setup.sh. It installs Lean, FloatLib, Mathlib, the sandbox and the miner client, and can be rerun after an interruption.

  3. 3Measure, then prove

    Start from the shipped reference. gate.py --bench times an entry before its proofs are done; the full gate checks policy, proofs and axioms, then times it.

  4. 4Submit

    Send Kernel.lean, at most 256,000 bytes, signed with your hotkey. The same file twice from one hotkey is refused.

Miner client

./setup.sh
source .venv/bin/activate
cp -r kernels/full/incumbent my-entry
python gate.py --slot full --bench my-entry
python gate.py --slot full my-entry
python miner/submit.py submit my-entry --hotkey <file>
python miner/submit.py status <id>

Competition repositoryMiner manual

How it is scored

The rules

  1. 01The competition sets 20% of the validator's weights. The rest goes to the treasury.
  2. 02The last three champions share it: 60% to the current one, 30% and 10% to the two before it. A place nobody holds yet goes to the treasury, and so does everything while the shipped champion holds.
  3. 03Every entry is timed against the current champion: its total time over the champion's across twelve input types, three per kernel. Lower is faster, and a faster add or mul counts again inside sum and bmm.
  4. 04An entry takes over at 0.970× or lower, at least 3% faster, and only if its gain holds at the 5th percentile of a bootstrap over its 25 paired rounds (2000 draws). A copy of the champion never takes over.
  5. 05After a takeover the board starts again: every later entry is timed against the new champion.
  6. 06Every output must match the champion's bit for bit, including NaN, infinities and subnormals. One mismatch rejects the entry.
  7. 07Every stored entry spends its registration, whatever the verdict, including a validator error. Only a refusal before the entry is stored is free.
  8. 08If the champion cannot build or finish its own bench, its board pauses. Waiting entries keep their place, cost nothing and are retried. Only an operator can demote a champion.