Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
profile_tbcs_ppzksnark.cpp
Go to the documentation of this file.
1 
19 #include <cstdio>
20 #include <libff/common/profiling.hpp>
21 #include <libff/common/utils.hpp>
25 
26 using namespace libsnark;
27 
28 int main(int argc, const char *argv[])
29 {
30  default_tbcs_ppzksnark_pp::init_public_params();
31  libff::start_profiling();
32 
33  if (argc == 2 && strcmp(argv[1], "-v") == 0) {
34  libff::print_compilation_info();
35  return 0;
36  }
37 
38  if (argc != 3) {
39  printf("usage: %s num_gates primary_input_size\n", argv[0]);
40  return 1;
41  }
42  const int num_gates = atoi(argv[1]);
43  int primary_input_size = atoi(argv[2]);
44 
45  const size_t auxiliary_input_size = 0;
46  const size_t num_outputs = num_gates / 2;
47 
48  libff::enter_block("Generate TBCS example");
50  primary_input_size, auxiliary_input_size, num_gates, num_outputs);
51  libff::leave_block("Generate TBCS example");
52 
53  libff::print_header("(enter) Profile TBCS ppzkSNARK");
54  const bool test_serialization = true;
55  run_tbcs_ppzksnark<default_tbcs_ppzksnark_pp>(example, test_serialization);
56  libff::print_header("(leave) Profile TBCS ppzkSNARK");
57 }
tbcs_ppzksnark_pp.hpp
libsnark
Definition: accumulation_vector.hpp:18
main
int main(int argc, const char *argv[])
Definition: profile_tbcs_ppzksnark.cpp:28
libsnark::generate_tbcs_example
tbcs_example generate_tbcs_example(const size_t primary_input_size, const size_t auxiliary_input_size, const size_t num_gates, const size_t num_outputs)
Definition: tbcs_examples.cpp:22
run_tbcs_ppzksnark.hpp
tbcs_examples.hpp
libsnark::tbcs_example
Definition: tbcs_examples.hpp:25