[proofplan]
We compare convex bodies through their support functions, which measure the maximal value of a linear functional on a given compact set. The support function converts Minkowski addition into pointwise addition, so the assumed equality $K+M=L+M$ implies equality of the support functions of $K$ and $L$. Finally, a compact convex set is exactly the intersection of the closed half-spaces determined by its support function, so equal support functions force the underlying convex bodies to be equal.
[/proofplan]
[step:Define support functions and apply them to the assumed equality]
For every nonempty compact set $A \subset \mathbb{R}^n$, define its support function
\begin{align*}
h_A: \mathbb{R}^n &\to \mathbb{R} \\
u &\mapsto \max_{a \in A} u \cdot a.
\end{align*}
The maximum exists because $A$ is compact and the map $a \mapsto u \cdot a$ is continuous on $A$.
Since $K+M=L+M$ as subsets of $\mathbb{R}^n$, their support functions agree:
\begin{align*}
h_{K+M}(u)=h_{L+M}(u)
\end{align*}
for every $u \in \mathbb{R}^n$.
[/step]
[step:Use additivity of support functions under Minkowski addition]
We show that support functions are additive under Minkowski sums. Let $A,B \subset \mathbb{R}^n$ be nonempty compact sets. For every $u \in \mathbb{R}^n$,
\begin{align*}
h_{A+B}(u)
&= \max_{x \in A+B} u \cdot x \\
&= \max_{\substack{a \in A\\ b \in B}} u \cdot (a+b) \\
&= \max_{\substack{a \in A\\ b \in B}} \bigl(u \cdot a + u \cdot b\bigr) \\
&= \max_{a \in A} u \cdot a + \max_{b \in B} u \cdot b \\
&= h_A(u)+h_B(u).
\end{align*}
Applying this with $(A,B)=(K,M)$ and $(A,B)=(L,M)$ gives
\begin{align*}
h_K(u)+h_M(u)=h_L(u)+h_M(u)
\end{align*}
for every $u \in \mathbb{R}^n$. Subtracting the real number $h_M(u)$ from both sides yields
\begin{align*}
h_K(u)=h_L(u)
\end{align*}
for every $u \in \mathbb{R}^n$.
[guided]
The point of introducing support functions is that they translate Minkowski addition into ordinary addition of real-valued functions. Fix $u \in \mathbb{R}^n$. For nonempty compact sets $A,B \subset \mathbb{R}^n$, every element of $A+B$ has the form $a+b$ with $a \in A$ and $b \in B$, so
\begin{align*}
h_{A+B}(u)
&= \max_{x \in A+B} u \cdot x \\
&= \max_{\substack{a \in A\\ b \in B}} u \cdot (a+b).
\end{align*}
The Euclidean inner product is linear in its second argument, hence
\begin{align*}
u \cdot (a+b)=u \cdot a+u \cdot b.
\end{align*}
Therefore
\begin{align*}
h_{A+B}(u)
&= \max_{\substack{a \in A\\ b \in B}} \bigl(u \cdot a+u \cdot b\bigr) \\
&= \max_{a \in A} u \cdot a+\max_{b \in B} u \cdot b \\
&= h_A(u)+h_B(u).
\end{align*}
The fourth equality holds because the two variables are independent: choosing $a$ to maximize $u \cdot a$ over $A$ and $b$ to maximize $u \cdot b$ over $B$ simultaneously maximizes their sum.
Now use the hypothesis $K+M=L+M$. Since equal sets have equal support functions,
\begin{align*}
h_{K+M}(u)=h_{L+M}(u).
\end{align*}
By additivity,
\begin{align*}
h_K(u)+h_M(u)=h_L(u)+h_M(u).
\end{align*}
Both sides are [real numbers](/page/Real%20Numbers), so subtracting $h_M(u)$ gives
\begin{align*}
h_K(u)=h_L(u).
\end{align*}
Because $u \in \mathbb{R}^n$ was arbitrary, $h_K=h_L$ on all of $\mathbb{R}^n$.
[/guided]
[/step]
[step:Recover a compact convex set from its support function]
Let $A \subset \mathbb{R}^n$ be a nonempty compact convex set. Define the set determined by the support half-spaces of $A$ by
\begin{align*}
S_A := \bigcap_{u \in \mathbb{R}^n} \{x \in \mathbb{R}^n : u \cdot x \le h_A(u)\}.
\end{align*}
We prove that $S_A=A$.
First, if $x \in A$, then for every $u \in \mathbb{R}^n$,
\begin{align*}
u \cdot x \le \max_{a \in A} u \cdot a = h_A(u),
\end{align*}
so $x \in S_A$. Hence $A \subset S_A$.
Conversely, let $x \in \mathbb{R}^n \setminus A$. Since $A$ is compact, there exists $y \in A$ minimizing the map $a \mapsto |x-a|$ on $A$. Define
\begin{align*}
v := x-y \in \mathbb{R}^n.
\end{align*}
Then $v \ne 0$. For any $z \in A$ and any $t \in [0,1]$, convexity gives $y+t(z-y) \in A$. By the minimizing property of $y$,
\begin{align*}
|x-y|^2
&\le |x-y-t(z-y)|^2 \\
&= |x-y|^2 - 2t\, v \cdot (z-y) + t^2 |z-y|^2.
\end{align*}
For $t \in (0,1]$, subtracting $|x-y|^2$ and dividing by $t$ gives
\begin{align*}
2\,v \cdot (z-y) \le t |z-y|^2.
\end{align*}
Letting $t \to 0^+$ yields
\begin{align*}
v \cdot z \le v \cdot y.
\end{align*}
Since $z \in A$ was arbitrary,
\begin{align*}
h_A(v)=\max_{z \in A} v \cdot z \le v \cdot y.
\end{align*}
But
\begin{align*}
v \cdot x
&= v \cdot y + v \cdot (x-y) \\
&= v \cdot y + |v|^2 \\
&> v \cdot y.
\end{align*}
Thus $v \cdot x > h_A(v)$, so $x \notin S_A$. Therefore $S_A \subset A$, and hence $S_A=A$.
[guided]
We now justify the reconstruction formula for compact convex sets. Let $A \subset \mathbb{R}^n$ be nonempty, compact, and convex, and define
\begin{align*}
S_A := \bigcap_{u \in \mathbb{R}^n} \{x \in \mathbb{R}^n : u \cdot x \le h_A(u)\}.
\end{align*}
This is the set of all points that lie in every closed half-space whose boundary supports $A$ in some direction $u$.
The inclusion $A \subset S_A$ is immediate from the definition of $h_A$, but we spell it out. If $x \in A$, then $u \cdot x$ is one of the values over which the maximum defining $h_A(u)$ is taken. Hence, for every $u \in \mathbb{R}^n$,
\begin{align*}
u \cdot x \le \max_{a \in A} u \cdot a = h_A(u).
\end{align*}
Therefore $x$ belongs to every half-space in the intersection, so $x \in S_A$.
For the reverse inclusion, take a point $x \in \mathbb{R}^n \setminus A$. We need to find one direction $v$ whose support half-space contains $A$ but excludes $x$. Since $A$ is compact and the function $a \mapsto |x-a|$ is continuous, there exists $y \in A$ such that
\begin{align*}
|x-y|=\min_{a \in A}|x-a|.
\end{align*}
Define
\begin{align*}
v := x-y \in \mathbb{R}^n.
\end{align*}
Because $x \notin A$ and $y \in A$, we have $v \ne 0$.
We claim that the hyperplane perpendicular to $v$ through $y$ separates $x$ from $A$. Fix $z \in A$. For each $t \in [0,1]$, convexity of $A$ gives
\begin{align*}
y+t(z-y) \in A.
\end{align*}
Since $y$ minimizes the distance from $x$ to $A$, we have
\begin{align*}
|x-y|^2 \le |x-y-t(z-y)|^2.
\end{align*}
Using $v=x-y$, expand the square:
\begin{align*}
|x-y-t(z-y)|^2
&= |v-t(z-y)|^2 \\
&= |v|^2 - 2t\,v \cdot (z-y)+t^2|z-y|^2 \\
&= |x-y|^2 - 2t\,v \cdot (z-y)+t^2|z-y|^2.
\end{align*}
Thus, for every $t \in (0,1]$,
\begin{align*}
2\,v \cdot (z-y) \le t|z-y|^2.
\end{align*}
Letting $t \to 0^+$ gives
\begin{align*}
v \cdot (z-y) \le 0,
\end{align*}
or equivalently
\begin{align*}
v \cdot z \le v \cdot y.
\end{align*}
Because $z \in A$ was arbitrary,
\begin{align*}
h_A(v)=\max_{z \in A} v \cdot z \le v \cdot y.
\end{align*}
On the other hand,
\begin{align*}
v \cdot x
&= v \cdot y + v \cdot (x-y) \\
&= v \cdot y + |v|^2.
\end{align*}
Since $v \ne 0$, $|v|^2>0$, and therefore
\begin{align*}
v \cdot x > v \cdot y \ge h_A(v).
\end{align*}
So $x$ violates the defining inequality for $S_A$ in the direction $v$, namely $v \cdot x \le h_A(v)$. Hence $x \notin S_A$.
We have shown that every point outside $A$ is outside $S_A$, so $S_A \subset A$. Together with $A \subset S_A$, this proves $S_A=A$.
[/guided]
[/step]
[step:Conclude that the two convex bodies are equal]
Apply the reconstruction formula to $K$ and $L$. Since $h_K=h_L$ on $\mathbb{R}^n$,
\begin{align*}
K
&= \bigcap_{u \in \mathbb{R}^n} \{x \in \mathbb{R}^n : u \cdot x \le h_K(u)\} \\
&= \bigcap_{u \in \mathbb{R}^n} \{x \in \mathbb{R}^n : u \cdot x \le h_L(u)\} \\
&= L.
\end{align*}
This proves the cancellation law for Minkowski addition of convex bodies.
[/step]