A computational framework for dialectical reasoning