# An Infinitely Large Napkin: Higher Mathematics in TeX

> An Infinitely Large Napkin is a TeX-based introduction to undergraduate and first-year graduate mathematics for readers who already have proof experience. It offers broad mathematical coverage, concise explanations, and a documented latexmk or nix build path.

**vEnhance/napkin** — An Infinitely Large Napkin

- Repository: https://github.com/vEnhance/napkin
- Website: https://web.evanchen.cc/napkin.html
- Stars: 1,993 · Forks: 187
- Language: TeX
- License: NOASSERTION
- Published: 2026-10-16 · Updated: 2026-10-16 · Language: en
- Canonical page: https://hysenlabs.com/projects/venhance-napkin

## Why An Infinitely Large Napkin targets experienced readers

An Infinitely Large Napkin addresses readers who need orientation across higher mathematics rather than exhaustive treatment of one field. The README describes its range as roughly the undergraduate syllabus through first-year graduate topics. Its defining editorial choice is precision at the level of definitions and theorem statements, combined with abbreviated explanations of why a result should be true.

That makes the project different from a conventional textbook. A reader who lacks proof experience may find precise theorem statements without a complete proof path between assumptions and conclusions. The README explicitly compares the work with real textbooks and popular mathematics writing: it is less detailed than a real textbook, but more precise than pop-math books. It presents broad views of the main ideas in different areas, including what the author considers interesting about them.

The project is therefore best understood as a mathematical map with selected explanations, not a replacement for a field-specific course or monograph. Its intended reader is someone who can already recognize formal proof structure and use the text to identify connections and concepts across several areas. The custom licence is also part of the adoption decision. GitHub classifies it as Other, and the project directs readers to LICENSE.md rather than identifying a standard software licence in the README. Any redistribution or derivative use should begin with reading that file directly.

## The TeX source structure and document build path

The repository is a TeX document project rather than an interactive application or library. Based on the repository layout, Napkin.tex is the principal visible entry file, while the tex directory contains supporting source material. The project also includes asy for Asymptote material, references.bib for bibliography data, TikZ-related package files, and assets under directories such as 3dfigures and media.

The presence of .latexmkrc indicates that compilation is driven by latexmk configuration. The README states that a build needs a system supporting latexmk and asymptote, together with a sufficiently recent version of TeX Live. This matters because installing a TeX distribution alone does not necessarily guarantee that every external tool expected by the source is available. The build path is specifically tied to the TeX and diagram toolchain described by the project.

The repository also contains alternative or supporting entry points, including flowchart-only.tex and export-flowchart.sh. Their names indicate that the project can build a flowchart-specific output and has a dedicated export script, although the README does not describe their usage or resulting formats. Likewise, print-toc.py appears to be project tooling, but no documented invocation is provided in the README.

The most defensible local build route is the documented one: invoke latexmk from the repository or use the Nix build path on a system with Nix. The README does not provide a deeper architecture diagram or a list of all TeX dependencies, so those details should be treated as build inspection work rather than inferred from the source filenames.

## Installing latexmk, Asymptote, and Nix for a local build

The project does not provide an application installer. It provides source files and says that compilation is possible on a system supporting latexmk and asymptote, with a sufficiently recent TeX Live. On a system with Nix, the README offers a shorter build route through the repository's flake configuration.

From a prepared shell, use the documented command directly:

```bash
latexmk
```

This invokes the build tool expected by the project. The README does not identify a target file, output directory, engine flag, or custom command-line option, so none is added here. A reader following that instruction should expect latexmk to use the repository's configured TeX build path.

If the system has Nix, use the alternative documented by the README:

```bash
nix build
```

The repository includes flake.nix and flake.lock, which are the visible files associated with this route. The README does not state where the resulting Nix output appears, so the correct local result and invocation details should be checked in the terminal rather than assumed.

For readers who prefer the published artifact rather than a local build, the README links the most recent PDF at https://venhance.github.io/napkin/Napkin.pdf. Generated log files are also linked from the project website and its deployment location. These links are the documented alternatives for reading the current document without reproducing the local toolchain.

## Community proofs and solutions beyond the PDF

The project has a separate community proof ecosystem. The README points to napkin-community/proofs for Napkin problems and examples formalized in Lean4. It also points to napkin-community/solutions for human-readable solutions written in Typst, with a rendered version available online.

These are separate repositories, not features that the main README claims are bundled into the TeX build. The distinction matters when evaluating the project. A reader seeking the typeset Napkin can use the PDF or compile Napkin.tex. A reader looking for machine-checkable proofs has a separate Lean4 repository to inspect, while a reader wanting worked community solutions can consult the Typst repository.

