class_docstr: Represents an interval containing floating points as start and
  end of the interval
  The is_valid variable tracks whether the interval obtained as the
  result of the function is in the domain and is continuous.
  - True: Represents the interval result of a function is continuous and
          in the domain of the function.
  - False: The interval argument of the function was not in the domain of
           the function, hence the is_valid of the result interval is False
  - None: The function was not continuous over the interval or
          the function's argument interval is partly in the domain of the
          function
  
  A comparison between an interval and a real number, or a
  comparison between two intervals may return ``intervalMembership``
  of two 3-valued logic values.
code: def __init__(self, *args, is_valid=True, **kwargs):
      self.is_valid = is_valid
      if len(args) == 1:
          if isinstance(args[0], interval):
              self.start, self.end = args[0].start, args[0].end
          else:
              self.start = float(args[0])
              self.end = float(args[0])
      elif len(args) == 2:
          if args[0] < args[1]:
              self.start = float(args[0])
              self.end = float(args[1])
          else:
              self.start = float(args[1])
              self.end = float(args[0])
  
      else:
          raise ValueError(
              "interval takes a maximum of two float values "
              "as arguments"
          )
  
imports: from sympy.core.numbers import int_valued
  from sympy.core.logic import fuzzy_and
  from sympy.simplify.simplify import nsimplify
  from .interval_membership import intervalMembership
label_desc: Use image node_id 1 to create a new interval object  with example: obj = interval()