class_docstr: Represent the Levi-Civita symbol.
  
  Explanation
  ===========
  
  For even permutations of indices it returns 1, for odd permutations -1, and
  for everything else (a repeated index) it returns 0.
  
  Thus it represents an alternating pseudotensor.
  
  Examples
  ========
  
  >>> from sympy import LeviCivita
  >>> from sympy.abc import i, j, k
  >>> LeviCivita(1, 2, 3)
  1
  >>> LeviCivita(1, 3, 2)
  -1
  >>> LeviCivita(1, 2, 2)
  0
  >>> LeviCivita(i, j, k)
  LeviCivita(i, j, k)
  >>> LeviCivita(i, j, i)
  0
  
  See Also
  ========
  
  Eijk
class_docstr_tok: ["Represent","the","Levi-Civita","symbol",".","Explanation","===========","For","even","permutations","of","indices","it","returns","1",",","for","odd","permutations","-1",",","and","for","everything","else","(","a","repeated","index",")","it","returns","0",".","Thus","it","represents","an","alternating","pseudotensor",".","Examples","========",">",">",">","from","sympy","import","LeviCivita",">",">",">","from","sympy.abc","import","i",",","j",",","k",">",">",">","LeviCivita","(","1",",","2",",","3",")","1",">",">",">","LeviCivita","(","1",",","3",",","2",")","-1",">",">",">","LeviCivita","(","1",",","2",",","2",")","0",">",">",">","LeviCivita","(","i",",","j",",","k",")","LeviCivita","(","i",",","j",",","k",")",">",">",">","LeviCivita","(","i",",","j",",","i",")","0","See","Also","========","Eijk"]
code: def eval(cls, *args):
      if all(isinstance(a, (SYMPY_INTS, Integer)) for a in args):
          return eval_levicivita(*args)
      if has_dups(args):
          return S.Zero
  
imports: from math import prod
  from sympy.core import S, Integer
  from sympy.core.function import Function
  from sympy.core.logic import fuzzy_not
  from sympy.core.relational import Ne
  from sympy.core.sorting import default_sort_key
  from sympy.external.gmpy import SYMPY_INTS
  from sympy.functions.combinatorial.factorials import factorial
  from sympy.functions.elementary.piecewise import Piecewise
  from sympy.utilities.iterables import has_dups
label_desc: Use image node_id 1 for calling the LeviCivita obj's underlying member method code with example usage: obj.eval(cls) and returns: eval_levicivita, S