Physlib

Physlib.Mathematics.CrossProduct

The cross product of three-dimensional vectors

Identities for the cross product `⨯₃` on `Fin 3 → ℝ`, beyond those already in Mathlib, used in the formalisation of rigid-body dynamics.

3 declarations

theorem

(v×(w×v))i=(kvk2)wi(jvjwj)vi(v \times (w \times v))_i = (\sum_k v_k^2) w_i - (\sum_j v_j w_j) v_i

For any two vectors v,wR3v, w \in \mathbb{R}^3 and any index i{0,1,2}i \in \{0, 1, 2\}, the ii-th component of the triple cross product v×(w×v)v \times (w \times v) is given by the identity: (v×(w×v))i=(kvk2)wi(jvjwj)vi(v \times (w \times v))_i = \left(\sum_k v_k^2\right) w_i - \left(\sum_j v_j w_j\right) v_i where kvk2\sum_k v_k^2 corresponds to the squared magnitude v2\|v\|^2 and jvjwj\sum_j v_j w_j corresponds to the dot product vwv \cdot w.

theorem

w(v×(w×v))=(w×v)(w×v)w \cdot (v \times (w \times v)) = (w \times v) \cdot (w \times v)

Let RR be a commutative ring. For any two three-dimensional vectors v,wR3v, w \in R^3, the dot product of ww with the vector triple product v×(w×v)v \times (w \times v) satisfies the identity: w(v×(w×v))=(w×v)(w×v)w \cdot (v \times (w \times v)) = (w \times v) \cdot (w \times v) In the specific case where R=RR = \mathbb{R}, this identity shows that contracting ww with v×(w×v)v \times (w \times v) yields the squared length of the cross product, w×v2|w \times v|^2.

theorem

The squared length ω×v2\|\omega \times v\|^2 is a smooth function of vv

For a fixed vector ωR3\omega \in \mathbb{R}^3, the function f:R3Rf: \mathbb{R}^3 \to \mathbb{R} defined by v(ω×v)(ω×v)v \mapsto (\omega \times v) \cdot (\omega \times v) is smooth (of class CC^\infty). The expression (ω×v)(ω×v)(\omega \times v) \cdot (\omega \times v) represents the squared magnitude ω×v2\|\omega \times v\|^2 of the cross product of ω\omega and vv.