blob: 1b8d3ec681c7c5867de0b662f53f06668bdf4645 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AMCL: big_384_29.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">AMCL
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_df7310d1a865926cc859bcfb1880083f.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">big_384_29.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>BIG Header File.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;stdio.h&gt;</code><br />
<code>#include &lt;stdlib.h&gt;</code><br />
<code>#include &lt;inttypes.h&gt;</code><br />
<code>#include &quot;<a class="el" href="arch_8h_source.html">arch.h</a>&quot;</code><br />
<code>#include &quot;amcl.h&quot;</code><br />
<code>#include &quot;<a class="el" href="config__big__384__29_8h_source.html">config_big_384_29.h</a>&quot;</code><br />
</div>
<p><a href="big__384__29_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a5feb1f06130ed84f11090989e07af7b2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a5feb1f06130ed84f11090989e07af7b2">BIGBITS_384_29</a>&#160;&#160;&#160;(8*<a class="el" href="config__big__384__29_8h.html#a20764d3b8a6ee4cf548fdacc36e22a79">MODBYTES_384_29</a>)</td></tr>
<tr class="separator:a5feb1f06130ed84f11090989e07af7b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d1004b9eccdcfc31be289533132cfe3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a2d1004b9eccdcfc31be289533132cfe3">NLEN_384_29</a>&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__384__29_8h.html#a20764d3b8a6ee4cf548fdacc36e22a79">MODBYTES_384_29</a>-1)/<a class="el" href="config__big__384__29_8h.html#afbf8af6e59b69e4f78c0d20c2acea5cd">BASEBITS_384_29</a>))</td></tr>
<tr class="separator:a2d1004b9eccdcfc31be289533132cfe3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addd1b223ffcb85c18f7f25c1b0e2e068"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#addd1b223ffcb85c18f7f25c1b0e2e068">DNLEN_384_29</a>&#160;&#160;&#160;2*<a class="el" href="big__384__29_8h.html#a2d1004b9eccdcfc31be289533132cfe3">NLEN_384_29</a></td></tr>
<tr class="separator:addd1b223ffcb85c18f7f25c1b0e2e068"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a385093038217417d0ccf44b5d13875d4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a385093038217417d0ccf44b5d13875d4">BMASK_384_29</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__384__29_8h.html#afbf8af6e59b69e4f78c0d20c2acea5cd">BASEBITS_384_29</a>)-1)</td></tr>
<tr class="separator:a385093038217417d0ccf44b5d13875d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0eb3ec057af21eb8c5e402134bda3fbb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a0eb3ec057af21eb8c5e402134bda3fbb">NEXCESS_384_29</a>&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__384__29_8h.html#afbf8af6e59b69e4f78c0d20c2acea5cd">BASEBITS_384_29</a>-1))</td></tr>
<tr class="separator:a0eb3ec057af21eb8c5e402134bda3fbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7676d9d5313782211e981b9e62cdff5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ab7676d9d5313782211e981b9e62cdff5">HBITS_384_29</a>&#160;&#160;&#160;(<a class="el" href="config__big__384__29_8h.html#afbf8af6e59b69e4f78c0d20c2acea5cd">BASEBITS_384_29</a>/2)</td></tr>
<tr class="separator:ab7676d9d5313782211e981b9e62cdff5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f3ff82f9bb37efc3eb8afa48876b952"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a9f3ff82f9bb37efc3eb8afa48876b952">HMASK_384_29</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__384__29_8h.html#ab7676d9d5313782211e981b9e62cdff5">HBITS_384_29</a>)-1)</td></tr>
<tr class="separator:a9f3ff82f9bb37efc3eb8afa48876b952"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a8c300cadd1a50e2f3a67f9ef2214944c"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>[<a class="el" href="big__384__29_8h.html#a2d1004b9eccdcfc31be289533132cfe3">NLEN_384_29</a>]</td></tr>
<tr class="separator:a8c300cadd1a50e2f3a67f9ef2214944c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef1a1a590bb80b9d666d508e97dc2aa8"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>[<a class="el" href="big__384__29_8h.html#addd1b223ffcb85c18f7f25c1b0e2e068">DNLEN_384_29</a>]</td></tr>
<tr class="separator:aef1a1a590bb80b9d666d508e97dc2aa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a69ba68e3a4efc01da04050cc79706680"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a69ba68e3a4efc01da04050cc79706680">BIG_384_29_iszilch</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:a69ba68e3a4efc01da04050cc79706680"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to zero. <a href="#a69ba68e3a4efc01da04050cc79706680">More...</a><br /></td></tr>
<tr class="separator:a69ba68e3a4efc01da04050cc79706680"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a239235d13ab7ea1c82070ea771293f18"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a239235d13ab7ea1c82070ea771293f18">BIG_384_29_isunity</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:a239235d13ab7ea1c82070ea771293f18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to one. <a href="#a239235d13ab7ea1c82070ea771293f18">More...</a><br /></td></tr>
<tr class="separator:a239235d13ab7ea1c82070ea771293f18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16caa5b2e994f3b3b09d4a4952970977"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a16caa5b2e994f3b3b09d4a4952970977">BIG_384_29_diszilch</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x)</td></tr>
<tr class="memdesc:a16caa5b2e994f3b3b09d4a4952970977"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for DBIG equal to zero. <a href="#a16caa5b2e994f3b3b09d4a4952970977">More...</a><br /></td></tr>
<tr class="separator:a16caa5b2e994f3b3b09d4a4952970977"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade4da533b2f4d9e98b4ce291dc9e9019"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ade4da533b2f4d9e98b4ce291dc9e9019">BIG_384_29_output</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:ade4da533b2f4d9e98b4ce291dc9e9019"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console. <a href="#ade4da533b2f4d9e98b4ce291dc9e9019">More...</a><br /></td></tr>
<tr class="separator:ade4da533b2f4d9e98b4ce291dc9e9019"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82a583012fcdf4a28fd8895d6d086374"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a82a583012fcdf4a28fd8895d6d086374">BIG_384_29_rawoutput</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:a82a583012fcdf4a28fd8895d6d086374"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console in raw form (for debugging) <a href="#a82a583012fcdf4a28fd8895d6d086374">More...</a><br /></td></tr>
<tr class="separator:a82a583012fcdf4a28fd8895d6d086374"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a848fbcf9248fdf5f123ad831f0eb36"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a5a848fbcf9248fdf5f123ad831f0eb36">BIG_384_29_cswap</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, int s)</td></tr>
<tr class="memdesc:a5a848fbcf9248fdf5f123ad831f0eb36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional constant time swap of two BIG numbers. <a href="#a5a848fbcf9248fdf5f123ad831f0eb36">More...</a><br /></td></tr>
<tr class="separator:a5a848fbcf9248fdf5f123ad831f0eb36"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab35f8dbaae1db3e43babae24a220297"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#aab35f8dbaae1db3e43babae24a220297">BIG_384_29_cmove</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, int s)</td></tr>
<tr class="memdesc:aab35f8dbaae1db3e43babae24a220297"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of BIG number. <a href="#aab35f8dbaae1db3e43babae24a220297">More...</a><br /></td></tr>
<tr class="separator:aab35f8dbaae1db3e43babae24a220297"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a550d58a56c3336f2b0a5895aeb61b72b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a550d58a56c3336f2b0a5895aeb61b72b">BIG_384_29_dcmove</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, int s)</td></tr>
<tr class="memdesc:a550d58a56c3336f2b0a5895aeb61b72b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of DBIG number. <a href="#a550d58a56c3336f2b0a5895aeb61b72b">More...</a><br /></td></tr>
<tr class="separator:a550d58a56c3336f2b0a5895aeb61b72b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69579e616a8b921d289151ae3cc40d75"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a69579e616a8b921d289151ae3cc40d75">BIG_384_29_toBytes</a> (char *a, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:a69579e616a8b921d289151ae3cc40d75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from BIG number to byte array. <a href="#a69579e616a8b921d289151ae3cc40d75">More...</a><br /></td></tr>
<tr class="separator:a69579e616a8b921d289151ae3cc40d75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a611c1c3a2087a61ca8aca6702a501e7d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a611c1c3a2087a61ca8aca6702a501e7d">BIG_384_29_fromBytes</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, char *a)</td></tr>
<tr class="memdesc:a611c1c3a2087a61ca8aca6702a501e7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array. <a href="#a611c1c3a2087a61ca8aca6702a501e7d">More...</a><br /></td></tr>
<tr class="separator:a611c1c3a2087a61ca8aca6702a501e7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab26f93bbc86ea2938b1d640d50baf514"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ab26f93bbc86ea2938b1d640d50baf514">BIG_384_29_fromBytesLen</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, char *a, int s)</td></tr>
<tr class="memdesc:ab26f93bbc86ea2938b1d640d50baf514"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array of given length. <a href="#ab26f93bbc86ea2938b1d640d50baf514">More...</a><br /></td></tr>
<tr class="separator:ab26f93bbc86ea2938b1d640d50baf514"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebcaf728ea21b894d4f40f2ce84b06e5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#aebcaf728ea21b894d4f40f2ce84b06e5">BIG_384_29_dfromBytesLen</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, char *a, int s)</td></tr>
<tr class="memdesc:aebcaf728ea21b894d4f40f2ce84b06e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to DBIG number from byte array of given length. <a href="#aebcaf728ea21b894d4f40f2ce84b06e5">More...</a><br /></td></tr>
<tr class="separator:aebcaf728ea21b894d4f40f2ce84b06e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a298aa7a0970303e8d65d6653fa72ba24"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a298aa7a0970303e8d65d6653fa72ba24">BIG_384_29_doutput</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x)</td></tr>
<tr class="memdesc:a298aa7a0970303e8d65d6653fa72ba24"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a298aa7a0970303e8d65d6653fa72ba24">More...</a><br /></td></tr>
<tr class="separator:a298aa7a0970303e8d65d6653fa72ba24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16f67ff9a20a55edadfd8b1dd6d7a2e8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a16f67ff9a20a55edadfd8b1dd6d7a2e8">BIG_384_29_drawoutput</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x)</td></tr>
<tr class="memdesc:a16f67ff9a20a55edadfd8b1dd6d7a2e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a16f67ff9a20a55edadfd8b1dd6d7a2e8">More...</a><br /></td></tr>
<tr class="separator:a16f67ff9a20a55edadfd8b1dd6d7a2e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0821bce35e6e5adfef3461fc18c3872"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ad0821bce35e6e5adfef3461fc18c3872">BIG_384_29_rcopy</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, const <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y)</td></tr>
<tr class="memdesc:ad0821bce35e6e5adfef3461fc18c3872"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG from Read-Only Memory to a BIG. <a href="#ad0821bce35e6e5adfef3461fc18c3872">More...</a><br /></td></tr>
<tr class="separator:ad0821bce35e6e5adfef3461fc18c3872"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa87c91cf1a4e235b4e57061744b7488"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#aaa87c91cf1a4e235b4e57061744b7488">BIG_384_29_copy</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y)</td></tr>
<tr class="memdesc:aaa87c91cf1a4e235b4e57061744b7488"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to another BIG. <a href="#aaa87c91cf1a4e235b4e57061744b7488">More...</a><br /></td></tr>
<tr class="separator:aaa87c91cf1a4e235b4e57061744b7488"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31493a223d149d150b81109af2622e68"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a31493a223d149d150b81109af2622e68">BIG_384_29_dcopy</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> y)</td></tr>
<tr class="memdesc:a31493a223d149d150b81109af2622e68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy DBIG to another DBIG. <a href="#a31493a223d149d150b81109af2622e68">More...</a><br /></td></tr>
<tr class="separator:a31493a223d149d150b81109af2622e68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a461b13e8431b6341e9c0f18e171e30a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a461b13e8431b6341e9c0f18e171e30a1">BIG_384_29_dsucopy</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y)</td></tr>
<tr class="memdesc:a461b13e8431b6341e9c0f18e171e30a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to upper half of DBIG. <a href="#a461b13e8431b6341e9c0f18e171e30a1">More...</a><br /></td></tr>
<tr class="separator:a461b13e8431b6341e9c0f18e171e30a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84ac3f34e8a03c0e8f5e3a6d1a856442"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a84ac3f34e8a03c0e8f5e3a6d1a856442">BIG_384_29_dscopy</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y)</td></tr>
<tr class="memdesc:a84ac3f34e8a03c0e8f5e3a6d1a856442"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to lower half of DBIG. <a href="#a84ac3f34e8a03c0e8f5e3a6d1a856442">More...</a><br /></td></tr>
<tr class="separator:a84ac3f34e8a03c0e8f5e3a6d1a856442"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a331c8e2de95479761e68bfa83e640445"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a331c8e2de95479761e68bfa83e640445">BIG_384_29_sdcopy</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> y)</td></tr>
<tr class="memdesc:a331c8e2de95479761e68bfa83e640445"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy lower half of DBIG to a BIG. <a href="#a331c8e2de95479761e68bfa83e640445">More...</a><br /></td></tr>
<tr class="separator:a331c8e2de95479761e68bfa83e640445"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af84298cbd89cb60dfefe7df04e4ac165"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#af84298cbd89cb60dfefe7df04e4ac165">BIG_384_29_sducopy</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> y)</td></tr>
<tr class="memdesc:af84298cbd89cb60dfefe7df04e4ac165"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy upper half of DBIG to a BIG. <a href="#af84298cbd89cb60dfefe7df04e4ac165">More...</a><br /></td></tr>
<tr class="separator:af84298cbd89cb60dfefe7df04e4ac165"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41e218680a464b2f6d727aee4681edb6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a41e218680a464b2f6d727aee4681edb6">BIG_384_29_zero</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:a41e218680a464b2f6d727aee4681edb6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to zero. <a href="#a41e218680a464b2f6d727aee4681edb6">More...</a><br /></td></tr>
<tr class="separator:a41e218680a464b2f6d727aee4681edb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58d1c2c922f53294419dd7a491bfac43"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a58d1c2c922f53294419dd7a491bfac43">BIG_384_29_dzero</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x)</td></tr>
<tr class="memdesc:a58d1c2c922f53294419dd7a491bfac43"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to zero. <a href="#a58d1c2c922f53294419dd7a491bfac43">More...</a><br /></td></tr>
<tr class="separator:a58d1c2c922f53294419dd7a491bfac43"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a885fa7c4bf3a44ff79768ed0d83c80ec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a885fa7c4bf3a44ff79768ed0d83c80ec">BIG_384_29_one</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:a885fa7c4bf3a44ff79768ed0d83c80ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to one (unity) <a href="#a885fa7c4bf3a44ff79768ed0d83c80ec">More...</a><br /></td></tr>
<tr class="separator:a885fa7c4bf3a44ff79768ed0d83c80ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad24cf08aefb349c5ec7d384fb26d4a3c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ad24cf08aefb349c5ec7d384fb26d4a3c">BIG_384_29_invmod2m</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:ad24cf08aefb349c5ec7d384fb26d4a3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to inverse mod 2^256. <a href="#ad24cf08aefb349c5ec7d384fb26d4a3c">More...</a><br /></td></tr>
<tr class="separator:ad24cf08aefb349c5ec7d384fb26d4a3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8a33809748e86abf38be6a82ee48dbc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ae8a33809748e86abf38be6a82ee48dbc">BIG_384_29_add</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> z)</td></tr>
<tr class="memdesc:ae8a33809748e86abf38be6a82ee48dbc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to sum of two BIGs - output not normalised. <a href="#ae8a33809748e86abf38be6a82ee48dbc">More...</a><br /></td></tr>
<tr class="separator:ae8a33809748e86abf38be6a82ee48dbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc3c04e91c8a5e1336ca2c4fd2744492"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#abc3c04e91c8a5e1336ca2c4fd2744492">BIG_384_29_or</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> z)</td></tr>
<tr class="memdesc:abc3c04e91c8a5e1336ca2c4fd2744492"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to logical or of two BIGs - output normalised. <a href="#abc3c04e91c8a5e1336ca2c4fd2744492">More...</a><br /></td></tr>
<tr class="separator:abc3c04e91c8a5e1336ca2c4fd2744492"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd830342f83d91806905d61288ff1a89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#abd830342f83d91806905d61288ff1a89">BIG_384_29_inc</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, int i)</td></tr>
<tr class="memdesc:abd830342f83d91806905d61288ff1a89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment BIG by a small integer - output not normalised. <a href="#abd830342f83d91806905d61288ff1a89">More...</a><br /></td></tr>
<tr class="separator:abd830342f83d91806905d61288ff1a89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ec616ce0230484c3fe0009710f5233c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a4ec616ce0230484c3fe0009710f5233c">BIG_384_29_sub</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> z)</td></tr>
<tr class="memdesc:a4ec616ce0230484c3fe0009710f5233c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to difference of two BIGs. <a href="#a4ec616ce0230484c3fe0009710f5233c">More...</a><br /></td></tr>
<tr class="separator:a4ec616ce0230484c3fe0009710f5233c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9606f885cd731e6bb70ed43c0fb56de9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a9606f885cd731e6bb70ed43c0fb56de9">BIG_384_29_dec</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, int i)</td></tr>
<tr class="memdesc:a9606f885cd731e6bb70ed43c0fb56de9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement BIG by a small integer - output not normalised. <a href="#a9606f885cd731e6bb70ed43c0fb56de9">More...</a><br /></td></tr>
<tr class="separator:a9606f885cd731e6bb70ed43c0fb56de9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80012252d35e1f39786cb8020b2dbc27"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a80012252d35e1f39786cb8020b2dbc27">BIG_384_29_dadd</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> z)</td></tr>
<tr class="memdesc:a80012252d35e1f39786cb8020b2dbc27"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to sum of two DBIGs. <a href="#a80012252d35e1f39786cb8020b2dbc27">More...</a><br /></td></tr>
<tr class="separator:a80012252d35e1f39786cb8020b2dbc27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e8bf34c64b05b903b9027541825547d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a8e8bf34c64b05b903b9027541825547d">BIG_384_29_dsub</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> z)</td></tr>
<tr class="memdesc:a8e8bf34c64b05b903b9027541825547d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to difference of two DBIGs. <a href="#a8e8bf34c64b05b903b9027541825547d">More...</a><br /></td></tr>
<tr class="separator:a8e8bf34c64b05b903b9027541825547d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad19895d08db9aeebf44eff2cc1dafb52"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ad19895d08db9aeebf44eff2cc1dafb52">BIG_384_29_imul</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, int i)</td></tr>
<tr class="memdesc:ad19895d08db9aeebf44eff2cc1dafb52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by a small integer - output not normalised. <a href="#ad19895d08db9aeebf44eff2cc1dafb52">More...</a><br /></td></tr>
<tr class="separator:ad19895d08db9aeebf44eff2cc1dafb52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4141ae18ee04ccefb2d1bf110b935ec0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a4141ae18ee04ccefb2d1bf110b935ec0">BIG_384_29_pmul</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, int i)</td></tr>
<tr class="memdesc:a4141ae18ee04ccefb2d1bf110b935ec0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by not-so-small small integer - output normalised. <a href="#a4141ae18ee04ccefb2d1bf110b935ec0">More...</a><br /></td></tr>
<tr class="separator:a4141ae18ee04ccefb2d1bf110b935ec0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5f1a4ab6733b7f7d6d241ee5062c2de"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#aa5f1a4ab6733b7f7d6d241ee5062c2de">BIG_384_29_div3</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:aa5f1a4ab6733b7f7d6d241ee5062c2de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide BIG by 3 - output normalised. <a href="#aa5f1a4ab6733b7f7d6d241ee5062c2de">More...</a><br /></td></tr>
<tr class="separator:aa5f1a4ab6733b7f7d6d241ee5062c2de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7af0ca6c0f3147ee53ab842ee0d573f7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a7af0ca6c0f3147ee53ab842ee0d573f7">BIG_384_29_pxmul</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, int i)</td></tr>
<tr class="memdesc:a7af0ca6c0f3147ee53ab842ee0d573f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by even bigger small integer resulting in a DBIG - output normalised. <a href="#a7af0ca6c0f3147ee53ab842ee0d573f7">More...</a><br /></td></tr>
<tr class="separator:a7af0ca6c0f3147ee53ab842ee0d573f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc2d3df7f8f1ad51ee78d34f1e6a481b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#acc2d3df7f8f1ad51ee78d34f1e6a481b">BIG_384_29_mul</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> z)</td></tr>
<tr class="memdesc:acc2d3df7f8f1ad51ee78d34f1e6a481b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in DBIG - inputs normalised and output normalised. <a href="#acc2d3df7f8f1ad51ee78d34f1e6a481b">More...</a><br /></td></tr>
<tr class="separator:acc2d3df7f8f1ad51ee78d34f1e6a481b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af933c60ca40249a1ee97207d17ec8971"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#af933c60ca40249a1ee97207d17ec8971">BIG_384_29_smul</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> z)</td></tr>
<tr class="memdesc:af933c60ca40249a1ee97207d17ec8971"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in another BIG - inputs normalised and output normalised. <a href="#af933c60ca40249a1ee97207d17ec8971">More...</a><br /></td></tr>
<tr class="separator:af933c60ca40249a1ee97207d17ec8971"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7e0e139b973fd707f3dc0416149368e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#af7e0e139b973fd707f3dc0416149368e">BIG_384_29_sqr</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y)</td></tr>
<tr class="memdesc:af7e0e139b973fd707f3dc0416149368e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Square BIG resulting in a DBIG - input normalised and output normalised. <a href="#af7e0e139b973fd707f3dc0416149368e">More...</a><br /></td></tr>
<tr class="separator:af7e0e139b973fd707f3dc0416149368e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5123a78afa3994d0cf7d544317f6a80"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ab5123a78afa3994d0cf7d544317f6a80">BIG_384_29_monty</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> a, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> md, <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> MC, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> d)</td></tr>
<tr class="memdesc:ab5123a78afa3994d0cf7d544317f6a80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Montgomery reduction of a DBIG to a BIG - input normalised and output normalised. <a href="#ab5123a78afa3994d0cf7d544317f6a80">More...</a><br /></td></tr>
<tr class="separator:ab5123a78afa3994d0cf7d544317f6a80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d9b60bba362a7654da3e79a0364e84c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a6d9b60bba362a7654da3e79a0364e84c">BIG_384_29_shl</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, int s)</td></tr>
<tr class="memdesc:a6d9b60bba362a7654da3e79a0364e84c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shifts a BIG left by any number of bits - input must be normalised, output normalised. <a href="#a6d9b60bba362a7654da3e79a0364e84c">More...</a><br /></td></tr>
<tr class="separator:a6d9b60bba362a7654da3e79a0364e84c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a534f2208022d5711bc1ce450e7822205"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a534f2208022d5711bc1ce450e7822205">BIG_384_29_fshl</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, int s)</td></tr>
<tr class="memdesc:a534f2208022d5711bc1ce450e7822205"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast shifts a BIG left by a small number of bits - input must be normalised, output will be normalised. <a href="#a534f2208022d5711bc1ce450e7822205">More...</a><br /></td></tr>
<tr class="separator:a534f2208022d5711bc1ce450e7822205"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66077e9acce3a88340f7555136248e81"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a66077e9acce3a88340f7555136248e81">BIG_384_29_dshl</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, int s)</td></tr>
<tr class="memdesc:a66077e9acce3a88340f7555136248e81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shifts a DBIG left by any number of bits - input must be normalised, output normalised. <a href="#a66077e9acce3a88340f7555136248e81">More...</a><br /></td></tr>
<tr class="separator:a66077e9acce3a88340f7555136248e81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3260b1ddfce0d1b53a94b8c5dcdcbec8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a3260b1ddfce0d1b53a94b8c5dcdcbec8">BIG_384_29_shr</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, int s)</td></tr>
<tr class="memdesc:a3260b1ddfce0d1b53a94b8c5dcdcbec8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shifts a BIG right by any number of bits - input must be normalised, output normalised. <a href="#a3260b1ddfce0d1b53a94b8c5dcdcbec8">More...</a><br /></td></tr>
<tr class="separator:a3260b1ddfce0d1b53a94b8c5dcdcbec8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a944b245f8d0b3478465c737273711da6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a944b245f8d0b3478465c737273711da6">BIG_384_29_ssn</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> r, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> a, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> m)</td></tr>
<tr class="memdesc:a944b245f8d0b3478465c737273711da6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast time-critical combined shift by 1 bit, subtract and normalise. <a href="#a944b245f8d0b3478465c737273711da6">More...</a><br /></td></tr>
<tr class="separator:a944b245f8d0b3478465c737273711da6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aacf67d3558e177d1e90e6779449062de"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#aacf67d3558e177d1e90e6779449062de">BIG_384_29_fshr</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, int s)</td></tr>
<tr class="memdesc:aacf67d3558e177d1e90e6779449062de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast shifts a BIG right by a small number of bits - input must be normalised, output will be normalised. <a href="#aacf67d3558e177d1e90e6779449062de">More...</a><br /></td></tr>
<tr class="separator:aacf67d3558e177d1e90e6779449062de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01b53c51d421c61e4b09ad5ab88995f5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a01b53c51d421c61e4b09ad5ab88995f5">BIG_384_29_dshr</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, int s)</td></tr>
<tr class="memdesc:a01b53c51d421c61e4b09ad5ab88995f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shifts a DBIG right by any number of bits - input must be normalised, output normalised. <a href="#a01b53c51d421c61e4b09ad5ab88995f5">More...</a><br /></td></tr>
<tr class="separator:a01b53c51d421c61e4b09ad5ab88995f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89cba4e8778cb74d2a273749ec1fccfb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a89cba4e8778cb74d2a273749ec1fccfb">BIG_384_29_split</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> z, int s)</td></tr>
<tr class="memdesc:a89cba4e8778cb74d2a273749ec1fccfb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Splits a DBIG into two BIGs - input must be normalised, outputs normalised. <a href="#a89cba4e8778cb74d2a273749ec1fccfb">More...</a><br /></td></tr>
<tr class="separator:a89cba4e8778cb74d2a273749ec1fccfb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adae96ed56ad1402b54f0a5a1222d8f87"><td class="memItemLeft" align="right" valign="top"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#adae96ed56ad1402b54f0a5a1222d8f87">BIG_384_29_norm</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:adae96ed56ad1402b54f0a5a1222d8f87"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a BIG number - output normalised. <a href="#adae96ed56ad1402b54f0a5a1222d8f87">More...</a><br /></td></tr>
<tr class="separator:adae96ed56ad1402b54f0a5a1222d8f87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9109a9ab947921c2831aaeb359e16828"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a9109a9ab947921c2831aaeb359e16828">BIG_384_29_dnorm</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x)</td></tr>
<tr class="memdesc:a9109a9ab947921c2831aaeb359e16828"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a DBIG number - output normalised. <a href="#a9109a9ab947921c2831aaeb359e16828">More...</a><br /></td></tr>
<tr class="separator:a9109a9ab947921c2831aaeb359e16828"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac06efcddbe91d806bf4b8c01c56f08ca"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ac06efcddbe91d806bf4b8c01c56f08ca">BIG_384_29_comp</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y)</td></tr>
<tr class="memdesc:ac06efcddbe91d806bf4b8c01c56f08ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two BIG numbers. Inputs must be normalised externally. <a href="#ac06efcddbe91d806bf4b8c01c56f08ca">More...</a><br /></td></tr>
<tr class="separator:ac06efcddbe91d806bf4b8c01c56f08ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b99018225d825960c70dd1a213c581b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a0b99018225d825960c70dd1a213c581b">BIG_384_29_dcomp</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> y)</td></tr>
<tr class="memdesc:a0b99018225d825960c70dd1a213c581b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two DBIG numbers. Inputs must be normalised externally. <a href="#a0b99018225d825960c70dd1a213c581b">More...</a><br /></td></tr>
<tr class="separator:a0b99018225d825960c70dd1a213c581b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad60635d46eb5edd3b8f422fd9094e04c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ad60635d46eb5edd3b8f422fd9094e04c">BIG_384_29_nbits</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:ad60635d46eb5edd3b8f422fd9094e04c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a BIG - output normalised. <a href="#ad60635d46eb5edd3b8f422fd9094e04c">More...</a><br /></td></tr>
<tr class="separator:ad60635d46eb5edd3b8f422fd9094e04c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a442287e511b421462af841b34fce153b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a442287e511b421462af841b34fce153b">BIG_384_29_dnbits</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x)</td></tr>
<tr class="memdesc:a442287e511b421462af841b34fce153b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a DBIG - output normalised. <a href="#a442287e511b421462af841b34fce153b">More...</a><br /></td></tr>
<tr class="separator:a442287e511b421462af841b34fce153b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e429b6a38eff8bc3d7e984e506b92ee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a5e429b6a38eff8bc3d7e984e506b92ee">BIG_384_29_mod</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n)</td></tr>
<tr class="memdesc:a5e429b6a38eff8bc3d7e984e506b92ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reduce x mod n - input and output normalised. <a href="#a5e429b6a38eff8bc3d7e984e506b92ee">More...</a><br /></td></tr>
<tr class="separator:a5e429b6a38eff8bc3d7e984e506b92ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a396198fbeb743b7ad4f7f80c2934f965"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a396198fbeb743b7ad4f7f80c2934f965">BIG_384_29_sdiv</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n)</td></tr>
<tr class="memdesc:a396198fbeb743b7ad4f7f80c2934f965"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide x by n - output normalised. <a href="#a396198fbeb743b7ad4f7f80c2934f965">More...</a><br /></td></tr>
<tr class="separator:a396198fbeb743b7ad4f7f80c2934f965"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a042d957754ebc5d6847abf0c0ed613f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a042d957754ebc5d6847abf0c0ed613f9">BIG_384_29_dmod</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n)</td></tr>
<tr class="memdesc:a042d957754ebc5d6847abf0c0ed613f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y mod n - output normalised <a href="#a042d957754ebc5d6847abf0c0ed613f9">More...</a><br /></td></tr>
<tr class="separator:a042d957754ebc5d6847abf0c0ed613f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4089cb6ff0368f04bb1d415c9ceb1c72"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a4089cb6ff0368f04bb1d415c9ceb1c72">BIG_384_29_ddiv</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n)</td></tr>
<tr class="memdesc:a4089cb6ff0368f04bb1d415c9ceb1c72"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y/n - output normalised <a href="#a4089cb6ff0368f04bb1d415c9ceb1c72">More...</a><br /></td></tr>
<tr class="separator:a4089cb6ff0368f04bb1d415c9ceb1c72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c2b8fc522862ee9f466dcb227a6a278"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a4c2b8fc522862ee9f466dcb227a6a278">BIG_384_29_parity</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x)</td></tr>
<tr class="memdesc:a4c2b8fc522862ee9f466dcb227a6a278"><td class="mdescLeft">&#160;</td><td class="mdescRight">return parity of BIG, that is the least significant bit <a href="#a4c2b8fc522862ee9f466dcb227a6a278">More...</a><br /></td></tr>
<tr class="separator:a4c2b8fc522862ee9f466dcb227a6a278"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76a57f414f2b3be61fa038ec2a016bb0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a76a57f414f2b3be61fa038ec2a016bb0">BIG_384_29_bit</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, int i)</td></tr>
<tr class="memdesc:a76a57f414f2b3be61fa038ec2a016bb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">return i-th of BIG <a href="#a76a57f414f2b3be61fa038ec2a016bb0">More...</a><br /></td></tr>
<tr class="separator:a76a57f414f2b3be61fa038ec2a016bb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40be50b37b5e4515902c22dad2f156ef"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a40be50b37b5e4515902c22dad2f156ef">BIG_384_29_lastbits</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, int n)</td></tr>
<tr class="memdesc:a40be50b37b5e4515902c22dad2f156ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">return least significant bits of a BIG <a href="#a40be50b37b5e4515902c22dad2f156ef">More...</a><br /></td></tr>
<tr class="separator:a40be50b37b5e4515902c22dad2f156ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab47d90d426deb85d60b6677eda549e78"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ab47d90d426deb85d60b6677eda549e78">BIG_384_29_random</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:ab47d90d426deb85d60b6677eda549e78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a random BIG from a random number generator. <a href="#ab47d90d426deb85d60b6677eda549e78">More...</a><br /></td></tr>
<tr class="separator:ab47d90d426deb85d60b6677eda549e78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9771f9ed803f3be53c92db25f6e059fb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a9771f9ed803f3be53c92db25f6e059fb">BIG_384_29_randomnum</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:a9771f9ed803f3be53c92db25f6e059fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create an unbiased random BIG from a random number generator, reduced with respect to a modulus. <a href="#a9771f9ed803f3be53c92db25f6e059fb">More...</a><br /></td></tr>
<tr class="separator:a9771f9ed803f3be53c92db25f6e059fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83339bca9b54d2c662b82563aa2cab6e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a83339bca9b54d2c662b82563aa2cab6e">BIG_384_29_modmul</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> z, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n)</td></tr>
<tr class="memdesc:a83339bca9b54d2c662b82563aa2cab6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y*z mod n. <a href="#a83339bca9b54d2c662b82563aa2cab6e">More...</a><br /></td></tr>
<tr class="separator:a83339bca9b54d2c662b82563aa2cab6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1ecea87aa16f997ac5926c559c56bf5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ad1ecea87aa16f997ac5926c559c56bf5">BIG_384_29_moddiv</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> z, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n)</td></tr>
<tr class="memdesc:ad1ecea87aa16f997ac5926c559c56bf5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y/z mod n. <a href="#ad1ecea87aa16f997ac5926c559c56bf5">More...</a><br /></td></tr>
<tr class="separator:ad1ecea87aa16f997ac5926c559c56bf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8711ca578f23cc48a617bd707696951a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a8711ca578f23cc48a617bd707696951a">BIG_384_29_modsqr</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n)</td></tr>
<tr class="memdesc:a8711ca578f23cc48a617bd707696951a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y^2 mod n. <a href="#a8711ca578f23cc48a617bd707696951a">More...</a><br /></td></tr>
<tr class="separator:a8711ca578f23cc48a617bd707696951a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a3aab2f941d3ad88fe09a884ce4bbf3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a9a3aab2f941d3ad88fe09a884ce4bbf3">BIG_384_29_modneg</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n)</td></tr>
<tr class="memdesc:a9a3aab2f941d3ad88fe09a884ce4bbf3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=-y mod n. <a href="#a9a3aab2f941d3ad88fe09a884ce4bbf3">More...</a><br /></td></tr>
<tr class="separator:a9a3aab2f941d3ad88fe09a884ce4bbf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af934ab3c68b97302df91f99bbb83a2b0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#af934ab3c68b97302df91f99bbb83a2b0">BIG_384_29_jacobi</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y)</td></tr>
<tr class="memdesc:af934ab3c68b97302df91f99bbb83a2b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate jacobi Symbol (x/y) <a href="#af934ab3c68b97302df91f99bbb83a2b0">More...</a><br /></td></tr>
<tr class="separator:af934ab3c68b97302df91f99bbb83a2b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39adf092cc3e1e0d5f98acaebcf4dd2f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a39adf092cc3e1e0d5f98acaebcf4dd2f">BIG_384_29_invmodp</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> y, <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> n)</td></tr>
<tr class="memdesc:a39adf092cc3e1e0d5f98acaebcf4dd2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=1/y mod n. <a href="#a39adf092cc3e1e0d5f98acaebcf4dd2f">More...</a><br /></td></tr>
<tr class="separator:a39adf092cc3e1e0d5f98acaebcf4dd2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2eb7feb42ec2e26b6d413bc27161b003"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#a2eb7feb42ec2e26b6d413bc27161b003">BIG_384_29_mod2m</a> (<a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a> x, int m)</td></tr>
<tr class="memdesc:a2eb7feb42ec2e26b6d413bc27161b003"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a2eb7feb42ec2e26b6d413bc27161b003">More...</a><br /></td></tr>
<tr class="separator:a2eb7feb42ec2e26b6d413bc27161b003"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5942c0c1f2816790ec4c6fac63fb934"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__384__29_8h.html#ad5942c0c1f2816790ec4c6fac63fb934">BIG_384_29_dmod2m</a> (<a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a> x, int m)</td></tr>
<tr class="memdesc:ad5942c0c1f2816790ec4c6fac63fb934"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#ad5942c0c1f2816790ec4c6fac63fb934">More...</a><br /></td></tr>
<tr class="separator:ad5942c0c1f2816790ec4c6fac63fb934"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><dl class="section author"><dt>Author</dt><dd>Mike Scott </dd></dl>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a5feb1f06130ed84f11090989e07af7b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5feb1f06130ed84f11090989e07af7b2">&#9670;&nbsp;</a></span>BIGBITS_384_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BIGBITS_384_29&#160;&#160;&#160;(8*<a class="el" href="config__big__384__29_8h.html#a20764d3b8a6ee4cf548fdacc36e22a79">MODBYTES_384_29</a>)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Length in bits </p>
</div>
</div>
<a id="a385093038217417d0ccf44b5d13875d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a385093038217417d0ccf44b5d13875d4">&#9670;&nbsp;</a></span>BMASK_384_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BMASK_384_29&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__384__29_8h.html#afbf8af6e59b69e4f78c0d20c2acea5cd">BASEBITS_384_29</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^BASEBITS-1 </p>
</div>
</div>
<a id="addd1b223ffcb85c18f7f25c1b0e2e068"></a>
<h2 class="memtitle"><span class="permalink"><a href="#addd1b223ffcb85c18f7f25c1b0e2e068">&#9670;&nbsp;</a></span>DNLEN_384_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DNLEN_384_29&#160;&#160;&#160;2*<a class="el" href="big__384__29_8h.html#a2d1004b9eccdcfc31be289533132cfe3">NLEN_384_29</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Double length in bytes </p>
</div>
</div>
<a id="ab7676d9d5313782211e981b9e62cdff5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab7676d9d5313782211e981b9e62cdff5">&#9670;&nbsp;</a></span>HBITS_384_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HBITS_384_29&#160;&#160;&#160;(<a class="el" href="config__big__384__29_8h.html#afbf8af6e59b69e4f78c0d20c2acea5cd">BASEBITS_384_29</a>/2)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of bits in number base divided by 2 </p>
</div>
</div>
<a id="a9f3ff82f9bb37efc3eb8afa48876b952"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f3ff82f9bb37efc3eb8afa48876b952">&#9670;&nbsp;</a></span>HMASK_384_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HMASK_384_29&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__384__29_8h.html#ab7676d9d5313782211e981b9e62cdff5">HBITS_384_29</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^HBITS-1 </p>
</div>
</div>
<a id="a0eb3ec057af21eb8c5e402134bda3fbb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0eb3ec057af21eb8c5e402134bda3fbb">&#9670;&nbsp;</a></span>NEXCESS_384_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NEXCESS_384_29&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__384__29_8h.html#afbf8af6e59b69e4f78c0d20c2acea5cd">BASEBITS_384_29</a>-1))</td>
</tr>
</table>
</div><div class="memdoc">
<p>2^(CHUNK-BASEBITS-1) - digit cannot be multiplied by more than this before normalisation </p>
</div>
</div>
<a id="a2d1004b9eccdcfc31be289533132cfe3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2d1004b9eccdcfc31be289533132cfe3">&#9670;&nbsp;</a></span>NLEN_384_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NLEN_384_29&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__384__29_8h.html#a20764d3b8a6ee4cf548fdacc36e22a79">MODBYTES_384_29</a>-1)/<a class="el" href="config__big__384__29_8h.html#afbf8af6e59b69e4f78c0d20c2acea5cd">BASEBITS_384_29</a>))</td>
</tr>
</table>
</div><div class="memdoc">
<p>length in bytes </p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a8c300cadd1a50e2f3a67f9ef2214944c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c300cadd1a50e2f3a67f9ef2214944c">&#9670;&nbsp;</a></span>BIG_384_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_384_29[<a class="el" href="big__384__29_8h.html#a2d1004b9eccdcfc31be289533132cfe3">NLEN_384_29</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type BIG as array of chunks </p>
</div>
</div>
<a id="aef1a1a590bb80b9d666d508e97dc2aa8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef1a1a590bb80b9d666d508e97dc2aa8">&#9670;&nbsp;</a></span>DBIG_384_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> DBIG_384_29[<a class="el" href="big__384__29_8h.html#addd1b223ffcb85c18f7f25c1b0e2e068">DNLEN_384_29</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type DBIG as array of chunks </p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="ae8a33809748e86abf38be6a82ee48dbc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae8a33809748e86abf38be6a82ee48dbc">&#9670;&nbsp;</a></span>BIG_384_29_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_add </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, sum of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a76a57f414f2b3be61fa038ec2a016bb0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a76a57f414f2b3be61fa038ec2a016bb0">&#9670;&nbsp;</a></span>BIG_384_29_bit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_bit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>the bit of x to be returned </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 or 1 </dd></dl>
</div>
</div>
<a id="aab35f8dbaae1db3e43babae24a220297"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aab35f8dbaae1db3e43babae24a220297">&#9670;&nbsp;</a></span>BIG_384_29_cmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_cmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Conditionally copies second parameter to the first (without branching) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
<tr><td class="paramname">y</td><td>another BIG number </td></tr>
<tr><td class="paramname">s</td><td>copy takes place if not equal to 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ac06efcddbe91d806bf4b8c01c56f08ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac06efcddbe91d806bf4b8c01c56f08ca">&#9670;&nbsp;</a></span>BIG_384_29_comp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_comp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>first BIG number to be compared </td></tr>
<tr><td class="paramname">y</td><td>second BIG number to be compared </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>-1 is x&lt;y, 0 if x=y, 1 if x&gt;y </dd></dl>
</div>
</div>
<a id="aaa87c91cf1a4e235b4e57061744b7488"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa87c91cf1a4e235b4e57061744b7488">&#9670;&nbsp;</a></span>BIG_384_29_copy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_copy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a5a848fbcf9248fdf5f123ad831f0eb36"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a848fbcf9248fdf5f123ad831f0eb36">&#9670;&nbsp;</a></span>BIG_384_29_cswap()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_cswap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Conditionally swaps parameters in constant time (without branching) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
<tr><td class="paramname">y</td><td>another BIG number </td></tr>
<tr><td class="paramname">s</td><td>swap takes place if not equal to 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a80012252d35e1f39786cb8020b2dbc27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a80012252d35e1f39786cb8020b2dbc27">&#9670;&nbsp;</a></span>BIG_384_29_dadd()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dadd </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, sum of other two - output not normalised </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">z</td><td>DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a550d58a56c3336f2b0a5895aeb61b72b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a550d58a56c3336f2b0a5895aeb61b72b">&#9670;&nbsp;</a></span>BIG_384_29_dcmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dcmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Conditionally copies second parameter to the first (without branching) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a DBIG number </td></tr>
<tr><td class="paramname">y</td><td>another DBIG number </td></tr>
<tr><td class="paramname">s</td><td>copy takes place if not equal to 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a0b99018225d825960c70dd1a213c581b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0b99018225d825960c70dd1a213c581b">&#9670;&nbsp;</a></span>BIG_384_29_dcomp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_dcomp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>first DBIG number to be compared </td></tr>
<tr><td class="paramname">y</td><td>second DBIG number to be compared </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>-1 is x&lt;y, 0 if x=y, 1 if x&gt;y </dd></dl>
</div>
</div>
<a id="a31493a223d149d150b81109af2622e68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31493a223d149d150b81109af2622e68">&#9670;&nbsp;</a></span>BIG_384_29_dcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">y</td><td>DBIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a4089cb6ff0368f04bb1d415c9ceb1c72"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4089cb6ff0368f04bb1d415c9ceb1c72">&#9670;&nbsp;</a></span>BIG_384_29_ddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_ddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used. y is destroyed. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y/n </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">n</td><td>Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a9606f885cd731e6bb70ed43c0fb56de9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9606f885cd731e6bb70ed43c0fb56de9">&#9670;&nbsp;</a></span>BIG_384_29_dec()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dec </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be decremented </td></tr>
<tr><td class="paramname">i</td><td>integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aebcaf728ea21b894d4f40f2ce84b06e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebcaf728ea21b894d4f40f2ce84b06e5">&#9670;&nbsp;</a></span>BIG_384_29_dfromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dfromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">a</td><td>byte array </td></tr>
<tr><td class="paramname">s</td><td>byte array length </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a16caa5b2e994f3b3b09d4a4952970977"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16caa5b2e994f3b3b09d4a4952970977">&#9670;&nbsp;</a></span>BIG_384_29_diszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_diszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a DBIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if zero, else returns 0 </dd></dl>
</div>
</div>
<a id="aa5f1a4ab6733b7f7d6d241ee5062c2de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa5f1a4ab6733b7f7d6d241ee5062c2de">&#9670;&nbsp;</a></span>BIG_384_29_div3()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_div3 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Remainder </dd></dl>
</div>
</div>
<a id="a042d957754ebc5d6847abf0c0ed613f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a042d957754ebc5d6847abf0c0ed613f9">&#9670;&nbsp;</a></span>BIG_384_29_dmod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dmod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used. y is destroyed. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y mod n </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">n</td><td>Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad5942c0c1f2816790ec4c6fac63fb934"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5942c0c1f2816790ec4c6fac63fb934">&#9670;&nbsp;</a></span>BIG_384_29_dmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Truncation
@param x DBIG number, on reduced mod 2^m
@param m new truncated size
</pre>
</div>
</div>
<a id="a442287e511b421462af841b34fce153b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a442287e511b421462af841b34fce153b">&#9670;&nbsp;</a></span>BIG_384_29_dnbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_dnbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bits in x </dd></dl>
</div>
</div>
<a id="a9109a9ab947921c2831aaeb359e16828"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9109a9ab947921c2831aaeb359e16828">&#9670;&nbsp;</a></span>BIG_384_29_dnorm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dnorm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>All digits of the input DBIG are reduced mod 2^BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be normalised </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a298aa7a0970303e8d65d6653fa72ba24"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a298aa7a0970303e8d65d6653fa72ba24">&#9670;&nbsp;</a></span>BIG_384_29_doutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_doutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a16f67ff9a20a55edadfd8b1dd6d7a2e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16f67ff9a20a55edadfd8b1dd6d7a2e8">&#9670;&nbsp;</a></span>BIG_384_29_drawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_drawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a84ac3f34e8a03c0e8f5e3a6d1a856442"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84ac3f34e8a03c0e8f5e3a6d1a856442">&#9670;&nbsp;</a></span>BIG_384_29_dscopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dscopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a66077e9acce3a88340f7555136248e81"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a66077e9acce3a88340f7555136248e81">&#9670;&nbsp;</a></span>BIG_384_29_dshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a01b53c51d421c61e4b09ad5ab88995f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01b53c51d421c61e4b09ad5ab88995f5">&#9670;&nbsp;</a></span>BIG_384_29_dshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a8e8bf34c64b05b903b9027541825547d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8e8bf34c64b05b903b9027541825547d">&#9670;&nbsp;</a></span>BIG_384_29_dsub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dsub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, difference of other two - output not normalised </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">z</td><td>DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a461b13e8431b6341e9c0f18e171e30a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a461b13e8431b6341e9c0f18e171e30a1">&#9670;&nbsp;</a></span>BIG_384_29_dsucopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dsucopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a58d1c2c922f53294419dd7a491bfac43"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58d1c2c922f53294419dd7a491bfac43">&#9670;&nbsp;</a></span>BIG_384_29_dzero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_dzero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be set to zero </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a611c1c3a2087a61ca8aca6702a501e7d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a611c1c3a2087a61ca8aca6702a501e7d">&#9670;&nbsp;</a></span>BIG_384_29_fromBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_fromBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">a</td><td>byte array </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab26f93bbc86ea2938b1d640d50baf514"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab26f93bbc86ea2938b1d640d50baf514">&#9670;&nbsp;</a></span>BIG_384_29_fromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_fromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">a</td><td>byte array </td></tr>
<tr><td class="paramname">s</td><td>byte array length </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a534f2208022d5711bc1ce450e7822205"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a534f2208022d5711bc1ce450e7822205">&#9670;&nbsp;</a></span>BIG_384_29_fshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_fshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The number of bits to be shifted must be less than BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Overflow bits </dd></dl>
</div>
</div>
<a id="aacf67d3558e177d1e90e6779449062de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aacf67d3558e177d1e90e6779449062de">&#9670;&nbsp;</a></span>BIG_384_29_fshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_fshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The number of bits to be shifted must be less than BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Shifted out bits </dd></dl>
</div>
</div>
<a id="ad19895d08db9aeebf44eff2cc1dafb52"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad19895d08db9aeebf44eff2cc1dafb52">&#9670;&nbsp;</a></span>BIG_384_29_imul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_imul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>small integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="abd830342f83d91806905d61288ff1a89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd830342f83d91806905d61288ff1a89">&#9670;&nbsp;</a></span>BIG_384_29_inc()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_inc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be incremented </td></tr>
<tr><td class="paramname">i</td><td>integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad24cf08aefb349c5ec7d384fb26d4a3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad24cf08aefb349c5ec7d384fb26d4a3c">&#9670;&nbsp;</a></span>BIG_384_29_invmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_invmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be inverted </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a39adf092cc3e1e0d5f98acaebcf4dd2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39adf092cc3e1e0d5f98acaebcf4dd2f">&#9670;&nbsp;</a></span>BIG_384_29_invmodp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_invmodp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Modular Inversion - This is slow. Uses binary method. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = 1/y mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a239235d13ab7ea1c82070ea771293f18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a239235d13ab7ea1c82070ea771293f18">&#9670;&nbsp;</a></span>BIG_384_29_isunity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_isunity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if one, else returns 0 </dd></dl>
</div>
</div>
<a id="a69ba68e3a4efc01da04050cc79706680"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69ba68e3a4efc01da04050cc79706680">&#9670;&nbsp;</a></span>BIG_384_29_iszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_iszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if zero, else returns 0 </dd></dl>
</div>
</div>
<a id="af934ab3c68b97302df91f99bbb83a2b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af934ab3c68b97302df91f99bbb83a2b0">&#9670;&nbsp;</a></span>BIG_384_29_jacobi()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_jacobi </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Jacobi symbol, -1,0 or 1 </dd></dl>
</div>
</div>
<a id="a40be50b37b5e4515902c22dad2f156ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40be50b37b5e4515902c22dad2f156ef">&#9670;&nbsp;</a></span>BIG_384_29_lastbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_lastbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>number of bits to return. Assumed to be less than BASEBITS. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>least significant n bits as an integer </dd></dl>
</div>
</div>
<a id="a5e429b6a38eff8bc3d7e984e506b92ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e429b6a38eff8bc3d7e984e506b92ee">&#9670;&nbsp;</a></span>BIG_384_29_mod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_mod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be reduced mod n </td></tr>
<tr><td class="paramname">n</td><td>The modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a2eb7feb42ec2e26b6d413bc27161b003"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2eb7feb42ec2e26b6d413bc27161b003">&#9670;&nbsp;</a></span>BIG_384_29_mod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_mod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Truncation
@param x BIG number, on reduced mod 2^m
@param m new truncated size
</pre>
</div>
</div>
<a id="ad1ecea87aa16f997ac5926c559c56bf5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1ecea87aa16f997ac5926c559c56bf5">&#9670;&nbsp;</a></span>BIG_384_29_moddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_moddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow method for modular division </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y/z mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a83339bca9b54d2c662b82563aa2cab6e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83339bca9b54d2c662b82563aa2cab6e">&#9670;&nbsp;</a></span>BIG_384_29_modmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_modmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>brief return NAF (Non-Adjacent-Form) value as +/- 1, 3 or 5, inputs must be normalised</p>
<p>Given x and 3*x extracts NAF value from given bit position, and returns number of bits processed, and number of trailing zeros detected if any param x BIG number param x3 BIG number, three times x param i bit position param nbs pointer to integer returning number of bits processed param nzs pointer to integer returning number of trailing 0s return + or - 1, 3 or 5Slow method for modular multiplication </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y*z mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a9a3aab2f941d3ad88fe09a884ce4bbf3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a3aab2f941d3ad88fe09a884ce4bbf3">&#9670;&nbsp;</a></span>BIG_384_29_modneg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_modneg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Modular negation </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = -y mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a8711ca578f23cc48a617bd707696951a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8711ca578f23cc48a617bd707696951a">&#9670;&nbsp;</a></span>BIG_384_29_modsqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_modsqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow method for modular squaring </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y^2 mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab5123a78afa3994d0cf7d544317f6a80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab5123a78afa3994d0cf7d544317f6a80">&#9670;&nbsp;</a></span>BIG_384_29_monty()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_monty </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>md</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td>
<td class="paramname"><em>MC</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>d</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td>BIG number, reduction of a BIG </td></tr>
<tr><td class="paramname">md</td><td>BIG number, the modulus </td></tr>
<tr><td class="paramname">MC</td><td>the Montgomery Constant </td></tr>
<tr><td class="paramname">d</td><td>DBIG number to be reduced </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="acc2d3df7f8f1ad51ee78d34f1e6a481b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc2d3df7f8f1ad51ee78d34f1e6a481b">&#9670;&nbsp;</a></span>BIG_384_29_mul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_mul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad60635d46eb5edd3b8f422fd9094e04c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad60635d46eb5edd3b8f422fd9094e04c">&#9670;&nbsp;</a></span>BIG_384_29_nbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_nbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bits in x </dd></dl>
</div>
</div>
<a id="adae96ed56ad1402b54f0a5a1222d8f87"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adae96ed56ad1402b54f0a5a1222d8f87">&#9670;&nbsp;</a></span>BIG_384_29_norm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_384_29_norm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>All digits of the input BIG are reduced mod 2^BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be normalised </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a885fa7c4bf3a44ff79768ed0d83c80ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a885fa7c4bf3a44ff79768ed0d83c80ec">&#9670;&nbsp;</a></span>BIG_384_29_one()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_one </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be set to one. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="abc3c04e91c8a5e1336ca2c4fd2744492"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc3c04e91c8a5e1336ca2c4fd2744492">&#9670;&nbsp;</a></span>BIG_384_29_or()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_or </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, or of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ade4da533b2f4d9e98b4ce291dc9e9019"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade4da533b2f4d9e98b4ce291dc9e9019">&#9670;&nbsp;</a></span>BIG_384_29_output()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_output </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a4c2b8fc522862ee9f466dcb227a6a278"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c2b8fc522862ee9f466dcb227a6a278">&#9670;&nbsp;</a></span>BIG_384_29_parity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_parity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 or 1 </dd></dl>
</div>
</div>
<a id="a4141ae18ee04ccefb2d1bf110b935ec0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4141ae18ee04ccefb2d1bf110b935ec0">&#9670;&nbsp;</a></span>BIG_384_29_pmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_384_29_pmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>small integer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Overflowing bits </dd></dl>
</div>
</div>
<a id="a7af0ca6c0f3147ee53ab842ee0d573f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7af0ca6c0f3147ee53ab842ee0d573f7">&#9670;&nbsp;</a></span>BIG_384_29_pxmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_pxmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>small integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab47d90d426deb85d60b6677eda549e78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab47d90d426deb85d60b6677eda549e78">&#9670;&nbsp;</a></span>BIG_384_29_random()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_random </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structcsprng.html">csprng</a> *&#160;</td>
<td class="paramname"><em>r</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Assumes that the random number generator has been suitably initialised </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit a random number </td></tr>
<tr><td class="paramname">r</td><td>A pointer to a Cryptographically Secure Random Number Generator </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a9771f9ed803f3be53c92db25f6e059fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9771f9ed803f3be53c92db25f6e059fb">&#9670;&nbsp;</a></span>BIG_384_29_randomnum()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_randomnum </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structcsprng.html">csprng</a> *&#160;</td>
<td class="paramname"><em>r</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Assumes that the random number generator has been suitably initialised </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit a random number </td></tr>
<tr><td class="paramname">n</td><td>The modulus </td></tr>
<tr><td class="paramname">r</td><td>A pointer to a Cryptographically Secure Random Number Generator </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a82a583012fcdf4a28fd8895d6d086374"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a82a583012fcdf4a28fd8895d6d086374">&#9670;&nbsp;</a></span>BIG_384_29_rawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_rawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad0821bce35e6e5adfef3461fc18c3872"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0821bce35e6e5adfef3461fc18c3872">&#9670;&nbsp;</a></span>BIG_384_29_rcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_rcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number in ROM </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a331c8e2de95479761e68bfa83e640445"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a331c8e2de95479761e68bfa83e640445">&#9670;&nbsp;</a></span>BIG_384_29_sdcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_sdcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>DBIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a396198fbeb743b7ad4f7f80c2934f965"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a396198fbeb743b7ad4f7f80c2934f965">&#9670;&nbsp;</a></span>BIG_384_29_sdiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_sdiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be divided by n </td></tr>
<tr><td class="paramname">n</td><td>The Divisor </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af84298cbd89cb60dfefe7df04e4ac165"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af84298cbd89cb60dfefe7df04e4ac165">&#9670;&nbsp;</a></span>BIG_384_29_sducopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_sducopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>DBIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a6d9b60bba362a7654da3e79a0364e84c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6d9b60bba362a7654da3e79a0364e84c">&#9670;&nbsp;</a></span>BIG_384_29_shl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_shl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a3260b1ddfce0d1b53a94b8c5dcdcbec8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3260b1ddfce0d1b53a94b8c5dcdcbec8">&#9670;&nbsp;</a></span>BIG_384_29_shr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_shr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af933c60ca40249a1ee97207d17ec8971"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af933c60ca40249a1ee97207d17ec8971">&#9670;&nbsp;</a></span>BIG_384_29_smul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_smul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Note that the product must fit into a BIG, and x must be distinct from y and z </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a89cba4e8778cb74d2a273749ec1fccfb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89cba4e8778cb74d2a273749ec1fccfb">&#9670;&nbsp;</a></span>BIG_384_29_split()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_384_29_split </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Internal function. The value of s must be approximately in the middle of the DBIG. Typically used to extract z mod 2^MODBITS and z/2^MODBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, top half of z </td></tr>
<tr><td class="paramname">y</td><td>BIG number, bottom half of z </td></tr>
<tr><td class="paramname">z</td><td>DBIG number to be split in two. </td></tr>
<tr><td class="paramname">s</td><td>Bit position at which to split </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>carry-out from top half </dd></dl>
</div>
</div>
<a id="af7e0e139b973fd707f3dc0416149368e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7e0e139b973fd707f3dc0416149368e">&#9670;&nbsp;</a></span>BIG_384_29_sqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_sqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#aef1a1a590bb80b9d666d508e97dc2aa8">DBIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, square of a BIG </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be squared </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a944b245f8d0b3478465c737273711da6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a944b245f8d0b3478465c737273711da6">&#9670;&nbsp;</a></span>BIG_384_29_ssn()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_384_29_ssn </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>r</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">r</td><td>BIG number normalised output </td></tr>
<tr><td class="paramname">a</td><td>BIG number to be subtracted from </td></tr>
<tr><td class="paramname">m</td><td>BIG number to be shifted and subtracted </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>sign of r </dd></dl>
</div>
</div>
<a id="a4ec616ce0230484c3fe0009710f5233c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ec616ce0230484c3fe0009710f5233c">&#9670;&nbsp;</a></span>BIG_384_29_sub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_sub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, difference of other two - output not normalised </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a69579e616a8b921d289151ae3cc40d75"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69579e616a8b921d289151ae3cc40d75">&#9670;&nbsp;</a></span>BIG_384_29_toBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_toBytes </td>
<td>(</td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td>byte array </td></tr>
<tr><td class="paramname">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a41e218680a464b2f6d727aee4681edb6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41e218680a464b2f6d727aee4681edb6">&#9670;&nbsp;</a></span>BIG_384_29_zero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_384_29_zero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__384__29_8h.html#a8c300cadd1a50e2f3a67f9ef2214944c">BIG_384_29</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be set to zero </td></tr>
</table>
</dd>
</dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>