The main repository also invites corrections through pull requests and direct email. The README says “Pull requests are welcome,” which indicates a public correction path, but it does not describe contribution formatting, review policy, merge criteria, or release automation. There are also no GitHub releases listed, so a tagged version cannot be used as a documented upgrade milestone here.

The repository's correction surface is relatively direct for source changes and community discussion, but the project does not promise that community solutions will be synchronized automatically with the main PDF. Users who require a specific theorem state or proof version should compare the main document, generated artifacts, and external community repositories rather than assuming that they share one release cadence.

## Where the broad survey format falls short

The central limitation is stated by the README itself: the Napkin is less detailed than a real textbook, and formal proofs are often replaced by explanations of why a result should be true. That is useful for breadth, but it creates a real failure mode for readers who need a complete derivation, a carefully justified technical step, or a full exercise solution.

The wide scope also means that the text cannot provide the depth of a dedicated text in every included field. The README promises general bird's-eye views rather than comprehensive field-specific coverage. It assumes proof experience. A reader approaching a theorem for the first time may understand what it says without having enough explanation to prove it independently.

The project's diagram and typography dependencies add another operational constraint. The README requires latexmk, asymptote, and a sufficiently recent TeX Live, while the source tree includes custom and supporting TeX resources. A build failure caused by missing or incompatible tooling is plausible from the documented requirements, although the README does not enumerate every package or provide a troubleshooting matrix.

It is also the wrong format for automation. The documented outputs are a PDF and generated log files, not a programmatic mathematics API. The separate Lean4 proof repository may serve formalization needs, but the README does not establish that every statement or example in the Napkin has a corresponding Lean proof. Formal verification coverage should be checked in that repository directly.

## Maintenance, upgrades, and the custom licence

The repository is not archived, and the last push was on 2026-10-09. That is the maintenance fact stated by the repository metadata. There are no GitHub releases, so users cannot rely on release tags documented by this repository as a stable upgrade path.

For upgrades, the visible source and Git history are more relevant than a published release sequence. Changes may affect TeX packages, Asymptote sources, bibliography data, build configuration, or deployment output. The README provides the live PDF and generated log links, but it does not describe a release schedule, compatibility matrix, or rollback procedure. It also does not document how to identify the exact commit corresponding to a particular PDF.

Licence handling is unusually important here. GitHub reports the licence as Other, and the repository includes LICENSE.md. The README does not summarize permissions, restrictions, attribution requirements, or redistribution conditions. This review cannot state those terms without reading the file, and it does not offer legal advice. An organisation that embeds the PDF, modifies the TeX, distributes compiled outputs, or incorporates source into another publication needs to inspect LICENSE.md before doing so.

The upgrade cost therefore includes toolchain compatibility, verification of generated output, and licence review. The project is not packaged as an application with an automated migration path. For serious academic or production use, preserve the repository commit and inspect the build logs whenever the source changes.

## Conclusion

Adopt An Infinitely Large Napkin if you already know how to write proofs and want a broad mathematical map rather than a conventional, fully worked textbook. Do not choose it as a sole source for beginners or for derivations that require complete proofs. Before building locally, verify that your TeX Live installation, latexmk, and Asymptote satisfy the documented requirements, then read LICENSE.md before distributing or modifying the work.

## FAQ

### What is An Infinitely Large Napkin used for?

It is a mostly self-contained introduction to higher mathematics, ranging roughly from undergraduate topics to first-year graduate material. The README says it emphasizes general views of major ideas and assumes proof experience.

### How do I build An Infinitely Large Napkin locally?

The README says to run `latexmk` on a system with `latexmk`, `asymptote`, and a sufficiently recent TeX Live. On a system with Nix, it also documents `nix build`.

### Does An Infinitely Large Napkin include formal proofs or community solutions?

The main project is a TeX source repository, while separate community repositories provide Lean4 proofs and human-readable Typst solutions. The README does not state that those repositories cover every statement or example in the Napkin.

### What licence applies to An Infinitely Large Napkin?

GitHub classifies the repository as having an Other licence. The README does not summarize the terms and points to `LICENSE.md`, which should be checked before redistribution or derivative use.

## Sources

- [Issues](https://github.com/vEnhance/napkin/issues)
- [Project website](https://web.evanchen.cc/napkin.html)
- [README](https://github.com/vEnhance/napkin/blob/main/README.md)
- [vEnhance/napkin on GitHub](https://github.com/vEnhance/napkin)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/venhance-napkin
