symbolic debugging