Can someone explain this formula for calculating Manhattan distance? The 2019 Stack Overflow Developer Survey Results Are In Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)Minimizing the maximum Manhattan distance

How to test the equality of two Pearson correlation coefficients computed from the same sample?

Does the AirPods case need to be around while listening via an iOS Device?

Python - Fishing Simulator

Take groceries in checked luggage

What's the point in a preamp?

Create an outline of font

How does ice melt when immersed in water

Road tyres vs "Street" tyres for charity ride on MTB Tandem

how can a perfect fourth interval be considered either consonant or dissonant?

What are these Gizmos at Izaña Atmospheric Research Center in Spain?

Why can't wing-mounted spoilers be used to steepen approaches?

How to politely respond to generic emails requesting a PhD/job in my lab? Without wasting too much time

Scientific Reports - Significant Figures

How to delete random line from file using Unix command?

Segmentation fault output is suppressed when piping stdin into a function. Why?

Typeface like Times New Roman but with "tied" percent sign

Finding degree of a finite field extension

Sort list of array linked objects by keys and values

Would it be possible to rearrange a dragon's flight muscle to somewhat circumvent the square-cube law?

How do you keep chess fun when your opponent constantly beats you?

When did F become S? Why?

How did passengers keep warm on sail ships?

University's motivation for having tenure-track positions

What was the last x86 CPU that did not have the x87 floating-point unit built in?



Can someone explain this formula for calculating Manhattan distance?



The 2019 Stack Overflow Developer Survey Results Are In
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)Minimizing the maximum Manhattan distance










6












$begingroup$


This is from a Kickstart problem:




Note: The Manhattan distance between two squares (r1,c1) and (r2,c2)
is defined as |r1 - r2| + |c1 - c2|, where |*| operator denotes the
absolute value.




Then in the analysis:




Note that the manhattan distance has an equivalent formula:



dist((x1, y1), (x2, y2)) = max(abs(x1 + y1 - (x2 + y2)), abs(x1 - y1 - (x2 - y2)))


This formula is based on the fact that for any point, the set of
points within a manhattan distance of K form a square rotated by 45
degrees. The benefit of this formula is that if we fix (x2, y2), the
distance will be maximized when x1 + y1 and x1 - y1 are either
maximized or minimized.




Could someone explain in more details how this formula can be derived?










share|cite|improve this question









$endgroup$







  • 1




    $begingroup$
    Why don't you try drawing this square, and determine what these distances represent? Hint: try to determine the coordinates of the corners of this square.
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:32






  • 1




    $begingroup$
    @DavidRicherby The benefit appears to be that for the specific use-case of determining whether there exists a point with distance at most $k$ to some set $S$, it seems we can do this more efficiently, as we only have to find the maximum and minimum of the points in $S$ according to $x_1+y_1$ and $x_1-y_1$ once and then can query for each point in constant time. Do you think there is an easier way to get a constant query time here?
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:44











  • $begingroup$
    I suppose that you could also directly look at the corners of the smallest enclosing 45 degree turned square of these points, and then you end up with basically the same values as the maxima and minima in your dataset. So, in a way, I see that changing the Manhattan distance itself could be a rather complicated way of achieving this.
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:51
















6












$begingroup$


This is from a Kickstart problem:




Note: The Manhattan distance between two squares (r1,c1) and (r2,c2)
is defined as |r1 - r2| + |c1 - c2|, where |*| operator denotes the
absolute value.




Then in the analysis:




Note that the manhattan distance has an equivalent formula:



dist((x1, y1), (x2, y2)) = max(abs(x1 + y1 - (x2 + y2)), abs(x1 - y1 - (x2 - y2)))


This formula is based on the fact that for any point, the set of
points within a manhattan distance of K form a square rotated by 45
degrees. The benefit of this formula is that if we fix (x2, y2), the
distance will be maximized when x1 + y1 and x1 - y1 are either
maximized or minimized.




Could someone explain in more details how this formula can be derived?










share|cite|improve this question









