Computability and Complexity
This quiz covers the fundamental concepts of Computability and Complexity, including Turing machines, computability, complexity classes, and algorithms.
Questions
Question 1 Multiple Choice (Single Answer)
What is the halting problem?
- The problem of determining whether a given program will terminate or run forever.
- The problem of determining the time complexity of a given program.
- The problem of determining the space complexity of a given program.
- The problem of determining the correctness of a given program.
Question 2 Multiple Choice (Single Answer)
What is a Turing machine?
- A mathematical model of a computer.
- A physical computer.
- A programming language.
- A software application.
Question 3 Multiple Choice (Single Answer)
What is computability?
- The study of what can be computed by a Turing machine.
- The study of the efficiency of algorithms.
- The study of the correctness of programs.
- The study of the security of computer systems.
Question 4 Multiple Choice (Single Answer)
What is a complexity class?
- A set of problems that can be solved by a Turing machine in a certain amount of time.
- A set of problems that can be solved by a Turing machine in a certain amount of space.
- A set of problems that can be solved by a Turing machine in a certain number of steps.
- A set of problems that can be solved by a Turing machine in a certain amount of memory.
Question 5 Multiple Choice (Single Answer)
What is the P complexity class?
- The class of problems that can be solved by a Turing machine in polynomial time.
- The class of problems that can be solved by a Turing machine in exponential time.
- The class of problems that can be solved by a Turing machine in linear time.
- The class of problems that can be solved by a Turing machine in logarithmic time.
Question 6 Multiple Choice (Single Answer)
What is the NP complexity class?
- The class of problems that can be solved by a Turing machine in nondeterministic polynomial time.
- The class of problems that can be solved by a Turing machine in deterministic polynomial time.
- The class of problems that can be solved by a Turing machine in exponential time.
- The class of problems that can be solved by a Turing machine in linear time.
Question 7 Multiple Choice (Single Answer)
What is the relationship between P and NP?
- P = NP.
- P != NP.
- P is a subset of NP.
- NP is a subset of P.
Question 8 Multiple Choice (Single Answer)
What is an algorithm?
- A set of instructions for solving a problem.
- A computer program.
- A mathematical proof.
- A data structure.
Question 9 Multiple Choice (Single Answer)
What is the time complexity of an algorithm?
- The amount of time it takes the algorithm to run on a given input.
- The number of steps it takes the algorithm to run on a given input.
- The amount of memory it takes the algorithm to run on a given input.
- The number of instructions it takes the algorithm to run on a given input.
Question 10 Multiple Choice (Single Answer)
What is the space complexity of an algorithm?
- The amount of time it takes the algorithm to run on a given input.
- The number of steps it takes the algorithm to run on a given input.
- The amount of memory it takes the algorithm to run on a given input.
- The number of instructions it takes the algorithm to run on a given input.
Question 11 Multiple Choice (Single Answer)
What is the difference between a deterministic and a nondeterministic algorithm?
- A deterministic algorithm always takes the same path through the program, while a nondeterministic algorithm can take different paths.
- A deterministic algorithm always terminates, while a nondeterministic algorithm may not terminate.
- A deterministic algorithm uses less memory than a nondeterministic algorithm.
- A deterministic algorithm is always more efficient than a nondeterministic algorithm.
Question 12 Multiple Choice (Single Answer)
What is a reduction?
- A way of transforming one problem into another.
- A way of proving that two problems are equivalent.
- A way of finding a solution to a problem.
- A way of analyzing the efficiency of an algorithm.
Question 13 Multiple Choice (Single Answer)
What is the Cook-Levin theorem?
- A theorem that states that SAT is NP-complete.
- A theorem that states that P = NP.
- A theorem that states that NP is a subset of P.
- A theorem that states that P is a subset of NP.
Question 14 Multiple Choice (Single Answer)
What are NP-complete problems?
- Problems that can be solved by a Turing machine in polynomial time.
- Problems that can be solved by a Turing machine in exponential time.
- Problems that can be reduced to SAT.
- Problems that are at least as hard as SAT.