Arctangent Computation via Lookup Table Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for computing arctangents at high precision are excessively slow, making them unsuitable for real-time applications in machine learning and other fields.

Innovation Solution

A high-performance arctangent system that generates a compact lookup table to shift the arctangent calculation into a high-precision range, using a lower-accuracy polynomial approximation and angle shifting to achieve rapid computation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If polynomial approximations are used for arctangent computation, then computation speed is improved, but accuracy deteriorates

Engineering Contradiction:
Improvecomputation speedVSAvoidarctangent accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The arctangent computation is segmented into two parts: a polynomial approximation for speed and a lookup table for precision correction. The angle is divided into a mantissa part (handled by polynomial) and a significand part (handled by lookup table), allowing each component to optimize for its strength.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A lookup table acts as an intermediary between the fast but inaccurate polynomial approximation and the final high-precision result. The lookup table provides correction values that bridge the gap between low-precision polynomial output and high-precision arctangent values.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If high-precision arctangent computation methods are used, then accuracy is improved, but computation speed deteriorates

Engineering Contradiction:
Improvearctangent accuracyVSAvoidcomputation speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The computation is segmented so that the majority of the work (polynomial evaluation) can be performed quickly, while only a correction step (lookup table access and addition) is needed to achieve high precision. This avoids the need for slow high-precision polynomial evaluations throughout.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of performing full high-precision computation, the system performs a lower-precision polynomial approximation and then applies a partial correction from the lookup table. This excessive correction approach achieves high precision without the excessive computational cost of full high-precision methods.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If lookup tables are used to improve precision, then accuracy is improved, but memory usage and access time increase

Engineering Contradiction:
Improvearctangent accuracyVSAvoidmemory access time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The lookup table is segmented to store only the correction values (significand adjustments) rather than complete arctangent values. This reduces the table size and improves cache performance while maintaining precision correction capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The lookup table stores high-precision correction values only where needed (for the significand portion), while the polynomial handles the bulk computation. This localized precision approach minimizes memory requirements while achieving high overall precision.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250139197A1Polynomial arctangent computation at selectably high precision
Publication Date: 2025.05.01 ORACLE INT CORP
  • US20250139197A1 patent drawing
  • US20250139197A1 patent drawing
  • US20250139197A1 patent drawing

AI summary

Systems, methods, and other embodiments associated with high-performance arctangent computation at arbitrarily high precision are described. In one embodiment, an example method brackets an angle to a working range of an arctangent approximation polynomial. A closest index of a lookup table to the bracketed angle is determined. An angle shift for the bracketed angle is generated that is configured to move the bracketed angle to a high-precision segment of the range segments. A shifted angle is generated based on the bracketed angle and the angle shift. The arctangent approximation polynomial is evaluated at the shifted angle to produce an estimated arctangent of the shifted angle. A pre-computed arctangent corresponding to the closest index in the lookup table is retrieved from the lookup table in proximate memory. An augmented-precision arctangent is then generated from the estimated arctangent and the pre-computed arctangent.