diff --git a/.github/workflows/hax.yml b/.github/workflows/hax.yml index 0846a37b9..17e057f4b 100644 --- a/.github/workflows/hax.yml +++ b/.github/workflows/hax.yml @@ -34,7 +34,7 @@ jobs: - uses: DeterminateSystems/magic-nix-cache-action@main - name: ⤵ Install FStar - run: nix profile install github:FStarLang/FStar/v2024.09.05 + run: nix profile install github:FStarLang/FStar/v2024.12.03 - name: ⤵ Clone HACL-star repository uses: actions/checkout@v4 diff --git a/libcrux-ml-dsa/proofs/fstar/extraction/Libcrux_ml_dsa.Simd.Avx2.fst b/libcrux-ml-dsa/proofs/fstar/extraction/Libcrux_ml_dsa.Simd.Avx2.fst index 69d3f5bea..4a4ea00ea 100644 --- a/libcrux-ml-dsa/proofs/fstar/extraction/Libcrux_ml_dsa.Simd.Avx2.fst +++ b/libcrux-ml-dsa/proofs/fstar/extraction/Libcrux_ml_dsa.Simd.Avx2.fst @@ -7,7 +7,6 @@ let _ = (* This module has implicit dependencies, here we make them explicit. *) (* The implicit dependencies arise from typeclasses instances. *) let open Libcrux_ml_dsa.Simd.Avx2.Vector_type in - let open Libcrux_ml_dsa.Simd.Traits in () [@@ FStar.Tactics.Typeclasses.tcinstance] @@ -576,9 +575,7 @@ Libcrux_ml_dsa.Simd.Avx2.Vector_type.t_AVX2SIMDUnit = Libcrux_ml_dsa.Simd.Avx2.Ntt.ntt re in let out:t_Array Libcrux_ml_dsa.Simd.Avx2.Vector_type.t_AVX2SIMDUnit (sz 32) = - Rust_primitives.Hax.repeat (Libcrux_ml_dsa.Simd.Traits.f_ZERO #Libcrux_ml_dsa.Simd.Avx2.Vector_type.t_AVX2SIMDUnit - #FStar.Tactics.Typeclasses.solve - () + Rust_primitives.Hax.repeat (Libcrux_ml_dsa.Simd.Avx2.Vector_type.v_ZERO () <: Libcrux_ml_dsa.Simd.Avx2.Vector_type.t_AVX2SIMDUnit) (sz 32) @@ -651,9 +648,7 @@ Libcrux_ml_dsa.Simd.Avx2.Vector_type.t_AVX2SIMDUnit = Libcrux_ml_dsa.Simd.Avx2.Invntt.invert_ntt_montgomery re in let out:t_Array Libcrux_ml_dsa.Simd.Avx2.Vector_type.t_AVX2SIMDUnit (sz 32) = - Rust_primitives.Hax.repeat (Libcrux_ml_dsa.Simd.Traits.f_ZERO #Libcrux_ml_dsa.Simd.Avx2.Vector_type.t_AVX2SIMDUnit - #FStar.Tactics.Typeclasses.solve - () + Rust_primitives.Hax.repeat (Libcrux_ml_dsa.Simd.Avx2.Vector_type.v_ZERO () <: Libcrux_ml_dsa.Simd.Avx2.Vector_type.t_AVX2SIMDUnit) (sz 32) diff --git a/libcrux-ml-dsa/proofs/fstar/extraction/Libcrux_ml_dsa.Simd.Avx2.fsti b/libcrux-ml-dsa/proofs/fstar/extraction/Libcrux_ml_dsa.Simd.Avx2.fsti index c96b12144..708395ec3 100644 --- a/libcrux-ml-dsa/proofs/fstar/extraction/Libcrux_ml_dsa.Simd.Avx2.fsti +++ b/libcrux-ml-dsa/proofs/fstar/extraction/Libcrux_ml_dsa.Simd.Avx2.fsti @@ -7,7 +7,6 @@ let _ = (* This module has implicit dependencies, here we make them explicit. *) (* The implicit dependencies arise from typeclasses instances. *) let open Libcrux_ml_dsa.Simd.Avx2.Vector_type in - let open Libcrux_ml_dsa.Simd.Traits in () [@@ FStar.Tactics.Typeclasses.tcinstance] diff --git a/libcrux-ml-dsa/src/simd/avx2.rs b/libcrux-ml-dsa/src/simd/avx2.rs index 5eec8a182..2359a4671 100644 --- a/libcrux-ml-dsa/src/simd/avx2.rs +++ b/libcrux-ml-dsa/src/simd/avx2.rs @@ -137,7 +137,7 @@ impl Operations for AVX2SIMDUnit { } let result = ntt::ntt(re); - let mut out = [Self::ZERO(); SIMD_UNITS_IN_RING_ELEMENT]; + let mut out = [vector_type::ZERO(); SIMD_UNITS_IN_RING_ELEMENT]; for i in 0..result.len() { out[i] = Self { coefficients: result[i], @@ -158,7 +158,7 @@ impl Operations for AVX2SIMDUnit { } let result = invntt::invert_ntt_montgomery(re); - let mut out = [Self::ZERO(); SIMD_UNITS_IN_RING_ELEMENT]; + let mut out = [vector_type::ZERO(); SIMD_UNITS_IN_RING_ELEMENT]; for i in 0..result.len() { out[i] = Self { coefficients: result[i],