Safety in Numbers
Cancellation-Rounding-01.png

Copy of New Solution

Problem & Solution

The Problem

Cancellation-Rounding-01.png

Standard floating point

Representation of real numbers in a fixed space leads to two types of hidden errors.

  • Rounding error (linear)

  • Cancellation error (exponential)

Current standards for floating point have no means of measuring and/or recording floating point rounding and cancellation error.

Since the invention of computers, real number calculations have produced unreported errors, sometimes catastrophically. 


Real Consequences

Floating point Patriot missile failure

Floating point Patriot missile failure

Patriot Missile Failure

The most notorious floating point error catastrophe was the Patriot Missile Failure at  Dhahran, Saudi Arabia, February 25, 1991, when a Patriot missile failed to destroy a SCUD missile and 128 U.S. military soldiers were killed or wounded as a result. (The greatest combat loss in an Army unit since Vietnam.   The conversion of 100 hours in tenths of a second (3600000) to floating point introduced an undetectable error resulting in the missile guidance software incorrectly locating the SCUD missile. (Photo from www.army.mil.)


Recovered support strut of Ariane 5 rocket

Recovered support strut of Ariane 5 rocket

Ariane 5 ROCKET, Flight 501

On June 4th, 1996, 40 seconds into flight and at an altitude of 3.7 kilometers, the initial launch of the Ariane 5 rocket, flight 501, ended in RUD (colloquially, Rapid Unplanned Disassembly).  Estimates of the loss of the rocket and cargo may be as high as $500M.  Cause of the failure was an inappropriate floating point conversion. (Photo from Deadpan.)


Old_vancouver_stock_exchange.jpg

Vancouver Stock Exchange

In January of 1982 the Vancouver Stock Exchange started a stock index accumulating total stock value for all 1,400 stocks listed on the exchange. but truncating (rounding down) that sum up to 3000 times per day resulting in a loss of index value of about $25 per month for about 23 months indicating an index value of $524.811 when the actual value was $1098.892. (Image by Mafue)


The Solution

Upper-lower_wider.png

bounded floating point

True North bounded floating point is a method of performing operations on floating point numbers that calculates and saves the error information with the floating point values.

This is accomplished by adding a bound field to the floating point representation of real numbers.

The error information is saved with the floating point value. Implemented in hardware, this circuit provides real-time, fail safe representation of real numbers.

bounded floating point

True North bounded floating point is a method of performing operations on floating point numbers that maintains boundaries for the real numbers they represent. This is accomplished by adding a bound field to the floating point representation of real numbers.

The error information is saved with the floating point value. Implemented in hardware, this circuit provides real-time, fail safe representation of real numbers.

this

this

this

this

thisthis

this

this

this

this

this

this

this

thisthis

this

v

v

v

this

this

this

v

this

 
 
 
 

 
 
 

The man behind the solution

Dr. Alan A. Jorgensen

Educational foundation

  • A long-time computer systems engineer with degrees in electrical engineering and computer science. 

Leader in technology

  • Designed a high performance four-channel microprogrammed synchronous communications controller that was still operational 15 years after its introduction.

  • He owned and operated a computer system consulting business that offered system troubleshooting services to operators of real-time process control systems, particularly main plant computers in nuclear power stations. 

  • As adjunct faculty he has taught university courses in microprogrammed design, programming, system design, and other computer science related courses. 

  • He has been an international keynote speaker on software testing and quality. 

Why floating point

  • His interest in floating point dates back to logic and compatibility testing of early floating-point units.  The discovery of system failures that were traced back to floating point error has led him to design and patent a circuit for calculating and retaining bounds on floating point error. 

More about the man

  • He has performed professionally as a musician and loves to read and paint and solve puzzles when he has time.