$endgroup$







  • 1




    $begingroup$
    Why don't you try drawing this square, and determine what these distances represent? Hint: try to determine the coordinates of the corners of this square.
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:32






  • 1




    $begingroup$
    @DavidRicherby The benefit appears to be that for the specific use-case of determining whether there exists a point with distance at most $k$ to some set $S$, it seems we can do this more efficiently, as we only have to find the maximum and minimum of the points in $S$ according to $x_1+y_1$ and $x_1-y_1$ once and then can query for each point in constant time. Do you think there is an easier way to get a constant query time here?
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:44











  • $begingroup$
    I suppose that you could also directly look at the corners of the smallest enclosing 45 degree turned square of these points, and then you end up with basically the same values as the maxima and minima in your dataset. So, in a way, I see that changing the Manhattan distance itself could be a rather complicated way of achieving this.
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:51














6












6








6





$begingroup$


This is from a Kickstart problem:




Note: The Manhattan distance between two squares (r1,c1) and (r2,c2)
is defined as |r1 - r2| + |c1 - c2|, where |*| operator denotes the
absolute value.




Then in the analysis:




Note that the manhattan distance has an equivalent formula:



dist((x1, y1), (x2, y2)) = max(abs(x1 + y1 - (x2 + y2)), abs(x1 - y1 - (x2 - y2)))


This formula is based on the fact that for any point, the set of
points within a manhattan distance of K form a square rotated by 45
degrees. The benefit of this formula is that if we fix (x2, y2), the
distance will be maximized when x1 + y1 and x1 - y1 are either
maximized or minimized.




Could someone explain in more details how this formula can be derived?










share|cite|improve this question









$endgroup$




This is from a Kickstart problem:




Note: The Manhattan distance between two squares (r1,c1) and (r2,c2)
is defined as |r1 - r2| + |c1 - c2|, where |*| operator denotes the
absolute value.




Then in the analysis:




Note that the manhattan distance has an equivalent formula:



dist((x1, y1), (x2, y2)) = max(abs(x1 + y1 - (x2 + y2)), abs(x1 - y1 - (x2 - y2)))


This formula is based on the fact that for any point, the set of
points within a manhattan distance of K form a square rotated by 45
degrees. The benefit of this formula is that if we fix (x2, y2), the
distance will be maximized when x1 + y1 and x1 - y1 are either
maximized or minimized.




Could someone explain in more details how this formula can be derived?







square-grid






share|cite|improve this question













share|cite|improve this question











share|cite|improve this question




share|cite|improve this question










asked Mar 31 at 13:07









Eugene YarmashEugene Yarmash

1334




1334







  • 1




    $begingroup$
    Why don't you try drawing this square, and determine what these distances represent? Hint: try to determine the coordinates of the corners of this square.
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:32






  • 1




    $begingroup$
    @DavidRicherby The benefit appears to be that for the specific use-case of determining whether there exists a point with distance at most $k$ to some set $S$, it seems we can do this more efficiently, as we only have to find the maximum and minimum of the points in $S$ according to $x_1+y_1$ and $x_1-y_1$ once and then can query for each point in constant time. Do you think there is an easier way to get a constant query time here?
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:44











  • $begingroup$
    I suppose that you could also directly look at the corners of the smallest enclosing 45 degree turned square of these points, and then you end up with basically the same values as the maxima and minima in your dataset. So, in a way, I see that changing the Manhattan distance itself could be a rather complicated way of achieving this.
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:51













  • 1




    $begingroup$
    Why don't you try drawing this square, and determine what these distances represent? Hint: try to determine the coordinates of the corners of this square.
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:32






  • 1




    $begingroup$
    @DavidRicherby The benefit appears to be that for the specific use-case of determining whether there exists a point with distance at most $k$ to some set $S$, it seems we can do this more efficiently, as we only have to find the maximum and minimum of the points in $S$ according to $x_1+y_1$ and $x_1-y_1$ once and then can query for each point in constant time. Do you think there is an easier way to get a constant query time here?
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:44











  • $begingroup$
    I suppose that you could also directly look at the corners of the smallest enclosing 45 degree turned square of these points, and then you end up with basically the same values as the maxima and minima in your dataset. So, in a way, I see that changing the Manhattan distance itself could be a rather complicated way of achieving this.
    $endgroup$
    – Discrete lizard
    Mar 31 at 13:51








