blob: 3391e8e3107a303dc36ec3c75b4ef81475c1fe9b [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AMCL: big_528_60.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">AMCL
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_df7310d1a865926cc859bcfb1880083f.html">include</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">big_528_60.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>BIG Header File.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;stdio.h&gt;</code><br />
<code>#include &lt;stdlib.h&gt;</code><br />
<code>#include &lt;inttypes.h&gt;</code><br />
<code>#include &quot;<a class="el" href="arch_8h_source.html">arch.h</a>&quot;</code><br />
<code>#include &quot;amcl.h&quot;</code><br />
<code>#include &quot;<a class="el" href="config__big__528__60_8h_source.html">config_big_528_60.h</a>&quot;</code><br />
</div>
<p><a href="big__528__60_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ab23dce98483079baad467cb7d98d8edf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ab23dce98483079baad467cb7d98d8edf">BIGBITS_528_60</a>&#160;&#160;&#160;(8*<a class="el" href="config__big__528__60_8h.html#a49e3aed3f2be5bc29bf59dc49c05cd6d">MODBYTES_528_60</a>)</td></tr>
<tr class="separator:ab23dce98483079baad467cb7d98d8edf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8102cf5b999d22700d2207896a2fcb07"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a8102cf5b999d22700d2207896a2fcb07">NLEN_528_60</a>&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__528__60_8h.html#a49e3aed3f2be5bc29bf59dc49c05cd6d">MODBYTES_528_60</a>-1)/<a class="el" href="config__big__528__60_8h.html#a91a5c5bbb41eb7c762fe1037781fd0ad">BASEBITS_528_60</a>))</td></tr>
<tr class="separator:a8102cf5b999d22700d2207896a2fcb07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec5c7cddc7c36740b0be3af25e3027e3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aec5c7cddc7c36740b0be3af25e3027e3">DNLEN_528_60</a>&#160;&#160;&#160;2*<a class="el" href="big__528__60_8h.html#a8102cf5b999d22700d2207896a2fcb07">NLEN_528_60</a></td></tr>
<tr class="separator:aec5c7cddc7c36740b0be3af25e3027e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad67156ea1cc03f212979c7ed75eb7a63"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ad67156ea1cc03f212979c7ed75eb7a63">BMASK_528_60</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__528__60_8h.html#a91a5c5bbb41eb7c762fe1037781fd0ad">BASEBITS_528_60</a>)-1)</td></tr>
<tr class="separator:ad67156ea1cc03f212979c7ed75eb7a63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd57cc9b3fb3e357ef8e50b6c7210c07"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#acd57cc9b3fb3e357ef8e50b6c7210c07">NEXCESS_528_60</a>&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__528__60_8h.html#a91a5c5bbb41eb7c762fe1037781fd0ad">BASEBITS_528_60</a>-1))</td></tr>
<tr class="separator:acd57cc9b3fb3e357ef8e50b6c7210c07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68dfa3c0a4a228a1aaa5fb4457eda3ed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a68dfa3c0a4a228a1aaa5fb4457eda3ed">HBITS_528_60</a>&#160;&#160;&#160;(<a class="el" href="config__big__528__60_8h.html#a91a5c5bbb41eb7c762fe1037781fd0ad">BASEBITS_528_60</a>/2)</td></tr>
<tr class="separator:a68dfa3c0a4a228a1aaa5fb4457eda3ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a980ed86f744ab07fa9a935985e1c1b8c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a980ed86f744ab07fa9a935985e1c1b8c">HMASK_528_60</a>&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__528__60_8h.html#a68dfa3c0a4a228a1aaa5fb4457eda3ed">HBITS_528_60</a>)-1)</td></tr>
<tr class="separator:a980ed86f744ab07fa9a935985e1c1b8c"><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:a8354e859d13f81a1282d413ad9a00f45"><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__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>[<a class="el" href="big__528__60_8h.html#a8102cf5b999d22700d2207896a2fcb07">NLEN_528_60</a>]</td></tr>
<tr class="separator:a8354e859d13f81a1282d413ad9a00f45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a098a5686344d9db2f135c845fc9c83c0"><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__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>[<a class="el" href="big__528__60_8h.html#aec5c7cddc7c36740b0be3af25e3027e3">DNLEN_528_60</a>]</td></tr>
<tr class="separator:a098a5686344d9db2f135c845fc9c83c0"><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:a42fdaa52bc19aa6fca2e1eccfb386878"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a42fdaa52bc19aa6fca2e1eccfb386878">BIG_528_60_iszilch</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:a42fdaa52bc19aa6fca2e1eccfb386878"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to zero. <a href="#a42fdaa52bc19aa6fca2e1eccfb386878">More...</a><br /></td></tr>
<tr class="separator:a42fdaa52bc19aa6fca2e1eccfb386878"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a97711862b1cc33244171637681de99"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a4a97711862b1cc33244171637681de99">BIG_528_60_isunity</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:a4a97711862b1cc33244171637681de99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for BIG equal to one. <a href="#a4a97711862b1cc33244171637681de99">More...</a><br /></td></tr>
<tr class="separator:a4a97711862b1cc33244171637681de99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff238fd209e48e640ebd27b4b4cd099d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aff238fd209e48e640ebd27b4b4cd099d">BIG_528_60_diszilch</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x)</td></tr>
<tr class="memdesc:aff238fd209e48e640ebd27b4b4cd099d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests for DBIG equal to zero. <a href="#aff238fd209e48e640ebd27b4b4cd099d">More...</a><br /></td></tr>
<tr class="separator:aff238fd209e48e640ebd27b4b4cd099d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c715e1791d1b6d81c6ddb5028a6cd28"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a9c715e1791d1b6d81c6ddb5028a6cd28">BIG_528_60_output</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:a9c715e1791d1b6d81c6ddb5028a6cd28"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console. <a href="#a9c715e1791d1b6d81c6ddb5028a6cd28">More...</a><br /></td></tr>
<tr class="separator:a9c715e1791d1b6d81c6ddb5028a6cd28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29dc0ff3231d7378219f1a03b8fd6874"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a29dc0ff3231d7378219f1a03b8fd6874">BIG_528_60_rawoutput</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:a29dc0ff3231d7378219f1a03b8fd6874"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a BIG number to the console in raw form (for debugging) <a href="#a29dc0ff3231d7378219f1a03b8fd6874">More...</a><br /></td></tr>
<tr class="separator:a29dc0ff3231d7378219f1a03b8fd6874"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bcbc90c5bc550df435c5d370c8ea6b3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a2bcbc90c5bc550df435c5d370c8ea6b3">BIG_528_60_cswap</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, int s)</td></tr>
<tr class="memdesc:a2bcbc90c5bc550df435c5d370c8ea6b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional constant time swap of two BIG numbers. <a href="#a2bcbc90c5bc550df435c5d370c8ea6b3">More...</a><br /></td></tr>
<tr class="separator:a2bcbc90c5bc550df435c5d370c8ea6b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adccc6fb715a79eb25fb57c3065850ad1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#adccc6fb715a79eb25fb57c3065850ad1">BIG_528_60_cmove</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, int s)</td></tr>
<tr class="memdesc:adccc6fb715a79eb25fb57c3065850ad1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of BIG number. <a href="#adccc6fb715a79eb25fb57c3065850ad1">More...</a><br /></td></tr>
<tr class="separator:adccc6fb715a79eb25fb57c3065850ad1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3957eaba67b5067f34e2c6f46fef9f01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a3957eaba67b5067f34e2c6f46fef9f01">BIG_528_60_dcmove</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, int s)</td></tr>
<tr class="memdesc:a3957eaba67b5067f34e2c6f46fef9f01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conditional copy of DBIG number. <a href="#a3957eaba67b5067f34e2c6f46fef9f01">More...</a><br /></td></tr>
<tr class="separator:a3957eaba67b5067f34e2c6f46fef9f01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4fc31837dd06b0c2e06b5eef3d8d1bf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ad4fc31837dd06b0c2e06b5eef3d8d1bf">BIG_528_60_toBytes</a> (char *a, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:ad4fc31837dd06b0c2e06b5eef3d8d1bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from BIG number to byte array. <a href="#ad4fc31837dd06b0c2e06b5eef3d8d1bf">More...</a><br /></td></tr>
<tr class="separator:ad4fc31837dd06b0c2e06b5eef3d8d1bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b0db7a38d3eebd1bd95caba13b2a20c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a3b0db7a38d3eebd1bd95caba13b2a20c">BIG_528_60_fromBytes</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, char *a)</td></tr>
<tr class="memdesc:a3b0db7a38d3eebd1bd95caba13b2a20c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array. <a href="#a3b0db7a38d3eebd1bd95caba13b2a20c">More...</a><br /></td></tr>
<tr class="separator:a3b0db7a38d3eebd1bd95caba13b2a20c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af07e721818ad5628182e27fed1305de7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#af07e721818ad5628182e27fed1305de7">BIG_528_60_fromBytesLen</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, char *a, int s)</td></tr>
<tr class="memdesc:af07e721818ad5628182e27fed1305de7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to BIG number from byte array of given length. <a href="#af07e721818ad5628182e27fed1305de7">More...</a><br /></td></tr>
<tr class="separator:af07e721818ad5628182e27fed1305de7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a976bb4f31e23e3af5647b811c0169c8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a976bb4f31e23e3af5647b811c0169c8e">BIG_528_60_dfromBytesLen</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, char *a, int s)</td></tr>
<tr class="memdesc:a976bb4f31e23e3af5647b811c0169c8e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert to DBIG number from byte array of given length. <a href="#a976bb4f31e23e3af5647b811c0169c8e">More...</a><br /></td></tr>
<tr class="separator:a976bb4f31e23e3af5647b811c0169c8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c6a1c7f682e72d5060c22023646b3d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a4c6a1c7f682e72d5060c22023646b3d6">BIG_528_60_doutput</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x)</td></tr>
<tr class="memdesc:a4c6a1c7f682e72d5060c22023646b3d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a4c6a1c7f682e72d5060c22023646b3d6">More...</a><br /></td></tr>
<tr class="separator:a4c6a1c7f682e72d5060c22023646b3d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67ee719969fa5c88c0cc057075d166be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a67ee719969fa5c88c0cc057075d166be">BIG_528_60_drawoutput</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x)</td></tr>
<tr class="memdesc:a67ee719969fa5c88c0cc057075d166be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs a DBIG number to the console. <a href="#a67ee719969fa5c88c0cc057075d166be">More...</a><br /></td></tr>
<tr class="separator:a67ee719969fa5c88c0cc057075d166be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1b8c06add5d034db6349b47c69ca959"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ad1b8c06add5d034db6349b47c69ca959">BIG_528_60_rcopy</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, const <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y)</td></tr>
<tr class="memdesc:ad1b8c06add5d034db6349b47c69ca959"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG from Read-Only Memory to a BIG. <a href="#ad1b8c06add5d034db6349b47c69ca959">More...</a><br /></td></tr>
<tr class="separator:ad1b8c06add5d034db6349b47c69ca959"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74bdf356863c916fe2538d1c86fe718e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a74bdf356863c916fe2538d1c86fe718e">BIG_528_60_copy</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y)</td></tr>
<tr class="memdesc:a74bdf356863c916fe2538d1c86fe718e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to another BIG. <a href="#a74bdf356863c916fe2538d1c86fe718e">More...</a><br /></td></tr>
<tr class="separator:a74bdf356863c916fe2538d1c86fe718e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c930b804cf2dce72ce1c0e36afcce45"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a4c930b804cf2dce72ce1c0e36afcce45">BIG_528_60_dcopy</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> y)</td></tr>
<tr class="memdesc:a4c930b804cf2dce72ce1c0e36afcce45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy DBIG to another DBIG. <a href="#a4c930b804cf2dce72ce1c0e36afcce45">More...</a><br /></td></tr>
<tr class="separator:a4c930b804cf2dce72ce1c0e36afcce45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba9bcbacf3bcd0b59ddcee16d40e1008"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aba9bcbacf3bcd0b59ddcee16d40e1008">BIG_528_60_dsucopy</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y)</td></tr>
<tr class="memdesc:aba9bcbacf3bcd0b59ddcee16d40e1008"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to upper half of DBIG. <a href="#aba9bcbacf3bcd0b59ddcee16d40e1008">More...</a><br /></td></tr>
<tr class="separator:aba9bcbacf3bcd0b59ddcee16d40e1008"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0adb2a7cb33157a2892edc9ef6f3fac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ac0adb2a7cb33157a2892edc9ef6f3fac">BIG_528_60_dscopy</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y)</td></tr>
<tr class="memdesc:ac0adb2a7cb33157a2892edc9ef6f3fac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy BIG to lower half of DBIG. <a href="#ac0adb2a7cb33157a2892edc9ef6f3fac">More...</a><br /></td></tr>
<tr class="separator:ac0adb2a7cb33157a2892edc9ef6f3fac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa72c8b28dd0266fb198a381f81ad983d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aa72c8b28dd0266fb198a381f81ad983d">BIG_528_60_sdcopy</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> y)</td></tr>
<tr class="memdesc:aa72c8b28dd0266fb198a381f81ad983d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy lower half of DBIG to a BIG. <a href="#aa72c8b28dd0266fb198a381f81ad983d">More...</a><br /></td></tr>
<tr class="separator:aa72c8b28dd0266fb198a381f81ad983d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab49866685a868acc706e3046069549ec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ab49866685a868acc706e3046069549ec">BIG_528_60_sducopy</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> y)</td></tr>
<tr class="memdesc:ab49866685a868acc706e3046069549ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy upper half of DBIG to a BIG. <a href="#ab49866685a868acc706e3046069549ec">More...</a><br /></td></tr>
<tr class="separator:ab49866685a868acc706e3046069549ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab27955873faca327f00f59d01f0fd316"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ab27955873faca327f00f59d01f0fd316">BIG_528_60_zero</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:ab27955873faca327f00f59d01f0fd316"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to zero. <a href="#ab27955873faca327f00f59d01f0fd316">More...</a><br /></td></tr>
<tr class="separator:ab27955873faca327f00f59d01f0fd316"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a588b075709147356f22a6a0852ef2ef5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a588b075709147356f22a6a0852ef2ef5">BIG_528_60_dzero</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x)</td></tr>
<tr class="memdesc:a588b075709147356f22a6a0852ef2ef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to zero. <a href="#a588b075709147356f22a6a0852ef2ef5">More...</a><br /></td></tr>
<tr class="separator:a588b075709147356f22a6a0852ef2ef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af20784804ae73ef0b636642f443ac9f2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#af20784804ae73ef0b636642f443ac9f2">BIG_528_60_one</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:af20784804ae73ef0b636642f443ac9f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to one (unity) <a href="#af20784804ae73ef0b636642f443ac9f2">More...</a><br /></td></tr>
<tr class="separator:af20784804ae73ef0b636642f443ac9f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89efcca64d0079585a0a0b0df6ac2b59"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a89efcca64d0079585a0a0b0df6ac2b59">BIG_528_60_invmod2m</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:a89efcca64d0079585a0a0b0df6ac2b59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to inverse mod 2^256. <a href="#a89efcca64d0079585a0a0b0df6ac2b59">More...</a><br /></td></tr>
<tr class="separator:a89efcca64d0079585a0a0b0df6ac2b59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cf3a406c08eac4a7f60cb209eb032ab"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a2cf3a406c08eac4a7f60cb209eb032ab">BIG_528_60_add</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> z)</td></tr>
<tr class="memdesc:a2cf3a406c08eac4a7f60cb209eb032ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to sum of two BIGs - output not normalised. <a href="#a2cf3a406c08eac4a7f60cb209eb032ab">More...</a><br /></td></tr>
<tr class="separator:a2cf3a406c08eac4a7f60cb209eb032ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8bbe7fe34b4b090ddc002a774d3d5dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#af8bbe7fe34b4b090ddc002a774d3d5dc">BIG_528_60_or</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> z)</td></tr>
<tr class="memdesc:af8bbe7fe34b4b090ddc002a774d3d5dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to logical or of two BIGs - output normalised. <a href="#af8bbe7fe34b4b090ddc002a774d3d5dc">More...</a><br /></td></tr>
<tr class="separator:af8bbe7fe34b4b090ddc002a774d3d5dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab538407c81f981ef61fb5a9542daa811"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ab538407c81f981ef61fb5a9542daa811">BIG_528_60_inc</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, int i)</td></tr>
<tr class="memdesc:ab538407c81f981ef61fb5a9542daa811"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment BIG by a small integer - output not normalised. <a href="#ab538407c81f981ef61fb5a9542daa811">More...</a><br /></td></tr>
<tr class="separator:ab538407c81f981ef61fb5a9542daa811"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66d8cba96f29d745eac30096f681af08"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a66d8cba96f29d745eac30096f681af08">BIG_528_60_sub</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> z)</td></tr>
<tr class="memdesc:a66d8cba96f29d745eac30096f681af08"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set BIG to difference of two BIGs. <a href="#a66d8cba96f29d745eac30096f681af08">More...</a><br /></td></tr>
<tr class="separator:a66d8cba96f29d745eac30096f681af08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3d4bee0c0f6a6a2f0fefd155ff86386"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ae3d4bee0c0f6a6a2f0fefd155ff86386">BIG_528_60_dec</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, int i)</td></tr>
<tr class="memdesc:ae3d4bee0c0f6a6a2f0fefd155ff86386"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement BIG by a small integer - output not normalised. <a href="#ae3d4bee0c0f6a6a2f0fefd155ff86386">More...</a><br /></td></tr>
<tr class="separator:ae3d4bee0c0f6a6a2f0fefd155ff86386"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac19e357a0ee4160210709ceae20fd13a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ac19e357a0ee4160210709ceae20fd13a">BIG_528_60_dadd</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> z)</td></tr>
<tr class="memdesc:ac19e357a0ee4160210709ceae20fd13a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to sum of two DBIGs. <a href="#ac19e357a0ee4160210709ceae20fd13a">More...</a><br /></td></tr>
<tr class="separator:ac19e357a0ee4160210709ceae20fd13a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41d31b72e48817a68641ba050f81a798"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a41d31b72e48817a68641ba050f81a798">BIG_528_60_dsub</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> z)</td></tr>
<tr class="memdesc:a41d31b72e48817a68641ba050f81a798"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set DBIG to difference of two DBIGs. <a href="#a41d31b72e48817a68641ba050f81a798">More...</a><br /></td></tr>
<tr class="separator:a41d31b72e48817a68641ba050f81a798"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a437761d0149ea3ac18dd5790504d8d05"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a437761d0149ea3ac18dd5790504d8d05">BIG_528_60_imul</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, int i)</td></tr>
<tr class="memdesc:a437761d0149ea3ac18dd5790504d8d05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by a small integer - output not normalised. <a href="#a437761d0149ea3ac18dd5790504d8d05">More...</a><br /></td></tr>
<tr class="separator:a437761d0149ea3ac18dd5790504d8d05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a38d5b3e59388ca394dea367bfb67657e"><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__528__60_8h.html#a38d5b3e59388ca394dea367bfb67657e">BIG_528_60_pmul</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, int i)</td></tr>
<tr class="memdesc:a38d5b3e59388ca394dea367bfb67657e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by not-so-small small integer - output normalised. <a href="#a38d5b3e59388ca394dea367bfb67657e">More...</a><br /></td></tr>
<tr class="separator:a38d5b3e59388ca394dea367bfb67657e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade9dfe82ec2d33754650650d1d639e7f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ade9dfe82ec2d33754650650d1d639e7f">BIG_528_60_div3</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:ade9dfe82ec2d33754650650d1d639e7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide BIG by 3 - output normalised. <a href="#ade9dfe82ec2d33754650650d1d639e7f">More...</a><br /></td></tr>
<tr class="separator:ade9dfe82ec2d33754650650d1d639e7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6be57efef61770e617565f9604e4c938"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a6be57efef61770e617565f9604e4c938">BIG_528_60_pxmul</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, int i)</td></tr>
<tr class="memdesc:a6be57efef61770e617565f9604e4c938"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by even bigger small integer resulting in a DBIG - output normalised. <a href="#a6be57efef61770e617565f9604e4c938">More...</a><br /></td></tr>
<tr class="separator:a6be57efef61770e617565f9604e4c938"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85c6445b4894c6a920cb3b6cc3cc8aca"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a85c6445b4894c6a920cb3b6cc3cc8aca">BIG_528_60_mul</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> z)</td></tr>
<tr class="memdesc:a85c6445b4894c6a920cb3b6cc3cc8aca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in DBIG - inputs normalised and output normalised. <a href="#a85c6445b4894c6a920cb3b6cc3cc8aca">More...</a><br /></td></tr>
<tr class="separator:a85c6445b4894c6a920cb3b6cc3cc8aca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3ef59790363f51106380370dc37a706"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#af3ef59790363f51106380370dc37a706">BIG_528_60_smul</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> z)</td></tr>
<tr class="memdesc:af3ef59790363f51106380370dc37a706"><td class="mdescLeft">&#160;</td><td class="mdescRight">Multiply BIG by another BIG resulting in another BIG - inputs normalised and output normalised. <a href="#af3ef59790363f51106380370dc37a706">More...</a><br /></td></tr>
<tr class="separator:af3ef59790363f51106380370dc37a706"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7eccd1556fbc607020672682b24a3d8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aa7eccd1556fbc607020672682b24a3d8">BIG_528_60_sqr</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y)</td></tr>
<tr class="memdesc:aa7eccd1556fbc607020672682b24a3d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Square BIG resulting in a DBIG - input normalised and output normalised. <a href="#aa7eccd1556fbc607020672682b24a3d8">More...</a><br /></td></tr>
<tr class="separator:aa7eccd1556fbc607020672682b24a3d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afed23506e5438bc4bcd4e5af291336ec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#afed23506e5438bc4bcd4e5af291336ec">BIG_528_60_monty</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> a, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> md, <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> MC, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> d)</td></tr>
<tr class="memdesc:afed23506e5438bc4bcd4e5af291336ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Montgomery reduction of a DBIG to a BIG - input normalised and output normalised. <a href="#afed23506e5438bc4bcd4e5af291336ec">More...</a><br /></td></tr>
<tr class="separator:afed23506e5438bc4bcd4e5af291336ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1eaf5799f2598d757be200b3e74e1a19"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a1eaf5799f2598d757be200b3e74e1a19">BIG_528_60_shl</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, int s)</td></tr>
<tr class="memdesc:a1eaf5799f2598d757be200b3e74e1a19"><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="#a1eaf5799f2598d757be200b3e74e1a19">More...</a><br /></td></tr>
<tr class="separator:a1eaf5799f2598d757be200b3e74e1a19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade18a9e3fa4228fa38fec165eb5f7b9c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ade18a9e3fa4228fa38fec165eb5f7b9c">BIG_528_60_fshl</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, int s)</td></tr>
<tr class="memdesc:ade18a9e3fa4228fa38fec165eb5f7b9c"><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="#ade18a9e3fa4228fa38fec165eb5f7b9c">More...</a><br /></td></tr>
<tr class="separator:ade18a9e3fa4228fa38fec165eb5f7b9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd22bb716d27cb98684b7637b6c08a52"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#acd22bb716d27cb98684b7637b6c08a52">BIG_528_60_dshl</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, int s)</td></tr>
<tr class="memdesc:acd22bb716d27cb98684b7637b6c08a52"><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="#acd22bb716d27cb98684b7637b6c08a52">More...</a><br /></td></tr>
<tr class="separator:acd22bb716d27cb98684b7637b6c08a52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abef734408d3554c0c7339426d209ead7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#abef734408d3554c0c7339426d209ead7">BIG_528_60_shr</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, int s)</td></tr>
<tr class="memdesc:abef734408d3554c0c7339426d209ead7"><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="#abef734408d3554c0c7339426d209ead7">More...</a><br /></td></tr>
<tr class="separator:abef734408d3554c0c7339426d209ead7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72fb6579daef8d9835237d34395dde1f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a72fb6579daef8d9835237d34395dde1f">BIG_528_60_ssn</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> r, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> a, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> m)</td></tr>
<tr class="memdesc:a72fb6579daef8d9835237d34395dde1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fast time-critical combined shift by 1 bit, subtract and normalise. <a href="#a72fb6579daef8d9835237d34395dde1f">More...</a><br /></td></tr>
<tr class="separator:a72fb6579daef8d9835237d34395dde1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab581aaabf3f679fbd79b62924003ed94"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ab581aaabf3f679fbd79b62924003ed94">BIG_528_60_fshr</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, int s)</td></tr>
<tr class="memdesc:ab581aaabf3f679fbd79b62924003ed94"><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="#ab581aaabf3f679fbd79b62924003ed94">More...</a><br /></td></tr>
<tr class="separator:ab581aaabf3f679fbd79b62924003ed94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a824eeb9876ce30bbb8ad7d5b1f7b3d2d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a824eeb9876ce30bbb8ad7d5b1f7b3d2d">BIG_528_60_dshr</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, int s)</td></tr>
<tr class="memdesc:a824eeb9876ce30bbb8ad7d5b1f7b3d2d"><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="#a824eeb9876ce30bbb8ad7d5b1f7b3d2d">More...</a><br /></td></tr>
<tr class="separator:a824eeb9876ce30bbb8ad7d5b1f7b3d2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00690db44ca9b2f88aa085e18f9560c7"><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__528__60_8h.html#a00690db44ca9b2f88aa085e18f9560c7">BIG_528_60_split</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> z, int s)</td></tr>
<tr class="memdesc:a00690db44ca9b2f88aa085e18f9560c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Splits a DBIG into two BIGs - input must be normalised, outputs normalised. <a href="#a00690db44ca9b2f88aa085e18f9560c7">More...</a><br /></td></tr>
<tr class="separator:a00690db44ca9b2f88aa085e18f9560c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc9ee9ea4f146c1c456f796cbfcaac74"><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__528__60_8h.html#adc9ee9ea4f146c1c456f796cbfcaac74">BIG_528_60_norm</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:adc9ee9ea4f146c1c456f796cbfcaac74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a BIG number - output normalised. <a href="#adc9ee9ea4f146c1c456f796cbfcaac74">More...</a><br /></td></tr>
<tr class="separator:adc9ee9ea4f146c1c456f796cbfcaac74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d58fea19575ff26b33eb4a528397f37"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a0d58fea19575ff26b33eb4a528397f37">BIG_528_60_dnorm</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x)</td></tr>
<tr class="memdesc:a0d58fea19575ff26b33eb4a528397f37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normalizes a DBIG number - output normalised. <a href="#a0d58fea19575ff26b33eb4a528397f37">More...</a><br /></td></tr>
<tr class="separator:a0d58fea19575ff26b33eb4a528397f37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c1ab9bb6047106e53617e8a718ee942"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a2c1ab9bb6047106e53617e8a718ee942">BIG_528_60_comp</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y)</td></tr>
<tr class="memdesc:a2c1ab9bb6047106e53617e8a718ee942"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two BIG numbers. Inputs must be normalised externally. <a href="#a2c1ab9bb6047106e53617e8a718ee942">More...</a><br /></td></tr>
<tr class="separator:a2c1ab9bb6047106e53617e8a718ee942"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa351c44c9f8678171158e7c54eafb371"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aa351c44c9f8678171158e7c54eafb371">BIG_528_60_dcomp</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> y)</td></tr>
<tr class="memdesc:aa351c44c9f8678171158e7c54eafb371"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two DBIG numbers. Inputs must be normalised externally. <a href="#aa351c44c9f8678171158e7c54eafb371">More...</a><br /></td></tr>
<tr class="separator:aa351c44c9f8678171158e7c54eafb371"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2ad1bb8fbec376e05c5d6a5bbe0852f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ab2ad1bb8fbec376e05c5d6a5bbe0852f">BIG_528_60_nbits</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:ab2ad1bb8fbec376e05c5d6a5bbe0852f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a BIG - output normalised. <a href="#ab2ad1bb8fbec376e05c5d6a5bbe0852f">More...</a><br /></td></tr>
<tr class="separator:ab2ad1bb8fbec376e05c5d6a5bbe0852f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6b13bb21e5076ea57b4fd81403ecea2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ae6b13bb21e5076ea57b4fd81403ecea2">BIG_528_60_dnbits</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x)</td></tr>
<tr class="memdesc:ae6b13bb21e5076ea57b4fd81403ecea2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate number of bits in a DBIG - output normalised. <a href="#ae6b13bb21e5076ea57b4fd81403ecea2">More...</a><br /></td></tr>
<tr class="separator:ae6b13bb21e5076ea57b4fd81403ecea2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b7007019f1c0b8884f04e47610b5440"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a2b7007019f1c0b8884f04e47610b5440">BIG_528_60_mod</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n)</td></tr>
<tr class="memdesc:a2b7007019f1c0b8884f04e47610b5440"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reduce x mod n - input and output normalised. <a href="#a2b7007019f1c0b8884f04e47610b5440">More...</a><br /></td></tr>
<tr class="separator:a2b7007019f1c0b8884f04e47610b5440"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5e83598d71dc543224c291907ccdbda"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ac5e83598d71dc543224c291907ccdbda">BIG_528_60_sdiv</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n)</td></tr>
<tr class="memdesc:ac5e83598d71dc543224c291907ccdbda"><td class="mdescLeft">&#160;</td><td class="mdescRight">Divide x by n - output normalised. <a href="#ac5e83598d71dc543224c291907ccdbda">More...</a><br /></td></tr>
<tr class="separator:ac5e83598d71dc543224c291907ccdbda"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70d1aafa945f2eaf7ccbc90b630f68a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a70d1aafa945f2eaf7ccbc90b630f68a7">BIG_528_60_dmod</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n)</td></tr>
<tr class="memdesc:a70d1aafa945f2eaf7ccbc90b630f68a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y mod n - output normalised <a href="#a70d1aafa945f2eaf7ccbc90b630f68a7">More...</a><br /></td></tr>
<tr class="separator:a70d1aafa945f2eaf7ccbc90b630f68a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa57327c0f5a5657dcf57e240e4c6fc96"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aa57327c0f5a5657dcf57e240e4c6fc96">BIG_528_60_ddiv</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n)</td></tr>
<tr class="memdesc:aa57327c0f5a5657dcf57e240e4c6fc96"><td class="mdescLeft">&#160;</td><td class="mdescRight">x=y/n - output normalised <a href="#aa57327c0f5a5657dcf57e240e4c6fc96">More...</a><br /></td></tr>
<tr class="separator:aa57327c0f5a5657dcf57e240e4c6fc96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6dd760b3465e82ce1c3e17bc900b4d42"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a6dd760b3465e82ce1c3e17bc900b4d42">BIG_528_60_parity</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x)</td></tr>
<tr class="memdesc:a6dd760b3465e82ce1c3e17bc900b4d42"><td class="mdescLeft">&#160;</td><td class="mdescRight">return parity of BIG, that is the least significant bit <a href="#a6dd760b3465e82ce1c3e17bc900b4d42">More...</a><br /></td></tr>
<tr class="separator:a6dd760b3465e82ce1c3e17bc900b4d42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1aaca83012b7812f50e16092f344c719"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a1aaca83012b7812f50e16092f344c719">BIG_528_60_bit</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, int i)</td></tr>
<tr class="memdesc:a1aaca83012b7812f50e16092f344c719"><td class="mdescLeft">&#160;</td><td class="mdescRight">return i-th of BIG <a href="#a1aaca83012b7812f50e16092f344c719">More...</a><br /></td></tr>
<tr class="separator:a1aaca83012b7812f50e16092f344c719"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fb2154ac604877876cda256ea4ff4ef"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a5fb2154ac604877876cda256ea4ff4ef">BIG_528_60_lastbits</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, int n)</td></tr>
<tr class="memdesc:a5fb2154ac604877876cda256ea4ff4ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">return least significant bits of a BIG <a href="#a5fb2154ac604877876cda256ea4ff4ef">More...</a><br /></td></tr>
<tr class="separator:a5fb2154ac604877876cda256ea4ff4ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d8a4dea060c0a37cdb51b1b3ac20591"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a0d8a4dea060c0a37cdb51b1b3ac20591">BIG_528_60_random</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:a0d8a4dea060c0a37cdb51b1b3ac20591"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a random BIG from a random number generator. <a href="#a0d8a4dea060c0a37cdb51b1b3ac20591">More...</a><br /></td></tr>
<tr class="separator:a0d8a4dea060c0a37cdb51b1b3ac20591"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba50c9234f8f7538cb3521cc5f95214b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aba50c9234f8f7538cb3521cc5f95214b">BIG_528_60_randomnum</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n, <a class="el" href="structcsprng.html">csprng</a> *r)</td></tr>
<tr class="memdesc:aba50c9234f8f7538cb3521cc5f95214b"><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="#aba50c9234f8f7538cb3521cc5f95214b">More...</a><br /></td></tr>
<tr class="separator:aba50c9234f8f7538cb3521cc5f95214b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3bb3641e46ea5c8e65382c1c592ca14"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#ae3bb3641e46ea5c8e65382c1c592ca14">BIG_528_60_modmul</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> z, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n)</td></tr>
<tr class="memdesc:ae3bb3641e46ea5c8e65382c1c592ca14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y*z mod n. <a href="#ae3bb3641e46ea5c8e65382c1c592ca14">More...</a><br /></td></tr>
<tr class="separator:ae3bb3641e46ea5c8e65382c1c592ca14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a685960b4c34cadec7e2463562863cdc7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a685960b4c34cadec7e2463562863cdc7">BIG_528_60_moddiv</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> z, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n)</td></tr>
<tr class="memdesc:a685960b4c34cadec7e2463562863cdc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y/z mod n. <a href="#a685960b4c34cadec7e2463562863cdc7">More...</a><br /></td></tr>
<tr class="separator:a685960b4c34cadec7e2463562863cdc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9503e5aac5e601d8d8c30aea8f06517"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#af9503e5aac5e601d8d8c30aea8f06517">BIG_528_60_modsqr</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n)</td></tr>
<tr class="memdesc:af9503e5aac5e601d8d8c30aea8f06517"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=y^2 mod n. <a href="#af9503e5aac5e601d8d8c30aea8f06517">More...</a><br /></td></tr>
<tr class="separator:af9503e5aac5e601d8d8c30aea8f06517"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e2d51227feb088c1bceeb5393ac49b1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a0e2d51227feb088c1bceeb5393ac49b1">BIG_528_60_modneg</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n)</td></tr>
<tr class="memdesc:a0e2d51227feb088c1bceeb5393ac49b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=-y mod n. <a href="#a0e2d51227feb088c1bceeb5393ac49b1">More...</a><br /></td></tr>
<tr class="separator:a0e2d51227feb088c1bceeb5393ac49b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee92758a1cbe733b7b3ed65cc8abaf5b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aee92758a1cbe733b7b3ed65cc8abaf5b">BIG_528_60_jacobi</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y)</td></tr>
<tr class="memdesc:aee92758a1cbe733b7b3ed65cc8abaf5b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate jacobi Symbol (x/y) <a href="#aee92758a1cbe733b7b3ed65cc8abaf5b">More...</a><br /></td></tr>
<tr class="separator:aee92758a1cbe733b7b3ed65cc8abaf5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a512117e6a7ea73a58b0a9b204edda624"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a512117e6a7ea73a58b0a9b204edda624">BIG_528_60_invmodp</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> y, <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> n)</td></tr>
<tr class="memdesc:a512117e6a7ea73a58b0a9b204edda624"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=1/y mod n. <a href="#a512117e6a7ea73a58b0a9b204edda624">More...</a><br /></td></tr>
<tr class="separator:a512117e6a7ea73a58b0a9b204edda624"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3c79d99bca7bb9cca3aa2f9a5f33563"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#aa3c79d99bca7bb9cca3aa2f9a5f33563">BIG_528_60_mod2m</a> (<a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a> x, int m)</td></tr>
<tr class="memdesc:aa3c79d99bca7bb9cca3aa2f9a5f33563"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#aa3c79d99bca7bb9cca3aa2f9a5f33563">More...</a><br /></td></tr>
<tr class="separator:aa3c79d99bca7bb9cca3aa2f9a5f33563"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40eeadc526e62ca44e7e3046ce56162e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="big__528__60_8h.html#a40eeadc526e62ca44e7e3046ce56162e">BIG_528_60_dmod2m</a> (<a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a> x, int m)</td></tr>
<tr class="memdesc:a40eeadc526e62ca44e7e3046ce56162e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate x=x mod 2^m. <a href="#a40eeadc526e62ca44e7e3046ce56162e">More...</a><br /></td></tr>
<tr class="separator:a40eeadc526e62ca44e7e3046ce56162e"><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="ab23dce98483079baad467cb7d98d8edf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab23dce98483079baad467cb7d98d8edf">&#9670;&nbsp;</a></span>BIGBITS_528_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BIGBITS_528_60&#160;&#160;&#160;(8*<a class="el" href="config__big__528__60_8h.html#a49e3aed3f2be5bc29bf59dc49c05cd6d">MODBYTES_528_60</a>)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Length in bits </p>
</div>
</div>
<a id="ad67156ea1cc03f212979c7ed75eb7a63"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad67156ea1cc03f212979c7ed75eb7a63">&#9670;&nbsp;</a></span>BMASK_528_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BMASK_528_60&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="config__big__528__60_8h.html#a91a5c5bbb41eb7c762fe1037781fd0ad">BASEBITS_528_60</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^BASEBITS-1 </p>
</div>
</div>
<a id="aec5c7cddc7c36740b0be3af25e3027e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec5c7cddc7c36740b0be3af25e3027e3">&#9670;&nbsp;</a></span>DNLEN_528_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DNLEN_528_60&#160;&#160;&#160;2*<a class="el" href="big__528__60_8h.html#a8102cf5b999d22700d2207896a2fcb07">NLEN_528_60</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Double length in bytes </p>
</div>
</div>
<a id="a68dfa3c0a4a228a1aaa5fb4457eda3ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68dfa3c0a4a228a1aaa5fb4457eda3ed">&#9670;&nbsp;</a></span>HBITS_528_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HBITS_528_60&#160;&#160;&#160;(<a class="el" href="config__big__528__60_8h.html#a91a5c5bbb41eb7c762fe1037781fd0ad">BASEBITS_528_60</a>/2)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Number of bits in number base divided by 2 </p>
</div>
</div>
<a id="a980ed86f744ab07fa9a935985e1c1b8c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a980ed86f744ab07fa9a935985e1c1b8c">&#9670;&nbsp;</a></span>HMASK_528_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HMASK_528_60&#160;&#160;&#160;(((<a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>)1&lt;&lt;<a class="el" href="big__528__60_8h.html#a68dfa3c0a4a228a1aaa5fb4457eda3ed">HBITS_528_60</a>)-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Mask = 2^HBITS-1 </p>
</div>
</div>
<a id="acd57cc9b3fb3e357ef8e50b6c7210c07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd57cc9b3fb3e357ef8e50b6c7210c07">&#9670;&nbsp;</a></span>NEXCESS_528_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NEXCESS_528_60&#160;&#160;&#160;(1&lt;&lt;(<a class="el" href="arch_8h.html#a25022864dfc8ec428e7128282e57b136">CHUNK</a>-<a class="el" href="config__big__528__60_8h.html#a91a5c5bbb41eb7c762fe1037781fd0ad">BASEBITS_528_60</a>-1))</td>
</tr>
</table>
</div><div class="memdoc">
<p>2^(CHUNK-BASEBITS-1) - digit cannot be multiplied by more than this before normalisation </p>
</div>
</div>
<a id="a8102cf5b999d22700d2207896a2fcb07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8102cf5b999d22700d2207896a2fcb07">&#9670;&nbsp;</a></span>NLEN_528_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define NLEN_528_60&#160;&#160;&#160;(1+((8*<a class="el" href="config__big__528__60_8h.html#a49e3aed3f2be5bc29bf59dc49c05cd6d">MODBYTES_528_60</a>-1)/<a class="el" href="config__big__528__60_8h.html#a91a5c5bbb41eb7c762fe1037781fd0ad">BASEBITS_528_60</a>))</td>
</tr>
</table>
</div><div class="memdoc">
<p>length in bytes </p>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a8354e859d13f81a1282d413ad9a00f45"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8354e859d13f81a1282d413ad9a00f45">&#9670;&nbsp;</a></span>BIG_528_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_528_60[<a class="el" href="big__528__60_8h.html#a8102cf5b999d22700d2207896a2fcb07">NLEN_528_60</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type BIG as array of chunks </p>
</div>
</div>
<a id="a098a5686344d9db2f135c845fc9c83c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a098a5686344d9db2f135c845fc9c83c0">&#9670;&nbsp;</a></span>DBIG_528_60</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef <a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> DBIG_528_60[<a class="el" href="big__528__60_8h.html#aec5c7cddc7c36740b0be3af25e3027e3">DNLEN_528_60</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>Define type DBIG as array of chunks </p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a2cf3a406c08eac4a7f60cb209eb032ab"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cf3a406c08eac4a7f60cb209eb032ab">&#9670;&nbsp;</a></span>BIG_528_60_add()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_add </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, sum of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a1aaca83012b7812f50e16092f344c719"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1aaca83012b7812f50e16092f344c719">&#9670;&nbsp;</a></span>BIG_528_60_bit()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_bit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>the bit of x to be returned </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 or 1 </dd></dl>
</div>
</div>
<a id="adccc6fb715a79eb25fb57c3065850ad1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adccc6fb715a79eb25fb57c3065850ad1">&#9670;&nbsp;</a></span>BIG_528_60_cmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_cmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Conditionally copies second parameter to the first (without branching) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
<tr><td class="paramname">y</td><td>another BIG number </td></tr>
<tr><td class="paramname">s</td><td>copy takes place if not equal to 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a2c1ab9bb6047106e53617e8a718ee942"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c1ab9bb6047106e53617e8a718ee942">&#9670;&nbsp;</a></span>BIG_528_60_comp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_comp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>first BIG number to be compared </td></tr>
<tr><td class="paramname">y</td><td>second BIG number to be compared </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>-1 is x&lt;y, 0 if x=y, 1 if x&gt;y </dd></dl>
</div>
</div>
<a id="a74bdf356863c916fe2538d1c86fe718e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a74bdf356863c916fe2538d1c86fe718e">&#9670;&nbsp;</a></span>BIG_528_60_copy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_copy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a2bcbc90c5bc550df435c5d370c8ea6b3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2bcbc90c5bc550df435c5d370c8ea6b3">&#9670;&nbsp;</a></span>BIG_528_60_cswap()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_cswap </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Conditionally swaps parameters in constant time (without branching) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
<tr><td class="paramname">y</td><td>another BIG number </td></tr>
<tr><td class="paramname">s</td><td>swap takes place if not equal to 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ac19e357a0ee4160210709ceae20fd13a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac19e357a0ee4160210709ceae20fd13a">&#9670;&nbsp;</a></span>BIG_528_60_dadd()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dadd </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, sum of other two - output not normalised </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">z</td><td>DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a3957eaba67b5067f34e2c6f46fef9f01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3957eaba67b5067f34e2c6f46fef9f01">&#9670;&nbsp;</a></span>BIG_528_60_dcmove()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dcmove </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Conditionally copies second parameter to the first (without branching) </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a DBIG number </td></tr>
<tr><td class="paramname">y</td><td>another DBIG number </td></tr>
<tr><td class="paramname">s</td><td>copy takes place if not equal to 0 </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aa351c44c9f8678171158e7c54eafb371"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa351c44c9f8678171158e7c54eafb371">&#9670;&nbsp;</a></span>BIG_528_60_dcomp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_dcomp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>first DBIG number to be compared </td></tr>
<tr><td class="paramname">y</td><td>second DBIG number to be compared </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>-1 is x&lt;y, 0 if x=y, 1 if x&gt;y </dd></dl>
</div>
</div>
<a id="a4c930b804cf2dce72ce1c0e36afcce45"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c930b804cf2dce72ce1c0e36afcce45">&#9670;&nbsp;</a></span>BIG_528_60_dcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">y</td><td>DBIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aa57327c0f5a5657dcf57e240e4c6fc96"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa57327c0f5a5657dcf57e240e4c6fc96">&#9670;&nbsp;</a></span>BIG_528_60_ddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_ddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used. y is destroyed. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y/n </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">n</td><td>Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae3d4bee0c0f6a6a2f0fefd155ff86386"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3d4bee0c0f6a6a2f0fefd155ff86386">&#9670;&nbsp;</a></span>BIG_528_60_dec()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dec </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be decremented </td></tr>
<tr><td class="paramname">i</td><td>integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a976bb4f31e23e3af5647b811c0169c8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a976bb4f31e23e3af5647b811c0169c8e">&#9670;&nbsp;</a></span>BIG_528_60_dfromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dfromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">a</td><td>byte array </td></tr>
<tr><td class="paramname">s</td><td>byte array length </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aff238fd209e48e640ebd27b4b4cd099d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff238fd209e48e640ebd27b4b4cd099d">&#9670;&nbsp;</a></span>BIG_528_60_diszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_diszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a DBIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if zero, else returns 0 </dd></dl>
</div>
</div>
<a id="ade9dfe82ec2d33754650650d1d639e7f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade9dfe82ec2d33754650650d1d639e7f">&#9670;&nbsp;</a></span>BIG_528_60_div3()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_div3 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Remainder </dd></dl>
</div>
</div>
<a id="a70d1aafa945f2eaf7ccbc90b630f68a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a70d1aafa945f2eaf7ccbc90b630f68a7">&#9670;&nbsp;</a></span>BIG_528_60_dmod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dmod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used. y is destroyed. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y mod n </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">n</td><td>Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a40eeadc526e62ca44e7e3046ce56162e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40eeadc526e62ca44e7e3046ce56162e">&#9670;&nbsp;</a></span>BIG_528_60_dmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Truncation </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, on reduced mod 2^m </td></tr>
<tr><td class="paramname">m</td><td>new truncated size </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae6b13bb21e5076ea57b4fd81403ecea2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6b13bb21e5076ea57b4fd81403ecea2">&#9670;&nbsp;</a></span>BIG_528_60_dnbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_dnbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bits in x </dd></dl>
</div>
</div>
<a id="a0d58fea19575ff26b33eb4a528397f37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d58fea19575ff26b33eb4a528397f37">&#9670;&nbsp;</a></span>BIG_528_60_dnorm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dnorm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>All digits of the input DBIG are reduced mod 2^BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be normalised </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a4c6a1c7f682e72d5060c22023646b3d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c6a1c7f682e72d5060c22023646b3d6">&#9670;&nbsp;</a></span>BIG_528_60_doutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_doutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a67ee719969fa5c88c0cc057075d166be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67ee719969fa5c88c0cc057075d166be">&#9670;&nbsp;</a></span>BIG_528_60_drawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_drawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ac0adb2a7cb33157a2892edc9ef6f3fac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0adb2a7cb33157a2892edc9ef6f3fac">&#9670;&nbsp;</a></span>BIG_528_60_dscopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dscopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="acd22bb716d27cb98684b7637b6c08a52"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd22bb716d27cb98684b7637b6c08a52">&#9670;&nbsp;</a></span>BIG_528_60_dshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a824eeb9876ce30bbb8ad7d5b1f7b3d2d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a824eeb9876ce30bbb8ad7d5b1f7b3d2d">&#9670;&nbsp;</a></span>BIG_528_60_dshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a41d31b72e48817a68641ba050f81a798"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41d31b72e48817a68641ba050f81a798">&#9670;&nbsp;</a></span>BIG_528_60_dsub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dsub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, difference of other two - output not normalised </td></tr>
<tr><td class="paramname">y</td><td>DBIG number </td></tr>
<tr><td class="paramname">z</td><td>DBIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aba9bcbacf3bcd0b59ddcee16d40e1008"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba9bcbacf3bcd0b59ddcee16d40e1008">&#9670;&nbsp;</a></span>BIG_528_60_dsucopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dsucopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a588b075709147356f22a6a0852ef2ef5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a588b075709147356f22a6a0852ef2ef5">&#9670;&nbsp;</a></span>BIG_528_60_dzero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_dzero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number to be set to zero </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a3b0db7a38d3eebd1bd95caba13b2a20c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3b0db7a38d3eebd1bd95caba13b2a20c">&#9670;&nbsp;</a></span>BIG_528_60_fromBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_fromBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">a</td><td>byte array </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af07e721818ad5628182e27fed1305de7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af07e721818ad5628182e27fed1305de7">&#9670;&nbsp;</a></span>BIG_528_60_fromBytesLen()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_fromBytesLen </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">a</td><td>byte array </td></tr>
<tr><td class="paramname">s</td><td>byte array length </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ade18a9e3fa4228fa38fec165eb5f7b9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade18a9e3fa4228fa38fec165eb5f7b9c">&#9670;&nbsp;</a></span>BIG_528_60_fshl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_fshl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The number of bits to be shifted must be less than BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Overflow bits </dd></dl>
</div>
</div>
<a id="ab581aaabf3f679fbd79b62924003ed94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab581aaabf3f679fbd79b62924003ed94">&#9670;&nbsp;</a></span>BIG_528_60_fshr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_fshr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The number of bits to be shifted must be less than BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Shifted out bits </dd></dl>
</div>
</div>
<a id="a437761d0149ea3ac18dd5790504d8d05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a437761d0149ea3ac18dd5790504d8d05">&#9670;&nbsp;</a></span>BIG_528_60_imul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_imul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>small integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab538407c81f981ef61fb5a9542daa811"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab538407c81f981ef61fb5a9542daa811">&#9670;&nbsp;</a></span>BIG_528_60_inc()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_inc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be incremented </td></tr>
<tr><td class="paramname">i</td><td>integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a89efcca64d0079585a0a0b0df6ac2b59"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89efcca64d0079585a0a0b0df6ac2b59">&#9670;&nbsp;</a></span>BIG_528_60_invmod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_invmod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be inverted </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a512117e6a7ea73a58b0a9b204edda624"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a512117e6a7ea73a58b0a9b204edda624">&#9670;&nbsp;</a></span>BIG_528_60_invmodp()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_invmodp </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Modular Inversion - This is slow. Uses binary method. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = 1/y mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a4a97711862b1cc33244171637681de99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a97711862b1cc33244171637681de99">&#9670;&nbsp;</a></span>BIG_528_60_isunity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_isunity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if one, else returns 0 </dd></dl>
</div>
</div>
<a id="a42fdaa52bc19aa6fca2e1eccfb386878"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42fdaa52bc19aa6fca2e1eccfb386878">&#9670;&nbsp;</a></span>BIG_528_60_iszilch()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_iszilch </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>1 if zero, else returns 0 </dd></dl>
</div>
</div>
<a id="aee92758a1cbe733b7b3ed65cc8abaf5b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee92758a1cbe733b7b3ed65cc8abaf5b">&#9670;&nbsp;</a></span>BIG_528_60_jacobi()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_jacobi </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Jacobi symbol, -1,0 or 1 </dd></dl>
</div>
</div>
<a id="a5fb2154ac604877876cda256ea4ff4ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5fb2154ac604877876cda256ea4ff4ef">&#9670;&nbsp;</a></span>BIG_528_60_lastbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_lastbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>number of bits to return. Assumed to be less than BASEBITS. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>least significant n bits as an integer </dd></dl>
</div>
</div>
<a id="a2b7007019f1c0b8884f04e47610b5440"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2b7007019f1c0b8884f04e47610b5440">&#9670;&nbsp;</a></span>BIG_528_60_mod()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_mod </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be reduced mod n </td></tr>
<tr><td class="paramname">n</td><td>The modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aa3c79d99bca7bb9cca3aa2f9a5f33563"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3c79d99bca7bb9cca3aa2f9a5f33563">&#9670;&nbsp;</a></span>BIG_528_60_mod2m()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_mod2m </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Truncation </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on reduced mod 2^m </td></tr>
<tr><td class="paramname">m</td><td>new truncated size </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a685960b4c34cadec7e2463562863cdc7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a685960b4c34cadec7e2463562863cdc7">&#9670;&nbsp;</a></span>BIG_528_60_moddiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_moddiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow method for modular division </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y/z mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae3bb3641e46ea5c8e65382c1c592ca14"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3bb3641e46ea5c8e65382c1c592ca14">&#9670;&nbsp;</a></span>BIG_528_60_modmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_modmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>brief return NAF (Non-Adjacent-Form) value as +/- 1, 3 or 5, inputs must be normalised</p>
<p>Given x and 3*x extracts NAF value from given bit position, and returns number of bits processed, and number of trailing zeros detected if any param x BIG number param x3 BIG number, three times x param i bit position param nbs pointer to integer returning number of bits processed param nzs pointer to integer returning number of trailing 0s return + or - 1, 3 or 5Slow method for modular multiplication </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y*z mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a0e2d51227feb088c1bceeb5393ac49b1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0e2d51227feb088c1bceeb5393ac49b1">&#9670;&nbsp;</a></span>BIG_528_60_modneg()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_modneg </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Modular negation </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = -y mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af9503e5aac5e601d8d8c30aea8f06517"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9503e5aac5e601d8d8c30aea8f06517">&#9670;&nbsp;</a></span>BIG_528_60_modsqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_modsqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow method for modular squaring </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit = y^2 mod n </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">n</td><td>The BIG Modulus </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="afed23506e5438bc4bcd4e5af291336ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afed23506e5438bc4bcd4e5af291336ec">&#9670;&nbsp;</a></span>BIG_528_60_monty()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_monty </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>md</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a>&#160;</td>
<td class="paramname"><em>MC</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>d</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td>BIG number, reduction of a BIG </td></tr>
<tr><td class="paramname">md</td><td>BIG number, the modulus </td></tr>
<tr><td class="paramname">MC</td><td>the Montgomery Constant </td></tr>
<tr><td class="paramname">d</td><td>DBIG number to be reduced </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a85c6445b4894c6a920cb3b6cc3cc8aca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85c6445b4894c6a920cb3b6cc3cc8aca">&#9670;&nbsp;</a></span>BIG_528_60_mul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_mul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab2ad1bb8fbec376e05c5d6a5bbe0852f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab2ad1bb8fbec376e05c5d6a5bbe0852f">&#9670;&nbsp;</a></span>BIG_528_60_nbits()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_nbits </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Number of bits in x </dd></dl>
</div>
</div>
<a id="adc9ee9ea4f146c1c456f796cbfcaac74"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc9ee9ea4f146c1c456f796cbfcaac74">&#9670;&nbsp;</a></span>BIG_528_60_norm()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_528_60_norm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>All digits of the input BIG are reduced mod 2^BASEBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be normalised </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af20784804ae73ef0b636642f443ac9f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af20784804ae73ef0b636642f443ac9f2">&#9670;&nbsp;</a></span>BIG_528_60_one()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_one </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be set to one. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af8bbe7fe34b4b090ddc002a774d3d5dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af8bbe7fe34b4b090ddc002a774d3d5dc">&#9670;&nbsp;</a></span>BIG_528_60_or()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_or </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, or of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a9c715e1791d1b6d81c6ddb5028a6cd28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c715e1791d1b6d81c6ddb5028a6cd28">&#9670;&nbsp;</a></span>BIG_528_60_output()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_output </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a6dd760b3465e82ce1c3e17bc900b4d42"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6dd760b3465e82ce1c3e17bc900b4d42">&#9670;&nbsp;</a></span>BIG_528_60_parity()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_parity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>0 or 1 </dd></dl>
</div>
</div>
<a id="a38d5b3e59388ca394dea367bfb67657e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a38d5b3e59388ca394dea367bfb67657e">&#9670;&nbsp;</a></span>BIG_528_60_pmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_528_60_pmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>small integer </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Overflowing bits </dd></dl>
</div>
</div>
<a id="a6be57efef61770e617565f9604e4c938"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6be57efef61770e617565f9604e4c938">&#9670;&nbsp;</a></span>BIG_528_60_pxmul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_pxmul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>i</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">i</td><td>small integer </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a0d8a4dea060c0a37cdb51b1b3ac20591"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d8a4dea060c0a37cdb51b1b3ac20591">&#9670;&nbsp;</a></span>BIG_528_60_random()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_random </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structcsprng.html">csprng</a> *&#160;</td>
<td class="paramname"><em>r</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Assumes that the random number generator has been suitably initialised </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit a random number </td></tr>
<tr><td class="paramname">r</td><td>A pointer to a Cryptographically Secure Random Number Generator </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aba50c9234f8f7538cb3521cc5f95214b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba50c9234f8f7538cb3521cc5f95214b">&#9670;&nbsp;</a></span>BIG_528_60_randomnum()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_randomnum </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="structcsprng.html">csprng</a> *&#160;</td>
<td class="paramname"><em>r</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Assumes that the random number generator has been suitably initialised </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, on exit a random number </td></tr>
<tr><td class="paramname">n</td><td>The modulus </td></tr>
<tr><td class="paramname">r</td><td>A pointer to a Cryptographically Secure Random Number Generator </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a29dc0ff3231d7378219f1a03b8fd6874"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29dc0ff3231d7378219f1a03b8fd6874">&#9670;&nbsp;</a></span>BIG_528_60_rawoutput()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_rawoutput </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>a BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad1b8c06add5d034db6349b47c69ca959"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1b8c06add5d034db6349b47c69ca959">&#9670;&nbsp;</a></span>BIG_528_60_rcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_rcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>BIG number in ROM </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aa72c8b28dd0266fb198a381f81ad983d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa72c8b28dd0266fb198a381f81ad983d">&#9670;&nbsp;</a></span>BIG_528_60_sdcopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_sdcopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>DBIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ac5e83598d71dc543224c291907ccdbda"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5e83598d71dc543224c291907ccdbda">&#9670;&nbsp;</a></span>BIG_528_60_sdiv()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_sdiv </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>n</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Slow but rarely used </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be divided by n </td></tr>
<tr><td class="paramname">n</td><td>The Divisor </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab49866685a868acc706e3046069549ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab49866685a868acc706e3046069549ec">&#9670;&nbsp;</a></span>BIG_528_60_sducopy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_sducopy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number </td></tr>
<tr><td class="paramname">y</td><td>DBIG number to be copied </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a1eaf5799f2598d757be200b3e74e1a19"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1eaf5799f2598d757be200b3e74e1a19">&#9670;&nbsp;</a></span>BIG_528_60_shl()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_shl </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="abef734408d3554c0c7339426d209ead7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abef734408d3554c0c7339426d209ead7">&#9670;&nbsp;</a></span>BIG_528_60_shr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_shr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be shifted </td></tr>
<tr><td class="paramname">s</td><td>Number of bits to shift </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af3ef59790363f51106380370dc37a706"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3ef59790363f51106380370dc37a706">&#9670;&nbsp;</a></span>BIG_528_60_smul()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_smul </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Note that the product must fit into a BIG, and x must be distinct from y and z </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, product of other two </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a00690db44ca9b2f88aa085e18f9560c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a00690db44ca9b2f88aa085e18f9560c7">&#9670;&nbsp;</a></span>BIG_528_60_split()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="arch_8h.html#a0dd4b8ab353c587b22c6acb0809323aa">chunk</a> BIG_528_60_split </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>s</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Internal function. The value of s must be approximately in the middle of the DBIG. Typically used to extract z mod 2^MODBITS and z/2^MODBITS </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, top half of z </td></tr>
<tr><td class="paramname">y</td><td>BIG number, bottom half of z </td></tr>
<tr><td class="paramname">z</td><td>DBIG number to be split in two. </td></tr>
<tr><td class="paramname">s</td><td>Bit position at which to split </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>carry-out from top half </dd></dl>
</div>
</div>
<a id="aa7eccd1556fbc607020672682b24a3d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa7eccd1556fbc607020672682b24a3d8">&#9670;&nbsp;</a></span>BIG_528_60_sqr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_sqr </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a098a5686344d9db2f135c845fc9c83c0">DBIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>DBIG number, square of a BIG </td></tr>
<tr><td class="paramname">y</td><td>BIG number to be squared </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a72fb6579daef8d9835237d34395dde1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72fb6579daef8d9835237d34395dde1f">&#9670;&nbsp;</a></span>BIG_528_60_ssn()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int BIG_528_60_ssn </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>r</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>m</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">r</td><td>BIG number normalised output </td></tr>
<tr><td class="paramname">a</td><td>BIG number to be subtracted from </td></tr>
<tr><td class="paramname">m</td><td>BIG number to be shifted and subtracted </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>sign of r </dd></dl>
</div>
</div>
<a id="a66d8cba96f29d745eac30096f681af08"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a66d8cba96f29d745eac30096f681af08">&#9670;&nbsp;</a></span>BIG_528_60_sub()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_sub </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number, difference of other two - output not normalised </td></tr>
<tr><td class="paramname">y</td><td>BIG number </td></tr>
<tr><td class="paramname">z</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad4fc31837dd06b0c2e06b5eef3d8d1bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad4fc31837dd06b0c2e06b5eef3d8d1bf">&#9670;&nbsp;</a></span>BIG_528_60_toBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_toBytes </td>
<td>(</td>
<td class="paramtype">char *&#160;</td>
<td class="paramname"><em>a</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td>byte array </td></tr>
<tr><td class="paramname">x</td><td>BIG number </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ab27955873faca327f00f59d01f0fd316"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab27955873faca327f00f59d01f0fd316">&#9670;&nbsp;</a></span>BIG_528_60_zero()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void BIG_528_60_zero </td>
<td>(</td>
<td class="paramtype"><a class="el" href="big__528__60_8h.html#a8354e859d13f81a1282d413ad9a00f45">BIG_528_60</a>&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>BIG number to be set to zero </td></tr>
</table>
</dd>
</dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>