Sophie

Sophie

distrib > * > cooker > x86_64 > by-pkgid > 6821ecc3db154939da2f564d5e6d1885 > files > 21

ppl-docs-0.11.2-1.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>PPL: Parma_Polyhedra_Library::Checked_Number&lt; T, Policy &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.3 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespaceParma__Polyhedra__Library.html">Parma_Polyhedra_Library</a>::<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>
  </div>
</div>
<div class="contents">
<h1>Parma_Polyhedra_Library::Checked_Number&lt; T, Policy &gt; Class Template Reference<br/>
<small>
[<a class="el" href="group__PPL__CXX__interface.html">C++ Language Interface</a>]</small>
</h1><!-- doxytag: class="Parma_Polyhedra_Library::Checked_Number" -->
<p>A wrapper for numeric types implementing a given policy.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;ppl.hh&gt;</code></p>

<p><a href="classParma__Polyhedra__Library_1_1Checked__Number-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33a5462cd5398fdbd61989d17aeeaa72"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::OK" ref="a33a5462cd5398fdbd61989d17aeeaa72" args="() const " -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a33a5462cd5398fdbd61989d17aeeaa72">OK</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks if all the invariants are satisfied. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ab74908b692bc6f8112f5d27b96141431">classify</a> (bool nan=true, bool inf=true, bool sign=true) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Classifies *this.  <a href="#ab74908b692bc6f8112f5d27b96141431"></a><br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Constructors</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrp559a25fdb98a7d1fd1c3771ac568d5e9"></a> </p>
</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afcba1dd5e579752d6dcc40ef4d5799b8"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="afcba1dd5e579752d6dcc40ef4d5799b8" args="()" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#afcba1dd5e579752d6dcc40ef4d5799b8">Checked_Number</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac0ef828e81a5c7625db3abadcafc8438"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="ac0ef828e81a5c7625db3abadcafc8438" args="(const Checked_Number &amp;y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ac0ef828e81a5c7625db3abadcafc8438">Checked_Number</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="af2441164b4c23a8203f399f561c9a7c7"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="af2441164b4c23a8203f399f561c9a7c7" args="(const Checked_Number&lt; From, From_Policy &gt; &amp;y, Rounding_Dir dir)" -->
template&lt;typename From , typename From_Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#af2441164b4c23a8203f399f561c9a7c7">Checked_Number</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; From, From_Policy &gt; &amp;y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html" title="A wrapper for numeric types implementing a given policy.">Checked_Number</a> and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4ce2f9170fb3470ba10d87607c3c0bf3"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a4ce2f9170fb3470ba10d87607c3c0bf3" args="(char y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a4ce2f9170fb3470ba10d87607c3c0bf3">Checked_Number</a> (char y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a plain char and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bed59d493c4fd91537602efb267c938"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a4bed59d493c4fd91537602efb267c938" args="(signed char y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a4bed59d493c4fd91537602efb267c938">Checked_Number</a> (signed char y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed char and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80f6de87ec43c33fac3832b14a507c0b"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a80f6de87ec43c33fac3832b14a507c0b" args="(signed short y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a80f6de87ec43c33fac3832b14a507c0b">Checked_Number</a> (signed short y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed short and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a298300b8f88eb674c317b99ad09a474b"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a298300b8f88eb674c317b99ad09a474b" args="(signed int y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a298300b8f88eb674c317b99ad09a474b">Checked_Number</a> (signed int y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed int and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2024878c4c26cb836d454e2e93f40c8f"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a2024878c4c26cb836d454e2e93f40c8f" args="(signed long y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a2024878c4c26cb836d454e2e93f40c8f">Checked_Number</a> (signed long y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed long and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4f3206ab2d3c47e2014e5b306167c7c0"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a4f3206ab2d3c47e2014e5b306167c7c0" args="(signed long long y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a4f3206ab2d3c47e2014e5b306167c7c0">Checked_Number</a> (signed long long y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed long long and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acca11ef67e39b711f96604b6bf806feb"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="acca11ef67e39b711f96604b6bf806feb" args="(unsigned char y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#acca11ef67e39b711f96604b6bf806feb">Checked_Number</a> (unsigned char y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned char and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab4d4a0ebee3fcc93490aa029028a810b"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="ab4d4a0ebee3fcc93490aa029028a810b" args="(unsigned short y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ab4d4a0ebee3fcc93490aa029028a810b">Checked_Number</a> (unsigned short y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned short and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1bdc1023fb4478270594d0e965eb90c9"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a1bdc1023fb4478270594d0e965eb90c9" args="(unsigned int y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a1bdc1023fb4478270594d0e965eb90c9">Checked_Number</a> (unsigned int y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned int and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a461dbfcb8f68886137794e4a408fc55e"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a461dbfcb8f68886137794e4a408fc55e" args="(unsigned long y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a461dbfcb8f68886137794e4a408fc55e">Checked_Number</a> (unsigned long y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned long and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74b0a8cfdec7831e7a3e296b3e3751dd"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a74b0a8cfdec7831e7a3e296b3e3751dd" args="(unsigned long long y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a74b0a8cfdec7831e7a3e296b3e3751dd">Checked_Number</a> (unsigned long long y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned long long and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6957dba3dbf92459a364893d7ecfb897"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a6957dba3dbf92459a364893d7ecfb897" args="(float y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a6957dba3dbf92459a364893d7ecfb897">Checked_Number</a> (float y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a float and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af47ee9cf59cfac8a346660698c61d113"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="af47ee9cf59cfac8a346660698c61d113" args="(double y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#af47ee9cf59cfac8a346660698c61d113">Checked_Number</a> (double y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a double and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abf60cc7fa60d33c4fe958126d55cbac2"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="abf60cc7fa60d33c4fe958126d55cbac2" args="(long double y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#abf60cc7fa60d33c4fe958126d55cbac2">Checked_Number</a> (long double y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a long double and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a77a2c5c27e9c0838fea6e6447b20c320"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a77a2c5c27e9c0838fea6e6447b20c320" args="(const mpq_class &amp;y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a77a2c5c27e9c0838fea6e6447b20c320">Checked_Number</a> (const mpq_class &amp;y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a rational and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a404beea19c04f4e7bbcfe81aae0d6a7d"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a404beea19c04f4e7bbcfe81aae0d6a7d" args="(const mpz_class &amp;y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a404beea19c04f4e7bbcfe81aae0d6a7d">Checked_Number</a> (const mpz_class &amp;y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unbounded integer and rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada0964a53a3426e1fc35355ed38a235c"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="ada0964a53a3426e1fc35355ed38a235c" args="(const char *y, Rounding_Dir dir)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ada0964a53a3426e1fc35355ed38a235c">Checked_Number</a> (const char *y, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a C string and rounding mode. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="ae3a660d2b2a34f69d2d0cb1cc77f6f69"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="ae3a660d2b2a34f69d2d0cb1cc77f6f69" args="(const From &amp;, Rounding_Dir dir, typename Enable_If&lt; Is_Special&lt; From &gt;::value, bool &gt;::type ignored=false)" -->
template&lt;typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ae3a660d2b2a34f69d2d0cb1cc77f6f69">Checked_Number</a> (const From &amp;, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir, typename Enable_If&lt; Is_Special&lt; From &gt;::value, bool &gt;::type ignored=false)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from special and rounding mode. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="aed795d57d70d782ccf2a584cce183050"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="aed795d57d70d782ccf2a584cce183050" args="(const Checked_Number&lt; From, From_Policy &gt; &amp;y)" -->
template&lt;typename From , typename From_Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#aed795d57d70d782ccf2a584cce183050">Checked_Number</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; From, From_Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html" title="A wrapper for numeric types implementing a given policy.">Checked_Number</a>, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9d2cd0aa9626fd28ec99bde5bff4c020"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a9d2cd0aa9626fd28ec99bde5bff4c020" args="(char y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a9d2cd0aa9626fd28ec99bde5bff4c020">Checked_Number</a> (char y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a plain char, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa3de5a2fe7f06d0aa3e4972be2023933"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="aa3de5a2fe7f06d0aa3e4972be2023933" args="(signed char y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#aa3de5a2fe7f06d0aa3e4972be2023933">Checked_Number</a> (signed char y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed char, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afcb46dd5c0701130f067f577f99ef27f"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="afcb46dd5c0701130f067f577f99ef27f" args="(signed short y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#afcb46dd5c0701130f067f577f99ef27f">Checked_Number</a> (signed short y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed short, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a24e90bb8bb38d248aca79c76a1717d9d"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a24e90bb8bb38d248aca79c76a1717d9d" args="(signed int y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a24e90bb8bb38d248aca79c76a1717d9d">Checked_Number</a> (signed int y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed int, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55e9dfdf5da9a55b7523bda6b7f56c78"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a55e9dfdf5da9a55b7523bda6b7f56c78" args="(signed long y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a55e9dfdf5da9a55b7523bda6b7f56c78">Checked_Number</a> (signed long y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed long, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8abdf2e292960e1fb216ce3c2c0816ff"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a8abdf2e292960e1fb216ce3c2c0816ff" args="(signed long long y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a8abdf2e292960e1fb216ce3c2c0816ff">Checked_Number</a> (signed long long y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a signed long long, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9d7eaecf113e25020c55ed0bf79eb03"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="af9d7eaecf113e25020c55ed0bf79eb03" args="(unsigned char y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#af9d7eaecf113e25020c55ed0bf79eb03">Checked_Number</a> (unsigned char y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned char, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afad3fbdebb1ba319083c56fa2ae679e6"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="afad3fbdebb1ba319083c56fa2ae679e6" args="(unsigned short y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#afad3fbdebb1ba319083c56fa2ae679e6">Checked_Number</a> (unsigned short y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned short, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79f64d099a652834da74cc8fd68f2452"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a79f64d099a652834da74cc8fd68f2452" args="(unsigned int y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a79f64d099a652834da74cc8fd68f2452">Checked_Number</a> (unsigned int y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned int, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a164f8732d5fe6b526a34e168145a95ad"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a164f8732d5fe6b526a34e168145a95ad" args="(unsigned long y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a164f8732d5fe6b526a34e168145a95ad">Checked_Number</a> (unsigned long y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned long, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a98dae78cdd16f7127a4b3e18c3976562"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a98dae78cdd16f7127a4b3e18c3976562" args="(unsigned long long y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a98dae78cdd16f7127a4b3e18c3976562">Checked_Number</a> (unsigned long long y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unsigned long long, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9daca45c3c1d0d1afd57ab47c6cacd4"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="af9daca45c3c1d0d1afd57ab47c6cacd4" args="(float y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#af9daca45c3c1d0d1afd57ab47c6cacd4">Checked_Number</a> (float y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a float, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af0647cd431d30a9658d4bdc77e32d9e4"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="af0647cd431d30a9658d4bdc77e32d9e4" args="(double y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#af0647cd431d30a9658d4bdc77e32d9e4">Checked_Number</a> (double y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a double, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab19be1f26efb21370e8460b325a7f57c"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="ab19be1f26efb21370e8460b325a7f57c" args="(long double y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ab19be1f26efb21370e8460b325a7f57c">Checked_Number</a> (long double y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a long double, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65b1cc4ac0c0c8a2efcbf3d36d4ac0ac"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a65b1cc4ac0c0c8a2efcbf3d36d4ac0ac" args="(const mpq_class &amp;y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a65b1cc4ac0c0c8a2efcbf3d36d4ac0ac">Checked_Number</a> (const mpq_class &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a rational, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6afe848ad84ff68d48142caf0599760a"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a6afe848ad84ff68d48142caf0599760a" args="(const mpz_class &amp;y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a6afe848ad84ff68d48142caf0599760a">Checked_Number</a> (const mpz_class &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from an unbounded integer, default rounding mode. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a91459c49e4f7d7fc2dea0347e0489ce5"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a91459c49e4f7d7fc2dea0347e0489ce5" args="(const char *y)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a91459c49e4f7d7fc2dea0347e0489ce5">Checked_Number</a> (const char *y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from a C string, default rounding mode. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a956de4112c520bb87767ce894b4d512d"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::Checked_Number" ref="a956de4112c520bb87767ce894b4d512d" args="(const From &amp;, typename Enable_If&lt; Is_Special&lt; From &gt;::value, bool &gt;::type ignored=false)" -->
template&lt;typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a956de4112c520bb87767ce894b4d512d">Checked_Number</a> (const From &amp;, typename Enable_If&lt; Is_Special&lt; From &gt;::value, bool &gt;::type ignored=false)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Direct initialization from special, default rounding mode. <br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Accessors and Conversions</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrpcf72a59c8e75e062412dc6aee5b27026"></a> </p>
</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a00f887bfb5c61faba29a67def563c786"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator T" ref="a00f887bfb5c61faba29a67def563c786" args="() const " -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a00f887bfb5c61faba29a67def563c786">operator T</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Conversion operator: returns a copy of the underlying numeric value. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a268aa30d717cdc7d07e60cf7c56712e6"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::raw_value" ref="a268aa30d717cdc7d07e60cf7c56712e6" args="()" -->
T &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a268aa30d717cdc7d07e60cf7c56712e6">raw_value</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a reference to the underlying numeric value. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a627ac77a4752fde3c10792ee9f1673a4"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::raw_value" ref="a627ac77a4752fde3c10792ee9f1673a4" args="() const " -->
const T &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a627ac77a4752fde3c10792ee9f1673a4">raw_value</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a const reference to the underlying numeric value. <br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Assignment Operators</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrp8c970bf045f03d73a5a10ed99a172ad4"></a> </p>
</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab45faf2ccad8057c7b27e0c999eb063b"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator=" ref="ab45faf2ccad8057c7b27e0c999eb063b" args="(const Checked_Number &amp;y)" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ab45faf2ccad8057c7b27e0c999eb063b">operator=</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a80993a2a72759ec030dd3cde21c8a00d"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator=" ref="a80993a2a72759ec030dd3cde21c8a00d" args="(const From &amp;y)" -->
template&lt;typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a80993a2a72759ec030dd3cde21c8a00d">operator=</a> (const From &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a08ceb442794b5f60c1ad09ce744371e1"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator+=" ref="a08ceb442794b5f60c1ad09ce744371e1" args="(const Checked_Number&lt; T, From_Policy &gt; &amp;y)" -->
template&lt;typename From_Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a08ceb442794b5f60c1ad09ce744371e1">operator+=</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, From_Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add and assign operator. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8772f767006f16e376d8eca9b1578b73"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator+=" ref="a8772f767006f16e376d8eca9b1578b73" args="(const T &amp;y)" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a8772f767006f16e376d8eca9b1578b73">operator+=</a> (const T &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add and assign operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a59638854527a5bebee3676750668c63a"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator+=" ref="a59638854527a5bebee3676750668c63a" args="(const From &amp;y)" -->
template&lt;typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From &gt;<br class="typebreak"/>
::value, <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, <br class="typebreak"/>
Policy &gt; &amp; &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a59638854527a5bebee3676750668c63a">operator+=</a> (const From &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add and assign operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a2857ee1039a41cfab001c0ba21c69ac3"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&#45;=" ref="a2857ee1039a41cfab001c0ba21c69ac3" args="(const Checked_Number&lt; T, From_Policy &gt; &amp;y)" -->
template&lt;typename From_Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a2857ee1039a41cfab001c0ba21c69ac3">operator-=</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, From_Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract and assign operator. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02949da26a3761489d2fb98018010990"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&#45;=" ref="a02949da26a3761489d2fb98018010990" args="(const T &amp;y)" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a02949da26a3761489d2fb98018010990">operator-=</a> (const T &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract and assign operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a9c4298d04019ab7b5233ddceb430be03"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&#45;=" ref="a9c4298d04019ab7b5233ddceb430be03" args="(const From &amp;y)" -->
template&lt;typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From &gt;<br class="typebreak"/>
::value, <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, <br class="typebreak"/>
Policy &gt; &amp; &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a9c4298d04019ab7b5233ddceb430be03">operator-=</a> (const From &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract and assign operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a761744f24a8e2faed19912950cf13baf"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator*=" ref="a761744f24a8e2faed19912950cf13baf" args="(const Checked_Number&lt; T, From_Policy &gt; &amp;y)" -->
template&lt;typename From_Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a761744f24a8e2faed19912950cf13baf">operator*=</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, From_Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply and assign operator. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ce6dfd81e04c3eb8d196bf13a96ebe6"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator*=" ref="a7ce6dfd81e04c3eb8d196bf13a96ebe6" args="(const T &amp;y)" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a7ce6dfd81e04c3eb8d196bf13a96ebe6">operator*=</a> (const T &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply and assign operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="ac95c1fbaee07d3a9cead4d07683f6168"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator*=" ref="ac95c1fbaee07d3a9cead4d07683f6168" args="(const From &amp;y)" -->
template&lt;typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From &gt;<br class="typebreak"/>
::value, <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, <br class="typebreak"/>
Policy &gt; &amp; &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ac95c1fbaee07d3a9cead4d07683f6168">operator*=</a> (const From &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply and assign operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a72ef8379745ed9575b39216ba1e51d18"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator/=" ref="a72ef8379745ed9575b39216ba1e51d18" args="(const Checked_Number&lt; T, From_Policy &gt; &amp;y)" -->
template&lt;typename From_Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a72ef8379745ed9575b39216ba1e51d18">operator/=</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, From_Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide and assign operator. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6a2d561ac8088ed64a0bb51d8fffcd9b"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator/=" ref="a6a2d561ac8088ed64a0bb51d8fffcd9b" args="(const T &amp;y)" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a6a2d561ac8088ed64a0bb51d8fffcd9b">operator/=</a> (const T &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide and assign operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="afc3433d8ec297e2d1fbdf559d93f9080"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator/=" ref="afc3433d8ec297e2d1fbdf559d93f9080" args="(const From &amp;y)" -->
template&lt;typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From &gt;<br class="typebreak"/>
::value, <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, <br class="typebreak"/>
Policy &gt; &amp; &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#afc3433d8ec297e2d1fbdf559d93f9080">operator/=</a> (const From &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide and assign operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a7e90d52413515d81ad9b68fb1740d869"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator%=" ref="a7e90d52413515d81ad9b68fb1740d869" args="(const Checked_Number&lt; T, From_Policy &gt; &amp;y)" -->
template&lt;typename From_Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a7e90d52413515d81ad9b68fb1740d869">operator%=</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, From_Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compute remainder and assign operator. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a79ab4c49d7ae4406b56dc2b3d94463"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator%=" ref="a1a79ab4c49d7ae4406b56dc2b3d94463" args="(const T &amp;y)" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a1a79ab4c49d7ae4406b56dc2b3d94463">operator%=</a> (const T &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compute remainder and assign operator. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="ae179c684a9ed7eafbbac1825d17f7daa"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator%=" ref="ae179c684a9ed7eafbbac1825d17f7daa" args="(const From &amp;y)" -->
template&lt;typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From &gt;<br class="typebreak"/>
::value, <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, <br class="typebreak"/>
Policy &gt; &amp; &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ae179c684a9ed7eafbbac1825d17f7daa">operator%=</a> (const From &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compute remainder and assign operator. <br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Increment and Decrement Operators</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrpa938abdbead98009743d206a13ffd477"></a> </p>
</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3cb9b031ec4e6fd7e53e53da5b0f04a1"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator++" ref="a3cb9b031ec4e6fd7e53e53da5b0f04a1" args="()" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a3cb9b031ec4e6fd7e53e53da5b0f04a1">operator++</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pre-increment operator. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade4a5582f82333f20fd6a8be13ff8d7f"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator++" ref="ade4a5582f82333f20fd6a8be13ff8d7f" args="(int)" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ade4a5582f82333f20fd6a8be13ff8d7f">operator++</a> (int)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Post-increment operator. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06c0a4ba25cbc3d59797bf1c73c49497"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&#45;&#45;" ref="a06c0a4ba25cbc3d59797bf1c73c49497" args="()" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a06c0a4ba25cbc3d59797bf1c73c49497">operator--</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Pre-decrement operator. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0803532e7523865597c394e1371d2b16"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&#45;&#45;" ref="a0803532e7523865597c394e1371d2b16" args="(int)" -->
<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a0803532e7523865597c394e1371d2b16">operator--</a> (int)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Post-decrement operator. <br/></td></tr>
<tr><td colspan="2"><h2>Related Functions</h2></td></tr>
<tr><td colspan="2"><p>(Note that these are not member functions.) </p>
<br/><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;<br class="typebreak"/>
::value, bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ab65697a5fab14ca76c391a3aa523e3f6">is_not_a_number</a> (const T &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;<br class="typebreak"/>
::value, bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a2b39d89b5938161bd8922b7c1f28f637">is_minus_infinity</a> (const T &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;<br class="typebreak"/>
::value, bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a4cca5e272cecc038189aac8b2fc8ace2">is_plus_infinity</a> (const T &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;<br class="typebreak"/>
::value, int &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a356bd3ccfaa76c0ef4452a34ce767897">is_infinity</a> (const T &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;<br class="typebreak"/>
::value, bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a0acb1530838a14041c43002dd8ee3541">is_integer</a> (const T &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename To , typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; To &gt;<br class="typebreak"/>
::value &amp;&amp;Is_Special&lt; From &gt;<br class="typebreak"/>
::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a84ea81a9b4eed51ac13029dbccf67662">construct</a> (To &amp;to, const From &amp;x, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename To , typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; To &gt;<br class="typebreak"/>
::value &amp;&amp;Is_Special&lt; From &gt;<br class="typebreak"/>
::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a755f1ffc7dbac4ff01984c02774c9bc6">assign_r</a> (To &amp;to, const From &amp;x, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename To &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; To &gt;<br class="typebreak"/>
::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ad6c64cb3cfad6b8d7fb952e3f85347aa">assign_r</a> (To &amp;to, const char *x, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename To , typename To_Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; To &gt;<br class="typebreak"/>
::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#acdce8391d61c3090aa51f9d0656524a2">assign_r</a> (To &amp;to, char *x, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a9a28ec8161898b61530de9bbb4a3251d">swap</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Swaps <code>x</code> with <code>y</code>.  <a href="#a9a28ec8161898b61530de9bbb4a3251d"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">const T &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#adfb768d4ea63e2eb5d58aec03b999f17">raw_value</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">T &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#afed617fd6598839b510b46a3857387d4">raw_value</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td colspan="2"><div class="groupHeader">Memory Size Inspection Functions</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrp4947b4b1cc6c22d3f7ebe09a67d3fcda"></a> </p>
</div></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">size_t&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#abb6ca6c02bde2f04d412129e4be9743e">total_memory_in_bytes</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the total size in bytes of the memory occupied by <code>x</code>.  <a href="#abb6ca6c02bde2f04d412129e4be9743e"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="group__PPL__CXX__interface.html#ga760aa1f95d13e389ec6eb33fdbf88783">memory_size_type</a>&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a2f03dea4f9d5f0e15e18785cf3dd58a3">external_memory_in_bytes</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the size in bytes of the memory managed by <code>x</code>.  <a href="#a2f03dea4f9d5f0e15e18785cf3dd58a3"></a><br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Arithmetic Operators</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrpa006bd6fec9c14b2993cd0a43394900a"></a> </p>
</div></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ae6fa6e27a794dc71b88169df7f08fcac">operator+</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unary plus operator.  <a href="#ae6fa6e27a794dc71b88169df7f08fcac"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ac62afeb287031d74441101af60be319a">operator-</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unary minus operator.  <a href="#ac62afeb287031d74441101af60be319a"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#aa8f66682c527ff5a5a2496de0e3fb2ec">floor_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> largest integral value not greater than <code>x</code>.  <a href="#aa8f66682c527ff5a5a2496de0e3fb2ec"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a2f9c525f46f4ff5707b505a88c82aee0">floor_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> largest integral value not greater than <code>y</code>.  <a href="#a2f9c525f46f4ff5707b505a88c82aee0"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ada7d59af059bdfb2e485d341213e6d19">ceil_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> smallest integral value not less than <code>x</code>.  <a href="#ada7d59af059bdfb2e485d341213e6d19"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ab1b19ff2b88ffca75ac27208cdd877a2">ceil_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> smallest integral value not less than <code>y</code>.  <a href="#ab1b19ff2b88ffca75ac27208cdd877a2"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a798df1392d067294fc936bcfa19745c4">trunc_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Round <code>x</code> to the nearest integer not larger in absolute value.  <a href="#a798df1392d067294fc936bcfa19745c4"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a3f5e732694ad7d879ac7eaef0668073a">trunc_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the value of <code>y</code> rounded to the nearest integer not larger in absolute value.  <a href="#a3f5e732694ad7d879ac7eaef0668073a"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ad3d8562d66aeed544d8ef75b941e807c">neg_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> its negation.  <a href="#ad3d8562d66aeed544d8ef75b941e807c"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ac32024703f8ac04b6b68ff1761575d2d">neg_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the negation of <code>y</code>.  <a href="#ac32024703f8ac04b6b68ff1761575d2d"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a307453961ae9779ce9e1e3ebcc94496d">abs_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> its absolute value.  <a href="#a307453961ae9779ce9e1e3ebcc94496d"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#aa831d9698f64ff610fa1b3341025603a">abs_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the absolute value of <code>y</code>.  <a href="#aa831d9698f64ff610fa1b3341025603a"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#abe0aef8acc1101523cfbf50ebce7528e">add_mul_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;z)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the value <code>x + y * z</code>.  <a href="#abe0aef8acc1101523cfbf50ebce7528e"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a95ac9759a14fe23bf8d02a621e4e9e5c">sub_mul_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;z)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the value <code>x - y * z</code>.  <a href="#a95ac9759a14fe23bf8d02a621e4e9e5c"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ae4bfe4a80fb074c50ec17657eee225e8">gcd_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;z)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the greatest common divisor of <code>y</code> and <code>z</code>.  <a href="#ae4bfe4a80fb074c50ec17657eee225e8"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ad5ff0dd1267079af85d9938bb4a975de">gcdext_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;s, <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;t, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;z)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the greatest common divisor of <code>y</code> and <code>z</code>, setting <code>s</code> and <code>t</code> such that s*y + t*z = x = gcd(y, z).  <a href="#ad5ff0dd1267079af85d9938bb4a975de"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a1d723d4d200b4a6a694b141c7b6f408e">lcm_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;z)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the least common multiple of <code>y</code> and <code>z</code>.  <a href="#a1d723d4d200b4a6a694b141c7b6f408e"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#acf004b26ba068e346217011b6fd43ae3">mul_2exp_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y, unsigned int exp)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the value <img class="formulaInl" alt="$ y \cdot 2^\mathtt{exp} $" src="form_607.png"/>.  <a href="#acf004b26ba068e346217011b6fd43ae3"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a5fa74080d6f3e00a7a0291e03f897390">div_2exp_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y, unsigned int exp)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the value <img class="formulaInl" alt="$ y / 2^\mathtt{exp} $" src="form_608.png"/>.  <a href="#a5fa74080d6f3e00a7a0291e03f897390"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a9b45abd63e1255df8341775c8f42b842">exact_div_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;z)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">If <code>z</code> divides <code>y</code>, assigns to <code>x</code> the quotient of the integer division of <code>y</code> and <code>z</code>.  <a href="#a9b45abd63e1255df8341775c8f42b842"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#af1952cf5da3ecbadd8401b948e899a31">sqrt_assign</a> (<a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assigns to <code>x</code> the integer square root of <code>y</code>.  <a href="#af1952cf5da3ecbadd8401b948e899a31"></a><br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Relational Operators and Comparison Functions</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrpe96df5d057e76a387b165f4277ef3fe3"></a> </p>
</div></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T1 , typename T2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;<br class="typebreak"/>
::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a><br class="typebreak"/>
&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a><br class="typebreak"/>
&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;<br class="typebreak"/>
::value), bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ab733c7c83da19667a83c2a3abafa5d05">operator==</a> (const T1 &amp;x, const T2 &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equality operator.  <a href="#ab733c7c83da19667a83c2a3abafa5d05"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T1 , typename T2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;<br class="typebreak"/>
::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a><br class="typebreak"/>
&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a><br class="typebreak"/>
&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;<br class="typebreak"/>
::value), bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a79a5a323f582c4260790552d3be140fd">operator!=</a> (const T1 &amp;x, const T2 &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Disequality operator.  <a href="#a79a5a323f582c4260790552d3be140fd"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T1 , typename T2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;<br class="typebreak"/>
::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a><br class="typebreak"/>
&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a><br class="typebreak"/>
&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;<br class="typebreak"/>
::value), bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#adda98cdf0bda436acac3193162fa53b0">operator&gt;=</a> (const T1 &amp;x, const T2 &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Greater than or equal to operator.  <a href="#adda98cdf0bda436acac3193162fa53b0"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T1 , typename T2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;<br class="typebreak"/>
::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a><br class="typebreak"/>
&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a><br class="typebreak"/>
&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;<br class="typebreak"/>
::value), bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a76b5e4c5b9628c14a7d227517b8fb349">operator&gt;</a> (const T1 &amp;x, const T2 &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Greater than operator.  <a href="#a76b5e4c5b9628c14a7d227517b8fb349"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T1 , typename T2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;<br class="typebreak"/>
::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a><br class="typebreak"/>
&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a><br class="typebreak"/>
&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;<br class="typebreak"/>
::value), bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a16b12775a696c6e304cf9ee7ffe2213e">operator&lt;=</a> (const T1 &amp;x, const T2 &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Less than or equal to operator.  <a href="#a16b12775a696c6e304cf9ee7ffe2213e"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T1 , typename T2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;<br class="typebreak"/>
::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a><br class="typebreak"/>
&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a><br class="typebreak"/>
&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;<br class="typebreak"/>
::value), bool &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#aa355ae6b2a2a704e88060541fbaa6562">operator&lt;</a> (const T1 &amp;x, const T2 &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Less than operator.  <a href="#aa355ae6b2a2a704e88060541fbaa6562"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename From &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From &gt;<br class="typebreak"/>
::value, int &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#ad5c5cd5266cf95dcdc0f03d0108168b5">sgn</a> (const From &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns <img class="formulaInl" alt="$-1$" src="form_143.png"/>, <img class="formulaInl" alt="$0$" src="form_400.png"/> or <img class="formulaInl" alt="$1$" src="form_488.png"/> depending on whether the value of <code>x</code> is negative, zero or positive, respectively.  <a href="#ad5c5cd5266cf95dcdc0f03d0108168b5"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename From1 , typename From2 &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From1 &gt;<br class="typebreak"/>
::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a><br class="typebreak"/>
&lt; From2 &gt;::value, int &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a2ee8a6019070192609b3ea6e5dfa3018">cmp</a> (const From1 &amp;x, const From2 &amp;y)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a negative, zero or positive value depending on whether <code>x</code> is lower than, equal to or greater than <code>y</code>, respectively.  <a href="#a2ee8a6019070192609b3ea6e5dfa3018"></a><br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Input-Output Operators</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p><a class="anchor" id="amgrp216b77a7647983695275cb78b12cc7d2"></a> </p>
</div></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;<br class="typebreak"/>
::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#af9af63978105e142642222864ce7c3be">output</a> (std::ostream &amp;os, const T &amp;x, const Numeric_Format &amp;fmt, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">std::ostream &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a4ced0eee2a4a2c50779c2d01ef022500">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Output operator.  <a href="#a4ced0eee2a4a2c50779c2d01ef022500"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Enable_If<br class="typebreak"/>
&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;<br class="typebreak"/>
::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#a6133c234bff425e6feac34cef06b74b2">input</a> (T &amp;x, std::istream &amp;is, <a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a> dir)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Input function.  <a href="#a6133c234bff425e6feac34cef06b74b2"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T , typename Policy &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">std::istream &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html#aa7885d402d5653321f316029ca0af517">operator&gt;&gt;</a> (std::istream &amp;is, <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;x)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Input operator.  <a href="#aa7885d402d5653321f316029ca0af517"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;typename T, typename Policy&gt;<br/>
 class Parma_Polyhedra_Library::Checked_Number&lt; T, Policy &gt;</h3>

