class_docstr: Check properties of an ongoing discourse.
class_docstr_tok: ["Check","properties","of","an","ongoing","discourse","."]
docstr: Initialize a ``DiscourseTester``.
  
  :param input: the discourse sentences
  :type input: list of str
  :param background: Formulas which express background assumptions
  :type background: list(Expression)
code: def __init__(self, input, reading_command=None, background=None):
      """
      Initialize a ``DiscourseTester``.
  
      :param input: the discourse sentences
      :type input: list of str
      :param background: Formulas which express background assumptions
      :type background: list(Expression)
      """
      self._input = input
      self._sentences = {
          "s%s" % i: sent for i, sent in enumerate(input)
      }
      self._models = None
      self._readings = {}
      self._reading_command = (
          reading_command if reading_command else CfgReadingCommand()
      )
      self._threads = {}
      self._filtered_threads = {}
      if background is not None:
          from nltk.sem.logic import Expression
  
          for e in background:
              assert isinstance(e, Expression)
          self._background = background
      else:
          self._background = []
  
imports: import os
  from abc import ABCMeta, abstractmethod
  from functools import reduce
  from operator import add, and_
  from nltk.data import show_cfg
  from nltk.inference.mace import MaceCommand
  from nltk.inference.prover9 import Prover9Command
  from nltk.parse import load_parser
  from nltk.parse.malt import MaltParser
  from nltk.sem.drt import AnaphoraResolutionException, resolve_anaphora
  from nltk.sem.glue import DrtGlue
  from nltk.sem.logic import Expression
  from nltk.tag import RegexpTagger
label_desc: Use image node_id 1 to create a new DiscourseTester object  with example: obj = DiscourseTester(input, reading_command, background)