Dialectical Reasoning