changes to trigi, trigo, and logarc



> I am thinking of extending your use of use CL
> functions for double float evaluation of trigonometric
> functions using double-float-eval to the airy function
> code in src/airy.lisp.

> It looks reasonably simple once I work out how to
> access the double-float-op hash table from outside
> trigi.lisp.

>Do you think this is a good idea?

I think this would be OK; your code might shorten
to something like

(setf (gethash '$airy_ai*double-float-op*) #'(lambda (s) ))

(defmfun simp-%airy_ai (form unused x)
  (declare (ignore unused))
  (oneargcheck form)
  (let* ((z (simpcheck (cadr form) x)))
    (cond ((double-float-eval (mop form) z))
       (t (eqtest (list '(%airy_ai) z) form)))))

The function double-float-eval is supposed to handle all
the logic about when to use floating point evaluation.

One possible benefit: Currently, I think simp-%airy_ai always
applies $realpart and $imagpart to 'form'.  If 'form' is
something like log(x), Maxima might ask sign questions
that in the end don't make any difference. If you switched
to double-float-eval, I think Maxima won't ask such questions.

Barton