pub fn register_prover_virtual_round<VO: VirtualOracle<F>>(
        &mut self,
        ns: NameSpace,
        oracle: VO,
        test_bound: Vec<usize>,
        constraint_bound: Vec<usize>,
        trace: TraceInfo,
    ) -> MsgRoundRef {
        info!("Register prover virtual oracle: {}", trace);
        // make sure that no virtual oracle is registered when we are halfway sampling
        // verifier round
        assert!(!self.is_pending_message_available());
        let (codeword_domain, localization_param) = (
            self.codeword_domain(),
            self.codeword_localization_parameter(),
        );
        let virtual_oracle = VirtualOracleWithInfo::new(
            Box::new(oracle),
            codeword_domain,
            localization_param,
            test_bound,
            constraint_bound,
        );

        self.registered_virtual_oracles.push(virtual_oracle);
        self.attach_latest_prover_round_to_namespace(ns, true, trace)
    }
/// Register a virtual oracle specified by coset evaluator.
Register a virtual oracle specified by coset evaluator.
Register a virtual oracle specified by coset evaluator .
pub fn register_prover_virtual_round<VO: VirtualOracle<F>>(
        &mut self,
        ns: NameSpace,
        oracle: VO,
        test_bound: Vec<usize>,
        constraint_bound: Vec<usize>,
        trace: TraceInfo,
    ) -> MsgRoundRef {
        info!("Register prover virtual oracle: {}", trace);
        // make sure that no virtual oracle is registered when we are halfway sampling
        // verifier round
        assert!(!self.is_pending_message_available());
        let (codeword_domain, localization_param) = (
            self.codeword_domain(),
            self.codeword_localization_parameter(),
        );
        let virtual_oracle = VirtualOracleWithInfo::new(
            Box::new(oracle),
            codeword_domain,
            localization_param,
            test_bound,
            constraint_bound,
        );
        self.registered_virtual_oracles.push(virtual_oracle);
        self.attach_latest_prover_round_to_namespace(ns, true, trace)
    }
pub fn register_prover_virtual_round < VO : VirtualOracle < F > > ( & mut self , ns : NameSpace , oracle : VO , test_bound : Vec < usize > , constraint_bound : Vec < usize > , trace : TraceInfo , ) -> MsgRoundRef { info ! ( " " trace ) ; // make sure that no virtual oracle is registered when we are halfway sampling // verifier round assert ! ( self is_pending_message_available ( ) ) ; let ( codeword_domain , localization_param ) = ( self . codeword_domain ( ) , self . codeword_localization_parameter ( ) , ) ; let virtual_oracle = VirtualOracleWithInfo :: new ( Box :: new ( oracle ) , codeword_domain , localization_param , test_bound , constraint_bound , ) ; self . registered_virtual_oracles . push ( virtual_oracle ) ; self . attach_latest_prover_round_to_namespace ( ns , true , trace ) }
Register a virtual oracle specified by coset evaluator.
Register a virtual oracle specified by coset evaluator .
&mut self
ns
NameSpace
oracle
VO
test_bound
Vec<usize>
constraint_bound
Vec<usize>
trace
TraceInfo
&mut self
ns
NameSpace
oracle
VO
test_bound
Vec<usize>
constraint_bound
Vec<usize>
trace
TraceInfo