blob: 862c0d0f78ce35429828e5e8723e5f5207fc65a5 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AMCL: big_1024_58.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">AMCL
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_df7310d1a865926cc859bcfb1880083f.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">big_1024_58.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__1024__58_8h_source.html">config_big_1024_58.h</a>&quot;</code><br />
</div>
<p><a href="big__1024__58_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:a65bdfd2b6b38168e8bcd9f1af013c7b5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a65bdfd2b6b38168e8bcd9f1af013c7b5">BIGBITS_1024_58</a>&#160;&#160;&#160;(8*<a class="el" href="config__big__1024__58_8h.html#a9cbbac7724e17efc1d82ed6981378112">MODBYTES_1024_58</a>)</td></tr>
<tr class="separator:a65bdfd2b6b38168e8bcd9f1af013c7b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a8882f5fa3bf70c96145d7a5a162e37"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a0a8882f5fa3bf70c96145d7a5a162e37">NLEN_1024_58</a>&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__1024__58_8h.html#a9cbbac7724e17efc1d82ed6981378112">MODBYTES_1024_58</a>-1)/<a class="el" href="config__big__1024__58_8h.html#a0fdac7cd24ebe3f1dd4d890f201cad7c">BASEBITS_1024_58</a>))</td></tr>
<tr class="separator:a0a8882f5fa3bf70c96145d7a5a162e37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16af5855a6f4a0a4f315fcc98c9926ba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a16af5855a6f4a0a4f315fcc98c9926ba">DNLEN_1024_58</a>&#160;&#160;&#160;2*<a class="el" href="big__1024__58_8h.html#a0a8882f5fa3bf70c96145d7a5a162e37">NLEN_1024_58</a></td></tr>
<tr class="separator:a16af5855a6f4a0a4f315fcc98c9926ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc7cf521c2232960e736d7bc149ae147"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#acc7cf521c2232960e736d7bc149ae147">BMASK_1024_58</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__1024__58_8h.html#a0fdac7cd24ebe3f1dd4d890f201cad7c">BASEBITS_1024_58</a>)-1)</td></tr>
<tr class="separator:acc7cf521c2232960e736d7bc149ae147"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d05e6d3b558714d70318f38f704ce6d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a6d05e6d3b558714d70318f38f704ce6d">NEXCESS_1024_58</a>&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__1024__58_8h.html#a0fdac7cd24ebe3f1dd4d890f201cad7c">BASEBITS_1024_58</a>-1))</td></tr>
<tr class="separator:a6d05e6d3b558714d70318f38f704ce6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9e2b95f4b4d79160bfbbf22715a9a3d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#ac9e2b95f4b4d79160bfbbf22715a9a3d">HBITS_1024_58</a>&#160;&#160;&#160;(<a class="el" href="config__big__1024__58_8h.html#a0fdac7cd24ebe3f1dd4d890f201cad7c">BASEBITS_1024_58</a>/2)</td></tr>
<tr class="separator:ac9e2b95f4b4d79160bfbbf22715a9a3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad427d858bae25e21c839cfb4a68ab0f4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#ad427d858bae25e21c839cfb4a68ab0f4">HMASK_1024_58</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__1024__58_8h.html#ac9e2b95f4b4d79160bfbbf22715a9a3d">HBITS_1024_58</a>)-1)</td></tr>
<tr class="separator:ad427d858bae25e21c839cfb4a68ab0f4"><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:a9b2910ed8e28bc385736f45a3d668691"><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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a>[<a class="el" href="big__1024__58_8h.html#a0a8882f5fa3bf70c96145d7a5a162e37">NLEN_1024_58</a>]</td></tr>
<tr class="separator:a9b2910ed8e28bc385736f45a3d668691"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a551e2dc2ad671ee5baaed8d60b112027"><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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a>[<a class="el" href="big__1024__58_8h.html#a16af5855a6f4a0a4f315fcc98c9926ba">DNLEN_1024_58</a>]</td></tr>
<tr class="separator:a551e2dc2ad671ee5baaed8d60b112027"><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:a9914e305af21db990dbe3a057922803a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a9914e305af21db990dbe3a057922803a">BIG_1024_58_iszilch</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a9914e305af21db990dbe3a057922803a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to zero. <a href="#a9914e305af21db990dbe3a057922803a">More...</a><br /></td></tr>
<tr class="separator:a9914e305af21db990dbe3a057922803a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e68fc45805cdfe899c73b8dc39050b1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a9e68fc45805cdfe899c73b8dc39050b1">BIG_1024_58_isunity</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a9e68fc45805cdfe899c73b8dc39050b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to one. <a href="#a9e68fc45805cdfe899c73b8dc39050b1">More...</a><br /></td></tr>
<tr class="separator:a9e68fc45805cdfe899c73b8dc39050b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a689ac42e23036ad21834fd942ca15d04"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a689ac42e23036ad21834fd942ca15d04">BIG_1024_58_diszilch</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a689ac42e23036ad21834fd942ca15d04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for DBIG equal to zero. <a href="#a689ac42e23036ad21834fd942ca15d04">More...</a><br /></td></tr>
<tr class="separator:a689ac42e23036ad21834fd942ca15d04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7a8eb974dd82c2f31e3b120f4ddbc5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#ac7a8eb974dd82c2f31e3b120f4ddbc5d">BIG_1024_58_output</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:ac7a8eb974dd82c2f31e3b120f4ddbc5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console. <a href="#ac7a8eb974dd82c2f31e3b120f4ddbc5d">More...</a><br /></td></tr>
<tr class="separator:ac7a8eb974dd82c2f31e3b120f4ddbc5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a584a3e57e2752a4f59423503e81dd7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a4a584a3e57e2752a4f59423503e81dd7">BIG_1024_58_rawoutput</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a4a584a3e57e2752a4f59423503e81dd7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console in raw form (for debugging) <a href="#a4a584a3e57e2752a4f59423503e81dd7">More...</a><br /></td></tr>
<tr class="separator:a4a584a3e57e2752a4f59423503e81dd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ed8ce73b499a238662439a49473ca90"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a8ed8ce73b499a238662439a49473ca90">BIG_1024_58_cswap</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, int s)</td></tr>
<tr class="memdesc:a8ed8ce73b499a238662439a49473ca90"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional constant time swap of two BIG numbers. <a href="#a8ed8ce73b499a238662439a49473ca90">More...</a><br /></td></tr>
<tr class="separator:a8ed8ce73b499a238662439a49473ca90"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c7778e1a335b35a4665e59e362fdcb7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a4c7778e1a335b35a4665e59e362fdcb7">BIG_1024_58_cmove</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, int s)</td></tr>
<tr class="memdesc:a4c7778e1a335b35a4665e59e362fdcb7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of BIG number. <a href="#a4c7778e1a335b35a4665e59e362fdcb7">More...</a><br /></td></tr>
<tr class="separator:a4c7778e1a335b35a4665e59e362fdcb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6af9f026d8c2cb05659ed8f31d503a54"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a6af9f026d8c2cb05659ed8f31d503a54">BIG_1024_58_dcmove</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, int s)</td></tr>
<tr class="memdesc:a6af9f026d8c2cb05659ed8f31d503a54"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of DBIG number. <a href="#a6af9f026d8c2cb05659ed8f31d503a54">More...</a><br /></td></tr>
<tr class="separator:a6af9f026d8c2cb05659ed8f31d503a54"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34066f8efa6c016c7c502ef15022eae7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a34066f8efa6c016c7c502ef15022eae7">BIG_1024_58_toBytes</a> (char *a, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a34066f8efa6c016c7c502ef15022eae7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from BIG number to byte array. <a href="#a34066f8efa6c016c7c502ef15022eae7">More...</a><br /></td></tr>
<tr class="separator:a34066f8efa6c016c7c502ef15022eae7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a281cae3966b611c2537d70299a5738f6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a281cae3966b611c2537d70299a5738f6">BIG_1024_58_fromBytes</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, char *a)</td></tr>
<tr class="memdesc:a281cae3966b611c2537d70299a5738f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array. <a href="#a281cae3966b611c2537d70299a5738f6">More...</a><br /></td></tr>
<tr class="separator:a281cae3966b611c2537d70299a5738f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1faa088ae945221ecd0b9183adb5499"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#af1faa088ae945221ecd0b9183adb5499">BIG_1024_58_fromBytesLen</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, char *a, int s)</td></tr>
<tr class="memdesc:af1faa088ae945221ecd0b9183adb5499"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array of given length. <a href="#af1faa088ae945221ecd0b9183adb5499">More...</a><br /></td></tr>
<tr class="separator:af1faa088ae945221ecd0b9183adb5499"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acdbe087fda94ec14544741fe34fc0aaf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#acdbe087fda94ec14544741fe34fc0aaf">BIG_1024_58_dfromBytesLen</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, char *a, int s)</td></tr>
<tr class="memdesc:acdbe087fda94ec14544741fe34fc0aaf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to DBIG number from byte array of given length. <a href="#acdbe087fda94ec14544741fe34fc0aaf">More...</a><br /></td></tr>
<tr class="separator:acdbe087fda94ec14544741fe34fc0aaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb8691b6e4a7ff22929a6ea4e8d8b3da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#aeb8691b6e4a7ff22929a6ea4e8d8b3da">BIG_1024_58_doutput</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x)</td></tr>
<tr class="memdesc:aeb8691b6e4a7ff22929a6ea4e8d8b3da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#aeb8691b6e4a7ff22929a6ea4e8d8b3da">More...</a><br /></td></tr>
<tr class="separator:aeb8691b6e4a7ff22929a6ea4e8d8b3da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c33bca4d8d89b2f77a3d88e70e38d8d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a3c33bca4d8d89b2f77a3d88e70e38d8d">BIG_1024_58_drawoutput</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a3c33bca4d8d89b2f77a3d88e70e38d8d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a3c33bca4d8d89b2f77a3d88e70e38d8d">More...</a><br /></td></tr>
<tr class="separator:a3c33bca4d8d89b2f77a3d88e70e38d8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a139ae8d29114968edb0b54e530d082e2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a139ae8d29114968edb0b54e530d082e2">BIG_1024_58_rcopy</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, const <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y)</td></tr>
<tr class="memdesc:a139ae8d29114968edb0b54e530d082e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG from Read-Only Memory to a BIG. <a href="#a139ae8d29114968edb0b54e530d082e2">More...</a><br /></td></tr>
<tr class="separator:a139ae8d29114968edb0b54e530d082e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94daed5bc774c1ed9bb29ace95b5af1e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a94daed5bc774c1ed9bb29ace95b5af1e">BIG_1024_58_copy</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y)</td></tr>
<tr class="memdesc:a94daed5bc774c1ed9bb29ace95b5af1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to another BIG. <a href="#a94daed5bc774c1ed9bb29ace95b5af1e">More...</a><br /></td></tr>
<tr class="separator:a94daed5bc774c1ed9bb29ace95b5af1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af38b390385549c31d7ce8447f9a45dbd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#af38b390385549c31d7ce8447f9a45dbd">BIG_1024_58_dcopy</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> y)</td></tr>
<tr class="memdesc:af38b390385549c31d7ce8447f9a45dbd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy DBIG to another DBIG. <a href="#af38b390385549c31d7ce8447f9a45dbd">More...</a><br /></td></tr>
<tr class="separator:af38b390385549c31d7ce8447f9a45dbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa545f16338ba3999213e4ae7ef376487"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#aa545f16338ba3999213e4ae7ef376487">BIG_1024_58_dsucopy</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y)</td></tr>
<tr class="memdesc:aa545f16338ba3999213e4ae7ef376487"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to upper half of DBIG. <a href="#aa545f16338ba3999213e4ae7ef376487">More...</a><br /></td></tr>
<tr class="separator:aa545f16338ba3999213e4ae7ef376487"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70a47ab4fbb69c412f32d998b5a40551"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a70a47ab4fbb69c412f32d998b5a40551">BIG_1024_58_dscopy</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y)</td></tr>
<tr class="memdesc:a70a47ab4fbb69c412f32d998b5a40551"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to lower half of DBIG. <a href="#a70a47ab4fbb69c412f32d998b5a40551">More...</a><br /></td></tr>
<tr class="separator:a70a47ab4fbb69c412f32d998b5a40551"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d8d33ffbbce6d087b1e1c49a1fad23d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a5d8d33ffbbce6d087b1e1c49a1fad23d">BIG_1024_58_sdcopy</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> y)</td></tr>
<tr class="memdesc:a5d8d33ffbbce6d087b1e1c49a1fad23d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy lower half of DBIG to a BIG. <a href="#a5d8d33ffbbce6d087b1e1c49a1fad23d">More...</a><br /></td></tr>
<tr class="separator:a5d8d33ffbbce6d087b1e1c49a1fad23d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67a3f6e541cc9bc314e4f94721ca2fba"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a67a3f6e541cc9bc314e4f94721ca2fba">BIG_1024_58_sducopy</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> y)</td></tr>
<tr class="memdesc:a67a3f6e541cc9bc314e4f94721ca2fba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy upper half of DBIG to a BIG. <a href="#a67a3f6e541cc9bc314e4f94721ca2fba">More...</a><br /></td></tr>
<tr class="separator:a67a3f6e541cc9bc314e4f94721ca2fba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f5a30353d520430afef1da22610a65f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a4f5a30353d520430afef1da22610a65f">BIG_1024_58_zero</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a4f5a30353d520430afef1da22610a65f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to zero. <a href="#a4f5a30353d520430afef1da22610a65f">More...</a><br /></td></tr>
<tr class="separator:a4f5a30353d520430afef1da22610a65f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a169065bae28b4d5b2345cc6449d61116"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a169065bae28b4d5b2345cc6449d61116">BIG_1024_58_dzero</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a169065bae28b4d5b2345cc6449d61116"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to zero. <a href="#a169065bae28b4d5b2345cc6449d61116">More...</a><br /></td></tr>
<tr class="separator:a169065bae28b4d5b2345cc6449d61116"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42011029a68b709728c96b06295c3bee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a42011029a68b709728c96b06295c3bee">BIG_1024_58_one</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a42011029a68b709728c96b06295c3bee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to one (unity) <a href="#a42011029a68b709728c96b06295c3bee">More...</a><br /></td></tr>
<tr class="separator:a42011029a68b709728c96b06295c3bee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9356a68e69873749b1d8b552e8eedcd4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a9356a68e69873749b1d8b552e8eedcd4">BIG_1024_58_invmod2m</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a9356a68e69873749b1d8b552e8eedcd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to inverse mod 2^256. <a href="#a9356a68e69873749b1d8b552e8eedcd4">More...</a><br /></td></tr>
<tr class="separator:a9356a68e69873749b1d8b552e8eedcd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbe6b3a99af9aecd1841df049153b569"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#abbe6b3a99af9aecd1841df049153b569">BIG_1024_58_add</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> z)</td></tr>
<tr class="memdesc:abbe6b3a99af9aecd1841df049153b569"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to sum of two BIGs - output not normalised. <a href="#abbe6b3a99af9aecd1841df049153b569">More...</a><br /></td></tr>
<tr class="separator:abbe6b3a99af9aecd1841df049153b569"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2acae35d001aa2a3fb2ac2039341f18"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#ac2acae35d001aa2a3fb2ac2039341f18">BIG_1024_58_or</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> z)</td></tr>
<tr class="memdesc:ac2acae35d001aa2a3fb2ac2039341f18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to logical or of two BIGs - output normalised. <a href="#ac2acae35d001aa2a3fb2ac2039341f18">More...</a><br /></td></tr>
<tr class="separator:ac2acae35d001aa2a3fb2ac2039341f18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afca0383b584f39627f2d3b2a19742441"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#afca0383b584f39627f2d3b2a19742441">BIG_1024_58_inc</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, int i)</td></tr>
<tr class="memdesc:afca0383b584f39627f2d3b2a19742441"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment BIG by a small integer - output not normalised. <a href="#afca0383b584f39627f2d3b2a19742441">More...</a><br /></td></tr>
<tr class="separator:afca0383b584f39627f2d3b2a19742441"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa5525a00e5d792272627b952c839311"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#aaa5525a00e5d792272627b952c839311">BIG_1024_58_sub</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> z)</td></tr>
<tr class="memdesc:aaa5525a00e5d792272627b952c839311"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to difference of two BIGs. <a href="#aaa5525a00e5d792272627b952c839311">More...</a><br /></td></tr>
<tr class="separator:aaa5525a00e5d792272627b952c839311"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90e0e0ca821bb22ab92659627637c612"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a90e0e0ca821bb22ab92659627637c612">BIG_1024_58_dec</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, int i)</td></tr>
<tr class="memdesc:a90e0e0ca821bb22ab92659627637c612"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement BIG by a small integer - output not normalised. <a href="#a90e0e0ca821bb22ab92659627637c612">More...</a><br /></td></tr>
<tr class="separator:a90e0e0ca821bb22ab92659627637c612"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f3f2d5fbc9a91b680d5040d6693f499"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a3f3f2d5fbc9a91b680d5040d6693f499">BIG_1024_58_dadd</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> z)</td></tr>
<tr class="memdesc:a3f3f2d5fbc9a91b680d5040d6693f499"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to sum of two DBIGs. <a href="#a3f3f2d5fbc9a91b680d5040d6693f499">More...</a><br /></td></tr>
<tr class="separator:a3f3f2d5fbc9a91b680d5040d6693f499"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c71ce01032e357c3c5935a6e4716017"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a9c71ce01032e357c3c5935a6e4716017">BIG_1024_58_dsub</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> z)</td></tr>
<tr class="memdesc:a9c71ce01032e357c3c5935a6e4716017"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to difference of two DBIGs. <a href="#a9c71ce01032e357c3c5935a6e4716017">More...</a><br /></td></tr>
<tr class="separator:a9c71ce01032e357c3c5935a6e4716017"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea983376fb00f180a797da09e3266fde"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#aea983376fb00f180a797da09e3266fde">BIG_1024_58_imul</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, int i)</td></tr>
<tr class="memdesc:aea983376fb00f180a797da09e3266fde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by a small integer - output not normalised. <a href="#aea983376fb00f180a797da09e3266fde">More...</a><br /></td></tr>
<tr class="separator:aea983376fb00f180a797da09e3266fde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7bd87a02037daa18fda51f198ff141e2"><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__1024__58_8h.html#a7bd87a02037daa18fda51f198ff141e2">BIG_1024_58_pmul</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, int i)</td></tr>
<tr class="memdesc:a7bd87a02037daa18fda51f198ff141e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by not-so-small small integer - output normalised. <a href="#a7bd87a02037daa18fda51f198ff141e2">More...</a><br /></td></tr>
<tr class="separator:a7bd87a02037daa18fda51f198ff141e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3745602825277b88fe99dd76b103b5d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#af3745602825277b88fe99dd76b103b5d">BIG_1024_58_div3</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:af3745602825277b88fe99dd76b103b5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide BIG by 3 - output normalised. <a href="#af3745602825277b88fe99dd76b103b5d">More...</a><br /></td></tr>
<tr class="separator:af3745602825277b88fe99dd76b103b5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa44406222b538ec2433a2be4738c4cb0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#aa44406222b538ec2433a2be4738c4cb0">BIG_1024_58_pxmul</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, int i)</td></tr>
<tr class="memdesc:aa44406222b538ec2433a2be4738c4cb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by even bigger small integer resulting in a DBIG - output normalised. <a href="#aa44406222b538ec2433a2be4738c4cb0">More...</a><br /></td></tr>
<tr class="separator:aa44406222b538ec2433a2be4738c4cb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0690afd393dc18f933e60990d3821b45"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a0690afd393dc18f933e60990d3821b45">BIG_1024_58_mul</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> z)</td></tr>
<tr class="memdesc:a0690afd393dc18f933e60990d3821b45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in DBIG - inputs normalised and output normalised. <a href="#a0690afd393dc18f933e60990d3821b45">More...</a><br /></td></tr>
<tr class="separator:a0690afd393dc18f933e60990d3821b45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d3805aec11909f08ce7636249d4185e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a3d3805aec11909f08ce7636249d4185e">BIG_1024_58_smul</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> z)</td></tr>
<tr class="memdesc:a3d3805aec11909f08ce7636249d4185e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in another BIG - inputs normalised and output normalised. <a href="#a3d3805aec11909f08ce7636249d4185e">More...</a><br /></td></tr>
<tr class="separator:a3d3805aec11909f08ce7636249d4185e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e2d834083c873552e56e3ddfdbef044"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a1e2d834083c873552e56e3ddfdbef044">BIG_1024_58_sqr</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y)</td></tr>
<tr class="memdesc:a1e2d834083c873552e56e3ddfdbef044"><td class="mdescLeft">&#160;</td><td class="mdescRight">Square BIG resulting in a DBIG - input normalised and output normalised. <a href="#a1e2d834083c873552e56e3ddfdbef044">More...</a><br /></td></tr>
<tr class="separator:a1e2d834083c873552e56e3ddfdbef044"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3709498b361201350c543ab42e5dc1c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a3709498b361201350c543ab42e5dc1c7">BIG_1024_58_monty</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> a, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> md, <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> MC, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> d)</td></tr>
<tr class="memdesc:a3709498b361201350c543ab42e5dc1c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Montgomery reduction of a DBIG to a BIG - input normalised and output normalised. <a href="#a3709498b361201350c543ab42e5dc1c7">More...</a><br /></td></tr>
<tr class="separator:a3709498b361201350c543ab42e5dc1c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae71758a3e3c67efbbb4ff0bcea9df928"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#ae71758a3e3c67efbbb4ff0bcea9df928">BIG_1024_58_shl</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, int s)</td></tr>
<tr class="memdesc:ae71758a3e3c67efbbb4ff0bcea9df928"><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="#ae71758a3e3c67efbbb4ff0bcea9df928">More...</a><br /></td></tr>
<tr class="separator:ae71758a3e3c67efbbb4ff0bcea9df928"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7775ca1af1766e0874ba094caeed81dc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a7775ca1af1766e0874ba094caeed81dc">BIG_1024_58_fshl</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, int s)</td></tr>
<tr class="memdesc:a7775ca1af1766e0874ba094caeed81dc"><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="#a7775ca1af1766e0874ba094caeed81dc">More...</a><br /></td></tr>
<tr class="separator:a7775ca1af1766e0874ba094caeed81dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91e88ae17c00cf2ccefced76c727d60d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a91e88ae17c00cf2ccefced76c727d60d">BIG_1024_58_dshl</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, int s)</td></tr>
<tr class="memdesc:a91e88ae17c00cf2ccefced76c727d60d"><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="#a91e88ae17c00cf2ccefced76c727d60d">More...</a><br /></td></tr>
<tr class="separator:a91e88ae17c00cf2ccefced76c727d60d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f317d943e33967f27e58968cca8df27"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a2f317d943e33967f27e58968cca8df27">BIG_1024_58_shr</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, int s)</td></tr>
<tr class="memdesc:a2f317d943e33967f27e58968cca8df27"><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="#a2f317d943e33967f27e58968cca8df27">More...</a><br /></td></tr>
<tr class="separator:a2f317d943e33967f27e58968cca8df27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abea7bf865060ea2fd29102dfa921dff4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#abea7bf865060ea2fd29102dfa921dff4">BIG_1024_58_ssn</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> r, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> a, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> m)</td></tr>
<tr class="memdesc:abea7bf865060ea2fd29102dfa921dff4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast time-critical combined shift by 1 bit, subtract and normalise. <a href="#abea7bf865060ea2fd29102dfa921dff4">More...</a><br /></td></tr>
<tr class="separator:abea7bf865060ea2fd29102dfa921dff4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5bf43346b61df367fe387509e0bc844"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#ac5bf43346b61df367fe387509e0bc844">BIG_1024_58_fshr</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, int s)</td></tr>
<tr class="memdesc:ac5bf43346b61df367fe387509e0bc844"><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="#ac5bf43346b61df367fe387509e0bc844">More...</a><br /></td></tr>
<tr class="separator:ac5bf43346b61df367fe387509e0bc844"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab50ad93d711f57cad218154028e77da7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#ab50ad93d711f57cad218154028e77da7">BIG_1024_58_dshr</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, int s)</td></tr>
<tr class="memdesc:ab50ad93d711f57cad218154028e77da7"><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="#ab50ad93d711f57cad218154028e77da7">More...</a><br /></td></tr>
<tr class="separator:ab50ad93d711f57cad218154028e77da7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae35c74afb8c26ecd4e432e9a3e68362d"><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__1024__58_8h.html#ae35c74afb8c26ecd4e432e9a3e68362d">BIG_1024_58_split</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> z, int s)</td></tr>
<tr class="memdesc:ae35c74afb8c26ecd4e432e9a3e68362d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Splits a DBIG into two BIGs - input must be normalised, outputs normalised. <a href="#ae35c74afb8c26ecd4e432e9a3e68362d">More...</a><br /></td></tr>
<tr class="separator:ae35c74afb8c26ecd4e432e9a3e68362d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78dfb374de911ef2d768ce9d9398aadc"><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__1024__58_8h.html#a78dfb374de911ef2d768ce9d9398aadc">BIG_1024_58_norm</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a78dfb374de911ef2d768ce9d9398aadc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a BIG number - output normalised. <a href="#a78dfb374de911ef2d768ce9d9398aadc">More...</a><br /></td></tr>
<tr class="separator:a78dfb374de911ef2d768ce9d9398aadc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3180823b4ebd2be0e8d6ace836a87b56"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a3180823b4ebd2be0e8d6ace836a87b56">BIG_1024_58_dnorm</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a3180823b4ebd2be0e8d6ace836a87b56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a DBIG number - output normalised. <a href="#a3180823b4ebd2be0e8d6ace836a87b56">More...</a><br /></td></tr>
<tr class="separator:a3180823b4ebd2be0e8d6ace836a87b56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20a0b8fabe8aa895eb6c4b2e1e597adb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a20a0b8fabe8aa895eb6c4b2e1e597adb">BIG_1024_58_comp</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y)</td></tr>
<tr class="memdesc:a20a0b8fabe8aa895eb6c4b2e1e597adb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two BIG numbers. Inputs must be normalised externally. <a href="#a20a0b8fabe8aa895eb6c4b2e1e597adb">More...</a><br /></td></tr>
<tr class="separator:a20a0b8fabe8aa895eb6c4b2e1e597adb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa0ffcf3a57d2482330e0e8ae6eb05db"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#afa0ffcf3a57d2482330e0e8ae6eb05db">BIG_1024_58_dcomp</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> y)</td></tr>
<tr class="memdesc:afa0ffcf3a57d2482330e0e8ae6eb05db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two DBIG numbers. Inputs must be normalised externally. <a href="#afa0ffcf3a57d2482330e0e8ae6eb05db">More...</a><br /></td></tr>
<tr class="separator:afa0ffcf3a57d2482330e0e8ae6eb05db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5efd1864ed90d0a55a62d3b10c921705"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a5efd1864ed90d0a55a62d3b10c921705">BIG_1024_58_nbits</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a5efd1864ed90d0a55a62d3b10c921705"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a BIG - output normalised. <a href="#a5efd1864ed90d0a55a62d3b10c921705">More...</a><br /></td></tr>
<tr class="separator:a5efd1864ed90d0a55a62d3b10c921705"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b0abd4056a185f6f702d0aca0cab277"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a7b0abd4056a185f6f702d0aca0cab277">BIG_1024_58_dnbits</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a7b0abd4056a185f6f702d0aca0cab277"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a DBIG - output normalised. <a href="#a7b0abd4056a185f6f702d0aca0cab277">More...</a><br /></td></tr>
<tr class="separator:a7b0abd4056a185f6f702d0aca0cab277"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4b09ea14dd99580a95573594fb598c6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#af4b09ea14dd99580a95573594fb598c6">BIG_1024_58_mod</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n)</td></tr>
<tr class="memdesc:af4b09ea14dd99580a95573594fb598c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reduce x mod n - input and output normalised. <a href="#af4b09ea14dd99580a95573594fb598c6">More...</a><br /></td></tr>
<tr class="separator:af4b09ea14dd99580a95573594fb598c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ab3f1c57e7e4155b6194335712e3b64"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a9ab3f1c57e7e4155b6194335712e3b64">BIG_1024_58_sdiv</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n)</td></tr>
<tr class="memdesc:a9ab3f1c57e7e4155b6194335712e3b64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide x by n - output normalised. <a href="#a9ab3f1c57e7e4155b6194335712e3b64">More...</a><br /></td></tr>
<tr class="separator:a9ab3f1c57e7e4155b6194335712e3b64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2896cb84c0b5c26a4d7a588bfe2b0f77"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a2896cb84c0b5c26a4d7a588bfe2b0f77">BIG_1024_58_dmod</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n)</td></tr>
<tr class="memdesc:a2896cb84c0b5c26a4d7a588bfe2b0f77"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y mod n - output normalised <a href="#a2896cb84c0b5c26a4d7a588bfe2b0f77">More...</a><br /></td></tr>
<tr class="separator:a2896cb84c0b5c26a4d7a588bfe2b0f77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a938e45286d8d713c89cef4e6b1eeb129"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a938e45286d8d713c89cef4e6b1eeb129">BIG_1024_58_ddiv</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n)</td></tr>
<tr class="memdesc:a938e45286d8d713c89cef4e6b1eeb129"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y/n - output normalised <a href="#a938e45286d8d713c89cef4e6b1eeb129">More...</a><br /></td></tr>
<tr class="separator:a938e45286d8d713c89cef4e6b1eeb129"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a585caf3c149a0beef6f0136b92bcd46a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a585caf3c149a0beef6f0136b92bcd46a">BIG_1024_58_parity</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x)</td></tr>
<tr class="memdesc:a585caf3c149a0beef6f0136b92bcd46a"><td class="mdescLeft">&#160;</td><td class="mdescRight">return parity of BIG, that is the least significant bit <a href="#a585caf3c149a0beef6f0136b92bcd46a">More...</a><br /></td></tr>
<tr class="separator:a585caf3c149a0beef6f0136b92bcd46a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7672b6adaef24df910705c025603eda8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a7672b6adaef24df910705c025603eda8">BIG_1024_58_bit</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, int i)</td></tr>
<tr class="memdesc:a7672b6adaef24df910705c025603eda8"><td class="mdescLeft">&#160;</td><td class="mdescRight">return i-th of BIG <a href="#a7672b6adaef24df910705c025603eda8">More...</a><br /></td></tr>
<tr class="separator:a7672b6adaef24df910705c025603eda8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a906d21822878cf8e8f1dfd2e82e074fb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a906d21822878cf8e8f1dfd2e82e074fb">BIG_1024_58_lastbits</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, int n)</td></tr>
<tr class="memdesc:a906d21822878cf8e8f1dfd2e82e074fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">return least significant bits of a BIG <a href="#a906d21822878cf8e8f1dfd2e82e074fb">More...</a><br /></td></tr>
<tr class="separator:a906d21822878cf8e8f1dfd2e82e074fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2db663a9a1f83eba523c4f0bf8af74b1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a2db663a9a1f83eba523c4f0bf8af74b1">BIG_1024_58_random</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:a2db663a9a1f83eba523c4f0bf8af74b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a random BIG from a random number generator. <a href="#a2db663a9a1f83eba523c4f0bf8af74b1">More...</a><br /></td></tr>
<tr class="separator:a2db663a9a1f83eba523c4f0bf8af74b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae42a80d27315f80f3c905d071195e8b1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#ae42a80d27315f80f3c905d071195e8b1">BIG_1024_58_randomnum</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:ae42a80d27315f80f3c905d071195e8b1"><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="#ae42a80d27315f80f3c905d071195e8b1">More...</a><br /></td></tr>
<tr class="separator:ae42a80d27315f80f3c905d071195e8b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1eaec9a14b6840cd8bc724d263296a95"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a1eaec9a14b6840cd8bc724d263296a95">BIG_1024_58_modmul</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> z, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n)</td></tr>
<tr class="memdesc:a1eaec9a14b6840cd8bc724d263296a95"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y*z mod n. <a href="#a1eaec9a14b6840cd8bc724d263296a95">More...</a><br /></td></tr>
<tr class="separator:a1eaec9a14b6840cd8bc724d263296a95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b984d08e0649c45f4bb43af4b249e68"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a7b984d08e0649c45f4bb43af4b249e68">BIG_1024_58_moddiv</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> z, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n)</td></tr>
<tr class="memdesc:a7b984d08e0649c45f4bb43af4b249e68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y/z mod n. <a href="#a7b984d08e0649c45f4bb43af4b249e68">More...</a><br /></td></tr>
<tr class="separator:a7b984d08e0649c45f4bb43af4b249e68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af62acb0b41db1a43d959887a894db497"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#af62acb0b41db1a43d959887a894db497">BIG_1024_58_modsqr</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n)</td></tr>
<tr class="memdesc:af62acb0b41db1a43d959887a894db497"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y^2 mod n. <a href="#af62acb0b41db1a43d959887a894db497">More...</a><br /></td></tr>
<tr class="separator:af62acb0b41db1a43d959887a894db497"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a81f4df17bfc22252203fcc589857d8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a1a81f4df17bfc22252203fcc589857d8">BIG_1024_58_modneg</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n)</td></tr>
<tr class="memdesc:a1a81f4df17bfc22252203fcc589857d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=-y mod n. <a href="#a1a81f4df17bfc22252203fcc589857d8">More...</a><br /></td></tr>
<tr class="separator:a1a81f4df17bfc22252203fcc589857d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3cc87dbc15806b0f702891ac7098ac0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#aa3cc87dbc15806b0f702891ac7098ac0">BIG_1024_58_jacobi</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y)</td></tr>
<tr class="memdesc:aa3cc87dbc15806b0f702891ac7098ac0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate jacobi Symbol (x/y) <a href="#aa3cc87dbc15806b0f702891ac7098ac0">More...</a><br /></td></tr>
<tr class="separator:aa3cc87dbc15806b0f702891ac7098ac0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94ba3da9d18c02c77fd80f74c69c2a81"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a94ba3da9d18c02c77fd80f74c69c2a81">BIG_1024_58_invmodp</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> y, <a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> n)</td></tr>
<tr class="memdesc:a94ba3da9d18c02c77fd80f74c69c2a81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=1/y mod n. <a href="#a94ba3da9d18c02c77fd80f74c69c2a81">More...</a><br /></td></tr>
<tr class="separator:a94ba3da9d18c02c77fd80f74c69c2a81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5de7afcfa9816cae291aaca61ecb118b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a5de7afcfa9816cae291aaca61ecb118b">BIG_1024_58_mod2m</a> (<a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a> x, int m)</td></tr>
<tr class="memdesc:a5de7afcfa9816cae291aaca61ecb118b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a5de7afcfa9816cae291aaca61ecb118b">More...</a><br /></td></tr>
<tr class="separator:a5de7afcfa9816cae291aaca61ecb118b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b7d10ac14d01730ca0ed7ebafaf4365"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__1024__58_8h.html#a9b7d10ac14d01730ca0ed7ebafaf4365">BIG_1024_58_dmod2m</a> (<a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a> x, int m)</td></tr>
<tr class="memdesc:a9b7d10ac14d01730ca0ed7ebafaf4365"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a9b7d10ac14d01730ca0ed7ebafaf4365">More...</a><br /></td></tr>
<tr class="separator:a9b7d10ac14d01730ca0ed7ebafaf4365"><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="a65bdfd2b6b38168e8bcd9f1af013c7b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65bdfd2b6b38168e8bcd9f1af013c7b5">&#9670;&nbsp;</a></span>BIGBITS_1024_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BIGBITS_1024_58&#160;&#160;&#160;(8*<a class="el" href="config__big__1024__58_8h.html#a9cbbac7724e17efc1d82ed6981378112">MODBYTES_1024_58</a>)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Length in bits </p>
</div>
</div>
<a id="acc7cf521c2232960e736d7bc149ae147"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc7cf521c2232960e736d7bc149ae147">&#9670;&nbsp;</a></span>BMASK_1024_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BMASK_1024_58&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__1024__58_8h.html#a0fdac7cd24ebe3f1dd4d890f201cad7c">BASEBITS_1024_58</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^BASEBITS-1 </p>
</div>
</div>
<a id="a16af5855a6f4a0a4f315fcc98c9926ba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16af5855a6f4a0a4f315fcc98c9926ba">&#9670;&nbsp;</a></span>DNLEN_1024_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DNLEN_1024_58&#160;&#160;&#160;2*<a class="el" href="big__1024__58_8h.html#a0a8882f5fa3bf70c96145d7a5a162e37">NLEN_1024_58</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Double length in bytes </p>
</div>
</div>
<a id="ac9e2b95f4b4d79160bfbbf22715a9a3d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9e2b95f4b4d79160bfbbf22715a9a3d">&#9670;&nbsp;</a></span>HBITS_1024_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HBITS_1024_58&#160;&#160;&#160;(<a class="el" href="config__big__1024__58_8h.html#a0fdac7cd24ebe3f1dd4d890f201cad7c">BASEBITS_1024_58</a>/2)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of bits in number base divided by 2 </p>
</div>
</div>
<a id="ad427d858bae25e21c839cfb4a68ab0f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad427d858bae25e21c839cfb4a68ab0f4">&#9670;&nbsp;</a></span>HMASK_1024_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HMASK_1024_58&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__1024__58_8h.html#ac9e2b95f4b4d79160bfbbf22715a9a3d">HBITS_1024_58</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^HBITS-1 </p>
</div>
</div>
<a id="a6d05e6d3b558714d70318f38f704ce6d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6d05e6d3b558714d70318f38f704ce6d">&#9670;&nbsp;</a></span>NEXCESS_1024_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NEXCESS_1024_58&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__1024__58_8h.html#a0fdac7cd24ebe3f1dd4d890f201cad7c">BASEBITS_1024_58</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="a0a8882f5fa3bf70c96145d7a5a162e37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a8882f5fa3bf70c96145d7a5a162e37">&#9670;&nbsp;</a></span>NLEN_1024_58</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NLEN_1024_58&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__1024__58_8h.html#a9cbbac7724e17efc1d82ed6981378112">MODBYTES_1024_58</a>-1)/<a class="el" href="config__big__1024__58_8h.html#a0fdac7cd24ebe3f1dd4d890f201cad7c">BASEBITS_1024_58</a>))</td>
</tr>
</table>
</div><div class="memdoc">
<p>length in bytes </p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a9b2910ed8e28bc385736f45a3d668691"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b2910ed8e28bc385736f45a3d668691">&#9670;&nbsp;</a></span>BIG_1024_58</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_1024_58[<a class="el" href="big__1024__58_8h.html#a0a8882f5fa3bf70c96145d7a5a162e37">NLEN_1024_58</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type BIG as array of chunks </p>
</div>
</div>
<a id="a551e2dc2ad671ee5baaed8d60b112027"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a551e2dc2ad671ee5baaed8d60b112027">&#9670;&nbsp;</a></span>DBIG_1024_58</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_1024_58[<a class="el" href="big__1024__58_8h.html#a16af5855a6f4a0a4f315fcc98c9926ba">DNLEN_1024_58</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="abbe6b3a99af9aecd1841df049153b569"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abbe6b3a99af9aecd1841df049153b569">&#9670;&nbsp;</a></span>BIG_1024_58_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_add </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a7672b6adaef24df910705c025603eda8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7672b6adaef24df910705c025603eda8">&#9670;&nbsp;</a></span>BIG_1024_58_bit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_bit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a4c7778e1a335b35a4665e59e362fdcb7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c7778e1a335b35a4665e59e362fdcb7">&#9670;&nbsp;</a></span>BIG_1024_58_cmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_cmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a20a0b8fabe8aa895eb6c4b2e1e597adb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a20a0b8fabe8aa895eb6c4b2e1e597adb">&#9670;&nbsp;</a></span>BIG_1024_58_comp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_comp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a94daed5bc774c1ed9bb29ace95b5af1e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94daed5bc774c1ed9bb29ace95b5af1e">&#9670;&nbsp;</a></span>BIG_1024_58_copy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_copy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a8ed8ce73b499a238662439a49473ca90"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ed8ce73b499a238662439a49473ca90">&#9670;&nbsp;</a></span>BIG_1024_58_cswap()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_cswap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a3f3f2d5fbc9a91b680d5040d6693f499"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f3f2d5fbc9a91b680d5040d6693f499">&#9670;&nbsp;</a></span>BIG_1024_58_dadd()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dadd </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a6af9f026d8c2cb05659ed8f31d503a54"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6af9f026d8c2cb05659ed8f31d503a54">&#9670;&nbsp;</a></span>BIG_1024_58_dcmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dcmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="afa0ffcf3a57d2482330e0e8ae6eb05db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa0ffcf3a57d2482330e0e8ae6eb05db">&#9670;&nbsp;</a></span>BIG_1024_58_dcomp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_dcomp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="af38b390385549c31d7ce8447f9a45dbd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af38b390385549c31d7ce8447f9a45dbd">&#9670;&nbsp;</a></span>BIG_1024_58_dcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a938e45286d8d713c89cef4e6b1eeb129"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a938e45286d8d713c89cef4e6b1eeb129">&#9670;&nbsp;</a></span>BIG_1024_58_ddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_ddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a90e0e0ca821bb22ab92659627637c612"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90e0e0ca821bb22ab92659627637c612">&#9670;&nbsp;</a></span>BIG_1024_58_dec()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dec </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="acdbe087fda94ec14544741fe34fc0aaf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acdbe087fda94ec14544741fe34fc0aaf">&#9670;&nbsp;</a></span>BIG_1024_58_dfromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dfromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a689ac42e23036ad21834fd942ca15d04"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a689ac42e23036ad21834fd942ca15d04">&#9670;&nbsp;</a></span>BIG_1024_58_diszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_diszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="af3745602825277b88fe99dd76b103b5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3745602825277b88fe99dd76b103b5d">&#9670;&nbsp;</a></span>BIG_1024_58_div3()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_div3 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a2896cb84c0b5c26a4d7a588bfe2b0f77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2896cb84c0b5c26a4d7a588bfe2b0f77">&#9670;&nbsp;</a></span>BIG_1024_58_dmod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dmod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a9b7d10ac14d01730ca0ed7ebafaf4365"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b7d10ac14d01730ca0ed7ebafaf4365">&#9670;&nbsp;</a></span>BIG_1024_58_dmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Truncation
@param x DBIG number, on reduced mod 2^m
@param m new truncated size
</pre>
</div>
</div>
<a id="a7b0abd4056a185f6f702d0aca0cab277"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b0abd4056a185f6f702d0aca0cab277">&#9670;&nbsp;</a></span>BIG_1024_58_dnbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_dnbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a3180823b4ebd2be0e8d6ace836a87b56"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3180823b4ebd2be0e8d6ace836a87b56">&#9670;&nbsp;</a></span>BIG_1024_58_dnorm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dnorm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="aeb8691b6e4a7ff22929a6ea4e8d8b3da"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb8691b6e4a7ff22929a6ea4e8d8b3da">&#9670;&nbsp;</a></span>BIG_1024_58_doutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_doutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a3c33bca4d8d89b2f77a3d88e70e38d8d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3c33bca4d8d89b2f77a3d88e70e38d8d">&#9670;&nbsp;</a></span>BIG_1024_58_drawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_drawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a70a47ab4fbb69c412f32d998b5a40551"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a70a47ab4fbb69c412f32d998b5a40551">&#9670;&nbsp;</a></span>BIG_1024_58_dscopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dscopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a91e88ae17c00cf2ccefced76c727d60d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a91e88ae17c00cf2ccefced76c727d60d">&#9670;&nbsp;</a></span>BIG_1024_58_dshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="ab50ad93d711f57cad218154028e77da7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab50ad93d711f57cad218154028e77da7">&#9670;&nbsp;</a></span>BIG_1024_58_dshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a9c71ce01032e357c3c5935a6e4716017"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c71ce01032e357c3c5935a6e4716017">&#9670;&nbsp;</a></span>BIG_1024_58_dsub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dsub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="aa545f16338ba3999213e4ae7ef376487"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa545f16338ba3999213e4ae7ef376487">&#9670;&nbsp;</a></span>BIG_1024_58_dsucopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dsucopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a169065bae28b4d5b2345cc6449d61116"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a169065bae28b4d5b2345cc6449d61116">&#9670;&nbsp;</a></span>BIG_1024_58_dzero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_dzero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a281cae3966b611c2537d70299a5738f6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a281cae3966b611c2537d70299a5738f6">&#9670;&nbsp;</a></span>BIG_1024_58_fromBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_fromBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="af1faa088ae945221ecd0b9183adb5499"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1faa088ae945221ecd0b9183adb5499">&#9670;&nbsp;</a></span>BIG_1024_58_fromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_fromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a7775ca1af1766e0874ba094caeed81dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7775ca1af1766e0874ba094caeed81dc">&#9670;&nbsp;</a></span>BIG_1024_58_fshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_fshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="ac5bf43346b61df367fe387509e0bc844"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5bf43346b61df367fe387509e0bc844">&#9670;&nbsp;</a></span>BIG_1024_58_fshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_fshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="aea983376fb00f180a797da09e3266fde"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aea983376fb00f180a797da09e3266fde">&#9670;&nbsp;</a></span>BIG_1024_58_imul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_imul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="afca0383b584f39627f2d3b2a19742441"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afca0383b584f39627f2d3b2a19742441">&#9670;&nbsp;</a></span>BIG_1024_58_inc()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_inc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a9356a68e69873749b1d8b552e8eedcd4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9356a68e69873749b1d8b552e8eedcd4">&#9670;&nbsp;</a></span>BIG_1024_58_invmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_invmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a94ba3da9d18c02c77fd80f74c69c2a81"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94ba3da9d18c02c77fd80f74c69c2a81">&#9670;&nbsp;</a></span>BIG_1024_58_invmodp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_invmodp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a9e68fc45805cdfe899c73b8dc39050b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e68fc45805cdfe899c73b8dc39050b1">&#9670;&nbsp;</a></span>BIG_1024_58_isunity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_isunity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a9914e305af21db990dbe3a057922803a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9914e305af21db990dbe3a057922803a">&#9670;&nbsp;</a></span>BIG_1024_58_iszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_iszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="aa3cc87dbc15806b0f702891ac7098ac0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3cc87dbc15806b0f702891ac7098ac0">&#9670;&nbsp;</a></span>BIG_1024_58_jacobi()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_jacobi </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a906d21822878cf8e8f1dfd2e82e074fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a906d21822878cf8e8f1dfd2e82e074fb">&#9670;&nbsp;</a></span>BIG_1024_58_lastbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_lastbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="af4b09ea14dd99580a95573594fb598c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af4b09ea14dd99580a95573594fb598c6">&#9670;&nbsp;</a></span>BIG_1024_58_mod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_mod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a5de7afcfa9816cae291aaca61ecb118b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5de7afcfa9816cae291aaca61ecb118b">&#9670;&nbsp;</a></span>BIG_1024_58_mod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_mod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<pre class="fragment">Truncation
@param x BIG number, on reduced mod 2^m
@param m new truncated size
</pre>
</div>
</div>
<a id="a7b984d08e0649c45f4bb43af4b249e68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7b984d08e0649c45f4bb43af4b249e68">&#9670;&nbsp;</a></span>BIG_1024_58_moddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_moddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a1eaec9a14b6840cd8bc724d263296a95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1eaec9a14b6840cd8bc724d263296a95">&#9670;&nbsp;</a></span>BIG_1024_58_modmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_modmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a1a81f4df17bfc22252203fcc589857d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1a81f4df17bfc22252203fcc589857d8">&#9670;&nbsp;</a></span>BIG_1024_58_modneg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_modneg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="af62acb0b41db1a43d959887a894db497"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af62acb0b41db1a43d959887a894db497">&#9670;&nbsp;</a></span>BIG_1024_58_modsqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_modsqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a3709498b361201350c543ab42e5dc1c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3709498b361201350c543ab42e5dc1c7">&#9670;&nbsp;</a></span>BIG_1024_58_monty()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_monty </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a0690afd393dc18f933e60990d3821b45"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0690afd393dc18f933e60990d3821b45">&#9670;&nbsp;</a></span>BIG_1024_58_mul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_mul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a5efd1864ed90d0a55a62d3b10c921705"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5efd1864ed90d0a55a62d3b10c921705">&#9670;&nbsp;</a></span>BIG_1024_58_nbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_nbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a78dfb374de911ef2d768ce9d9398aadc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a78dfb374de911ef2d768ce9d9398aadc">&#9670;&nbsp;</a></span>BIG_1024_58_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_1024_58_norm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a42011029a68b709728c96b06295c3bee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42011029a68b709728c96b06295c3bee">&#9670;&nbsp;</a></span>BIG_1024_58_one()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_one </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="ac2acae35d001aa2a3fb2ac2039341f18"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2acae35d001aa2a3fb2ac2039341f18">&#9670;&nbsp;</a></span>BIG_1024_58_or()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_or </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="ac7a8eb974dd82c2f31e3b120f4ddbc5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7a8eb974dd82c2f31e3b120f4ddbc5d">&#9670;&nbsp;</a></span>BIG_1024_58_output()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_output </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a585caf3c149a0beef6f0136b92bcd46a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a585caf3c149a0beef6f0136b92bcd46a">&#9670;&nbsp;</a></span>BIG_1024_58_parity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_parity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a7bd87a02037daa18fda51f198ff141e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7bd87a02037daa18fda51f198ff141e2">&#9670;&nbsp;</a></span>BIG_1024_58_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_1024_58_pmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="aa44406222b538ec2433a2be4738c4cb0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa44406222b538ec2433a2be4738c4cb0">&#9670;&nbsp;</a></span>BIG_1024_58_pxmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_pxmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a2db663a9a1f83eba523c4f0bf8af74b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2db663a9a1f83eba523c4f0bf8af74b1">&#9670;&nbsp;</a></span>BIG_1024_58_random()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_random </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="ae42a80d27315f80f3c905d071195e8b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae42a80d27315f80f3c905d071195e8b1">&#9670;&nbsp;</a></span>BIG_1024_58_randomnum()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_randomnum </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a4a584a3e57e2752a4f59423503e81dd7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a584a3e57e2752a4f59423503e81dd7">&#9670;&nbsp;</a></span>BIG_1024_58_rawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_rawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a139ae8d29114968edb0b54e530d082e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a139ae8d29114968edb0b54e530d082e2">&#9670;&nbsp;</a></span>BIG_1024_58_rcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_rcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a5d8d33ffbbce6d087b1e1c49a1fad23d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d8d33ffbbce6d087b1e1c49a1fad23d">&#9670;&nbsp;</a></span>BIG_1024_58_sdcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_sdcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a9ab3f1c57e7e4155b6194335712e3b64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9ab3f1c57e7e4155b6194335712e3b64">&#9670;&nbsp;</a></span>BIG_1024_58_sdiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_sdiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a67a3f6e541cc9bc314e4f94721ca2fba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67a3f6e541cc9bc314e4f94721ca2fba">&#9670;&nbsp;</a></span>BIG_1024_58_sducopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_sducopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="ae71758a3e3c67efbbb4ff0bcea9df928"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae71758a3e3c67efbbb4ff0bcea9df928">&#9670;&nbsp;</a></span>BIG_1024_58_shl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_shl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a2f317d943e33967f27e58968cca8df27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f317d943e33967f27e58968cca8df27">&#9670;&nbsp;</a></span>BIG_1024_58_shr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_shr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a3d3805aec11909f08ce7636249d4185e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d3805aec11909f08ce7636249d4185e">&#9670;&nbsp;</a></span>BIG_1024_58_smul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_smul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="ae35c74afb8c26ecd4e432e9a3e68362d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae35c74afb8c26ecd4e432e9a3e68362d">&#9670;&nbsp;</a></span>BIG_1024_58_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_1024_58_split </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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="a1e2d834083c873552e56e3ddfdbef044"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e2d834083c873552e56e3ddfdbef044">&#9670;&nbsp;</a></span>BIG_1024_58_sqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_sqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a551e2dc2ad671ee5baaed8d60b112027">DBIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="abea7bf865060ea2fd29102dfa921dff4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abea7bf865060ea2fd29102dfa921dff4">&#9670;&nbsp;</a></span>BIG_1024_58_ssn()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_1024_58_ssn </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="aaa5525a00e5d792272627b952c839311"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaa5525a00e5d792272627b952c839311">&#9670;&nbsp;</a></span>BIG_1024_58_sub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_sub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a34066f8efa6c016c7c502ef15022eae7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34066f8efa6c016c7c502ef15022eae7">&#9670;&nbsp;</a></span>BIG_1024_58_toBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_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__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</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="a4f5a30353d520430afef1da22610a65f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f5a30353d520430afef1da22610a65f">&#9670;&nbsp;</a></span>BIG_1024_58_zero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_1024_58_zero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__1024__58_8h.html#a9b2910ed8e28bc385736f45a3d668691">BIG_1024_58</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be set to zero </td></tr>
</table>
</dd>
</dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>