Rebuilt, traced, and agreeing with everything the document states about itself.
Language models cannot do arithmetic.
So we never let them.
The copilot reads your system, searches design space and proposes changes — the work it is genuinely good at. It is never the source of a number. Focal length, F-number, RMS wavefront, distortion, yield: each one comes from a trace you can open, rerun and export. If the engine did not compute it, the copilot does not say it.
That boundary is not a promise in a prompt. It is where the code is cut.
-
S1 describe
Say it, or hand it a patent.
Ask in the language you would use with a colleague. Or drop in a patent PDF and let the extractor read the prescription tables — scans included.
a fast triplet for the visible, distortion under one percentpropose_merit_function -
S2 trace
The engine builds it and traces it.
Real catalog glass with the right dispersion fit, real apertures, real conjugates. Nothing is approximated to make a picture come out.
F2 · resolved to schott, not cdgmnd 1.62004 · Vd 36.37 · in band -
S3 verify
Nothing reaches you unchecked.
A deterministic verifier rebuilds what was extracted and compares it against what the document claims about itself. What survives is citable. What does not is refused, out loud.
stated focal length · rebuilt and comparedstated f-number · rebuilt and compareddisposition ACCEPT · nothing left unchecked
Verified import
We tell you when we cannot reproduce a lens.
Hand Vergence a patent and it reads the prescription, rebuilds the system and checks it against what the document claims about itself. Across 82 embodiments, this is the honest result — and the number that matters most is the last one.
Built, but something disagrees or nothing was left to check it against. A person decides, with the reason on screen.
The claim could not be reproduced. You are told, and nothing is handed to you as a design.
Why the refusals were refused
- the rebuilt lens disagreed with a quantity the document states 26
- the prescription as printed would not trace 17
- no embodiment could be read from the document at all 6
Bad lenses accepted: zero. Every disposition above is
machine-readable and carries its own reason, produced by
tools/verify_run.py.
Evidence
The measured column.
Every figure here exists in the repository and was produced by a command that can be run again. Nothing on this page is an estimate, and nothing here is a number we would not show you the source of.
| What was measured, and what produced it | Result |
|---|---|
| First-order agreement with OpticStudio, 33 clean refractive designs tools/opticstudio_check.py | 0.0074 % |
| Tolerance sensitivity against the closed form df/dR₁ app/tolerancing/sensitivity.py | 0.0351 % |
| Monte Carlo σ against the closed form app/tolerancing/montecarlo.py | 0.3584 % |
| Every analysis over every corpus design, 105 of them tools/parity_sweep.py | 1785 runs · 0 fail · 0 crash |
| Zemax .zmx files imported, none failing tools/import_sweep.py | 100 / 100 · 60 clean · 40 reported |
| Export round trip across the corpus tools/roundtrip_sweep.py | 95 exact · 10 reported · 0 silent drift |
Not yet proven: an independent Zemax column measured by a third party, design by design. It is in progress and we will publish it whole — including the rows where we lose.
Platform
The whole design loop, in a browser tab.
No licence server, no dongle, no workstation. The same rigour, on the machine you already have.
Who it is for
Built for people who will check.
Thermal and IR
Germanium, silicon, zinc selenide and the chalcogenides resolved to the fit their vendor published — and refused, by name, outside the band that fit covers.
Machine vision
Compact imaging lenses from a spec to a toleranced prescription, with a yield number you can hand to a supplier.
Students
The workflow professionals use, at a price a lab course can carry, with a copilot that shows its working.
Research labs
Fast iteration on one-off instruments, and reports whose numbers you can put in a paper and defend.
The image plane
Trace something true.
The alpha is small and invite-only while we widen it carefully. Leave an address and we will tell you when there is room.
no newsletter, no sharing — one message when a seat opens