pub trait CircuitV2Builder<C: Config> {
Show 15 methods
// Required methods
fn bits2num_v2_f(
&mut self,
bits: impl IntoIterator<Item = Felt<<C as Config>::F>>,
) -> Felt<C::F>;
fn num2bits_v2_f(
&mut self,
num: Felt<C::F>,
num_bits: usize,
) -> Vec<Felt<C::F>>;
fn exp_reverse_bits_v2(
&mut self,
input: Felt<C::F>,
power_bits: Vec<Felt<C::F>>,
) -> Felt<C::F>;
fn poseidon2_permute_v2(
&mut self,
state: [Felt<C::F>; 16],
) -> [Felt<C::F>; 16];
fn poseidon2_hash_v2(&mut self, array: &[Felt<C::F>]) -> [Felt<C::F>; 8];
fn poseidon2_compress_v2(
&mut self,
input: impl IntoIterator<Item = Felt<C::F>>,
) -> [Felt<C::F>; 8];
fn fri_fold_v2(
&mut self,
input: CircuitV2FriFoldInput<C>,
) -> CircuitV2FriFoldOutput<C>;
fn ext2felt_v2(&mut self, ext: Ext<C::F, C::EF>) -> [Felt<C::F>; 4];
fn commit_public_values_v2(
&mut self,
public_values: RecursionPublicValues<Felt<C::F>>,
);
fn cycle_tracker_v2_enter(&mut self, name: String);
fn cycle_tracker_v2_exit(&mut self);
fn hint_ext_v2(&mut self) -> Ext<C::F, C::EF>;
fn hint_felt_v2(&mut self) -> Felt<C::F>;
fn hint_exts_v2(&mut self, len: usize) -> Vec<Ext<C::F, C::EF>>;
fn hint_felts_v2(&mut self, len: usize) -> Vec<Felt<C::F>>;
}
Required Methods§
fn bits2num_v2_f( &mut self, bits: impl IntoIterator<Item = Felt<<C as Config>::F>>, ) -> Felt<C::F>
fn num2bits_v2_f(&mut self, num: Felt<C::F>, num_bits: usize) -> Vec<Felt<C::F>>
fn exp_reverse_bits_v2( &mut self, input: Felt<C::F>, power_bits: Vec<Felt<C::F>>, ) -> Felt<C::F>
fn poseidon2_permute_v2(&mut self, state: [Felt<C::F>; 16]) -> [Felt<C::F>; 16]
fn poseidon2_hash_v2(&mut self, array: &[Felt<C::F>]) -> [Felt<C::F>; 8]
fn poseidon2_compress_v2( &mut self, input: impl IntoIterator<Item = Felt<C::F>>, ) -> [Felt<C::F>; 8]
fn fri_fold_v2( &mut self, input: CircuitV2FriFoldInput<C>, ) -> CircuitV2FriFoldOutput<C>
fn ext2felt_v2(&mut self, ext: Ext<C::F, C::EF>) -> [Felt<C::F>; 4]
fn commit_public_values_v2( &mut self, public_values: RecursionPublicValues<Felt<C::F>>, )
fn cycle_tracker_v2_enter(&mut self, name: String)
fn cycle_tracker_v2_exit(&mut self)
fn hint_ext_v2(&mut self) -> Ext<C::F, C::EF>
fn hint_felt_v2(&mut self) -> Felt<C::F>
fn hint_exts_v2(&mut self, len: usize) -> Vec<Ext<C::F, C::EF>>
fn hint_felts_v2(&mut self, len: usize) -> Vec<Felt<C::F>>
Object Safety§
This trait is not object safe.