I'm not sure, but I think that sratp (defined in series.lisp) is supposed to test for
a rational function. But it returns true for some nonrational functions and that causes
some power series to needlessly fail:
1> (SRATP ((%BESSEL_J SIMP) 0 $X) $X)
<1 (SRATP T)
(%o2) "Failed to expand"
I'm not sure what smono (defined in asum.lisp) does, but possibly the final
(t (free (cadr a) var))) clause in sratp is defective.