# Problem with simplifying Sinc function

\$Assumptions = x ∈ Reals && y ∈ Reals && a ∈ Reals && b ∈ Reals;


These work:

Cos[x/2] Sinc[x/2] == Sinc[x] // FullSimplify
(* True *)

Cos[y/2] Sinc[y/2] == Sinc[y] // FullSimplify
(* True *)


but these don't:

Cos[x/2] Sinc[x/2] + Cos[y/2] Sinc[y/2] == Sinc[x] + Sinc[y] // FullSimplify
(* Cos[x/2] Sinc[x/2] + Cos[y/2] Sinc[y/2] == Sinc[x] + Sinc[y] *)

Cos[a + b] Sinc[a + b] == Sinc[2 (a + b)] // FullSimplify
(* Cos[a + b] Sinc[a + b] == Sinc[2 (a + b)] *)


Why this strange behavior?

-

Sometimes, a preliminary application of FunctionExpand[] works wonders:

Cos[a + b] Sinc[a + b] == Sinc[2 (a + b)] // FunctionExpand // FullSimplify
True

-
Thanks. Do you have any idea why MMA behavior like this? Why it have problem with a+b as an argument in Sinc? –  xslittlegrass May 16 '13 at 4:40
It would seem that FullSimplify[] does not know everything about Sinc[], so a preliminary application of FunctionExpand[] is needed to convert your expression in terms of functions FullSimplify[] can easily handle. –  Guess who it is. May 16 '13 at 4:43

You can try proceeding this way:

rule = Cos[x_] Sinc[x_] -> Sinc[2 x]

Cos[x/2] Sinc[x/2] + Cos[y/2] Sinc[y/2] == Sinc[x] + Sinc[y] /. rule
Cos[a + b] Sinc[a + b] == Sinc[2 (a + b)] /. rule


Which both give

True


as expected. Also note that your assumptions make no difference as

Cos[x/2] Sinc[x/2] == Sinc[x] // FullSimplify


gives True without any assumptions.

-
Cos[a + b] Sinc[a + b] == Sinc[2 (a + b)] /. Sinc[x_] -> Sin[x]/x // Simplify
Cos[x/2] Sinc[x/2] + Cos[y/2] Sinc[y/2] == Sinc[x] + Sinc[y]
/.Sinc[x_] -> Sin[x]/x // Simplify

FullSimplify[ Cos[x/2] Sinc[x/2] + Cos[y/2] Sinc[y/2] == Sinc[x] + Sinc[y],
TransformationFunctions -> {Automatic, Reduce[#, {x, y}, Reals] &}]

-