code: def sym_log_map(cls, q, p):
          
          inv_sqrt_q = (q ** (-0.5))
          return Quaternion.log(inv_sqrt_q * p * inv_sqrt_q)
docs: Quaternion symmetrized logarithm map.
  
          Find the symmetrized logarithm map on the quaternion Riemannian manifold.
  
          Params:
               q: the base point at which the logarithm is computed, i.e.
                  a Quaternion object
               p: the argument of the quaternion map, a Quaternion object
  
          Returns:
              A tangent vector corresponding to the symmetrized geodesic curve formulation.
  
          Note:
              Information on the symmetrized formulations given in [Source](https://www.researchgate.net/publication/267191489_Riemannian_L_p_Averaging_on_Lie_Group_of_Nonzero_Quaternions).