proof_stream/viz/
sumcheck.rs1use crate::events::{RoundPolyDeg3Viz, RoundPolyViz, SecureFieldMirror};
4
5pub fn sf_mirror(a: u32, b: u32, c: u32, d: u32) -> SecureFieldMirror {
9 SecureFieldMirror { a, b, c, d }
10}
11
12pub fn round_poly_viz(
14 c0: [u32; 4],
15 c1: [u32; 4],
16 c2: [u32; 4],
17) -> RoundPolyViz {
18 RoundPolyViz {
19 c0: sf_mirror(c0[0], c0[1], c0[2], c0[3]),
20 c1: sf_mirror(c1[0], c1[1], c1[2], c1[3]),
21 c2: sf_mirror(c2[0], c2[1], c2[2], c2[3]),
22 }
23}
24
25pub fn round_poly_deg3_viz(
27 c0: [u32; 4],
28 c1: [u32; 4],
29 c2: [u32; 4],
30 c3: [u32; 4],
31) -> RoundPolyDeg3Viz {
32 RoundPolyDeg3Viz {
33 c0: sf_mirror(c0[0], c0[1], c0[2], c0[3]),
34 c1: sf_mirror(c1[0], c1[1], c1[2], c1[3]),
35 c2: sf_mirror(c2[0], c2[1], c2[2], c2[3]),
36 c3: sf_mirror(c3[0], c3[1], c3[2], c3[3]),
37 }
38}
39
40pub fn claim_approx(qm31_a_limb: u32) -> f32 {
42 qm31_a_limb as f32 / (0x7fff_ffff_u32 as f32)
43}
44