Given two parametric curves $x^\mu(\tau)$ and $y^\mu(\tau)$. Let's assume they are closed curves for simplicity. Is there a functional $D[x,y]$ which is zero if the curves are different and non-zero if the curves are the same curve appart from paramaterisation? Kind of like a dirac delta function but for two curves instead of two values?

My first thought would be to check if each point on $x$ was a point on $y$ like this:

$$D[x,y] = \prod\limits_{\tau}\int \delta(|x(\tau)-y(\tau')|) d\tau'$$

$$= e^{\int \ln (\int \delta(|x(\tau)-y(\tau')|) d\tau') d\tau}$$

Using the Dirac delta function. The integral should be non-zero if at least one point matches on the second curve for a specific point on the first curve. Then we do the product over all the points on the first curve.

This seems like it should work. But is isn't very symmetric. It doesn't appear like $D[x,y]=D[y,x]$ with this formula. Is there a better formula?

  • $\begingroup$ OP's suggestion using the Dirac delta distribution is mathematically ill-defined. $\endgroup$
    – Qmechanic
    Commented Aug 8, 2020 at 15:51
  • $\begingroup$ Yes, it is probably ill-defined. My second thought was to break it into Fourier modes, but I'm not sure how that works with reparameterisation. $\endgroup$
    – zooby
    Commented Aug 8, 2020 at 17:19
  • $\begingroup$ If you have two curves that start and end at the same point, but might be different inbetween or might be the same but move with different velocity. Then you can reparametrize both curves such that they move with unit velocity and then its simply a matter of comparing the two curves directly. $\endgroup$
    – Winther
    Commented Aug 10, 2020 at 1:16

2 Answers 2


I have another idea.

If we "thicken" each curve to make it a field with the Gaussian which peaks on the curve we can then take the difference of each field, $\phi(a)$, and square it. This should be zero.

$$D[x,y] = \delta\left( \int \left(\int (e^{ -|x(\sigma) - a|^2 }|x'(\sigma)| - e^{ |y(\sigma) - a|^2 }|y'(\sigma)| )d\sigma\right) da^N \right)$$

Which doing the integration over the field coordinate $a$ becomes:

$$D[x,y] = \delta\left(\int \int (|\partial_\sigma X||\partial_{\sigma'} X| e^{ -|X(\sigma)-X(\sigma')|^2} + |\partial_\sigma Y||\partial_{\sigma'} Y|e^{ -|Y(\sigma)-Y(\sigma')|^2} - 2 |\partial_\sigma X||\partial_{\sigma'} Y|e^{ -|X(\sigma)-Y(\sigma')|^2} )d\sigma d\sigma' \right)$$


I have a suggestion.

Let $\langle x_\mu\rangle$ be the "center of mass" of a curve:

$$\langle x_\mu\rangle = \int x_\mu(\tau)|\dot x | d\tau $$

Then perhaps we can form a series of invariants of each curve, e.g:

$$I_n[x] = \int |x_\mu(\tau) -\langle x_\mu\rangle|^n |\dot x | d\tau$$

Then compare the invariants like this:

$$D[x,y]= \delta(|\langle x_\mu\rangle-\langle y_\mu\rangle|)\prod\limits_n \delta(I_n[x]-I_n[y])$$

Then the problem would be reduced to finding a complete set of invariants of each curve that uniquely defines the curve up to reparameterization.

(The invariants I defined here are probably not complete as it looks like two curves would have the same invariants under a rotational transformation.)

Another set of invariants might be:

$$I_{\mu,\nu,\sigma..} = \int x_\mu(\tau)x_\nu(\tau)x_\sigma(\tau)...|\dot x | d\tau $$ Then $I_\mu$ would be the center of mass and $I$ would simply be the length of the curve. (But this might be too many invariants!)


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .