Skip to content

Commit 16cdd8d

Browse files
committed
fix sumcheck transcript-config copied instead of moved
1 parent 0b28dfa commit 16cdd8d

File tree

6 files changed

+17
-12
lines changed

6 files changed

+17
-12
lines changed

icicle/backend/cpu/include/cpu_sumcheck.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ namespace icicle {
2222
const uint64_t mle_polynomial_size,
2323
const F& claimed_sum,
2424
const CombineFunction<F>& combine_function,
25-
const SumcheckTranscriptConfig<F>&& transcript_config,
25+
SumcheckTranscriptConfig<F>&& transcript_config,
2626
const SumcheckConfig& sumcheck_config,
2727
SumcheckProof<F>& sumcheck_proof /*out*/) override
2828
{

icicle/include/icicle/backend/sumcheck_backend.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ namespace icicle {
4949
const uint64_t mle_polynomial_size,
5050
const F& claimed_sum,
5151
const CombineFunction<F>& combine_function,
52-
const SumcheckTranscriptConfig<F>&& transcript_config,
52+
SumcheckTranscriptConfig<F>&& transcript_config,
5353
const SumcheckConfig& sumcheck_config,
5454
SumcheckProof<F>& sumcheck_proof /*out*/) = 0;
5555
};

icicle/include/icicle/sumcheck/sumcheck.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ namespace icicle {
5757
const uint64_t mle_polynomial_size,
5858
const F& claimed_sum,
5959
const CombineFunction<F>& combine_function,
60-
const SumcheckTranscriptConfig<F>&& transcript_config,
60+
SumcheckTranscriptConfig<F>&& transcript_config,
6161
const SumcheckConfig& sumcheck_config,
6262
SumcheckProof<F>& sumcheck_proof /*out*/) const
6363
{
@@ -77,7 +77,7 @@ namespace icicle {
7777
eIcicleError verify(
7878
const SumcheckProof<F>& sumcheck_proof,
7979
const F& claimed_sum,
80-
const SumcheckTranscriptConfig<F>&& transcript_config,
80+
SumcheckTranscriptConfig<F>&& transcript_config,
8181
bool& valid /*out*/)
8282
{
8383
valid = false;

icicle/include/icicle/sumcheck/sumcheck_transcript.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ class SumcheckTranscript
1010
const S& claimed_sum,
1111
const uint32_t mle_polynomial_size,
1212
const uint32_t combine_function_poly_degree,
13-
const SumcheckTranscriptConfig<S>&& transcript_config)
13+
SumcheckTranscriptConfig<S>&& transcript_config)
1414
: m_claimed_sum(claimed_sum), m_mle_polynomial_size(mle_polynomial_size),
1515
m_combine_function_poly_degree(combine_function_poly_degree), m_transcript_config(std::move(transcript_config))
1616
{
@@ -40,7 +40,7 @@ class SumcheckTranscript
4040
}
4141

4242
private:
43-
const SumcheckTranscriptConfig<S>&& m_transcript_config; // configuration how to build the transcript
43+
const SumcheckTranscriptConfig<S> m_transcript_config; // configuration how to build the transcript
4444
HashConfig m_config; // hash config - default
4545
uint32_t m_round_idx; //
4646
std::vector<std::byte> m_entry_0; //

icicle/include/icicle/sumcheck/sumcheck_transcript_config.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ namespace icicle {
8282

8383
// Move Constructor
8484
SumcheckTranscriptConfig(SumcheckTranscriptConfig&& other) noexcept
85-
: m_hasher(other.m_hasher), m_domain_separator_label(std::move(other.m_domain_separator_label)),
85+
: m_hasher(std::move(other.m_hasher)), m_domain_separator_label(std::move(other.m_domain_separator_label)),
8686
m_round_poly_label(std::move(other.m_round_poly_label)),
8787
m_round_challenge_label(std::move(other.m_round_challenge_label)), m_little_endian(other.m_little_endian),
8888
m_seed_rng(other.m_seed_rng)

icicle/tests/test_field_api.cpp

+10-5
Original file line numberDiff line numberDiff line change
@@ -184,11 +184,12 @@ TEST_F(FieldTestBase, Sumcheck)
184184
END_TIMER(sumcheck, oss.str().c_str(), true);
185185

186186
// ===== Verifier side ======
187+
SumcheckTranscriptConfig<scalar_t> verifier_transcript_config; // default configuration
187188
// create sumcheck
188189
auto verifier_sumcheck = create_sumcheck<scalar_t>();
189190
bool verification_pass = false;
190191
ICICLE_CHECK(
191-
verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(transcript_config), verification_pass));
192+
verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(verifier_transcript_config), verification_pass));
192193

193194
ASSERT_EQ(true, verification_pass);
194195
};
@@ -257,10 +258,11 @@ TEST_F(FieldTestBase, SumcheckDataOnDevice)
257258
END_TIMER(sumcheck, oss.str().c_str(), true);
258259

259260
// ===== Verifier side ======
261+
SumcheckTranscriptConfig<scalar_t> verifier_transcript_config; // default configuration
260262
// create sumcheck
261263
auto verifier_sumcheck = create_sumcheck<scalar_t>();
262264
bool verification_pass = false;
263-
ICICLE_CHECK(verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(transcript_config), verification_pass));
265+
ICICLE_CHECK(verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(verifier_transcript_config), verification_pass));
264266

265267
ASSERT_EQ(true, verification_pass);
266268

@@ -327,11 +329,12 @@ TEST_F(FieldTestBase, SumcheckUserDefinedCombine)
327329
END_TIMER(sumcheck, oss.str().c_str(), true);
328330

329331
// ===== Verifier side ======
332+
SumcheckTranscriptConfig<scalar_t> verifier_transcript_config; // default configuration
330333
// create sumcheck
331334
auto verifier_sumcheck = create_sumcheck<scalar_t>();
332335
bool verification_pass = false;
333336
ICICLE_CHECK(
334-
verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(transcript_config), verification_pass));
337+
verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(verifier_transcript_config), verification_pass));
335338

336339
ASSERT_EQ(true, verification_pass);
337340
};
@@ -492,11 +495,12 @@ TEST_F(FieldTestBase, SumcheckIdentity)
492495
END_TIMER(sumcheck, oss.str().c_str(), true);
493496

494497
// ===== Verifier side ======
498+
SumcheckTranscriptConfig<scalar_t> verifier_transcript_config; // default configuration
495499
// create sumcheck
496500
auto verifier_sumcheck = create_sumcheck<scalar_t>();
497501
bool verification_pass = false;
498502
ICICLE_CHECK(
499-
verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(transcript_config), verification_pass));
503+
verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(verifier_transcript_config), verification_pass));
500504

501505
ASSERT_EQ(true, verification_pass);
502506
};
@@ -557,11 +561,12 @@ TEST_F(FieldTestBase, SumcheckSingleInputProgram)
557561
END_TIMER(sumcheck, oss.str().c_str(), true);
558562

559563
// ===== Verifier side ======
564+
SumcheckTranscriptConfig<scalar_t> verifier_transcript_config; // default configuration
560565
// create sumcheck
561566
auto verifier_sumcheck = create_sumcheck<scalar_t>();
562567
bool verification_pass = false;
563568
ICICLE_CHECK(
564-
verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(transcript_config), verification_pass));
569+
verifier_sumcheck.verify(sumcheck_proof, claimed_sum, std::move(verifier_transcript_config), verification_pass));
565570

566571
ASSERT_EQ(true, verification_pass);
567572
};

0 commit comments

Comments
 (0)