tff.framework.Tuple

View source on GitHub

A tuple with named or unnamed elements in TFF's internal language.

Inherits From: ComputationBuildingBlock

The concise notation for tuples is <name_1=value_1, ...., name_n=value_n> for tuples with named elements, <value_1, ..., value_n> for tuples with unnamed elements, or a mixture of these for tuples with ome named and some unnamed elements, where name_k are the names, and value_k are the value expressions.

For example, a lambda expression that applies fn to elements of 2-tuples pointwise could be represented as (arg -> <fn(arg[0]),fn(arg[1])>).

elements The elements of the tuple, supplied as a list of (name, value) pairs, where 'name' can be None in case the corresponding element is not named and only accessible via an index (see also AnonymousTuple).

TypeError if arguments are of the wrong types.

proto Returns a serialized form of this object as a pb.Computation instance.
type_signature Returns the TFF type of this object (an instance of tff.Type).

Methods

compact_representation

View source

Returns the compact string representation of this building block.

formatted_representation

View source

Returns the formatted string representation of this building block.

from_proto

View source

Returns an instance of a derived class based on 'computation_proto'.

Args
computation_proto An instance of pb.Computation.

Returns
An instance of a class that implements 'ComputationBuildingBlock' and that contains the deserialized logic from in 'computation_proto'.

Raises
NotImplementedError if computation_proto contains a kind of computation for which deserialization has not been implemented yet.
ValueError if deserialization failed due to the argument being invalid.

structural_representation

View source

Returns the structural string representation of this building block.

__eq__

View source

Return self==value.

__getitem__

View source

__iter__

View source

__len__

View source

__ne__

View source

Return self!=value.