qml.math¶
This package contains unified functions for frameworkagnostic tensor and array manipulation. Given the input tensorlike object, the call is dispatched to the corresponding array manipulation framework, allowing for endtoend differentiation to be preserved.
Warning
These functions are experimental, and only a subset of common functionality is supported. Furthermore, the names and behaviour of these functions may differ from similar functions in common frameworks; please refer to the function docstrings for more details.
The following frameworks are currently supported:
NumPy
Autograd
TensorFlow
PyTorch
JAX
Functions¶

Determines the correct framework to dispatch to given a sequence of tensorlike objects. 

Combine a sequence of 2D tensors to form a block diagonal tensor. 

Concatenate a sequence of tensors along the specified axis. 

Construct a diagonal tensor from a list of scalars. 

Returns the matrix or dot product of two tensors. 

Returns a tensor of all ones with the same shape and dtype as the input tensor. 

Stack a sequence of tensors along the specified axis. 

Returns elements chosen from x or y depending on a boolean tensor condition. 

Returns True if two arrays are elementwise equal within a tolerance. 

Returns True if two tensors are elementwise equal along a given axis. 

Casts the given tensor to a new type. 

Casts a tensor to the same dtype as another. 

Convert a tensor to the same type as another. 

Returns the name of the package that any array/tensor manipulations will dispatch to. 

Returns True if the tensor is considered trainable. 

Calculate the covariance matrix of a list of commuting observables, given the joint probability distribution of the system in the shared eigenbasis. 

Compute the marginal probability given a joint probability distribution expressed as a tensor. 
Contents
Downloads