code: def assuming(*assumptions):
      """
      Context manager for assumptions.
  
      Examples
      ========
  
      >>> from sympy import assuming, Q, ask
      >>> from sympy.abc import x, y
      >>> print(ask(Q.integer(x + y)))
      None
      >>> with assuming(Q.integer(x), Q.integer(y)):
      ...     print(ask(Q.integer(x + y)))
      True
      """
      old_global_assumptions = global_assumptions.copy()
      global_assumptions.update(assumptions)
      try:
          yield
      finally:
          global_assumptions.clear()
          global_assumptions.update(old_global_assumptions)
  
imports: from contextlib import contextmanager
  import inspect
  from sympy.core.symbol import Str
  from sympy.core.sympify import _sympify
  from sympy.logic.boolalg import Boolean, false, true
  from sympy.multipledispatch.dispatcher import Dispatcher, str_signature
  from sympy.utilities.exceptions import sympy_deprecation_warning
  from sympy.utilities.iterables import is_sequence
  from sympy.utilities.source import get_class
label_desc: Use image node_id 1 for calling a global function with example usage: assuming() without return types