[{"data":1,"prerenderedAt":4},["ShallowReactive",2],{"MysCzFnbhl":3},"# Software Foundations in Lean\n\nThis repository contains the sources for the _Software Foundations in Lean_ textbook series.\n\n## Status and how to contribute\n\nSF-in-Lean is ready for adventurous alpha-testers!  See\n[ALPHA-TESTERS.md](ALPHA-TESTERS.md) for instructions on how to get started.\n\nThe SF-in-Lean team is also looking for contributors who have time and\ninterest to make a bigger commitment to the project.  \nIf you are interested in joining us, please email Benjamin Pierce.\n\nSF-in-Lean is _not_ ready for ordinary readers quite yet. We aim to\nhave a complete and polished draft of the opening chapters of _Logical\nFoundations_ in time for the start of Fall 2026 courses and to finish all of _Logical Foundations_, _Type Systems_, and _Hoare Logic_ by\nthe end of the semester. \n\nTranslations of further volumes of the original _Software Foundations_ from Rocq to Lean will follow in due course.\n\n## Quick start: Building and viewing the book\n\nTo build everything and preview the HTML locally:\n\n    make serve\n\nThis builds all volumes in four variants — student / solutions / terse / grading —\ninto `_out/`, then serves that directory on port 8000.\n\n    Then open `http://localhost:8000` in a web browser.\n\nTo rebuild just one volume, use its make target and then serve `_out/`:\n\n    make lf          # or: hl, ts\n    make lf-student  # or lf-solutions, lf-terse, etc.\n    python3 -m http.server 8000 -d _out/\n\nThe HTML for a given volume and variant lands in\n`_out/\u003Cvol>/\u003Cvariant>/html/`, one page per chapter.  (There is no\nper-chapter build target: a whole volume is the smallest unit.)\n\nThe first build compiles the whole Lean toolchain's dependencies and\ntakes a while; later builds are incremental.\n\n## Repository organization\n\nEach volume has its own top-level directory - `LF`, `HL`, and `TS` - each\nof which is paired with a top-level `.lean` file.\nWithin each directory there are multiple `.lean` files, one per chapter,\nwritten in [Verso](https://verso.lean-lang.org/) format.\n\nRunning `make` at the top level produces, for each volume, four\ndifferent ready-for-distribution outputs in a temporary top-level\n`_out` directory, each with both `.lean` and `.html` variants (in\n`_out/\u003Cvol>/\u003Cvariant>/lean/` and `_out/\u003Cvol>/\u003Cvariant>/html-multi/`\nrespectively).\n\n- **student**   (full prose, solutions elided)\n- **solutions** (full prose, solutions shown)\n- **terse**     (little prose, no solutions, workinclass elided;\n                 for lecturing)\n- **grading**   (solutions variant with automated grading support,\n                 for instructors)\n\nStudents are expected to work through the student `.lean` versions,\nfilling in the exercises, or to go through the HTML and switch\nto the Lean just for exercises. See [ALPHA-TESTERS.md](ALPHA-TESTERS.md)\nfor additional instructions. Instructors are expected to work through\nthe terse version in class, and use the grading version for grading\nhomework exercises done by students. We do not keep the solutions\nprivate because GenAI makes this pointless: Anyone can now generate\nsolutions to any exercise. The solutions aim to show well engineered\nproofs.\n\n## Contributing\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for much more about the\nSoftware Foundations in Lean project — philosophy, conventions,\nrepo layout, PR workflow, etc.\n\n## License\n\nThis project is licensed under the Apache License, Version 2.0. See the\n[LICENSE](LICENSE) and [NOTICE](NOTICE) files for details. \n\nAny contribution you intentionally submit for inclusion in this\nwork shall be licensed under the same terms, with no additional terms or\nconditions.\n",1788025880813]