@@ -92,7 +92,7 @@ __contract__(
9292 requires (memory_no_alias (v , sizeof (mld_polyvecl )))
9393 requires (forall (k0 , 0 , MLDSA_L , forall (k1 , 0 , MLDSA_N , (int64_t ) u -> vec [k0 ].coeffs [k1 ] + v - > vec [k0 ].coeffs [k1 ] < REDUCE32_DOMAIN_MAX )))
9494 requires (forall (k2 , 0 , MLDSA_L , forall (k3 , 0 , MLDSA_N , (int64_t ) u -> vec [k2 ].coeffs [k3 ] + v - > vec [k2 ].coeffs [k3 ] >= INT32_MIN )))
95- assigns (object_whole ( u ))
95+ assigns (memory_slice ( u , sizeof ( mld_polyvecl ) ))
9696 ensures (forall (k4 , 0 , MLDSA_L , forall (k5 , 0 , MLDSA_N , u - > vec [k4 ].coeffs [k5 ] == old (* u ).vec [k4 ].coeffs [k5 ] + v - > vec [k4 ].coeffs [k5 ])))
9797 ensures (forall (k6 , 0 , MLDSA_L ,
9898 array_bound (u -> vec [k6 ].coeffs , 0 , MLDSA_N , INT32_MIN , REDUCE32_DOMAIN_MAX )))
@@ -290,7 +290,7 @@ __contract__(
290290 requires (memory_no_alias (v , sizeof (mld_polyveck )))
291291 requires (forall (k0 , 0 , MLDSA_K , forall (k1 , 0 , MLDSA_N , (int64_t ) u -> vec [k0 ].coeffs [k1 ] + v - > vec [k0 ].coeffs [k1 ] < REDUCE32_DOMAIN_MAX )))
292292 requires (forall (k2 , 0 , MLDSA_K , forall (k3 , 0 , MLDSA_N , (int64_t ) u -> vec [k2 ].coeffs [k3 ] + v - > vec [k2 ].coeffs [k3 ] >= INT32_MIN )))
293- assigns (object_whole ( u ))
293+ assigns (memory_slice ( u , sizeof ( mld_polyveck ) ))
294294 ensures (forall (k4 , 0 , MLDSA_K , forall (k5 , 0 , MLDSA_N , u - > vec [k4 ].coeffs [k5 ] == old (* u ).vec [k4 ].coeffs [k5 ] + v - > vec [k4 ].coeffs [k5 ])))
295295 ensures (forall (k6 , 0 , MLDSA_L ,
296296 array_bound (u -> vec [k6 ].coeffs , 0 , MLDSA_N , INT32_MIN , REDUCE32_DOMAIN_MAX )))
@@ -314,7 +314,7 @@ __contract__(
314314 requires (memory_no_alias (v , sizeof (mld_polyveck )))
315315 requires (forall (k0 , 0 , MLDSA_K , array_abs_bound (u - > vec [k0 ].coeffs , 0 , MLDSA_N , MLDSA_Q )))
316316 requires (forall (k1 , 0 , MLDSA_K , array_abs_bound (v - > vec [k1 ].coeffs , 0 , MLDSA_N , MLDSA_Q )))
317- assigns (object_whole ( u ))
317+ assigns (memory_slice ( u , sizeof ( mld_polyveck ) ))
318318 ensures (forall (k0 , 0 , MLDSA_K ,
319319 array_bound (u - > vec [k0 ].coeffs , 0 , MLDSA_N , INT32_MIN , REDUCE32_DOMAIN_MAX )))
320320);
@@ -507,7 +507,7 @@ __contract__(
507507 requires (memory_no_alias (h , sizeof (mld_polyveck )))
508508 requires (memory_no_alias (v0 , sizeof (mld_polyveck )))
509509 requires (memory_no_alias (v1 , sizeof (mld_polyveck )))
510- assigns (object_whole ( h ))
510+ assigns (memory_slice ( h , sizeof ( mld_polyveck ) ))
511511 ensures (return_value <= MLDSA_N * MLDSA_K )
512512 ensures (forall (k1 , 0 , MLDSA_K , array_bound (h - > vec [k1 ].coeffs , 0 , MLDSA_N , 0 , 2 )))
513513);
@@ -559,7 +559,7 @@ __contract__(
559559 requires (memory_no_alias (w1 , sizeof (mld_polyveck )))
560560 requires (forall (k1 , 0 , MLDSA_K ,
561561 array_bound (w1 - > vec [k1 ].coeffs , 0 , MLDSA_N , 0 , (MLDSA_Q - 1 )/(2 * MLDSA_GAMMA2 ))))
562- assigns (object_whole ( r ))
562+ assigns (memory_slice ( r , MLDSA_K * MLDSA_POLYW1_PACKEDBYTES ))
563563);
564564
565565#define mld_polyveck_pack_eta MLD_NAMESPACE_KL(polyveck_pack_eta)
@@ -581,7 +581,7 @@ __contract__(
581581 requires (memory_no_alias (p , sizeof (mld_polyveck )))
582582 requires (forall (k1 , 0 , MLDSA_K ,
583583 array_abs_bound (p - > vec [k1 ].coeffs , 0 , MLDSA_N , MLDSA_ETA + 1 )))
584- assigns (object_whole ( r ))
584+ assigns (memory_slice ( r , MLDSA_K * MLDSA_POLYETA_PACKEDBYTES ))
585585);
586586
587587#define mld_polyvecl_pack_eta MLD_NAMESPACE_KL(polyvecl_pack_eta)
@@ -603,7 +603,7 @@ __contract__(
603603 requires (memory_no_alias (p , sizeof (mld_polyvecl )))
604604 requires (forall (k1 , 0 , MLDSA_L ,
605605 array_abs_bound (p - > vec [k1 ].coeffs , 0 , MLDSA_N , MLDSA_ETA + 1 )))
606- assigns (object_whole ( r ))
606+ assigns (memory_slice ( r , MLDSA_L * MLDSA_POLYETA_PACKEDBYTES ))
607607);
608608
609609#define mld_polyvecl_pack_z MLD_NAMESPACE_KL(polyvecl_pack_z)
@@ -625,7 +625,7 @@ __contract__(
625625 requires (memory_no_alias (p , sizeof (mld_polyvecl )))
626626 requires (forall (k1 , 0 , MLDSA_L ,
627627 array_bound (p - > vec [k1 ].coeffs , 0 , MLDSA_N , - (MLDSA_GAMMA1 - 1 ), MLDSA_GAMMA1 + 1 )))
628- assigns (object_whole ( r ))
628+ assigns (memory_slice ( r , MLDSA_L * MLDSA_POLYZ_PACKEDBYTES ))
629629);
630630
631631#define mld_polyveck_pack_t0 MLD_NAMESPACE_KL(polyveck_pack_t0)
@@ -647,7 +647,7 @@ __contract__(
647647 requires (memory_no_alias (p , sizeof (mld_polyveck )))
648648 requires (forall (k0 , 0 , MLDSA_K ,
649649 array_bound (p - > vec [k0 ].coeffs , 0 , MLDSA_N , - (1 <<(MLDSA_D - 1 )) + 1 , (1 <<(MLDSA_D - 1 )) + 1 )))
650- assigns (object_whole ( r ))
650+ assigns (memory_slice ( r , MLDSA_K * MLDSA_POLYT0_PACKEDBYTES ))
651651);
652652
653653#define mld_polyvecl_unpack_eta MLD_NAMESPACE_KL(polyvecl_unpack_eta)
@@ -667,7 +667,7 @@ void mld_polyvecl_unpack_eta(
667667__contract__ (
668668 requires (memory_no_alias (r , MLDSA_L * MLDSA_POLYETA_PACKEDBYTES ))
669669 requires (memory_no_alias (p , sizeof (mld_polyvecl )))
670- assigns (object_whole ( p ))
670+ assigns (memory_slice ( p , sizeof ( mld_polyvecl ) ))
671671 ensures (forall (k1 , 0 , MLDSA_L ,
672672 array_bound (p - > vec [k1 ].coeffs , 0 , MLDSA_N , MLD_POLYETA_UNPACK_LOWER_BOUND , MLDSA_ETA + 1 )))
673673);
@@ -689,7 +689,7 @@ void mld_polyvecl_unpack_z(mld_polyvecl *z,
689689__contract__ (
690690 requires (memory_no_alias (r , MLDSA_L * MLDSA_POLYZ_PACKEDBYTES ))
691691 requires (memory_no_alias (z , sizeof (mld_polyvecl )))
692- assigns (object_whole ( z ))
692+ assigns (memory_slice ( z , sizeof ( mld_polyvecl ) ))
693693 ensures (forall (k1 , 0 , MLDSA_L ,
694694 array_bound (z - > vec [k1 ].coeffs , 0 , MLDSA_N , - (MLDSA_GAMMA1 - 1 ), MLDSA_GAMMA1 + 1 )))
695695);
@@ -711,7 +711,7 @@ void mld_polyveck_unpack_eta(
711711__contract__ (
712712 requires (memory_no_alias (r , MLDSA_K * MLDSA_POLYETA_PACKEDBYTES ))
713713 requires (memory_no_alias (p , sizeof (mld_polyveck )))
714- assigns (object_whole ( p ))
714+ assigns (memory_slice ( p , sizeof ( mld_polyveck ) ))
715715 ensures (forall (k1 , 0 , MLDSA_K ,
716716 array_bound (p - > vec [k1 ].coeffs , 0 , MLDSA_N , MLD_POLYETA_UNPACK_LOWER_BOUND , MLDSA_ETA + 1 )))
717717);
@@ -733,7 +733,7 @@ void mld_polyveck_unpack_t0(mld_polyveck *p,
733733__contract__ (
734734 requires (memory_no_alias (r , MLDSA_K * MLDSA_POLYT0_PACKEDBYTES ))
735735 requires (memory_no_alias (p , sizeof (mld_polyveck )))
736- assigns (object_whole ( p ))
736+ assigns (memory_slice ( p , sizeof ( mld_polyveck ) ))
737737 ensures (forall (k1 , 0 , MLDSA_K ,
738738 array_bound (p - > vec [k1 ].coeffs , 0 , MLDSA_N , - (1 <<(MLDSA_D - 1 )) + 1 , (1 <<(MLDSA_D - 1 )) + 1 )))
739739);
@@ -795,7 +795,7 @@ __contract__(
795795 array_bound (mat [k1 ].vec [l1 ].coeffs , 0 , MLDSA_N , 0 , MLDSA_Q ))))
796796 requires (forall (l1 , 0 , MLDSA_L ,
797797 array_abs_bound (v - > vec [l1 ].coeffs , 0 , MLDSA_N , MLD_NTT_BOUND )))
798- assigns (object_whole ( t ))
798+ assigns (memory_slice ( t , sizeof ( mld_polyveck ) ))
799799 ensures (forall (k0 , 0 , MLDSA_K ,
800800 array_abs_bound (t - > vec [k0 ].coeffs , 0 , MLDSA_N , MLDSA_Q )))
801801);
0 commit comments