Zeth - Zerocash on Ethereum  0.8
Reference implementation of the Zeth protocol by Clearmatics
evaluator_from_lagrange.hpp
Go to the documentation of this file.
1 // Copyright (c) 2015-2022 Clearmatics Technologies Ltd
2 //
3 // SPDX-License-Identifier: LGPL-3.0+
4 
5 #ifndef __ZETH_CORE_EVALUATOR_FROM_LAGRANGE_HPP__
6 #define __ZETH_CORE_EVALUATOR_FROM_LAGRANGE_HPP__
7 
9 
10 #include <map>
11 
12 namespace libzeth
13 {
14 
19 template<typename ppT, typename GroupT> class evaluator_from_lagrange
20 {
21 private:
22  const std::vector<GroupT> &powers;
23  libfqfft::evaluation_domain<libff::Fr<ppT>> &domain;
24 
25 public:
27  const std::vector<GroupT> &powers,
28  libfqfft::evaluation_domain<libff::Fr<ppT>> &domain);
29 
31  const std::map<size_t, libff::Fr<ppT>> &lagrange_factors);
32 };
33 
34 } // namespace libzeth
35 
37 
38 #endif // __ZETH_CORE_EVALUATOR_FROM_LAGRANGE_HPP__
libzeth::evaluator_from_lagrange
Definition: evaluator_from_lagrange.hpp:19
libzeth
Definition: binary_operation.hpp:15
libzeth::evaluator_from_lagrange::evaluate_from_lagrange_factors
GroupT evaluate_from_lagrange_factors(const std::map< size_t, libff::Fr< ppT >> &lagrange_factors)
libzeth::evaluator_from_lagrange::evaluator_from_lagrange
evaluator_from_lagrange(const std::vector< GroupT > &powers, libfqfft::evaluation_domain< libff::Fr< ppT >> &domain)
evaluator_from_lagrange.tcc
include_libsnark.hpp