# Fullsimplify with two Diracdelta functions

I am having a problem with the FullSimplify and DiracDelta functions. When I run the following line in mathmatica:

Assuming[x >= 0 && y > 1, FullSimplify[DiracDelta[x]*DiracDelta[x - y]]]


the results is:

DiracDelta[x] DiracDelta[x - y]

while I expect 0. Any clue how to solve this problem?

• This reply is totally confusing. No matter how you interpret the dirac function, the mathmatical equality above is correct. – A.J. Dec 9 '18 at 15:57
• @user64494 But we're in Mathematica, not mathematics. – Michael E2 Dec 9 '18 at 17:14
• @user64494 The result $\delta(x)=0$ for $x>0$ makes perfect sense. It means that $\delta[f]=0$ for all $f$ whose support is $x>0$. Just because you don't understand a concept does not mean that the concept itself makes no sense. Please stop making comments on every post that contain the words "Dirac delta", especially wrong comments. – AccidentalFourierTransform Dec 9 '18 at 18:42
• @user64494 No, the support need not be compact (recall that $\delta$ is tempered). A Schwartz function is a smooth function such that $|P\partial_\alpha f|<\infty$ for all multi-indices $\alpha$ and all polynomials $P$. For example, a gaussian function is Schwartz, and its support is all of $\mathbb R$. Moreover, $\mathrm{sup}(f)\subset \{x>0\}$ does not mean that the support is not compact. For example, $\mathrm{sup}(f)=[1,2]$ is both compact and in $x>0$. These are traditional results; any reference should do. – AccidentalFourierTransform Dec 9 '18 at 18:59
• @user64494 A "typical space of test functions" is not the only possibility. Note that I said tempered. If you don't know basic distribution theory, don't post comments trying to correct others. It is obnoxious. – AccidentalFourierTransform Dec 9 '18 at 19:14

Within Mathematica, DiracDelta makes only sense within Integrate (or integral transforms such as FourierTransform. And a product of DiracDelta makes only sense in a multidimensional setting:

Assuming[x >= 0 && y > 1,
Integrate[DiracDelta[x] DiracDelta[x - y] f[x], {x, -2, 2}]
]


returns

If one uses two-dimensional integration and incorporates the assumptions into the integration, one obtains the desired results:

Integrate[ DiracDelta[x] DiracDelta[x - y] f[x, y], {x, 0, ∞}, {y, 1, ∞}]
Integrate[ DiracDelta[x] DiracDelta[x + y] f[x, y], {x, 0, ∞}, {y, 1, ∞}]


0

0

By the way, Mathematica seem to interpret functions in the integrant as functions that are compactly support in the interior of the integration domain:

Integrate[DiracDelta[x] DiracDelta[x - y] f[x, y], {x, 0, ∞}, {y, 0, ∞}]
Integrate[DiracDelta[x] DiracDelta[x - y] f[x, y], {x, -ϵ, ∞}, {y, -ϵ, ∞},
Assumptions -> ϵ > 0]


This can lead to wrong results when integration function that do not vanish on the domain of integration:

Integrate[DiracDelta[x] DiracDelta[x - y] Cos[x + y], {x, 0, ∞}, {y, 0, ∞}]
Integrate[DiracDelta[x] DiracDelta[x - y] Cos[x + y], {x, -ϵ, ∞}, {y, -ϵ, ∞},
Assumptions -> ϵ > 0]


0

1

Here, I would have expected that both evaluate to 1.

• I'm not sure I understand your last sentence. Surely $x=2=y$ satisfies $x=y$ and $x\ge0$ and $y>0$. Is there a typo somewhere? Or what am I missing? – AccidentalFourierTransform Dec 9 '18 at 16:09
• Are you sure you are not making a mistake with the limits of the integral? With the correct limits these integrals will both evaluate to zero. – A.J. Dec 9 '18 at 16:09
• Well of course one of the delta functions diverges for x=y=2, but the point is that the other delta function is zero already. – A.J. Dec 9 '18 at 16:11
• The answer to the following question might be relevant, but it is just a trick, that makes the whole simplification more complicated. link – A.J. Dec 9 '18 at 16:15
• @MichaelE2 Uh. Good point. Now I get what A.J. meant. – Henrik Schumacher Dec 9 '18 at 16:46