1This is gmp.info, produced by makeinfo version 6.7 from gmp.texi. 2 3This manual describes how to install and use the GNU multiple precision 4arithmetic library, version 6.2.1. 5 6 Copyright 1991, 1993-2016, 2018-2020 Free Software Foundation, Inc. 7 8 Permission is granted to copy, distribute and/or modify this document 9under the terms of the GNU Free Documentation License, Version 1.3 or 10any later version published by the Free Software Foundation; with no 11Invariant Sections, with the Front-Cover Texts being "A GNU Manual", and 12with the Back-Cover Texts being "You have freedom to copy and modify 13this GNU Manual, like GNU software". A copy of the license is included 14in *note GNU Free Documentation License::. 15INFO-DIR-SECTION GNU libraries 16START-INFO-DIR-ENTRY 17* gmp: (gmp). GNU Multiple Precision Arithmetic Library. 18END-INFO-DIR-ENTRY 19 20 21Indirect: 22gmp.info-1: 863 23gmp.info-2: 303737 24 25Tag Table: 26(Indirect) 27Node: Top863 28Node: Copying2941 29Node: Introduction to GMP5288 30Node: Installing GMP8004 31Node: Build Options8736 32Node: ABI and ISA24445 33Node: Notes for Package Builds34286 34Node: Notes for Particular Systems37373 35Node: Known Build Problems45124 36Node: Performance optimization48656 37Node: GMP Basics49785 38Node: Headers and Libraries50433 39Node: Nomenclature and Types51838 40Node: Function Classes53834 41Node: Variable Conventions55369 42Node: Parameter Conventions57609 43Node: Memory Management59416 44Node: Reentrancy60544 45Node: Useful Macros and Constants62412 46Node: Compatibility with older versions63403 47Node: Demonstration Programs64313 48Node: Efficiency66172 49Node: Debugging73778 50Node: Profiling80553 51Node: Autoconf84544 52Node: Emacs86325 53Node: Reporting Bugs86931 54Node: Integer Functions89557 55Node: Initializing Integers90333 56Node: Assigning Integers92709 57Node: Simultaneous Integer Init & Assign94320 58Node: Converting Integers95967 59Node: Integer Arithmetic98907 60Node: Integer Division100643 61Node: Integer Exponentiation107402 62Node: Integer Roots108899 63Node: Number Theoretic Functions110616 64Node: Integer Comparisons118111 65Node: Integer Logic and Bit Fiddling119549 66Node: I/O of Integers122189 67Node: Integer Random Numbers125180 68Node: Integer Import and Export127803 69Node: Miscellaneous Integer Functions131819 70Node: Integer Special Functions133733 71Node: Rational Number Functions137906 72Node: Initializing Rationals139099 73Node: Rational Conversions141572 74Node: Rational Arithmetic143594 75Node: Comparing Rationals145006 76Node: Applying Integer Functions146477 77Node: I/O of Rationals147996 78Node: Floating-point Functions150355 79Node: Initializing Floats153400 80Node: Assigning Floats157492 81Node: Simultaneous Float Init & Assign160080 82Node: Converting Floats161630 83Node: Float Arithmetic164895 84Node: Float Comparison167048 85Node: I/O of Floats168619 86Node: Miscellaneous Float Functions171308 87Node: Low-level Functions173310 88Node: Random Number Functions207558 89Node: Random State Initialization208626 90Node: Random State Seeding211491 91Node: Random State Miscellaneous212896 92Node: Formatted Output213538 93Node: Formatted Output Strings213783 94Node: Formatted Output Functions219178 95Node: C++ Formatted Output223242 96Node: Formatted Input225942 97Node: Formatted Input Strings226178 98Node: Formatted Input Functions230838 99Node: C++ Formatted Input233807 100Node: C++ Class Interface235710 101Node: C++ Interface General236661 102Node: C++ Interface Integers239730 103Node: C++ Interface Rationals243963 104Node: C++ Interface Floats247987 105Node: C++ Interface Random Numbers254004 106Node: C++ Interface Limitations256404 107Node: Custom Allocation259979 108Node: Language Bindings264198 109Node: Algorithms267511 110Node: Multiplication Algorithms268211 111Node: Basecase Multiplication269300 112Node: Karatsuba Multiplication271208 113Node: Toom 3-Way Multiplication274832 114Node: Toom 4-Way Multiplication281251 115Node: Higher degree Toom'n'half282630 116Node: FFT Multiplication283922 117Node: Other Multiplication289258 118Node: Unbalanced Multiplication291732 119Node: Division Algorithms292520 120Node: Single Limb Division292899 121Node: Basecase Division295787 122Node: Divide and Conquer Division296990 123Node: Block-Wise Barrett Division299058 124Node: Exact Division299710 125Node: Exact Remainder303737 126Node: Small Quotient Division305987 127Node: Greatest Common Divisor Algorithms307585 128Node: Binary GCD307882 129Node: Lehmer's Algorithm310732 130Node: Subquadratic GCD312962 131Node: Extended GCD315431 132Node: Jacobi Symbol316749 133Node: Powering Algorithms318658 134Node: Normal Powering Algorithm318921 135Node: Modular Powering Algorithm319449 136Node: Root Extraction Algorithms320231 137Node: Square Root Algorithm320546 138Node: Nth Root Algorithm322687 139Node: Perfect Square Algorithm323472 140Node: Perfect Power Algorithm325559 141Node: Radix Conversion Algorithms326180 142Node: Binary to Radix326556 143Node: Radix to Binary330177 144Node: Other Algorithms332265 145Node: Prime Testing Algorithm332617 146Node: Factorial Algorithm333801 147Node: Binomial Coefficients Algorithm336201 148Node: Fibonacci Numbers Algorithm337095 149Node: Lucas Numbers Algorithm339569 150Node: Random Number Algorithms340290 151Node: Assembly Coding342410 152Node: Assembly Code Organisation343370 153Node: Assembly Basics344337 154Node: Assembly Carry Propagation345487 155Node: Assembly Cache Handling347317 156Node: Assembly Functional Units349478 157Node: Assembly Floating Point351091 158Node: Assembly SIMD Instructions354870 159Node: Assembly Software Pipelining355852 160Node: Assembly Loop Unrolling356915 161Node: Assembly Writing Guide359130 162Node: Internals361895 163Node: Integer Internals362407 164Node: Rational Internals364871 165Node: Float Internals366109 166Node: Raw Output Internals373509 167Node: C++ Interface Internals374703 168Node: Contributors378024 169Node: References384255 170Node: GNU Free Documentation License390174 171Node: Concept Index415316 172Node: Function Index463130 173 174End Tag Table 175 176 177Local Variables: 178coding: iso-8859-1 179End: 180