Quine

Programs that print themselves

The Fixed-Point Structure

Every quine has two parts: the data (a description of the code) and the code (which reads the data and prints both). The data describes the code. The code uses the data. Neither is the quine alone.

Kleene's Recursion Theorem — Why Quines Must Exist

For any computable transformation f, there exists a program p whose output equals the output of f(p). When f is the identity, p outputs itself: a quine. This isn't a trick — it's a theorem. Self-reference is structurally inevitable in any sufficiently powerful formal system.