blob: 66de25e3dfb6dc2ea7c2772dbc8ad830425147c2 [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_256_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_256_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__256__29_8h_source.html">config_big_256_29.h</a>&quot;</code><br />
</div>
<p><a href="big__256__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:a6863374287d6031d9e1d8190b0d87205"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a6863374287d6031d9e1d8190b0d87205">BIGBITS_256_29</a>&#160;&#160;&#160;(8*<a class="el" href="config__big__256__29_8h.html#a14ee1942422fee131f26bfba5d370b6d">MODBYTES_256_29</a>)</td></tr>
<tr class="separator:a6863374287d6031d9e1d8190b0d87205"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98054fdf6f0d9c326bcbab282b566c28"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a98054fdf6f0d9c326bcbab282b566c28">NLEN_256_29</a>&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__256__29_8h.html#a14ee1942422fee131f26bfba5d370b6d">MODBYTES_256_29</a>-1)/<a class="el" href="config__big__256__29_8h.html#aeb240eff1a42e7315190d4881c34f333">BASEBITS_256_29</a>))</td></tr>
<tr class="separator:a98054fdf6f0d9c326bcbab282b566c28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a653e1560782ad0484bdace3a6a23e627"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a653e1560782ad0484bdace3a6a23e627">DNLEN_256_29</a>&#160;&#160;&#160;2*<a class="el" href="big__256__29_8h.html#a98054fdf6f0d9c326bcbab282b566c28">NLEN_256_29</a></td></tr>
<tr class="separator:a653e1560782ad0484bdace3a6a23e627"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab609d4900b112ac810c1c77bc558760f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#ab609d4900b112ac810c1c77bc558760f">BMASK_256_29</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__256__29_8h.html#aeb240eff1a42e7315190d4881c34f333">BASEBITS_256_29</a>)-1)</td></tr>
<tr class="separator:ab609d4900b112ac810c1c77bc558760f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3211c1a2e191826e47948c6967f688ab"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a3211c1a2e191826e47948c6967f688ab">NEXCESS_256_29</a>&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__256__29_8h.html#aeb240eff1a42e7315190d4881c34f333">BASEBITS_256_29</a>-1))</td></tr>
<tr class="separator:a3211c1a2e191826e47948c6967f688ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02f07f385a505ff1d42a133d7b9372af"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a02f07f385a505ff1d42a133d7b9372af">HBITS_256_29</a>&#160;&#160;&#160;(<a class="el" href="config__big__256__29_8h.html#aeb240eff1a42e7315190d4881c34f333">BASEBITS_256_29</a>/2)</td></tr>
<tr class="separator:a02f07f385a505ff1d42a133d7b9372af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9873557170d0afc86c18f63c45658217"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a9873557170d0afc86c18f63c45658217">HMASK_256_29</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__256__29_8h.html#a02f07f385a505ff1d42a133d7b9372af">HBITS_256_29</a>)-1)</td></tr>
<tr class="separator:a9873557170d0afc86c18f63c45658217"><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:a752b7e9ddbb1be663b24c192c7b40f18"><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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a>[<a class="el" href="big__256__29_8h.html#a98054fdf6f0d9c326bcbab282b566c28">NLEN_256_29</a>]</td></tr>
<tr class="separator:a752b7e9ddbb1be663b24c192c7b40f18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01ec52b32e54946975e531e4f1356884"><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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a>[<a class="el" href="big__256__29_8h.html#a653e1560782ad0484bdace3a6a23e627">DNLEN_256_29</a>]</td></tr>
<tr class="separator:a01ec52b32e54946975e531e4f1356884"><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:a976506581e8e06d57055921dec760493"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a976506581e8e06d57055921dec760493">BIG_256_29_iszilch</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:a976506581e8e06d57055921dec760493"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to zero. <a href="#a976506581e8e06d57055921dec760493">More...</a><br /></td></tr>
<tr class="separator:a976506581e8e06d57055921dec760493"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addc0b0eed4709089ea4affd912f7e20a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#addc0b0eed4709089ea4affd912f7e20a">BIG_256_29_isunity</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:addc0b0eed4709089ea4affd912f7e20a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to one. <a href="#addc0b0eed4709089ea4affd912f7e20a">More...</a><br /></td></tr>
<tr class="separator:addc0b0eed4709089ea4affd912f7e20a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5dde770895a5473f6e9770f92d1f5aa0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a5dde770895a5473f6e9770f92d1f5aa0">BIG_256_29_diszilch</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x)</td></tr>
<tr class="memdesc:a5dde770895a5473f6e9770f92d1f5aa0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for DBIG equal to zero. <a href="#a5dde770895a5473f6e9770f92d1f5aa0">More...</a><br /></td></tr>
<tr class="separator:a5dde770895a5473f6e9770f92d1f5aa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a044828c9a61da9d1abbce2c515080772"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a044828c9a61da9d1abbce2c515080772">BIG_256_29_output</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:a044828c9a61da9d1abbce2c515080772"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console. <a href="#a044828c9a61da9d1abbce2c515080772">More...</a><br /></td></tr>
<tr class="separator:a044828c9a61da9d1abbce2c515080772"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac62bbe0fa81461611bb6703b5f9cbd77"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#ac62bbe0fa81461611bb6703b5f9cbd77">BIG_256_29_rawoutput</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:ac62bbe0fa81461611bb6703b5f9cbd77"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console in raw form (for debugging) <a href="#ac62bbe0fa81461611bb6703b5f9cbd77">More...</a><br /></td></tr>
<tr class="separator:ac62bbe0fa81461611bb6703b5f9cbd77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ba7d16ea20d46ec7a200510ca41a338"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a4ba7d16ea20d46ec7a200510ca41a338">BIG_256_29_cswap</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, int s)</td></tr>
<tr class="memdesc:a4ba7d16ea20d46ec7a200510ca41a338"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional constant time swap of two BIG numbers. <a href="#a4ba7d16ea20d46ec7a200510ca41a338">More...</a><br /></td></tr>
<tr class="separator:a4ba7d16ea20d46ec7a200510ca41a338"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a6bf060bb48f7c51fcda4cde1e8e26e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a8a6bf060bb48f7c51fcda4cde1e8e26e">BIG_256_29_cmove</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, int s)</td></tr>
<tr class="memdesc:a8a6bf060bb48f7c51fcda4cde1e8e26e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of BIG number. <a href="#a8a6bf060bb48f7c51fcda4cde1e8e26e">More...</a><br /></td></tr>
<tr class="separator:a8a6bf060bb48f7c51fcda4cde1e8e26e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa7b733233ab20bec1044bbfd7e5fd66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#afa7b733233ab20bec1044bbfd7e5fd66">BIG_256_29_dcmove</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, int s)</td></tr>
<tr class="memdesc:afa7b733233ab20bec1044bbfd7e5fd66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of DBIG number. <a href="#afa7b733233ab20bec1044bbfd7e5fd66">More...</a><br /></td></tr>
<tr class="separator:afa7b733233ab20bec1044bbfd7e5fd66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af28a4870f8aff2e8428c2b6b4f94e756"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#af28a4870f8aff2e8428c2b6b4f94e756">BIG_256_29_toBytes</a> (char *a, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:af28a4870f8aff2e8428c2b6b4f94e756"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from BIG number to byte array. <a href="#af28a4870f8aff2e8428c2b6b4f94e756">More...</a><br /></td></tr>
<tr class="separator:af28a4870f8aff2e8428c2b6b4f94e756"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aece77a065e83680be752dac8a6519b83"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#aece77a065e83680be752dac8a6519b83">BIG_256_29_fromBytes</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, char *a)</td></tr>
<tr class="memdesc:aece77a065e83680be752dac8a6519b83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array. <a href="#aece77a065e83680be752dac8a6519b83">More...</a><br /></td></tr>
<tr class="separator:aece77a065e83680be752dac8a6519b83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addef2147947e45becf815d91759fe9e8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#addef2147947e45becf815d91759fe9e8">BIG_256_29_fromBytesLen</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, char *a, int s)</td></tr>
<tr class="memdesc:addef2147947e45becf815d91759fe9e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array of given length. <a href="#addef2147947e45becf815d91759fe9e8">More...</a><br /></td></tr>
<tr class="separator:addef2147947e45becf815d91759fe9e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a375ccfc139837462d3f3798cf44fdceb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a375ccfc139837462d3f3798cf44fdceb">BIG_256_29_dfromBytesLen</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, char *a, int s)</td></tr>
<tr class="memdesc:a375ccfc139837462d3f3798cf44fdceb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to DBIG number from byte array of given length. <a href="#a375ccfc139837462d3f3798cf44fdceb">More...</a><br /></td></tr>
<tr class="separator:a375ccfc139837462d3f3798cf44fdceb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70f41607cec7a5fb5876ef6114cb4487"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a70f41607cec7a5fb5876ef6114cb4487">BIG_256_29_doutput</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x)</td></tr>
<tr class="memdesc:a70f41607cec7a5fb5876ef6114cb4487"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a70f41607cec7a5fb5876ef6114cb4487">More...</a><br /></td></tr>
<tr class="separator:a70f41607cec7a5fb5876ef6114cb4487"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7c6931543d396754a664b870f53940b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#af7c6931543d396754a664b870f53940b">BIG_256_29_drawoutput</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x)</td></tr>
<tr class="memdesc:af7c6931543d396754a664b870f53940b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#af7c6931543d396754a664b870f53940b">More...</a><br /></td></tr>
<tr class="separator:af7c6931543d396754a664b870f53940b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a30c02ed0211279e1eb64ef393131cf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a2a30c02ed0211279e1eb64ef393131cf">BIG_256_29_rcopy</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, const <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y)</td></tr>
<tr class="memdesc:a2a30c02ed0211279e1eb64ef393131cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG from Read-Only Memory to a BIG. <a href="#a2a30c02ed0211279e1eb64ef393131cf">More...</a><br /></td></tr>
<tr class="separator:a2a30c02ed0211279e1eb64ef393131cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4870f8e59d0721de55dbd4c2d678abd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#aa4870f8e59d0721de55dbd4c2d678abd">BIG_256_29_copy</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y)</td></tr>
<tr class="memdesc:aa4870f8e59d0721de55dbd4c2d678abd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to another BIG. <a href="#aa4870f8e59d0721de55dbd4c2d678abd">More...</a><br /></td></tr>
<tr class="separator:aa4870f8e59d0721de55dbd4c2d678abd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a705539d4d986b62787cb278c7a9c18cb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a705539d4d986b62787cb278c7a9c18cb">BIG_256_29_dcopy</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> y)</td></tr>
<tr class="memdesc:a705539d4d986b62787cb278c7a9c18cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy DBIG to another DBIG. <a href="#a705539d4d986b62787cb278c7a9c18cb">More...</a><br /></td></tr>
<tr class="separator:a705539d4d986b62787cb278c7a9c18cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba86a9c166b98d580a9e3452744d5d3c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#aba86a9c166b98d580a9e3452744d5d3c">BIG_256_29_dsucopy</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y)</td></tr>
<tr class="memdesc:aba86a9c166b98d580a9e3452744d5d3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to upper half of DBIG. <a href="#aba86a9c166b98d580a9e3452744d5d3c">More...</a><br /></td></tr>
<tr class="separator:aba86a9c166b98d580a9e3452744d5d3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfc567d5ba28ba96bef4de548f490936"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#adfc567d5ba28ba96bef4de548f490936">BIG_256_29_dscopy</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y)</td></tr>
<tr class="memdesc:adfc567d5ba28ba96bef4de548f490936"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to lower half of DBIG. <a href="#adfc567d5ba28ba96bef4de548f490936">More...</a><br /></td></tr>
<tr class="separator:adfc567d5ba28ba96bef4de548f490936"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf02d79d6b9e70e0c09d0abc9efa9dac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#adf02d79d6b9e70e0c09d0abc9efa9dac">BIG_256_29_sdcopy</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> y)</td></tr>
<tr class="memdesc:adf02d79d6b9e70e0c09d0abc9efa9dac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy lower half of DBIG to a BIG. <a href="#adf02d79d6b9e70e0c09d0abc9efa9dac">More...</a><br /></td></tr>
<tr class="separator:adf02d79d6b9e70e0c09d0abc9efa9dac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ad6c1bda0300811bb05f19092aeccb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a3ad6c1bda0300811bb05f19092aeccb5">BIG_256_29_sducopy</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> y)</td></tr>
<tr class="memdesc:a3ad6c1bda0300811bb05f19092aeccb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy upper half of DBIG to a BIG. <a href="#a3ad6c1bda0300811bb05f19092aeccb5">More...</a><br /></td></tr>
<tr class="separator:a3ad6c1bda0300811bb05f19092aeccb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a934c865c43e9c75afe9748f030e4ec46"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a934c865c43e9c75afe9748f030e4ec46">BIG_256_29_zero</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:a934c865c43e9c75afe9748f030e4ec46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to zero. <a href="#a934c865c43e9c75afe9748f030e4ec46">More...</a><br /></td></tr>
<tr class="separator:a934c865c43e9c75afe9748f030e4ec46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7dae9bf5b4e7509b41d56bc627ba8369"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a7dae9bf5b4e7509b41d56bc627ba8369">BIG_256_29_dzero</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x)</td></tr>
<tr class="memdesc:a7dae9bf5b4e7509b41d56bc627ba8369"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to zero. <a href="#a7dae9bf5b4e7509b41d56bc627ba8369">More...</a><br /></td></tr>
<tr class="separator:a7dae9bf5b4e7509b41d56bc627ba8369"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4abe3933bc1a620c581e84057bb6a3a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#ae4abe3933bc1a620c581e84057bb6a3a">BIG_256_29_one</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:ae4abe3933bc1a620c581e84057bb6a3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to one (unity) <a href="#ae4abe3933bc1a620c581e84057bb6a3a">More...</a><br /></td></tr>
<tr class="separator:ae4abe3933bc1a620c581e84057bb6a3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f8baf432b46720a1cfe897a571d23a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a4f8baf432b46720a1cfe897a571d23a7">BIG_256_29_invmod2m</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:a4f8baf432b46720a1cfe897a571d23a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to inverse mod 2^256. <a href="#a4f8baf432b46720a1cfe897a571d23a7">More...</a><br /></td></tr>
<tr class="separator:a4f8baf432b46720a1cfe897a571d23a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1aef430ef0ea9a948aee90f82071d417"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a1aef430ef0ea9a948aee90f82071d417">BIG_256_29_add</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> z)</td></tr>
<tr class="memdesc:a1aef430ef0ea9a948aee90f82071d417"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to sum of two BIGs - output not normalised. <a href="#a1aef430ef0ea9a948aee90f82071d417">More...</a><br /></td></tr>
<tr class="separator:a1aef430ef0ea9a948aee90f82071d417"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7bfb4f437084b7c83fe82dcd319fb04f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a7bfb4f437084b7c83fe82dcd319fb04f">BIG_256_29_or</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> z)</td></tr>
<tr class="memdesc:a7bfb4f437084b7c83fe82dcd319fb04f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to logical or of two BIGs - output normalised. <a href="#a7bfb4f437084b7c83fe82dcd319fb04f">More...</a><br /></td></tr>
<tr class="separator:a7bfb4f437084b7c83fe82dcd319fb04f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29dd4f8e557da97534dde4266631e505"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a29dd4f8e557da97534dde4266631e505">BIG_256_29_inc</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, int i)</td></tr>
<tr class="memdesc:a29dd4f8e557da97534dde4266631e505"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment BIG by a small integer - output not normalised. <a href="#a29dd4f8e557da97534dde4266631e505">More...</a><br /></td></tr>
<tr class="separator:a29dd4f8e557da97534dde4266631e505"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97c753c8b89e022797d2b4d11bf70730"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a97c753c8b89e022797d2b4d11bf70730">BIG_256_29_sub</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> z)</td></tr>
<tr class="memdesc:a97c753c8b89e022797d2b4d11bf70730"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to difference of two BIGs. <a href="#a97c753c8b89e022797d2b4d11bf70730">More...</a><br /></td></tr>
<tr class="separator:a97c753c8b89e022797d2b4d11bf70730"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af70f9ed20a7e5fef6d4f99449d0b2a0a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#af70f9ed20a7e5fef6d4f99449d0b2a0a">BIG_256_29_dec</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, int i)</td></tr>
<tr class="memdesc:af70f9ed20a7e5fef6d4f99449d0b2a0a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement BIG by a small integer - output not normalised. <a href="#af70f9ed20a7e5fef6d4f99449d0b2a0a">More...</a><br /></td></tr>
<tr class="separator:af70f9ed20a7e5fef6d4f99449d0b2a0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7f19e783f041f1e0c3474201ea12a92"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#ad7f19e783f041f1e0c3474201ea12a92">BIG_256_29_dadd</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> z)</td></tr>
<tr class="memdesc:ad7f19e783f041f1e0c3474201ea12a92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to sum of two DBIGs. <a href="#ad7f19e783f041f1e0c3474201ea12a92">More...</a><br /></td></tr>
<tr class="separator:ad7f19e783f041f1e0c3474201ea12a92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaef78beead9b031b7e219027ba4dec44"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#aaef78beead9b031b7e219027ba4dec44">BIG_256_29_dsub</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> z)</td></tr>
<tr class="memdesc:aaef78beead9b031b7e219027ba4dec44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to difference of two DBIGs. <a href="#aaef78beead9b031b7e219027ba4dec44">More...</a><br /></td></tr>
<tr class="separator:aaef78beead9b031b7e219027ba4dec44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0cbcbc50b4ed07fd1c1f2ea435626eb2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a0cbcbc50b4ed07fd1c1f2ea435626eb2">BIG_256_29_imul</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, int i)</td></tr>
<tr class="memdesc:a0cbcbc50b4ed07fd1c1f2ea435626eb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by a small integer - output not normalised. <a href="#a0cbcbc50b4ed07fd1c1f2ea435626eb2">More...</a><br /></td></tr>
<tr class="separator:a0cbcbc50b4ed07fd1c1f2ea435626eb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26788a5f4a4c8a3c6223cfdc598e2206"><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__256__29_8h.html#a26788a5f4a4c8a3c6223cfdc598e2206">BIG_256_29_pmul</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, int i)</td></tr>
<tr class="memdesc:a26788a5f4a4c8a3c6223cfdc598e2206"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by not-so-small small integer - output normalised. <a href="#a26788a5f4a4c8a3c6223cfdc598e2206">More...</a><br /></td></tr>
<tr class="separator:a26788a5f4a4c8a3c6223cfdc598e2206"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a734c94d13cbbd866f389706f9684b38f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a734c94d13cbbd866f389706f9684b38f">BIG_256_29_div3</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:a734c94d13cbbd866f389706f9684b38f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide BIG by 3 - output normalised. <a href="#a734c94d13cbbd866f389706f9684b38f">More...</a><br /></td></tr>
<tr class="separator:a734c94d13cbbd866f389706f9684b38f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37858e7d7ba07f829f5fe406e143244a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a37858e7d7ba07f829f5fe406e143244a">BIG_256_29_pxmul</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, int i)</td></tr>
<tr class="memdesc:a37858e7d7ba07f829f5fe406e143244a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by even bigger small integer resulting in a DBIG - output normalised. <a href="#a37858e7d7ba07f829f5fe406e143244a">More...</a><br /></td></tr>
<tr class="separator:a37858e7d7ba07f829f5fe406e143244a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ca09ec3b1a33bc6bbb61a351baa2ff7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a1ca09ec3b1a33bc6bbb61a351baa2ff7">BIG_256_29_mul</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> z)</td></tr>
<tr class="memdesc:a1ca09ec3b1a33bc6bbb61a351baa2ff7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in DBIG - inputs normalised and output normalised. <a href="#a1ca09ec3b1a33bc6bbb61a351baa2ff7">More...</a><br /></td></tr>
<tr class="separator:a1ca09ec3b1a33bc6bbb61a351baa2ff7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9a29a0ef363c94da54880dff875562c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#aa9a29a0ef363c94da54880dff875562c">BIG_256_29_smul</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> z)</td></tr>
<tr class="memdesc:aa9a29a0ef363c94da54880dff875562c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in another BIG - inputs normalised and output normalised. <a href="#aa9a29a0ef363c94da54880dff875562c">More...</a><br /></td></tr>
<tr class="separator:aa9a29a0ef363c94da54880dff875562c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3b9ab7a0b7fb9d2391d0cb9703640a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#af3b9ab7a0b7fb9d2391d0cb9703640a1">BIG_256_29_sqr</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y)</td></tr>
<tr class="memdesc:af3b9ab7a0b7fb9d2391d0cb9703640a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Square BIG resulting in a DBIG - input normalised and output normalised. <a href="#af3b9ab7a0b7fb9d2391d0cb9703640a1">More...</a><br /></td></tr>
<tr class="separator:af3b9ab7a0b7fb9d2391d0cb9703640a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c252a4354dfb59a76d97e0d6f762627"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a7c252a4354dfb59a76d97e0d6f762627">BIG_256_29_monty</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> a, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> md, <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> MC, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> d)</td></tr>
<tr class="memdesc:a7c252a4354dfb59a76d97e0d6f762627"><td class="mdescLeft">&#160;</td><td class="mdescRight">Montgomery reduction of a DBIG to a BIG - input normalised and output normalised. <a href="#a7c252a4354dfb59a76d97e0d6f762627">More...</a><br /></td></tr>
<tr class="separator:a7c252a4354dfb59a76d97e0d6f762627"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7eb0b9ad8b3f83098cf1e09143063760"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a7eb0b9ad8b3f83098cf1e09143063760">BIG_256_29_shl</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, int s)</td></tr>
<tr class="memdesc:a7eb0b9ad8b3f83098cf1e09143063760"><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="#a7eb0b9ad8b3f83098cf1e09143063760">More...</a><br /></td></tr>
<tr class="separator:a7eb0b9ad8b3f83098cf1e09143063760"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f76a362b0d4e8e3558d52156135920e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a0f76a362b0d4e8e3558d52156135920e">BIG_256_29_fshl</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, int s)</td></tr>
<tr class="memdesc:a0f76a362b0d4e8e3558d52156135920e"><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="#a0f76a362b0d4e8e3558d52156135920e">More...</a><br /></td></tr>
<tr class="separator:a0f76a362b0d4e8e3558d52156135920e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03bf0e9d7230ca101c85ca9dd1106647"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a03bf0e9d7230ca101c85ca9dd1106647">BIG_256_29_dshl</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, int s)</td></tr>
<tr class="memdesc:a03bf0e9d7230ca101c85ca9dd1106647"><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="#a03bf0e9d7230ca101c85ca9dd1106647">More...</a><br /></td></tr>
<tr class="separator:a03bf0e9d7230ca101c85ca9dd1106647"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a897715e22f6f400d1e89eb20b13a4a61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a897715e22f6f400d1e89eb20b13a4a61">BIG_256_29_shr</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, int s)</td></tr>
<tr class="memdesc:a897715e22f6f400d1e89eb20b13a4a61"><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="#a897715e22f6f400d1e89eb20b13a4a61">More...</a><br /></td></tr>
<tr class="separator:a897715e22f6f400d1e89eb20b13a4a61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21edd2fc13e98c973af2bcdd8314e8b9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a21edd2fc13e98c973af2bcdd8314e8b9">BIG_256_29_ssn</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> r, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> a, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> m)</td></tr>
<tr class="memdesc:a21edd2fc13e98c973af2bcdd8314e8b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast time-critical combined shift by 1 bit, subtract and normalise. <a href="#a21edd2fc13e98c973af2bcdd8314e8b9">More...</a><br /></td></tr>
<tr class="separator:a21edd2fc13e98c973af2bcdd8314e8b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ff20a509a419768bd691c8e6757aa6c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a2ff20a509a419768bd691c8e6757aa6c">BIG_256_29_fshr</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, int s)</td></tr>
<tr class="memdesc:a2ff20a509a419768bd691c8e6757aa6c"><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="#a2ff20a509a419768bd691c8e6757aa6c">More...</a><br /></td></tr>
<tr class="separator:a2ff20a509a419768bd691c8e6757aa6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3afe99cafc419f225c3b901fc9f018e5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a3afe99cafc419f225c3b901fc9f018e5">BIG_256_29_dshr</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, int s)</td></tr>
<tr class="memdesc:a3afe99cafc419f225c3b901fc9f018e5"><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="#a3afe99cafc419f225c3b901fc9f018e5">More...</a><br /></td></tr>
<tr class="separator:a3afe99cafc419f225c3b901fc9f018e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf41ba04665e4640aae5cc73f1cfe760"><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__256__29_8h.html#abf41ba04665e4640aae5cc73f1cfe760">BIG_256_29_split</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> z, int s)</td></tr>
<tr class="memdesc:abf41ba04665e4640aae5cc73f1cfe760"><td class="mdescLeft">&#160;</td><td class="mdescRight">Splits a DBIG into two BIGs - input must be normalised, outputs normalised. <a href="#abf41ba04665e4640aae5cc73f1cfe760">More...</a><br /></td></tr>
<tr class="separator:abf41ba04665e4640aae5cc73f1cfe760"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae448673401c83ef7937ebd8109812d52"><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__256__29_8h.html#ae448673401c83ef7937ebd8109812d52">BIG_256_29_norm</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:ae448673401c83ef7937ebd8109812d52"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a BIG number - output normalised. <a href="#ae448673401c83ef7937ebd8109812d52">More...</a><br /></td></tr>
<tr class="separator:ae448673401c83ef7937ebd8109812d52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4155d5f3609fc2a4d3dde920d851e11"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#ac4155d5f3609fc2a4d3dde920d851e11">BIG_256_29_dnorm</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x)</td></tr>
<tr class="memdesc:ac4155d5f3609fc2a4d3dde920d851e11"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a DBIG number - output normalised. <a href="#ac4155d5f3609fc2a4d3dde920d851e11">More...</a><br /></td></tr>
<tr class="separator:ac4155d5f3609fc2a4d3dde920d851e11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1510430ef1fd606da826613e516e0dd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#aa1510430ef1fd606da826613e516e0dd">BIG_256_29_comp</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y)</td></tr>
<tr class="memdesc:aa1510430ef1fd606da826613e516e0dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two BIG numbers. Inputs must be normalised externally. <a href="#aa1510430ef1fd606da826613e516e0dd">More...</a><br /></td></tr>
<tr class="separator:aa1510430ef1fd606da826613e516e0dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4e2034ea1159ea641544922afe4532d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#aa4e2034ea1159ea641544922afe4532d">BIG_256_29_dcomp</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> y)</td></tr>
<tr class="memdesc:aa4e2034ea1159ea641544922afe4532d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two DBIG numbers. Inputs must be normalised externally. <a href="#aa4e2034ea1159ea641544922afe4532d">More...</a><br /></td></tr>
<tr class="separator:aa4e2034ea1159ea641544922afe4532d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23232ca660f365bf5876a8f5c4cf63f3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a23232ca660f365bf5876a8f5c4cf63f3">BIG_256_29_nbits</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:a23232ca660f365bf5876a8f5c4cf63f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a BIG - output normalised. <a href="#a23232ca660f365bf5876a8f5c4cf63f3">More...</a><br /></td></tr>
<tr class="separator:a23232ca660f365bf5876a8f5c4cf63f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4b4e8c2c1764aa5a7a1a5fedfa8c1ce"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#aa4b4e8c2c1764aa5a7a1a5fedfa8c1ce">BIG_256_29_dnbits</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x)</td></tr>
<tr class="memdesc:aa4b4e8c2c1764aa5a7a1a5fedfa8c1ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a DBIG - output normalised. <a href="#aa4b4e8c2c1764aa5a7a1a5fedfa8c1ce">More...</a><br /></td></tr>
<tr class="separator:aa4b4e8c2c1764aa5a7a1a5fedfa8c1ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5870b9727ecb4808a668344f0994109"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#af5870b9727ecb4808a668344f0994109">BIG_256_29_mod</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n)</td></tr>
<tr class="memdesc:af5870b9727ecb4808a668344f0994109"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reduce x mod n - input and output normalised. <a href="#af5870b9727ecb4808a668344f0994109">More...</a><br /></td></tr>
<tr class="separator:af5870b9727ecb4808a668344f0994109"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5225a9da73fe4fdf6e07b3b135dfc25"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#af5225a9da73fe4fdf6e07b3b135dfc25">BIG_256_29_sdiv</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n)</td></tr>
<tr class="memdesc:af5225a9da73fe4fdf6e07b3b135dfc25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide x by n - output normalised. <a href="#af5225a9da73fe4fdf6e07b3b135dfc25">More...</a><br /></td></tr>
<tr class="separator:af5225a9da73fe4fdf6e07b3b135dfc25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a199564d5d8a0cc674a13f7d6d5c390a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a199564d5d8a0cc674a13f7d6d5c390a7">BIG_256_29_dmod</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n)</td></tr>
<tr class="memdesc:a199564d5d8a0cc674a13f7d6d5c390a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y mod n - output normalised <a href="#a199564d5d8a0cc674a13f7d6d5c390a7">More...</a><br /></td></tr>
<tr class="separator:a199564d5d8a0cc674a13f7d6d5c390a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac06384af8509fa4648f7fe9a31169820"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#ac06384af8509fa4648f7fe9a31169820">BIG_256_29_ddiv</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n)</td></tr>
<tr class="memdesc:ac06384af8509fa4648f7fe9a31169820"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y/n - output normalised <a href="#ac06384af8509fa4648f7fe9a31169820">More...</a><br /></td></tr>
<tr class="separator:ac06384af8509fa4648f7fe9a31169820"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab768075ecb86528f6f64727f1712d56e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#ab768075ecb86528f6f64727f1712d56e">BIG_256_29_parity</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x)</td></tr>
<tr class="memdesc:ab768075ecb86528f6f64727f1712d56e"><td class="mdescLeft">&#160;</td><td class="mdescRight">return parity of BIG, that is the least significant bit <a href="#ab768075ecb86528f6f64727f1712d56e">More...</a><br /></td></tr>
<tr class="separator:ab768075ecb86528f6f64727f1712d56e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76e5bdb3549fede8f264cfcb26be6018"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a76e5bdb3549fede8f264cfcb26be6018">BIG_256_29_bit</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, int i)</td></tr>
<tr class="memdesc:a76e5bdb3549fede8f264cfcb26be6018"><td class="mdescLeft">&#160;</td><td class="mdescRight">return i-th of BIG <a href="#a76e5bdb3549fede8f264cfcb26be6018">More...</a><br /></td></tr>
<tr class="separator:a76e5bdb3549fede8f264cfcb26be6018"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbe2731a8b528019a913c292e95c34ad"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#abbe2731a8b528019a913c292e95c34ad">BIG_256_29_lastbits</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, int n)</td></tr>
<tr class="memdesc:abbe2731a8b528019a913c292e95c34ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">return least significant bits of a BIG <a href="#abbe2731a8b528019a913c292e95c34ad">More...</a><br /></td></tr>
<tr class="separator:abbe2731a8b528019a913c292e95c34ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7ac4bee902715416866db38b3cb9bb2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#ad7ac4bee902715416866db38b3cb9bb2">BIG_256_29_random</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:ad7ac4bee902715416866db38b3cb9bb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a random BIG from a random number generator. <a href="#ad7ac4bee902715416866db38b3cb9bb2">More...</a><br /></td></tr>
<tr class="separator:ad7ac4bee902715416866db38b3cb9bb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d82cba4b9bbb7877c7deb40685c5127"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a9d82cba4b9bbb7877c7deb40685c5127">BIG_256_29_randomnum</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:a9d82cba4b9bbb7877c7deb40685c5127"><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="#a9d82cba4b9bbb7877c7deb40685c5127">More...</a><br /></td></tr>
<tr class="separator:a9d82cba4b9bbb7877c7deb40685c5127"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7539c997cb945c4842f61c61b0dbd527"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a7539c997cb945c4842f61c61b0dbd527">BIG_256_29_modmul</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> z, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n)</td></tr>
<tr class="memdesc:a7539c997cb945c4842f61c61b0dbd527"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y*z mod n. <a href="#a7539c997cb945c4842f61c61b0dbd527">More...</a><br /></td></tr>
<tr class="separator:a7539c997cb945c4842f61c61b0dbd527"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65c4b2f696fe7e38e29e2c1940a03395"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a65c4b2f696fe7e38e29e2c1940a03395">BIG_256_29_moddiv</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> z, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n)</td></tr>
<tr class="memdesc:a65c4b2f696fe7e38e29e2c1940a03395"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y/z mod n. <a href="#a65c4b2f696fe7e38e29e2c1940a03395">More...</a><br /></td></tr>
<tr class="separator:a65c4b2f696fe7e38e29e2c1940a03395"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22bf9d63c2ab7316376de3f7fbb958eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a22bf9d63c2ab7316376de3f7fbb958eb">BIG_256_29_modsqr</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n)</td></tr>
<tr class="memdesc:a22bf9d63c2ab7316376de3f7fbb958eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y^2 mod n. <a href="#a22bf9d63c2ab7316376de3f7fbb958eb">More...</a><br /></td></tr>
<tr class="separator:a22bf9d63c2ab7316376de3f7fbb958eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ed8026f6a8a6ab3331afde36953b69b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a2ed8026f6a8a6ab3331afde36953b69b">BIG_256_29_modneg</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n)</td></tr>
<tr class="memdesc:a2ed8026f6a8a6ab3331afde36953b69b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=-y mod n. <a href="#a2ed8026f6a8a6ab3331afde36953b69b">More...</a><br /></td></tr>
<tr class="separator:a2ed8026f6a8a6ab3331afde36953b69b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4d8a36f15283eead515888a5cbbe615"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#ae4d8a36f15283eead515888a5cbbe615">BIG_256_29_jacobi</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y)</td></tr>
<tr class="memdesc:ae4d8a36f15283eead515888a5cbbe615"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate jacobi Symbol (x/y) <a href="#ae4d8a36f15283eead515888a5cbbe615">More...</a><br /></td></tr>
<tr class="separator:ae4d8a36f15283eead515888a5cbbe615"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4996d5c30887ebba590b50c2eccd16d0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a4996d5c30887ebba590b50c2eccd16d0">BIG_256_29_invmodp</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> y, <a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> n)</td></tr>
<tr class="memdesc:a4996d5c30887ebba590b50c2eccd16d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=1/y mod n. <a href="#a4996d5c30887ebba590b50c2eccd16d0">More...</a><br /></td></tr>
<tr class="separator:a4996d5c30887ebba590b50c2eccd16d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a83080d302fbdc6b79a791f74cdc01c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a3a83080d302fbdc6b79a791f74cdc01c">BIG_256_29_mod2m</a> (<a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_29</a> x, int m)</td></tr>
<tr class="memdesc:a3a83080d302fbdc6b79a791f74cdc01c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a3a83080d302fbdc6b79a791f74cdc01c">More...</a><br /></td></tr>
<tr class="separator:a3a83080d302fbdc6b79a791f74cdc01c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3681ba93dd87149397a4d4877f0e0be6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__256__29_8h.html#a3681ba93dd87149397a4d4877f0e0be6">BIG_256_29_dmod2m</a> (<a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_29</a> x, int m)</td></tr>
<tr class="memdesc:a3681ba93dd87149397a4d4877f0e0be6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a3681ba93dd87149397a4d4877f0e0be6">More...</a><br /></td></tr>
<tr class="separator:a3681ba93dd87149397a4d4877f0e0be6"><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="a6863374287d6031d9e1d8190b0d87205"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6863374287d6031d9e1d8190b0d87205">&#9670;&nbsp;</a></span>BIGBITS_256_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BIGBITS_256_29&#160;&#160;&#160;(8*<a class="el" href="config__big__256__29_8h.html#a14ee1942422fee131f26bfba5d370b6d">MODBYTES_256_29</a>)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Length in bits </p>
</div>
</div>
<a id="ab609d4900b112ac810c1c77bc558760f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab609d4900b112ac810c1c77bc558760f">&#9670;&nbsp;</a></span>BMASK_256_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BMASK_256_29&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__256__29_8h.html#aeb240eff1a42e7315190d4881c34f333">BASEBITS_256_29</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^BASEBITS-1 </p>
</div>
</div>
<a id="a653e1560782ad0484bdace3a6a23e627"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a653e1560782ad0484bdace3a6a23e627">&#9670;&nbsp;</a></span>DNLEN_256_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DNLEN_256_29&#160;&#160;&#160;2*<a class="el" href="big__256__29_8h.html#a98054fdf6f0d9c326bcbab282b566c28">NLEN_256_29</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Double length in bytes </p>
</div>
</div>
<a id="a02f07f385a505ff1d42a133d7b9372af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a02f07f385a505ff1d42a133d7b9372af">&#9670;&nbsp;</a></span>HBITS_256_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HBITS_256_29&#160;&#160;&#160;(<a class="el" href="config__big__256__29_8h.html#aeb240eff1a42e7315190d4881c34f333">BASEBITS_256_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="a9873557170d0afc86c18f63c45658217"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9873557170d0afc86c18f63c45658217">&#9670;&nbsp;</a></span>HMASK_256_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HMASK_256_29&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__256__29_8h.html#a02f07f385a505ff1d42a133d7b9372af">HBITS_256_29</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^HBITS-1 </p>
</div>
</div>
<a id="a3211c1a2e191826e47948c6967f688ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3211c1a2e191826e47948c6967f688ab">&#9670;&nbsp;</a></span>NEXCESS_256_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NEXCESS_256_29&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__256__29_8h.html#aeb240eff1a42e7315190d4881c34f333">BASEBITS_256_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="a98054fdf6f0d9c326bcbab282b566c28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98054fdf6f0d9c326bcbab282b566c28">&#9670;&nbsp;</a></span>NLEN_256_29</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NLEN_256_29&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__256__29_8h.html#a14ee1942422fee131f26bfba5d370b6d">MODBYTES_256_29</a>-1)/<a class="el" href="config__big__256__29_8h.html#aeb240eff1a42e7315190d4881c34f333">BASEBITS_256_29</a>))</td>
</tr>
</table>
</div><div class="memdoc">
<p>length in bytes </p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a752b7e9ddbb1be663b24c192c7b40f18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a752b7e9ddbb1be663b24c192c7b40f18">&#9670;&nbsp;</a></span>BIG_256_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_256_29[<a class="el" href="big__256__29_8h.html#a98054fdf6f0d9c326bcbab282b566c28">NLEN_256_29</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type BIG as array of chunks </p>
</div>
</div>
<a id="a01ec52b32e54946975e531e4f1356884"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01ec52b32e54946975e531e4f1356884">&#9670;&nbsp;</a></span>DBIG_256_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_256_29[<a class="el" href="big__256__29_8h.html#a653e1560782ad0484bdace3a6a23e627">DNLEN_256_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="a1aef430ef0ea9a948aee90f82071d417"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1aef430ef0ea9a948aee90f82071d417">&#9670;&nbsp;</a></span>BIG_256_29_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_add </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a76e5bdb3549fede8f264cfcb26be6018"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a76e5bdb3549fede8f264cfcb26be6018">&#9670;&nbsp;</a></span>BIG_256_29_bit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_bit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a8a6bf060bb48f7c51fcda4cde1e8e26e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a6bf060bb48f7c51fcda4cde1e8e26e">&#9670;&nbsp;</a></span>BIG_256_29_cmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_cmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="aa1510430ef1fd606da826613e516e0dd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1510430ef1fd606da826613e516e0dd">&#9670;&nbsp;</a></span>BIG_256_29_comp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_comp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="aa4870f8e59d0721de55dbd4c2d678abd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4870f8e59d0721de55dbd4c2d678abd">&#9670;&nbsp;</a></span>BIG_256_29_copy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_copy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a4ba7d16ea20d46ec7a200510ca41a338"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4ba7d16ea20d46ec7a200510ca41a338">&#9670;&nbsp;</a></span>BIG_256_29_cswap()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_cswap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="ad7f19e783f041f1e0c3474201ea12a92"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7f19e783f041f1e0c3474201ea12a92">&#9670;&nbsp;</a></span>BIG_256_29_dadd()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dadd </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="afa7b733233ab20bec1044bbfd7e5fd66"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa7b733233ab20bec1044bbfd7e5fd66">&#9670;&nbsp;</a></span>BIG_256_29_dcmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dcmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="aa4e2034ea1159ea641544922afe4532d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4e2034ea1159ea641544922afe4532d">&#9670;&nbsp;</a></span>BIG_256_29_dcomp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_dcomp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="a705539d4d986b62787cb278c7a9c18cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a705539d4d986b62787cb278c7a9c18cb">&#9670;&nbsp;</a></span>BIG_256_29_dcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="ac06384af8509fa4648f7fe9a31169820"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac06384af8509fa4648f7fe9a31169820">&#9670;&nbsp;</a></span>BIG_256_29_ddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_ddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="af70f9ed20a7e5fef6d4f99449d0b2a0a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af70f9ed20a7e5fef6d4f99449d0b2a0a">&#9670;&nbsp;</a></span>BIG_256_29_dec()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dec </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a375ccfc139837462d3f3798cf44fdceb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a375ccfc139837462d3f3798cf44fdceb">&#9670;&nbsp;</a></span>BIG_256_29_dfromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dfromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="a5dde770895a5473f6e9770f92d1f5aa0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5dde770895a5473f6e9770f92d1f5aa0">&#9670;&nbsp;</a></span>BIG_256_29_diszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_diszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="a734c94d13cbbd866f389706f9684b38f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a734c94d13cbbd866f389706f9684b38f">&#9670;&nbsp;</a></span>BIG_256_29_div3()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_div3 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a199564d5d8a0cc674a13f7d6d5c390a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a199564d5d8a0cc674a13f7d6d5c390a7">&#9670;&nbsp;</a></span>BIG_256_29_dmod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dmod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a3681ba93dd87149397a4d4877f0e0be6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3681ba93dd87149397a4d4877f0e0be6">&#9670;&nbsp;</a></span>BIG_256_29_dmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="aa4b4e8c2c1764aa5a7a1a5fedfa8c1ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4b4e8c2c1764aa5a7a1a5fedfa8c1ce">&#9670;&nbsp;</a></span>BIG_256_29_dnbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_dnbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="ac4155d5f3609fc2a4d3dde920d851e11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4155d5f3609fc2a4d3dde920d851e11">&#9670;&nbsp;</a></span>BIG_256_29_dnorm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dnorm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="a70f41607cec7a5fb5876ef6114cb4487"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a70f41607cec7a5fb5876ef6114cb4487">&#9670;&nbsp;</a></span>BIG_256_29_doutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_doutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="af7c6931543d396754a664b870f53940b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7c6931543d396754a664b870f53940b">&#9670;&nbsp;</a></span>BIG_256_29_drawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_drawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="adfc567d5ba28ba96bef4de548f490936"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adfc567d5ba28ba96bef4de548f490936">&#9670;&nbsp;</a></span>BIG_256_29_dscopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dscopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a03bf0e9d7230ca101c85ca9dd1106647"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a03bf0e9d7230ca101c85ca9dd1106647">&#9670;&nbsp;</a></span>BIG_256_29_dshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="a3afe99cafc419f225c3b901fc9f018e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3afe99cafc419f225c3b901fc9f018e5">&#9670;&nbsp;</a></span>BIG_256_29_dshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="aaef78beead9b031b7e219027ba4dec44"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaef78beead9b031b7e219027ba4dec44">&#9670;&nbsp;</a></span>BIG_256_29_dsub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dsub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="aba86a9c166b98d580a9e3452744d5d3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba86a9c166b98d580a9e3452744d5d3c">&#9670;&nbsp;</a></span>BIG_256_29_dsucopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dsucopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a7dae9bf5b4e7509b41d56bc627ba8369"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7dae9bf5b4e7509b41d56bc627ba8369">&#9670;&nbsp;</a></span>BIG_256_29_dzero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_dzero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="aece77a065e83680be752dac8a6519b83"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aece77a065e83680be752dac8a6519b83">&#9670;&nbsp;</a></span>BIG_256_29_fromBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_fromBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="addef2147947e45becf815d91759fe9e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#addef2147947e45becf815d91759fe9e8">&#9670;&nbsp;</a></span>BIG_256_29_fromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_fromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a0f76a362b0d4e8e3558d52156135920e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f76a362b0d4e8e3558d52156135920e">&#9670;&nbsp;</a></span>BIG_256_29_fshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_fshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a2ff20a509a419768bd691c8e6757aa6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ff20a509a419768bd691c8e6757aa6c">&#9670;&nbsp;</a></span>BIG_256_29_fshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_fshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a0cbcbc50b4ed07fd1c1f2ea435626eb2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0cbcbc50b4ed07fd1c1f2ea435626eb2">&#9670;&nbsp;</a></span>BIG_256_29_imul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_imul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a29dd4f8e557da97534dde4266631e505"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29dd4f8e557da97534dde4266631e505">&#9670;&nbsp;</a></span>BIG_256_29_inc()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_inc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a4f8baf432b46720a1cfe897a571d23a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f8baf432b46720a1cfe897a571d23a7">&#9670;&nbsp;</a></span>BIG_256_29_invmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_invmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a4996d5c30887ebba590b50c2eccd16d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4996d5c30887ebba590b50c2eccd16d0">&#9670;&nbsp;</a></span>BIG_256_29_invmodp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_invmodp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="addc0b0eed4709089ea4affd912f7e20a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#addc0b0eed4709089ea4affd912f7e20a">&#9670;&nbsp;</a></span>BIG_256_29_isunity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_isunity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a976506581e8e06d57055921dec760493"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a976506581e8e06d57055921dec760493">&#9670;&nbsp;</a></span>BIG_256_29_iszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_iszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="ae4d8a36f15283eead515888a5cbbe615"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae4d8a36f15283eead515888a5cbbe615">&#9670;&nbsp;</a></span>BIG_256_29_jacobi()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_jacobi </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="abbe2731a8b528019a913c292e95c34ad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abbe2731a8b528019a913c292e95c34ad">&#9670;&nbsp;</a></span>BIG_256_29_lastbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_lastbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="af5870b9727ecb4808a668344f0994109"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5870b9727ecb4808a668344f0994109">&#9670;&nbsp;</a></span>BIG_256_29_mod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_mod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a3a83080d302fbdc6b79a791f74cdc01c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a83080d302fbdc6b79a791f74cdc01c">&#9670;&nbsp;</a></span>BIG_256_29_mod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_mod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a65c4b2f696fe7e38e29e2c1940a03395"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65c4b2f696fe7e38e29e2c1940a03395">&#9670;&nbsp;</a></span>BIG_256_29_moddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_moddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a7539c997cb945c4842f61c61b0dbd527"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7539c997cb945c4842f61c61b0dbd527">&#9670;&nbsp;</a></span>BIG_256_29_modmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_modmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a2ed8026f6a8a6ab3331afde36953b69b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ed8026f6a8a6ab3331afde36953b69b">&#9670;&nbsp;</a></span>BIG_256_29_modneg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_modneg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a22bf9d63c2ab7316376de3f7fbb958eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a22bf9d63c2ab7316376de3f7fbb958eb">&#9670;&nbsp;</a></span>BIG_256_29_modsqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_modsqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a7c252a4354dfb59a76d97e0d6f762627"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c252a4354dfb59a76d97e0d6f762627">&#9670;&nbsp;</a></span>BIG_256_29_monty()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_monty </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="a1ca09ec3b1a33bc6bbb61a351baa2ff7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1ca09ec3b1a33bc6bbb61a351baa2ff7">&#9670;&nbsp;</a></span>BIG_256_29_mul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_mul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a23232ca660f365bf5876a8f5c4cf63f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23232ca660f365bf5876a8f5c4cf63f3">&#9670;&nbsp;</a></span>BIG_256_29_nbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_nbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="ae448673401c83ef7937ebd8109812d52"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae448673401c83ef7937ebd8109812d52">&#9670;&nbsp;</a></span>BIG_256_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_256_29_norm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="ae4abe3933bc1a620c581e84057bb6a3a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae4abe3933bc1a620c581e84057bb6a3a">&#9670;&nbsp;</a></span>BIG_256_29_one()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_one </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a7bfb4f437084b7c83fe82dcd319fb04f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7bfb4f437084b7c83fe82dcd319fb04f">&#9670;&nbsp;</a></span>BIG_256_29_or()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_or </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a044828c9a61da9d1abbce2c515080772"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a044828c9a61da9d1abbce2c515080772">&#9670;&nbsp;</a></span>BIG_256_29_output()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_output </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="ab768075ecb86528f6f64727f1712d56e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab768075ecb86528f6f64727f1712d56e">&#9670;&nbsp;</a></span>BIG_256_29_parity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_parity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a26788a5f4a4c8a3c6223cfdc598e2206"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a26788a5f4a4c8a3c6223cfdc598e2206">&#9670;&nbsp;</a></span>BIG_256_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_256_29_pmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a37858e7d7ba07f829f5fe406e143244a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37858e7d7ba07f829f5fe406e143244a">&#9670;&nbsp;</a></span>BIG_256_29_pxmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_pxmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="ad7ac4bee902715416866db38b3cb9bb2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7ac4bee902715416866db38b3cb9bb2">&#9670;&nbsp;</a></span>BIG_256_29_random()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_random </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a9d82cba4b9bbb7877c7deb40685c5127"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9d82cba4b9bbb7877c7deb40685c5127">&#9670;&nbsp;</a></span>BIG_256_29_randomnum()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_randomnum </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="ac62bbe0fa81461611bb6703b5f9cbd77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac62bbe0fa81461611bb6703b5f9cbd77">&#9670;&nbsp;</a></span>BIG_256_29_rawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_rawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a2a30c02ed0211279e1eb64ef393131cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a30c02ed0211279e1eb64ef393131cf">&#9670;&nbsp;</a></span>BIG_256_29_rcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_rcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="adf02d79d6b9e70e0c09d0abc9efa9dac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adf02d79d6b9e70e0c09d0abc9efa9dac">&#9670;&nbsp;</a></span>BIG_256_29_sdcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_sdcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="af5225a9da73fe4fdf6e07b3b135dfc25"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5225a9da73fe4fdf6e07b3b135dfc25">&#9670;&nbsp;</a></span>BIG_256_29_sdiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_sdiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a3ad6c1bda0300811bb05f19092aeccb5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ad6c1bda0300811bb05f19092aeccb5">&#9670;&nbsp;</a></span>BIG_256_29_sducopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_sducopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="a7eb0b9ad8b3f83098cf1e09143063760"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7eb0b9ad8b3f83098cf1e09143063760">&#9670;&nbsp;</a></span>BIG_256_29_shl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_shl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a897715e22f6f400d1e89eb20b13a4a61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a897715e22f6f400d1e89eb20b13a4a61">&#9670;&nbsp;</a></span>BIG_256_29_shr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_shr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="aa9a29a0ef363c94da54880dff875562c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9a29a0ef363c94da54880dff875562c">&#9670;&nbsp;</a></span>BIG_256_29_smul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_smul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="abf41ba04665e4640aae5cc73f1cfe760"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf41ba04665e4640aae5cc73f1cfe760">&#9670;&nbsp;</a></span>BIG_256_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_256_29_split </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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="af3b9ab7a0b7fb9d2391d0cb9703640a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3b9ab7a0b7fb9d2391d0cb9703640a1">&#9670;&nbsp;</a></span>BIG_256_29_sqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_sqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a01ec52b32e54946975e531e4f1356884">DBIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a21edd2fc13e98c973af2bcdd8314e8b9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21edd2fc13e98c973af2bcdd8314e8b9">&#9670;&nbsp;</a></span>BIG_256_29_ssn()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_256_29_ssn </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a97c753c8b89e022797d2b4d11bf70730"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a97c753c8b89e022797d2b4d11bf70730">&#9670;&nbsp;</a></span>BIG_256_29_sub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_sub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="af28a4870f8aff2e8428c2b6b4f94e756"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af28a4870f8aff2e8428c2b6b4f94e756">&#9670;&nbsp;</a></span>BIG_256_29_toBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_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__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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="a934c865c43e9c75afe9748f030e4ec46"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a934c865c43e9c75afe9748f030e4ec46">&#9670;&nbsp;</a></span>BIG_256_29_zero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_256_29_zero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__256__29_8h.html#a752b7e9ddbb1be663b24c192c7b40f18">BIG_256_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>