src/pqc_federated_learning/__init__.py
1.5 KB · 54 lines · python Raw
1 """PQC Federated Learning - ML-DSA-signed gradient updates and verifiable aggregation."""
2
3 from pqc_federated_learning.aggregator import (
4 AggregationProof,
5 AggregationResult,
6 AggregationRound,
7 FederatedAggregator,
8 )
9 from pqc_federated_learning.aggregators.base import Aggregator
10 from pqc_federated_learning.aggregators.fedavg import FedAvgAggregator
11 from pqc_federated_learning.aggregators.fedmedian import FedMedianAggregator
12 from pqc_federated_learning.aggregators.fedsum import FedSumAggregator
13 from pqc_federated_learning.aggregators.fedtrimmed import FedTrimmedMeanAggregator
14 from pqc_federated_learning.errors import (
15 AggregationError,
16 FLError,
17 InsufficientUpdatesError,
18 InvalidUpdateError,
19 ShapeMismatchError,
20 SignatureVerificationError,
21 UntrustedClientError,
22 )
23 from pqc_federated_learning.signer import UpdateSigner, UpdateVerificationResult
24 from pqc_federated_learning.update import (
25 ClientUpdate,
26 ClientUpdateMetadata,
27 GradientTensor,
28 )
29
30 __version__ = "0.1.0"
31 __all__ = [
32 "ClientUpdate",
33 "ClientUpdateMetadata",
34 "GradientTensor",
35 "UpdateSigner",
36 "UpdateVerificationResult",
37 "FederatedAggregator",
38 "AggregationProof",
39 "AggregationRound",
40 "AggregationResult",
41 "Aggregator",
42 "FedAvgAggregator",
43 "FedSumAggregator",
44 "FedMedianAggregator",
45 "FedTrimmedMeanAggregator",
46 "FLError",
47 "InvalidUpdateError",
48 "SignatureVerificationError",
49 "AggregationError",
50 "UntrustedClientError",
51 "ShapeMismatchError",
52 "InsufficientUpdatesError",
53 ]
54