mplang-nightly 0.1.dev268__py3-none-any.whl → 0.1.dev270__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mplang/__init__.py +391 -17
- mplang/{v2/backends → backends}/__init__.py +9 -7
- mplang/{v2/backends → backends}/bfv_impl.py +6 -6
- mplang/{v2/backends → backends}/crypto_impl.py +6 -6
- mplang/{v2/backends → backends}/field_impl.py +5 -5
- mplang/{v2/backends → backends}/func_impl.py +4 -4
- mplang/{v2/backends → backends}/phe_impl.py +3 -3
- mplang/{v2/backends → backends}/simp_design.md +1 -1
- mplang/{v2/backends → backends}/simp_driver/__init__.py +5 -5
- mplang/{v2/backends → backends}/simp_driver/http.py +8 -8
- mplang/{v2/backends → backends}/simp_driver/mem.py +9 -9
- mplang/{v2/backends → backends}/simp_driver/ops.py +4 -4
- mplang/{v2/backends → backends}/simp_driver/state.py +2 -2
- mplang/{v2/backends → backends}/simp_driver/values.py +2 -2
- mplang/{v2/backends → backends}/simp_worker/__init__.py +3 -3
- mplang/{v2/backends → backends}/simp_worker/http.py +10 -10
- mplang/{v2/backends → backends}/simp_worker/mem.py +1 -1
- mplang/{v2/backends → backends}/simp_worker/ops.py +5 -5
- mplang/{v2/backends → backends}/simp_worker/state.py +2 -4
- mplang/{v2/backends → backends}/spu_impl.py +8 -8
- mplang/{v2/backends → backends}/spu_state.py +4 -4
- mplang/{v2/backends → backends}/store_impl.py +3 -3
- mplang/{v2/backends → backends}/table_impl.py +8 -8
- mplang/{v2/backends → backends}/tee_impl.py +6 -6
- mplang/{v2/backends → backends}/tensor_impl.py +6 -6
- mplang/{v2/cli.py → cli.py} +9 -9
- mplang/{v2/cli_guide.md → cli_guide.md} +12 -12
- mplang/{v2/dialects → dialects}/__init__.py +5 -5
- mplang/{v2/dialects → dialects}/bfv.py +6 -6
- mplang/{v2/dialects → dialects}/crypto.py +5 -5
- mplang/{v2/dialects → dialects}/dtypes.py +2 -2
- mplang/{v2/dialects → dialects}/field.py +3 -3
- mplang/{v2/dialects → dialects}/func.py +2 -2
- mplang/{v2/dialects → dialects}/phe.py +6 -6
- mplang/{v2/dialects → dialects}/simp.py +6 -6
- mplang/{v2/dialects → dialects}/spu.py +7 -7
- mplang/{v2/dialects → dialects}/store.py +2 -2
- mplang/{v2/dialects → dialects}/table.py +3 -3
- mplang/{v2/dialects → dialects}/tee.py +6 -6
- mplang/{v2/dialects → dialects}/tensor.py +5 -5
- mplang/{v2/edsl → edsl}/__init__.py +3 -3
- mplang/{v2/edsl → edsl}/context.py +6 -6
- mplang/{v2/edsl → edsl}/graph.py +5 -5
- mplang/{v2/edsl → edsl}/jit.py +2 -2
- mplang/{v2/edsl → edsl}/object.py +1 -1
- mplang/{v2/edsl → edsl}/primitive.py +5 -5
- mplang/{v2/edsl → edsl}/printer.py +1 -1
- mplang/{v2/edsl → edsl}/serde.py +1 -1
- mplang/{v2/edsl → edsl}/tracer.py +7 -7
- mplang/{v2/edsl → edsl}/typing.py +1 -1
- mplang/{v2/kernels → kernels}/ldpc.cpp +13 -13
- mplang/{v2/kernels → kernels}/okvs.cpp +4 -4
- mplang/{v2/kernels → kernels}/okvs_opt.cpp +46 -31
- mplang/{v2/kernels → kernels}/py_kernels.py +1 -1
- mplang/{v2/libs → libs}/collective.py +5 -5
- mplang/{v2/libs → libs}/device/__init__.py +1 -1
- mplang/{v2/libs → libs}/device/api.py +12 -12
- mplang/{v2/libs → libs}/ml/__init__.py +1 -1
- mplang/{v2/libs → libs}/ml/sgb.py +4 -4
- mplang/{v2/libs → libs}/mpc/__init__.py +3 -3
- mplang/{v2/libs → libs}/mpc/_utils.py +2 -2
- mplang/{v2/libs → libs}/mpc/analytics/aggregation.py +1 -1
- mplang/{v2/libs → libs}/mpc/analytics/groupby.py +2 -2
- mplang/{v2/libs → libs}/mpc/analytics/permutation.py +3 -3
- mplang/{v2/libs → libs}/mpc/ot/base.py +3 -3
- mplang/{v2/libs → libs}/mpc/ot/extension.py +2 -2
- mplang/{v2/libs → libs}/mpc/ot/silent.py +4 -4
- mplang/{v2/libs → libs}/mpc/psi/cuckoo.py +3 -3
- mplang/{v2/libs → libs}/mpc/psi/okvs.py +1 -1
- mplang/{v2/libs → libs}/mpc/psi/okvs_gct.py +19 -13
- mplang/{v2/libs → libs}/mpc/psi/oprf.py +3 -3
- mplang/libs/mpc/psi/rr22.py +303 -0
- mplang/{v2/libs → libs}/mpc/psi/unbalanced.py +4 -4
- mplang/{v2/libs → libs}/mpc/vole/gilboa.py +3 -3
- mplang/{v2/libs → libs}/mpc/vole/ldpc.py +2 -2
- mplang/{v2/libs → libs}/mpc/vole/silver.py +6 -6
- mplang/{v2/runtime → runtime}/interpreter.py +11 -11
- mplang/{v2/runtime → runtime}/value.py +2 -2
- mplang/{v1/runtime → utils}/__init__.py +18 -15
- mplang/{v1/utils → utils}/func_utils.py +1 -1
- {mplang_nightly-0.1.dev268.dist-info → mplang_nightly-0.1.dev270.dist-info}/METADATA +2 -2
- mplang_nightly-0.1.dev270.dist-info/RECORD +102 -0
- mplang/v1/__init__.py +0 -157
- mplang/v1/_device.py +0 -602
- mplang/v1/analysis/__init__.py +0 -37
- mplang/v1/analysis/diagram.py +0 -567
- mplang/v1/core/__init__.py +0 -157
- mplang/v1/core/cluster.py +0 -343
- mplang/v1/core/comm.py +0 -281
- mplang/v1/core/context_mgr.py +0 -50
- mplang/v1/core/dtypes.py +0 -335
- mplang/v1/core/expr/__init__.py +0 -80
- mplang/v1/core/expr/ast.py +0 -542
- mplang/v1/core/expr/evaluator.py +0 -581
- mplang/v1/core/expr/printer.py +0 -285
- mplang/v1/core/expr/transformer.py +0 -141
- mplang/v1/core/expr/utils.py +0 -78
- mplang/v1/core/expr/visitor.py +0 -85
- mplang/v1/core/expr/walk.py +0 -387
- mplang/v1/core/interp.py +0 -160
- mplang/v1/core/mask.py +0 -325
- mplang/v1/core/mpir.py +0 -965
- mplang/v1/core/mpobject.py +0 -117
- mplang/v1/core/mptype.py +0 -407
- mplang/v1/core/pfunc.py +0 -130
- mplang/v1/core/primitive.py +0 -877
- mplang/v1/core/table.py +0 -218
- mplang/v1/core/tensor.py +0 -75
- mplang/v1/core/tracer.py +0 -383
- mplang/v1/host.py +0 -130
- mplang/v1/kernels/__init__.py +0 -41
- mplang/v1/kernels/base.py +0 -125
- mplang/v1/kernels/basic.py +0 -240
- mplang/v1/kernels/context.py +0 -369
- mplang/v1/kernels/crypto.py +0 -122
- mplang/v1/kernels/fhe.py +0 -858
- mplang/v1/kernels/mock_tee.py +0 -72
- mplang/v1/kernels/phe.py +0 -1864
- mplang/v1/kernels/spu.py +0 -341
- mplang/v1/kernels/sql_duckdb.py +0 -44
- mplang/v1/kernels/stablehlo.py +0 -90
- mplang/v1/kernels/value.py +0 -626
- mplang/v1/ops/__init__.py +0 -35
- mplang/v1/ops/base.py +0 -424
- mplang/v1/ops/basic.py +0 -294
- mplang/v1/ops/crypto.py +0 -262
- mplang/v1/ops/fhe.py +0 -272
- mplang/v1/ops/jax_cc.py +0 -147
- mplang/v1/ops/nnx_cc.py +0 -168
- mplang/v1/ops/phe.py +0 -216
- mplang/v1/ops/spu.py +0 -151
- mplang/v1/ops/sql_cc.py +0 -303
- mplang/v1/ops/tee.py +0 -36
- mplang/v1/protos/v1alpha1/mpir_pb2.py +0 -63
- mplang/v1/protos/v1alpha1/mpir_pb2.pyi +0 -557
- mplang/v1/protos/v1alpha1/value_pb2.py +0 -34
- mplang/v1/protos/v1alpha1/value_pb2.pyi +0 -169
- mplang/v1/runtime/channel.py +0 -230
- mplang/v1/runtime/cli.py +0 -451
- mplang/v1/runtime/client.py +0 -456
- mplang/v1/runtime/communicator.py +0 -131
- mplang/v1/runtime/data_providers.py +0 -303
- mplang/v1/runtime/driver.py +0 -324
- mplang/v1/runtime/exceptions.py +0 -27
- mplang/v1/runtime/http_api.md +0 -56
- mplang/v1/runtime/link_comm.py +0 -196
- mplang/v1/runtime/server.py +0 -501
- mplang/v1/runtime/session.py +0 -270
- mplang/v1/runtime/simulation.py +0 -324
- mplang/v1/simp/__init__.py +0 -13
- mplang/v1/simp/api.py +0 -353
- mplang/v1/simp/mpi.py +0 -131
- mplang/v1/simp/party.py +0 -225
- mplang/v1/simp/random.py +0 -120
- mplang/v1/simp/smpc.py +0 -238
- mplang/v1/utils/__init__.py +0 -13
- mplang/v1/utils/crypto.py +0 -32
- mplang/v1/utils/spu_utils.py +0 -130
- mplang/v1/utils/table_utils.py +0 -185
- mplang/v2/__init__.py +0 -424
- mplang/v2/libs/mpc/psi/rr22.py +0 -344
- mplang_nightly-0.1.dev268.dist-info/RECORD +0 -180
- /mplang/{v2/backends → backends}/channel.py +0 -0
- /mplang/{v2/edsl → edsl}/README.md +0 -0
- /mplang/{v2/edsl → edsl}/registry.py +0 -0
- /mplang/{v2/kernels → kernels}/Makefile +0 -0
- /mplang/{v2/kernels → kernels}/__init__.py +0 -0
- /mplang/{v2/kernels → kernels}/gf128.cpp +0 -0
- /mplang/{v2/libs → libs}/device/cluster.py +0 -0
- /mplang/{v2/libs → libs}/mpc/analytics/__init__.py +0 -0
- /mplang/{v2/libs → libs}/mpc/analytics/groupby.md +0 -0
- /mplang/{v2/libs → libs}/mpc/common/constants.py +0 -0
- /mplang/{v2/libs → libs}/mpc/ot/__init__.py +0 -0
- /mplang/{v2/libs → libs}/mpc/psi/__init__.py +0 -0
- /mplang/{v2/libs → libs}/mpc/vole/__init__.py +0 -0
- /mplang/{v2/runtime → runtime}/__init__.py +0 -0
- /mplang/{v2/runtime → runtime}/dialect_state.py +0 -0
- /mplang/{v2/runtime → runtime}/object_store.py +0 -0
- {mplang_nightly-0.1.dev268.dist-info → mplang_nightly-0.1.dev270.dist-info}/WHEEL +0 -0
- {mplang_nightly-0.1.dev268.dist-info → mplang_nightly-0.1.dev270.dist-info}/entry_points.txt +0 -0
- {mplang_nightly-0.1.dev268.dist-info → mplang_nightly-0.1.dev270.dist-info}/licenses/LICENSE +0 -0
|
@@ -33,16 +33,16 @@ import time
|
|
|
33
33
|
from collections.abc import Callable
|
|
34
34
|
from typing import TYPE_CHECKING, Any, cast
|
|
35
35
|
|
|
36
|
-
from mplang.
|
|
37
|
-
from mplang.
|
|
38
|
-
from mplang.
|
|
39
|
-
from mplang.
|
|
40
|
-
from mplang.
|
|
41
|
-
from mplang.
|
|
42
|
-
from mplang.
|
|
36
|
+
from mplang.edsl.context import AbstractInterpreter
|
|
37
|
+
from mplang.edsl.graph import Graph
|
|
38
|
+
from mplang.edsl.object import Object
|
|
39
|
+
from mplang.edsl.registry import get_impl
|
|
40
|
+
from mplang.edsl.typing import BaseType
|
|
41
|
+
from mplang.runtime.dialect_state import DialectState
|
|
42
|
+
from mplang.runtime.object_store import ObjectStore
|
|
43
43
|
|
|
44
44
|
if TYPE_CHECKING:
|
|
45
|
-
from mplang.
|
|
45
|
+
from mplang.edsl.primitive import Primitive
|
|
46
46
|
|
|
47
47
|
|
|
48
48
|
class ExecutionTracer:
|
|
@@ -442,8 +442,8 @@ class Interpreter(AbstractInterpreter):
|
|
|
442
442
|
Returns:
|
|
443
443
|
Execution result (InterpObject or list of InterpObject or mixed with immediates)
|
|
444
444
|
"""
|
|
445
|
-
from mplang.
|
|
446
|
-
from mplang.
|
|
445
|
+
from mplang.edsl.tracer import Tracer
|
|
446
|
+
from mplang.utils import var_demorph, var_morph
|
|
447
447
|
|
|
448
448
|
# Create tracer and build graph
|
|
449
449
|
# Note: primitive.bind() internally calls Tracer.lift() with is_param=False,
|
|
@@ -525,7 +525,7 @@ class Interpreter(AbstractInterpreter):
|
|
|
525
525
|
>>> interp = Interpreter()
|
|
526
526
|
>>> z_interp = interp.lift(z_trace) # evaluate graph → InterpObject
|
|
527
527
|
"""
|
|
528
|
-
from mplang.
|
|
528
|
+
from mplang.edsl.tracer import TraceObject
|
|
529
529
|
|
|
530
530
|
if isinstance(obj, InterpObject):
|
|
531
531
|
# InterpObject must belong to this interpreter
|
|
@@ -22,8 +22,8 @@ This module defines:
|
|
|
22
22
|
implements the "wrap/unwrap" pattern with automatic type conversion.
|
|
23
23
|
|
|
24
24
|
Usage:
|
|
25
|
-
from mplang.
|
|
26
|
-
from mplang.
|
|
25
|
+
from mplang.runtime.value import Value
|
|
26
|
+
from mplang.edsl import serde
|
|
27
27
|
|
|
28
28
|
@serde.register_class
|
|
29
29
|
class MyValue(Value):
|
|
@@ -12,21 +12,24 @@
|
|
|
12
12
|
# See the License for the specific language governing permissions and
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
15
|
+
from .func_utils import (
|
|
16
|
+
MorphStruct,
|
|
17
|
+
is_treedef_list,
|
|
18
|
+
list_reconstruct,
|
|
19
|
+
list_split,
|
|
20
|
+
normalize_fn,
|
|
21
|
+
validate_morph_struct,
|
|
22
|
+
var_demorph,
|
|
23
|
+
var_morph,
|
|
24
|
+
)
|
|
25
25
|
|
|
26
26
|
__all__ = [
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
"MorphStruct",
|
|
28
|
+
"is_treedef_list",
|
|
29
|
+
"list_reconstruct",
|
|
30
|
+
"list_split",
|
|
31
|
+
"normalize_fn",
|
|
32
|
+
"validate_morph_struct",
|
|
33
|
+
"var_demorph",
|
|
34
|
+
"var_morph",
|
|
32
35
|
]
|
|
@@ -119,7 +119,7 @@ def normalize_fn(
|
|
|
119
119
|
return normalized, params
|
|
120
120
|
|
|
121
121
|
|
|
122
|
-
def is_treedef_list(treedef: PyTreeDef) -> bool:
|
|
122
|
+
def is_treedef_list(treedef: PyTreeDef) -> bool: # type: ignore
|
|
123
123
|
"""
|
|
124
124
|
Checks if a PyTreeDef object represents a simple (non-nested) list.
|
|
125
125
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mplang-nightly
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.dev270
|
|
4
4
|
Summary: Multi-Party Programming Language
|
|
5
5
|
Author-email: SecretFlow Team <secretflow-contact@service.alipay.com>
|
|
6
6
|
License: Apache License
|
|
@@ -214,7 +214,7 @@ Requires-Dist: flax>=0.12.0
|
|
|
214
214
|
Requires-Dist: httpx<1.0.0,>=0.27.0
|
|
215
215
|
Requires-Dist: jax[cpu]==0.8.0
|
|
216
216
|
Requires-Dist: lightphe<0.1.0,>=0.0.15
|
|
217
|
-
Requires-Dist: numpy
|
|
217
|
+
Requires-Dist: numpy!=2.4.0,>=2.0.0
|
|
218
218
|
Requires-Dist: pandas>=2.0.0
|
|
219
219
|
Requires-Dist: protobuf<6.0,>=5.0
|
|
220
220
|
Requires-Dist: pyarrow>=14.0.0
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
mplang/__init__.py,sha256=q-H8IXjVuI79eHhSFVh4FT5KbYow4lGyji2MyLsjufw,13429
|
|
2
|
+
mplang/cli.py,sha256=PqxgWL0rtG-0zuip4JzoVKTIQ5gAwIwHzG3xlZJaBwI,19638
|
|
3
|
+
mplang/cli_guide.md,sha256=hKC6AKgJn-lM_wZ0CzZIP2QUBxGPnT0Op_1YyeUhCfI,3581
|
|
4
|
+
mplang/py.typed,sha256=RyhZV7Yxo8BvEoBiFz5fH3IWVqQKTcBBE-bzjx_N5GQ,583
|
|
5
|
+
mplang/backends/__init__.py,sha256=EnKHmOX4YgvNVA42k_KfiS-Vn860yN7Rj9XkUU0g9ys,2042
|
|
6
|
+
mplang/backends/bfv_impl.py,sha256=qobGXe7ldWvYVcqdkNsTcVdNV-hUVE9-Ks5pd3X0Mvc,25691
|
|
7
|
+
mplang/backends/channel.py,sha256=t8P7RphNnhvo3Zj08hX85d7PxgWQXiMGNYfZPK_4YoM,6622
|
|
8
|
+
mplang/backends/crypto_impl.py,sha256=m5tbZpedn4McG5t6HIaEjhTQUFOIaEDMdyEG0499S0Y,23187
|
|
9
|
+
mplang/backends/field_impl.py,sha256=lIghppy0i8QL7aTNCr8tNWjC_bvOXBIKLnavaO0fIOA,14773
|
|
10
|
+
mplang/backends/func_impl.py,sha256=vhkSJnvgSzvQWXqOE40O8npqOmtNqLxefzv9ETuQODQ,3573
|
|
11
|
+
mplang/backends/phe_impl.py,sha256=CefRpFrRJvbZm3X58OYOFAyNZXKDp081Q6CT8fhdreE,4118
|
|
12
|
+
mplang/backends/simp_design.md,sha256=u4YeDLKk5avsueXhzPtt4OUBToBmurOVK_BWTKTJ7w0,5246
|
|
13
|
+
mplang/backends/spu_impl.py,sha256=6hGdEcZ34ZkwsD6ZnkrhNkmut_UnWWxNiOgHQwMKMCs,9451
|
|
14
|
+
mplang/backends/spu_state.py,sha256=tgwOiWN6zfP-fBx2rN2cNnC-Y9GrSArqU-ZBT3NdXls,6557
|
|
15
|
+
mplang/backends/store_impl.py,sha256=BdrCfNhFbcjswIvfxD2XKGYeBfBrmEQA3pj2-EDzFcI,2213
|
|
16
|
+
mplang/backends/table_impl.py,sha256=-8KCVSboJkL81HPLRzTpUlSvC37d5qNLIQx1xluN3Pg,27542
|
|
17
|
+
mplang/backends/tee_impl.py,sha256=5yed94Lr55hgSDT6j3FjdTboqzhl4HpJ9lGk1YGZBXQ,7026
|
|
18
|
+
mplang/backends/tensor_impl.py,sha256=4-cypN0KuUD8dzpzAdWEWWuRlzLZwwyIap9QscWGLyk,18888
|
|
19
|
+
mplang/backends/simp_driver/__init__.py,sha256=pQkHGR8HagnPB4OqagPZY-Ul19y6HjIJ5dY6QXZrBH8,1243
|
|
20
|
+
mplang/backends/simp_driver/http.py,sha256=vrjfyEs1_TiMh7I-3cQhIwG6edE0R_eTGegvfFl5xx4,5526
|
|
21
|
+
mplang/backends/simp_driver/mem.py,sha256=EAsDO4Zl2pHf8TY4K_whluhbAwaT1NhktBM9u4g5yYE,9101
|
|
22
|
+
mplang/backends/simp_driver/ops.py,sha256=WYObWDRCsiXH0UBWZX5vD5W98ZPkd88U_qBV8SE5rA8,4503
|
|
23
|
+
mplang/backends/simp_driver/state.py,sha256=dNmYMFN2D2BBdgs6C0YLaHrfaBRMgs05UNxMWw6tZIs,1713
|
|
24
|
+
mplang/backends/simp_driver/values.py,sha256=Lz1utNSIzH-dCzZAEjU6JRcxPsfKGfUJrYl6gIuMOGw,1509
|
|
25
|
+
mplang/backends/simp_worker/__init__.py,sha256=gdrSY1-MDkupCoJ8xwwH7em7fgVWv3J4gBJ45uHdzgg,961
|
|
26
|
+
mplang/backends/simp_worker/http.py,sha256=qB62LsXTtokjpRqxd2f0hFpYO445pPaTrgI62BJjBqY,12626
|
|
27
|
+
mplang/backends/simp_worker/mem.py,sha256=tMGiRppeca0TnY8WdqYQMQvsx5UVswCqdeOhiDlLQBs,3574
|
|
28
|
+
mplang/backends/simp_worker/ops.py,sha256=X_mAhrSZkiN9GmgTJgJs1c50CFTNB_lo9zoPI4rIYU4,5510
|
|
29
|
+
mplang/backends/simp_worker/state.py,sha256=nIu0ybvdYqRqp0TkoSneUF2u31evDHucCRduVBaDals,1445
|
|
30
|
+
mplang/dialects/__init__.py,sha256=CYMmkeQVU0Znr9n3_5clZKb16u7acJ5jl5Zjbx4Tn1U,1478
|
|
31
|
+
mplang/dialects/bfv.py,sha256=m5YfobFCBqn0lg2zBM9RNs2AC7i4PUQH2qXjHLHwSy4,22332
|
|
32
|
+
mplang/dialects/crypto.py,sha256=oEVYyQZxUoVnLW0UN7TULU_06AcSJfBJ9PFupMnbOh4,22182
|
|
33
|
+
mplang/dialects/dtypes.py,sha256=IzWBLpOumGJEy223oH_ECFKTXb1chhPAIebtxJeqLEA,12098
|
|
34
|
+
mplang/dialects/field.py,sha256=s6fK3h0OCpnhQB6YaawEqjpI3TgHT6jMnJkTw3ltjAA,6371
|
|
35
|
+
mplang/dialects/func.py,sha256=qt2H3ClIqdOU5T7cWxzCdoPoWqeXxmbqIsKT2b7w0Mg,4369
|
|
36
|
+
mplang/dialects/phe.py,sha256=-5WvBnlhaUpClLvayKVQIKSof9ROXhZbv0tnz8CTSaY,22878
|
|
37
|
+
mplang/dialects/simp.py,sha256=MA6zhlMMeiBD93yafZgBcQGadShqEATBB7R2VdyfMjQ,32851
|
|
38
|
+
mplang/dialects/spu.py,sha256=zKIbFDcQsTtfVnPWLMR0rnp656Y8eWywDQIVqFSmVJ8,11353
|
|
39
|
+
mplang/dialects/store.py,sha256=FkvTOdcNC_oCgJPMZfdpGLlKZAlelEqRIZ2WgMgYH-8,2108
|
|
40
|
+
mplang/dialects/table.py,sha256=i9ruyh91_tSWu9rsLomrBUfqRdbHiZMMMJzNKfMrAUc,13534
|
|
41
|
+
mplang/dialects/tee.py,sha256=BMFSbeK-Ck2jQP4qY9bZeNYTxEa7uEtUWLZLC4BPQxk,10111
|
|
42
|
+
mplang/dialects/tensor.py,sha256=7aAYKaMaFjJ8N25yPFnmVhUuUdKJYy-M-a4NsZGE7kY,39893
|
|
43
|
+
mplang/edsl/README.md,sha256=viflvdRojOa6Xk_UMRPqpuPGXcPGmdlv2-XR6LO7B58,7592
|
|
44
|
+
mplang/edsl/__init__.py,sha256=ARYS7FkkSXwjWCsPLtWc9kL5OaR4wd5zCQhFTkzZUp0,2598
|
|
45
|
+
mplang/edsl/context.py,sha256=Ln8n3bDe8_ISe42TAGzUuz8fw57-tu1APuihMfAtW1Y,10075
|
|
46
|
+
mplang/edsl/graph.py,sha256=nCeCN7-bxfzyv40fmxcEXOaVUx14cOCaHfFb7A9OBnE,14968
|
|
47
|
+
mplang/edsl/jit.py,sha256=Gm8qnaXW4_jhF3GVoenJgJmHw02D5KNaaXqxe_lfybk,2063
|
|
48
|
+
mplang/edsl/object.py,sha256=dBl58q-ondjpjPNBh8zZvIEj6pJw2yEoz6TCaM_oleA,1906
|
|
49
|
+
mplang/edsl/primitive.py,sha256=1I9A1Y7lsKgd-zBj2nte-jtCdcC6V0cHNhifvVsULkU,10560
|
|
50
|
+
mplang/edsl/printer.py,sha256=drmfRkdCNqbkRfSDmejxtO-rEAaM13QyHB3AbAmKVFk,4393
|
|
51
|
+
mplang/edsl/registry.py,sha256=hudXZPUrUUueEwgksDKN0cnE3iiXucuTaDdDK8uSPmk,6822
|
|
52
|
+
mplang/edsl/serde.py,sha256=8K94laE8ObeGuBoF6m7g3A-xEe98EvqQ_6ZPPspddAY,11641
|
|
53
|
+
mplang/edsl/tracer.py,sha256=g7P0WU6HvPYOhWMAflsX9YBLkAJyYI0YNPo9_P1nf-A,22528
|
|
54
|
+
mplang/edsl/typing.py,sha256=Vp0r_oTyFrOhwwpVD_6XAX0sSsKvR04X-KdihkmD4QA,29287
|
|
55
|
+
mplang/kernels/Makefile,sha256=5PoPpajcb_8ByPGNHzVytmovXUwkjJs_K8MbXX9qDYs,1033
|
|
56
|
+
mplang/kernels/__init__.py,sha256=J_rDl9lAXd7QL3Nt_P3YX6j9yge7ssguSaHuafPZNKE,876
|
|
57
|
+
mplang/kernels/gf128.cpp,sha256=WIvCr3MijzwJxMi1Wnfhm8aWT8oL0fia6FeyTmFJtPQ,5975
|
|
58
|
+
mplang/kernels/ldpc.cpp,sha256=7n_FlI9btM3sSKdQOUC4f-PqTBAI98xccdaZIHX625M,2614
|
|
59
|
+
mplang/kernels/okvs.cpp,sha256=7P_FkBY8LyEwnzupdlv48X8uKMjPUjXtzU2QlTjp-Q0,10311
|
|
60
|
+
mplang/kernels/okvs_opt.cpp,sha256=qKkwHGGv7ayvIRW46PrQZZ7ej4b58Drbr3BlqEK506U,11707
|
|
61
|
+
mplang/kernels/py_kernels.py,sha256=EXK2ByfRsVpBqp1etDyCb_qExT0obiytcNFXYpRyxpo,12070
|
|
62
|
+
mplang/libs/collective.py,sha256=1RhwnpKwjLvbZ5UgmCMkO6brwqHEIdkW_zymRawwTW4,10668
|
|
63
|
+
mplang/libs/device/__init__.py,sha256=UHPGQ9JVedXy6AQo-ixQooS2R8eTwJEu7-p8A5_po78,1248
|
|
64
|
+
mplang/libs/device/api.py,sha256=lyMlNIFXQFuht_jaWc9uFkHRybv9OQC59nQ7USR5TWQ,28794
|
|
65
|
+
mplang/libs/device/cluster.py,sha256=YUqYZ_IBS6rpV5ejUFP3kTxcTQHSyeDeuaJcsiFY_Js,12508
|
|
66
|
+
mplang/libs/ml/__init__.py,sha256=kUR6V74kWmGnOUdmLuGAP1xebW7y-NBOmHyHK-kdqWg,784
|
|
67
|
+
mplang/libs/ml/sgb.py,sha256=g5x1PQnV7oRzheyu6PiDooqmBWI9jMvLHkIHrNnMoDk,60211
|
|
68
|
+
mplang/libs/mpc/__init__.py,sha256=0wTdCjWmoW4Ka4j8ItIfENd8t5uzgjFu0OhOtaeHlpY,1396
|
|
69
|
+
mplang/libs/mpc/_utils.py,sha256=53mDJj_LTIJe6RWkR85-2nXha2KwYQqCK0PBG80MOl0,3209
|
|
70
|
+
mplang/libs/mpc/analytics/__init__.py,sha256=8_1Sm05nrO2ISat1hNZT6UXHpKQ-SDBby1eeS-wm_fE,1204
|
|
71
|
+
mplang/libs/mpc/analytics/aggregation.py,sha256=FXEp8Aa9NkS9cwQCqVxQBMa-fnw828QnyGdlM5IKb-4,11645
|
|
72
|
+
mplang/libs/mpc/analytics/groupby.md,sha256=_3oCouzGKlWt3OBMIFkhN25gyzJj6DlGpq-B78_PSlU,4679
|
|
73
|
+
mplang/libs/mpc/analytics/groupby.py,sha256=KjhZgB0EJwcShsIiE49HFzowgYVkYA7IQBx71_cj2m4,11312
|
|
74
|
+
mplang/libs/mpc/analytics/permutation.py,sha256=FOXarjeKTZChf9dN7kaHhwQYytIQqRYMVsspovBKTnI,13811
|
|
75
|
+
mplang/libs/mpc/common/constants.py,sha256=YRRE8WkLGfdOZzicc976hPsPeZZkqho3aW41i5Mj72s,1316
|
|
76
|
+
mplang/libs/mpc/ot/__init__.py,sha256=9Ivef7QnAzoCBtIohh2kzOSdfslcNftOwKV_d9Qv4z0,951
|
|
77
|
+
mplang/libs/mpc/ot/base.py,sha256=ydM6KRB4ytv5AVOZaCQ_GV54MsqmPhIE2JUUwoavi-c,7009
|
|
78
|
+
mplang/libs/mpc/ot/extension.py,sha256=2Zk43JTpd7a0iorV7KWbyo_ebJi3G11QlxT9-8WJvBE,17452
|
|
79
|
+
mplang/libs/mpc/ot/silent.py,sha256=lO8qhlejx0crIT_8PJcRU-lyUTgIsrE26hkoBzbR7sY,7867
|
|
80
|
+
mplang/libs/mpc/psi/__init__.py,sha256=mpevlx3Z5_u9Q1McDZBBIGHApeO9julgiM09GToxxEA,1231
|
|
81
|
+
mplang/libs/mpc/psi/cuckoo.py,sha256=BQE0CQ7OZWuz_E-ICJ55PDH6hG2T0McbR1QTLmf9HC0,7743
|
|
82
|
+
mplang/libs/mpc/psi/okvs.py,sha256=bNUA_7LEkSw9Yw-v39G3qSfE4VtLHYj_a752WyTXXqc,1573
|
|
83
|
+
mplang/libs/mpc/psi/okvs_gct.py,sha256=1XPw1CgQfuaspSRP7A2GbxyPJ66qW_sRnWmsWc_vG4w,3366
|
|
84
|
+
mplang/libs/mpc/psi/oprf.py,sha256=JSSmK6JK9R8wKEVzmw_4BFa1wFA4UJqxrNK_ayBxE-Q,13763
|
|
85
|
+
mplang/libs/mpc/psi/rr22.py,sha256=LXHqY_S3H7yEScGW6KO7NbliKIkB2prqOhnw1Vb2fE8,11188
|
|
86
|
+
mplang/libs/mpc/psi/unbalanced.py,sha256=-0qAbYqw7vn_hBTb8E71z5RljO6-x8Tcn47TBH1v2_M,7421
|
|
87
|
+
mplang/libs/mpc/vole/__init__.py,sha256=2dU4X6n73HoK-YCiCl4b36SkLRKR6rofe2xxLxBz6Rc,968
|
|
88
|
+
mplang/libs/mpc/vole/gilboa.py,sha256=Lt9n9Ee_wgekxjvUdL0ed4eLpiQJ8EB4_YhOVqI-vBc,9942
|
|
89
|
+
mplang/libs/mpc/vole/ldpc.py,sha256=gOmIbyOjkGE5lewyatl3p6FizNNH8LZ_1oOhp_-TOck,12780
|
|
90
|
+
mplang/libs/mpc/vole/silver.py,sha256=EIxhpFIVNBemgeIZzCu5Cz_4wysxRm9b1Xfu0xiweVQ,12218
|
|
91
|
+
mplang/runtime/__init__.py,sha256=VdUwJ3kDaI46FvGw7iMGwcsjt0HTGmmRmaBwj99xKIw,620
|
|
92
|
+
mplang/runtime/dialect_state.py,sha256=HxO1i4kSOujS2tQzAF9-WmI3nChSaGgupf2_07dHetY,1277
|
|
93
|
+
mplang/runtime/interpreter.py,sha256=jf79iH3JxQklzBPI2z1u8lnNo3CGJ0JBUiigPUQbevc,32256
|
|
94
|
+
mplang/runtime/object_store.py,sha256=yT6jtKG2GUEJVmpq3gnQ8mCMvUFYzgBciC5A-J5KRdk,5998
|
|
95
|
+
mplang/runtime/value.py,sha256=EqlhSgxLTJi_FF3ppyKjMe4eHS6-ROx-zK1YesG1U4o,4311
|
|
96
|
+
mplang/utils/__init__.py,sha256=toubeyISiT6WDdITdfAvdY2iXVZU3PKVNWVeC9sYxuA,947
|
|
97
|
+
mplang/utils/func_utils.py,sha256=aZ-X43w8JKJgiF-IUMS0G7QqrNeoTM5ZPzRNd-tKxpw,5180
|
|
98
|
+
mplang_nightly-0.1.dev270.dist-info/METADATA,sha256=SJloPENuQIObfO0jrJ62IITYz3Hbl4y1Lo-mwN58-Yc,16783
|
|
99
|
+
mplang_nightly-0.1.dev270.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
100
|
+
mplang_nightly-0.1.dev270.dist-info/entry_points.txt,sha256=mG1oJT-GAjQR834a62_QIWb7litzWPPyVnwFqm-rWuY,55
|
|
101
|
+
mplang_nightly-0.1.dev270.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
102
|
+
mplang_nightly-0.1.dev270.dist-info/RECORD,,
|
mplang/v1/__init__.py
DELETED
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
# Copyright 2025 Ant Group Co., Ltd.
|
|
2
|
-
#
|
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
-
# you may not use this file except in compliance with the License.
|
|
5
|
-
# You may obtain a copy of the License at
|
|
6
|
-
#
|
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
-
#
|
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
-
# See the License for the specific language governing permissions and
|
|
13
|
-
# limitations under the License.
|
|
14
|
-
|
|
15
|
-
"""Multi-Party Programming Language for Secure Computation."""
|
|
16
|
-
|
|
17
|
-
# Version is managed by hatch-vcs and available after package installation
|
|
18
|
-
try:
|
|
19
|
-
from importlib.metadata import PackageNotFoundError, version
|
|
20
|
-
|
|
21
|
-
__version__ = version("mplang")
|
|
22
|
-
except PackageNotFoundError:
|
|
23
|
-
# Fallback for development/editable installs when package is not installed
|
|
24
|
-
__version__ = "0.0.0-dev"
|
|
25
|
-
|
|
26
|
-
from mplang.v1 import analysis
|
|
27
|
-
from mplang.v1._device import device, get_dev_attr, is_device_obj, put, set_dev_attr
|
|
28
|
-
from mplang.v1.core import (
|
|
29
|
-
ClusterSpec,
|
|
30
|
-
Device,
|
|
31
|
-
DType,
|
|
32
|
-
InterpContext,
|
|
33
|
-
IrReader,
|
|
34
|
-
IrWriter,
|
|
35
|
-
Mask,
|
|
36
|
-
MPContext,
|
|
37
|
-
MPObject,
|
|
38
|
-
MPType,
|
|
39
|
-
Node,
|
|
40
|
-
Rank,
|
|
41
|
-
RuntimeInfo,
|
|
42
|
-
Shape,
|
|
43
|
-
TableType,
|
|
44
|
-
TensorType,
|
|
45
|
-
TraceContext,
|
|
46
|
-
TracedFunction,
|
|
47
|
-
cur_ctx,
|
|
48
|
-
function,
|
|
49
|
-
pconv,
|
|
50
|
-
peval,
|
|
51
|
-
pshfl,
|
|
52
|
-
pshfl_s,
|
|
53
|
-
set_ctx,
|
|
54
|
-
trace,
|
|
55
|
-
uniform_cond,
|
|
56
|
-
while_loop,
|
|
57
|
-
with_ctx,
|
|
58
|
-
)
|
|
59
|
-
from mplang.v1.host import CompileOptions, compile, evaluate, fetch
|
|
60
|
-
from mplang.v1.runtime.driver import Driver
|
|
61
|
-
from mplang.v1.runtime.simulation import Simulator
|
|
62
|
-
from mplang.v1.simp.api import (
|
|
63
|
-
constant,
|
|
64
|
-
debug_print,
|
|
65
|
-
prand,
|
|
66
|
-
prank,
|
|
67
|
-
run,
|
|
68
|
-
run_at,
|
|
69
|
-
run_jax,
|
|
70
|
-
run_jax_at,
|
|
71
|
-
run_sql,
|
|
72
|
-
run_sql_at,
|
|
73
|
-
set_mask,
|
|
74
|
-
)
|
|
75
|
-
from mplang.v1.simp.mpi import allgather_m, bcast_m, gather_m, p2p, scatter_m
|
|
76
|
-
from mplang.v1.simp.party import P0, P1, P2, P2P, P, Party, load_module
|
|
77
|
-
from mplang.v1.simp.random import key_split, pperm, prandint, ukey, urandint
|
|
78
|
-
from mplang.v1.simp.smpc import reveal, reveal_to, seal, seal_from, srun_jax
|
|
79
|
-
|
|
80
|
-
# Public API
|
|
81
|
-
__all__ = [
|
|
82
|
-
"P0",
|
|
83
|
-
"P1",
|
|
84
|
-
"P2",
|
|
85
|
-
"P2P",
|
|
86
|
-
"ClusterSpec",
|
|
87
|
-
"CompileOptions",
|
|
88
|
-
"DType",
|
|
89
|
-
"Device",
|
|
90
|
-
"Driver",
|
|
91
|
-
"InterpContext",
|
|
92
|
-
"IrReader",
|
|
93
|
-
"IrWriter",
|
|
94
|
-
"MPContext",
|
|
95
|
-
"MPObject",
|
|
96
|
-
"MPType",
|
|
97
|
-
"Mask",
|
|
98
|
-
"Node",
|
|
99
|
-
"P",
|
|
100
|
-
"Party",
|
|
101
|
-
"Rank",
|
|
102
|
-
"RuntimeInfo",
|
|
103
|
-
"Shape",
|
|
104
|
-
"Simulator",
|
|
105
|
-
"TableType",
|
|
106
|
-
"TensorType",
|
|
107
|
-
"TraceContext",
|
|
108
|
-
"TracedFunction",
|
|
109
|
-
"__version__",
|
|
110
|
-
"allgather_m",
|
|
111
|
-
"analysis",
|
|
112
|
-
"bcast_m",
|
|
113
|
-
"compile",
|
|
114
|
-
"constant",
|
|
115
|
-
"cur_ctx",
|
|
116
|
-
"debug_print",
|
|
117
|
-
"device",
|
|
118
|
-
"evaluate",
|
|
119
|
-
"fetch",
|
|
120
|
-
"function",
|
|
121
|
-
"gather_m",
|
|
122
|
-
"get_dev_attr",
|
|
123
|
-
"is_device_obj",
|
|
124
|
-
"key_split",
|
|
125
|
-
"load_module",
|
|
126
|
-
"p2p",
|
|
127
|
-
"pconv",
|
|
128
|
-
"peval",
|
|
129
|
-
"pperm",
|
|
130
|
-
"prand",
|
|
131
|
-
"prandint",
|
|
132
|
-
"prank",
|
|
133
|
-
"pshfl",
|
|
134
|
-
"pshfl_s",
|
|
135
|
-
"put",
|
|
136
|
-
"reveal",
|
|
137
|
-
"reveal_to",
|
|
138
|
-
"run",
|
|
139
|
-
"run_at",
|
|
140
|
-
"run_jax",
|
|
141
|
-
"run_jax_at",
|
|
142
|
-
"run_sql",
|
|
143
|
-
"run_sql_at",
|
|
144
|
-
"scatter_m",
|
|
145
|
-
"seal",
|
|
146
|
-
"seal_from",
|
|
147
|
-
"set_ctx",
|
|
148
|
-
"set_dev_attr",
|
|
149
|
-
"set_mask",
|
|
150
|
-
"srun_jax",
|
|
151
|
-
"trace",
|
|
152
|
-
"ukey",
|
|
153
|
-
"uniform_cond",
|
|
154
|
-
"urandint",
|
|
155
|
-
"while_loop",
|
|
156
|
-
"with_ctx",
|
|
157
|
-
]
|