Re: Failure to simplify trig functions of simple rational multiples of %pi

Dan Hatton <[email protected]> Tue, 15 Sep 2009 14:27:47 +0100 (BST)
Newsgroups gmane.comp.mathematics.axiom.user
Message-ID <alpine.LNX.2.00.0909151425590.1614@hydrographer.hatton.btinternet.co.uk>
On Wed, 26 Aug 2009, Dan Hatton wrote:

> Further to the earlier bits of this thread, I'd been hoping to be able
> to produce the answer "1" with something like
>
> l:Union(Variable l,Integer)
> simplify(cos(2*%pi*l))
>
> but instead I just get the cosine expression quoted back at me - is
> there some other function I should use instead of simplify() for this,
> please?

knownvaluec2l(someexpression) == subst(someexpression,cos(2*l*%pi) = 1)
knownvaluec2m(someexpression) == subst(someexpression,cos(2*m*%pi) = 1)
knownvaluec2n(someexpression) == subst(someexpression,cos(2*n*%pi) = 1)
knownvalues2l(someexpression) == subst(someexpression,sin(2*l*%pi) = 0)
knownvalues2m(someexpression) == subst(someexpression,sin(2*m*%pi) = 0)
knownvalues2n(someexpression) == subst(someexpression,sin(2*n*%pi) = 0)
knownvaluec1l(someexpression) == subst(someexpression,cos(l*%pi) = (-1)^l)
knownvaluec1m(someexpression) == subst(someexpression,cos(m*%pi) = (-1)^m)
knownvaluec1n(someexpression) == subst(someexpression,cos(n*%pi) = (-1)^n)
knownvalues1l(someexpression) == subst(someexpression,sin(l*%pi) = 0)
knownvalues1m(someexpression) == subst(someexpression,sin(m*%pi) = 0)
knownvalues1n(someexpression) == subst(someexpression,sin(n*%pi) = 0)
knownvals(anexpression) == knownvalues1n(knownvalues1m(knownvalues1l(knownvaluec1n(knownvaluec1m(knownvaluec1l(knownvalues2n(knownvalues2m(knownvalues2l(knownvaluec2n(knownvaluec2m(knownvaluec2l(anexpression))))))))))))

-- 

Regards,

Dan