Merge pull request #197 from mir-protocol/remove_remaining_reverse_bits

Remove remaining `reverse_bits`
This commit is contained in:
wborgeaud 2021-08-23 18:16:37 +02:00 committed by GitHub
commit d4ee2a6c18
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 15 deletions

View File

@ -142,7 +142,7 @@ fn fri_verify_initial_proof<F: Field>(
initial_merkle_caps: &[MerkleCap<F>], initial_merkle_caps: &[MerkleCap<F>],
) -> Result<()> { ) -> Result<()> {
for ((evals, merkle_proof), cap) in proof.evals_proofs.iter().zip(initial_merkle_caps) { for ((evals, merkle_proof), cap) in proof.evals_proofs.iter().zip(initial_merkle_caps) {
verify_merkle_proof(evals.clone(), x_index, cap, merkle_proof, false)?; verify_merkle_proof(evals.clone(), x_index, cap, merkle_proof)?;
} }
Ok(()) Ok(())
@ -305,7 +305,6 @@ fn fri_verifier_query_round<F: Field + Extendable<D>, const D: usize>(
coset_index, coset_index,
&proof.commit_phase_merkle_caps[i], &proof.commit_phase_merkle_caps[i],
&round_proof.steps[i].merkle_proof, &round_proof.steps[i].merkle_proof,
false,
)?; )?;
// Update the point x to x^arity. // Update the point x to x^arity.

View File

@ -34,13 +34,8 @@ pub(crate) fn verify_merkle_proof<F: Field>(
leaf_index: usize, leaf_index: usize,
merkle_cap: &MerkleCap<F>, merkle_cap: &MerkleCap<F>,
proof: &MerkleProof<F>, proof: &MerkleProof<F>,
reverse_bits: bool,
) -> Result<()> { ) -> Result<()> {
let mut index = if reverse_bits { let mut index = leaf_index;
crate::util::reverse_bits(leaf_index, proof.siblings.len())
} else {
leaf_index
};
let mut current_digest = hash_or_noop(leaf_data); let mut current_digest = hash_or_noop(leaf_data);
for &sibling_digest in proof.siblings.iter() { for &sibling_digest in proof.siblings.iter() {
let bit = index & 1; let bit = index & 1;

View File

@ -86,15 +86,11 @@ mod tests {
(0..n).map(|_| F::rand_vec(k)).collect() (0..n).map(|_| F::rand_vec(k)).collect()
} }
fn verify_all_leaves<F: Field>( fn verify_all_leaves<F: Field>(leaves: Vec<Vec<F>>, n: usize) -> Result<()> {
leaves: Vec<Vec<F>>,
n: usize,
reverse_bits: bool,
) -> Result<()> {
let tree = MerkleTree::new(leaves.clone(), 1); let tree = MerkleTree::new(leaves.clone(), 1);
for i in 0..n { for i in 0..n {
let proof = tree.prove(i); let proof = tree.prove(i);
verify_merkle_proof(leaves[i].clone(), i, &tree.cap, &proof, reverse_bits)?; verify_merkle_proof(leaves[i].clone(), i, &tree.cap, &proof)?;
} }
Ok(()) Ok(())
} }
@ -107,7 +103,7 @@ mod tests {
let n = 1 << log_n; let n = 1 << log_n;
let leaves = random_data::<F>(n, 7); let leaves = random_data::<F>(n, 7);
verify_all_leaves(leaves, n, false)?; verify_all_leaves(leaves, n)?;
Ok(()) Ok(())
} }