Since Aristotle, the law of non-contradiction has been treated as the bedrock of rational thought: nothing can both be and not be at the same time and in the same respect. Hegel does not deny this as a formal logical rule. But he insists that when we think about the actual content of things — not empty symbols but real determinations — we inevitably encounter contradiction. Every finite thing is what it is by being distinct from what it is not: its very identity contains the negation of its negation. The determinate is always also the negation of the indeterminate.
The key move is Hegel's claim that contradiction does not produce stasis (a logical impossibility to be avoided) but movement. When a category generates its own opposite, the result is not the end of thinking but the demand for a higher category that contains both. Contradiction is what drives the Logic from one category to the next, from Being to Essence to the Concept. Without inner contradiction, there would be no development — only the empty persistence of an undifferentiated given. Movement, change, growth: all require contradiction.
Hegel extends this logical claim to history and nature. Every social formation contains contradictions — tensions between its principles that cannot be resolved within its own framework. These contradictions drive history forward toward new forms. Marx absorbed this structure directly into his theory of capitalism: the contradiction between the forces of production and the relations of production is the engine of historical change. Engels systematised this as the "law of the unity and conflict of opposites" in his dialectics of nature.
The question of whether Hegel's logic of contradiction is consistent has been debated since his own time. Graham Priest's dialetheism — the contemporary philosophical view that some contradictions are genuinely true — is partly inspired by Hegel, though most Hegel scholars reject the reading. The majority view is that Hegel's contradictions are real features of finite determinations that are resolved (aufgehoben) rather than allowed to stand as simultaneously true and false.


