39 Commits
Author SHA1 Message Date
zeekay 7e84e2bda2 chore(deps): go get -u ./...
Updated dependencies to latest minor versions via go get -u + go mod tidy.
2026-06-02 11:22:25 -07:00
zeekay fba9f16a32 go.mod: drop local-disk replace; pin luxfi/math v1.4.1 (now published) 2026-05-16 16:29:01 -07:00
zeekay 26f525141d LP-107 Phase 3: ring/modular_reduction is now a thin shim over math/ntt/canonical
LP-107 inverted the dependency: luxfi/math/ntt/canonical now OWNS the
canonical Montgomery / Barrett body. This package re-exports it so
downstream consumers (luxfi/pulsar, luxfi/fhe, luxfi/threshold,
luxfi/multiparty, luxfi/lattice/multiparty, luxfi/lattice/schemes,
...) see no source change.

Before: 205 lines of inline Montgomery / Barrett scalars.
After:  85 lines re-exporting canonical's MForm / IMForm / MRed /
        MRedLazy / BRedAdd / BRedAddLazy / GenMRedConstant /
        GenBRedConstant.

Tests:
  GOWORK=off go test -count=1 ./... → all packages PASS:
    ok  github.com/luxfi/lattice/v7/ring             0.558s
    ok  github.com/luxfi/lattice/v7/ring/ringqp      0.432s
    ok  github.com/luxfi/lattice/v7/multiparty       1.552s
    ok  github.com/luxfi/lattice/v7/multiparty/mpbgv 0.460s
    ok  github.com/luxfi/lattice/v7/multiparty/mpckks 2.018s
    ok  github.com/luxfi/lattice/v7/schemes/bgv      1.983s
    ok  github.com/luxfi/lattice/v7/schemes/ckks     2.276s
    ok  github.com/luxfi/lattice/v7/types            0.868s
    ok  github.com/luxfi/lattice/v7/examples/...     all green

go.mod adds github.com/luxfi/math dependency.

