Obsmetrologia: Formal Mathematics in Lean 4 Without Mathlib
Obsmetrologia is a Lean 4 library from Lenticule Science that formalizes a body of mathematics built from a single primitive, the mark, using only Lean's core library. It has no Mathlib dependency and no external packages, and it counts roughly 275 source files and about 4,000 theorem declarations. Its own audits police the axioms it relies on, and it keeps one acknowledged unproved statement visible in the source.
What is Obsmetrologia?
Obsmetrologia is a pure-mathematics Lean 4 package. The name joins observation and obstruction with metrology. In its own description it is a "metrology of identification": its only primitive data are marks, admitted on the two sides of an utterance, a pair (token, claim). From that start the library derives its content in order, from marks through articulation, predication, positing, and settling, and onward to logic, order, closure, sheaf cohomology, and dynamics.
The library's package description says it is "deriving mathematics from marks uttered as token and claim, under an axiom law that admits only Quot.sound." Its root file states the governing rule: past the two modules that admit the primitives (Mark and the articulating recursion), there is no free data. Every later module derives its content, and none introduces an axiom, opaque, or constant.
The library holds only pure mathematics. Applications, whether in physical science, materials, economics, fibre craft, or computing, live in separate packages that import it. Nothing in Obsmetrologia may import them.
Source access: the repository is private. This article names the library and describes it, and the source is available to authorized readers only.
What does it mean to formalize mathematics without Mathlib?
Lean 4 is a proof assistant: a program that checks that a proof is valid against a small trusted kernel. Mathlib is the large community library of formalized mathematics for Lean. Most formalization projects import it for algebra, order theory, topology and category theory.
Obsmetrologia does not. Its build uses the Lean core library, with no Lake packages as dependencies. That has three practical consequences.
- A smaller trusted base. Every definition in the tree is visible in the repository; nothing is inherited from a large external development.
- Own definitions. Lattices, nuclei, adjunctions, and sheaf conditions are defined inside the library in the form it needs them, not borrowed from Mathlib.
- A cost. There is no reuse of Mathlib's existing theorems, tactics and automation, so more has to be built, and the result is not drop-in compatible with Mathlib-based work.
"No Mathlib" does not mean "no axioms at all." Lean's logic itself rests on a few standard axioms. The library's stated law is that, beyond the whitelisted entries, declarations depend only on propext and Quot.sound, and its design note says Quot.sound is used once at the root as the biextensional collapse of the measured utterance space.
What areas does it cover?
The import spine is described as the current derivation order for the library's local corpus. Read top to bottom, each stratum is meant to be generated by the one before. The root file imports these strata:
| Stratum | Files (approx.) | What it holds |
|---|---|---|
| Primitive | 1 | Marks, the atomic primitive. |
| Articulation | 5 | The utterance and the base articulating recursion. |
| Language | 61 | Predicating, positing, settling, identification. |
| Calculus | 60 | Order, nuclei, hyperdoctrine-style quantifier adjoints, truth order. |
| Site | 9 | Sites, sections, claims, sheaf conditions, frames. |
| Closure | 39 | Closure operators, closure ordinals, regimes, monad reductions. |
| Cohomology | 19 | Gluing obstructions and graded readings. |
| Dynamics | 16 | Flows. |
| Aperiodic order | 55 | Substitution systems and tilings. |
| Settlement | 1 | The recurring site-and-settlement shape. |
File counts are from a count of the Lean files in the October 2026 source tree, grouped by directory; the top-level aggregator files make up the remainder of the 275. They describe where files live, not how much each stratum matters.
How does the logic enter?
Positing admits value: a four-element bilattice of readings, usually called FOUR, which has the classical true and false plus a "both" and a "neither" reading. Settling takes a closure operator (the composition of a possibility-like and a necessity-like operator) to its fixed point, and the root notes describe this as where order is generated: the knowledge order is proven a partial order, its join and meet are the least upper and greatest lower bounds, and a Knaster-Tarski fixed point gives the least settled state. A second, truth order is built as a bounded lattice with negation as its duality. The library also derives two systems of quantifier adjoints (one per order), and describes classical and paraconsistent equality as derived, not posited.
What are closure, cohomology, and dynamics here?
Closure studies settling iterated to its fixed point. The root notes record a closure ordinal bounded by 3, which they call the strict-finite regime. Cohomology treats settled data as sections of a sheaf and records that its first cohomology vanishes, which the notes connect to convergence in conflict-free replicated data types. A classification of readings as consistent, paraconsistent, or mixed sits beside an internal two-element gauge symmetry. Dynamics holds flows, and the aperiodic-order stratum holds tilings. These are the library's own descriptions of its contents; this article does not independently re-derive them.
How is the proof status established?
The library defines its checks in a single gate, make check, which runs four things:
lake build, the whole-library build, so every declaration is elaborated by Lean's kernel;checknames, a naming-honesty gate that rejects a declaration whose name claims an equivalence or equality shape without delivering that connective;auditfrontier, a trust gate checking that each declaration depends only onpropextandQuot.soundbeyond its documented whitelist entry;- a packaging audit and a golden-vector conformance executable.
A frontier audit separately reports remaining sorry sites (Lean's marker for an unproved statement) and hard trust surfaces such as axiom, opaque, and native_decide. It lets known sorry sites remain visible but fails on the hard trust surfaces.
Which statements are not proved?
The library says a sorry marks a frontier theorem: stated, with its proof to come, counted and never hidden. In the October 2026 source there is one open sorry in the code, the parentBarrierGap_holds statement in a module about a numerical-semigroup reduction connected to the Collatz problem. Its documentation says the gap is proved outright on slices of the problem (barriers with at most two or three odd steps) and that the general residue gap "the Python search supports" is not yet proved. This is a conditional reduction, not a proof of the Collatz conjecture, and the library does not claim one.
What do the counts mean?
The figures quoted for the library are about 275 Lean files and 3,983 theorems. They are the library's own tallies. A plain textual count of theorem declarations in the October 2026 source tree gives a figure of the same magnitude (around 4,100), and file count was confirmed at 275. The two theorem figures differ by a few percent and depend on what counts as a theorem (private, generated, and renamed declarations), so we state the number as "about 4,000" and attribute the precise figure to the library's census. Neither figure is a statement about how much mathematics is formalized, and a theorem count is not a measure of significance.
Limits and open problems
- Not all checks pass. The package's own notes record two audits as known-failing: surface consistency (documentation references that do not resolve against the compiled declaration catalog) and the local blueprint audit (inconsistencies in the claim graph, including frontier nodes marked unproved whose Lean side is already proved). The notes treat their output as a work queue. The Lean build and gate described above are a separate matter from these documentation audits.
- No continuous integration. The notes state that no CI is configured for the checkout; verification is run locally.
- The remaining `sorry`. See above; the frontier is visible and counted.
- Independent review. We know of no external replication or review of the formalization. Machine-checking establishes that a proof follows from the stated definitions; it does not establish that the definitions capture an intended meaning, or that the framing is philosophically adequate.
- Source availability. The repository is private. Readers outside the authorized group cannot currently inspect the source, so this article is a description and not an invitation to verify.
How does it connect to Lenticule Science's logic publications?
The four-element bilattice at the library's core is the object studied in the logic papers on this site. Belnap's four-valued logic and bilattices and Belnap-Dunn logic give the standard background for the readings that positing admits. Paraconsistent settling and comprehension concerns the closure-to-fixed-point step. The adjoint structure of predication on bilattice fibers corresponds to the quantifier adjoints, and Nelson identity on four-valued truth to the derived equalities. Paraconsistent transfinite linear agent integration applies the same settling ideas to agents. Whether a given publication's statement is a theorem of the Lean library should be read from that publication, not assumed.
Related
- Rendanheyi micro-enterprises as persistent programs: the organizational synthesis that builds on this language.
- The MAPE-K autonomic computing loop and dispatching concurrent AI agents at scale.
- Sibling sites: 561 Group, Engineering, Operations, Services, Market.