class_docstr: Class for bi-invariant metrics on compact Lie groups.
  
  Compact Lie groups and direct products of compact Lie groups with vector
  spaces admit bi-invariant metrics [Gallier]_. Products Lie groups are not
  implemented. Other groups such as SE(3) admit bi-invariant pseudo-metrics.
  
  Parameters
  ----------
  space : LieGroup
      The group to equip with the bi-invariant metric
  
  References
  ----------
  .. [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","bi-invariant","metrics","on","compact","Lie","groups",".","Compact","Lie","groups","and","direct","products","of","compact","Lie","groups","with","vector","spaces","admit","bi-invariant","metrics","[","Gallier","]","_",".","Products","Lie","groups","are","not","implemented",".","Other","groups","such","as","SE","(","3",")","admit","bi-invariant","pseudo-metrics",".","Parameters","--","--","--","--","--","space",":","LieGroup","The","group","to","equip","with","the","bi-invariant","metric","References","--","--","--","--","--","..","[","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","."]
code: def __init__(self, space):
      self._check_implemented(space)
  
      super().__init__(space=space)
      if self._space.default_point_type == "vector":
          # keeps behavior before removing inheritance
          self.left = True
  
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 1 to create a new BiInvariantMetric object from inherited base classes: RiemannianMetric with example: obj = BiInvariantMetric(space)