{
  "aliases": null,
  "backlinks": [
    {
      "field": "defines",
      "target": "8Y4C6N09YQ"
    }
  ],
  "body": "\n## Summary\n\nArbitrary-precision arithmetic computes with numbers whose number of digits is limited only by the memory of the computer, not by a fixed hardware format.\nIntegers and rational numbers can then be handled exactly, and real numbers with as many correct digits as one asks for.\nUnlike fixed-size [[floating-point arithmetic|RTKRSC3KPH]], each operation costs more as the numbers grow, so fast multiplication algorithms matter.\nIt is used in computer algebra, number theory, cryptography and to check numerical results with higher precision.\n\n## Explanations\n\n### L1 human\n\nA calculator shows perhaps $12$ digits, and a computer's built-in numbers hold about $16$ decimal digits.\nArbitrary-precision arithmetic stores a number as a list of digits that can be as long as needed, just as one writes long numbers on paper.\nIt can compute $2^{1000}$, a number with $302$ digits, exactly, or $\\pi$ to a million decimals.\nThe price is speed: a product of two numbers with $n$ digits each takes far more time than one machine multiplication.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "kind": "concept",
    "msc": [
      "65Y04",
      "68W30"
    ],
    "name": "Arbitrary-precision arithmetic",
    "same_as": {
      "wikidata": "Q527381",
      "wikipedia": "Arbitrary-precision arithmetic"
    },
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic"
      }
    ],
    "tag": "AS00YM4X7F"
  },
  "kind": "concept",
  "link": "https://tamnd.github.io/math2/node/AS00YM4X7F/",
  "links": null,
  "markdown": "https://tamnd.github.io/math2/node/AS00YM4X7F.md",
  "msc": [
    "65Y04",
    "68W30"
  ],
  "name": "Arbitrary-precision arithmetic",
  "prov": null,
  "role": "",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/AS0/AS00YM4X7F.md",
  "status": null,
  "tag": "AS00YM4X7F",
  "uri": "m2://AS00YM4X7F",
  "url": "https://tamnd.github.io/math2/wiki/arbitrary-precision-arithmetic/",
  "writing": {
    "tag": "AS00YM4X7F",
    "kind": "concept",
    "level": "W0",
    "next": [
      {
        "what": "an inventory row",
        "note": "the row of the inventory that the node accounts for",
        "have": 0,
        "want": 1
      },
      {
        "what": "a source with a locator",
        "have": 0,
        "want": 1
      }
    ]
  }
}
