You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, there is a lot of repeated code in prove that could be shared:
PPE and MSMEG2 have functionally identical computations for π, except that the commitment randomness for x, i.e. r, is a 1-column vector instead of a 2-column matrix R and the size of used randomness T is different. Call this e.g. prove_vars_in_G2.
PPE and MSMEG1 have functionally identical computations for θ, except that the commitment randomness for y, i.e. s, is a 1-column vector instead of a 2-column matrix S and the size of used randomness T is different. Call this e.g. prove_vars_in_G1.
MSMEG1 and QuadEqu have functionally identical computations for π, except that r is a 1-column vector instead of a 2-column and the size of T is different. Call this e.g. prove_scalar_vars_for_B2.
MSMEG2 and QuadEqu have functionally identical computations for θ, except that s is a 1-column vector instead of a 2-column and the size of T is different. Call this e.g. prove_scalar_vars_for_B1.
Similarly there is a lot of repeated code in verify that could be shared (although slightly less so):
PPE and MSMEG1 have functionally identical 1st and 3rd LHS terms (only differing in where variables originated before being committed) and identical 2nd RHS term. Call this private helper function e.g. verify_G1_vars.
PPE and MSMEG2 have functionally identical 2nd LHS term and identical 3rd RHS term. Call this e.g. verify_G2_vars.
MSMEG1 and QuadEqu have functionally identical 2nd LHS term and identical 3rd RHS term. Call this e.g. verify_scalar_consts_from_B2.
MSMEG2 and QuadEqu have functionally identical 1st and 3rd LHS terms and identical 2nd RHS term. Call this e.g. verify_scalar_consts_from_B1.
The text was updated successfully, but these errors were encountered:
Related: #20
Currently, there is a lot of repeated code in
prove
that could be shared:PPE
andMSMEG2
have functionally identical computations forπ
, except that the commitment randomness forx
, i.e.r
, is a 1-column vector instead of a 2-column matrixR
and the size of used randomnessT
is different. Call this e.g.prove_vars_in_G2
.PPE
andMSMEG1
have functionally identical computations forθ
, except that the commitment randomness fory
, i.e.s
, is a 1-column vector instead of a 2-column matrixS
and the size of used randomnessT
is different. Call this e.g.prove_vars_in_G1
.MSMEG1
andQuadEqu
have functionally identical computations forπ
, except thatr
is a 1-column vector instead of a 2-column and the size ofT
is different. Call this e.g.prove_scalar_vars_for_B2
.MSMEG2
andQuadEqu
have functionally identical computations forθ
, except thats
is a 1-column vector instead of a 2-column and the size ofT
is different. Call this e.g.prove_scalar_vars_for_B1
.Similarly there is a lot of repeated code in
verify
that could be shared (although slightly less so):PPE
andMSMEG1
have functionally identical 1st and 3rd LHS terms (only differing in where variables originated before being committed) and identical 2nd RHS term. Call this private helper function e.g.verify_G1_vars
.PPE
andMSMEG2
have functionally identical 2nd LHS term and identical 3rd RHS term. Call this e.g.verify_G2_vars
.MSMEG1
andQuadEqu
have functionally identical 2nd LHS term and identical 3rd RHS term. Call this e.g.verify_scalar_consts_from_B2
.MSMEG2
andQuadEqu
have functionally identical 1st and 3rd LHS terms and identical 2nd RHS term. Call this e.g.verify_scalar_consts_from_B1
.The text was updated successfully, but these errors were encountered: