How statement and proof provenance work
The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.
- Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
- AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
- AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.
These labels describe origin, not correctness: citations and verification chips remain separate evidence.
Computable Reductions and Rice's Theorem
1 · Prerequisites
- Construction of the Natural Numbers
- Countability and Uncountability
- Decidable, Recognizable, and Enumerable Languages
- Diagonalization and the Halting Problem
- Finite Counting, Factorials and Binomial Coefficients
- Formal Languages, Encodings, and Decision Problems
- Linear Recurrences and Rational Generating Functions
- Relations, Functions, and Quotients
- Robust Machine Models and Universal Computation
- The ZFC Axioms and the Basic Set Constructions
- Turing Machines, Configurations, and Computation
2 · Summary
This page introduces computable many-one reducibility as the basic comparison tool for undecidable problems, proves its first transfer theorems, and places as the canonical c.e.-complete language. It then contrasts many-one and oracle reducibility with the standard separation given by versus .
The second half recasts machine questions extensionally, proves Rice's theorem through the witness-machine construction, records the standard semantic applications, and closes with the exact boundary between semantic properties of recognized languages and merely syntactic properties of machine descriptions.
3 · Logical flowchart
4 · Definitions, theorems and proofs
Computable many-one reductions between languages
Definition
Let and be languages over finite alphabets. A computable many-one reduction from to is a total computable function such that for every one has
When such an exists, write
Remarks
-
The reduction sends each source instance to one target instance.
-
The biconditional preserves both yes-instances and no-instances.
Computable many-one reducibility is reflexive and transitive
Statement
Computable many-one reducibility is reflexive and transitive: every language satisfies , and whenever and , one also has .
Facts & Assumptions
Given: Languages over finite alphabets.
A computable many-one reduction is a total computable function preserving membership in both directions, by Computable many-one reductions between languages.
Proof
For reflexivity, use the identity map on 's alphabet. It is total and computable, and for every , so [L1] gives .
For transitivity, let witness and let witness . By [L1], both maps are total and computable, so is total and computable as well.
For every , [L1] gives . Thus , so [L1] yields .
Computable many-one reductions transfer decidability and recognizability backward
Statement
If , then:
- whenever is decidable, is decidable, and
- whenever is recognizable, is recognizable.
Facts & Assumptions
Given: Languages and with .
A computable many-one reduction is a total computable function with for every , by Computable many-one reductions between languages.
A language is decidable when some Turing machine halts on every input and answers membership correctly, and recognizable when some Turing machine accepts exactly its members, by Decidable and recognizable languages.
Proof
Let witness . By [L1], is total and computable and satisfies for all .
If is decidable, [L2] supplies a decider for . On input , first compute and then run on that word. By step 1.1 the output is correct for , and totality of and makes the composite machine halt on every input. Therefore is decidable.
If is recognizable, [L2] supplies a recognizer for . On input , compute and run on it. By step 1.1 this machine accepts exactly the words of , so is recognizable.
Computably enumerable hardness and completeness under computable many-one reductions
Definition
Let be a language over a finite alphabet.
- is c.e.-hard when every recognizable language satisfies
- is c.e.-complete when is recognizable and c.e.-hard.
Here "c.e." means "computably enumerable," which on this page is synonymous with "recognizable."
The Turing-machine acceptance problem is computably enumerable complete
Statement
The language of The Turing-machine acceptance problem is c.e.-complete under computable many-one reductions.
Facts & Assumptions
Given: The acceptance language .
A language is c.e.-complete exactly when it is recognizable and every recognizable language many-one reduces to it, by Computably enumerable hardness and completeness under computable many-one reductions.
The language is recognizable, by The Turing-machine acceptance problem is recognizable.
A coded pair belongs to exactly when the coded machine accepts the word , by The Turing-machine acceptance problem .
Proof
By [L2], is recognizable. To use [L1], it remains to prove c.e.-hardness.
Let be any recognizable language, and choose a recognizer for . Define . Because is fixed, encoding its chosen code and pairing it with the canonical word-code of is a total computable procedure. By [L3], exactly when accepts , and that happens exactly when . Thus .
Step 1.2 proves that every recognizable language many-one reduces to , and step 1.1 already recorded recognizability. Therefore [L1] gives that is c.e.-complete.
Turing reductions via oracle deciders
Definition
Let and be languages. A Turing reduction from to is a deterministic oracle Turing machine that halts on every input and satisfies for every .
When such a machine exists, write
Remarks
-
A Turing reduction may ask several adaptive queries about .
-
A many-one reduction is the special case where the oracle is queried on one precomputed target instance.
Every computable many-one reduction induces a Turing reduction
Statement
If , then .
Facts & Assumptions
Given: Languages and with .
A computable many-one reduction is a total computable function satisfying , by Computable many-one reductions between languages.
A Turing reduction is a halting oracle decider that answers membership in the source language correctly, by Turing reductions via oracle deciders.
Proof
Let witness . Build an oracle machine that, on input , first computes and then asks the oracle for whether .
By [L1], the oracle answer to step 1.1 is "yes" exactly when . The machine makes only that one query and then halts with the same answer, so [L2] shows that it is a Turing reduction from to .
Turing reducibility is strictly weaker than computable many-one reducibility
Statement
There exist languages and such that but . In particular,
Facts & Assumptions
Given: The acceptance language and its complement .
The language is recognizable, by The Turing-machine acceptance problem is recognizable.
A language is decidable exactly when both it and its complement are recognizable, by A language is decidable if and only if it and its complement are recognizable.
The language is undecidable, by The Turing-machine acceptance problem is undecidable.
Proof
With oracle access to , an input belongs to exactly when the oracle answers "no" to the single query . So the machine that asks that one query and flips the answer halts on every input and decides . Hence .
Suppose instead that . Then would be recognizable because is recognizable by [L1] and recognizability transfers backward along many-one reductions. Since [L1] also makes recognizable, [L2] would imply that is decidable, contradicting [L3]. Therefore .
Steps 1.1 and 1.2 exhibit a Turing reduction that is not a many-one reduction, so Turing reducibility is strictly weaker than computable many-one reducibility.
Index sets and extensional properties of Turing-machine languages
Definition
Let be a class of recognizable languages over finite alphabets. Its index set is where is the chosen code of a Turing machine and is the language recognized by .
The class is an extensional machine property when Thus membership depends only on the recognized language, not on the particular machine code.
The property is nontrivial when some recognizable language belongs to and some recognizable language does not.
A nontrivial extensional property admits a uniform witness machine construction
Statement
Let be a nontrivial extensional property of recognizable languages. Then there exists a recognizable language such that and lie on opposite sides of , and there is a total computable map with the following property: for every coded pair , if , then
- when one has , and
- when one has .
Facts & Assumptions
Given: A nontrivial extensional property .
A nontrivial extensional property has at least one recognizable witness language inside the property and at least one recognizable witness language outside it, by Index sets and extensional properties of Turing-machine languages.
A coded pair belongs to exactly when the coded machine accepts the coded input word, by The Turing-machine acceptance problem .
Proof
If , choose a recognizable language . If instead , choose a recognizable language . In either case, this choice fixes a recognizable language that lies on the opposite side of from .
Fix a recognizer for . For each coded pair , build a machine that on input simulates on ; if that simulation ever accepts, starts a simulation of on , and if the simulation of never accepts then never accepts . Because the code of is fixed and is inserted as data, the map is total and computable.
If , then [L2] says that accepts , so step 2.1 eventually releases the simulation of on every input ; hence . If , the simulation of on never accepts, so accepts no input and . This is exactly the required witness-machine construction.
Every nontrivial extensional property of Turing-machine languages is undecidable
Statement
Let be a nontrivial extensional property of recognizable languages. Then its index set is undecidable.
Facts & Assumptions
Given: A nontrivial extensional property and its index set .
For such a property, A nontrivial extensional property admits a uniform witness machine construction gives a recognizable language opposite to with respect to and a total computable map such that implies while implies .
The language is undecidable, by The Turing-machine acceptance problem is undecidable.
Proof
Assume for contradiction that is decidable. Fix the map and the language from [L1]. Because and lie on opposite sides of , exactly one of the two conditions and holds.
On input , compute and run the assumed decider for on that code. If , answer exactly as the decider answers; if , flip the decider's answer. By [L1], this procedure accepts exactly those in , so it decides .
Step 2.1 contradicts [L2]. Therefore the assumption in step 1.1 was false, and is undecidable.
Standard semantic properties such as emptiness, finiteness, regularity, and context-freedom are undecidable
Statement
The following decision problems about a Turing machine's recognized language are undecidable:
- whether the language is empty,
- whether it is finite,
- whether it is regular,
- and whether it is context-free.
Facts & Assumptions
Given: The four language properties listed in the statement.
Rice's theorem says that every nontrivial extensional property of recognizable languages has an undecidable index set, by Every nontrivial extensional property of Turing-machine languages is undecidable.
An extensional property depends only on the recognized language, not on the particular machine code, by Index sets and extensional properties of Turing-machine languages.
Proof
Each listed property is extensional in the sense of [L2]: if two machines recognize the same language, then either both languages are empty, both are finite, both are regular, or both are context-free.
Each property is nontrivial. For emptiness, belongs and does not. For finiteness, belongs and does not. For regularity, belongs and the standard recognizable language does not. For context-freedom, belongs and the standard recognizable language does not.
Therefore [L1] applies to each of the four properties, so each corresponding index set is undecidable.
Recognizable extensional properties are positively witnessed by finite information
Statement
Let be an extensional property of recognizable languages, and assume that its index set is recognizable. If is recognizable, then there exists a finite set such that every recognizable language with also belongs to .
Facts & Assumptions
Given: An extensional property with recognizable index set, and a recognizable language .
By Index sets and extensional properties of Turing-machine languages, membership in depends only on the recognized language, so the property can be viewed through any recognizable presentation of the same language.
The language is recognizable but undecidable, by The Turing-machine acceptance problem is recognizable and The Turing-machine acceptance problem is undecidable. A language is decidable if and only if it and its complement are both recognizable, by A language is decidable if and only if it and its complement are recognizable.
Machine descriptions have a fixed effective coding, and contains exactly the codes of accepting machine-input pairs, by A fixed effective binary encoding of deterministic one-tape Turing machines and The Turing-machine acceptance problem .
Proof
By [L2], is not recognizable: otherwise both and its complement would be recognizable and hence would be decidable.
Choose a recognizer for , and let be its finite input alphabet. Dovetail the recognizer on the words of in a fixed length-lexicographic order, outputting each newly accepted word once. This gives an effective enumeration of by finite stages with .
Suppose for contradiction that no finite subset of belongs to . For each binary word , effectively construct a recognizer that, on its own input , simulates the stage enumeration from step 1.2 and the recognizer for on in lockstep. It accepts if appears in the stage enumeration before the latter recognizer accepts, and otherwise continues forever. The coding in [L3] makes total and computable. If then ; if then for the finite stage at which that simulation stops admitting new words.
A recognizer for could therefore recognize : on input , compute and run the index-set recognizer on it. This contradicts step 1.1. Hence there is a finite set with .
Let be recognizable with , and suppose for contradiction that . For each binary word , effectively build a recognizer that accepts every word of and, if the recognizer for accepts , also simulates a fixed recognizer for . Then gives , while gives . As in step 3.1, the total computable map and the recognizer for would recognize , contradicting step 1.1. Therefore every such belongs to , and is the required finite positive witness.
Syntactic machine properties lie outside the scope of Rice's theorem
Statement
Properties of a machine description such as "has at most ten states" or "has an unreachable state" are not extensional language properties, so Rice's theorem does not apply to them.
Facts & Assumptions
Given: The machine-description properties "has at most ten states" and "has an unreachable state."
An extensional property must assign the same truth value to any two machines with the same recognized language, by Index sets and extensional properties of Turing-machine languages.
Rice's theorem applies only to nontrivial extensional language properties, by Every nontrivial extensional property of Turing-machine languages is undecidable.
Proof
Adjoining any number of new states with no incoming transitions leaves every existing computation unchanged. Thus the original machine and the enlarged machine recognize the same language.
Start with a three-state machine and adjoin eight unreachable states. The two machines have the same recognized language by step 1.1, but the first has at most ten states and the second has eleven. Hence the state-count property is not extensional.
For the second property, take a three-state machine whose start state moves to its accept state on one input symbol and to its reject state on the blank symbol; each of its three states is reachable. Adjoin one state with no incoming transitions. Step 1.1 again preserves the recognized language, but now exactly the enlarged machine has an unreachable state. Hence this property is not extensional either.
Since the extensionality hypothesis of [L2] fails for both properties, Rice's theorem does not speak about them.
5 · Examples, counterexamples and false statements
FALSE: a valid many-one reduction may reverse yes-instances and no-instances
Statement
A valid computable many-one reduction may reverse yes-instances and no-instances.
Facts & Assumptions
Given: Languages and .
A computable many-one reduction satisfies for every input , by Computable many-one reductions between languages.
Refutation
If is a many-one reduction from to , then [L1] says that and always have the same truth value. Equivalently, as well.
So a valid reduction preserves both yes-answers and no-answers relative to the chosen target language ; it does not reverse them. Reversal would mean reducing to the complement language instead. Therefore the statement is false.
FALSE: Rice's theorem applies to having at most a fixed number of states
Statement
Rice's theorem applies to the property "the machine has at most a fixed number of states."
Facts & Assumptions
Given: A fixed state bound .
State-count bounds are syntactic machine properties rather than extensional language properties, by Syntactic machine properties lie outside the scope of Rice's theorem.
Rice's theorem applies only to nontrivial extensional properties of recognized languages, by Every nontrivial extensional property of Turing-machine languages is undecidable.
Refutation
By [L1], the property "has at most states" can change when one rewrites the machine without changing its recognized language. So it is not an extensional language property.
Because the extensionality hypothesis of [L2] fails, Rice's theorem does not apply to this property. Therefore the statement is false.