Subsequent commits will migrate the rest of ring/ntt.go,
ring/subring.go etc. to thin shims as well.
2026-05-04 10:26:59 -07:00
zeekay 9a7cb0169f chore: update dependencies 2026-04-01 14:02:46 -07:00
zeekay 2602685293 chore: sync dependencies and format code 2026-02-04 15:48:26 -08:00
zeekay 175171ac04 feat(gpu): add BatchNTT and BatchINTT methods
- Add batch NTT operations for GPU-parallel polynomial transforms
- More efficient than per-polynomial NTT for large batches
- Single GPU dispatch minimizes kernel launch overhead
- Update import path to github.com/luxfi/constants
2026-01-08 19:35:02 -08:00
zeekay 9367c38019 chore: update go.sum dependencies 2026-01-01 17:16:07 -08:00
zeekay eaf864890e feat: release v7.0.0 with GPU acceleration and module update
- Update module path to github.com/luxfi/lattice/v7
- Add GPU acceleration with Metal (macOS) and CUDA backends
- Enhance threshold FHE operations
- Revert to vanilla Apache 2.0 license (remove tfhe)
- Update Go version to 1.25.5
- Merge upstream lattigo improvements
2025-12-30 15:37:37 -08:00
zeekay c055de4eac chore: revert to vanilla Apache 2.0, remove tfhe
- Reverted LICENSE to original Apache 2.0 (lattigo upstream)
- Removed schemes/tfhe/ (moved to standalone tfhe repo)
- Keep lattice as vanilla lattigo fork for CKKS/BGV/BFV
2025-12-28 19:30:04 -08:00
Romain Bouyé 5a22ec93b6 Bump CI to use Go v1.25 2025-09-02 13:39:54 +02:00
dependabot[bot]andGitHub 16736ed979 Bump golang.org/x/crypto from 0.18.0 to 0.31.0
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.18.0 to 0.31.0.
- [Commits](https://github.com/golang/crypto/compare/v0.18.0...v0.31.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-12-13 10:45:34 +00:00
Romain Bouyé 6669fd04c7 Bump golang.org/x/crypto directly to 0.18.0 2024-01-10 14:32:03 +01:00
dependabot[bot]andGitHub 7c34e3cfba Bump golang.org/x/crypto
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.0.0-20220926161630-eccd6366d1be to 0.17.0.
- [Commits](https://github.com/golang/crypto/commits/v0.17.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
2024-01-04 11:04:15 +00:00
Jean-Philippe BossuatandJean-Philippe f581f96baa [ckks]: arbitrary precision 2023-05-22 09:47:49 +02:00
Jean-Philippe Bossuat 2695e11261 improved marshalling test 2023-03-31 20:55:00 +02:00
Jean-Philippe Bossuat f49b15671b added generics 2023-03-24 23:35:46 +01:00
Jean-Philippe Bossuat 04e68b9c97 updated minimum go version 2023-03-24 15:19:45 +01:00
Christian Mouchet 4f0f148ef0 v4.0.0 release 2022-10-04 13:46:54 +02:00
Jean-Philippe Bossuat 3408b049d4 updated dependencies 2022-06-13 22:55:24 +02:00
Jean-Philippe Bossuat 0786055f71 gomod tidy 2022-06-13 22:55:24 +02:00
Jean-Philippe Bossuat 997b9bb08b statickcheck 2022-06-13 22:55:24 +02:00
ChristianMctandGitHub f7e2641852 Upgrading dependancies and enabling CI tests for latest Go versions (#198)
* updated dependencies

* added go 1.18 and 1.17 to CI builds
2022-04-14 09:39:25 +02:00
Christian M 8ca8a6e8e4 updated dependencies, set new version number in README and CHANGELOG 2021-10-12 11:29:50 +02:00
Jean-Philippe BossuatandChristianMct c2c3af880d go mod tidy 2021-07-15 14:55:51 +02:00
Jean-Philippe BossuatandChristianMct f967909313 DCKKS : fixed s2e and e2s to work with variable levels 2021-07-15 14:55:51 +02:00
ChristianMctandGitHub 8cc90ec0fc [all] increasing cross-scheme API consistency and implementation (#100)
- RLWE : added a new `rlwe` package as common implementation base for the lattigo RLWE schemes
- DRLWE : added a new `drlwe` package as a common implementation base for the lattigo multiparty RLWE schemes
- BFV/CKKS : the schemes are now using a common implementation for their keys
- BFV/CKKS : the rotation-keys are now indexed by their corresponding galois automorphism
- BFV/CKKS : the `Evaluator` interface now has a single method for all column rotations and one method for the row-rotation/conjugate. 
- BFV/CKKS : the relinearization and rotation keys are now passed to the `Evaluator` constructor methods (and no longer to the operations methods)
- DBFV/DCKKS : added a common interface and implementation for each multiparty key-generation protocols
2021-03-18 19:52:54 +01:00
Christian M fafed48e41 updated the dependancies for go 1.16 2021-02-18 09:32:09 +01:00
Christian M db44465123 tidied the go.mod file 2020-12-22 13:24:51 +01:00
Jean-Philippe Bossuat f89d83b0b0 gocyclo 2020-12-16 21:39:35 +01:00
Jean-Philippe Bossuat 3a8acd250b ineffectual assignments, ignored the ones that are forcing the GC 2020-12-16 16:47:22 +01:00
Jean-Philippe Bossuat e74c238653 [bfv] : improved test coverage 2020-12-16 16:28:12 +01:00
Jean-Philippe Bossuat 458163c382 gosec 2020-12-16 14:43:31 +01:00
Christian M dbcb92d9f5 Merge branch 'master' into dev_v2.0.0 2020-10-07 10:41:44 +02:00
Christian M e6535df0c4 [bfv/dbfv] added RNS rescaling, the BFV scaling now use this implementation 2020-07-17 18:22:22 +02:00
tharvik c44c980986 go.mod: use stable testify 2020-06-17 18:30:58 +02:00
Jean-Philippe Bossuat a738faa884 Reverted the keyswitch to the previous state 2020-03-24 11:09:14 +01:00
Jean-Philippe Bossuat e8a184f14c Added benchmarks for NTT with BRed 2020-02-11 16:44:00 +01:00
Christian Mouchet b8a51508f3 improvements on bfv/params.go 2019-08-15 07:43:07 +02:00
Jean-Philippe BossuatandChristian Mouchet 4421f325b0 Initial commit 2019-08-12 21:15:01 +02:00