{
  "tag": "Y931HC",
  "kind": "concept",
  "slug": "polynomial-time",
  "name": "Polynomial time",
  "aliases": [
    "O(n^k) time"
  ],
  "area": "foundations/asymptotic-analysis",
  "level": "intro",
  "summary": "Running time bounded by a polynomial in the input size, the standard formal notion of efficient computation and the class P.",
  "prereqs": [
    "asymptotic-notation",
    "time-complexity",
    "input-size"
  ],
  "sources": [
    {
      "book": "isbn:9781133187790",
      "title": "Michael Sipser, Introduction to the Theory of Computation, third edition",
      "locator": "Section 7.2 (the class P)"
    },
    {
      "book": "isbn:9780521424264",
      "title": "Arora and Barak, Computational Complexity, A Modern Approach",
      "locator": "Chapter 1"
    },
    {
      "book": "isbn:9780262046305",
      "title": "Cormen, Leiserson, Rivest and Stein, Introduction to Algorithms, fourth edition",
      "locator": "Chapter 34"
    },
    {
      "paper": "doi:10.4153/CJM-1965-045-4",
      "title": "Jack Edmonds, Paths, trees, and flowers, Canadian Journal of Mathematics 17 (1965)",
      "locator": "the digression on good algorithms"
    },
    {
      "paper": "Alan Cobham, The intrinsic computational difficulty of functions, Proceedings of the 1964 International Congress for Logic, Methodology and Philosophy of Science (1965)",
      "locator": "the class of functions computable in polynomial time"
    },
    {
      "paper": "Leonid G. Khachiyan, A polynomial algorithm in linear programming, Soviet Mathematics Doklady 20 (1979)",
      "locator": "the ellipsoid method for linear programming"
    },
    {
      "paper": "Manindra Agrawal, Neeraj Kayal and Nitin Saxena, PRIMES is in P, Annals of Mathematics 160 (2004)",
      "locator": "the main theorem"
    }
  ],
  "see_also": [
    "p",
    "np",
    "quadratic-time",
    "cubic-time",
    "pseudo-polynomial-time",
    "quasi-polynomial-time",
    "time-hierarchy-theorem",
    "computational-tractability"
  ],
  "url": "https://algorithm.tamnd.com/polynomial-time/",
  "path": "nodes/foundations/asymptotic-analysis/polynomial-time",
  "status": {
    "slug": "polynomial-time",
    "h": {
      "level": 0,
      "max": 3,
      "label": "H0",
      "name": "no proof",
      "next": [
        "add a proof in proofs/ (06.5)"
      ]
    },
    "l": {
      "level": 0,
      "max": 4,
      "label": "L0",
      "name": "no Lean part",
      "next": [
        "name a Lean module in the lean field (07)"
      ]
    },
    "i": {},
    "v": {
      "level": 0,
      "max": 3,
      "label": "V0",
      "name": "none",
      "next": [
        "add viz/scene.ts or a figure (10)"
      ]
    },
    "w": {
      "level": 4,
      "max": 5,
      "label": "W4",
      "name": "complete",
      "next": [
        "a review of the text: no review record reviews/Y931HC/text.yaml"
      ]
    }
  },
  "scene": false
}
