diff --git a/rustdoc/help.html b/rustdoc/help.html index 5f6a6e11c2..f74e384bbd 100644 --- a/rustdoc/help.html +++ b/rustdoc/help.html @@ -1 +1 @@ -Rustdoc help

Rustdoc help

Back
\ No newline at end of file +Rustdoc help

Rustdoc help

Back
\ No newline at end of file diff --git a/rustdoc/index.html b/rustdoc/index.html index 88b56a41de..279d742af5 100644 --- a/rustdoc/index.html +++ b/rustdoc/index.html @@ -1 +1 @@ -Index of crates

List of all crates

\ No newline at end of file +Index of crates

List of all crates

\ No newline at end of file diff --git a/rustdoc/o1_utils/foreign_field/index.html b/rustdoc/o1_utils/foreign_field/index.html index 096c835cf9..23145c98d1 100644 --- a/rustdoc/o1_utils/foreign_field/index.html +++ b/rustdoc/o1_utils/foreign_field/index.html @@ -1,4 +1,4 @@ -o1_utils::foreign_field - Rust

Module o1_utils::foreign_field

source ·
Expand description

Describes helpers for foreign field arithmetics +o1_utils::foreign_field - Rust

Module o1_utils::foreign_field

source ·
Expand description

Describes helpers for foreign field arithmetics Generic parameters are as follows:

  • B is a bit length of one limb
  • diff --git a/rustdoc/o1_utils/index.html b/rustdoc/o1_utils/index.html index 2fabf90dcf..514f80e424 100644 --- a/rustdoc/o1_utils/index.html +++ b/rustdoc/o1_utils/index.html @@ -1,4 +1,5 @@ -o1_utils - Rust

    Crate o1_utils

    source ·
    Expand description

    A collection of utility functions and constants that can be reused from multiple projects

    +o1_utils - Rust

    Crate o1_utils

    source ·
    Expand description

    A collection of utility functions and constants that can be reused from +multiple projects

    Re-exports

    Modules

    • This module hosts the AdjacentPairs type, which can be used to list all the adjacent pairs of a list. For example, if you have a list of integers [1, 2, 3], diff --git a/rustdoc/o1_utils/math/index.html b/rustdoc/o1_utils/math/index.html index 2b6116ac45..259cb5e095 100644 --- a/rustdoc/o1_utils/math/index.html +++ b/rustdoc/o1_utils/math/index.html @@ -1,2 +1,2 @@ -o1_utils::math - Rust

      Module o1_utils::math

      source ·
      Expand description

      This modules implements some math helper functions.

      +o1_utils::math - Rust

      Module o1_utils::math

      source ·
      Expand description

      This modules implements some math helper functions.

      Functions

      \ No newline at end of file diff --git a/rustdoc/o1_utils/tests/fn.make_test_rng.html b/rustdoc/o1_utils/tests/fn.make_test_rng.html index 1ec08ca5b5..6c000c65d3 100644 --- a/rustdoc/o1_utils/tests/fn.make_test_rng.html +++ b/rustdoc/o1_utils/tests/fn.make_test_rng.html @@ -1,2 +1,2 @@ -make_test_rng in o1_utils::tests - Rust

      Function o1_utils::tests::make_test_rng

      source ·
      pub fn make_test_rng(seed: Option<[u8; 32]>) -> StdRng
      Expand description

      Create a new test rng with a random seed

      +make_test_rng in o1_utils::tests - Rust

      Function o1_utils::tests::make_test_rng

      source ·
      pub fn make_test_rng(seed: Option<[u8; 32]>) -> StdRng
      Expand description

      Create a new test rng with a random seed

      \ No newline at end of file diff --git a/rustdoc/o1_utils/tests/index.html b/rustdoc/o1_utils/tests/index.html index a4c2b15b36..cfdab0c7df 100644 --- a/rustdoc/o1_utils/tests/index.html +++ b/rustdoc/o1_utils/tests/index.html @@ -1,2 +1,2 @@ -o1_utils::tests - Rust

      Module o1_utils::tests

      source ·
      Expand description

      Utils only for testing

      +o1_utils::tests - Rust

      Module o1_utils::tests

      source ·
      Expand description

      Utils only for testing

      Functions

      \ No newline at end of file diff --git a/rustdoc/search-index.js b/rustdoc/search-index.js index bf4fe69503..ad00bdb8f7 100644 --- a/rustdoc/search-index.js +++ b/rustdoc/search-index.js @@ -18,7 +18,7 @@ var searchIndex = JSON.parse('{\ "poly_commitment":{"doc":"","t":"ICIQKKAKKKKKKAKAAKLKKKAKAKDDIIDQQDFLFFMLLLLLLLLALLLLLLLFFLLFMMMLLLLLLLLLLLLLLLMLLMMMMLLLLLLLLLLLLFLLLLLLLLLKMMFFLLLLFMFFLKFLLLLLLLLLLLLLLLLLLLDDLLLLLLMLLLLLLLLLLLLLLLLLLLLMLLLLMMLLLLLLLLLMLLMMNELLLLLLLLLLLLLLLLLLLDNENDLLLLLLMMLLLFLMLLLLLLLLLLLLLLLLLLLLLMLLLMLLLLLLLLLLLLLLMMDDLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLMLLLLDLLLLLLLLLLLLLLLLLLLLLLFLLLLMLMLLMLLLLLLLLLLLLLL","n":["OpenProof","PolyComm","SRS","SRS","add_lagrange_basis","blinding_commitment","chunked","commit","commit_custom","commit_evaluations","commit_evaluations_custom","commit_evaluations_non_hiding","commit_non_hiding","commitment","create","error","evaluation_proof","get_lagrange_basis","mask","mask_custom","max_poly_size","open","pairing_proof","size","srs","verify","BatchEvaluationProof","BlindedCommitment","CommitmentCurve","EndoCurve","Evaluation","Map","Params","PolyComm","absorb_commitment","add","b_poly","b_poly_coefficients","blinders","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","caml","chunk_blinding","chunk_commitment","clone","clone","clone_into","clone_into","combine","combine_commitments","combine_evaluations","combine_one","combine_one_endo","combined_inner_product","combined_inner_product","commitment","commitment","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deserialize","deserialize","deserialize_as","drop","drop","drop","drop","elems","eq","equivalent","evalscale","evaluation_points","evaluations","evaluations","fmt","fmt","from","from","from","from","from","from","init","init","init","init","inner_prod","into","into","into","into","is_empty","len","map","multi_scalar_mul","new","of_coordinates","opening","polyscale","pows","product","scale","serialize","serialize","serialize_as","shift_scalar","sponge","squeeze_challenge","squeeze_prechallenge","sub","to_coordinates","to_group","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","zip","CamlOpeningProof","CamlPolyComm","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","delta","deref","deref","deref_mut","deref_mut","drop","drop","fmt","from","from","from","from","from","from_value","from_value","init","init","into","into","into_value","into_value","lr","ocaml_binding","ocaml_binding","ocaml_desc","ocaml_desc","sg","shifted","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","unique_id","unique_id","unshifted","vzip","vzip","z1","z2","BlindersDontMatch","CommitmentError","borrow","borrow_mut","clone","clone_into","deref","deref_mut","drop","fmt","fmt","from","init","into","provide","to_owned","to_string","try_from","try_into","type_id","vzip","Challenges","DensePolynomial","DensePolynomialOrEvaluations","Evaluations","OpeningProof","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","chal","chal_inv","challenges","clone","clone_into","combine_polys","default","delta","deref","deref","deref","deref_mut","deref_mut","deref_mut","deserialize","drop","drop","drop","fmt","from","from","from","from","init","init","init","into","into","into","lr","open","prechallenges","serialize","sg","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","verify","vzip","vzip","vzip","z1","z2","PairingProof","PairingSRS","add_lagrange_basis","blinding","blinding_commitment","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","commit","commit_custom","commit_evaluations","commit_evaluations_custom","commit_evaluations_non_hiding","commit_non_hiding","create","create","create","default","default","deref","deref","deref_mut","deref_mut","deserialize","deserialize","drop","drop","eq","equivalent","fmt","fmt","from","from","full_srs","get_lagrange_basis","init","init","into","into","mask","mask_custom","max_poly_size","open","quotient","serialize","serialize","size","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","verifier_srs","verify","verify","vzip","vzip","SRS","add_lagrange_basis","add_lagrange_basis","blinding_commitment","borrow","borrow_mut","clone","clone_into","commit","commit_custom","commit_evaluations","commit_evaluations_custom","commit_evaluations_non_hiding","commit_non_hiding","create","create","create_parallel","create_trusted_setup","default","deref","deref_mut","deserialize","drop","endos","eq","equivalent","fmt","from","g","get_lagrange_basis","h","init","into","lagrange_bases","mask","mask_custom","max_degree","max_poly_size","open","prover_polynomials_to_verifier_evaluations","serialize","size","to_owned","try_from","try_into","type_id","verify","vzip"],"q":[[0,"poly_commitment"],[26,"poly_commitment::commitment"],[142,"poly_commitment::commitment::caml"],[192,"poly_commitment::error"],[213,"poly_commitment::evaluation_proof"],[274,"poly_commitment::pairing_proof"],[339,"poly_commitment::srs"]],"d":["","","","","","Get the group element used for blinding commitments","","Commits a polynomial, potentially splitting the result in …","Commit to a polynomial, with custom blinding factors. It …","Commit to evaluations with blinding factors, generated …","Commit to evaluations with custom blinding factors. It is …","Commit to evaluations, without blinding factors. It is …","This function commits a polynomial using the SRS’ basis …","This module implements Dlog-based polynomial commitment …","","","This module contains the implementation of the polynomial …","Retrieve the precomputed Lagrange basis for the given …","Turns a non-hiding polynomial commitment into a hidding …","Same as SRS::mask except that you can pass the blinders …","The maximum polynomial degree that can be committed to","Parameters:","","","This module implements structures and methods to handle …","","Contains the batch evaluation","","A useful trait extending AffineCurve for commitments. …","A trait extending CommitmentCurve for endomorphisms. …","Contains the evaluation of a polynomial commitment at a …","","","A polynomial commitment.","","","Returns (1 + chal[-1] x)(1 + chal[-2] x^2)(1 + chal[-3] …","","","","","","","","","","","","Multiplies each blinding chunk of f with powers of zeta^n","Multiplies each commitment chunk of f with powers of zeta^n","","","","","","This function populates the parameters scalars and points. …","Combine the (chunked) evaluations of multiple polynomials. …","Combine where x1 = one","Combine where x1 = one","Computes the linearization of the evaluations of a …","","The commitment of the polynomial being evaluated. Note …","","","","","","","","","","","","","","","","","","","","scaling factor for polynomials","The actual evaluation points. Each field evaluations of …","Contains an evaluation table. For instance, for vanilla …","A list of evaluations, each supposed to correspond to a …","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Returns true if the commitment is empty.","Returns the length of the commitment.","","Performs a multi-scalar multiplication between scalars elm …","","","batched opening proof","scaling factor for evaluation point powers","pows(d, x) returns a vector containing the first d powers …","Returns the product of all the field elements belonging to …","","","","","Inside the circuit, we have a specialized scalar …","The sponge used to generate/absorb the challenges.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","","","vector of rounds of L & R commitments","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","Commitment round challenges (endo mapped) and their …","","","","","","","","","","","","","Same as prechallenges, but maps scalar challenges using the","","","Combine the polynomials using polyscale, creating a single …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Vector of rounds of L & R commitments","","Computes a log-sized vector of scalar challenges for …","","A final folded commitment base","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a pairing proof. Parameters:","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","The full SRS is the one used by the prover. Can be seen as …","","","","Calls U::from(self).","Calls U::from(self).","","","","Parameters:","","","","","","","","","","","","","SRS to be used by the verifier. Can be seen as the “…","","","","","","Compute commitments to the lagrange basis corresponding to …","","","","","","","Commits a polynomial, potentially splitting the result in …","","","","","This function commits a polynomial using the SRS’ basis …","This function creates SRS instance for circuits with …","","This function creates SRS instance for circuits with …","This function creates a trusted-setup SRS instance for …","","","","","","","","","","Returns the argument unchanged.","The vector of group elements for committing to polynomials …","","A group element used for blinding commitments","","Calls U::from(self).","Commitments to Lagrange bases, per domain size","Turns a non-hiding polynomial commitment into a hidding …","Same as SRS::mask except that you can pass the blinders …","","The maximum polynomial degree that can be committed to","This function opens polynomial commitments in batch plnms: …","This function is a debugging helper.","","","","","","","This function verifies a batch of polynomial commitment …",""],"i":[0,0,0,60,61,61,0,61,61,61,61,61,61,0,61,0,0,61,61,61,61,60,0,61,0,60,0,0,0,0,0,22,22,0,0,7,0,0,6,23,16,7,6,23,16,7,6,0,7,7,7,6,7,6,55,0,0,55,55,0,16,23,6,23,16,7,6,23,16,7,6,7,6,7,23,16,7,6,7,7,7,16,16,23,16,7,6,23,16,7,7,7,6,23,16,7,6,0,23,16,7,6,7,7,7,7,7,22,16,16,0,0,7,7,6,7,0,16,0,0,7,22,0,7,6,23,16,7,6,23,16,7,6,23,16,7,6,23,16,7,6,7,0,0,33,42,33,42,33,33,42,33,42,33,42,33,42,33,33,33,33,42,42,33,42,33,42,33,42,33,42,42,33,42,33,42,42,33,33,33,42,33,42,33,42,33,42,33,33,42,42,42,8,0,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,0,62,0,62,0,62,52,41,62,52,41,52,52,41,41,41,0,41,41,62,52,41,62,52,41,41,62,52,41,41,62,52,41,41,62,52,41,62,52,41,41,41,41,41,41,41,62,52,41,62,52,41,62,52,41,41,62,52,41,41,41,0,0,57,58,57,58,57,58,57,58,57,58,57,57,57,57,57,57,57,58,57,57,58,57,58,57,58,57,58,57,58,57,57,57,58,57,58,57,57,57,58,57,58,57,57,57,57,58,58,58,57,57,58,57,58,57,58,57,58,57,57,58,58,58,57,0,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,0,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59],"f":[0,0,0,0,[1],[[]],0,[[2,3,[0,[4,5]]],6],[[2,3,7],[[9,[6,8]]]],[[1,[10,[1]],[0,[4,5]]],6],[[1,[10,[1]],7],[[9,[6,8]]]],[[1,[10,[1]]],7],[[2,3],7],0,[3],0,0,[3,[[12,[[11,[7]]]]]],[[7,[0,[4,5]]],6],[[7,7],[[9,[6,8]]]],[[],3],[[13,13,[0,[14,15]],[0,[4,5]]]],0,[[],3],0,[[[13,[[16,[15]]]],[0,[4,5]]],17],0,0,0,0,0,0,0,0,[[[15,[18,14,[0,[19,20]]]],[7,[14]]]],[[[7,[21]],[7,[21]]],[[7,[21]]]],[[[13,[18]],18],18],[[[13,[18]]],[[11,[18]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[[7,[18]],18],18],[[[7,[22]]],[[7,[22]]]],[[[7,[14]]],[[7,[14]]]],[[[6,[[0,[22,14]]]]],[[6,[[0,[22,14]]]]]],[[]],[[]],[[13,13],11],[[[13,[[23,[22]]]],11,[11,[22]]]],[[[11,[[23,[22]]]]],11],[[13,13],11],[[13,13,24],11],[[19,19,[13,[[11,[[11,[19]]]]]]],19],0,0,0,[3],[3],[3],[3],[3],[3],[3],[3],[25,[[9,[[7,[[0,[26,27]]]]]]]],[25,[[9,[[6,[[0,[22,28]]]]]]]],[25,[[9,[7]]]],[3],[3],[3],[3],0,[[[7,[29]],[7,[29]]],17],[[],17],0,0,0,0,[[[7,[30]],31],32],[[[6,[[0,[22,30]]]],31],32],[[]],[[]],[33,[[7,[[0,[21,34,34]]]]]],[[]],[33,[[7,[[0,[21,34]]]]]],[[]],[[],3],[[],3],[[],3],[[],3],[[[13,[18]],[13,[18]]],18],[[]],[[]],[[]],[[]],[[[7,[[0,[26,27,14]]]]],17],[[[7,[[0,[26,27,14]]]]],3],[[[7,[[0,[26,27,14]]]],35],[[7,[[0,[26,27]]]]]],[[[13,[[7,[21]]]],13],[[7,[21]]]],[11,7],[[]],0,0,[[3,18],[[11,[18]]]],[36,18],[[[7,[21]]],[[7,[21]]]],[[[7,[[0,[26,27]]]],37],9],[[[6,[[0,[22,38]]]],37],9],[[7,37],9],[[]],0,[[[0,[19,20]],[15,[18,[0,[19,20]]]]],[[0,[19,20]]]],[[[15,[18,20]]],[[24,[20]]]],[[[7,[21]],[7,[21]]],[[7,[21]]]],[[],12],[[],22],[[]],[[]],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],39],[[],39],[[],39],[[],39],[[]],[[]],[[]],[[]],[[[7,[[0,[40,26,27]]]],[7,[[0,[40,26,27]]]]],[[12,[7]]]],0,0,[[]],[[]],[[]],[[]],[[[33,[14]]],[[33,[14]]]],[[]],0,[3],[3],[3],[3],[3],[3],[[[33,[30]],31],32],[[]],[[[7,[21]]],[[33,[[0,[[34,[21]],[34,[21]]]]]]]],[[[7,[21]]],[[33,[[34,[21]]]]]],[[[41,[21]]],[[42,[[34,[21]],34]]]],[[]],[43,[[33,[44]]]],[43,[[42,[44,44]]]],[[],3],[[],3],[[]],[[]],[[[33,[45]],46],43],[[[42,[45,45]],46],43],0,[[47,[12,[48]],17],49],[[47,[12,[48]],17],49],[[47,[13,[48]]],49],[[47,[13,[48]]],49],0,0,[[]],[[],9],[[],9],[[],9],[[],9],[[],39],[[],39],[[],50],[[],50],0,[[]],[[]],0,0,0,0,[[]],[[]],[8,8],[[]],[3],[3],[3],[[8,31],32],[[8,31],32],[[]],[[],3],[[]],[51],[[]],[[],49],[[],9],[[],9],[[],39],[[]],0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[[41,[21]],[15,[21]]],52],[[[41,[[0,[14,21]]]]],[[41,[[0,[14,21]]]]]],[[]],[[13,3]],[[],[[41,[[0,[53,21]]]]]],0,[3],[3],[3],[3],[3],[3],[25,[[9,[[41,[[0,[26,27,21]]]]]]]],[3],[3],[3],[[[41,[[0,[30,21]]]],31],32],[[]],[[]],[[]],[[[42,[[54,[21]],54]]],[[41,[21]]]],[[],3],[[],3],[[],3],[[]],[[]],[[]],0,[[13,13,[0,[14,[15,[[0,[21,22,55]]]]]],[0,[4,5]]],[[41,[[0,[21,22,55]]]]]],[[[41,[21]],[15,[21]]],[[11,[24]]]],[[[41,[[0,[26,27,21]]]],37],9],0,[[]],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],39],[[],39],[[],39],[[[13,[[16,[[0,[21,22,55]],[15,[[0,[21,22,55]]]],[41,[[0,[21,22,55]]]]]]]],[0,[4,5]]],17],[[]],[[]],[[]],0,0,0,0,[[[57,[56]],1]],0,[[[57,[56]]],22],[[]],[[]],[[]],[[]],[[[58,[56]]],[[58,[56]]]],[[[57,[56]]],[[57,[56]]]],[[]],[[]],[[[57,[56]],[2,[19]],3,[0,[4,5]]],[[6,[22]]]],[[[57,[56]],2,3,7],[[9,[[6,[22]],8]]]],[[[57,[56]],1,[10,[1]],[0,[4,5]]],[[6,[22]]]],[[[57,[56]],1,[10,[1]],7],[[9,[[6,[22]],8]]]],[[[57,[56]],1,[10,[1]]],[[7,[22]]]],[[[57,[56]],2,3],[[7,[22]]]],[[[57,[56]],13,[13,[19]],19],[[12,[[58,[56]]]]]],[[19,3],[[57,[56]]]],[3,[[57,[56]]]],[[],[[58,[56]]]],[[],[[57,[56]]]],[3],[3],[3],[3],[25,[[9,[[58,[56]]]]]],[25,[[9,[[57,[56]]]]]],[3],[3],[[[57,[[0,[29,56]]]],[57,[[0,[29,56]]]]],17],[[],17],[[[58,[[0,[30,56]]]],31],32],[[[57,[[0,[30,56]]]],31],32],[[]],[[]],0,[[[57,[56]],3],[[12,[[11,[[7,[22]]]]]]]],[[],3],[[],3],[[]],[[]],[[[57,[56]],[7,[22]],[0,[4,5]]],[[6,[22]]]],[[[57,[56]],[7,[22]],7],[[9,[[6,[22]],8]]]],[[[57,[56]]],3],[[13,13,[0,[14,[15,[22,19]]]],[0,[4,5]]],[[58,[56]]]],0,[[[58,[56]],37],9],[[[57,[56]],37],9],[[[57,[56]]],3],[[]],[[]],[[],9],[[],9],[[],9],[[],9],[[],39],[[],39],0,[[[13,[[16,[22,[15,[22,19]],[58,[56]]]]]],[0,[4,5]]],17],[[[58,[56]],[57,[56]],[11,[[23,[22]]]],19,[13,[19]]],17],[[]],[[]],0,[[[59,[22]],1]],[[[59,[22]],1]],[[[59,[22]]],22],[[]],[[]],[[[59,[14]]],[[59,[14]]]],[[]],[[[59,[22]],2,3,[0,[4,5]]],[[6,[22]]]],[[[59,[22]],2,3,7],[[9,[[6,[22]],8]]]],[[[59,[22]],1,[10,[1]],[0,[4,5]]],[[6,[22]]]],[[[59,[22]],1,[10,[1]],7],[[9,[[6,[22]],8]]]],[[[59,[22]],1,[10,[1]]],[[7,[22]]]],[[[59,[22]],2,3],[[7,[22]]]],[3,[[59,[22]]]],[3,[[59,[22]]]],[3,[[59,[22]]]],[3,[[59,[22]]]],[[],[[59,[53]]]],[3],[3],[25,[[9,[[59,[[0,[26,27]]]]]]]],[3],[[]],[[[59,[29]],[59,[29]]],17],[[],17],[[[59,[30]],31],32],[[]],0,[[[59,[22]],3],[[12,[[11,[[7,[22]]]]]]]],0,[[],3],[[]],0,[[[59,[22]],[7,[22]],[0,[4,5]]],[[6,[22]]]],[[[59,[22]],[7,[22]],7],[[9,[[6,[22]],8]]]],[[[59,[22]]],3],[[[59,[22]]],3],[[[59,[55,22]],13,13,[0,[14,[15,[55,22]]]],[0,[4,5]]],[[41,[55,22]]]],[[[59,[22]],13,13],[[11,[[23,[22]]]]]],[[[59,[[0,[26,27]]]],37],9],[[[59,[22]]],3],[[]],[[],9],[[],9],[[],39],[[[59,[22]],[13,[[16,[22,[15,[22]],[41,[22]]]]]],[0,[4,5]]],17],[[]]],"c":[],"p":[[3,"Radix2EvaluationDomain"],[3,"DensePolynomial"],[15,"usize"],[8,"RngCore"],[8,"CryptoRng"],[3,"BlindedCommitment"],[3,"PolyComm"],[4,"CommitmentError"],[4,"Result"],[3,"Evaluations"],[3,"Vec"],[4,"Option"],[15,"slice"],[8,"Clone"],[8,"FqSponge"],[3,"BatchEvaluationProof"],[15,"bool"],[8,"Field"],[8,"PrimeField"],[8,"SquareRootField"],[8,"AffineCurve"],[8,"CommitmentCurve"],[3,"Evaluation"],[3,"ScalarChallenge"],[8,"Deserializer"],[8,"CanonicalDeserialize"],[8,"CanonicalSerialize"],[8,"Deserialize"],[8,"PartialEq"],[8,"Debug"],[3,"Formatter"],[6,"Result"],[3,"CamlPolyComm"],[8,"From"],[8,"FnMut"],[8,"Iterator"],[8,"Serializer"],[8,"Serialize"],[3,"TypeId"],[8,"Copy"],[3,"OpeningProof"],[3,"CamlOpeningProof"],[4,"Value"],[8,"FromValue"],[8,"IntoValue"],[3,"OCamlRuntime"],[3,"Env"],[15,"str"],[3,"String"],[15,"u128"],[3,"Demand"],[3,"Challenges"],[8,"Default"],[8,"Into"],[8,"EndoCurve"],[8,"PairingEngine"],[3,"PairingSRS"],[3,"PairingProof"],[3,"SRS"],[8,"OpenProof"],[8,"SRS"],[4,"DensePolynomialOrEvaluations"]]},\ "snarky_deriver":{"doc":"This crate is not meant to be imported directly by users. …","t":"Y","n":["SnarkyType"],"q":[[0,"snarky_deriver"]],"d":["The SnarkyType derive macro. It generates implementations …"],"i":[0],"f":[0],"c":[],"p":[]},\ "test_optimism_preimage_read":{"doc":"","t":"F","n":["main"],"q":[[0,"test_optimism_preimage_read"]],"d":[""],"i":[0],"f":[[[],1]],"c":[],"p":[[3,"ExitCode"]]},\ -"turshi":{"doc":"This module contains the code that executes a compiled …","t":"CCCCCCAAAAARRRRRRRRRRRRRRRRRRRRRRRRRIKKKKDLLLLLLLLLLLLLLLLLLLLLLDDDDDILLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDIIIKLLLLLLLLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLLLLLKLKLKLKLKLKLKLKLLLLLLL","n":["CairoInstruction","CairoMemory","CairoProgram","FlagBits","Offsets","Pointers","flags","helper","memory","runner","word","AP_ADD","AP_ONE","AP_Z2","DST_AP","NUM_FLAGS","OP0_AP","OP1_AP","OP1_DBL","OP1_FP","OP1_VAL","OPC_AEQ","OPC_CALL","OPC_JMP_INC","OPC_RET","PC_ABS","PC_JNZ","PC_REL","PC_SIZ","POS_DST","POS_FLAGS","POS_OP0","POS_OP1","RES_ADD","RES_MUL","RES_ONE","CairoFieldHelpers","lsb","to_hex_be","to_u64","u16_chunk","CairoMemory","borrow","borrow_mut","deref","deref_mut","drop","fmt","from","get_codelen","index","index_mut","init","into","is_empty","len","new","read","to_string","try_from","try_into","type_id","vzip","write","CairoContext","CairoInstruction","CairoProgram","CairoState","CairoStep","Pointers","adr_dst","adr_op0","adr_op1","ap","ap","ap","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","dst","execute","f15","f_ap_add","f_ap_one","f_dst_fp","f_op0_fp","f_op1_ap","f_op1_fp","f_op1_val","f_opc_aeq","f_opc_call","f_opc_ret","f_pc_abs","f_pc_jnz","f_pc_rel","f_res_add","f_res_mul","fin","fp","fp","fp","from","from","from","from","from","ini","init","init","init","init","init","instr","instr","into","into","into","into","into","new","new","new","new","next_pc","off_dst","off_op0","off_op1","op0","op1","pc","pc","pc","res","set_dst","set_op0","set_op1","set_res","size","steps","to_owned","to_owned","to_owned","trace","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","CairoWord","FlagBits","FlagSets","Offsets","ap_up","ap_up","borrow","borrow_mut","clone","clone_into","deref","deref_mut","drop","dst_reg","dst_reg","f15","f15","f_ap_add","f_ap_add","f_ap_one","f_ap_one","f_dst_fp","f_dst_fp","f_op0_fp","f_op0_fp","f_op1_ap","f_op1_ap","f_op1_fp","f_op1_fp","f_op1_val","f_op1_val","f_opc_aeq","f_opc_aeq","f_opc_call","f_opc_call","f_opc_ret","f_opc_ret","f_pc_abs","f_pc_abs","f_pc_jnz","f_pc_jnz","f_pc_rel","f_pc_rel","f_res_add","f_res_add","f_res_mul","f_res_mul","from","init","into","new","off_dst","off_dst","off_op0","off_op0","off_op1","off_op1","op0_reg","op0_reg","op1_src","op1_src","opcode","opcode","pc_up","pc_up","res_log","res_log","to_owned","try_from","try_into","type_id","vzip","word"],"q":[[0,"turshi"],[11,"turshi::flags"],[36,"turshi::helper"],[41,"turshi::memory"],[64,"turshi::runner"],[192,"turshi::word"]],"d":["","","","","","","Definition of some constants for easier readability of the …","This module includes some field helpers that are useful …","This module represents the Cairo memory, containing the …","This module represents a run of a Cairo program as a …","The Cairo language works natively for field elements in …","Update ap by adding a number of positions","Update ap by self increment","Update by 2 in call instructions or zero behaviour for …","Destination refers to ap register","Number of Cairo flags","First operand refers to ap register","Second operand refers to ap register","Second operand is double indexing","Second operand refers to fp register","Second operand is immediate value","Operation code is an assert-equal","Operation code is a call","Operation code is a jump or an increment","Operation code is a return","Update pc by an absolute jump","Update pc by a conditional relative jump","Update pc by a relative jump","Default increase of pc by adding instruction size","Position of destination offset of 16 bits within …","Bit position of the beginning of the flags in a Cairo …","Position of first operand offset of 16 bits within …","Position of second operand offset of 16 bits within …","Result is an addition","Result is a multiplication","Result is a single operand","Field element helpers for Cairo","Return field element as byte, if it fits. Otherwise …","Return a field element in hexadecimal in big endian","Return first 64 bits of the field element","Return pos-th 16-bit chunk as another field element","This data structure stores the memory of the program","","","","","","","Returns the argument unchanged.","Get size of the public memory","","","","Calls U::from(self).","Returns whether the memory is empty (either length 0, or …","Get size of the full memory including dummy 0th entry","Create a new memory structure from a vector of field …","Read element in memory address","","","","","","Write u64 element in memory address","A structure to store auxiliary variables throughout …","This structure stores all the needed information relative …","This struct stores the needed information to run a program","A structure to store program counter, allocation pointer …","A data structure to store a current step of Cairo …","This trait contains functions to obtain the Cairo pointers …","Returns the destination address of the instruction","Returns the first operand address of the instruction","Returns the second operand address of the instruction","Returns the allocation pointer","","","","","","","","","","","","","","","","","","","This function creates an instance of a default CairoContext…","","","","","","","","","","","","","","","","Returns the destination of the instruction","Executes a Cairo step from the current registers","","","","","","","","","","","","","","","","","Outputs the final value of the pointers after the …","Returns the frame pointer","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Outputs the initial value of the pointers after the …","","","","","","This function returns the current word instruction being …","Returns the field element corresponding to the …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Creates a new Cairo execution step from a step index, a …","Creates a Cairo execution from the public information …","Creates a new triple of pointers","Creates a CairoInstruction","This function computes the next program counter Panics if …","","","","Returns the first operand of the instruction","Returns the second operand of the instruction","Returns the program counter","","","Returns the result of the instruction","This function computes the destination address","This function computes the first operand address","This function computes the second operand address and …","This function computes the value of the result of the …","Returns the size of the instruction","Outputs the total number of steps of the execution carried …","","","","Returns a reference to the set of instructions","","","","","","","","","","","","","","","","","","","","","A Cairo word for the runner. Some words are instructions …","This trait contains methods that decompose a field element …","This trait contains methods that decompose a field element …","This trait contains methods to obtain the offset …","Returns flagset for allocation pointer update","","","","","","","","","Returns flagset for destination register","","Returns bit-flag for 16th position","","Returns bit-flag for allocation counter update being a …","","Returns bit-flag for allocation counter update being a …","","Returns bit-flag for destination register as F","","Returns bit-flag for first operand register as F","","Returns bit-flag for allocation pointer for second …","","Returns bit-flag for frame pointer for second register as F","","Returns bit-flag for immediate value for second register …","","Returns bit-flag for operation being an assert-equal as F","","Returns bit-flag for operation being a call as F","","Returns bit-flag for operation being a return as F","","Returns bit-flag for program counter update being absolute …","","Returns bit-flag for program counter update being …","","Returns bit-flag for program counter update being relative …","","Returns bit-flag for addition operation in right side as F","","Returns bit-flag for multiplication operation in right …","","Returns the argument unchanged.","","Calls U::from(self).","Creates a CairoWord from a field element","Returns the destination offset in biased representation","","Returns the first operand offset in biased representation","","Returns the second operand offset in biased representation","","Returns flagset for first operand register","","Returns flagset for second operand register","","Returns flagset for operation code","","Returns flagset for program counter update","","Returns flagset for result logics","","","","","","","Returns the content of the word as a field element"],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,21,21,21,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,14,14,14,22,15,14,18,19,15,17,14,18,19,15,17,14,15,17,14,15,17,14,17,18,19,15,17,14,18,19,15,17,14,18,19,15,17,14,14,18,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,19,22,15,14,18,19,15,17,14,19,18,19,15,17,14,18,14,18,19,15,17,14,18,19,15,14,18,14,14,14,14,14,22,15,14,14,18,18,18,18,14,19,15,17,14,19,18,19,15,17,14,18,19,15,17,14,18,19,15,17,14,18,19,15,17,14,0,0,0,0,23,20,20,20,20,20,20,20,20,23,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,20,20,20,20,25,20,25,20,25,20,23,20,23,20,23,20,23,20,23,20,20,20,20,20,20,20],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],2],[[],3],[4],0,[[]],[[]],[4],[4],[4],[[[6,[5]],7],8],[[]],[[[6,[5]]],4],[[[6,[5]],5]],[[[6,[5]],5]],[[],4],[[]],[[[6,[5]]],9],[[[6,[5]]],3],[[[10,[5]]],[[6,[5]]]],[[[6,[5]],5],[[11,[5]]]],[[],2],[[],12],[[],12],[[],13],[[]],[[[6,[5]],5,5]],0,0,0,0,0,0,[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[]],[[[15,[5]]],5],[[[14,[5]]],5],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[15,[16]]],[[15,[16]]]],[[[17,[16]]],[[17,[16]]]],[[[14,[16]]],[[14,[16]]]],[[]],[[]],[[]],[[],[[17,[5]]]],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[[[14,[5]]],5],[[[18,[5]]],[[14,[5]]]],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[19,[5]]],[[15,[5]]]],[[]],[[[15,[5]]],5],[[[14,[5]]],5],[[]],[[]],[[]],[[]],[[]],[[[19,[5]]],[[15,[5]]]],[[],4],[[],4],[[],4],[[],4],[[],4],[[[18,[5]]],[[20,[5]]]],[[[14,[5]]],5],[[]],[[]],[[]],[[]],[[]],[[[6,[5]],[15,[5]]],[[18,[5]]]],[[[6,[5]],3],[[19,[5]]]],[[5,5,5],[[15,[5]]]],[[[20,[5]],[15,[5]],[17,[5]]],[[14,[5]]]],[[[18,[5]]],[[11,[5]]]],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[]],[[[15,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[18,[5]]]],[[[18,[5]]]],[[[18,[5]]]],[[[18,[5]]]],[[[14,[5]]],5],[[[19,[5]]],5],[[]],[[]],[[]],[[[19,[5]]],[[10,[[14,[5]]]]]],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],13],[[],13],[[],13],[[],13],[[],13],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[],1],[[[20,[5]]],1],[[]],[[]],[[[20,[16]]],[[20,[16]]]],[[]],[4],[4],[4],[[],1],[[[20,[5]]],1],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[],4],[[]],[5,[[20,[5]]]],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[],1],[[[20,[5]]],1],[[],1],[[[20,[5]]],1],[[],1],[[[20,[5]]],1],[[],1],[[[20,[5]]],1],[[],1],[[[20,[5]]],1],[[]],[[],12],[[],12],[[],13],[[]],[[[20,[5]]],5]],"c":[],"p":[[15,"u8"],[3,"String"],[15,"u64"],[15,"usize"],[8,"Field"],[3,"CairoMemory"],[3,"Formatter"],[6,"Result"],[15,"bool"],[3,"Vec"],[4,"Option"],[4,"Result"],[3,"TypeId"],[3,"CairoInstruction"],[3,"CairoState"],[8,"Clone"],[3,"CairoContext"],[3,"CairoStep"],[3,"CairoProgram"],[3,"CairoWord"],[8,"CairoFieldHelpers"],[8,"Pointers"],[8,"FlagSets"],[8,"FlagBits"],[8,"Offsets"]]}\ +"turshi":{"doc":"This module contains the code that executes a compiled …","t":"CCCCCCAAAAARRRRRRRRRRRRRRRRRRRRRRRRRIKKKKDLLLLLLLLLLLLLLLLLLLLLLDDDDDILLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDIIIKLFLLLLLLLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLKLLLLLKLKLKLKLKLKLKLKLLLLLLL","n":["CairoInstruction","CairoMemory","CairoProgram","FlagBits","Offsets","Pointers","flags","helper","memory","runner","word","AP_ADD","AP_ONE","AP_Z2","DST_AP","NUM_FLAGS","OP0_AP","OP1_AP","OP1_DBL","OP1_FP","OP1_VAL","OPC_AEQ","OPC_CALL","OPC_JMP_INC","OPC_RET","PC_ABS","PC_JNZ","PC_REL","PC_SIZ","POS_DST","POS_FLAGS","POS_OP0","POS_OP1","RES_ADD","RES_MUL","RES_ONE","CairoFieldHelpers","lsb","to_hex_be","to_u64","u16_chunk","CairoMemory","borrow","borrow_mut","deref","deref_mut","drop","fmt","from","get_codelen","index","index_mut","init","into","is_empty","len","new","read","to_string","try_from","try_into","type_id","vzip","write","CairoContext","CairoInstruction","CairoProgram","CairoState","CairoStep","Pointers","adr_dst","adr_op0","adr_op1","ap","ap","ap","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","default","deref","deref","deref","deref","deref","deref_mut","deref_mut","deref_mut","deref_mut","deref_mut","drop","drop","drop","drop","drop","dst","execute","f15","f_ap_add","f_ap_one","f_dst_fp","f_op0_fp","f_op1_ap","f_op1_fp","f_op1_val","f_opc_aeq","f_opc_call","f_opc_ret","f_pc_abs","f_pc_jnz","f_pc_rel","f_res_add","f_res_mul","fin","fp","fp","fp","from","from","from","from","from","ini","init","init","init","init","init","instr","instr","into","into","into","into","into","new","new","new","new","next_pc","off_dst","off_op0","off_op1","op0","op1","pc","pc","pc","res","set_dst","set_op0","set_op1","set_res","size","steps","to_owned","to_owned","to_owned","trace","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","vzip","vzip","vzip","vzip","vzip","CairoWord","FlagBits","FlagSets","Offsets","ap_up","ap_up","bias","borrow","borrow_mut","clone","clone_into","deref","deref_mut","drop","dst_reg","dst_reg","f15","f15","f_ap_add","f_ap_add","f_ap_one","f_ap_one","f_dst_fp","f_dst_fp","f_op0_fp","f_op0_fp","f_op1_ap","f_op1_ap","f_op1_fp","f_op1_fp","f_op1_val","f_op1_val","f_opc_aeq","f_opc_aeq","f_opc_call","f_opc_call","f_opc_ret","f_opc_ret","f_pc_abs","f_pc_abs","f_pc_jnz","f_pc_jnz","f_pc_rel","f_pc_rel","f_res_add","f_res_add","f_res_mul","f_res_mul","from","init","into","new","off_dst","off_dst","off_op0","off_op0","off_op1","off_op1","op0_reg","op0_reg","op1_src","op1_src","opcode","opcode","pc_up","pc_up","res_log","res_log","to_owned","try_from","try_into","type_id","vzip","word"],"q":[[0,"turshi"],[11,"turshi::flags"],[36,"turshi::helper"],[41,"turshi::memory"],[64,"turshi::runner"],[192,"turshi::word"]],"d":["","","","","","","Definition of some constants for easier readability of the …","This module includes some field helpers that are useful …","This module represents the Cairo memory, containing the …","This module represents a run of a Cairo program as a …","The Cairo language works natively for field elements in …","Update ap by adding a number of positions","Update ap by self increment","Update by 2 in call instructions or zero behaviour for …","Destination refers to ap register","Number of Cairo flags","First operand refers to ap register","Second operand refers to ap register","Second operand is double indexing","Second operand refers to fp register","Second operand is immediate value","Operation code is an assert-equal","Operation code is a call","Operation code is a jump or an increment","Operation code is a return","Update pc by an absolute jump","Update pc by a conditional relative jump","Update pc by a relative jump","Default increase of pc by adding instruction size","Position of destination offset of 16 bits within …","Bit position of the beginning of the flags in a Cairo …","Position of first operand offset of 16 bits within …","Position of second operand offset of 16 bits within …","Result is an addition","Result is a multiplication","Result is a single operand","Field element helpers for Cairo","Return field element as byte, if it fits. Otherwise …","Return a field element in hexadecimal in big endian","Return first 64 bits of the field element","Return pos-th 16-bit chunk as another field element","This data structure stores the memory of the program","","","","","","","Returns the argument unchanged.","Get size of the public memory","","","","Calls U::from(self).","Returns whether the memory is empty (either length 0, or …","Get size of the full memory including dummy 0th entry","Create a new memory structure from a vector of field …","Read element in memory address","","","","","","Write u64 element in memory address","A structure to store auxiliary variables throughout …","This structure stores all the needed information relative …","This struct stores the needed information to run a program","A structure to store program counter, allocation pointer …","A data structure to store a current step of Cairo …","This trait contains functions to obtain the Cairo pointers …","Returns the destination address of the instruction","Returns the first operand address of the instruction","Returns the second operand address of the instruction","Returns the allocation pointer","","","","","","","","","","","","","","","","","","","This function creates an instance of a default CairoContext…","","","","","","","","","","","","","","","","Returns the destination of the instruction","Executes a Cairo step from the current registers","","","","","","","","","","","","","","","","","Outputs the final value of the pointers after the …","Returns the frame pointer","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Outputs the initial value of the pointers after the …","","","","","","This function returns the current word instruction being …","Returns the field element corresponding to the …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Creates a new Cairo execution step from a step index, a …","Creates a Cairo execution from the public information …","Creates a new triple of pointers","Creates a CairoInstruction","This function computes the next program counter Panics if …","","","","Returns the first operand of the instruction","Returns the second operand of the instruction","Returns the program counter","","","Returns the result of the instruction","This function computes the destination address","This function computes the first operand address","This function computes the second operand address and …","This function computes the value of the result of the …","Returns the size of the instruction","Outputs the total number of steps of the execution carried …","","","","Returns a reference to the set of instructions","","","","","","","","","","","","","","","","","","","","","A Cairo word for the runner. Some words are instructions …","This trait contains methods that decompose a field element …","This trait contains methods that decompose a field element …","This trait contains methods to obtain the offset …","Returns flagset for allocation pointer update","","Returns an offset of 16 bits to its biased representation …","","","","","","","","Returns flagset for destination register","","Returns bit-flag for 16th position","","Returns bit-flag for allocation counter update being a …","","Returns bit-flag for allocation counter update being a …","","Returns bit-flag for destination register as F","","Returns bit-flag for first operand register as F","","Returns bit-flag for allocation pointer for second …","","Returns bit-flag for frame pointer for second register as F","","Returns bit-flag for immediate value for second register …","","Returns bit-flag for operation being an assert-equal as F","","Returns bit-flag for operation being a call as F","","Returns bit-flag for operation being a return as F","","Returns bit-flag for program counter update being absolute …","","Returns bit-flag for program counter update being …","","Returns bit-flag for program counter update being relative …","","Returns bit-flag for addition operation in right side as F","","Returns bit-flag for multiplication operation in right …","","Returns the argument unchanged.","","Calls U::from(self).","Creates a CairoWord from a field element","Returns the destination offset in biased representation","","Returns the first operand offset in biased representation","","Returns the second operand offset in biased representation","","Returns flagset for first operand register","","Returns flagset for second operand register","","Returns flagset for operation code","","Returns flagset for program counter update","","Returns flagset for result logics","","","","","","","Returns the content of the word as a field element"],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,21,21,21,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,14,14,14,22,15,14,18,19,15,17,14,18,19,15,17,14,15,17,14,15,17,14,17,18,19,15,17,14,18,19,15,17,14,18,19,15,17,14,14,18,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,19,22,15,14,18,19,15,17,14,19,18,19,15,17,14,18,14,18,19,15,17,14,18,19,15,14,18,14,14,14,14,14,22,15,14,14,18,18,18,18,14,19,15,17,14,19,18,19,15,17,14,18,19,15,17,14,18,19,15,17,14,18,19,15,17,14,0,0,0,0,23,20,0,20,20,20,20,20,20,20,23,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,24,20,20,20,20,20,25,20,25,20,25,20,23,20,23,20,23,20,23,20,23,20,20,20,20,20,20,20],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],2],[[],3],[4],0,[[]],[[]],[4],[4],[4],[[[6,[5]],7],8],[[]],[[[6,[5]]],4],[[[6,[5]],5]],[[[6,[5]],5]],[[],4],[[]],[[[6,[5]]],9],[[[6,[5]]],3],[[[10,[5]]],[[6,[5]]]],[[[6,[5]],5],[[11,[5]]]],[[],2],[[],12],[[],12],[[],13],[[]],[[[6,[5]],5,5]],0,0,0,0,0,0,[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[]],[[[15,[5]]],5],[[[14,[5]]],5],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[15,[16]]],[[15,[16]]]],[[[17,[16]]],[[17,[16]]]],[[[14,[16]]],[[14,[16]]]],[[]],[[]],[[]],[[],[[17,[5]]]],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[4],[[[14,[5]]],5],[[[18,[5]]],[[14,[5]]]],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[19,[5]]],[[15,[5]]]],[[]],[[[15,[5]]],5],[[[14,[5]]],5],[[]],[[]],[[]],[[]],[[]],[[[19,[5]]],[[15,[5]]]],[[],4],[[],4],[[],4],[[],4],[[],4],[[[18,[5]]],[[20,[5]]]],[[[14,[5]]],5],[[]],[[]],[[]],[[]],[[]],[[[6,[5]],[15,[5]]],[[18,[5]]]],[[[6,[5]],3],[[19,[5]]]],[[5,5,5],[[15,[5]]]],[[[20,[5]],[15,[5]],[17,[5]]],[[14,[5]]]],[[[18,[5]]],[[11,[5]]]],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[]],[[[15,[5]]],5],[[[14,[5]]],5],[[[14,[5]]],5],[[[18,[5]]]],[[[18,[5]]]],[[[18,[5]]]],[[[18,[5]]]],[[[14,[5]]],5],[[[19,[5]]],5],[[]],[[]],[[]],[[[19,[5]]],[[10,[[14,[5]]]]]],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],12],[[],13],[[],13],[[],13],[[],13],[[],13],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[],1],[[[20,[5]]],1],[5,5],[[]],[[]],[[[20,[16]]],[[20,[16]]]],[[]],[4],[4],[4],[[],1],[[[20,[5]]],1],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[],4],[[]],[5,[[20,[5]]]],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[]],[[[20,[5]]],5],[[],1],[[[20,[5]]],1],[[],1],[[[20,[5]]],1],[[],1],[[[20,[5]]],1],[[],1],[[[20,[5]]],1],[[],1],[[[20,[5]]],1],[[]],[[],12],[[],12],[[],13],[[]],[[[20,[5]]],5]],"c":[],"p":[[15,"u8"],[3,"String"],[15,"u64"],[15,"usize"],[8,"Field"],[3,"CairoMemory"],[3,"Formatter"],[6,"Result"],[15,"bool"],[3,"Vec"],[4,"Option"],[4,"Result"],[3,"TypeId"],[3,"CairoInstruction"],[3,"CairoState"],[8,"Clone"],[3,"CairoContext"],[3,"CairoStep"],[3,"CairoProgram"],[3,"CairoWord"],[8,"CairoFieldHelpers"],[8,"Pointers"],[8,"FlagSets"],[8,"FlagBits"],[8,"Offsets"]]}\ }'); if (typeof window !== 'undefined' && window.initSearch) {window.initSearch(searchIndex)}; if (typeof exports !== 'undefined') {exports.searchIndex = searchIndex}; diff --git a/rustdoc/settings.html b/rustdoc/settings.html index 9718890d0b..042ebee940 100644 --- a/rustdoc/settings.html +++ b/rustdoc/settings.html @@ -1 +1 @@ -Rustdoc settings

      Rustdoc settings

      Back
      \ No newline at end of file +Rustdoc settings

      Rustdoc settings

      Back
      \ No newline at end of file diff --git a/rustdoc/src/o1_utils/foreign_field.rs.html b/rustdoc/src/o1_utils/foreign_field.rs.html index 2bd966bbdb..79e87a502d 100644 --- a/rustdoc/src/o1_utils/foreign_field.rs.html +++ b/rustdoc/src/o1_utils/foreign_field.rs.html @@ -194,85 +194,6 @@ 194 195 196 -197 -198 -199 -200 -201 -202 -203 -204 -205 -206 -207 -208 -209 -210 -211 -212 -213 -214 -215 -216 -217 -218 -219 -220 -221 -222 -223 -224 -225 -226 -227 -228 -229 -230 -231 -232 -233 -234 -235 -236 -237 -238 -239 -240 -241 -242 -243 -244 -245 -246 -247 -248 -249 -250 -251 -252 -253 -254 -255 -256 -257 -258 -259 -260 -261 -262 -263 -264 -265 -266 -267 -268 -269 -270 -271 -272 -273 -274 -275
      //! Describes helpers for foreign field arithmetics
       //! Generic parameters are as follows:
       //! - `B` is a bit length of one limb
      @@ -469,83 +390,4 @@
               F::from(2u64).pow([3 * B as u64])
           }
       }
      -
      -#[cfg(test)]
      -mod tests {
      -    use super::*;
      -    use crate::field_helpers::FieldHelpers;
      -    use ark_ec::AffineCurve;
      -    use ark_ff::One;
      -    use mina_curves::pasta::Pallas as CurvePoint;
      -
      -    /// Base field element type
      -    pub type BaseField = <CurvePoint as AffineCurve>::BaseField;
      -
      -    fn secp256k1_modulus() -> BigUint {
      -        BigUint::from_bytes_be(&secp256k1::constants::FIELD_SIZE)
      -    }
      -
      -    const TEST_B_1: usize = 88;
      -    const TEST_N_1: usize = 3;
      -    const TEST_B_2: usize = 15;
      -    const TEST_N_2: usize = 18;
      -
      -    #[test]
      -    fn test_big_be() {
      -        let big = secp256k1_modulus();
      -        let bytes = big.to_bytes_be();
      -        assert_eq!(
      -            ForeignElement::<BaseField, TEST_B_1, 3>::from_be(&bytes),
      -            ForeignElement::<BaseField, TEST_B_1, 3>::from_biguint(big.clone())
      -        );
      -        assert_eq!(
      -            ForeignElement::<BaseField, TEST_B_2, TEST_N_2>::from_be(&bytes),
      -            ForeignElement::<BaseField, TEST_B_2, TEST_N_2>::from_biguint(big)
      -        );
      -    }
      -
      -    #[test]
      -    fn test_to_biguint() {
      -        let big = secp256k1_modulus();
      -        let bytes = big.to_bytes_be();
      -        let fe = ForeignElement::<BaseField, TEST_B_1, TEST_N_1>::from_be(&bytes);
      -        assert_eq!(fe.to_biguint(), big);
      -        let fe2 = ForeignElement::<BaseField, TEST_B_2, TEST_N_2>::from_be(&bytes);
      -        assert_eq!(fe2.to_biguint(), big);
      -    }
      -
      -    #[test]
      -    fn test_from_biguint() {
      -        {
      -            let one = ForeignElement::<BaseField, TEST_B_1, TEST_N_1>::from_be(&[0x01]);
      -            assert_eq!(
      -                BaseField::from_biguint(&one.to_biguint()).unwrap(),
      -                BaseField::one()
      -            );
      -
      -            let max_big = BaseField::modulus_biguint() - 1u32;
      -            let max_fe =
      -                ForeignElement::<BaseField, TEST_B_1, TEST_N_1>::from_biguint(max_big.clone());
      -            assert_eq!(
      -                BaseField::from_biguint(&max_fe.to_biguint()).unwrap(),
      -                BaseField::from_bytes(&max_big.to_bytes_le()).unwrap(),
      -            );
      -        }
      -        {
      -            let one = ForeignElement::<BaseField, TEST_B_2, TEST_N_2>::from_be(&[0x01]);
      -            assert_eq!(
      -                BaseField::from_biguint(&one.to_biguint()).unwrap(),
      -                BaseField::one()
      -            );
      -
      -            let max_big = BaseField::modulus_biguint() - 1u32;
      -            let max_fe =
      -                ForeignElement::<BaseField, TEST_B_2, TEST_N_2>::from_biguint(max_big.clone());
      -            assert_eq!(
      -                BaseField::from_biguint(&max_fe.to_biguint()).unwrap(),
      -                BaseField::from_bytes(&max_big.to_bytes_le()).unwrap(),
      -            );
      -        }
      -    }
      -}
       
      \ No newline at end of file diff --git a/rustdoc/src/o1_utils/lib.rs.html b/rustdoc/src/o1_utils/lib.rs.html index 0c346b68f1..4cea4e06a1 100644 --- a/rustdoc/src/o1_utils/lib.rs.html +++ b/rustdoc/src/o1_utils/lib.rs.html @@ -34,10 +34,8 @@ 34 35 36 -37 -
      #![deny(missing_docs)]
      -
      -//! A collection of utility functions and constants that can be reused from multiple projects
      +
      //! A collection of utility functions and constants that can be reused from
      +//! multiple projects
       
       pub mod adjacent_pairs;
       pub mod array;
      diff --git a/rustdoc/src/o1_utils/math.rs.html b/rustdoc/src/o1_utils/math.rs.html
      index 740937bf05..917b711bf7 100644
      --- a/rustdoc/src/o1_utils/math.rs.html
      +++ b/rustdoc/src/o1_utils/math.rs.html
      @@ -21,33 +21,6 @@
       21
       22
       23
      -24
      -25
      -26
      -27
      -28
      -29
      -30
      -31
      -32
      -33
      -34
      -35
      -36
      -37
      -38
      -39
      -40
      -41
      -42
      -43
      -44
      -45
      -46
      -47
      -48
      -49
      -50
       
      //! This modules implements some math helper functions.
       
       /// Returns ceil(log2(d)) but panics if d = 0.
      @@ -71,31 +44,4 @@
       pub fn div_ceil(a: usize, b: usize) -> usize {
           (a + b - 1) / b
       }
      -
      -#[cfg(test)]
      -mod tests {
      -    use super::*;
      -
      -    #[test]
      -    fn test_log2() {
      -        let tests = [
      -            (1, 0),
      -            (2, 1),
      -            (3, 2),
      -            (9, 4),
      -            (15, 4),
      -            (16, 4),
      -            (17, 5),
      -            (15430, 14),
      -            (usize::MAX, 64),
      -        ];
      -        for (d, expected_res) in tests.iter() {
      -            let res = ceil_log2(*d);
      -            assert_eq!(
      -                res, *expected_res,
      -                "ceil(log2({d})) = {res}, expected = {expected_res}"
      -            )
      -        }
      -    }
      -}
       
    \ No newline at end of file diff --git a/rustdoc/src/turshi/word.rs.html b/rustdoc/src/turshi/word.rs.html index 2c103b35a4..a68a2989f7 100644 --- a/rustdoc/src/turshi/word.rs.html +++ b/rustdoc/src/turshi/word.rs.html @@ -240,70 +240,6 @@ 240 241 242 -243 -244 -245 -246 -247 -248 -249 -250 -251 -252 -253 -254 -255 -256 -257 -258 -259 -260 -261 -262 -263 -264 -265 -266 -267 -268 -269 -270 -271 -272 -273 -274 -275 -276 -277 -278 -279 -280 -281 -282 -283 -284 -285 -286 -287 -288 -289 -290 -291 -292 -293 -294 -295 -296 -297 -298 -299 -300 -301 -302 -303 -304 -305 -306
