43 GTEST_SKIP() <<
"Skipping slow test";
46 NativeProofResult proof_result = create_proof_and_vk();
47 auto [proof, verification_key, public_inputs_cols] = proof_result;
49 Verifier verifier(verification_key);
51 const bool verified = verifier.verify_proof(proof, public_inputs_cols);
53 ASSERT_TRUE(verified) <<
"native proof verification failed";
59 GTEST_SKIP() <<
"Skipping slow test";
62 NativeProofResult proof_result = create_proof_and_vk();
63 auto [proof, verification_key, public_inputs_cols] = proof_result;
64 auto verify_with_corrupt_pi_col = [&](
size_t col_idx) {
65 public_inputs_cols[col_idx][5] +=
FF::one();
66 Verifier verifier(verification_key);
67 const bool verified = verifier.verify_proof(proof, public_inputs_cols);
68 ASSERT_FALSE(verified)
69 <<
"native proof verification succeeded, but should have failed due to corruption of public inputs col "
71 public_inputs_cols[col_idx][5] -=
FF::one();
73 for (
size_t col_idx = 0; col_idx < 4; col_idx++) {
74 verify_with_corrupt_pi_col(col_idx);
76 Verifier verifier(verification_key);
77 const bool verified = verifier.verify_proof(proof, public_inputs_cols);
78 ASSERT_TRUE(verified) <<
"native proof verification failed, but should have succeeded";