Search the courses, subjects, tracks, games and features, or jump straight to a page.
Learn it your way
A short class with Sarah and her students. The other ways are under More.
Sign up free to listen. Transcripts are free to read.
Today, we will explore the intriguing world of computable and uncomputable functions. Can anyone tell me what a computable function is?
I think it's a function where a computer can calculate the output for any input using a program.
Exactly! A computable function has a corresponding computer program for every input that produces an output. Now, what do you think an uncomputable function might be?
Is it a function that a computer can't compute at all?
Correct! An uncomputable function cannot be computed by any program, no matter how much time or memory we provide. Let's remember this with the acronym 'UNG' for Uncomputable = No Good program. Now, why do you think this distinction is important?
Maybe because it shows the limits of computers?
That's right! It highlights the intrinsic limits of computation. Great discussion everyone!
Now that we've defined the concepts, let's move into the proof of existence for uncomputable functions. What do you remember about countable sets?
Countable sets can be listed or enumerated even if they are infinite.
Exactly! We know the set of all valid programs is countable. Now, let's compare this to the set of all functions from positive integers to a finite set, say {0,1,2,...,9}. Can anyone guess which is bigger?
The set of functions must be larger!
Correct! This leads us to a key conclusion. Even though we can list all programs, there are more functions than programs. This means some functions cannot be matched with any program, and hence, they are uncomputable. Let’s remember: Programs are countable but 'Functions Forever Unwritten!'
That's a catchy phrase! It helps me remember the difference.
We touched upon the idea of non-constructive proofs earlier. Who can explain what this means?
It’s when you prove something exists without actually showing an example.
That's right! In our case, we prove that at least one uncomputable function exists without giving a specific example. This method relies heavily on logic and set theory. Can anyone tell me why this approach is used so often in mathematics?
Because sometimes, finding a specific example is too difficult or impossible!
Exactly! Sometimes it's more about proving existence than finding a specific case. Keep this essence to heart as we delve deeper into computability!
Functions that can be computed by a corresponding program.
Functions that lack any computable program to compute their outputs.
A property of a set that can be enumerated, highlighting different levels of infinity.
Proving the existence of an object without constructing it.
Computable functions, they play by the rules; without a program, uncomputables are fools.
Imagine a librarian trying to list every possible book. Some books can never be listed, just like uncomputable functions exist beyond our grasp.
Remember 'C-U' for Computable-Usable and Uncomputable-Utilized functions.
Think of 'CP' for Computable Program. If there's no program, it's Uncomputable!
Term
What is a computable function?
Click to flip
Term
What makes a function uncomputable?
Click to flip
Term
What is Cantor's diagonalization?
Click to flip
Term
What is the significance of non-constructive proofs?
Click to flip
A function for which there exists a program that can compute the output for every possible input.
A function that cannot be computed by any algorithm or program, regardless of resource allocation.
A set that can be enumerated, even if infinite, such as the set of valid programs.
A proof that establishes the existence of a mathematical object without providing a concrete example.
This section discusses the concepts of computable and uncomputable functions, exploring the existence of uncomputable functions through a non-constructive proof.
The section explains computable functions, defined as those for which a computer program can be created to compute their output for every possible input. It also discusses the significance of uncomputable functions, illustrating their existence through a comparison of the countability of valid programs versus the set of all functions from positive integers to a finite set.
In this section, we delve into the distinction between computable and uncomputable functions. A function is deemed computable if there exists a computer program capable of producing its output for all possible inputs. In contrast, uncomputable functions cannot be computed by any program, regardless of resources such as time and memory. To prove the existence of uncomputable functions, we rely on the concept of countability.
We establish that while the set of valid programs is countable, the set of all possible functions from the set of positive integers to a finite set (like {0, ..., 9}) is uncountable. By demonstrating an injective mapping from the set of real numbers between 0 and 1 to this set of functions, we conclude that there are more functions than programs, confirming the existence of uncomputable functions. This essential insight reminds us of the limitations of computation, illustrating that not all tasks can be automated by computers.