class_docstr: This function creates a SchurNumber object
  which is evaluated for `k \le 5` otherwise only
  the lower bound information can be retrieved.
  
  Examples
  ========
  
  >>> from sympy.combinatorics.schur_number import SchurNumber
  
  Since S(3) = 13, hence the output is a number
  >>> SchurNumber(3)
  13
  
  We do not know the Schur number for values greater than 5, hence
  only the object is returned
  >>> SchurNumber(6)
  SchurNumber(6)
  
  Now, the lower bound information can be retrieved using lower_bound()
  method
  >>> SchurNumber(6).lower_bound()
  536
code: def lower_bound(self):
      f_ = self.args[0]
      # Improved lower bounds known for S(6) and S(7)
      if f_ == 6:
          return Integer(536)
      if f_ == 7:
          return Integer(1680)
      # For other cases, use general expression
      if f_.is_Integer:
          return 3 * self.func(f_ - 1).lower_bound() - 1
      return (3**f_ - 1) / 2
  
file_path: sympy/sympy/combinatorics/schur_number.py
imports: import math
  from sympy.core import S
  from sympy.core.basic import Basic
  from sympy.core.function import Function
  from sympy.core.numbers import Integer
label_desc: Use image node_id 2 for calling the SchurNumber obj's underlying member method code with example usage: obj.lower_bound() and returns: unknown, Integer, Integer, unknown