class_docstr: A class for retrieving the Dixon's resultant of a multivariate
  system.
  
  Examples
  ========
  
  >>> from sympy import symbols
  
  >>> from sympy.polys.multivariate_resultants import DixonResultant
  >>> x, y = symbols('x, y')
  
  >>> p = x + y
  >>> q = x ** 2 + y ** 3
  >>> h = x ** 2 + y
  
  >>> dixon = DixonResultant(variables=[x, y], polynomials=[p, q, h])
  >>> poly = dixon.get_dixon_polynomial()
  >>> matrix = dixon.get_dixon_matrix(polynomial=poly)
  >>> matrix
  Matrix([
  [ 0,  0, -1,  0, -1],
  [ 0, -1,  0, -1,  0],
  [-1,  0,  1,  0,  0],
  [ 0, -1,  0,  0,  1],
  [-1,  0,  0,  1,  0]])
  >>> matrix.det()
  0
  
  See Also
  ========
  
  Notebook in examples: sympy/example/notebooks.
  
  References
  ==========
  
  .. [1] [Kapur1994]_
  .. [2] [Palancz08]_
docstr: A class that takes two lists, a list of polynomials and list of
  variables. Returns the Dixon matrix of the multivariate system.
  
  Parameters
  ----------
  polynomials : list of polynomials
      A  list of m n-degree polynomials
  variables: list
      A list of all n variables
docstr_tok: ["A","class","that","takes","two","lists",",","a","list","of","polynomials","and","list","of","variables",".","Returns","the","Dixon","matrix","of","the","multivariate","system",".","Parameters","--","--","--","--","--","polynomials",":","list","of","polynomials","A","list","of","m","n-degree","polynomials","variables",":","list","A","list","of","all","n","variables"]
code: def __init__(self, polynomials, variables):
      """
      A class that takes two lists, a list of polynomials and list of
      variables. Returns the Dixon matrix of the multivariate system.
  
      Parameters
      ----------
      polynomials : list of polynomials
          A  list of m n-degree polynomials
      variables: list
          A list of all n variables
      """
      self.polynomials = polynomials
      self.variables = variables
  
      self.n = len(self.variables)
      self.m = len(self.polynomials)
  
      a = IndexedBase("alpha")
      # A list of n alpha variables (the replacing variables)
      self.dummy_variables = [a[i] for i in range(self.n)]
  
      # A list of the d_max of each variable.
      self._max_degrees = [
          max(degree_list(poly)[i] for poly in self.polynomials)
          for i in range(self.n)
      ]
  
imports: from math import prod
  from sympy.core.mul import Mul
  from sympy.matrices.dense import Matrix, diag
  from sympy.polys.polytools import Poly, degree_list, rem
  from sympy.simplify.simplify import simplify
  from sympy.tensor.indexed import IndexedBase
  from sympy.polys.monomials import itermonomials, monomial_deg
  from sympy.polys.orderings import monomial_key
  from sympy.polys.polytools import poly_from_expr, total_degree
  from sympy.functions.combinatorial.factorials import binomial
  from itertools import combinations_with_replacement
  from sympy.utilities.exceptions import sympy_deprecation_warning
label_desc: Use image node_id 1 to create a new DixonResultant object  with example: obj = DixonResultant(polynomials, variables)