Skip to content

Commit

Permalink
Ensure BaseField vectors
Browse files Browse the repository at this point in the history
  • Loading branch information
darth-cy committed Feb 12, 2025
1 parent efdc44a commit a7f79ee
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 11 deletions.
2 changes: 1 addition & 1 deletion spartan_parallel/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -948,7 +948,7 @@ impl<E: ExtensionField + Send + Sync, Pcs: PolynomialCommitmentScheme<E>> SNARK<
let param = Pcs::setup(num_vars).unwrap();
let (pp, _error) = Pcs::trim(param, num_vars).unwrap();
// create a multilinear polynomial using the supplied assignment for variables
let poly = DenseMultilinearExtension::from_evaluation_vec_smart(mat_concat_p.len().log_2(), mat_concat_p);
let poly = DenseMultilinearExtension::from_evaluations_vec(mat_concat_p.len().log_2(), mat_concat_p);
let p_comm = Pcs::commit(&pp, &poly).unwrap();
let v_comm = Pcs::get_pure_commitment(&p_comm);
(poly, p_comm, v_comm)
Expand Down
21 changes: 11 additions & 10 deletions spartan_parallel/src/sparse_mlpoly.rs
Original file line number Diff line number Diff line change
Expand Up @@ -241,31 +241,31 @@ impl<E: ExtensionField> AddrTimestamps<E> {
audit_ts[addr] = w_ts;
}

let ops_addr_inst_evals = ops_addr_inst.into_iter().map(|&n| E::from_u128(n as u128)).collect::<Vec<E>>();
let read_ts_evals = read_ts.into_iter().map(|n| E::from_u128(n as u128)).collect::<Vec<E>>();
ops_addr_vec.push(DenseMultilinearExtension::from_evaluation_vec_smart(ops_addr_inst_evals.len().log_2(), ops_addr_inst_evals));
read_ts_vec.push(DenseMultilinearExtension::from_evaluation_vec_smart(read_ts_evals.len().log_2(), read_ts_evals));
let ops_addr_inst_evals = ops_addr_inst.into_iter().map(|&n| E::from_u128(n as u128).as_bases()[0]).collect::<Vec<E::BaseField>>();
let read_ts_evals = read_ts.into_iter().map(|n| E::from_u128(n as u128).as_bases()[0]).collect::<Vec<E::BaseField>>();
ops_addr_vec.push(DenseMultilinearExtension::from_evaluations_vec(ops_addr_inst_evals.len().log_2(), ops_addr_inst_evals));
read_ts_vec.push(DenseMultilinearExtension::from_evaluations_vec(read_ts_evals.len().log_2(), read_ts_evals));
}

let audit_ts_evals = audit_ts.into_iter().map(|n| E::from_u128(n as u128)).collect::<Vec<E>>();
let audit_ts_evals = audit_ts.into_iter().map(|n| E::from_u128(n as u128).as_bases()[0]).collect::<Vec<E::BaseField>>();

AddrTimestamps {
ops_addr: ops_addr_vec,
ops_addr_usize: ops_addr,
read_ts: read_ts_vec,
audit_ts: DenseMultilinearExtension::from_evaluation_vec_smart(audit_ts_evals.len().log_2(), audit_ts_evals),
audit_ts: DenseMultilinearExtension::from_evaluations_vec(audit_ts_evals.len().log_2(), audit_ts_evals),
}
}

fn deref_mem(addr: &[usize], mem_val: &[E]) -> DenseMultilinearExtension<E> {
let evals = (0..addr.len())
.map(|i| {
let a = addr[i];
mem_val[a]
mem_val[a].as_bases()[0]
})
.collect::<Vec<E>>();
.collect::<Vec<E::BaseField>>();

DenseMultilinearExtension::from_evaluation_vec_smart(evals.len().log_2(), evals)
DenseMultilinearExtension::from_evaluations_vec(evals.len().log_2(), evals)
}

pub fn deref(&self, mem_val: &[E]) -> Vec<DenseMultilinearExtension<E>> {
Expand Down Expand Up @@ -350,7 +350,8 @@ impl<E: ExtensionField> SparseMatPolynomial<E> {
let (ops_row, ops_col, val) = poly.sparse_to_dense_vecs(N);
ops_row_vec.push(ops_row);
ops_col_vec.push(ops_col);
val_vec.push(DenseMultilinearExtension::from_evaluation_vec_smart(val.len().log_2(), val));
let val = val.into_iter().map(|e| e.as_bases()[0]).collect::<Vec<E::BaseField>>();
val_vec.push(DenseMultilinearExtension::from_evaluations_vec(val.len().log_2(), val));
}

let any_poly = &sparse_polys[0];
Expand Down

0 comments on commit a7f79ee

Please sign in to comment.