1




1




$begingroup$
Why don't you try drawing this square, and determine what these distances represent? Hint: try to determine the coordinates of the corners of this square.
$endgroup$
– Discrete lizard
Mar 31 at 13:32




$begingroup$
Why don't you try drawing this square, and determine what these distances represent? Hint: try to determine the coordinates of the corners of this square.
$endgroup$
– Discrete lizard
Mar 31 at 13:32




1




1




$begingroup$
@DavidRicherby The benefit appears to be that for the specific use-case of determining whether there exists a point with distance at most $k$ to some set $S$, it seems we can do this more efficiently, as we only have to find the maximum and minimum of the points in $S$ according to $x_1+y_1$ and $x_1-y_1$ once and then can query for each point in constant time. Do you think there is an easier way to get a constant query time here?
$endgroup$
– Discrete lizard
Mar 31 at 13:44





$begingroup$
@DavidRicherby The benefit appears to be that for the specific use-case of determining whether there exists a point with distance at most $k$ to some set $S$, it seems we can do this more efficiently, as we only have to find the maximum and minimum of the points in $S$ according to $x_1+y_1$ and $x_1-y_1$ once and then can query for each point in constant time. Do you think there is an easier way to get a constant query time here?
$endgroup$
– Discrete lizard
Mar 31 at 13:44













$begingroup$
I suppose that you could also directly look at the corners of the smallest enclosing 45 degree turned square of these points, and then you end up with basically the same values as the maxima and minima in your dataset. So, in a way, I see that changing the Manhattan distance itself could be a rather complicated way of achieving this.
$endgroup$
– Discrete lizard
Mar 31 at 13:51





$begingroup$
I suppose that you could also directly look at the corners of the smallest enclosing 45 degree turned square of these points, and then you end up with basically the same values as the maxima and minima in your dataset. So, in a way, I see that changing the Manhattan distance itself could be a rather complicated way of achieving this.
$endgroup$
– Discrete lizard
Mar 31 at 13:51











1 Answer
1






active

oldest

votes


















6












$begingroup$

Lemma. $|a|+|b|=max(|a+b|, |a-b|)$ for any real number $a$ and $b$.