//! The Cairo language works natively for field elements in the finite field with
 //! modulus 0x800000000000011000000000000000000000000000000000000000000000001
 //! This is the hexadecimal value for 2 ^ 251 + 17 * 2 ^ 192 + 1
@@ -319,7 +255,7 @@
 pub struct CairoWord<F>(F);
 
 /// Returns an offset of 16 bits to its biased representation in the interval `[-2^15,2^15)` as a field element
-fn bias<F: Field>(offset: F) -> F {
+pub fn bias<F: Field>(offset: F) -> F {
     offset - F::from(2u16.pow(15u32)) // -2^15 + sum_(i=0..15) b_i * 2^i
 }
 
@@ -546,68 +482,4 @@
         2 * (2 * self.f_opc_aeq().lsb() + self.f_opc_ret().lsb()) + self.f_opc_call().lsb()
     }
 }
-
-#[cfg(test)]
-mod tests {
-    use crate::{
-        flags::*,
-        word::{FlagBits, FlagSets, Offsets},
-    };
-    use ark_ff::{One, Zero};
-    use mina_curves::pasta::Fp as F;
-
-    #[test]
-    fn test_biased() {
-        assert_eq!(F::one(), super::bias(F::from(0x8001)));
-        assert_eq!(F::zero(), super::bias(F::from(0x8000)));
-        assert_eq!(-F::one(), super::bias(F::from(0x7fff)));
-    }
-
-    #[test]
-    fn test_cairo_word() {
-        // Tests the structure of a Cairo word corresponding to the Cairo instruction: tempvar x = val
-        // This unit test checks offsets computation, flagbits and flagsets.
-        let word = super::CairoWord::new(F::from(0x480680017fff8000u64));
-
-        assert_eq!(word.off_dst(), F::zero());
-        assert_eq!(word.off_op0(), -F::one());
-        assert_eq!(word.off_op1(), F::one());
-
-        assert_eq!(word.f_dst_fp(), F::zero());
-        assert_eq!(word.f_op0_fp(), F::one());
-        assert_eq!(word.f_op1_val(), F::one());
-        assert_eq!(word.f_op1_fp(), F::zero());
-        assert_eq!(word.f_op1_ap(), F::zero());
-        assert_eq!(word.f_res_add(), F::zero());
-        assert_eq!(word.f_res_mul(), F::zero());
-        assert_eq!(word.f_pc_abs(), F::zero());
-        assert_eq!(word.f_pc_rel(), F::zero());
-        assert_eq!(word.f_pc_jnz(), F::zero());
-        assert_eq!(word.f_ap_add(), F::zero());
-        assert_eq!(word.f_ap_one(), F::one());
-        assert_eq!(word.f_opc_call(), F::zero());
-        assert_eq!(word.f_opc_ret(), F::zero());
-        assert_eq!(word.f_opc_aeq(), F::one());
-        assert_eq!(word.f15(), F::zero());
-
-        assert_eq!(word.dst_reg(), DST_AP);
-        assert_eq!(word.op0_reg(), 1 - OP0_AP);
-        assert_eq!(word.op1_src(), OP1_VAL);
-        assert_eq!(word.res_log(), RES_ONE);
-        assert_eq!(word.pc_up(), PC_SIZ);
-        assert_eq!(word.ap_up(), AP_ONE);
-        assert_eq!(word.opcode(), OPC_AEQ);
-
-        assert_eq!(
-            0x4806,
-            u32::from(word.dst_reg())
-                + 2 * u32::from(word.op0_reg())
-                + 2u32.pow(2) * u32::from(word.op1_src())
-                + 2u32.pow(5) * u32::from(word.res_log())
-                + 2u32.pow(7) * u32::from(word.pc_up())
-                + 2u32.pow(10) * u32::from(word.ap_up())
-                + 2u32.pow(12) * u32::from(word.opcode())
-        );
-    }
-}
 
