1- use std:: {
2- hash:: { DefaultHasher , Hash , Hasher } ,
3- ops:: Range ,
4- } ;
5-
61use p3_field:: { BasedVectorSpace , ExtensionField , Field , dot_product} ;
72use rayon:: prelude:: * ;
83
@@ -18,29 +13,6 @@ pub fn transmute_slice<Before, After>(slice: &[Before]) -> &[After] {
1813 unsafe { std:: slice:: from_raw_parts ( slice. as_ptr ( ) as * const After , new_len) }
1914}
2015
21- pub const fn shift_range ( range : Range < usize > , shift : usize ) -> Range < usize > {
22- Range {
23- start : range. start + shift,
24- end : range. end + shift,
25- }
26- }
27-
28- pub const fn diff_to_next_power_of_two ( n : usize ) -> usize {
29- n. next_power_of_two ( ) - n
30- }
31-
32- pub fn left_mut < A > ( slice : & mut [ A ] ) -> & mut [ A ] {
33- assert ! ( slice. len( ) . is_multiple_of( 2 ) ) ;
34- let mid = slice. len ( ) / 2 ;
35- & mut slice[ ..mid]
36- }
37-
38- pub fn right_mut < A > ( slice : & mut [ A ] ) -> & mut [ A ] {
39- assert ! ( slice. len( ) . is_multiple_of( 2 ) ) ;
40- let mid = slice. len ( ) / 2 ;
41- & mut slice[ mid..]
42- }
43-
4416pub fn left_ref < A > ( slice : & [ A ] ) -> & [ A ] {
4517 assert ! ( slice. len( ) . is_multiple_of( 2 ) ) ;
4618 let mid = slice. len ( ) / 2 ;
@@ -58,12 +30,6 @@ pub fn from_end<A>(slice: &[A], n: usize) -> &[A] {
5830 & slice[ slice. len ( ) - n..]
5931}
6032
61- pub fn remove_end < A > ( slice : & [ A ] , n : usize ) -> & [ A ] {
62- assert ! ( n <= slice. len( ) ) ;
63- let len = slice. len ( ) ;
64- & slice[ ..len - n]
65- }
66-
6733pub fn field_slice_as_base < F : Field , EF : ExtensionField < F > > ( slice : & [ EF ] ) -> Option < Vec < F > > {
6834 slice. par_iter ( ) . map ( |x| x. as_base ( ) ) . collect ( )
6935}
@@ -125,12 +91,6 @@ macro_rules! assert_eq_many {
12591 } ;
12692}
12793
128- pub fn debug_hash < A : Hash > ( a : & A ) -> u64 {
129- let mut hasher = DefaultHasher :: new ( ) ;
130- a. hash ( & mut hasher) ;
131- hasher. finish ( )
132- }
133-
13494pub fn finger_print < F : Field , EF : ExtensionField < F > > ( data : & [ F ] , challenge : EF ) -> EF {
13595 challenge + dot_product :: < EF , _ , _ > ( challenge. powers ( ) . skip ( 2 ) , data. iter ( ) . copied ( ) )
13696}
0 commit comments