Proof 1.
$|x|=max(x, -x)$ for all real number $x$. So
$$beginaligned
|a|+|b|
&=max(a, -a) + max(b, -b)\
&=max(a+b, a-b, -a+b, -a-b)\
&=max(max(a+b, -a-b), max(a-b, -(a-b))\
&=max(|a+b|, |a-b|)
endaligned$$



Proof 2.
There are $2 times 2 = 4$ cases.




  • $age 0$


    • $bgt 0$. LHS is $a+b$, RHS is $a+b$.


    • $ble 0$. LHS is $a-b$, RHS is $a-b$.



  • $alt 0$


    • $bgt 0$. LHS is $-a+b$, RHS is $-(a-b)$.


    • $ble 0$. LHS is $-a-b$, RHS is $-(a+b)$.


One dimensionality of Manhattan-distance.



The Manhattan-distance of two points $(x_1, y_1)$ and $(x_2, y_2)$ is either $|(x_1+y_1)-(x_2+y_2)|$ or $|(x_1-y_1)-(x_2-y_2)|$, whichever is larger. That is, $ d((x_1, y_1),(x_2, y_2))= max(|(x_1+y_1)-(x_2+y_2)|, |(x_1-y_1)-(x_2-y_2)|)$$



Proof: By definition,
$$d((x_1, y_1),(x_2, y_2))=|x_1-x_2| + |y_1-y_2|.$$
Now apply the lemma above. QED.



This answer also serves as a complement to another answer of mine.








share|cite|improve this answer









$endgroup$








  • 2




    $begingroup$
    The one dimensionality of Manhattan-distance is the main trick that is applied in the algorithm, as this allows you to sort according to this distance.
    $endgroup$
    – Discrete lizard
    Mar 31 at 15:41










  • $begingroup$
    This is a great explanation, thanks. One question remains though: how is this formula based on the fact that for any point, the set of points within a manhattan distance of K form a square rotated by 45 degrees ?
    $endgroup$
    – Eugene Yarmash
    Mar 31 at 16:10










  • $begingroup$
    @EugeneYarmash Let the given point be $(a,b)$. Then a point (x,y) is within $K$ M-distance of $(a,b)$ if and only if $|x+y-(a+b)|le K$ and $|x-y-(a-b)|le K$. The points defined by $|x+y-(a+b)|le K$ is between two parallel lines, $x+y=a+b+K$ and $x+y=a+b-K$, both of which are in 45 degree with the axises. The points defined by $|x-y-(a-b)|le K$ is between two parallel lines, $x-y=a-b+K$ and $x-y=a-b-K$, both of which are in 45 degree with the axises as well.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:26










  • $begingroup$
    @EugeneYarmash (continued) The Euclidean distance between the first two parallel lines is $sqrt 2K$, which is also the the Euclidean distance between the second two parallel lines. So we got "a square rotated by 45 degree." By the way, I am explaining the logic the other way around, that is, that fact is based on the formula! I believe, it should be better to say "this formula can be understood intuitively from the fact that ..." instead of "this formula is bases on the fact that ...".
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:32










  • $begingroup$
    Images can help understanding a lot (because the super-parallel computation done by human's eyes and brains) but could be deceiving or misleading. A mathematical proof might not be easy to come by or understand but it is much more rigorous.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:36












Your Answer








StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "419"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f106289%2fcan-someone-explain-this-formula-for-calculating-manhattan-distance%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









6












$begingroup$

Lemma. $|a|+|b|=max(|a+b|, |a-b|)$ for any real number $a$ and $b$.



Proof 1.
$|x|=max(x, -x)$ for all real number $x$. So
$$beginaligned
|a|+|b|
&=max(a, -a) + max(b, -b)\
&=max(a+b, a-b, -a+b, -a-b)\
&=max(max(a+b, -a-b), max(a-b, -(a-b))\
&=max(|a+b|, |a-b|)
endaligned$$



Proof 2.
There are $2 times 2 = 4$ cases.




  • $age 0$


    • $bgt 0$. LHS is $a+b$, RHS is $a+b$.


    • $ble 0$. LHS is $a-b$, RHS is $a-b$.



  • $alt 0$


    • $bgt 0$. LHS is $-a+b$, RHS is $-(a-b)$.


    • $ble 0$. LHS is $-a-b$, RHS is $-(a+b)$.


One dimensionality of Manhattan-distance.



The Manhattan-distance of two points $(x_1, y_1)$ and $(x_2, y_2)$ is either $|(x_1+y_1)-(x_2+y_2)|$ or $|(x_1-y_1)-(x_2-y_2)|$, whichever is larger. That is, $ d((x_1, y_1),(x_2, y_2))= max(|(x_1+y_1)-(x_2+y_2)|, |(x_1-y_1)-(x_2-y_2)|)$$



Proof: By definition,
$$d((x_1, y_1),(x_2, y_2))=|x_1-x_2| + |y_1-y_2|.$$
Now apply the lemma above. QED.



This answer also serves as a complement to another answer of mine.








share|cite|improve this answer









$endgroup$








  • 2




    $begingroup$
    The one dimensionality of Manhattan-distance is the main trick that is applied in the algorithm, as this allows you to sort according to this distance.
    $endgroup$
    – Discrete lizard
    Mar 31 at 15:41










  • $begingroup$
    This is a great explanation, thanks. One question remains though: how is this formula based on the fact that for any point, the set of points within a manhattan distance of K form a square rotated by 45 degrees ?
    $endgroup$
    – Eugene Yarmash
    Mar 31 at 16:10










  • $begingroup$
    @EugeneYarmash Let the given point be $(a,b)$. Then a point (x,y) is within $K$ M-distance of $(a,b)$ if and only if $|x+y-(a+b)|le K$ and $|x-y-(a-b)|le K$. The points defined by $|x+y-(a+b)|le K$ is between two parallel lines, $x+y=a+b+K$ and $x+y=a+b-K$, both of which are in 45 degree with the axises. The points defined by $|x-y-(a-b)|le K$ is between two parallel lines, $x-y=a-b+K$ and $x-y=a-b-K$, both of which are in 45 degree with the axises as well.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:26










  • $begingroup$
    @EugeneYarmash (continued) The Euclidean distance between the first two parallel lines is $sqrt 2K$, which is also the the Euclidean distance between the second two parallel lines. So we got "a square rotated by 45 degree." By the way, I am explaining the logic the other way around, that is, that fact is based on the formula! I believe, it should be better to say "this formula can be understood intuitively from the fact that ..." instead of "this formula is bases on the fact that ...".
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:32










  • $begingroup$
    Images can help understanding a lot (because the super-parallel computation done by human's eyes and brains) but could be deceiving or misleading. A mathematical proof might not be easy to come by or understand but it is much more rigorous.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:36
















6












$begingroup$

Lemma. $|a|+|b|=max(|a+b|, |a-b|)$ for any real number $a$ and $b$.



Proof 1.
$|x|=max(x, -x)$ for all real number $x$. So
$$beginaligned
|a|+|b|
&=max(a, -a) + max(b, -b)\
&=max(a+b, a-b, -a+b, -a-b)\
&=max(max(a+b, -a-b), max(a-b, -(a-b))\
&=max(|a+b|, |a-b|)
endaligned$$



Proof 2.
There are $2 times 2 = 4$ cases.




  • $age 0$


    • $bgt 0$. LHS is $a+b$, RHS is $a+b$.


    • $ble 0$. LHS is $a-b$, RHS is $a-b$.



  • $alt 0$


    • $bgt 0$. LHS is $-a+b$, RHS is $-(a-b)$.


    • $ble 0$. LHS is $-a-b$, RHS is $-(a+b)$.


One dimensionality of Manhattan-distance.



The Manhattan-distance of two points $(x_1, y_1)$ and $(x_2, y_2)$ is either $|(x_1+y_1)-(x_2+y_2)|$ or $|(x_1-y_1)-(x_2-y_2)|$, whichever is larger. That is, $ d((x_1, y_1),(x_2, y_2))= max(|(x_1+y_1)-(x_2+y_2)|, |(x_1-y_1)-(x_2-y_2)|)$$



Proof: By definition,
$$d((x_1, y_1),(x_2, y_2))=|x_1-x_2| + |y_1-y_2|.$$
Now apply the lemma above. QED.



This answer also serves as a complement to another answer of mine.








share|cite|improve this answer









$endgroup$








  • 2




    $begingroup$
    The one dimensionality of Manhattan-distance is the main trick that is applied in the algorithm, as this allows you to sort according to this distance.
    $endgroup$
    – Discrete lizard
    Mar 31 at 15:41










  • $begingroup$
    This is a great explanation, thanks. One question remains though: how is this formula based on the fact that for any point, the set of points within a manhattan distance of K form a square rotated by 45 degrees ?
    $endgroup$
    – Eugene Yarmash
    Mar 31 at 16:10










  • $begingroup$
    @EugeneYarmash Let the given point be $(a,b)$. Then a point (x,y) is within $K$ M-distance of $(a,b)$ if and only if $|x+y-(a+b)|le K$ and $|x-y-(a-b)|le K$. The points defined by $|x+y-(a+b)|le K$ is between two parallel lines, $x+y=a+b+K$ and $x+y=a+b-K$, both of which are in 45 degree with the axises. The points defined by $|x-y-(a-b)|le K$ is between two parallel lines, $x-y=a-b+K$ and $x-y=a-b-K$, both of which are in 45 degree with the axises as well.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:26










  • $begingroup$
    @EugeneYarmash (continued) The Euclidean distance between the first two parallel lines is $sqrt 2K$, which is also the the Euclidean distance between the second two parallel lines. So we got "a square rotated by 45 degree." By the way, I am explaining the logic the other way around, that is, that fact is based on the formula! I believe, it should be better to say "this formula can be understood intuitively from the fact that ..." instead of "this formula is bases on the fact that ...".
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:32










  • $begingroup$
    Images can help understanding a lot (because the super-parallel computation done by human's eyes and brains) but could be deceiving or misleading. A mathematical proof might not be easy to come by or understand but it is much more rigorous.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:36














6












6








6





$begingroup$

Lemma. $|a|+|b|=max(|a+b|, |a-b|)$ for any real number $a$ and $b$.



Proof 1.
$|x|=max(x, -x)$ for all real number $x$. So
$$beginaligned
|a|+|b|
&=max(a, -a) + max(b, -b)\
&=max(a+b, a-b, -a+b, -a-b)\
&=max(max(a+b, -a-b), max(a-b, -(a-b))\
&=max(|a+b|, |a-b|)
endaligned$$



Proof 2.
There are $2 times 2 = 4$ cases.




  • $age 0$


    • $bgt 0$. LHS is $a+b$, RHS is $a+b$.


    • $ble 0$. LHS is $a-b$, RHS is $a-b$.



  • $alt 0$


    • $bgt 0$. LHS is $-a+b$, RHS is $-(a-b)$.


    • $ble 0$. LHS is $-a-b$, RHS is $-(a+b)$.


One dimensionality of Manhattan-distance.



The Manhattan-distance of two points $(x_1, y_1)$ and $(x_2, y_2)$ is either $|(x_1+y_1)-(x_2+y_2)|$ or $|(x_1-y_1)-(x_2-y_2)|$, whichever is larger. That is, $ d((x_1, y_1),(x_2, y_2))= max(|(x_1+y_1)-(x_2+y_2)|, |(x_1-y_1)-(x_2-y_2)|)$$



Proof: By definition,
$$d((x_1, y_1),(x_2, y_2))=|x_1-x_2| + |y_1-y_2|.$$
Now apply the lemma above. QED.



This answer also serves as a complement to another answer of mine.








share|cite|improve this answer









$endgroup$



Lemma. $|a|+|b|=max(|a+b|, |a-b|)$ for any real number $a$ and $b$.



Proof 1.
$|x|=max(x, -x)$ for all real number $x$. So
$$beginaligned
|a|+|b|
&=max(a, -a) + max(b, -b)\
&=max(a+b, a-b, -a+b, -a-b)\
&=max(max(a+b, -a-b), max(a-b, -(a-b))\
&=max(|a+b|, |a-b|)
endaligned$$



Proof 2.
There are $2 times 2 = 4$ cases.




  • $age 0$


    • $bgt 0$. LHS is $a+b$, RHS is $a+b$.


    • $ble 0$. LHS is $a-b$, RHS is $a-b$.



  • $alt 0$


    • $bgt 0$. LHS is $-a+b$, RHS is $-(a-b)$.


    • $ble 0$. LHS is $-a-b$, RHS is $-(a+b)$.


One dimensionality of Manhattan-distance.



The Manhattan-distance of two points $(x_1, y_1)$ and $(x_2, y_2)$ is either $|(x_1+y_1)-(x_2+y_2)|$ or $|(x_1-y_1)-(x_2-y_2)|$, whichever is larger. That is, $ d((x_1, y_1),(x_2, y_2))= max(|(x_1+y_1)-(x_2+y_2)|, |(x_1-y_1)-(x_2-y_2)|)$$



Proof: By definition,
$$d((x_1, y_1),(x_2, y_2))=|x_1-x_2| + |y_1-y_2|.$$
Now apply the lemma above. QED.



This answer also serves as a complement to another answer of mine.









share|cite|improve this answer












share|cite|improve this answer



share|cite|improve this answer










answered Mar 31 at 14:42









Apass.JackApass.Jack

14.2k1940




14.2k1940







  • 2




    $begingroup$
    The one dimensionality of Manhattan-distance is the main trick that is applied in the algorithm, as this allows you to sort according to this distance.
    $endgroup$
    – Discrete lizard
    Mar 31 at 15:41










  • $begingroup$
    This is a great explanation, thanks. One question remains though: how is this formula based on the fact that for any point, the set of points within a manhattan distance of K form a square rotated by 45 degrees ?
    $endgroup$
    – Eugene Yarmash
    Mar 31 at 16:10










  • $begingroup$
    @EugeneYarmash Let the given point be $(a,b)$. Then a point (x,y) is within $K$ M-distance of $(a,b)$ if and only if $|x+y-(a+b)|le K$ and $|x-y-(a-b)|le K$. The points defined by $|x+y-(a+b)|le K$ is between two parallel lines, $x+y=a+b+K$ and $x+y=a+b-K$, both of which are in 45 degree with the axises. The points defined by $|x-y-(a-b)|le K$ is between two parallel lines, $x-y=a-b+K$ and $x-y=a-b-K$, both of which are in 45 degree with the axises as well.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:26










  • $begingroup$
    @EugeneYarmash (continued) The Euclidean distance between the first two parallel lines is $sqrt 2K$, which is also the the Euclidean distance between the second two parallel lines. So we got "a square rotated by 45 degree." By the way, I am explaining the logic the other way around, that is, that fact is based on the formula! I believe, it should be better to say "this formula can be understood intuitively from the fact that ..." instead of "this formula is bases on the fact that ...".
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:32










  • $begingroup$
    Images can help understanding a lot (because the super-parallel computation done by human's eyes and brains) but could be deceiving or misleading. A mathematical proof might not be easy to come by or understand but it is much more rigorous.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:36













  • 2




    $begingroup$
    The one dimensionality of Manhattan-distance is the main trick that is applied in the algorithm, as this allows you to sort according to this distance.
    $endgroup$
    – Discrete lizard
    Mar 31 at 15:41










  • $begingroup$
    This is a great explanation, thanks. One question remains though: how is this formula based on the fact that for any point, the set of points within a manhattan distance of K form a square rotated by 45 degrees ?
    $endgroup$
    – Eugene Yarmash
    Mar 31 at 16:10










  • $begingroup$
    @EugeneYarmash Let the given point be $(a,b)$. Then a point (x,y) is within $K$ M-distance of $(a,b)$ if and only if $|x+y-(a+b)|le K$ and $|x-y-(a-b)|le K$. The points defined by $|x+y-(a+b)|le K$ is between two parallel lines, $x+y=a+b+K$ and $x+y=a+b-K$, both of which are in 45 degree with the axises. The points defined by $|x-y-(a-b)|le K$ is between two parallel lines, $x-y=a-b+K$ and $x-y=a-b-K$, both of which are in 45 degree with the axises as well.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:26










  • $begingroup$
    @EugeneYarmash (continued) The Euclidean distance between the first two parallel lines is $sqrt 2K$, which is also the the Euclidean distance between the second two parallel lines. So we got "a square rotated by 45 degree." By the way, I am explaining the logic the other way around, that is, that fact is based on the formula! I believe, it should be better to say "this formula can be understood intuitively from the fact that ..." instead of "this formula is bases on the fact that ...".
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:32










  • $begingroup$
    Images can help understanding a lot (because the super-parallel computation done by human's eyes and brains) but could be deceiving or misleading. A mathematical proof might not be easy to come by or understand but it is much more rigorous.
    $endgroup$
    – Apass.Jack
    Mar 31 at 16:36








2




2




$begingroup$
The one dimensionality of Manhattan-distance is the main trick that is applied in the algorithm, as this allows you to sort according to this distance.
$endgroup$
– Discrete lizard
Mar 31 at 15:41




$begingroup$
The one dimensionality of Manhattan-distance is the main trick that is applied in the algorithm, as this allows you to sort according to this distance.
$endgroup$
– Discrete lizard
Mar 31 at 15:41












$begingroup$
This is a great explanation, thanks. One question remains though: how is this formula based on the fact that for any point, the set of points within a manhattan distance of K form a square rotated by 45 degrees ?
$endgroup$
– Eugene Yarmash
Mar 31 at 16:10




$begingroup$
This is a great explanation, thanks. One question remains though: how is this formula based on the fact that for any point, the set of points within a manhattan distance of K form a square rotated by 45 degrees ?
$endgroup$
– Eugene Yarmash
Mar 31 at 16:10












$begingroup$
@EugeneYarmash Let the given point be $(a,b)$. Then a point (x,y) is within $K$ M-distance of $(a,b)$ if and only if $|x+y-(a+b)|le K$ and $|x-y-(a-b)|le K$. The points defined by $|x+y-(a+b)|le K$ is between two parallel lines, $x+y=a+b+K$ and $x+y=a+b-K$, both of which are in 45 degree with the axises. The points defined by $|x-y-(a-b)|le K$ is between two parallel lines, $x-y=a-b+K$ and $x-y=a-b-K$, both of which are in 45 degree with the axises as well.
$endgroup$
– Apass.Jack
Mar 31 at 16:26




$begingroup$
@EugeneYarmash Let the given point be $(a,b)$. Then a point (x,y) is within $K$ M-distance of $(a,b)$ if and only if $|x+y-(a+b)|le K$ and $|x-y-(a-b)|le K$. The points defined by $|x+y-(a+b)|le K$ is between two parallel lines, $x+y=a+b+K$ and $x+y=a+b-K$, both of which are in 45 degree with the axises. The points defined by $|x-y-(a-b)|le K$ is between two parallel lines, $x-y=a-b+K$ and $x-y=a-b-K$, both of which are in 45 degree with the axises as well.
$endgroup$
– Apass.Jack
Mar 31 at 16:26












$begingroup$
@EugeneYarmash (continued) The Euclidean distance between the first two parallel lines is $sqrt 2K$, which is also the the Euclidean distance between the second two parallel lines. So we got "a square rotated by 45 degree." By the way, I am explaining the logic the other way around, that is, that fact is based on the formula! I believe, it should be better to say "this formula can be understood intuitively from the fact that ..." instead of "this formula is bases on the fact that ...".
$endgroup$
– Apass.Jack
Mar 31 at 16:32




$begingroup$
@EugeneYarmash (continued) The Euclidean distance between the first two parallel lines is $sqrt 2K$, which is also the the Euclidean distance between the second two parallel lines. So we got "a square rotated by 45 degree." By the way, I am explaining the logic the other way around, that is, that fact is based on the formula! I believe, it should be better to say "this formula can be understood intuitively from the fact that ..." instead of "this formula is bases on the fact that ...".
$endgroup$
– Apass.Jack
Mar 31 at 16:32












$begingroup$
Images can help understanding a lot (because the super-parallel computation done by human's eyes and brains) but could be deceiving or misleading. A mathematical proof might not be easy to come by or understand but it is much more rigorous.
$endgroup$
– Apass.Jack
Mar 31 at 16:36





$begingroup$
Images can help understanding a lot (because the super-parallel computation done by human's eyes and brains) but could be deceiving or misleading. A mathematical proof might not be easy to come by or understand but it is much more rigorous.
$endgroup$
– Apass.Jack
Mar 31 at 16:36


















draft saved

draft discarded
















































Thanks for contributing an answer to Computer Science Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

Use MathJax to format equations. MathJax reference.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f106289%2fcan-someone-explain-this-formula-for-calculating-manhattan-distance%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Adding axes to figuresAdding axes labels to LaTeX figuresLaTeX equivalent of ConTeXt buffersRotate a node but not its content: the case of the ellipse decorationHow to define the default vertical distance between nodes?TikZ scaling graphic and adjust node position and keep font sizeNumerical conditional within tikz keys?adding axes to shapesAlign axes across subfiguresAdding figures with a certain orderLine up nested tikz enviroments or how to get rid of themAdding axes labels to LaTeX figures

Luettelo Yhdysvaltain laivaston lentotukialuksista Lähteet | Navigointivalikko

Gary (muusikko) Sisällysluettelo Historia | Rockin' High | Lähteet | Aiheesta muualla | NavigointivalikkoInfobox OKTuomas "Gary" Keskinen Ancaran kitaristiksiProjekti Rockin' High