The sine of an angle
The sine of an angle (specified in radians) can be computed by making use of the approximation
sin x ≈ x
if
x
is sufficiently small, and the trigonometric identity
sin(x) = 3sin(x / 3) − 4sin³(x / 3)
to reduce the size of the argument of
sin
. (For purposes of this exercise an angle is considered ''sufficiently small'' if its magnitude is not greater than 0.1 radians.) These ideas are incorporated in the following procedures:
(define (cube x) (* x x x))
(define (p x) (- (* 3 x) (* 4 (cube x))))
(define (sine angle)
(if (not (> (abs angle) 0.1))
angle
(p (sine (/ angle 3.0)))))
a. How many times is the procedure
p
applied when
(sine 12.15)
is evaluated?
b. What is the order of growth in space and number of steps (as a function of
a
) used by the process generated by the
sine
procedure when
(sine a)
is evaluated?