Computational complexity theory - Wikipedia

This resource provides a mathematical formalization of what makes computational problems difficult, focusing on the resources (like time and storage) required to solve them. It distinguishes itself from algorithm analysis by examining the inherent difficulty of problems rather than specific algorithms, and from computability theory by considering resource limitations. The content delves into defining complexity classes and hierarchy theorems.

Overzicht

Toegevoegd op

17 maart 2026

Vak & domein

computer-science-fundamentals · theory-of-computation

Schooljaar

Klas 1 (brugklas)–Klas 4

Paginatype

Article

Inleiding

Computational Complexity Theory Overview

  • Core Definition: A branch of theoretical computer science that classifies computational problems based on the resources (time, storage, communication, etc.) required to solve them.
  • Key Objective: To determine the practical limits of what computers can and cannot do by analyzing all possible algorithms for a given problem, rather than just one specific algorithm.
  • Problem vs. Instance:
    • Problem: An abstract question (e.g., primality testing).
    • Instance: A specific input for that problem (e.g., the number 15). Complexity theory focuses on the problem, not individual instances.
  • Types of Problems:
    • Decision Problems: Problems with a "yes" or "no" output (e.g., "Is this graph connected?"). These are the central objects of study and can be viewed as formal languages.
    • Function Problems: Problems requiring a more complex output (e.g., integer factorization or the traveling salesman problem). These can be recast as decision problems.
  • Measuring Complexity:
    • Complexity is expressed as a function of the input size ($n$), typically measured in bits.
    • Worst-case time complexity: The maximum time required for any input of size $n$.
    • Polynomial time: Algorithms where the time taken is a polynomial function of $n$.
    • Cobham's Thesis: Proposes that problems solvable in polynomial time are "feasible."
  • Mathematical Models:
    • Turing Machine: The standard theoretical model used to represent any computing device.
    • Church–Turing Thesis: The belief that any algorithmically solvable problem can be solved by a Turing machine.
    • Machine Variations: Includes deterministic, probabilistic, non-deterministic, and quantum Turing machines, which help define various complexity classes.
  • Related Fields:
    • Analysis of Algorithms: Focuses on the resource usage of a specific algorithm.
    • Computability Theory: Asks what can be solved in principle, without resource restrictions.
  • Notable Problem: The P versus NP problem, one of the seven Millennium Prize Problems, is a central topic in the field.

Community-recensies

Nog geen gepubliceerde recensies. Deel als eerste uw ervaring.