# Nested Square Root of Two/Reflected Gray Code Series for Cos(X)

Original Publication Date: 1990-Nov-01

Included in the Prior Art Database: 2005-Mar-17

## Publishing Venue

IBM

## Related People

## Abstract

There exists an infinite series consisting of nested square roots (sqrt) of two that converges to Cos(X): Cos(X) = sqrt(2+-sqrt(2+-sqrt(2+- .........))) Cos(X/2) = sqrt( (1 + Cos(X)) / 2 ) {well known} = sqrt( (2 + 2Cos(X)) / 4 ) = sqrt( 2 + 2Cos(X) ) / 2 t therefore 2Cos(X/2) = sqrt( 2 + 2Cos(X) ) 2Cos(X) = sqrt( 2 + 2Cos(2X) ) 2Cos(2X) = sqrt( 2 + 2Cos(4X) ) etc. therefore 2Cos(X) = sqrt( 2 + 2Cos(2X) ) = sqrt( 2 + sqrt( 2 + 2Cos(4X) ) ) = sqrt( 2 + sqrt( 2 + sqrt( 2 + 2Cos(8X) ) ) ) etc. if 45o < X < 90o, Cos(2X) is negative, so - 2Cos(180 - 2X) can be used instead of + 2Cos(2X) therefore 2Cos(X) = sqrt(2+-sqrt(2+-sqrt(2+- . . . . .

**This text was extracted from an ASCII text file.**

**At least one non-text object (such as an image or picture) has been suppressed.**

**This is the abbreviated version, containing approximately 57% of the total text.**

Nested Square Root of Two/Reflected Gray Code Series for

Cos

(X) There exists
an infinite series consisting of nested

square roots (sqrt) of two that converges to Cos(X):

Cos(X) = sqrt(2+-sqrt(2+-sqrt(2+-
.........)))

Cos(X/2) = sqrt( (1 + Cos(X)) / 2 ) {well known}

= sqrt( (2 +
2Cos(X)) / 4 )

= sqrt( 2 + 2Cos(X) ) / 2 t

therefore 2Cos(X/2) = sqrt( 2 + 2Cos(X)
)

2Cos(X) = sqrt(
2 + 2Cos(2X) )

2Cos(2X) = sqrt(
2 + 2Cos(4X) ) etc.

therefore 2Cos(X) = sqrt( 2 + 2Cos(2X)
)

= sqrt( 2 + sqrt( 2
+ 2Cos(4X) ) )

= sqrt( 2 + sqrt( 2
+ sqrt( 2 + 2Cos(8X) ) ) )

etc. if 45o < X < 90o, Cos(2X) is
negative,

so
- 2Cos(180 - 2X) can be used
instead of + 2Cos(2X)

therefore 2Cos(X) = sqrt(2+-sqrt(2+-sqrt(2+- . . . . .))) If the

units for angular measurement are selected such that a right angle =

2n units, then the signs in the series conform to the reflected gray

code.

The Algorithm

For X where X less than or equal to
90o:

2 Cos(X) = sqrt(2+-sqrt(2+-sqrt(2+-
.........)))

The +-s are set to either + or - as follows:

(Y is a binary integer).

1) Compute Y =
(X/90)x2n . Using a larger value of n
increases

the accuracy.

2) Convert Y to reflected gray code.
This is done by sh...