SICP 問題 1.26 (計算の呼び出し回数による増加の割合の違い)

【問題】
Louis Reasoner は問題 1.24 がなかなかうまくいかなかった。彼のfast-prime?よりずっと遅いようであった。
Louis は友人の Eva Lu Ator に助けを求めた。
Louis のプログラムを見ていると、square を呼びだす代わりに乗算を陽に使うように変わっていた。

(define (expmod base exp m)
  (cond ((= exp 0) 1)
        ((even? exp)
         (remainder (* (expmod base (/ exp 2) m)
		       (expmod base (/ exp 2) m))
                    m))
        (else
         (remainder (* base (expmod base (- exp 1) m))
                    m))))

「違いが分からん」とLouis。「分かる」とEvaが言った。
「手続きをこのように書き換えたので、Θ(log n)のプロセスをΘ(n)にしてしまった。
説明せよ。



【解答】
expが偶数のとき、expmodを一回計算すればよいところを2回計算することになっているため?