docstr: >>> x = ivy.Container(a=ivy.array([[0, 1, 0],[1, 1, 0],[1, 1, 1]]),
  ...                   b=ivy.array([[0, 1, 2],[4, 5, 6],[8, 9, 10]]))
  >>> y = x.einsum('ii')
  >>> print(y)
  {
      a: ivy.array(2),
      b: ivy.array(15)
  }
docstr_tok: [">",">",">","x","=","ivy.Container","(","a=ivy.array","(","[","[","0",",","1",",","0","]",",","[","1",",","1",",","0","]",",","[","1",",","1",",","1","]","]",")",",","...","b=ivy.array","(","[","[","0",",","1",",","2","]",",","[","4",",","5",",","6","]",",","[","8",",","9",",","10","]","]",")",")",">",">",">","y","=","x.einsum","(","'ii","'",")",">",">",">","print","(","y",")","{","a",":","ivy.array","(","2",")",",","b",":","ivy.array","(","15",")","}"]
code: def einsum(
      self: ivy.Container,
      equation: Union[str, ivy.Container],
      key_chains: Optional[
          Union[List[str], Dict[str, str], ivy.Container]
      ] = None,
      to_apply: Union[bool, ivy.Container] = True,
      prune_unapplied: Union[bool, ivy.Container] = False,
      map_sequences: Union[bool, ivy.Container] = False,
      *,
      out: Optional[ivy.Container] = None,
  ) -> ivy.Container:
      """
      >>> x = ivy.Container(a=ivy.array([[0, 1, 0],[1, 1, 0],[1, 1, 1]]),
      ...                   b=ivy.array([[0, 1, 2],[4, 5, 6],[8, 9, 10]]))
      >>> y = x.einsum('ii')
      >>> print(y)
      {
          a: ivy.array(2),
          b: ivy.array(15)
      }
  
      """
      return self.cont_handle_inplace(
          self.cont_map(
              lambda x_, _: ivy.einsum(equation, x_)
              if ivy.is_array(x_)
              else x_,
              key_chains,
              to_apply,
              prune_unapplied,
              map_sequences,
          ),
          out=out,
      )
  
imports: from typing import Optional, Union, List, Dict, Sequence
  import ivy
  from ivy.data_classes.container.base import ContainerBase
label_desc: Use image node_id 16 for calling the _ContainerWithStatistical obj's underlying member method code with example usage: obj.einsum(equation, key_chains, to_apply, prune_unapplied, map_sequences) and returns: self