MathGroup Archive 2008

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: asumming and Exp orthogonality condition

  • To: mathgroup at
  • Subject: [mg91952] Re: asumming and Exp orthogonality condition
  • From: Jean-Marc Gulliet <jeanmarc.gulliet at>
  • Date: Mon, 15 Sep 2008 03:39:02 -0400 (EDT)
  • Organization: The Open University, Milton Keynes, UK
  • References: <gag2p0$3ck$>

charllsnotieneningunputocorreo at wrote:

> Element[ 0 , Integers ] evaluates to true, however;
> Assuming[ Element[ n , Integers] , Integrate[ Exp [ 2 I Pi n x ] ,
> {x , 0 , 1 } ] ] evaluates to zero. Shouldn't evaluate to
> KroneckerDelta[ 0 , n ] instead?

The following might explain what is going on. Mathematica does not have 
any transformation rule for this specific case of this definite integral.

So, I guess, what Mathematica computes first is the general formula for 
the definite integral (I shall call it int[n]) and then applies the 
assumption about n being an integer. (This is conceptually equivalent to 
In[1] and In[2].)

As it stands, int[n] is defined and equal to 0 for all n in N, n !=0. 
(For n == 0 we have a division by zero.) So what Mathematica sees is 
that the function is defined for every non-zero integer and its value is 
therefore zero.

Now, if we extend the domain of definition of int[n] to the whole set of 
  integers and defined int[0] == 1, (having checked that the limit of 
int[n] as n approaches zero on the left and on the right is equal to 
one), only then this extended definition matches KroneckerDelta[0, n].

Thus, Mathematica's behavior seems reasonable since Mathematica is not 
going to attempt by itself to check the limits and/or extend the domain 
of definition.

In[1]:= int[n_] = Integrate[Exp[2 I Pi n x], {x, 0, 1}]

Out[1]= -((I (-1 + E^(2 I n \[Pi])))/(2 n \[Pi]))

In[2]:= Assuming[Element[n, Integers], Simplify[int[n]]]

Out[2]= 0

In[3]:= Table[int[n], {n, -2, 2}]

During evaluation of In[3]:= Power::infy: Infinite expression 1/0 \
encountered. >>

During evaluation of In[3]:= \[Infinity]::indet: Indeterminate \
expression (0 ComplexInfinity)/\[Pi] encountered. >>

Out[3]= {0, 0, Indeterminate, 0, 0}

In[4]:= Limit[int[n], n -> 0, Direction -> 1]

Out[4]= 1

In[5]:= Limit[int[n], n -> 0, Direction -> -1]

Out[5]= 1

-- Jean-Marc

  • Prev by Date: Re: ListContourPlot3D, no output
  • Next by Date: Re: Functional programming?
  • Previous by thread: asumming and Exp orthogonality condition
  • Next by thread: Re: asumming and Exp orthogonality condition