/usr/share/doc/libmpfr-doc/mpfr.html/Introduction-to-MPFR.html is in libmpfr-doc 3.1.2-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This manual documents how to install and use the Multiple Precision
Floating-Point Reliable Library, version 3.1.2.
Copyright 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
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 no Front-Cover Texts, and with no Back-Cover Texts. A copy of the
license is included in GNU Free Documentation License. -->
<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>GNU MPFR 3.1.2: Introduction to MPFR</title>
<meta name="description" content="How to install and use GNU MPFR, a library for reliable multiple precision
floating-point arithmetic, version 3.1.2.">
<meta name="keywords" content="GNU MPFR 3.1.2: Introduction to MPFR">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
<link href="index.html#Top" rel="up" title="Top">
<link href="Installing-MPFR.html#Installing-MPFR" rel="next" title="Installing MPFR">
<link href="Copying.html#Copying" rel="previous" title="Copying">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Introduction-to-MPFR"></a>
<div class="header">
<p>
Next: <a href="Installing-MPFR.html#Installing-MPFR" accesskey="n" rel="next">Installing MPFR</a>, Previous: <a href="Copying.html#Copying" accesskey="p" rel="previous">Copying</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Introduction-to-MPFR-1"></a>
<h2 class="chapter">1 Introduction to MPFR</h2>
<p>MPFR is a portable library written in C for arbitrary precision arithmetic
on floating-point numbers. It is based on the GNU MP library.
It aims to provide a class of floating-point numbers with
precise semantics. The main characteristics of MPFR, which make it differ
from most arbitrary precision floating-point software tools, are:
</p>
<ul>
<li> the MPFR code is portable, i.e., the result of any operation
does not depend on the machine word size
<code>mp_bits_per_limb</code> (64 on most current processors);
</li><li> the precision in bits can be set <em>exactly</em> to any valid value
for each variable (including very small precision);
</li><li> MPFR provides the four rounding modes from the IEEE 754-1985
standard, plus away-from-zero, as well as for basic operations as for other
mathematical functions.
</li></ul>
<p>In particular, with a precision of 53 bits, MPFR is able to
exactly reproduce all computations with double-precision machine
floating-point numbers (e.g., <code>double</code> type in C, with a C
implementation that rigorously follows Annex F of the ISO C99 standard
and <code>FP_CONTRACT</code> pragma set to <code>OFF</code>) on the four arithmetic
operations and the square root, except the default exponent range is much
wider and subnormal numbers are not implemented (but can be emulated).
</p>
<p>This version of MPFR is released under the GNU Lesser General Public
License, version 3 or any later version.
It is permitted to link MPFR to most non-free programs, as long as when
distributing them the MPFR source code and a means to re-link with a
modified MPFR library is provided.
</p>
<a name="How-to-Use-This-Manual"></a>
<h3 class="section">1.1 How to Use This Manual</h3>
<p>Everyone should read <a href="MPFR-Basics.html#MPFR-Basics">MPFR Basics</a>. If you need to install the library
yourself, you need to read <a href="Installing-MPFR.html#Installing-MPFR">Installing MPFR</a>, too.
To use the library you will need to refer to <a href="MPFR-Interface.html#MPFR-Interface">MPFR Interface</a>.
</p>
<p>The rest of the manual can be used for later reference, although it is
probably a good idea to glance through it.
</p>
<hr>
<div class="header">
<p>
Next: <a href="Installing-MPFR.html#Installing-MPFR" accesskey="n" rel="next">Installing MPFR</a>, Previous: <a href="Copying.html#Copying" accesskey="p" rel="previous">Copying</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> [<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|