https://github.com/Crispher/MathlibExplorer
Visualizing the network of math theories.
https://github.com/Crispher/MathlibExplorer
lean math mathlib visualization
Last synced: 11 months ago
JSON representation
Visualizing the network of math theories.
- Host: GitHub
- URL: https://github.com/Crispher/MathlibExplorer
- Owner: Crispher
- Created: 2024-05-29T09:22:10.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-09T09:00:10.000Z (over 1 year ago)
- Last Synced: 2024-06-09T10:22:14.270Z (over 1 year ago)
- Topics: lean, math, mathlib, visualization
- Language: Python
- Homepage:
- Size: 7.11 MB
- Stars: 183
- Watchers: 2
- Forks: 15
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MathlibExplorer
Mathlib explorer is an interactive visualization tool designed for [Lean's mathlib library](https://github.com/leanprover-community/mathlib4). It visualizes the import relations within mathlib, with carefully thought-out layout and interactions. It is a great visual representation of how math concepts are connected to each other, which can be informative even if you cannot read Lean code.
Related video series (in Chinese):
欢迎关注相关视频系列:《重构数学》on [bilibili](https://space.bilibili.com/613069855) and [YouTube](https://www.youtube.com/@yugu233/videos).
Screenshots:

Zoom in view:

## Features
The import graph is mapped onto the plane, s.t. if B imports A, B will always be on the right of A. This makes it easy to see how modern math theories are constructed from axioms and definitions.
Supported interactions:
- Scroll to zoom in/out
- Drag to move
- Click on a node to highlight
- its direct neighbors
- its transitive dependents
- its transitive dependencies
- Click on a topic label to highlight
- all nodes in the same topic
- references to the topic
- direct dependencies of the topic
## Usage
Clone this repo:
```
git clone https://github.com/Crispher/MathlibExplorer
```
Go to the binary folder of your platform:
```
cd MathlibExplorer/release/bin_{YOUR_PLATFORM}
```
Run the executable:
```
./MathlibExplorer
```
## Other Notes
Limited testing has been done so far, which is mainly on MacOS (M1).
The underlying mathlib data is a bit outdated. I might update it or publish the scripts to generate the data in the future.
Cross-platform graphics is powered by [bgfx](https://github.com/bkaradzic/bgfx).