@@ -33,8 +33,8 @@ static PROGRAM: LazyLock<Program> = LazyLock::new(|| load_cairo_program!("math_t
3333static INTERESTING_FELTS : LazyLock < Vec < BigUint > > = LazyLock :: new ( || {
3434 let p = & * CAIRO_PRIME ;
3535 vec ! [
36- BigUint :: from ( 0u64 ) ,
37- BigUint :: from ( 1u64 ) ,
36+ BigUint :: zero ( ) ,
37+ BigUint :: one ( ) ,
3838 BigUint :: from( 2u64 ) . pow( 128 ) - BigUint :: one( ) ,
3939 BigUint :: from( 2u64 ) . pow( 128 ) ,
4040 BigUint :: from( 2u64 ) . pow( 128 ) + BigUint :: one( ) ,
@@ -100,8 +100,8 @@ fn test_assert_not_zero(#[case] value: Option<BigUint>, #[case] check: VmCheck<(
100100// Case: a=(2, 5), b=(2, 10)
101101// Expected: Success.
102102#[ case:: not_equal_relocs(
103- MaybeRelocatable :: from( ( 2isize , 5 ) ) ,
104- MaybeRelocatable :: from( ( 2isize , 10 ) ) ,
103+ MaybeRelocatable :: from( ( 2 , 5 ) ) ,
104+ MaybeRelocatable :: from( ( 2 , 10 ) ) ,
105105 expect_ok
106106) ]
107107// Equal integers
@@ -116,24 +116,24 @@ fn test_assert_not_zero(#[case] value: Option<BigUint>, #[case] check: VmCheck<(
116116// Case: a=(1, 5), b=(1, 5)
117117// Expected: Error.
118118#[ case:: equal_relocs(
119- MaybeRelocatable :: from( ( 1isize , 5 ) ) ,
120- MaybeRelocatable :: from( ( 1isize , 5 ) ) ,
119+ MaybeRelocatable :: from( ( 1 , 5 ) ) ,
120+ MaybeRelocatable :: from( ( 1 , 5 ) ) ,
121121 expect_assert_not_equal_fail
122122) ]
123123// Non-comparable: relocatable vs int
124124// Case: a=(1, 5), b=0
125125// Expected: Error.
126126#[ case:: non_comparable_reloc_vs_int(
127- MaybeRelocatable :: from( ( 1isize , 5 ) ) ,
127+ MaybeRelocatable :: from( ( 1 , 5 ) ) ,
128128 MaybeRelocatable :: from( 0 ) ,
129129 expect_diff_type_comparison
130130) ]
131131// Non-comparable: different segments
132132// Case: a=(1, 5), b=(2, 3)
133133// Expected: Error.
134134#[ case:: non_comparable_diff_segments(
135- MaybeRelocatable :: from( ( 1isize , 5 ) ) ,
136- MaybeRelocatable :: from( ( 2isize , 3 ) ) ,
135+ MaybeRelocatable :: from( ( 1 , 5 ) ) ,
136+ MaybeRelocatable :: from( ( 2 , 3 ) ) ,
137137 expect_diff_index_comp
138138) ]
139139
@@ -153,10 +153,10 @@ fn test_assert_not_equal(
153153// Valid cases (should pass)
154154// Case: value=0
155155// Expected: Success.
156- #[ case:: zero( BigUint :: from ( 0u64 ) , expect_ok) ]
156+ #[ case:: zero( BigUint :: zero ( ) , expect_ok) ]
157157// Case: value=1
158158// Expected: Success.
159- #[ case:: one( BigUint :: from ( 1u64 ) , expect_ok) ]
159+ #[ case:: one( BigUint :: one ( ) , expect_ok) ]
160160// Case: value=(2^250)-1
161161// Expected: Success.
162162#[ case:: max_valid( BigUint :: from( 2u64 ) . pow( 250 ) - BigUint :: one( ) , expect_ok) ]
@@ -189,7 +189,7 @@ fn test_assert_250_bit(
189189 // If successful, verify the return value
190190 if res. is_ok ( ) {
191191 let ret = runner. vm . get_return_values ( 1 ) . unwrap ( ) ;
192- assert_mr_eq ! ( & ret[ 0 ] , & rc_base. add_usize( 3usize ) . unwrap( ) ) ;
192+ assert_mr_eq ! ( & ret[ 0 ] , & rc_base. add_usize( 3 ) . unwrap( ) ) ;
193193 }
194194}
195195
@@ -264,7 +264,7 @@ fn test_split_felt(mut runner: CairoFunctionRunner, #[case] idx: usize) {
264264 // ret = [range_check_ptr, high, low]
265265 assert_mr_eq ! (
266266 & ret[ 0 ] ,
267- & rc_base. add_usize( 3usize ) . unwrap( ) ,
267+ & rc_base. add_usize( 3 ) . unwrap( ) ,
268268 "range_check_ptr mismatch for value {value}"
269269 ) ;
270270 assert_mr_eq ! ( & ret[ 1 ] , & expected_high, "high mismatch for value {value}" ) ;
@@ -295,7 +295,7 @@ fn test_assert_le_felt(
295295 let ret = runner. vm . get_return_values ( 1 ) . unwrap ( ) ;
296296 assert_mr_eq ! (
297297 & ret[ 0 ] ,
298- & rc_base. add_usize( 4usize ) . unwrap( ) ,
298+ & rc_base. add_usize( 4 ) . unwrap( ) ,
299299 "range_check_ptr mismatch for {value0} <= {value1}"
300300 ) ;
301301 } else {
@@ -328,7 +328,7 @@ fn test_assert_lt_felt(
328328 let ret = runner. vm . get_return_values ( 1 ) . unwrap ( ) ;
329329 assert_mr_eq ! (
330330 & ret[ 0 ] ,
331- & rc_base. add_usize( 4usize ) . unwrap( ) ,
331+ & rc_base. add_usize( 4 ) . unwrap( ) ,
332332 "range_check_ptr mismatch for {value0} < {value1}"
333333 ) ;
334334 } else {
@@ -376,7 +376,7 @@ fn test_abs_value(
376376 let abs_value = value_case. magnitude ( ) ;
377377 if abs_value < & rc_bound_biguint {
378378 let ret = runner. vm . get_return_values ( 2 ) . unwrap ( ) ;
379- assert_mr_eq ! ( & ret[ 0 ] , & rc_base. add_usize( 1usize ) . unwrap( ) ) ;
379+ assert_mr_eq ! ( & ret[ 0 ] , & rc_base. add_usize( 1 ) . unwrap( ) ) ;
380380 assert_mr_eq ! ( & ret[ 1 ] , abs_value) ;
381381 }
382382}
@@ -423,7 +423,7 @@ fn test_sign(
423423 let expected_rc_ptr = if value_case. is_zero ( ) {
424424 rc_base
425425 } else {
426- rc_base. add_usize ( 1usize ) . unwrap ( )
426+ rc_base. add_usize ( 1 ) . unwrap ( )
427427 } ;
428428 assert_mr_eq ! ( & ret[ 0 ] , & expected_rc_ptr) ;
429429
@@ -552,7 +552,7 @@ fn test_unsigned_div_rem(
552552 let ret = runner. vm . get_return_values ( 3 ) . unwrap ( ) ;
553553 assert_mr_eq ! (
554554 & ret[ 0 ] ,
555- & rc_base. add_usize( 3usize ) . unwrap( ) ,
555+ & rc_base. add_usize( 3 ) . unwrap( ) ,
556556 "range_check_ptr mismatch"
557557 ) ;
558558 assert_mr_eq ! ( & ret[ 1 ] , & q, "quotient mismatch" ) ;
@@ -690,7 +690,7 @@ fn test_signed_div_rem(
690690 } ;
691691
692692 let value = q. clone ( ) * BigInt :: from ( div. clone ( ) ) + BigInt :: from ( r. clone ( ) ) ;
693- let half_prime = BigInt :: from ( ( & * CAIRO_PRIME ) >> 1usize ) ;
693+ let half_prime = BigInt :: from ( ( & * CAIRO_PRIME ) >> 1 ) ;
694694 let neg_half_prime = -half_prime. clone ( ) ;
695695 assert ! (
696696 value >= neg_half_prime && value < half_prime,
@@ -707,7 +707,7 @@ fn test_signed_div_rem(
707707 let result_q = & ret[ 1 ] ;
708708 let result_r = & ret[ 2 ] ;
709709
710- assert_mr_eq ! ( rc_ptr, & rc_base. add_usize( 4usize ) . unwrap( ) ) ;
710+ assert_mr_eq ! ( rc_ptr, & rc_base. add_usize( 4 ) . unwrap( ) ) ;
711711 // Expected_q = q % PRIME (field element conversion).
712712 let expected_q = Felt252 :: from ( & q) ;
713713 assert_mr_eq ! ( result_q, & expected_q) ;
@@ -720,56 +720,56 @@ fn test_signed_div_rem(
720720// Case: value=0x1234FCDA, n=10, base=16, bound=16, expected_output=vec![0xA, 0xD,
721721// 0xC, 0xF, 0x4, 0x3, 0x2, 0x1, 0, 0] Expected: Success.
722722#[ case:: hex_digits(
723- 0x1234FCDA_i64 ,
724- 10_i64 ,
725- 16_i64 ,
726- 16_i64 ,
723+ 0x1234FCDA ,
724+ 10 ,
725+ 16 ,
726+ 16 ,
727727 Some ( vec![ 0xA , 0xD , 0xC , 0xF , 0x4 , 0x3 , 0x2 , 0x1 , 0 , 0 ] ) ,
728728 expect_ok
729729) ]
730730// Case: value=0x1234FCDA, n=10, base=256, bound=256, expected_output=vec![0xDA,
731731// 0xFC, 0x34, 0x12, 0, 0, 0, 0, 0, 0] Expected: Success.
732732#[ case:: byte_pairs(
733- 0x1234FCDA_i64 ,
734- 10_i64 ,
735- 256_i64 ,
736- 256_i64 ,
733+ 0x1234FCDA ,
734+ 10 ,
735+ 256 ,
736+ 256 ,
737737 Some ( vec![ 0xDA , 0xFC , 0x34 , 0x12 , 0 , 0 , 0 , 0 , 0 , 0 ] ) ,
738738 expect_ok
739739) ]
740740// Case: value=0x1234FCDA, n=10, base=16, bound=15, expected_output=random
741741// Expected: Error.
742742#[ case:: out_of_bound_limb(
743- 0x1234FCDA_i64 ,
744- 10_i64 ,
745- 16_i64 ,
746- 15_i64 ,
743+ 0x1234FCDA ,
744+ 10 ,
745+ 16 ,
746+ 15 ,
747747 None ,
748748 expect_split_int_limb_out_of_range
749749) ]
750750// Case: value=0xAAA, n=3, base=16, bound=11, expected_output=vec![0xA, 0xA, 0xA]
751751// Expected: Success.
752752#[ case:: exact_fit(
753- 0xAAA_i64 ,
754- 3_i64 ,
755- 16_i64 ,
756- 11_i64 ,
753+ 0xAAA ,
754+ 3 ,
755+ 16 ,
756+ 11 ,
757757 Some ( vec![ 0xA , 0xA , 0xA ] ) ,
758758 expect_ok
759759) ]
760760// Case: value=0xAAA, n=3, base=16, bound=10, expected_output=random
761761// Expected: Error.
762762#[ case:: bound_too_small(
763- 0xAAA_i64 ,
764- 3_i64 ,
765- 16_i64 ,
766- 10_i64 ,
763+ 0xAAA ,
764+ 3 ,
765+ 16 ,
766+ 10 ,
767767 None ,
768768 expect_split_int_limb_out_of_range
769769) ]
770770// Case: value=0xAAA, n=2, base=16, bound=16, expected_output=random
771771// Expected: Error.
772- #[ case:: value_out_of_range( 0xAAA_i64 , 2_i64 , 16_i64 , 16_i64 , None , expect_split_int_not_zero) ]
772+ #[ case:: value_out_of_range( 0xAAA , 2 , 16 , 16 , None , expect_split_int_not_zero) ]
773773fn test_split_int (
774774 mut runner : CairoFunctionRunner ,
775775 #[ case] value : i64 ,
@@ -794,7 +794,7 @@ fn test_split_int(
794794 let expected_output =
795795 expected_output. expect ( "expected_output must be set for success case" ) ;
796796 let ret = runner. vm . get_return_values ( 1 ) . unwrap ( ) ;
797- assert_mr_eq ! ( & ret[ 0 ] , & rc_base. add_usize( 2usize * n as usize ) . unwrap( ) ) ;
797+ assert_mr_eq ! ( & ret[ 0 ] , & rc_base. add_usize( 2 * n as usize ) . unwrap( ) ) ;
798798
799799 let range = runner. vm . get_range ( output, n as usize ) ;
800800 assert_eq ! (
@@ -819,10 +819,10 @@ fn test_split_int(
819819#[ rstest]
820820// Case: value=0
821821// Expected: Success.
822- #[ case:: zero( Some ( BigUint :: from ( 0u64 ) ) , expect_ok) ]
822+ #[ case:: zero( Some ( BigUint :: zero ( ) ) , expect_ok) ]
823823// Case: value=1
824824// Expected: Success.
825- #[ case:: one( Some ( BigUint :: from ( 1u64 ) ) , expect_ok) ]
825+ #[ case:: one( Some ( BigUint :: one ( ) ) , expect_ok) ]
826826// Case: value=2
827827// Expected: Success.
828828#[ case:: two( Some ( BigUint :: from( 2u64 ) ) , expect_ok) ]
@@ -869,7 +869,7 @@ fn test_sqrt(
869869) {
870870 let value = value. unwrap_or_else ( || {
871871 let mut rng = thread_rng ( ) ;
872- let upper = BigUint :: one ( ) << 250usize ;
872+ let upper = BigUint :: from ( 2u64 ) . pow ( 250 ) ;
873873 rng. gen_biguint_range ( & BigUint :: zero ( ) , & upper)
874874 } ) ;
875875
@@ -885,7 +885,7 @@ fn test_sqrt(
885885 let ret = runner. vm . get_return_values ( 2 ) . unwrap ( ) ;
886886 assert_mr_eq ! (
887887 & ret[ 0 ] ,
888- & rc_base. add_usize( 4usize ) . unwrap( ) ,
888+ & rc_base. add_usize( 4 ) . unwrap( ) ,
889889 "range_check_ptr mismatch for sqrt({value})"
890890 ) ;
891891
@@ -975,12 +975,12 @@ fn test_is_quad_residue(mut runner: CairoFunctionRunner, #[case] x: Option<BigUi
975975 . unwrap ( ) ;
976976 let ret2 = runner2. vm . get_return_values ( 1 ) . unwrap ( ) ;
977977
978- let expected2 = if x. is_zero ( ) {
979- 1i64 // 3 * 0 = 0, which is QR
978+ let expected2: i64 = if x. is_zero ( ) {
979+ 1 // 3 * 0 = 0, which is QR
980980 } else if is_quad_residue_mod_prime ( & x) == 1 {
981- 0i64 // x is QR, 3 is not QR, so 3*x is not QR
981+ 0 // x is QR, 3 is not QR, so 3*x is not QR
982982 } else {
983- 1i64 // x is not QR, 3 is not QR, so 3*x is QR (product of two non-QR is QR)
983+ 1 // x is not QR, 3 is not QR, so 3*x is QR (product of two non-QR is QR)
984984 } ;
985985 assert_mr_eq ! (
986986 & ret2[ 0 ] ,
0 commit comments