On Sun, Aug 24, 2008 at 11:03 AM, Ryan <[EMAIL PROTECTED]> wrote: > > Thanks, both seem like workable options. A related question... > > There are alot of different simplify commands, but not one that seems > to be effective for hyperbolic trig functions. For instance > > cosh(arcsinh(3/2)) simplifies to sqrt(13)/2 > > but none of the simplify commands seem to produce this. > > Any thoughts? >
Wait a little? In the new Ginac-based Sage symbolic code that Burcin and I are implementing right now this works automatically: sage: x = var('x', ns=1); S = x.parent() sage: S(3/2).arcsinh().cosh() sqrt(13/4) Keep your eye on http://trac.sagemath.org/sage_trac/ticket/3872 Ginac is a very robust fast C++ library for symbolic manipulation that will replace most of Sage's current dependence on Maxima by something much better. http://www.ginac.de/ Sympy doesn't automatically do the above simplification (yet): sage: import sympy sage: Integer = sympy.Integer sage: sympy.cosh(sympy.asinh(3/2)) cosh(asinh(3/2)) By the way, in ginac the C++ code that defines the above simplification is here: if (is_exactly_a<function>(x)) { const ex &t = x.op(0); // cosh(acosh(x)) -> x if (is_ex_the_function(x, acosh)) return t; // cosh(asinh(x)) -> sqrt(1+x^2) if (is_ex_the_function(x, asinh)) return sqrt(_ex1+power(t,_ex2)); // cosh(atanh(x)) -> 1/sqrt(1-x^2) if (is_ex_the_function(x, atanh)) return power(_ex1-power(t,_ex2),_ex_1_2); } It's in the file inifcns_trans.cpp in the ginac distribution. William --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---