3.60

べき級数のかけ算、ということだから、和の積。
コンボリュージョンみたいなことをしてるんだろうか ?
たぶんこれでいいと思うんだけど。
後半の add-stream が、べきの係数項を乗じてずらした式の和を表現してるのでしょう。

(define (mul-series s1 s2)
  (cons-stream
   (* (stream-car s1)
      (stream-car s2))
   (add-streams
    (scale-stream (stream-cdr s2) (stream-car s1))
    (mul-series (stream-cdr s1) s2))))

ちなみに検算。シンプルすぎてあってるかわからん。

gosh> (stream-ref (add-stream (mul-series cosine-series cosine-series) (mul-series sine-series sine-series)) 0)
1