PhysLean/README.md

69 lines
4.9 KiB
Markdown
Raw Normal View History

2024-04-16 16:23:49 -04:00
2024-07-02 10:42:33 -04:00
![HepLean](./docs/HepLeanLogo_white.jpeg)
2024-05-20 08:13:59 -04:00
[![](https://img.shields.io/badge/Read_The-Docs-green)](https://heplean.github.io/HepLean/)
2024-10-08 16:14:05 +00:00
[![](https://img.shields.io/badge/Get-Involved-green)](https://heplean.github.io/HepLean/#how-to-get-involved)
2024-05-20 08:13:59 -04:00
[![](https://img.shields.io/badge/Lean-Zulip-green)](https://leanprover.zulipchat.com)
2024-07-09 16:06:50 -04:00
[![](https://img.shields.io/badge/TODO-List-green)](https://heplean.github.io/HepLean/TODOList)
2024-09-30 06:49:35 +00:00
[![](https://img.shields.io/badge/Informal_dependencies-Graph-green)](https://heplean.github.io/HepLean/InformalGraph)
2024-10-03 13:50:18 +00:00
[![](https://img.shields.io/badge/Lean-v4.12.0-blue)](https://github.com/leanprover/lean4/releases/tag/v4.12.0)
2024-10-31 05:58:17 +00:00
[![Gitpod Ready-to-Code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/HEPLean/HepLean)
2024-05-02 15:25:35 -04:00
A project to digitalize high energy physics.
2024-04-21 16:58:14 -04:00
## Aims of this project
2024-04-17 06:38:25 -04:00
2024-08-20 10:12:19 -04:00
1. Digitalize results (meaning calculations, definitions, and theorems) from high energy physics
into Lean 4.
2. Develop structures to aid the creation of new results in high energy physics using Lean,
with the potential future use of AI.
3. Create good documentation so that the project can be used for pedagogical purposes.
2024-04-16 16:23:49 -04:00
## Areas of high energy physics with some coverage in HepLean
2024-06-13 11:13:32 -04:00
2024-07-26 16:32:54 -04:00
2024-07-09 11:43:59 -04:00
[![](https://img.shields.io/badge/The_CKM_Matrix-blue)](https://heplean.github.io/HepLean/docs/HepLean/FlavorPhysics/CKMMatrix/Basic.html)
[![](https://img.shields.io/badge/Higgs_Field-blue)](https://heplean.github.io/HepLean/docs/HepLean/StandardModel/HiggsBoson/Basic.html)
[![](https://img.shields.io/badge/2HDM-blue)](https://heplean.github.io/HepLean/docs/HepLean/BeyondTheStandardModel/TwoHDM/Basic.html)
[![](https://img.shields.io/badge/Lorentz_Group-blue)](https://heplean.github.io/HepLean/docs/HepLean/SpaceTime/LorentzGroup/Basic.html)
[![](https://img.shields.io/badge/Anomaly_Cancellation-blue)](https://heplean.github.io/HepLean/docs/HepLean/AnomalyCancellation/Basic.html)
[![](https://img.shields.io/badge/Feynman_diagrams-blue)](https://heplean.github.io/HepLean/docs/HepLean/FeynmanDiagrams/PhiFour/Basic.html)
2024-08-20 10:12:19 -04:00
## Associated media and publications
| | Description |
|----|------|
| [Paper](https://arxiv.org/abs/2405.08863) | HepLean: Digitalising high energy physics |
| [Code](https://live.lean-lang.org/#code=import%20Mathlib.Tactic.Polyrith%20%0A%0Atheorem%20threeFamily%20(a%20b%20c%20%3A%20)%20(h%20%3A%20a%20%2B%20b%20%2B%20c%20%3D%200)%20(h3%20%3A%20a%20%5E%203%20%2B%20b%20%5E%203%20%2B%20c%20%5E%203%20%3D%200)%20%3A%20%0A%20%20%20%20a%20%3D%200%20%20b%20%3D%200%20%20c%20%3D%200%20%20%3A%3D%20by%20%0A%20%20have%20h1%20%3A%20c%20%3D%20-%20(a%20%2B%20b)%20%3A%3D%20by%20%0A%20%20%20%20linear_combination%20h%20%0A%20%20have%20h4%20%3A%20%203%20*%20a%20*%20b%20*%20c%20%3D%200%20%3A%3D%20by%20%0A%20%20%20%20rw%20%5B←%20h3%2C%20h1%5D%0A%20%20%20%20ring%20%0A%20%20simp%20at%20h4%20%0A%20%20exact%20or_assoc.mp%20h4%0A%20%20%0A) | Example code snippet |
| [Video](https://www.youtube.com/watch?v=W2cObnopqas) | HepLean: Lean and high energy physics |
| [Video](https://www.youtube.com/watch?v=IjodVUawTjM) | Index notation in Lean 4 |
2024-04-22 09:56:51 -04:00
2024-10-08 16:14:05 +00:00
### Papers referencing HepLean
2024-10-16 11:15:23 +00:00
- Hu, Jiewen, Thomas Zhu, and Sean Welleck. "miniCTX: Neural Theorem Proving with (Long-) Contexts." arXiv preprint [arXiv:2408.03350](https://www.arxiv.org/abs/2408.03350) (2024). [Project page]( https://cmu-l3.github.io/minictx/)
2024-10-16 11:17:31 +00:00
How HepLean was used: *Theorems from the space-time files of HepLean were included in a data set used to evaluate the ability of models to prove theorems from real-world repositories, which requires working with definitions, theorems, and other context not seen in training.*
2024-10-16 11:15:23 +00:00
2024-07-26 16:32:54 -04:00
## Contributing
2024-04-16 16:23:49 -04:00
2024-07-26 16:32:54 -04:00
We follow here roughly the same contribution policies as MathLib4 (which can be found [here](https://leanprover-community.github.io/contribute/index.html)).
2024-04-22 10:32:02 -04:00
2024-05-16 10:21:49 -04:00
A guide to contributing can be found [here](https://github.com/HEPLean/HepLean/blob/master/CONTRIBUTING.md).
2024-07-26 16:32:54 -04:00
If you want permission to create a pull-request for this repository contact Joseph Tooby-Smith on the lean Zulip, or email.
2024-04-16 16:23:49 -04:00
## Installation
2024-07-26 16:32:54 -04:00
### Installing Lean 4
2024-04-16 16:23:49 -04:00
2024-07-26 16:32:54 -04:00
The installation instructions for Lean 4 are given here: https://leanprover-community.github.io/get_started.html.
2024-04-16 16:23:49 -04:00
2024-07-26 16:32:54 -04:00
### Installing HepLean
2024-04-16 16:23:49 -04:00
2024-07-26 16:32:54 -04:00
- Clone this repository (or download the repository as a Zip file)
2024-05-16 10:42:58 -04:00
- Open a terminal at the top-level in the corresponding directory.
- Run `lake exe cache get`. The command `lake` should have been installed when you installed Lean.
- Run `lake build`.
- Open the directory (not a single file) in Visual Studio Code (or another Lean compatible code editor).
2024-05-21 08:18:09 -04:00
2024-06-13 08:19:50 -04:00
### Optional extras
2024-05-21 08:18:09 -04:00
2024-10-16 11:15:23 +00:00
- [Lean Copilot](https://github.com/lean-dojo/LeanCopilot) and [LLMLean](https://github.com/cmu-l3/llmlean) allow for the use of large language models in Lean
2024-07-26 16:32:54 -04:00
- [tryAtEachStep](https://github.com/dwrensha/tryAtEachStep) allows one to apply a tactic, e.g. `exact?` at each step of a lemma in a file to see if it completes the goal. This is useful for golfing proofs.