[{"data":1,"prerenderedAt":4},["ShallowReactive",2],{"0KC8UD1GwK":3},"# LeanFrontier\n\nLeanFrontier is an open [Lean 4](https://leanprover.github.io/) library of\nmachine-generated, kernel-verified mathematics, built on\n[Mathlib](https://github.com/leanprover-community/mathlib4). It is a normal\nLean library: consumers may import `LeanFrontier` or a specific subject module.\n\n```lean\nimport LeanFrontier\nimport LeanFrontier.Algebra.Binomial\n```\n\nThe project accepts mathematical work by its mechanically checked properties,\nnot by a human explanation of its proof. Every ordinary contribution must obey\nthe versioned [submission contract](CONTRACT.md): it may contain no `sorry`, no\ncustom axioms, and no dependency on axioms outside the explicit allowlist.\nMachine-generated noise, duplicates, and bounded-resource abuse are rejected\nmechanically before a submission reaches the shared corpus.\n\nThe active Lean/Mathlib release pair and its exact duplicate index are recorded\nin [`policy/mathlib-release.json`](policy/mathlib-release.json). LeanFrontier\nchecks weekly for a newer official tagged Mathlib release, rebuilds that index\nin a trusted maintenance PR, and upgrades only when the full existing corpus\nstill builds, still passes the kernel, and has no new exact Mathlib duplicate. It does not monitor\nMathlib `main` or open Mathlib pull requests.\n\nThe project's motivation and broader research context are in the unchanged\n[manifesto](MANIFEST.md).\n\n## Give an agent a submission task\n\nHand an agent this single URL; it points it to the canonical contract, submitter\nguide, catalogue, and local validation command:\n\n```text\nhttps://raw.githubusercontent.com/carlok/LeanFrontier/main/prompts/TRY-LEANFRONTIER.md\n```\n\nThe agent launcher does not weaken the protocol: ordinary submissions still\nneed one accepted local receiver report before their pull request is opened.\n\n## License\n\nLeanFrontier is released under the [Apache-2.0 license](LICENSE).\n\nThe generated [theorem catalogue](docs/catalogue/index.html) is a convenient\nmap of merged public declarations; Lean source and receiver reports remain the\ncanonical evidence.\n\n## Use in another Lean project\n\nLeanFrontier is an ordinary Lake dependency. Add it to your project's\n`lakefile.toml`, replacing the URL and revision with the repository you use and\nan immutable release tag or commit:\n\n```toml\n[[require]]\nname = \"LeanFrontier\"\ngit = \"git@github.com:carlok/LeanFrontier.git\"\nrev = \"\u003Crelease-tag-or-full-commit>\"\n```\n\nFor a private repository, use an SSH key (or another Git credential mechanism)\nthat has read access. Then fetch dependencies and import either the umbrella\nlibrary or a focused subject module:\n\n```bash\nlake update\nlake build\n```\n\n```lean\nimport LeanFrontier\n-- or:\nimport LeanFrontier.Algebra.Binomial\n```\n\nPinning an immutable revision keeps builds reproducible. LeanFrontier aims to\noffer the same ordinary Lake dependency experience as Mathlib; unlike Mathlib,\nit does not yet provide Mathlib's release or cache distribution infrastructure.\n\n## Contributing\n\nAn ordinary theorem submission is one pull request with Lean sources under\n`LeanFrontier/` and exactly one provenance claim in\n`Submissions/\u003Csubmission-id>.json`. Read [CONTRACT.md](CONTRACT.md) and use the\nstandalone [submitter prompt](prompts/SUBMITTER.md) before opening a PR.\nLeanFrontier accepts compliant contributions from people, AI systems, and\nhuman–AI collaborations; the receiver evaluates the submitted artifact and\nclaim, not the producer's identity. See [CONTRIBUTING.md](CONTRIBUTING.md) for\nproject-maintenance and contact guidance.\n\nValidate a branch against its target branch locally:\n\n```bash\n./tools/validate-submission --base-ref origin/main --json-out .frontier/report.json\n```\n\nThe command performs cheap path, schema, content, size, duplicate, and\ntriviality checks before building Lean, replaying the submitted modules through\nthe kernel with `leanchecker`, and auditing declared entrypoints. The\naudit imports the whole accepted corpus, so it also rejects a submission that\nwould remove a result an earlier one declared. It\nprints a human report, writes JSON when requested, and exits nonzero on a\nrejection. Files this repository ignores are not examined, so running it in a\nworking tree gives the same answer as the clean checkout CI validates. GitHub\nActions runs the same validator with trusted receiver code.\nThe separate, not-yet-open award mechanism is documented in\n[award scoring v0.1](docs/award-scoring.md); it consumes only accepted receiver\nobservations and never affects admission.\n\n## Development\n\nInstall the pinned Lean toolchain, fetch Lake dependencies, then build:\n\n```bash\nlake update\nlake build\npython3 -m unittest discover -s tests -v\n```\n\nThe fast Python suite enforces a 50% branch-aware coverage floor. Generate its\nlocal report with:\n\n```bash\nuv run --with 'coverage>=7.10,\u003C8' coverage run -m unittest discover -s tests -v\nuv run --with 'coverage>=7.10,\u003C8' coverage report\n```\n\nThe receiver's full temporary-repository tests compile Lean and scan Mathlib;\nthey are opt-in:\n\n```bash\nLEANFRONTIER_INTEGRATION=1 python3 -m unittest discover -s tests -p 'test_receiver_integration.py' -v\n```\n\nThe trusted release-upgrade check additionally rebuilds the active index,\nbuilds the corpus, and imports every accepted entrypoint from a fresh consumer\nmodule. Its compact reproducibility record is retained under\n`policy/mathlib-upgrades/` after a successful upgrade.\n",1787169605427]