Documentation

Cayley.Soundness.Rodrigues

Exact axis-angle decomposition #

The local balanced-support argument needs an exact finite-rotation identity, not an infinitesimal approximation. We obtain it from the existing theorem that every element of SO(3) is orthogonally conjugate to a rotation about the z axis.

noncomputable def Cayley.BalancedSupport.zFirst (v : Euc(3)) :
Equations
Instances For
    noncomputable def Cayley.BalancedSupport.zRemainder (v : Euc(3)) :
    Equations
    Instances For
      noncomputable def Cayley.BalancedSupport.cross3 (v w : Euc(3)) :

      Euclidean-space wrapper for the ordinary three-dimensional cross product.

      Equations
      Instances For

        The standard unit z vector.

        Equations
        Instances For
          def Cayley.BalancedSupport.vecRows (x y z : Fin 3 → ℝ) :
          Matrix (Fin 3) (Fin 3) ℝ
          Equations
          Instances For
            theorem Cayley.BalancedSupport.oriented_frame_first_inner (frame : Euc(3) ≃ₗᵢ[ℝ] Euc(3)) (inverseMatrix : Matrix (Fin 3) (Fin 3) ℝ) (hinverse : ∀ (x : Euc(3)), (frame.symm x).ofLp = inverseMatrix.mulVec x.ofLp) (v d : Euc(3)) :
            inner ℝ d (frame (zFirst (frame.symm v))) = inverseMatrix.det * inner ℝ (frame zAxis) (cross3 v d)

            Orientation-preserving orthonormal frames carry the standard infinitesimal z rotation to cross product with their z axis.

            An axis-angle presentation of a three-dimensional rotation. The axis is encoded by the orthonormal frame taking the standard z axis to that axis.

            Instances For
              Equations
              Instances For

                Every special orthogonal matrix has an exact AxisAngle presentation with angle in (-π,π].