API Reference#

Tumult Analytics is a differentially private analytics library from Tumult Labs.

The library is broken up into a number of modules that provide different functionality. These modules fall into a few broad categories, described below.

For specifying privacy guarantees:

  • session defines the Session, an interactive interface for making differentially private queries.

  • privacy_budget contains types for representing privacy budgets.

  • protected_change contains types for expressing what changes in input tables are protected by differential privacy.

For defining queries:

  • query_builder provides an interface for constructing differentially private queries from basic query operations.

  • keyset defines KeySet, a type for specifying the keys used in group-by operations.

  • constraints contains types for representing constraints used when evaluating queries on data with the AddRowsWithID protected change.

  • truncation_strategy and binning_spec provide types that are used to define certain types of queries.

Modules#

binning_spec

A BinningSpec defines a binning operation on a column.

constraints

Defines Constraint types.

keyset

A KeySet specifies a list of values for one or more columns.

privacy_budget

Classes for specifying privacy budgets.

protected_change

Types for programmatically specifying what changes in input tables are protected.

query_builder

An API for building differentially private queries from basic operations.

query_expr

Building blocks of the Tumult Analytics query language. Not for direct use.

session

Interactive query evaluation using a differential privacy framework.

truncation_strategy

Defines strategies for performing truncation in private joins.

utils

Utility functions.

This diagram shows the basic workflow for most Analytics operations. (Click to see full-size image.)