<p>A wrapper for numeric types implementing a given policy. </p>
<p>The wrapper and related functions implement an interface which is common to all kinds of coefficient types, therefore allowing for a uniform coding style. This class also implements the policy encoded by the second template parameter. The default policy is to perform the detection of overflow errors. </p>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ab74908b692bc6f8112f5d27b96141431"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::classify" ref="ab74908b692bc6f8112f5d27b96141431" args="(bool nan=true, bool inf=true, bool sign=true) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Parma_Polyhedra_Library::Checked_Number</a>&lt; T, Policy &gt;::classify </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>nan</em> = <code>true</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>inf</em> = <code>true</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>sign</em> = <code>true</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Classifies *this. </p>
<p>Returns the appropriate Result characterizing:</p>
<ul>
<li>whether <code>*this</code> is NaN, if <code>nan</code> is <code>true</code>;</li>
<li>whether <code>*this</code> is a (positive or negative) infinity, if <code>inf</code> is <code>true</code>;</li>
<li>the sign of <code>*this</code>, if <code>sign</code> is <code>true</code>. </li>
</ul>

</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="ab65697a5fab14ca76c391a3aa523e3f6"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::is_not_a_number" ref="ab65697a5fab14ca76c391a3aa523e3f6" args="(const T &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;::value, bool &gt;::type is_not_a_number </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a2b39d89b5938161bd8922b7c1f28f637"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::is_minus_infinity" ref="a2b39d89b5938161bd8922b7c1f28f637" args="(const T &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;::value, bool &gt;::type is_minus_infinity </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a4cca5e272cecc038189aac8b2fc8ace2"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::is_plus_infinity" ref="a4cca5e272cecc038189aac8b2fc8ace2" args="(const T &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;::value, bool &gt;::type is_plus_infinity </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a356bd3ccfaa76c0ef4452a34ce767897"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::is_infinity" ref="a356bd3ccfaa76c0ef4452a34ce767897" args="(const T &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;::value, int &gt;::type is_infinity </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a0acb1530838a14041c43002dd8ee3541"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::is_integer" ref="a0acb1530838a14041c43002dd8ee3541" args="(const T &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;::value, bool &gt;::type is_integer </td>
          <td>(</td>
          <td class="paramtype">const T &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a84ea81a9b4eed51ac13029dbccf67662"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::construct" ref="a84ea81a9b4eed51ac13029dbccf67662" args="(To &amp;to, const From &amp;x, Rounding_Dir dir)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename To , typename From &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; To &gt;::value &amp;&amp;Is_Special&lt; From &gt;::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type construct </td>
          <td>(</td>
          <td class="paramtype">To &amp;&nbsp;</td>
          <td class="paramname"> <em>to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const From &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a>&nbsp;</td>
          <td class="paramname"> <em>dir</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a755f1ffc7dbac4ff01984c02774c9bc6"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::assign_r" ref="a755f1ffc7dbac4ff01984c02774c9bc6" args="(To &amp;to, const From &amp;x, Rounding_Dir dir)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename To , typename From &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; To &gt;::value &amp;&amp;Is_Special&lt; From &gt;::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type assign_r </td>
          <td>(</td>
          <td class="paramtype">To &amp;&nbsp;</td>
          <td class="paramname"> <em>to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const From &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a>&nbsp;</td>
          <td class="paramname"> <em>dir</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="ad6c64cb3cfad6b8d7fb952e3f85347aa"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::assign_r" ref="ad6c64cb3cfad6b8d7fb952e3f85347aa" args="(To &amp;to, const char *x, Rounding_Dir dir)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename To &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; To &gt;::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type assign_r </td>
          <td>(</td>
          <td class="paramtype">To &amp;&nbsp;</td>
          <td class="paramname"> <em>to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a>&nbsp;</td>
          <td class="paramname"> <em>dir</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="acdce8391d61c3090aa51f9d0656524a2"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::assign_r" ref="acdce8391d61c3090aa51f9d0656524a2" args="(To &amp;to, char *x, Rounding_Dir dir)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename To , typename To_Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; To &gt;::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type assign_r </td>
          <td>(</td>
          <td class="paramtype">To &amp;&nbsp;</td>
          <td class="paramname"> <em>to</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a>&nbsp;</td>
          <td class="paramname"> <em>dir</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="abb6ca6c02bde2f04d412129e4be9743e"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::total_memory_in_bytes" ref="abb6ca6c02bde2f04d412129e4be9743e" args="(const Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__PPL__CXX__interface.html#ga760aa1f95d13e389ec6eb33fdbf88783">memory_size_type</a> total_memory_in_bytes </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the total size in bytes of the memory occupied by <code>x</code>. </p>

</div>
</div>
<a class="anchor" id="a2f03dea4f9d5f0e15e18785cf3dd58a3"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::external_memory_in_bytes" ref="a2f03dea4f9d5f0e15e18785cf3dd58a3" args="(const Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__PPL__CXX__interface.html#ga760aa1f95d13e389ec6eb33fdbf88783">memory_size_type</a> external_memory_in_bytes </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the size in bytes of the memory managed by <code>x</code>. </p>

</div>
</div>
<a class="anchor" id="ae6fa6e27a794dc71b88169df7f08fcac"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator+" ref="ae6fa6e27a794dc71b88169df7f08fcac" args="(const Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Unary plus operator. </p>

</div>
</div>
<a class="anchor" id="ac62afeb287031d74441101af60be319a"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&#45;" ref="ac62afeb287031d74441101af60be319a" args="(const Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Unary minus operator. </p>

</div>
</div>
<a class="anchor" id="aa8f66682c527ff5a5a2496de0e3fb2ec"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::floor_assign" ref="aa8f66682c527ff5a5a2496de0e3fb2ec" args="(Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void floor_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> largest integral value not greater than <code>x</code>. </p>

</div>
</div>
<a class="anchor" id="a2f9c525f46f4ff5707b505a88c82aee0"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::floor_assign" ref="a2f9c525f46f4ff5707b505a88c82aee0" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void floor_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> largest integral value not greater than <code>y</code>. </p>

</div>
</div>
<a class="anchor" id="ada7d59af059bdfb2e485d341213e6d19"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::ceil_assign" ref="ada7d59af059bdfb2e485d341213e6d19" args="(Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void ceil_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> smallest integral value not less than <code>x</code>. </p>

</div>
</div>
<a class="anchor" id="ab1b19ff2b88ffca75ac27208cdd877a2"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::ceil_assign" ref="ab1b19ff2b88ffca75ac27208cdd877a2" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void ceil_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> smallest integral value not less than <code>y</code>. </p>

</div>
</div>
<a class="anchor" id="a798df1392d067294fc936bcfa19745c4"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::trunc_assign" ref="a798df1392d067294fc936bcfa19745c4" args="(Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void trunc_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Round <code>x</code> to the nearest integer not larger in absolute value. </p>

</div>
</div>
<a class="anchor" id="a3f5e732694ad7d879ac7eaef0668073a"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::trunc_assign" ref="a3f5e732694ad7d879ac7eaef0668073a" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void trunc_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the value of <code>y</code> rounded to the nearest integer not larger in absolute value. </p>

</div>
</div>
<a class="anchor" id="ad3d8562d66aeed544d8ef75b941e807c"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::neg_assign" ref="ad3d8562d66aeed544d8ef75b941e807c" args="(Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void neg_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> its negation. </p>

</div>
</div>
<a class="anchor" id="ac32024703f8ac04b6b68ff1761575d2d"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::neg_assign" ref="ac32024703f8ac04b6b68ff1761575d2d" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void neg_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the negation of <code>y</code>. </p>

</div>
</div>
<a class="anchor" id="a307453961ae9779ce9e1e3ebcc94496d"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::abs_assign" ref="a307453961ae9779ce9e1e3ebcc94496d" args="(Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void abs_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> its absolute value. </p>

</div>
</div>
<a class="anchor" id="aa831d9698f64ff610fa1b3341025603a"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::abs_assign" ref="aa831d9698f64ff610fa1b3341025603a" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void abs_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the absolute value of <code>y</code>. </p>

</div>
</div>
<a class="anchor" id="abe0aef8acc1101523cfbf50ebce7528e"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::add_mul_assign" ref="abe0aef8acc1101523cfbf50ebce7528e" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y, const Checked_Number&lt; T, Policy &gt; &amp;z)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void add_mul_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>z</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the value <code>x + y * z</code>. </p>

</div>
</div>
<a class="anchor" id="a95ac9759a14fe23bf8d02a621e4e9e5c"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::sub_mul_assign" ref="a95ac9759a14fe23bf8d02a621e4e9e5c" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y, const Checked_Number&lt; T, Policy &gt; &amp;z)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void sub_mul_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>z</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the value <code>x - y * z</code>. </p>

</div>
</div>
<a class="anchor" id="ae4bfe4a80fb074c50ec17657eee225e8"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::gcd_assign" ref="ae4bfe4a80fb074c50ec17657eee225e8" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y, const Checked_Number&lt; T, Policy &gt; &amp;z)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void gcd_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>z</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the greatest common divisor of <code>y</code> and <code>z</code>. </p>

</div>
</div>
<a class="anchor" id="ad5ff0dd1267079af85d9938bb4a975de"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::gcdext_assign" ref="ad5ff0dd1267079af85d9938bb4a975de" args="(Checked_Number&lt; T, Policy &gt; &amp;x, Checked_Number&lt; T, Policy &gt; &amp;s, Checked_Number&lt; T, Policy &gt; &amp;t, const Checked_Number&lt; T, Policy &gt; &amp;y, const Checked_Number&lt; T, Policy &gt; &amp;z)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void gcdext_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>t</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>z</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the greatest common divisor of <code>y</code> and <code>z</code>, setting <code>s</code> and <code>t</code> such that s*y + t*z = x = gcd(y, z). </p>

</div>
</div>
<a class="anchor" id="a1d723d4d200b4a6a694b141c7b6f408e"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::lcm_assign" ref="a1d723d4d200b4a6a694b141c7b6f408e" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y, const Checked_Number&lt; T, Policy &gt; &amp;z)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void lcm_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>z</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the least common multiple of <code>y</code> and <code>z</code>. </p>

</div>
</div>
<a class="anchor" id="acf004b26ba068e346217011b6fd43ae3"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::mul_2exp_assign" ref="acf004b26ba068e346217011b6fd43ae3" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y, unsigned int exp)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void mul_2exp_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>exp</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the value <img class="formulaInl" alt="$ y \cdot 2^\mathtt{exp} $" src="form_607.png"/>. </p>

</div>
</div>
<a class="anchor" id="a5fa74080d6f3e00a7a0291e03f897390"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::div_2exp_assign" ref="a5fa74080d6f3e00a7a0291e03f897390" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y, unsigned int exp)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void div_2exp_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>exp</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the value <img class="formulaInl" alt="$ y / 2^\mathtt{exp} $" src="form_608.png"/>. </p>

</div>
</div>
<a class="anchor" id="a9b45abd63e1255df8341775c8f42b842"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::exact_div_assign" ref="a9b45abd63e1255df8341775c8f42b842" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y, const Checked_Number&lt; T, Policy &gt; &amp;z)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void exact_div_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>z</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>If <code>z</code> divides <code>y</code>, assigns to <code>x</code> the quotient of the integer division of <code>y</code> and <code>z</code>. </p>
<p>The behavior is undefined if <code>z</code> does not divide <code>y</code>. </p>

</div>
</div>
<a class="anchor" id="af1952cf5da3ecbadd8401b948e899a31"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::sqrt_assign" ref="af1952cf5da3ecbadd8401b948e899a31" args="(Checked_Number&lt; T, Policy &gt; &amp;x, const Checked_Number&lt; T, Policy &gt; &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void sqrt_assign </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Assigns to <code>x</code> the integer square root of <code>y</code>. </p>

</div>
</div>
<a class="anchor" id="ab733c7c83da19667a83c2a3abafa5d05"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator==" ref="ab733c7c83da19667a83c2a3abafa5d05" args="(const T1 &amp;x, const T2 &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T1 , typename T2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;::value), bool &gt;::type operator== </td>
          <td>(</td>
          <td class="paramtype">const T1 &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T2 &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Equality operator. </p>

</div>
</div>
<a class="anchor" id="a79a5a323f582c4260790552d3be140fd"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator!=" ref="a79a5a323f582c4260790552d3be140fd" args="(const T1 &amp;x, const T2 &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T1 , typename T2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;::value), bool &gt;::type operator!= </td>
          <td>(</td>
          <td class="paramtype">const T1 &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T2 &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Disequality operator. </p>

</div>
</div>
<a class="anchor" id="adda98cdf0bda436acac3193162fa53b0"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&gt;=" ref="adda98cdf0bda436acac3193162fa53b0" args="(const T1 &amp;x, const T2 &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T1 , typename T2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;::value), bool &gt;::type operator&gt;= </td>
          <td>(</td>
          <td class="paramtype">const T1 &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T2 &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Greater than or equal to operator. </p>

</div>
</div>
<a class="anchor" id="a76b5e4c5b9628c14a7d227517b8fb349"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&gt;" ref="a76b5e4c5b9628c14a7d227517b8fb349" args="(const T1 &amp;x, const T2 &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T1 , typename T2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;::value), bool &gt;::type operator&gt; </td>
          <td>(</td>
          <td class="paramtype">const T1 &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T2 &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Greater than operator. </p>

</div>
</div>
<a class="anchor" id="a16b12775a696c6e304cf9ee7ffe2213e"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&lt;=" ref="a16b12775a696c6e304cf9ee7ffe2213e" args="(const T1 &amp;x, const T2 &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T1 , typename T2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;::value), bool &gt;::type operator&lt;= </td>
          <td>(</td>
          <td class="paramtype">const T1 &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T2 &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Less than or equal to operator. </p>

</div>
</div>
<a class="anchor" id="aa355ae6b2a2a704e88060541fbaa6562"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&lt;" ref="aa355ae6b2a2a704e88060541fbaa6562" args="(const T1 &amp;x, const T2 &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T1 , typename T2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T1 &gt;::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T2 &gt;::value &amp;&amp;(<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T1 &gt;::value||<a class="el" href="structParma__Polyhedra__Library_1_1Is__Checked.html">Is_Checked</a>&lt; T2 &gt;::value), bool &gt;::type operator&lt; </td>
          <td>(</td>
          <td class="paramtype">const T1 &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T2 &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Less than operator. </p>

</div>
</div>
<a class="anchor" id="ad5c5cd5266cf95dcdc0f03d0108168b5"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::sgn" ref="ad5c5cd5266cf95dcdc0f03d0108168b5" args="(const From &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename From &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From &gt;::value, int &gt;::type sgn </td>
          <td>(</td>
          <td class="paramtype">const From &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns <img class="formulaInl" alt="$-1$" src="form_143.png"/>, <img class="formulaInl" alt="$0$" src="form_400.png"/> or <img class="formulaInl" alt="$1$" src="form_488.png"/> depending on whether the value of <code>x</code> is negative, zero or positive, respectively. </p>

</div>
</div>
<a class="anchor" id="a2ee8a6019070192609b3ea6e5dfa3018"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::cmp" ref="a2ee8a6019070192609b3ea6e5dfa3018" args="(const From1 &amp;x, const From2 &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename From1 , typename From2 &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From1 &gt;::value &amp;&amp;<a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; From2 &gt;::value, int &gt;::type cmp </td>
          <td>(</td>
          <td class="paramtype">const From1 &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const From2 &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns a negative, zero or positive value depending on whether <code>x</code> is lower than, equal to or greater than <code>y</code>, respectively. </p>

</div>
</div>
<a class="anchor" id="af9af63978105e142642222864ce7c3be"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::output" ref="af9af63978105e142642222864ce7c3be" args="(std::ostream &amp;os, const T &amp;x, const Numeric_Format &amp;fmt, Rounding_Dir dir)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type output </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&nbsp;</td>
          <td class="paramname"> <em>os</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const T &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Numeric_Format &amp;&nbsp;</td>
          <td class="paramname"> <em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a>&nbsp;</td>
          <td class="paramname"> <em>dir</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a4ced0eee2a4a2c50779c2d01ef022500"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&lt;&lt;" ref="a4ced0eee2a4a2c50779c2d01ef022500" args="(std::ostream &amp;os, const Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::ostream &amp; operator&lt;&lt; </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&nbsp;</td>
          <td class="paramname"> <em>os</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Output operator. </p>

</div>
</div>
<a class="anchor" id="a6133c234bff425e6feac34cef06b74b2"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::input" ref="a6133c234bff425e6feac34cef06b74b2" args="(T &amp;x, std::istream &amp;is, Rounding_Dir dir)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Enable_If&lt; <a class="el" href="structParma__Polyhedra__Library_1_1Is__Native__Or__Checked.html">Is_Native_Or_Checked</a>&lt; T &gt;::value, <a class="el" href="group__PPL__CXX__interface.html#gaa88e9b9cb2588cbf5914695fc14e69a8">Result</a> &gt;::type input </td>
          <td>(</td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::istream &amp;&nbsp;</td>
          <td class="paramname"> <em>is</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__PPL__CXX__interface.html#ga25ea3a289eadef732f4c7fd823387fb2">Rounding_Dir</a>&nbsp;</td>
          <td class="paramname"> <em>dir</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Input function. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>is</em>&nbsp;</td><td>Input stream to read from;</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>Number (possibly extended) to assign to in case of successful reading;</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dir</em>&nbsp;</td><td>Rounding mode to be applied.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Result of the input operation. Success, success with imprecision, overflow, parsing error: all possibilities are taken into account, checked for, and properly reported.</dd></dl>
<p>This function attempts reading a (possibly extended) number from the given stream <code>is</code>, possibly rounding as specified by <code>dir</code>, assigning the result to <code>x</code> upon success, and returning the appropriate Result.</p>
<p>The input syntax allows the specification of:</p>
<ul>
<li>plain base-10 integer numbers as <code>34976098</code>, <code>-77</code> and <code>+13</code>;</li>
<li>base-10 integer numbers in scientific notation as <code>15e2</code> and <code>15*^2</code> (both meaning <img class="formulaInl" alt="$15 \cdot 10^2 = 1500$" src="form_609.png"/>), <code>9200e-2</code> and <code>-18*^+11111111111111111</code>;</li>
<li>base-10 rational numbers in fraction notation as <code>15/3</code> and <code>15/-3</code>;</li>
<li>base-10 rational numbers in fraction/scientific notation as <code>15/30e-1</code> (meaning <img class="formulaInl" alt="$5$" src="form_610.png"/>) and <code>15*^-3/29e2</code> (meaning <img class="formulaInl" alt="$3/580000$" src="form_611.png"/>);</li>
<li>base-10 rational numbers in floating point notation as <code>71.3</code> (meaning <img class="formulaInl" alt="$713/10$" src="form_612.png"/>) and <code>-0.123456</code> (meaning <img class="formulaInl" alt="$-1929/15625$" src="form_613.png"/>);</li>
<li>base-10 rational numbers in floating point scientific notation as <code>2.2e-1</code> (meaning <img class="formulaInl" alt="$11/50$" src="form_614.png"/>) and <code>-2.20001*^+3</code> (meaning <img class="formulaInl" alt="$-220001/100$" src="form_615.png"/>);</li>
<li>integers and rationals (in fractional, floating point and scientific notations) specified by using Mathematica-style bases, in the range from 2 to 36, as <code>2^^11</code> (meaning <img class="formulaInl" alt="$3$" src="form_487.png"/>), <code>36^^z</code> (meaning <img class="formulaInl" alt="$35$" src="form_616.png"/>), <code>36^^xyz</code> (meaning <img class="formulaInl" alt="$44027$" src="form_617.png"/>), <code>2^^11.1</code> (meaning <img class="formulaInl" alt="$7/2$" src="form_618.png"/>), <code>10^^2e3</code> (meaning <img class="formulaInl" alt="$2000$" src="form_619.png"/>), <code>8^^2e3</code> (meaning <img class="formulaInl" alt="$1024$" src="form_620.png"/>), <code>8^^2.1e3</code> (meaning <img class="formulaInl" alt="$1088$" src="form_621.png"/>), <code>8^^20402543.120347e7</code> (meaning <img class="formulaInl" alt="$9073863231288$" src="form_622.png"/>), <code>8^^2.1</code> (meaning <img class="formulaInl" alt="$17/8$" src="form_623.png"/>); note that the base and the exponent are always written as plain base-10 integer numbers; also, when an ambiguity may arise, the character <code>e</code> is interpreted as a digit, so that <code>16^^1e2</code> (meaning <img class="formulaInl" alt="$482$" src="form_624.png"/>) is different from <code>16^^1*^2</code> (meaning <img class="formulaInl" alt="$256$" src="form_625.png"/>);</li>
<li>the C-style hexadecimal prefix <code>0x</code> is interpreted as the Mathematica-style prefix <code>16^^</code>;</li>
<li>the C-style binary exponent indicator <code>p</code> can only be used when base 16 has been specified; if used, the exponent will be applied to base 2 (instead of base 16, as is the case when the indicator <code>e</code> is used);</li>
<li>special values like <code>inf</code> and <code>+inf</code> (meaning <img class="formulaInl" alt="$+\infty$" src="form_574.png"/>), <code>-inf</code> (meaning <img class="formulaInl" alt="$-\infty$" src="form_606.png"/>), and <code>nan</code> (meaning "not a number").</li>
</ul>
<p>The rationale behind the accepted syntax can be summarized as follows:</p>
<ul>
<li>if the syntax is accepted by Mathematica, then this function accepts it with the same semantics;</li>
<li>if the syntax is acceptable as standard C++ integer or floating point literal (except for octal notation and type suffixes, which are not supported), then this function accepts it with the same semantics;</li>
<li>natural extensions of the above are accepted with the natural extensions of the semantics;</li>
<li>special values are accepted.</li>
</ul>
<p>Valid syntax is more formally and completely specified by the following grammar, with the additional provisos that everything is <em>case insensitive</em>, that the syntactic category <code>BDIGIT</code> is further restricted by the current base and that for all bases above 14, any <code>e</code> is always interpreted as a digit and never as a delimiter for the exponent part (if such a delimiter is desired, it has to be written as <code>*^</code>).</p>
<div class="fragment"><pre class="fragment">number  : NAN                                   INF     : <span class="stringliteral">&#39;inf&#39;</span>
        | SIGN INF                                      ;
        | INF
        | num                                   NAN     : <span class="stringliteral">&#39;nan&#39;</span>
        | num DIV num                                   ;
        ;
                                                SIGN    : <span class="charliteral">&#39;-&#39;</span>
num     : unum                                          | <span class="charliteral">&#39;+&#39;</span>
        | SIGN unum                                     ;

unum    : unum1                                 EXP     : <span class="charliteral">&#39;e&#39;</span>
        | HEX unum1                                     | <span class="charliteral">&#39;p&#39;</span>
        | base BASE unum1                               | <span class="stringliteral">&#39;*^&#39;</span>
        ;                                               ;
                                                POINT   : <span class="charliteral">&#39;.&#39;</span>
unum1   : mantissa                                      ;
        | mantissa EXP exponent
        ;                                       DIV     : <span class="charliteral">&#39;/&#39;</span>
                                                        ;
mantissa: bdigits
        | POINT bdigits                         MINUS   : <span class="charliteral">&#39;-&#39;</span>
        | bdigits POINT                                 ;
        | bdigits POINT bdigits
        ;                                       PLUS    : <span class="charliteral">&#39;+&#39;</span>
                                                ;
exponent: SIGN digits
        | digits                                HEX     : <span class="stringliteral">&#39;0x&#39;</span>
        ;                                       ;

bdigits : BDIGIT                                BASE    : <span class="stringliteral">&#39;^^&#39;</span>
        | bdigits BDIGIT                                ;
        ;
                                                DIGIT   : <span class="charliteral">&#39;0&#39;</span> .. <span class="charliteral">&#39;9&#39;</span>
digits  : DIGIT                                         ;
        | digits DIGIT
        ;                                       BDIGIT  : <span class="charliteral">&#39;0&#39;</span> .. <span class="charliteral">&#39;9&#39;</span>
                                                        | <span class="charliteral">&#39;a&#39;</span> .. <span class="charliteral">&#39;z&#39;</span>
                                                        ;
</pre></div>
</div>
</div>
<a class="anchor" id="aa7885d402d5653321f316029ca0af517"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::operator&gt;&gt;" ref="aa7885d402d5653321f316029ca0af517" args="(std::istream &amp;is, Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">std::istream &amp; operator&gt;&gt; </td>
          <td>(</td>
          <td class="paramtype">std::istream &amp;&nbsp;</td>
          <td class="paramname"> <em>is</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Input operator. </p>

</div>
</div>
<a class="anchor" id="a9a28ec8161898b61530de9bbb4a3251d"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::swap" ref="a9a28ec8161898b61530de9bbb4a3251d" args="(Checked_Number&lt; T, Policy &gt; &amp;x, Checked_Number&lt; T, Policy &gt; &amp;y)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void swap </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Swaps <code>x</code> with <code>y</code>. </p>

</div>
</div>
<a class="anchor" id="adfb768d4ea63e2eb5d58aec03b999f17"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::raw_value" ref="adfb768d4ea63e2eb5d58aec03b999f17" args="(const Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const T &amp; raw_value </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="afed617fd6598839b510b46a3857387d4"></a><!-- doxytag: member="Parma_Polyhedra_Library::Checked_Number::raw_value" ref="afed617fd6598839b510b46a3857387d4" args="(Checked_Number&lt; T, Policy &gt; &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename Policy &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">T &amp; raw_value </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classParma__Polyhedra__Library_1_1Checked__Number.html">Checked_Number</a>&lt; T, Policy &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [related]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>ppl.hh</li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated on Sun Feb 27 10:10:57 2011 for PPL by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>