Re: ForAll testing equality, and Limit evaluating wrong

• To: mathgroup at smc.vnet.net
• Subject: [mg104589] Re: [mg104512] ForAll testing equality, and Limit evaluating wrong
• From: DrMajorBob <btreat1 at austin.rr.com>
• Date: Wed, 4 Nov 2009 01:38:19 -0500 (EST)
• References: <200911030750.CAA00981@smc.vnet.net>

```r[Pi] occurs because of copy/paste from e-mail to a notebook, when the

xTransf[f]:=Limit[(E^(-24 I r \[Pi]) (-Cos[12 r \[Pi]] + Cos[24 r \
[Pi]] +
12 r \[Pi] Sin[24 r \[Pi]]))/(2 r^2 \[Pi]^2), r->f]

So that's an e-mail artifact.

You defined xTransf this way:

Clear[xTransf, xTransf2]
xTransf2[f_] := 36 Sinc[6 Pi f]^2;
xTransf[f_] :=
Limit[(E^(-24 I \[Pi] r) (-Cos[12 \[Pi] r] + Cos[24 r \[Pi]] +
12 \[Pi] r Sin[24 \[Pi] r]))/(2 \[Pi]^2 r^2), r -> f]

and noticed that this evaluates fine:

xTransf[0]

36

but this does not (error messages omitted):

xTransf[f] /. f -> 0

Indeterminate

It's easy to see why the error occurs, since this is undefined at f=0:

xTransf[f]

(E^(-24 I f \[Pi]) (-Cos[12 f \[Pi]] + Cos[24 f \[Pi]] +
12 f \[Pi] Sin[24 f \[Pi]]))/(2 f^2 \[Pi]^2)

(We can't divide by zero.)

But the limit as f->0 exists, so xTransf[0] can be calculated, and 36 is
the result.

Bobby

On Tue, 03 Nov 2009 16:33:07 -0600, Rui Rojo <rui.rojo at gmail.com> wrote:

> Yeah, the first xTransf[f] slipped when copying by hand, and the second
> thing I don't see it.  The FullSimplify does what I wanted like you said.
> Thanks :)
>
> Any comments on the Limit issue?
> Rui Rojo
>
> On Tue, Nov 3, 2009 at 6:34 PM, DrMajorBob <btreat1 at austin.rr.com> wrote:
>
>> As is, you posted a scramble for two reasons:
>>
>> underscore).
>>
>> 2) The right hand side includes r[Pi] in the second Cos argument,
>> indicating that r is a function. In that case, what does it mean for r
>> to
>> approach f in the Limit?
>>
>> If I rewrite to eliminate those problems, Simplify doesn't get the
>> result
>> you want, but FullSimplify does:
>>
>> Clear[xTransf, xTransf2]
>> xTransf2[f_] := 36 Sinc[6 Pi f]^2;
>> xTransf[f_] =
>>  Limit[(E^(-24 I \[Pi] r) (-Cos[12 \[Pi] r] + Cos[24 r \[Pi]] +
>>      12 \[Pi] r Sin[24 \[Pi] r]))/(2 \[Pi]^2 r^2), r -> f];
>> diff[i_] = xTransf2[i/24] - xTransf[i/24];
>> one = Simplify[diff@i, {i > 0, i \[Element] Integers}]
>>
>> 36 ((8 (-1 + (-1)^i Cos[(i \[Pi])/2]))/(i^2 \[Pi]^2) +
>>   Sinc[(i \[Pi])/4]^2)
>>
>> FullSimplify[diff@i, {i > 0, i \[Element] Integers}]
>>
>> 0
>>
>> One way to work that out almost by hand is:
>>
>> two = Expand[(i^2 Pi^2)/(8*36) one /. Sinc[any_] :> Sin@any/any]
>>
>> -1 + (-1)^i Cos[(i \[Pi])/2] + 2 Sin[(i \[Pi])/4]^2
>>
>> (to eliminate Sinc)
>>
>> doubleAngle = ReplaceAll[#, Cos[x_] :> Cos[x/2]^2 - Sin[x/2]^2] &;
>> three = MapAt[doubleAngle, two, 2] // Expand
>>
>> -1 + (-1)^i Cos[(i \[Pi])/4]^2 +
>>  2 Sin[(i \[Pi])/4]^2 - (-1)^i Sin[(i \[Pi])/4]^2
>>
>> (to have all the Sin and Cos terms squared)
>>
>> four = three /. Cos[any_]^2 :> 1 - Sin[any]^2 // Expand // Factor
>>
>> -(-1 + (-1)^i) (-1 + 2 Sin[(i \[Pi])/4]^2)
>>
>> Separate into factors:
>>
>> {minus, five, six} = List @@ four
>>
>> {-1, -1 + (-1)^i, -1 + 2 Sin[(i \[Pi])/4]^2}
>>
>> "five" is zero when i is even:
>>
>> Reduce[five == 0]
>>
>> (-1)^i == 1
>>
>> "six" is zero when i is odd:
>>
>> Reduce[six == 0]
>>
>> Sin[(i \[Pi])/4] == -(1/Sqrt[2]) || Sin[(i \[Pi])/4] == 1/Sqrt[2]
>>
>> So the product is zero for all i. (NON-ZERO i, that is, since we assumed
>> Sinc was defined.)
>>
>> Bobby
>>
>>
>> On Tue, 03 Nov 2009 01:50:55 -0600, Rui <rui.rojo at gmail.com> wrote:
>>
>>  I want to prove that xTransf2[f]==xTransf[f] for all f multiple of
>>> 1/24.
>>> xTransf2[f_]:=36 Sinc[6 Pi f]^2 and
>>> xTransf[f]:=Limit[(E^(-24 I r \[Pi]) (-Cos[12 r \[Pi]] + Cos[24 r \
>>> [Pi]] +
>>>   12 r \[Pi] Sin[24 r \[Pi]]))/(2 r^2 \[Pi]^2), r->f]
>>>
>>> If I do
>>> ForAll[f \[Element] Integers, YTransf[f/24] == YTransf2[f/24]]
>>> I don't get a result... I can't find a way.
>>> In fact, I get
>>> (144 E^(-I f \[Pi]) (-2 Cos[(f \[Pi])/2] + 2 Cos[f \[Pi]] +
>>>    f \[Pi] Sin[f \[Pi]]))/(f^2 \[Pi]^2) == 36 Sinc[(f \[Pi])/4]^2
>>>
>>> They are clrealy equal, at least on the 48 points closest to 0,
>>> because if I do
>>> And @@ ((xTransf[1/24 #] == xTransf2[1/24 #]) & /@ Range[-24, 24])
>>> I get "True"
>>>
>>> Any pretty way to be certain?
>>>
>>> I've also realised that Mathematica has evaluated Limits with
>>> variables, making the "Limit" disappear when for some values of the
>>> variables I could get an indetermined result with the evaluated
>>> version. For example, the Limit in xTransf
>>> xTransf[f]
>>> I get
>>> (E^(-24 I f \[Pi]) (-Cos[12 f \[Pi]] + Cos[24 f \[Pi]] +
>>>   12 f \[Pi] Sin[24 f \[Pi]]))/(2 f^2 \[Pi]^2)
>>> without the Limit.
>>> So, if I do
>>> xTransf[f]/.f->0
>>> I get errors but if I do xTransf[0] I get 36
>>> ...
>>> Hope you can help :)
>>>
>>>
>>
>> --
>> DrMajorBob at yahoo.com
>>

--
DrMajorBob at yahoo.com

```

• Prev by Date: Re: Re: dynamicmodule with f[x_] possible?
• Next by Date: Re: Re: dynamicmodule with f[x_] possible?
• Previous by thread: Re: ForAll testing equality, and Limit evaluating wrong
• Next by thread: Re: ForAll testing equality, and Limit evaluating wrong