code: def test_decomp_7():
      # Try working through an AlgebraicField
      T = Poly(x**3 + x**2 - 2 * x + 8)
      K = QQ.alg_field_from_poly(T)
      p = 2
      P = K.primes_above(p)
      ZK = K.maximal_order()
      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 10 for calling a global function with example usage: test_decomp_7() without return types