Intuition The one core idea
There is a single, universal notion of "following step-by-step rules" — and one simple machine (a paper tape + a moving pencil-tip) can carry out any such procedure that any human or fancier machine could. Everything below is just the vocabulary you need before that sentence means something concrete.
This page is the toolbox for Church-Turing thesis . The parent note throws around symbols like f : N → N , μ y , S ( x ) , "Turing machine", "decidable", "partial function". Here we earn every one of them from zero, in an order where each rests only on the ones before it.
N — the natural numbers
N is the set of counting numbers: 0 , 1 , 2 , 3 , … going on forever with no largest one. The curly-blackboard letter is just a name-tag for "this whole collection."
Picture it. Not as a formula — as an endless row of dots, one per number, marching right forever.
Why the topic needs it. Church–Turing talks about functions on numbers . Before we can say "a function turns numbers into numbers," we need the pile of numbers to turn. That pile is N . The row never ends, which is why a machine may sometimes run forever — there is always a next number to try.
Definition Function and the arrow
→
A function is a rule that takes an input and gives back one output. The notation f : N → N reads: "f is a rule that eats a natural number and produces a natural number." The arrow → points from the input-pile to the output-pile.
Intuition Why "one output"?
A rule that gave two different answers for the same input wouldn't be a recipe — you couldn't follow it. A function is exactly a recipe: same input, same output, every time.
Picture it. A box labelled f . An arrow of numbers goes in the left, one number comes out the right.
Worked example Reading the notation aloud
f ( 3 ) = 7 means: feed the number 3 into the rule f , and out comes 7 . The parentheses ( ) are just "the input goes here."
Why the topic needs it. The whole thesis is a claim about functions : "every computable function is Turing-computable." So "function" is the noun the entire chapter is about.
Definition Partial function
A total function gives an answer for every input. A partial function may, for some inputs, give no answer at all — the rule runs forever and never stops. We say it is undefined there.
Picture it. Same box f , but now one input arrow goes in and loops back on itself forever — no output ever escapes.
Intuition Why we must allow this
Real programs can get stuck in an infinite loop. If our theory only allowed functions that always answer, it would ban programs that hang — but those are real programs! So "computable" must include partial functions. This is exactly why the parent's minimization step (Section 8) matters.
Why the topic needs it. The parent says μ "may never halt — and that is exactly why this class includes partial functions." Without the word "partial," that sentence is noise.
x — a bundle of inputs
Some rules take several inputs at once, e.g. "add x and y ." We write the whole list as x = ( x 1 , x 2 , … , x n ) . The little arrow over x means "this is a list of numbers, not just one." The subscripts x 1 , x 2 are just labelled slots — first input, second input.
Common mistake The arrow is not a Turing machine's arrow
x (a list of inputs) has nothing to do with → (the function arrow). Same little symbol, totally different jobs: one sits over a letter, one sits between two sets.
::: Over a letter ⇒ "list"; between two sets ⇒ "maps to".
Why the topic needs it. The base function P i n ( x 1 , … , x n ) = x i and every recursion rule use x . It's shorthand so the formulas don't drown in commas.
These are the "obviously computable" starting bricks — so simple no one doubts a machine can do them.
Z
Z ( x ) = 0 . Whatever you feed it, it hands back 0 . Picture: a box that swallows any number and always spits out a single dot (zero... well, an empty slot).
S
S ( x ) = x + 1 . It gives the next number. Picture: on the number-row of Section 1, S is a single hop one step to the right.
P i n
P i n ( x 1 , … , x n ) = x i . Out of a list of n inputs, it throws all of them away except the i -th one, which it returns. Picture: n arrows enter a box; a selector highlights arrow number i ; only that one leaves.
Intuition Why exactly these three?
They are the smallest possible "moves": make a zero, step up by one, pick an input. From these three atoms plus glue (next section), every computable function on numbers can be built. It's like an alphabet: tiny, boring, but everything is spelled from it.
Why the topic needs it. The parent's derivation-from-scratch literally starts here. Without S , you can't even define addition (Example 1 uses S ( a dd ( x , n )) ).
If you have rules g , h 1 , … , h k , composition builds a new rule
f ( x ) = g ( h 1 ( x ) , … , h k ( x ) ) .
Plain words: run each helper h i on the inputs, collect their answers, then feed those answers into g .
Intuition Why this is allowed
"Do this, then do that with the result" is the most basic way humans chain steps. If each step is computable, doing them in sequence is too — a finite pipe of finite steps.
Why the topic needs it. It's closure operation #1 in the parent. It's how small bricks combine into bigger ones.
Definition Primitive recursion
To define f ( x , n ) for a counting input n :
f ( x , 0 ) = g ( x ) , f ( x , n + 1 ) = h ( x , n , f ( x , n ) ) .
Plain words: you're told the answer at n = 0 (base case g ). To get the answer at n + 1 , you use the answer you already found at n . So you climb a ladder: rung 0 , then 1 , then 2 …
Picture it. A ladder. Rung 0 is given. Each higher rung is built from the one just below using h . Because n counts down to 0 , the climb always finishes .
for loop
"Do the work n + 1 times, each time using the previous result" is exactly for i in range(n). The number of rungs is fixed in advance by n , so it cannot run forever.
Why the topic needs it. This is closure operation #2, and Example 1 (addition) is a straight primitive recursion. It gives us guaranteed-halting computation.
μ operator
f ( x ) = μ y [ g ( x , y ) = 0 ] = the smallest y that makes g ( x , y ) = 0.
Plain words: try y = 0 ; if g isn't 0 there, try y = 1 , then y = 2 , … Stop at the first y where g hits 0 , and return that y . The symbol μ is just a name for "smallest such."
Intuition Why this one is different — and dangerous
Primitive recursion knew in advance how many steps (n ). Here you have no upper limit : maybe g is never 0 , and you search 0 , 1 , 2 , … forever . That is a while loop with no guaranteed exit — and it is precisely what makes some functions partial (Section 3).
= 0 is arbitrary."
It feels like we could pick any target. But "search until some test succeeds" is fully general: any yes/no test can be rewritten as "does this expression equal 0 ?" So = 0 loses nothing.
::: It's a stand-in for "the test passed"; any condition can be encoded as "equals zero".
Why the topic needs it. The parent says μ is "the key": it's the single ingredient that lifts primitive-recursive functions (only for) up to the full μ -recursive functions (for + while) — which equal the Turing-computable functions. See Mu-Recursive Functions .
Definition Turing machine — informal
An endless paper tape divided into cells, a head that reads/writes one cell, a small set of states (its "mood"), and a rulebook: "in this state, seeing this symbol, write that, move left/right, switch to that state." That's the whole machine.
Intuition Why so bare-bones?
Precisely because it's so simple, if this can compute a function, no one can accuse the computation of "cheating." It's the humble yardstick every other model is measured against. Deep details live in Turing Machine and Universal Turing Machine .
Why the topic needs it. CTT's whole statement is "computable = Turing -computable." The Turing machine is the formal right-hand side of the thesis.
A yes/no question is decidable if some machine, for every input, halts and correctly answers "yes" or "no." (See Decidability and Recursive Languages .) "Is n prime?" is decidable.
Definition Halting problem
The question "will this program eventually stop, or loop forever, on this input?" The famous result: no machine can answer this for all programs — it is undecidable . See Halting Problem .
Intuition Why put these here
They are the boundary line CTT draws. Because CTT says every algorithm is some Turing machine, "no Turing machine decides halting" upgrades to "no algorithm at all decides halting." The limit becomes universal.
Primitive recursion for loop
Minimization mu while loop
Read top-to-bottom: counting numbers give us functions; base bricks plus composition plus the two loop-types build the μ -recursive functions; those equal what a Turing machine computes; and the thesis binds that formal class to the intuitive idea of "algorithm."
Self-test: can you answer each before revealing?
What does N stand for and what's its picture? The counting numbers 0 , 1 , 2 , … ; an endless row of dots marching right.
Read f : N → N in plain words. "f is a rule that takes a natural number and returns a natural number"; the → points from input-pile to output-pile.
What is a partial function and why must "computable" include them? A function undefined on some inputs (runs forever there); real programs can loop, so we can't ban them.
What does x mean? A list of inputs ( x 1 , … , x n ) ; the arrow-over means "bundle of numbers."
Name the three base functions and what each does. Zero Z ( x ) = 0 ; Successor S ( x ) = x + 1 ; Projection P i n returns the i -th input.
What does composition let you do? Chain rules: run helpers h i on the inputs, feed their outputs into g .
Why does primitive recursion always halt? It's a for loop climbing a ladder of fixed height n down to the base case 0 .
Why can μ -minimization fail to halt? It's an unbounded while search y = 0 , 1 , 2 , … ; if no y works it runs forever, giving a partial function.
What single ingredient separates μ -recursive from primitive-recursive functions? Minimization μ (the unbounded search / while).
In one line, what is a Turing machine? A tape, a read/write head, finitely many states, and a rulebook of moves.
Why does undecidability of Halting become "universal" under CTT? CTT equates every algorithm with some Turing machine, so "no TM" means "no algorithm whatsoever."