class_docstr: Class for invariant metrics on Matrix Lie groups.
  
  This class supports both left and right invariant metrics
  which exist on Lie groups.
  
  Parameters
  ----------
  space : LieGroup
      Group to equip with the invariant metric.
  metric_mat_at_identity : array-like, shape=[dim, dim]
      Matrix that defines the metric at identity.
      Optional, defaults to identity matrix if None.
  left : bool
      Whether to use a left or right invariant metric.
      Optional, default: True.
  
  References
  ----------
  .. [Milnor]    Milnor, John. “Curvatures of Left Invariant Metrics on Lie
                 Groups.” Advances in Mathematics 21, no. 3, 1976:
                 293–329. https://doi.org/10.1016/S0001-8708(76)80002-3.
  .. [Kolev]     Kolev, Boris. “Lie Groups and Mechanics: An Introduction.”
                 Journal of Nonlinear Mathematical Physics 11, no. 4, 2004:
                  480–98. https://doi.org/10.2991/jnmp.2004.11.4.5.
  .. [Gallier]   Gallier, Jean, and Jocelyn Quaintance. Differential Geometry
                 and Lie Groups: A Computational Perspective.
                 Geonger International Publishing, 2020.
                 https://doi.org/10.1007/978-3-030-46040-2.
class_docstr_tok: ["Class","for","invariant","metrics","on","Matrix","Lie","groups",".","This","class","supports","both","left","and","right","invariant","metrics","which","exist","on","Lie","groups",".","Parameters","--","--","--","--","--","space",":","LieGroup","Group","to","equip","with","the","invariant","metric",".","metric_mat_at_identity",":","array-like",",","shape=","[","dim",",","dim","]","Matrix","that","defines","the","metric","at","identity",".","Optional",",","defaults","to","identity","matrix","if","None",".","left",":","bool","Whether","to","use","a","left","or","right","invariant","metric",".","Optional",",","default",":","True",".","References","--","--","--","--","--","..","[","Milnor","]","Milnor",",","John",".","\u201c","Curvatures","of","Left","Invariant","Metrics","on","Lie","Groups.","\u201d","Advances","in","Mathematics","21",",","no",".","3",",","1976",":","293\u2013329",".","https",":","\/\/doi.org\/10.1016\/S0001-8708","(","76",")","80002-3",".","..","[","Kolev","]","Kolev",",","Boris",".","\u201c","Lie","Groups","and","Mechanics",":","An","Introduction.","\u201d","Journal","of","Nonlinear","Mathematical","Physics","11",",","no",".","4",",","2004",":","480\u201398",".","https",":","\/\/doi.org\/10.2991\/jnmp.2004.11.4.5",".","..","[","Gallier","]","Gallier",",","Jean",",","and","Jocelyn","Quaintance",".","Differential","Geometry","and","Lie","Groups",":","A","Computational","Perspective",".","Geonger","International","Publishing",",","2020.","https",":","\/\/doi.org\/10.1007\/978-3-030-46040-2","."]
docstr: Compute the covariant derivative of the curvature at identity.
  
  For four tangent vectors at identity :math:`x, y, z, t`,
  the covariant derivative of the curvature :math:`(\nabla_x R)(y, z)t`
  is computed using Leibniz formula.
  
  Parameters
  ----------
  tangent_vec_a : array-like, shape=[..., n, n]
      Tangent vector at identity.
  tangent_vec_b : array-like, shape=[..., n, n]
      Tangent vector at identity.
  tangent_vec_c : array-like, shape=[..., n, n]
      Tangent vector at identity.
  tangent_vec_d : array-like, shape=[..., n, n]
      Tangent vector at identity.
  
  Returns
  -------
  curvature_derivative : array-like, shape=[..., n, n]
      Tangent vector at identity.
code: def curvature_derivative_at_identity(
      self, tangent_vec_a, tangent_vec_b, tangent_vec_c, tangent_vec_d
  ):
      r"""Compute the covariant derivative of the curvature at identity.
  
      For four tangent vectors at identity :math:`x, y, z, t`,
      the covariant derivative of the curvature :math:`(\nabla_x R)(y, z)t`
      is computed using Leibniz formula.
  
      Parameters
      ----------
      tangent_vec_a : array-like, shape=[..., n, n]
          Tangent vector at identity.
      tangent_vec_b : array-like, shape=[..., n, n]
          Tangent vector at identity.
      tangent_vec_c : array-like, shape=[..., n, n]
          Tangent vector at identity.
      tangent_vec_d : array-like, shape=[..., n, n]
          Tangent vector at identity.
  
      Returns
      -------
      curvature_derivative : array-like, shape=[..., n, n]
          Tangent vector at identity.
      """
      first_term = self.connection_at_identity(
          tangent_vec_a,
          self.curvature_at_identity(
              tangent_vec_b, tangent_vec_c, tangent_vec_d
          ),
      )
  
      second_term = self.curvature_at_identity(
          self.connection_at_identity(tangent_vec_a, tangent_vec_b),
          tangent_vec_c,
          tangent_vec_d,
      )
  
      third_term = self.curvature_at_identity(
          tangent_vec_b,
          self.connection_at_identity(tangent_vec_a, tangent_vec_c),
          tangent_vec_d,
      )
  
      fourth_term = self.curvature_at_identity(
          tangent_vec_b,
          tangent_vec_c,
          self.connection_at_identity(tangent_vec_a, tangent_vec_d),
      )
  
      return first_term - second_term - third_term - fourth_term
  
imports: import geomstats.backend
  from geomstats.geometry.matrices import Matrices
  from geomstats.geometry.riemannian_metric import RiemannianMetric
  from geomstats.integrator import integrate
  from geomstats.numerics.geodesic import ExpODESolver, LogShootingSolver
  from geomstats.numerics.ivp import GSIVPIntegrator
  from geomstats.vectorization import repeat_out
label_desc: Use image node_id 14 for calling the _InvariantMetricMatrix obj's underlying member method code with example usage: obj.curvature_derivative_at_identity(tangent_vec_a, tangent_vec_b, tangent_vec_c, tangent_vec_d) and returns: unknown