Metadata-Version: 2.4
Name: tmlt.core
Version: 0.19.0
Summary: Tumult's differential privacy primitives
Project-URL: documentation, https://docs.tmlt.dev/core/latest/
Project-URL: repository, https://github.com/opendp/tumult-core
License-Expression: Apache-2.0
License-File: LICENSE
License-File: LICENSE.docs
License-File: NOTICE
Keywords: differential privacy
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Security
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: <3.13,>=3.10
Requires-Dist: numpy<2,>=1.23.2; python_version < '3.12'
Requires-Dist: numpy<2,>=1.26.0; python_version >= '3.12'
Requires-Dist: pandas<2,>=1.4.0; python_version < '3.11'
Requires-Dist: pandas<2,>=1.5.0; python_version == '3.11'
Requires-Dist: pandas<3,>=2.2.0; python_version >= '3.12'
Requires-Dist: pyarrow<19,>=18.0.0
Requires-Dist: pyspark[sql]<3.6,>=3.3.1; python_version < '3.11' and sys_platform != 'darwin'
Requires-Dist: pyspark[sql]<3.6,>=3.4.0; python_version == '3.11' and sys_platform != 'darwin'
Requires-Dist: pyspark[sql]<3.6,>=3.5.0; python_version <= '3.11' and sys_platform == 'darwin'
Requires-Dist: pyspark[sql]<5,>=4; python_version >= '3.12'
Requires-Dist: randomgen<=1.26.0,>=1.23.0; python_version < '3.11'
Requires-Dist: randomgen<=2.3.0,>=1.26.0; python_version >= '3.11'
Requires-Dist: scipy<2.0.0,>=1.11.2; python_version >= '3.12'
Requires-Dist: scipy<2.0.0,>=1.6.0; python_version < '3.10'
Requires-Dist: scipy<2.0.0,>=1.8.0; python_version == '3.10'
Requires-Dist: scipy<2.0.0,>=1.9.2; python_version == '3.11'
Requires-Dist: setuptools>=70.0.0
Requires-Dist: sympy<1.13,>=1.8
Requires-Dist: typeguard<5,>=4.0.0
Provides-Extra: testing
Requires-Dist: pytest<8,>=7.3.1; extra == 'testing'
Description-Content-Type: text/markdown

# Tumult Core

Tumult Core is a programming framework for implementing [differentially private](https://en.wikipedia.org/wiki/Differential_privacy) algorithms.

The design of Tumult Core is based on the design proposed in the [OpenDP White Paper](https://projects.iq.harvard.edu/files/opendifferentialprivacy/files/opendp_white_paper_11may2020.pdf), and can automatically verify the privacy properties of algorithms constructed from Tumult Core components. Tumult Core is scalable, includes a wide variety of components, and supports multiple privacy definitions.

## Installation

See the [installation instructions in the documentation](https://docs.tmlt.dev/core/latest/installation.html#installation-instructions) for information about setting up prerequisites such as Spark and Java.

Once the prerequisites are installed, you can install Tumult Core using [pip](https://pypi.org/project/pip/).

```bash
pip install tmlt.core
```

## Documentation

The full documentation is located at https://docs.tmlt.dev/core/latest.

## Support

If you have any questions/concerns, please [create an issue](https://github.com/opendp/tumult-core/issues) or reach out to us on [Slack][slack].

## Contributing

We welcome external volunteers! If you are interested in contributing, please
let us know on [Slack][slack]. See [CONTRIBUTING.md](https://github.com/opendp/tumult-core/blob/main/CONTRIBUTING.md) for information.

[slack]: https://join.slack.com/t/opendp/shared_invite/zt-1aca9bm7k-hG7olKz6CiGm8htI2lxE8w

## License

Tumult Core's source code is licensed under the Apache License, version 2.0
(Apache-2.0). Tumult Core's documentation is licensed under Creative Commons
Attribution-ShareAlike 4.0 International (CC-BY-SA-4.0).