\ No newline at end of file diff --git a/rustdoc/turshi/all.html b/rustdoc/turshi/all.html index 41265b8d43..01b222b576 100644 --- a/rustdoc/turshi/all.html +++ b/rustdoc/turshi/all.html @@ -1 +1 @@ -List of all items in this crate
\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/rustdoc/turshi/word/fn.bias.html b/rustdoc/turshi/word/fn.bias.html new file mode 100644 index 0000000000..b5190d6b6e --- /dev/null +++ b/rustdoc/turshi/word/fn.bias.html @@ -0,0 +1,2 @@ +bias in turshi::word - Rust

Function turshi::word::bias

source ·
pub fn bias<F: Field>(offset: F) -> F
Expand description

Returns an offset of 16 bits to its biased representation in the interval [-2^15,2^15) as a field element

+
\ No newline at end of file diff --git a/rustdoc/turshi/word/index.html b/rustdoc/turshi/word/index.html index 1c0dc27bfe..dcc396defa 100644 --- a/rustdoc/turshi/word/index.html +++ b/rustdoc/turshi/word/index.html @@ -1,6 +1,6 @@ -turshi::word - Rust

Module turshi::word

source ·
Expand description

The Cairo language works natively for field elements in the finite field with +turshi::word - Rust

Module turshi::word

