code: def reduce_inequalities(inequalities, symbols=[]):
      """Reduce a system of inequalities with rational coefficients.
  
      Examples
      ========
  
      >>> from sympy.abc import x, y
      >>> from sympy import reduce_inequalities
  
      >>> reduce_inequalities(0 <= x + 3, [])
      (-3 <= x) & (x < oo)
  
      >>> reduce_inequalities(0 <= x + y*2 - 1, [x])
      (x < oo) & (x >= 1 - 2*y)
      """
      if not iterable(inequalities):
          inequalities = [inequalities]
      inequalities = [sympify(i) for i in inequalities]
  
      gens = set().union(*[i.free_symbols for i in inequalities])
  
      if not iterable(symbols):
          symbols = [symbols]
      symbols = (set(symbols) or gens) & gens
      if any(i.is_extended_real is False for i in symbols):
          raise TypeError(
              filldedent(
                  """
              inequalities cannot contain symbols that are not real.
              """
              )
          )
  
      # make vanilla symbol real
      recast = {
          i: Dummy(i.name, extended_real=True)
          for i in gens
          if i.is_extended_real is None
      }
      inequalities = [i.xreplace(recast) for i in inequalities]
      symbols = {i.xreplace(recast) for i in symbols}
  
      # prefilter
      keep = []
      for i in inequalities:
          if isinstance(i, Relational):
              i = i.func(i.lhs.as_expr() - i.rhs.as_expr(), 0)
          elif i not in (True, False):
              i = Eq(i, 0)
          if i == True:
              continue
          elif i == False:
              return S.false
          if i.lhs.is_number:
              raise NotImplementedError(
                  "could not determine truth value of %s" % i
              )
          keep.append(i)
      inequalities = keep
      del keep
  
      # solve system
      rv = _reduce_inequalities(inequalities, symbols)
  
      # restore original symbols and return
      return rv.xreplace({v: k for k, v in recast.items()})
  
imports: import itertools
  from sympy.calculus.util import continuous_domain, periodicity, function_range
  from sympy.core import sympify
  from sympy.core.exprtools import factor_terms
  from sympy.core.relational import Relational, Lt, Ge, Eq
  from sympy.core.symbol import Symbol, Dummy
  from sympy.sets.sets import Interval, FiniteSet, Union, Intersection
  from sympy.core.singleton import S
  from sympy.core.function import expand_mul
  from sympy.functions.elementary.complexes import Abs
  from sympy.logic import And
  from sympy.polys import Poly, PolynomialError, parallel_poly_from_expr
  from sympy.polys.polyutils import _nsort
  from sympy.solvers.solveset import solvify, solveset
  from sympy.utilities.iterables import sift, iterable
  from sympy.utilities.misc import filldedent
label_desc: Use image node_id 11 for calling a global function with example usage: reduce_inequalities(inequalities, symbols) and returns: rv, S