]> Git Repo - VerusCoin.git/blob - src/snark/libsnark/algebra/exponentiation/exponentiation.hpp
a8a2c925cbfded97445586fee0c13d9f4f2d11fa
[VerusCoin.git] / src / snark / libsnark / algebra / exponentiation / exponentiation.hpp
1 /** @file
2  *****************************************************************************
3
4  Declaration of interfaces for (square-and-multiply) exponentiation.
5
6  *****************************************************************************
7  * @author     This file is part of libsnark, developed by SCIPR Lab
8  *             and contributors (see AUTHORS).
9  * @copyright  MIT license (see LICENSE file)
10  *****************************************************************************/
11
12 #ifndef EXPONENTIATION_HPP_
13 #define EXPONENTIATION_HPP_
14
15 #include <cstdint>
16
17 #include "algebra/fields/bigint.hpp"
18
19 namespace libsnark {
20
21 template<typename FieldT, mp_size_t m>
22 FieldT power(const FieldT &base, const bigint<m> &exponent);
23
24 template<typename FieldT>
25 FieldT power(const FieldT &base, const unsigned long exponent);
26
27 } // libsnark
28
29 #include "algebra/exponentiation/exponentiation.tcc"
30
31 #endif // EXPONENTIATION_HPP_
This page took 0.016041 seconds and 2 git commands to generate.