@@ -76,7 +76,6 @@ contract modular_verifier_circuit1 is IModularVerifier{
76
76
uint256 Z_at_xi;
77
77
uint256 l0;
78
78
uint256 [f_parts] F;
79
- uint256 gas;
80
79
bool b;
81
80
}
82
81
@@ -124,10 +123,9 @@ contract modular_verifier_circuit1 is IModularVerifier{
124
123
function verify (
125
124
bytes calldata blob ,
126
125
uint256 [] calldata public_input
127
- ) public view returns (bool result ) {
126
+ ) public returns (bool result ) {
128
127
verifier_state memory state;
129
128
state.b = true ;
130
- state.gas = gasleft ();
131
129
state.xi = basic_marshalling.get_uint256_be (blob, 0x79 );
132
130
state.Z_at_xi = addmod (field.pow_small (state.xi, rows_amount, modulus), modulus-1 , modulus);
133
131
state.l0 = mulmod (
@@ -139,7 +137,7 @@ contract modular_verifier_circuit1 is IModularVerifier{
139
137
//0. Direct public input check
140
138
if (public_input.length > 0 ) {
141
139
if (! public_input_direct (blob[865 :865+320 ], public_input, state)) {
142
- console. log ( " Wrong public input! " );
140
+ emit WrongPublicInput ( );
143
141
state.b = false ;
144
142
}
145
143
}
@@ -198,7 +196,6 @@ contract modular_verifier_circuit1 is IModularVerifier{
198
196
F_consolidated = addmod (F_consolidated, mulmod (state.F[i],transcript.get_field_challenge (tr_state, modulus), modulus), modulus);
199
197
unchecked {i++ ;}
200
198
}
201
- uint256 points_num = basic_marshalling.get_length (blob, 0x79 + 0x20 );
202
199
transcript.update_transcript_b32_by_offset_calldata (tr_state, blob, 0x59 );
203
200
}
204
201
@@ -214,7 +211,7 @@ contract modular_verifier_circuit1 is IModularVerifier{
214
211
if (! modular_commitment_scheme_circuit1.verify_eval (
215
212
blob[z_offset - 0x8 :], commitments, state.xi, tr_state.current_challenge
216
213
)) {
217
- console. log ( " Error from commitment scheme! " );
214
+ emit WrongCommitment ( );
218
215
state.b = false ;
219
216
}
220
217
}
@@ -233,13 +230,16 @@ contract modular_verifier_circuit1 is IModularVerifier{
233
230
unchecked {i++ ;}
234
231
}
235
232
if ( F_consolidated != mulmod (T_consolidated, state.Z_at_xi, modulus) ) {
236
- console. log ( " Error. Table does't satisfy constraint system " );
233
+ emit ConstraintSystemNotSatisfied ( );
237
234
state.b = false ;
238
235
}
239
- if (state.b) console.log ("SUCCESS! " ); else console.log ("FAILURE! " );
236
+ if (state.b) {
237
+ emit ProofVerified ();
238
+ } else {
239
+ emit ProofVerificationFailed ();
240
+ }
240
241
}
241
242
242
- console.log ("Gas for verification: " , state.gas- gasleft ());
243
243
result = state.b;
244
244
}
245
245
}
0 commit comments