This is mpir.info, produced by makeinfo version 4.13 from mpir.texi. This manual describes how to install and use MPIR, the Multiple Precision Integers and Rationals library, version 1.2. Copyright 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. Copyright 2008 William Hart Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, with the Front-Cover Texts being "A GNU Manual", and with the Back-Cover Texts being "You have freedom to copy and modify this GNU Manual, like GNU software". A copy of the license is included in *note GNU Free Documentation License::. INFO-DIR-SECTION GNU libraries START-INFO-DIR-ENTRY * mpir: (mpir). MPIR Multiple Precision Integers and Rationals Library. END-INFO-DIR-ENTRY  Indirect: mpir.info-1: 988 mpir.info-2: 300591  Tag Table: (Indirect) Node: Top988 Node: Copying3231 Node: Introduction to MPIR5076 Node: Installing MPIR7497 Node: Build Options8633 Node: ABI and ISA24939 Node: Notes for Package Builds34366 Node: Notes for Particular Systems37484 Node: Known Build Problems44238 Node: Performance optimization47788 Node: MPIR Basics48923 Node: Headers and Libraries49577 Node: Nomenclature and Types51032 Node: Function Classes52743 Node: Variable Conventions54281 Node: Parameter Conventions55810 Node: Memory Management57874 Node: Reentrancy59006 Node: Useful Macros and Constants60443 Node: Compatibility with older versions61787 Node: Demonstration Programs62630 Node: Efficiency64501 Node: Debugging72131 Node: Profiling78698 Node: Autoconf82732 Node: Emacs84606 Node: Reporting Bugs85215 Node: Integer Functions87782 Node: Initializing Integers88561 Node: Assigning Integers90233 Node: Simultaneous Integer Init & Assign91821 Node: Converting Integers93448 Node: Integer Arithmetic96101 Node: Integer Division97704 Node: Integer Exponentiation104133 Node: Integer Roots104995 Node: Number Theoretic Functions106670 Node: Integer Comparisons112724 Node: Integer Logic and Bit Fiddling114103 Node: I/O of Integers116717 Node: Integer Random Numbers119332 Node: Integer Import and Export121108 Node: Miscellaneous Integer Functions125113 Node: Integer Special Functions126974 Node: Rational Number Functions130059 Node: Initializing Rationals131254 Node: Rational Conversions133500 Node: Rational Arithmetic135232 Node: Comparing Rationals136569 Node: Applying Integer Functions137937 Node: I/O of Rationals139421 Node: Floating-point Functions141284 Node: Initializing Floats144172 Node: Assigning Floats147870 Node: Simultaneous Float Init & Assign150438 Node: Converting Floats151968 Node: Float Arithmetic154929 Node: Float Comparison156975 Node: I/O of Floats158418 Node: Miscellaneous Float Functions160744 Node: Low-level Functions162645 Node: Random Number Functions183084 Node: Random State Initialization184154 Node: Random State Seeding186217 Node: Random State Miscellaneous187607 Node: Formatted Output188249 Node: Formatted Output Strings188495 Node: Formatted Output Functions193735 Node: C++ Formatted Output197812 Node: Formatted Input200499 Node: Formatted Input Strings200736 Node: Formatted Input Functions205398 Node: C++ Formatted Input208371 Node: C++ Class Interface210279 Node: C++ Interface General211284 Node: C++ Interface Integers214367 Node: C++ Interface Rationals217801 Node: C++ Interface Floats221480 Node: C++ Interface Random Numbers226775 Node: C++ Interface Limitations228905 Node: BSD Compatible Functions231751 Node: Custom Allocation231969 Node: Language Bindings236161 Node: Algorithms240177 Node: Multiplication Algorithms240882 Node: Basecase Multiplication241817 Node: Karatsuba Multiplication243729 Node: Toom 3-Way Multiplication247359 Node: FFT Multiplication253768 Node: Other Multiplication259106 Node: Division Algorithms261592 Node: Single Limb Division261940 Node: Basecase Division264860 Node: Divide and Conquer Division266064 Node: Exact Division268302 Node: Exact Remainder271470 Node: Small Quotient Division273763 Node: Greatest Common Divisor Algorithms275362 Node: Binary GCD275636 Node: Accelerated GCD278315 Node: Extended GCD280114 Node: Jacobi Symbol281785 Node: Powering Algorithms282702 Node: Normal Powering Algorithm282966 Node: Modular Powering Algorithm283495 Node: Root Extraction Algorithms284559 Node: Square Root Algorithm284875 Node: Nth Root Algorithm287018 Node: Perfect Square Algorithm287804 Node: Perfect Power Algorithm289891 Node: Radix Conversion Algorithms290513 Node: Binary to Radix290890 Node: Radix to Binary294821 Node: Other Algorithms296753 Node: Prime Testing Algorithm297107 Node: Factorial Algorithm298292 Node: Binomial Coefficients Algorithm299696 Node: Fibonacci Numbers Algorithm300591 Node: Lucas Numbers Algorithm303067 Node: Random Number Algorithms303789 Node: Assembler Coding305913 Node: Assembler Code Organisation306890 Node: Assembler Basics307863 Node: Assembler Carry Propagation309022 Node: Assembler Cache Handling310860 Node: Assembler Functional Units313028 Node: Assembler Floating Point314649 Node: Assembler SIMD Instructions318432 Node: Assembler Software Pipelining319421 Node: Assembler Loop Unrolling320489 Node: Assembler Writing Guide322709 Node: Internals325479 Node: Integer Internals325993 Node: Rational Internals328250 Node: Float Internals329490 Node: Raw Output Internals336818 Node: C++ Interface Internals338013 Node: Contributors341312 Node: References346246 Node: GNU Free Documentation License351302 Node: Concept Index373749 Node: Function Index419605  End Tag Table