anchor.diff:          x)))
   
   (defun log (number &optional base)
  -  (if base
  -      (/ (log number) (log base))
  -      (log-e number)))
  +  (cond (base
  +         (/ (log number) (log base)))
  +        ((complexp number)
  +         (complex (log (abs number)) (phase number)))
  +        (t
  +         (log-e number))))
   
   (defun atan (number1 &optional number2)
     (if number2
  
positive.code:     (double-float
       (%%double-float-sqrt (float number 0.0d0)))
      (real
       (%%single-float-sqrt (float number 0.0f0)))))
  
  (defun isqrt (number)
    (values (floor (sqrt number))))
  
negative.code:      (%integer-as-double-float (%object-ref-unsigned-byte-64 number +complex-imagpart+)))
      (t
       (check-type number number)
       (* 0 number))))
  
  (defun upgraded-complex-part-type (typespec &optional environment)
    (cond
  