simplify inverse_erf(erf(x))



> I would be interested to see that Maxima can handle inverse functions better. 

If correctness in the entire complex plane isn't required,  try:

load("opsubst");

inverse_crunch(e) := block([o,f,g],
  o : gatherops(e),
  for f in o do (
    g : get_inverse(f),
    if g # false then (
      e : subst(f = lambda([s], if not mapatom(s) and op(s)=g then first(args(s)) else funmake(f,[s])),e))),
  e);

(defun $get_inverse (f)
  (if (symbolp f) (get f '$inverse) nil))

    (%i31) inverse_crunch((x+a)*erf(inverse_erf(5+x)));
    (%o31) (x+5)*(x+a)

For the inverse Jacobi functions (and likely other things I haven't thought about), this code
would need to be revised. 

--Barton

________________________________________




_______________________________________________
Maxima mailing list
Maxima at math.utexas.edu
http://www.math.utexas.edu/mailman/listinfo/maxima