View source on GitHub

Creates a called federated zip.

This function accepts a value whose type signature is a (potentially) nested tuple structure of federated values all with the same placement, and uses one of the federated_zip intrinsics (at client or at server) to promote the placement to the highest level. E.g., A value of type ', C@S>>' would be mapped to a value of type ', C>>@S'.

value A building_blocks.ComputationBuildingBlock with a type_signature of type computation_types.NamedTupleType that may contain other nested computation_types.NamedTupleTypes bottoming out in at least one element of type computation_Types.FederatedType. These federated types must be at the same placement.

A building_blocks.Call whose type signature is now a federated computation_types.NamedTupleType, placed at the same placement as the leaves of value.

TypeError If any of the types do not match.
ValueError If value does not contain any elements.