MLabChain records machine-learning training runs as signed, replayable transactions and issues a native unit called Mera for the submissions that measurably improve a pinned scientific baseline. Deterministic work is paid. Everything else is provenance.
Bitcoin's work is a hash with leading zeros. It is deliberately empty: nobody wants the hash, so nobody produces it except to mine. That property makes it trustless and makes it burn energy on nothing at all.
MLabChain replaces the empty work with a bounded class of deterministic machine-learning training. A challenge pins the dataset, the split, the metric, and the baseline. A submission commits the model, the architecture, the training parameters, and the resulting metrics. The chain pays only when the model measurably improves the pinned baseline.
The consequence is the one that matters. Verification is re-execution. That makes MLabChain honest as a scientific ledger and unsuitable as a security mechanism. The project states both, in every document, on every page.
Scientific work and chain security are two separate mechanisms.
Bitcoin-style PoW seals blocks. ML_WORK transactions
are the scientific contribution, and they mint Mera.
The Python client trains against the challenge, writes model.pkl, model.txt, and a proof.json artifact, then builds a signed ML_WORK transaction.
The C++ core re-executes every transaction from genesis, checks signatures and nonces, compares cumulative chain work, and replaces canonical state only when a candidate chain wins.
Reward is measured against the challenge's current best quality, not the original baseline. The first submission earns the full delta. Later submissions earn only the additional gain.
A producer builds a block template, signs the proposal with Ed25519, grinds a SHA-256 nonce to the current target, and commits. Nodes accept when cumulative work beats the local tip.
A native ledger unit issued only when a submission improves a pinned challenge frontier. Transferable on the chain, capped at 100 million, and enforced in integer arithmetic by the C++ state engine.
General ML proofs. A model hash is a commitment, not a proof. Deterministic re-execution is the only sound verifier, and it only works for verifier classes the node implements.
Stochastic and GPU training. Not consensus-valid. Can be recorded as provenance, cannot be paid.
Permissionless P2P hardening. Peer discovery, anti-eclipse, connection quotas, fuzzing, formal message limits.
Trustless L1↔EVM bridge. Requires a proof or attestation protocol and audited contracts. Not in this release.
Read the blockchain primer → · Proof-of-Scientific-Work explained →
Python 3.10+, a C++17 compiler, CMake, OpenSSL, SQLite3, and Boost
headers. The core builds into a single executable called mera_core.
./build.sh # linux / macOS
./build.ps1 # windows
ctest --test-dir build
pytest
mera_core node --port 19001
mera_core node --port 19002 \
--peers 127.0.0.1:19001
mlabchain.py sync --peer 127.0.0.1:19001
MLabChain is developed and maintained by Digital Hana Arts. The project builds small, honest, research-grade tools in the intersection of machine learning, scientific reproducibility, and distributed systems.
Hana is a kitten. She is the official mascot and reminds everyone that a ledger is only as useful as the analysis it makes reproducible. She does not sign transactions. She has no opinion on PoW difficulty. She considers the 60-second target block time generous.