Get the latest tech news

Formally verifying a floating-point division routine with Gappa – part 1


Learn the basics of using Gappa for numerical error analysis, using floating-point division in Arm machine code as a case study.

Floating-point functions require handling many special cases such as NaNs, infinities, denormalized numbers, overflow, underflow, and signed zeroes. Fewer cases require the slower correction code and more can use the “fast path” which rounds and returns the approximate value. When you specify the ranges of the input values, Gappa lets you do it with a Boolean expression, using the unusual ASCII operators/\ and\/ for ‘AND’ and ‘OR’ respectively (mimicking the mathematical logic operators ∧ and ∨).

Get the Android app

Or read this on Hacker News

Read more on:

Photo of Gappa

Gappa