In the following we are assuming that the Instruction Register (IR) encounters the μ"y" "routine" at instruction number ""n"". Its first action will be to establish a number in a dedicated ""w"" register—an "example of" the number that function φ(x, "y") must produce before the algorithm can terminate (classically this is the number zero, but see the footnote about the use of numbers other than zero). The algorithm's next action at instructiton ""n"+1" will be to clear the ""y"" register -- ""y"" will act as an "up-counter" that starts from 0. Then at instruction ""n"+2" the algorithm evaluates its function φ(x, "y") -- we assume this takes "j" instructions to accomplish—and at the end of its evaluation φ(x, y) deposits its output in register "φ". At the ("n"+"j"+3)rd instruction the algorithm compares the number in the ""w"" register (e.g. 0) to the number in the "φ" register—if they are the same the algorithm has succeeded and it escapes through "exit"; otherwise it increments the contents of the ""y"" register and "loops" back with this new y-value to test function φ(x, "y") again.