source ·
Expand description

The Cairo language works natively for field elements in the finite field with modulus 0x800000000000011000000000000000000000000000000000000000000000001 This is the hexadecimal value for 2 ^ 251 + 17 * 2 ^ 192 + 1 Our Pallas curves have 255 bits, so Cairo native instructions will fit. This means that our Cairo implementation can admit a larger domain for immediate values than theirs.

-

Structs

  • A Cairo word for the runner. Some words are instructions (which fit inside a u64). Others are immediate values (any F element).

Traits

  • This trait contains methods that decompose a field element into CairoWord flagbits
  • This trait contains methods that decompose a field element into CairoWord flagsets
  • This trait contains methods to obtain the offset decomposition of a CairoWord
\ No newline at end of file +

Structs

  • A Cairo word for the runner. Some words are instructions (which fit inside a u64). Others are immediate values (any F element).

Traits

  • This trait contains methods that decompose a field element into CairoWord flagbits
  • This trait contains methods that decompose a field element into CairoWord flagsets
  • This trait contains methods to obtain the offset decomposition of a CairoWord

Functions

  • Returns an offset of 16 bits to its biased representation in the interval [-2^15,2^15) as a field element
\ No newline at end of file diff --git a/rustdoc/turshi/word/sidebar-items.js b/rustdoc/turshi/word/sidebar-items.js index 20c62a0853..b9a18ae7c8 100644 --- a/rustdoc/turshi/word/sidebar-items.js +++ b/rustdoc/turshi/word/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"struct":["CairoWord"],"trait":["FlagBits","FlagSets","Offsets"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"fn":["bias"],"struct":["CairoWord"],"trait":["FlagBits","FlagSets","Offsets"]}; \ No newline at end of file