def is_closed(self):
        """
        _check if the observation table is closed.
        Args:
            None
        Returns:
            tuple (bool, str): True if the observation table is
            closed and false otherwise. If the table is not closed
            the escaping string is returned.
        """
        for t in self.smi_vector:
            found = False
            for s in self.sm_vector:
                if self.observation_table[s] == self.observation_table[t]:
                    self.equiv_classes[t] = s
                    found = True
                    break
            if not found:
                return False, t
        return True, None