blob: 2ec05a0a5e0512369ebcda35cbe0a98e153331ef [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AMCL: big_512_60.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>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.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.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</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_512_60.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__512__60_8h_source.html">config_big_512_60.h</a>&quot;</code><br />
</div>
<p><a href="big__512__60_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:a4454ac6a7c8674732938e8365996729a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a4454ac6a7c8674732938e8365996729a">BIGBITS_512_60</a>&#160;&#160;&#160;(8*<a class="el" href="config__big__512__60_8h.html#ab19d60ee027e5dad97c3c89e3d3d7525">MODBYTES_512_60</a>)</td></tr>
<tr class="separator:a4454ac6a7c8674732938e8365996729a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adec8989721abc8479e76ab775cfaea1b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#adec8989721abc8479e76ab775cfaea1b">NLEN_512_60</a>&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__512__60_8h.html#ab19d60ee027e5dad97c3c89e3d3d7525">MODBYTES_512_60</a>-1)/<a class="el" href="config__big__512__60_8h.html#a050f6c0139f8a543eb7b2feb010a1934">BASEBITS_512_60</a>))</td></tr>
<tr class="separator:adec8989721abc8479e76ab775cfaea1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2191aa95a9d5d44b396978d1be7d4342"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a2191aa95a9d5d44b396978d1be7d4342">DNLEN_512_60</a>&#160;&#160;&#160;2*<a class="el" href="big__512__60_8h.html#adec8989721abc8479e76ab775cfaea1b">NLEN_512_60</a></td></tr>
<tr class="separator:a2191aa95a9d5d44b396978d1be7d4342"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96bcba0cd64bdfa12f1418b8304e7402"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a96bcba0cd64bdfa12f1418b8304e7402">BMASK_512_60</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__512__60_8h.html#a050f6c0139f8a543eb7b2feb010a1934">BASEBITS_512_60</a>)-1)</td></tr>
<tr class="separator:a96bcba0cd64bdfa12f1418b8304e7402"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5708fee15b225da579de35fc1b89ca67"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a5708fee15b225da579de35fc1b89ca67">NEXCESS_512_60</a>&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__512__60_8h.html#a050f6c0139f8a543eb7b2feb010a1934">BASEBITS_512_60</a>-1))</td></tr>
<tr class="separator:a5708fee15b225da579de35fc1b89ca67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8746466df5a0ab5785e3d216491e3808"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a8746466df5a0ab5785e3d216491e3808">HBITS_512_60</a>&#160;&#160;&#160;(<a class="el" href="config__big__512__60_8h.html#a050f6c0139f8a543eb7b2feb010a1934">BASEBITS_512_60</a>/2)</td></tr>
<tr class="separator:a8746466df5a0ab5785e3d216491e3808"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9aacc37fac51d75221f45eeeaa7ae4a6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a9aacc37fac51d75221f45eeeaa7ae4a6">HMASK_512_60</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__512__60_8h.html#a8746466df5a0ab5785e3d216491e3808">HBITS_512_60</a>)-1)</td></tr>
<tr class="separator:a9aacc37fac51d75221f45eeeaa7ae4a6"><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:a38953b585df73ecbd30fded6cc5b54b7"><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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a>[<a class="el" href="big__512__60_8h.html#adec8989721abc8479e76ab775cfaea1b">NLEN_512_60</a>]</td></tr>
<tr class="separator:a38953b585df73ecbd30fded6cc5b54b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada98ab694a80a60b255a448e21ec3906"><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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a>[<a class="el" href="big__512__60_8h.html#a2191aa95a9d5d44b396978d1be7d4342">DNLEN_512_60</a>]</td></tr>
<tr class="separator:ada98ab694a80a60b255a448e21ec3906"><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:a7a1e0c2e0ee9e436e0cea761642dbf6f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a7a1e0c2e0ee9e436e0cea761642dbf6f">BIG_512_60_iszilch</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:a7a1e0c2e0ee9e436e0cea761642dbf6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to zero. <a href="#a7a1e0c2e0ee9e436e0cea761642dbf6f">More...</a><br /></td></tr>
<tr class="separator:a7a1e0c2e0ee9e436e0cea761642dbf6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc1b120837075b231e2a57423295266e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#afc1b120837075b231e2a57423295266e">BIG_512_60_isunity</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:afc1b120837075b231e2a57423295266e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to one. <a href="#afc1b120837075b231e2a57423295266e">More...</a><br /></td></tr>
<tr class="separator:afc1b120837075b231e2a57423295266e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accda833c2384e1630a2192f722f7073b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#accda833c2384e1630a2192f722f7073b">BIG_512_60_diszilch</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x)</td></tr>
<tr class="memdesc:accda833c2384e1630a2192f722f7073b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for DBIG equal to zero. <a href="#accda833c2384e1630a2192f722f7073b">More...</a><br /></td></tr>
<tr class="separator:accda833c2384e1630a2192f722f7073b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb465d4953647c45d9958e3c0b01dc61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#afb465d4953647c45d9958e3c0b01dc61">BIG_512_60_output</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:afb465d4953647c45d9958e3c0b01dc61"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console. <a href="#afb465d4953647c45d9958e3c0b01dc61">More...</a><br /></td></tr>
<tr class="separator:afb465d4953647c45d9958e3c0b01dc61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2aaee8578aab50ae4d21368b51ff8589"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a2aaee8578aab50ae4d21368b51ff8589">BIG_512_60_rawoutput</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:a2aaee8578aab50ae4d21368b51ff8589"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console in raw form (for debugging) <a href="#a2aaee8578aab50ae4d21368b51ff8589">More...</a><br /></td></tr>
<tr class="separator:a2aaee8578aab50ae4d21368b51ff8589"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a886b65a560c8c442d7fa3a259eb57b5e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a886b65a560c8c442d7fa3a259eb57b5e">BIG_512_60_cswap</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, int s)</td></tr>
<tr class="memdesc:a886b65a560c8c442d7fa3a259eb57b5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional constant time swap of two BIG numbers. <a href="#a886b65a560c8c442d7fa3a259eb57b5e">More...</a><br /></td></tr>
<tr class="separator:a886b65a560c8c442d7fa3a259eb57b5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ff9c974da707b0ed8639ba649bb9ef1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a3ff9c974da707b0ed8639ba649bb9ef1">BIG_512_60_cmove</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, int s)</td></tr>
<tr class="memdesc:a3ff9c974da707b0ed8639ba649bb9ef1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of BIG number. <a href="#a3ff9c974da707b0ed8639ba649bb9ef1">More...</a><br /></td></tr>
<tr class="separator:a3ff9c974da707b0ed8639ba649bb9ef1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add308665cc9ebd19e623c223306a5a41"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#add308665cc9ebd19e623c223306a5a41">BIG_512_60_dcmove</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, int s)</td></tr>
<tr class="memdesc:add308665cc9ebd19e623c223306a5a41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of DBIG number. <a href="#add308665cc9ebd19e623c223306a5a41">More...</a><br /></td></tr>
<tr class="separator:add308665cc9ebd19e623c223306a5a41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96d33f801e30529795373c3ab5f8869c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a96d33f801e30529795373c3ab5f8869c">BIG_512_60_toBytes</a> (char *a, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:a96d33f801e30529795373c3ab5f8869c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from BIG number to byte array. <a href="#a96d33f801e30529795373c3ab5f8869c">More...</a><br /></td></tr>
<tr class="separator:a96d33f801e30529795373c3ab5f8869c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb431cfbdc2b079183405d59632a015a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#acb431cfbdc2b079183405d59632a015a">BIG_512_60_fromBytes</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, char *a)</td></tr>
<tr class="memdesc:acb431cfbdc2b079183405d59632a015a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array. <a href="#acb431cfbdc2b079183405d59632a015a">More...</a><br /></td></tr>
<tr class="separator:acb431cfbdc2b079183405d59632a015a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7de2e51e8115b700df42a291abf5866"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ae7de2e51e8115b700df42a291abf5866">BIG_512_60_fromBytesLen</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, char *a, int s)</td></tr>
<tr class="memdesc:ae7de2e51e8115b700df42a291abf5866"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array of given length. <a href="#ae7de2e51e8115b700df42a291abf5866">More...</a><br /></td></tr>
<tr class="separator:ae7de2e51e8115b700df42a291abf5866"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99b05c3274a8c89915c200d4afaef167"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a99b05c3274a8c89915c200d4afaef167">BIG_512_60_dfromBytesLen</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, char *a, int s)</td></tr>
<tr class="memdesc:a99b05c3274a8c89915c200d4afaef167"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to DBIG number from byte array of given length. <a href="#a99b05c3274a8c89915c200d4afaef167">More...</a><br /></td></tr>
<tr class="separator:a99b05c3274a8c89915c200d4afaef167"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f6fb677ebe8980357a94a8224ea9c5a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a0f6fb677ebe8980357a94a8224ea9c5a">BIG_512_60_doutput</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x)</td></tr>
<tr class="memdesc:a0f6fb677ebe8980357a94a8224ea9c5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a0f6fb677ebe8980357a94a8224ea9c5a">More...</a><br /></td></tr>
<tr class="separator:a0f6fb677ebe8980357a94a8224ea9c5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae84e645366c03a76c35a6782cf2069d2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ae84e645366c03a76c35a6782cf2069d2">BIG_512_60_drawoutput</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x)</td></tr>
<tr class="memdesc:ae84e645366c03a76c35a6782cf2069d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#ae84e645366c03a76c35a6782cf2069d2">More...</a><br /></td></tr>
<tr class="separator:ae84e645366c03a76c35a6782cf2069d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b266f5305eefcec3326561bca6453f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a7b266f5305eefcec3326561bca6453f0">BIG_512_60_rcopy</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, const <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y)</td></tr>
<tr class="memdesc:a7b266f5305eefcec3326561bca6453f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG from Read-Only Memory to a BIG. <a href="#a7b266f5305eefcec3326561bca6453f0">More...</a><br /></td></tr>
<tr class="separator:a7b266f5305eefcec3326561bca6453f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5c4966c5e31a90515c4826fe504f749"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#aa5c4966c5e31a90515c4826fe504f749">BIG_512_60_copy</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y)</td></tr>
<tr class="memdesc:aa5c4966c5e31a90515c4826fe504f749"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to another BIG. <a href="#aa5c4966c5e31a90515c4826fe504f749">More...</a><br /></td></tr>
<tr class="separator:aa5c4966c5e31a90515c4826fe504f749"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e75afd36912bf4dd20538e4642d5362"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a1e75afd36912bf4dd20538e4642d5362">BIG_512_60_dcopy</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> y)</td></tr>
<tr class="memdesc:a1e75afd36912bf4dd20538e4642d5362"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy DBIG to another DBIG. <a href="#a1e75afd36912bf4dd20538e4642d5362">More...</a><br /></td></tr>
<tr class="separator:a1e75afd36912bf4dd20538e4642d5362"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acaf02b62a24ae663a380320dd693ae1a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#acaf02b62a24ae663a380320dd693ae1a">BIG_512_60_dsucopy</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y)</td></tr>
<tr class="memdesc:acaf02b62a24ae663a380320dd693ae1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to upper half of DBIG. <a href="#acaf02b62a24ae663a380320dd693ae1a">More...</a><br /></td></tr>
<tr class="separator:acaf02b62a24ae663a380320dd693ae1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2508c29138c1ad5f6f050b7c72408886"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a2508c29138c1ad5f6f050b7c72408886">BIG_512_60_dscopy</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y)</td></tr>
<tr class="memdesc:a2508c29138c1ad5f6f050b7c72408886"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to lower half of DBIG. <a href="#a2508c29138c1ad5f6f050b7c72408886">More...</a><br /></td></tr>
<tr class="separator:a2508c29138c1ad5f6f050b7c72408886"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a127bc3882b2166c74e8915db81578d42"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a127bc3882b2166c74e8915db81578d42">BIG_512_60_sdcopy</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> y)</td></tr>
<tr class="memdesc:a127bc3882b2166c74e8915db81578d42"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy lower half of DBIG to a BIG. <a href="#a127bc3882b2166c74e8915db81578d42">More...</a><br /></td></tr>
<tr class="separator:a127bc3882b2166c74e8915db81578d42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe496e643f493398b0eb94a3b79fca55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#afe496e643f493398b0eb94a3b79fca55">BIG_512_60_sducopy</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> y)</td></tr>
<tr class="memdesc:afe496e643f493398b0eb94a3b79fca55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy upper half of DBIG to a BIG. <a href="#afe496e643f493398b0eb94a3b79fca55">More...</a><br /></td></tr>
<tr class="separator:afe496e643f493398b0eb94a3b79fca55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a864aef063cf79e473d4b1bb4b4ffd478"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a864aef063cf79e473d4b1bb4b4ffd478">BIG_512_60_zero</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:a864aef063cf79e473d4b1bb4b4ffd478"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to zero. <a href="#a864aef063cf79e473d4b1bb4b4ffd478">More...</a><br /></td></tr>
<tr class="separator:a864aef063cf79e473d4b1bb4b4ffd478"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e9086da38be0de8e0c2f8bb4f00486b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a5e9086da38be0de8e0c2f8bb4f00486b">BIG_512_60_dzero</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x)</td></tr>
<tr class="memdesc:a5e9086da38be0de8e0c2f8bb4f00486b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to zero. <a href="#a5e9086da38be0de8e0c2f8bb4f00486b">More...</a><br /></td></tr>
<tr class="separator:a5e9086da38be0de8e0c2f8bb4f00486b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59382ec780e3d6df189ceed7d57bd961"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a59382ec780e3d6df189ceed7d57bd961">BIG_512_60_one</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:a59382ec780e3d6df189ceed7d57bd961"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to one (unity) <a href="#a59382ec780e3d6df189ceed7d57bd961">More...</a><br /></td></tr>
<tr class="separator:a59382ec780e3d6df189ceed7d57bd961"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a613ddf52fa88add3efe15f2c930f8312"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a613ddf52fa88add3efe15f2c930f8312">BIG_512_60_invmod2m</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:a613ddf52fa88add3efe15f2c930f8312"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to inverse mod 2^256. <a href="#a613ddf52fa88add3efe15f2c930f8312">More...</a><br /></td></tr>
<tr class="separator:a613ddf52fa88add3efe15f2c930f8312"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a128d44aaa007c520e564ca5d1f7259c0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a128d44aaa007c520e564ca5d1f7259c0">BIG_512_60_add</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> z)</td></tr>
<tr class="memdesc:a128d44aaa007c520e564ca5d1f7259c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to sum of two BIGs - output not normalised. <a href="#a128d44aaa007c520e564ca5d1f7259c0">More...</a><br /></td></tr>
<tr class="separator:a128d44aaa007c520e564ca5d1f7259c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cc051e0de9d96174db4fae4edea6821"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a8cc051e0de9d96174db4fae4edea6821">BIG_512_60_or</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> z)</td></tr>
<tr class="memdesc:a8cc051e0de9d96174db4fae4edea6821"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to logical or of two BIGs - output normalised. <a href="#a8cc051e0de9d96174db4fae4edea6821">More...</a><br /></td></tr>
<tr class="separator:a8cc051e0de9d96174db4fae4edea6821"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35171cff61735ae65092bc6576ba2062"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a35171cff61735ae65092bc6576ba2062">BIG_512_60_inc</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, int i)</td></tr>
<tr class="memdesc:a35171cff61735ae65092bc6576ba2062"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment BIG by a small integer - output not normalised. <a href="#a35171cff61735ae65092bc6576ba2062">More...</a><br /></td></tr>
<tr class="separator:a35171cff61735ae65092bc6576ba2062"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d5787816e576176808e092c408a946c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a7d5787816e576176808e092c408a946c">BIG_512_60_sub</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> z)</td></tr>
<tr class="memdesc:a7d5787816e576176808e092c408a946c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to difference of two BIGs. <a href="#a7d5787816e576176808e092c408a946c">More...</a><br /></td></tr>
<tr class="separator:a7d5787816e576176808e092c408a946c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b720e38b454291e0b700c7cf1185c26"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a1b720e38b454291e0b700c7cf1185c26">BIG_512_60_dec</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, int i)</td></tr>
<tr class="memdesc:a1b720e38b454291e0b700c7cf1185c26"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement BIG by a small integer - output not normalised. <a href="#a1b720e38b454291e0b700c7cf1185c26">More...</a><br /></td></tr>
<tr class="separator:a1b720e38b454291e0b700c7cf1185c26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad389c58903cadf171261a7dd91679960"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ad389c58903cadf171261a7dd91679960">BIG_512_60_dadd</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> z)</td></tr>
<tr class="memdesc:ad389c58903cadf171261a7dd91679960"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to sum of two DBIGs. <a href="#ad389c58903cadf171261a7dd91679960">More...</a><br /></td></tr>
<tr class="separator:ad389c58903cadf171261a7dd91679960"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d54bc9aff04f9fa7397c61adea33b85"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a4d54bc9aff04f9fa7397c61adea33b85">BIG_512_60_dsub</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> z)</td></tr>
<tr class="memdesc:a4d54bc9aff04f9fa7397c61adea33b85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to difference of two DBIGs. <a href="#a4d54bc9aff04f9fa7397c61adea33b85">More...</a><br /></td></tr>
<tr class="separator:a4d54bc9aff04f9fa7397c61adea33b85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a542c4f90796443050e69e769c20d22b5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a542c4f90796443050e69e769c20d22b5">BIG_512_60_imul</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, int i)</td></tr>
<tr class="memdesc:a542c4f90796443050e69e769c20d22b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by a small integer - output not normalised. <a href="#a542c4f90796443050e69e769c20d22b5">More...</a><br /></td></tr>
<tr class="separator:a542c4f90796443050e69e769c20d22b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aadee0b05625ad898d02d3c95915dc7bf"><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__512__60_8h.html#aadee0b05625ad898d02d3c95915dc7bf">BIG_512_60_pmul</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, int i)</td></tr>
<tr class="memdesc:aadee0b05625ad898d02d3c95915dc7bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by not-so-small small integer - output normalised. <a href="#aadee0b05625ad898d02d3c95915dc7bf">More...</a><br /></td></tr>
<tr class="separator:aadee0b05625ad898d02d3c95915dc7bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabc73c0986b7b7d66c12c832df96d796"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#aabc73c0986b7b7d66c12c832df96d796">BIG_512_60_div3</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:aabc73c0986b7b7d66c12c832df96d796"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide BIG by 3 - output normalised. <a href="#aabc73c0986b7b7d66c12c832df96d796">More...</a><br /></td></tr>
<tr class="separator:aabc73c0986b7b7d66c12c832df96d796"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3d007b30e3d0703721fcc382149b36e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#aa3d007b30e3d0703721fcc382149b36e">BIG_512_60_pxmul</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, int i)</td></tr>
<tr class="memdesc:aa3d007b30e3d0703721fcc382149b36e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by even bigger small integer resulting in a DBIG - output normalised. <a href="#aa3d007b30e3d0703721fcc382149b36e">More...</a><br /></td></tr>
<tr class="separator:aa3d007b30e3d0703721fcc382149b36e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c4e23a640b402d0c081f8706f04d56f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a9c4e23a640b402d0c081f8706f04d56f">BIG_512_60_mul</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> z)</td></tr>
<tr class="memdesc:a9c4e23a640b402d0c081f8706f04d56f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in DBIG - inputs normalised and output normalised. <a href="#a9c4e23a640b402d0c081f8706f04d56f">More...</a><br /></td></tr>
<tr class="separator:a9c4e23a640b402d0c081f8706f04d56f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6bc2bab3f09cb2fd848dfba27e7626e5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a6bc2bab3f09cb2fd848dfba27e7626e5">BIG_512_60_smul</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> z)</td></tr>
<tr class="memdesc:a6bc2bab3f09cb2fd848dfba27e7626e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in another BIG - inputs normalised and output normalised. <a href="#a6bc2bab3f09cb2fd848dfba27e7626e5">More...</a><br /></td></tr>
<tr class="separator:a6bc2bab3f09cb2fd848dfba27e7626e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae309f55db8a7668ab6803b3375706fe4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ae309f55db8a7668ab6803b3375706fe4">BIG_512_60_sqr</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y)</td></tr>
<tr class="memdesc:ae309f55db8a7668ab6803b3375706fe4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Square BIG resulting in a DBIG - input normalised and output normalised. <a href="#ae309f55db8a7668ab6803b3375706fe4">More...</a><br /></td></tr>
<tr class="separator:ae309f55db8a7668ab6803b3375706fe4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff41c30b478614346602a311d735d249"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#aff41c30b478614346602a311d735d249">BIG_512_60_monty</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> a, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> md, <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> MC, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> d)</td></tr>
<tr class="memdesc:aff41c30b478614346602a311d735d249"><td class="mdescLeft">&#160;</td><td class="mdescRight">Montgomery reduction of a DBIG to a BIG - input normalised and output normalised. <a href="#aff41c30b478614346602a311d735d249">More...</a><br /></td></tr>
<tr class="separator:aff41c30b478614346602a311d735d249"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af57b2a9ce965f664d47c30f2f9dd2c89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#af57b2a9ce965f664d47c30f2f9dd2c89">BIG_512_60_shl</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, int s)</td></tr>
<tr class="memdesc:af57b2a9ce965f664d47c30f2f9dd2c89"><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="#af57b2a9ce965f664d47c30f2f9dd2c89">More...</a><br /></td></tr>
<tr class="separator:af57b2a9ce965f664d47c30f2f9dd2c89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d8cd22a7a2de0a498dc77875e28fd2b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a4d8cd22a7a2de0a498dc77875e28fd2b">BIG_512_60_fshl</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, int s)</td></tr>
<tr class="memdesc:a4d8cd22a7a2de0a498dc77875e28fd2b"><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="#a4d8cd22a7a2de0a498dc77875e28fd2b">More...</a><br /></td></tr>
<tr class="separator:a4d8cd22a7a2de0a498dc77875e28fd2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e4be0d9aa8897f4a94cb5f020616135"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a3e4be0d9aa8897f4a94cb5f020616135">BIG_512_60_dshl</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, int s)</td></tr>
<tr class="memdesc:a3e4be0d9aa8897f4a94cb5f020616135"><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="#a3e4be0d9aa8897f4a94cb5f020616135">More...</a><br /></td></tr>
<tr class="separator:a3e4be0d9aa8897f4a94cb5f020616135"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02c779b8cc1a364db5c1beb0cce22f1a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a02c779b8cc1a364db5c1beb0cce22f1a">BIG_512_60_shr</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, int s)</td></tr>
<tr class="memdesc:a02c779b8cc1a364db5c1beb0cce22f1a"><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="#a02c779b8cc1a364db5c1beb0cce22f1a">More...</a><br /></td></tr>
<tr class="separator:a02c779b8cc1a364db5c1beb0cce22f1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23f8947b72200d1516a8735f255692f5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a23f8947b72200d1516a8735f255692f5">BIG_512_60_ssn</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> r, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> a, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> m)</td></tr>
<tr class="memdesc:a23f8947b72200d1516a8735f255692f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast time-critical combined shift by 1 bit, subtract and normalise. <a href="#a23f8947b72200d1516a8735f255692f5">More...</a><br /></td></tr>
<tr class="separator:a23f8947b72200d1516a8735f255692f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af237293c0f0514780c0f3176175b9d32"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#af237293c0f0514780c0f3176175b9d32">BIG_512_60_fshr</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, int s)</td></tr>
<tr class="memdesc:af237293c0f0514780c0f3176175b9d32"><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="#af237293c0f0514780c0f3176175b9d32">More...</a><br /></td></tr>
<tr class="separator:af237293c0f0514780c0f3176175b9d32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac351f3fbbabbd03fabc85aa802888540"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ac351f3fbbabbd03fabc85aa802888540">BIG_512_60_dshr</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, int s)</td></tr>
<tr class="memdesc:ac351f3fbbabbd03fabc85aa802888540"><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="#ac351f3fbbabbd03fabc85aa802888540">More...</a><br /></td></tr>
<tr class="separator:ac351f3fbbabbd03fabc85aa802888540"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a127a9249fc98204d94d7f9e191ebce22"><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__512__60_8h.html#a127a9249fc98204d94d7f9e191ebce22">BIG_512_60_split</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> z, int s)</td></tr>
<tr class="memdesc:a127a9249fc98204d94d7f9e191ebce22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Splits a DBIG into two BIGs - input must be normalised, outputs normalised. <a href="#a127a9249fc98204d94d7f9e191ebce22">More...</a><br /></td></tr>
<tr class="separator:a127a9249fc98204d94d7f9e191ebce22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18ca9c037a3a961de7e661a64baaf6b4"><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__512__60_8h.html#a18ca9c037a3a961de7e661a64baaf6b4">BIG_512_60_norm</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:a18ca9c037a3a961de7e661a64baaf6b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a BIG number - output normalised. <a href="#a18ca9c037a3a961de7e661a64baaf6b4">More...</a><br /></td></tr>
<tr class="separator:a18ca9c037a3a961de7e661a64baaf6b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a434eedfe97b4bc16c8820353dd481f73"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a434eedfe97b4bc16c8820353dd481f73">BIG_512_60_dnorm</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x)</td></tr>
<tr class="memdesc:a434eedfe97b4bc16c8820353dd481f73"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a DBIG number - output normalised. <a href="#a434eedfe97b4bc16c8820353dd481f73">More...</a><br /></td></tr>
<tr class="separator:a434eedfe97b4bc16c8820353dd481f73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30725a7102ff9048a777e56aa2dfd9f7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a30725a7102ff9048a777e56aa2dfd9f7">BIG_512_60_comp</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y)</td></tr>
<tr class="memdesc:a30725a7102ff9048a777e56aa2dfd9f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two BIG numbers. Inputs must be normalised externally. <a href="#a30725a7102ff9048a777e56aa2dfd9f7">More...</a><br /></td></tr>
<tr class="separator:a30725a7102ff9048a777e56aa2dfd9f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7a99fa734f34597b0662e844cb2dbf7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#aa7a99fa734f34597b0662e844cb2dbf7">BIG_512_60_dcomp</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> y)</td></tr>
<tr class="memdesc:aa7a99fa734f34597b0662e844cb2dbf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two DBIG numbers. Inputs must be normalised externally. <a href="#aa7a99fa734f34597b0662e844cb2dbf7">More...</a><br /></td></tr>
<tr class="separator:aa7a99fa734f34597b0662e844cb2dbf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6db70eff21fa353f9d7c11161917aba8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a6db70eff21fa353f9d7c11161917aba8">BIG_512_60_nbits</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:a6db70eff21fa353f9d7c11161917aba8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a BIG - output normalised. <a href="#a6db70eff21fa353f9d7c11161917aba8">More...</a><br /></td></tr>
<tr class="separator:a6db70eff21fa353f9d7c11161917aba8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae580275f6e5c3bd46e03b06c6f9e1de9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ae580275f6e5c3bd46e03b06c6f9e1de9">BIG_512_60_dnbits</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x)</td></tr>
<tr class="memdesc:ae580275f6e5c3bd46e03b06c6f9e1de9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a DBIG - output normalised. <a href="#ae580275f6e5c3bd46e03b06c6f9e1de9">More...</a><br /></td></tr>
<tr class="separator:ae580275f6e5c3bd46e03b06c6f9e1de9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f847ac49e07f5fc33fec2b8ea71bdb8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a2f847ac49e07f5fc33fec2b8ea71bdb8">BIG_512_60_mod</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n)</td></tr>
<tr class="memdesc:a2f847ac49e07f5fc33fec2b8ea71bdb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reduce x mod n - input and output normalised. <a href="#a2f847ac49e07f5fc33fec2b8ea71bdb8">More...</a><br /></td></tr>
<tr class="separator:a2f847ac49e07f5fc33fec2b8ea71bdb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1962d878bfe523d0434b45d6c8206c01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a1962d878bfe523d0434b45d6c8206c01">BIG_512_60_sdiv</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n)</td></tr>
<tr class="memdesc:a1962d878bfe523d0434b45d6c8206c01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide x by n - output normalised. <a href="#a1962d878bfe523d0434b45d6c8206c01">More...</a><br /></td></tr>
<tr class="separator:a1962d878bfe523d0434b45d6c8206c01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52c226c5e26d1685f4dc6f0bc81583a5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a52c226c5e26d1685f4dc6f0bc81583a5">BIG_512_60_dmod</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n)</td></tr>
<tr class="memdesc:a52c226c5e26d1685f4dc6f0bc81583a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y mod n - output normalised <a href="#a52c226c5e26d1685f4dc6f0bc81583a5">More...</a><br /></td></tr>
<tr class="separator:a52c226c5e26d1685f4dc6f0bc81583a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45bc09bfc405d2107f6f6a86ff092483"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a45bc09bfc405d2107f6f6a86ff092483">BIG_512_60_ddiv</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n)</td></tr>
<tr class="memdesc:a45bc09bfc405d2107f6f6a86ff092483"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y/n - output normalised <a href="#a45bc09bfc405d2107f6f6a86ff092483">More...</a><br /></td></tr>
<tr class="separator:a45bc09bfc405d2107f6f6a86ff092483"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4845cd98baf55ef85cbfece672b39686"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a4845cd98baf55ef85cbfece672b39686">BIG_512_60_parity</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x)</td></tr>
<tr class="memdesc:a4845cd98baf55ef85cbfece672b39686"><td class="mdescLeft">&#160;</td><td class="mdescRight">return parity of BIG, that is the least significant bit <a href="#a4845cd98baf55ef85cbfece672b39686">More...</a><br /></td></tr>
<tr class="separator:a4845cd98baf55ef85cbfece672b39686"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c664defdb0857fa592be0d52ab0c686"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a8c664defdb0857fa592be0d52ab0c686">BIG_512_60_bit</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, int i)</td></tr>
<tr class="memdesc:a8c664defdb0857fa592be0d52ab0c686"><td class="mdescLeft">&#160;</td><td class="mdescRight">return i-th of BIG <a href="#a8c664defdb0857fa592be0d52ab0c686">More...</a><br /></td></tr>
<tr class="separator:a8c664defdb0857fa592be0d52ab0c686"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99d1322736f002401e3d858f9a27938c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a99d1322736f002401e3d858f9a27938c">BIG_512_60_lastbits</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, int n)</td></tr>
<tr class="memdesc:a99d1322736f002401e3d858f9a27938c"><td class="mdescLeft">&#160;</td><td class="mdescRight">return least significant bits of a BIG <a href="#a99d1322736f002401e3d858f9a27938c">More...</a><br /></td></tr>
<tr class="separator:a99d1322736f002401e3d858f9a27938c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af0f38ca795bd0393f657ae5b1e1f2d07"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#af0f38ca795bd0393f657ae5b1e1f2d07">BIG_512_60_random</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:af0f38ca795bd0393f657ae5b1e1f2d07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a random BIG from a random number generator. <a href="#af0f38ca795bd0393f657ae5b1e1f2d07">More...</a><br /></td></tr>
<tr class="separator:af0f38ca795bd0393f657ae5b1e1f2d07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee4c6d0609ea26b439a440b2746336b4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#aee4c6d0609ea26b439a440b2746336b4">BIG_512_60_randomnum</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:aee4c6d0609ea26b439a440b2746336b4"><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="#aee4c6d0609ea26b439a440b2746336b4">More...</a><br /></td></tr>
<tr class="separator:aee4c6d0609ea26b439a440b2746336b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9d9577c8c2ea7de4a0457cc4ced9f8b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ac9d9577c8c2ea7de4a0457cc4ced9f8b">BIG_512_60_modmul</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> z, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n)</td></tr>
<tr class="memdesc:ac9d9577c8c2ea7de4a0457cc4ced9f8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y*z mod n. <a href="#ac9d9577c8c2ea7de4a0457cc4ced9f8b">More...</a><br /></td></tr>
<tr class="separator:ac9d9577c8c2ea7de4a0457cc4ced9f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac45309a1dd055012dbe19e702d0de69e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ac45309a1dd055012dbe19e702d0de69e">BIG_512_60_moddiv</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> z, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n)</td></tr>
<tr class="memdesc:ac45309a1dd055012dbe19e702d0de69e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y/z mod n. <a href="#ac45309a1dd055012dbe19e702d0de69e">More...</a><br /></td></tr>
<tr class="separator:ac45309a1dd055012dbe19e702d0de69e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3b3216d759b03e10af54bc58c9f7034"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ae3b3216d759b03e10af54bc58c9f7034">BIG_512_60_modsqr</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n)</td></tr>
<tr class="memdesc:ae3b3216d759b03e10af54bc58c9f7034"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y^2 mod n. <a href="#ae3b3216d759b03e10af54bc58c9f7034">More...</a><br /></td></tr>
<tr class="separator:ae3b3216d759b03e10af54bc58c9f7034"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee7eece8c2d58d13f038a92b180f7970"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#aee7eece8c2d58d13f038a92b180f7970">BIG_512_60_modneg</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n)</td></tr>
<tr class="memdesc:aee7eece8c2d58d13f038a92b180f7970"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=-y mod n. <a href="#aee7eece8c2d58d13f038a92b180f7970">More...</a><br /></td></tr>
<tr class="separator:aee7eece8c2d58d13f038a92b180f7970"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58ec191de45d45bf70e0b7cd649a9212"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a58ec191de45d45bf70e0b7cd649a9212">BIG_512_60_jacobi</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y)</td></tr>
<tr class="memdesc:a58ec191de45d45bf70e0b7cd649a9212"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate jacobi Symbol (x/y) <a href="#a58ec191de45d45bf70e0b7cd649a9212">More...</a><br /></td></tr>
<tr class="separator:a58ec191de45d45bf70e0b7cd649a9212"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac646cd18f1c3bbc928afc97fc33a26a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#ac646cd18f1c3bbc928afc97fc33a26a4">BIG_512_60_invmodp</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> y, <a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> n)</td></tr>
<tr class="memdesc:ac646cd18f1c3bbc928afc97fc33a26a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=1/y mod n. <a href="#ac646cd18f1c3bbc928afc97fc33a26a4">More...</a><br /></td></tr>
<tr class="separator:ac646cd18f1c3bbc928afc97fc33a26a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b242608c12fcba86534d1089c53e754"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a3b242608c12fcba86534d1089c53e754">BIG_512_60_mod2m</a> (<a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</a> x, int m)</td></tr>
<tr class="memdesc:a3b242608c12fcba86534d1089c53e754"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a3b242608c12fcba86534d1089c53e754">More...</a><br /></td></tr>
<tr class="separator:a3b242608c12fcba86534d1089c53e754"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91284c3f402d581bcedd2097cefd9f0d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__512__60_8h.html#a91284c3f402d581bcedd2097cefd9f0d">BIG_512_60_dmod2m</a> (<a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</a> x, int m)</td></tr>
<tr class="memdesc:a91284c3f402d581bcedd2097cefd9f0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a91284c3f402d581bcedd2097cefd9f0d">More...</a><br /></td></tr>
<tr class="separator:a91284c3f402d581bcedd2097cefd9f0d"><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="a4454ac6a7c8674732938e8365996729a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4454ac6a7c8674732938e8365996729a">&#9670;&nbsp;</a></span>BIGBITS_512_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BIGBITS_512_60&#160;&#160;&#160;(8*<a class="el" href="config__big__512__60_8h.html#ab19d60ee027e5dad97c3c89e3d3d7525">MODBYTES_512_60</a>)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Length in bits </p>
</div>
</div>
<a id="a96bcba0cd64bdfa12f1418b8304e7402"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96bcba0cd64bdfa12f1418b8304e7402">&#9670;&nbsp;</a></span>BMASK_512_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BMASK_512_60&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__512__60_8h.html#a050f6c0139f8a543eb7b2feb010a1934">BASEBITS_512_60</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^BASEBITS-1 </p>
</div>
</div>
<a id="a2191aa95a9d5d44b396978d1be7d4342"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2191aa95a9d5d44b396978d1be7d4342">&#9670;&nbsp;</a></span>DNLEN_512_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DNLEN_512_60&#160;&#160;&#160;2*<a class="el" href="big__512__60_8h.html#adec8989721abc8479e76ab775cfaea1b">NLEN_512_60</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Double length in bytes </p>
</div>
</div>
<a id="a8746466df5a0ab5785e3d216491e3808"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8746466df5a0ab5785e3d216491e3808">&#9670;&nbsp;</a></span>HBITS_512_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HBITS_512_60&#160;&#160;&#160;(<a class="el" href="config__big__512__60_8h.html#a050f6c0139f8a543eb7b2feb010a1934">BASEBITS_512_60</a>/2)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of bits in number base divided by 2 </p>
</div>
</div>
<a id="a9aacc37fac51d75221f45eeeaa7ae4a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9aacc37fac51d75221f45eeeaa7ae4a6">&#9670;&nbsp;</a></span>HMASK_512_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HMASK_512_60&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__512__60_8h.html#a8746466df5a0ab5785e3d216491e3808">HBITS_512_60</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^HBITS-1 </p>
</div>
</div>
<a id="a5708fee15b225da579de35fc1b89ca67"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5708fee15b225da579de35fc1b89ca67">&#9670;&nbsp;</a></span>NEXCESS_512_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NEXCESS_512_60&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__512__60_8h.html#a050f6c0139f8a543eb7b2feb010a1934">BASEBITS_512_60</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="adec8989721abc8479e76ab775cfaea1b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adec8989721abc8479e76ab775cfaea1b">&#9670;&nbsp;</a></span>NLEN_512_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NLEN_512_60&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__512__60_8h.html#ab19d60ee027e5dad97c3c89e3d3d7525">MODBYTES_512_60</a>-1)/<a class="el" href="config__big__512__60_8h.html#a050f6c0139f8a543eb7b2feb010a1934">BASEBITS_512_60</a>))</td>
</tr>
</table>
</div><div class="memdoc">
<p>length in bytes </p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a38953b585df73ecbd30fded6cc5b54b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a38953b585df73ecbd30fded6cc5b54b7">&#9670;&nbsp;</a></span>BIG_512_60</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_512_60[<a class="el" href="big__512__60_8h.html#adec8989721abc8479e76ab775cfaea1b">NLEN_512_60</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type BIG as array of chunks </p>
</div>
</div>
<a id="ada98ab694a80a60b255a448e21ec3906"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada98ab694a80a60b255a448e21ec3906">&#9670;&nbsp;</a></span>DBIG_512_60</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_512_60[<a class="el" href="big__512__60_8h.html#a2191aa95a9d5d44b396978d1be7d4342">DNLEN_512_60</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="a128d44aaa007c520e564ca5d1f7259c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a128d44aaa007c520e564ca5d1f7259c0">&#9670;&nbsp;</a></span>BIG_512_60_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_add </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a8c664defdb0857fa592be0d52ab0c686"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8c664defdb0857fa592be0d52ab0c686">&#9670;&nbsp;</a></span>BIG_512_60_bit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_bit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a3ff9c974da707b0ed8639ba649bb9ef1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3ff9c974da707b0ed8639ba649bb9ef1">&#9670;&nbsp;</a></span>BIG_512_60_cmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_cmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a30725a7102ff9048a777e56aa2dfd9f7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a30725a7102ff9048a777e56aa2dfd9f7">&#9670;&nbsp;</a></span>BIG_512_60_comp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_comp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="aa5c4966c5e31a90515c4826fe504f749"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa5c4966c5e31a90515c4826fe504f749">&#9670;&nbsp;</a></span>BIG_512_60_copy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_copy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a886b65a560c8c442d7fa3a259eb57b5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a886b65a560c8c442d7fa3a259eb57b5e">&#9670;&nbsp;</a></span>BIG_512_60_cswap()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_cswap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="ad389c58903cadf171261a7dd91679960"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad389c58903cadf171261a7dd91679960">&#9670;&nbsp;</a></span>BIG_512_60_dadd()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dadd </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="add308665cc9ebd19e623c223306a5a41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add308665cc9ebd19e623c223306a5a41">&#9670;&nbsp;</a></span>BIG_512_60_dcmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dcmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="aa7a99fa734f34597b0662e844cb2dbf7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa7a99fa734f34597b0662e844cb2dbf7">&#9670;&nbsp;</a></span>BIG_512_60_dcomp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_dcomp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="a1e75afd36912bf4dd20538e4642d5362"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e75afd36912bf4dd20538e4642d5362">&#9670;&nbsp;</a></span>BIG_512_60_dcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="a45bc09bfc405d2107f6f6a86ff092483"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a45bc09bfc405d2107f6f6a86ff092483">&#9670;&nbsp;</a></span>BIG_512_60_ddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_ddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a1b720e38b454291e0b700c7cf1185c26"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1b720e38b454291e0b700c7cf1185c26">&#9670;&nbsp;</a></span>BIG_512_60_dec()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dec </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a99b05c3274a8c89915c200d4afaef167"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99b05c3274a8c89915c200d4afaef167">&#9670;&nbsp;</a></span>BIG_512_60_dfromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dfromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="accda833c2384e1630a2192f722f7073b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#accda833c2384e1630a2192f722f7073b">&#9670;&nbsp;</a></span>BIG_512_60_diszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_diszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="aabc73c0986b7b7d66c12c832df96d796"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aabc73c0986b7b7d66c12c832df96d796">&#9670;&nbsp;</a></span>BIG_512_60_div3()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_div3 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a52c226c5e26d1685f4dc6f0bc81583a5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52c226c5e26d1685f4dc6f0bc81583a5">&#9670;&nbsp;</a></span>BIG_512_60_dmod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dmod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a91284c3f402d581bcedd2097cefd9f0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a91284c3f402d581bcedd2097cefd9f0d">&#9670;&nbsp;</a></span>BIG_512_60_dmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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">
<p>Truncation </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, on reduced mod 2^m </td></tr>
<tr><td class="paramname">m</td><td>new truncated size </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae580275f6e5c3bd46e03b06c6f9e1de9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae580275f6e5c3bd46e03b06c6f9e1de9">&#9670;&nbsp;</a></span>BIG_512_60_dnbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_dnbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="a434eedfe97b4bc16c8820353dd481f73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a434eedfe97b4bc16c8820353dd481f73">&#9670;&nbsp;</a></span>BIG_512_60_dnorm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dnorm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="a0f6fb677ebe8980357a94a8224ea9c5a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f6fb677ebe8980357a94a8224ea9c5a">&#9670;&nbsp;</a></span>BIG_512_60_doutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_doutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="ae84e645366c03a76c35a6782cf2069d2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae84e645366c03a76c35a6782cf2069d2">&#9670;&nbsp;</a></span>BIG_512_60_drawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_drawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="a2508c29138c1ad5f6f050b7c72408886"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2508c29138c1ad5f6f050b7c72408886">&#9670;&nbsp;</a></span>BIG_512_60_dscopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dscopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a3e4be0d9aa8897f4a94cb5f020616135"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e4be0d9aa8897f4a94cb5f020616135">&#9670;&nbsp;</a></span>BIG_512_60_dshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="ac351f3fbbabbd03fabc85aa802888540"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac351f3fbbabbd03fabc85aa802888540">&#9670;&nbsp;</a></span>BIG_512_60_dshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="a4d54bc9aff04f9fa7397c61adea33b85"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d54bc9aff04f9fa7397c61adea33b85">&#9670;&nbsp;</a></span>BIG_512_60_dsub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dsub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="acaf02b62a24ae663a380320dd693ae1a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acaf02b62a24ae663a380320dd693ae1a">&#9670;&nbsp;</a></span>BIG_512_60_dsucopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dsucopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a5e9086da38be0de8e0c2f8bb4f00486b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e9086da38be0de8e0c2f8bb4f00486b">&#9670;&nbsp;</a></span>BIG_512_60_dzero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_dzero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="acb431cfbdc2b079183405d59632a015a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb431cfbdc2b079183405d59632a015a">&#9670;&nbsp;</a></span>BIG_512_60_fromBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_fromBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="ae7de2e51e8115b700df42a291abf5866"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7de2e51e8115b700df42a291abf5866">&#9670;&nbsp;</a></span>BIG_512_60_fromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_fromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a4d8cd22a7a2de0a498dc77875e28fd2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d8cd22a7a2de0a498dc77875e28fd2b">&#9670;&nbsp;</a></span>BIG_512_60_fshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_fshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="af237293c0f0514780c0f3176175b9d32"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af237293c0f0514780c0f3176175b9d32">&#9670;&nbsp;</a></span>BIG_512_60_fshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_fshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a542c4f90796443050e69e769c20d22b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a542c4f90796443050e69e769c20d22b5">&#9670;&nbsp;</a></span>BIG_512_60_imul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_imul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a35171cff61735ae65092bc6576ba2062"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35171cff61735ae65092bc6576ba2062">&#9670;&nbsp;</a></span>BIG_512_60_inc()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_inc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a613ddf52fa88add3efe15f2c930f8312"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a613ddf52fa88add3efe15f2c930f8312">&#9670;&nbsp;</a></span>BIG_512_60_invmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_invmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="ac646cd18f1c3bbc928afc97fc33a26a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac646cd18f1c3bbc928afc97fc33a26a4">&#9670;&nbsp;</a></span>BIG_512_60_invmodp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_invmodp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="afc1b120837075b231e2a57423295266e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc1b120837075b231e2a57423295266e">&#9670;&nbsp;</a></span>BIG_512_60_isunity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_isunity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a7a1e0c2e0ee9e436e0cea761642dbf6f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7a1e0c2e0ee9e436e0cea761642dbf6f">&#9670;&nbsp;</a></span>BIG_512_60_iszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_iszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a58ec191de45d45bf70e0b7cd649a9212"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58ec191de45d45bf70e0b7cd649a9212">&#9670;&nbsp;</a></span>BIG_512_60_jacobi()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_jacobi </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a99d1322736f002401e3d858f9a27938c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99d1322736f002401e3d858f9a27938c">&#9670;&nbsp;</a></span>BIG_512_60_lastbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_lastbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a2f847ac49e07f5fc33fec2b8ea71bdb8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f847ac49e07f5fc33fec2b8ea71bdb8">&#9670;&nbsp;</a></span>BIG_512_60_mod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_mod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a3b242608c12fcba86534d1089c53e754"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3b242608c12fcba86534d1089c53e754">&#9670;&nbsp;</a></span>BIG_512_60_mod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_mod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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">
<p>Truncation </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on reduced mod 2^m </td></tr>
<tr><td class="paramname">m</td><td>new truncated size </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ac45309a1dd055012dbe19e702d0de69e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac45309a1dd055012dbe19e702d0de69e">&#9670;&nbsp;</a></span>BIG_512_60_moddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_moddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="ac9d9577c8c2ea7de4a0457cc4ced9f8b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9d9577c8c2ea7de4a0457cc4ced9f8b">&#9670;&nbsp;</a></span>BIG_512_60_modmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_modmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="aee7eece8c2d58d13f038a92b180f7970"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee7eece8c2d58d13f038a92b180f7970">&#9670;&nbsp;</a></span>BIG_512_60_modneg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_modneg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="ae3b3216d759b03e10af54bc58c9f7034"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3b3216d759b03e10af54bc58c9f7034">&#9670;&nbsp;</a></span>BIG_512_60_modsqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_modsqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="aff41c30b478614346602a311d735d249"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff41c30b478614346602a311d735d249">&#9670;&nbsp;</a></span>BIG_512_60_monty()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_monty </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="a9c4e23a640b402d0c081f8706f04d56f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c4e23a640b402d0c081f8706f04d56f">&#9670;&nbsp;</a></span>BIG_512_60_mul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_mul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a6db70eff21fa353f9d7c11161917aba8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6db70eff21fa353f9d7c11161917aba8">&#9670;&nbsp;</a></span>BIG_512_60_nbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_nbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a18ca9c037a3a961de7e661a64baaf6b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18ca9c037a3a961de7e661a64baaf6b4">&#9670;&nbsp;</a></span>BIG_512_60_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_512_60_norm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a59382ec780e3d6df189ceed7d57bd961"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59382ec780e3d6df189ceed7d57bd961">&#9670;&nbsp;</a></span>BIG_512_60_one()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_one </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a8cc051e0de9d96174db4fae4edea6821"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8cc051e0de9d96174db4fae4edea6821">&#9670;&nbsp;</a></span>BIG_512_60_or()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_or </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="afb465d4953647c45d9958e3c0b01dc61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb465d4953647c45d9958e3c0b01dc61">&#9670;&nbsp;</a></span>BIG_512_60_output()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_output </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a4845cd98baf55ef85cbfece672b39686"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4845cd98baf55ef85cbfece672b39686">&#9670;&nbsp;</a></span>BIG_512_60_parity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_parity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="aadee0b05625ad898d02d3c95915dc7bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aadee0b05625ad898d02d3c95915dc7bf">&#9670;&nbsp;</a></span>BIG_512_60_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_512_60_pmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="aa3d007b30e3d0703721fcc382149b36e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3d007b30e3d0703721fcc382149b36e">&#9670;&nbsp;</a></span>BIG_512_60_pxmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_pxmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="af0f38ca795bd0393f657ae5b1e1f2d07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af0f38ca795bd0393f657ae5b1e1f2d07">&#9670;&nbsp;</a></span>BIG_512_60_random()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_random </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="aee4c6d0609ea26b439a440b2746336b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee4c6d0609ea26b439a440b2746336b4">&#9670;&nbsp;</a></span>BIG_512_60_randomnum()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_randomnum </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a2aaee8578aab50ae4d21368b51ff8589"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2aaee8578aab50ae4d21368b51ff8589">&#9670;&nbsp;</a></span>BIG_512_60_rawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_rawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a7b266f5305eefcec3326561bca6453f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b266f5305eefcec3326561bca6453f0">&#9670;&nbsp;</a></span>BIG_512_60_rcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_rcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a127bc3882b2166c74e8915db81578d42"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a127bc3882b2166c74e8915db81578d42">&#9670;&nbsp;</a></span>BIG_512_60_sdcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_sdcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="a1962d878bfe523d0434b45d6c8206c01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1962d878bfe523d0434b45d6c8206c01">&#9670;&nbsp;</a></span>BIG_512_60_sdiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_sdiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="afe496e643f493398b0eb94a3b79fca55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe496e643f493398b0eb94a3b79fca55">&#9670;&nbsp;</a></span>BIG_512_60_sducopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_sducopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="af57b2a9ce965f664d47c30f2f9dd2c89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af57b2a9ce965f664d47c30f2f9dd2c89">&#9670;&nbsp;</a></span>BIG_512_60_shl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_shl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a02c779b8cc1a364db5c1beb0cce22f1a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a02c779b8cc1a364db5c1beb0cce22f1a">&#9670;&nbsp;</a></span>BIG_512_60_shr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_shr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a6bc2bab3f09cb2fd848dfba27e7626e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6bc2bab3f09cb2fd848dfba27e7626e5">&#9670;&nbsp;</a></span>BIG_512_60_smul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_smul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a127a9249fc98204d94d7f9e191ebce22"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a127a9249fc98204d94d7f9e191ebce22">&#9670;&nbsp;</a></span>BIG_512_60_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_512_60_split </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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="ae309f55db8a7668ab6803b3375706fe4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae309f55db8a7668ab6803b3375706fe4">&#9670;&nbsp;</a></span>BIG_512_60_sqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_sqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#ada98ab694a80a60b255a448e21ec3906">DBIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a23f8947b72200d1516a8735f255692f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23f8947b72200d1516a8735f255692f5">&#9670;&nbsp;</a></span>BIG_512_60_ssn()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_512_60_ssn </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a7d5787816e576176808e092c408a946c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d5787816e576176808e092c408a946c">&#9670;&nbsp;</a></span>BIG_512_60_sub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_sub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a96d33f801e30529795373c3ab5f8869c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96d33f801e30529795373c3ab5f8869c">&#9670;&nbsp;</a></span>BIG_512_60_toBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_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__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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="a864aef063cf79e473d4b1bb4b4ffd478"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a864aef063cf79e473d4b1bb4b4ffd478">&#9670;&nbsp;</a></span>BIG_512_60_zero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_512_60_zero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__512__60_8h.html#a38953b585df73ecbd30fded6cc5b54b7">BIG_512_60</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.13
</small></address>
</body>
</html>