One sum, five engines, one answer
Five JavaScript engines disagree about the last bit of exp, log, sin and tan. We built the kernel from operations they cannot disagree about, and run all five.
Tomasz Wierzbicki6 min read
Research
Numerics, verification, regulation and security, written by the people who build and check the engines. Each essay carries the figures and the code that let you check it, and ends with what we have not checked.
Essays
Filter by topic. Each essay says who wrote it, how long it takes to read and which products it concerns.
5 essays.
Five JavaScript engines disagree about the last bit of exp, log, sin and tan. We built the kernel from operations they cannot disagree about, and run all five.
Tomasz Wierzbicki6 min read
A receipt shows that a calculation can be redone, not who did it. Why a hash and not a signature, why numbers are hashed as bits, and what a match tells you.
Dr Anneliese Okafor and Jonas Falk4 min read
A capital charge is a square root, so it does not add up by position. How the engine splits it exactly, and what the page does when it rounds the pieces.
Marcus Teller and Tomasz Wierzbicki6 min read
A counter has no entropy, yet it passes both NIST SP 800-90B health tests and earns 7.46 bits. What the tests are for, and what they cannot see.
Elif Demirci4 min read
The prescribed correlations between interest rate tenors are not a valid correlation matrix. Three entries show it by hand, and the standard says what to do.
Dr Anneliese Okafor and Marcus Teller5 min read
How an essay is checked
An essay is a claim about code and data, so it is held to them. If the code moves, the test fails and the essay is corrected.
A test recomputes every number in the text from the kernel or the data file that it came from, and compares it with what the essay says.
Where an essay shows a program, a test runs it and compares what it prints with what the essay says it prints. Each uses only the standard library, so you can run it as it stands.
Each essay ends with what we have not checked, as a list. A reader should be able to see where the evidence stops.
What it does not do. A test cannot tell whether an argument is good. It can only tell whether the numbers and the programs in it are what the text says. The argument is for you to judge.
The next step
A scoping call, a sample book and a parallel run on your data. Most teams have the first reconciled number inside two weeks, and a receipt for it on the day.