Clearmatics Libsnark
0.1
C++ library for zkSNARK proofs
libsnark
common
routing_algorithms
benes_routing_algorithm.hpp
Go to the documentation of this file.
1
25
#ifndef BENES_ROUTING_ALGORITHM_HPP_
26
#define BENES_ROUTING_ALGORITHM_HPP_
27
28
#include <libff/common/utils.hpp>
29
#include <
libsnark/common/data_structures/integer_permutation.hpp
>
30
#include <vector>
31
32
namespace
libsnark
33
{
34
51
typedef
std::vector<std::vector<std::pair<size_t, size_t>>>
benes_topology
;
52
61
typedef
std::vector<libff::bit_vector>
benes_routing
;
62
73
size_t
benes_num_columns
(
const
size_t
num_packets);
74
80
benes_topology
generate_benes_topology
(
const
size_t
num_packets);
81
85
benes_routing
get_benes_routing
(
const
integer_permutation
&permutation);
86
90
bool
valid_benes_routing
(
91
const
integer_permutation
&permutation,
const
benes_routing
&routing);
92
93
}
// namespace libsnark
94
95
#endif // BENES_ROUTING_ALGORITHM_HPP_
libsnark
Definition:
accumulation_vector.hpp:18
libsnark::benes_topology
std::vector< std::vector< std::pair< size_t, size_t > > > benes_topology
Definition:
benes_routing_algorithm.hpp:51
integer_permutation.hpp
libsnark::valid_benes_routing
bool valid_benes_routing(const integer_permutation &permutation, const benes_routing &routing)
Definition:
benes_routing_algorithm.cpp:368
libsnark::benes_routing
std::vector< libff::bit_vector > benes_routing
Definition:
benes_routing_algorithm.hpp:61
libsnark::benes_num_columns
size_t benes_num_columns(const size_t num_packets)
Definition:
benes_routing_algorithm.cpp:136
libsnark::integer_permutation
Definition:
integer_permutation.hpp:22
libsnark::get_benes_routing
benes_routing get_benes_routing(const integer_permutation &permutation)
Definition:
benes_routing_algorithm.cpp:320
libsnark::generate_benes_topology
benes_topology generate_benes_topology(const size_t num_packets)
Definition:
benes_routing_algorithm.cpp:144
Generated on Wed Jan 25 2023 11:05:57 for Clearmatics Libsnark by
1.8.17