*A New Number Format: The Unum*

**Overview**

Fewer bits. Better answers

Why better arithmetic can save energy and power

**Building up to the unum format**

A graphical view of bit strings: Value and closure plots

Negative numbers

Fixed point format

Floating point format, almost

What about infinity and NaN? Improving on IEEE rules

**The "original sin" of computer arithmetic**

The acceptance of incorrect answers

"Almost infinite" and "beyond infinity"

No overflow, no underflow, and no rounding

Visualizing ubit-enabled numbers

**The complete unum format**

Overcoming the tyranny of fixed storage size

The IEEE Standard float formats

Unum format: Flexible range and precision

How can appending extra bits *save *storage?

Ludicrous precision? The vast range of unums

Changing environment settings within a computing task

The reference prototype

Special values in a flexible precision environment

Converting exact unums to real numbers

A complete exact unum set for a small utag

Inexact unums

A visualizer for unum strings

**Hidden scratchpads and the three layers**

The hidden scratchpad

The unum layer

The math layer

The human layer

Moving between layers

Summary of conversions between layers in the prototype

Are floats "good enough for government work"?

**Information per bit**

Information as the reciprocal of uncertainty

"Unifying" a bound to a single ULP

Unification in the prototype

Can ubounds save storage compared with traditional floats?

**Fixed-size unum storage**

The Warlpiri unums

The Warlpiri ubounds

Hardware for unums: Faster than float hardware?

**Comparison operations**

Less than, greater than

Equal, nowhere equal, and "not nowhere equal"

Intersection

**Add/subtract, and the unbiased rounding myth**

Re-learning the addition table … for all real numbers

"Creeping crud" and the myth of unbiased rounding

Automatic error control and a simple test of unum math

**Multiplication and division**

Multiplication requires examining each quadrant

Hardware for unum multiplication

Division introduces asymmetry in the arguments

**Powers**

Square

Square root

Nested square roots and "ULP straddling"

Taxing the scratchpad: Integers to integer powers

A practice calculation of *xy *at low precision

Practical considerations and the actual working routine

Exp(*x*) and "The Table-Maker’s Dilemma"

**Other important unary operations**

Scope of the prototype

Absolute value

Natural logarithm, and a mention of log base 2

Trig functions: Ending the madness by degrees

**Fused operations (single-use expressions) **

Standardizing a set of fused operations

Fused multiply-add and fused multiply-subtract

Solving the paradox of slow arithmetic for complex numbers

Unum hardware for the complete accumulator

Other fused operations

**Trial runs: Unums face challenge calculations**

Floating point II: The wrath of Kahan

Rump’s royal pain

The quadratic formula

Bailey’s numerical nightmare

Fast Fourier Transforms using unums

*A New Way to Solve: The Ubox*

The other kind of error

Sampling error

The deeply unsatisfying nature of classical error bounds

The ubox approach

Walking the line

A ubox connected-region example: Computing the unit circle area

A definition of answer quality and computing "speed"

Another Kahan booby trap: The "smooth surprise"

**Avoiding interval arithmetic pitfalls**

Useless error bounds

The wrapping problem

The dependency problem

Intelligent standard library routines

Polynomial evaluation without the dependency problem

Other fused multiple-use expressions

**What does it mean to "solve" an equation? **

Another break from traditional numerical methods

A linear equation in one unknown, solved by inversion

"Try everything!" Exhaustive search of the number line

The universal equation solver

Solvers in more than one dimension

Summary of the ubox solver approach

**Permission to guess**

Algorithms that work for floats also work for unums

A fixed-point problem

Large systems of linear equations

The last resort

**Pendulums done correctly**

The introductory physics approach

The usual numerical approach

Space stepping: A new source of massive parallelism

It’s not just for pendulums

**The two-body problem (and beyond)**

A differential equation with multiple dimensions

Ubox approach: The initial space step

The next starting point, and some state law enforcement

The general space step

The three-body problem

The *n*-body problem and the galaxy colliders

**Calculus considered evil: Discrete physics**

Continuum versus discrete physics

The discrete version of a vibrating string

The single-atom gas

Structural analysis

The end of error

Glossary

For further reading

Appendix A: Glossary of unum functions

Appendix B: Glossary of ubox functions

Appendix C: Algorithm listings for Part 1

Appendix D: Algorithm listings for Part 2

Index