code: def test_decomp_6():
      # Another case where 2 divides the index. This is Dedekind's example of
      # an essential discriminant divisor. (See Cohen, Exercise 6.10.)
      T = Poly(x**3 + x**2 - 2 * x + 8)
      rad = {}
      ZK, dK = round_two(T, radicals=rad)
      p = 2
      P = prime_decomp(p, T, dK=dK, ZK=ZK, radical=rad.get(p))
      assert len(P) == 3
      assert all(Pi.e == Pi.f == 1 for Pi in P)
      assert prod(Pi**Pi.e for Pi in P) == p * ZK
  
imports: from math import prod
  from sympy import QQ, ZZ
  from sympy.abc import x, theta
  from sympy.ntheory import factorint
  from sympy.ntheory.residue_ntheory import n_order
  from sympy.polys import Poly, cyclotomic_poly
  from sympy.polys.matrices import DomainMatrix
  from sympy.polys.numberfields.basis import round_two
  from sympy.polys.numberfields.exceptions import StructureError
  from sympy.polys.numberfields.modules import PowerBasis, to_col
  from sympy.polys.numberfields.primes import prime_decomp, _two_elt_rep, _check_formal_conditions_for_maximal_order
  from sympy.testing.pytest import raises
label_desc: Use image node_id 9 for calling a global function with example usage: test_decomp_6() without return types