How can I test if two symbolic expressions coincide?

22 views
Skip to first unread message

Christian Stump

unread,
Sep 13, 2012, 5:39:22 AM9/13/12
to sage-s...@googlegroups.com
Hello,

can anyone tell me how I can use sage to check that the following two (fairly simple) expressions coincide. Some unneeded background: both come from identities in character theory for complex reflection groups, Sage was able to solve similar expressions, see below, and this is the smallest example I have were it doesn't work ?

sage: f
-(e^(2/3*I*pi) + 1)*e^(2/15*I*pi - 32*XX) + 3*(e^(2/3*I*pi) + 1)*e^(2/15*I*pi - 12*XX) - 5*(e^(2/3*I*pi) + 1)*e^(2/15*I*pi + 4*XX) + 3*(e^(2/3*I*pi) + 1)*e^(2/15*I*pi + 8*XX) - 5*(e^(2/3*I*pi) + 1)*e^(4*XX) + 6*(e^(2/3*I*pi) + 1)*e^(8*XX) - (e^(2/3*I*pi) + 1)*e^(28*XX) + 3*(((e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(-12*XX) - 5*(((e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(-8*XX) + 3*(((e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(8*XX) - (((e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(28*XX) - 5*(((((e^(2/15*I*pi) - 1)*e^(4/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(4/15*I*pi) - 1)*e^(4*XX) + 5*(((((e^(4/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(4/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(4*XX) + 3*(((((e^(2/15*I*pi) - 1)*e^(4/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(4/15*I*pi) - 1)*e^(8*XX) - 3*(((((e^(4/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(4/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(8*XX) + 3*(((((e^(2/15*I*pi) - 1)*e^(4/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(4/15*I*pi) - 1)*e^(-12*XX) - 3*(((((e^(4/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(4/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(-12*XX) - (((((e^(2/15*I*pi) - 1)*e^(4/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(4/15*I*pi) - 1)*e^(-32*XX) + (((((e^(4/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(4/15*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(-32*XX) - ((((e^(4/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(-32*XX) + 3*((((e^(4/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(-12*XX) - 5*((((e^(4/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(4*XX) + 3*((((e^(4/15*I*pi) - 1)*e^(2/15*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/15*I*pi) - 1)*e^(8*XX) + 5*e^(4/15*I*pi + 4*XX) + 5*e^(14/15*I*pi + 4*XX) + 5*e^(8/15*I*pi + 4*XX) + 5*e^(2/15*I*pi + 4*XX) + 5*e^(2/3*I*pi + 4*XX) + 5*e^(6/5*I*pi - 8*XX) + 5*e^(4/5*I*pi - 8*XX) + 5*e^(2/5*I*pi - 8*XX) - 3*e^(4/15*I*pi + 8*XX) - 3*e^(14/15*I*pi + 8*XX) - 3*e^(8/15*I*pi + 8*XX) - 3*e^(2/15*I*pi + 8*XX) - 3*e^(4/15*I*pi - 12*XX) - 3*e^(14/15*I*pi - 12*XX) - 3*e^(8/15*I*pi - 12*XX) - 3*e^(2/15*I*pi - 12*XX) - 6*e^(2/3*I*pi + 8*XX) - 3*e^(6/5*I*pi + 8*XX) - 3*e^(4/5*I*pi + 8*XX) - 3*e^(2/5*I*pi + 8*XX) - 3*e^(6/5*I*pi - 12*XX) - 3*e^(4/5*I*pi - 12*XX) - 3*e^(2/5*I*pi - 12*XX) + e^(4/15*I*pi - 32*XX) + e^(14/15*I*pi - 32*XX) + e^(8/15*I*pi - 32*XX) + e^(2/15*I*pi - 32*XX) + e^(6/5*I*pi + 28*XX) + e^(4/5*I*pi + 28*XX) + e^(2/5*I*pi + 28*XX) + e^(2/3*I*pi + 28*XX) + 5*e^(-8*XX) - 6*e^(8*XX) + e^(88*XX)
sage: g
e^(-32*XX) - 2*e^(28*XX) + e^(88*XX)

Other similar examples were property simplified:

sage: h
(((e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(-42*XX) - 5*(((e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(-6*XX) + 5*(((e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(6*XX) - (((e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(2/5*I*pi) + 1)*e^(18*XX) + 5*e^(6/5*I*pi - 6*XX) + 5*e^(4/5*I*pi - 6*XX) + 5*e^(2/5*I*pi - 6*XX) - 5*e^(6/5*I*pi + 6*XX) - 5*e^(4/5*I*pi + 6*XX) - 5*e^(2/5*I*pi + 6*XX) - 4*e^(1/10*I*pi + 3*XX) + 4*e^(7/10*I*pi + 3*XX) + 4*e^(3/10*I*pi + 3*XX) + 4*e^(1/10*I*pi + 3*XX) - 4*e^(7/10*I*pi + 3*XX) - 4*e^(3/10*I*pi + 3*XX) - 4*e^(6/5*I*pi + 3*XX) - 4*e^(4/5*I*pi + 3*XX) - 4*e^(2/5*I*pi + 3*XX) + 4*e^(6/5*I*pi + 3*XX) + 4*e^(4/5*I*pi + 3*XX) + 4*e^(2/5*I*pi + 3*XX) + 2*e^(1/10*I*pi + 18*XX) - 2*e^(7/10*I*pi + 18*XX) - 2*e^(3/10*I*pi + 18*XX) - 2*e^(1/10*I*pi + 18*XX) + 2*e^(7/10*I*pi + 18*XX) + 2*e^(3/10*I*pi + 18*XX) + 2*e^(1/10*I*pi - 12*XX) - 2*e^(7/10*I*pi - 12*XX) - 2*e^(3/10*I*pi - 12*XX) - 2*e^(1/10*I*pi - 12*XX) + 2*e^(7/10*I*pi - 12*XX) + 2*e^(3/10*I*pi - 12*XX) + e^(6/5*I*pi + 18*XX) + e^(4/5*I*pi + 18*XX) + e^(2/5*I*pi + 18*XX) - e^(6/5*I*pi - 42*XX) - e^(4/5*I*pi - 42*XX) - e^(2/5*I*pi - 42*XX) + 5*e^(-6*XX) - 5*e^(6*XX) - e^(18*XX) + e^(78*XX)

sage: h.factor().expand()
e^(-42*XX) - 2*e^(18*XX) + e^(78*XX)

I now tested the first equality by taking the first terms of the Taylor expansion of f and numerically evaluated the coefficients which turn out to coincide with the coefficients of the Taylor expansion of g.

Thanks for pointer or further ideas! Christian

Christian Stump

unread,
Sep 13, 2012, 5:53:48 AM9/13/12
to sage-s...@googlegroups.com
Okay, I got the simplification by doing

sage: f.expand().simplify()

while

sage: f.simplify()

or

sage: f.simplify_full()

did actually not work...
Reply all
Reply to author
Forward
0 new messages