[proofplan]
We study the fiberwise negation map $a: E \to E$, $v \mapsto -v$. Since $d$ is odd, $a$ reverses orientation on each fiber and therefore pulls the Thom class back to its negative: $a^*(u_E) = -u_E$. On the other hand, $a$ is a bundle map covering the identity, so $\pi \circ a = \pi$ and $a \circ s_0 = s_0$, which forces $e(E) = s_0^*(q(a^*(u_E))) = s_0^*(q(-u_E)) = -e(E)$. Adding $e(E)$ to both sides gives $2e(E) = 0$.
[/proofplan]
[step:Define the fiberwise negation map and determine its action on the Thom class]
Define the fiberwise negation map
\begin{align*}
a: E &\to E, \quad v \mapsto -v.
\end{align*}
This is a bundle map covering $\operatorname{id}_X$: for each $x \in X$, the restriction $a_x: E_x \to E_x$ is the linear map $v \mapsto -v$. In particular, $a$ maps $E^\#$ to $E^\#$, so $a$ induces a map of pairs $(E, E^\#) \to (E, E^\#)$.
On each fiber $E_x \cong \mathbb{R}^d$, the negation map $v \mapsto -v$ is the composition of $d$ reflections (one through each coordinate hyperplane). Each reflection acts as multiplication by $-1$ on $H^d(E_x, E_x^\#; R)$ (by the [Reflections Have Degree $-1$](/theorems/2246) result and the isomorphism $H^d(\mathbb{R}^d, \mathbb{R}^d \setminus \{0\}; R) \cong \tilde{H}^{d-1}(S^{d-1}; R)$). Since $d$ is odd, $d$ reflections produce $(-1)^d = -1$. Therefore, on each fiber:
\begin{align*}
a_x^*(\varepsilon_x) = (-1)^d \varepsilon_x = -\varepsilon_x.
\end{align*}
By uniqueness of the Thom class (the [Thom Isomorphism Theorem](/theorems/2283) guarantees that $u_E$ is the unique class restricting to $\varepsilon_x$ on each fiber), and since $a^*(u_E)$ restricts to $a_x^*(\varepsilon_x) = -\varepsilon_x$ on each fiber, we conclude
\begin{align*}
a^*(u_E) = -u_E \in H^d(E, E^\#; R).
\end{align*}
[guided]
Why does the negation map $v \mapsto -v$ act as $(-1)^d$ on fiber cohomology? The map $-\operatorname{id}: \mathbb{R}^d \to \mathbb{R}^d$ is the composition of the $d$ coordinate reflections $r_1, \ldots, r_d$, where $r_i$ negates the $i$-th coordinate. Each $r_i$ acts on $H^d(\mathbb{R}^d, \mathbb{R}^d \setminus \{0\}; R)$ as multiplication by $-1$ (this follows from the degree computation for reflections on $S^{d-1}$, transferred via the isomorphism $H^d(\mathbb{R}^d, \mathbb{R}^d \setminus \{0\}) \cong \tilde{H}^{d-1}(S^{d-1})$). Composing $d$ such reflections gives $(-1)^d$.
When $d$ is even, $(-1)^d = +1$ and the negation map preserves the Thom class — this is why the argument fails for even-rank bundles.
The uniqueness part of the Thom isomorphism is essential here. The class $a^*(u_E)$ restricts to $-\varepsilon_x$ on each fiber, so it is the Thom class for the opposite orientation. Since $-u_E$ also restricts to $-\varepsilon_x$ on each fiber, uniqueness forces $a^*(u_E) = -u_E$.
[/guided]
[/step]
[step:Show $a$ acts as the identity on the Euler class]
Since $a$ covers $\operatorname{id}_X$, we have $\pi \circ a = \pi$. Moreover, the zero section is fixed by negation: $a \circ s_0 = s_0$ (since $a(0_x) = -0_x = 0_x$ for all $x$). The natural map $q: H^d(E, E^\#; R) \to H^d(E; R)$ is functorial, so $q(a^*(u_E)) = a^*(q(u_E))$.
Using the identity $a^*(u_E) = -u_E$ from the previous step:
\begin{align*}
s_0^*(q(-u_E)) = s_0^*(-q(u_E)) = -s_0^*(q(u_E)) = -e(E).
\end{align*}
On the other hand, since $a \circ s_0 = s_0$:
\begin{align*}
s_0^*(a^*(q(u_E))) = (a \circ s_0)^*(q(u_E)) = s_0^*(q(u_E)) = e(E).
\end{align*}
Combining these two computations (both evaluate $s_0^*(q(a^*(u_E)))$, using $a^*(u_E) = -u_E$ in the first and $a \circ s_0 = s_0$ in the second):
\begin{align*}
e(E) = -e(E).
\end{align*}
[guided]
The argument exploits a symmetry: the negation map $a$ simultaneously
- **reverses** the Thom class ($a^*(u_E) = -u_E$), which pushes toward $e(E) = -e(E)$, and
- **fixes** the zero section ($a \circ s_0 = s_0$), which forces $s_0^* \circ a^* = s_0^*$.
These two facts are compatible only if $e(E) = -e(E)$, i.e., $2e(E) = 0$.
Why does $a$ fix the zero section? Because the zero vector in each fiber is its own negative. Why does $a$ reverse the Thom class? Because in odd dimensions, negation reverses orientation. The combination of these two properties is the heart of the proof.
[/guided]
[/step]
[step:Conclude $2e(E) = 0$]
From $e(E) = -e(E)$, adding $e(E)$ to both sides gives
\begin{align*}
2e(E) = 0 \in H^d(X; R).
\end{align*}
This completes the proof that the Euler class of an odd-rank oriented vector bundle is $2$-torsion.
[/step]