Application (paulie.application)#

Visualization#

Utilities for visualizing the anti-commutation graph.

plot.plot_anti_commutation_graph(generators)

Plot a canonical anti-commutation graph of a set of generators.

Average Pauli weight#

Utilities related to average Pauli weights.

average_pauli_weight.average_pauli_weight(o)

Calculates the average Pauli weight (influence) for an operator \(O\).

average_pauli_weight.get_pauli_weights(...)

Generates the weight \(|P|\) for each of the \(4^{\text{number qubits}}\) Pauli operators.

average_pauli_weight.quantum_fourier_entropy(o)

Finds the quantum Fourier entropy of an operator \(O\).

Optimal \(\mathfrak{su}(2^n)\) generators#

Utilities related to \(\mathfrak{su}(2^n)\) generators.

get_optimal_su2_n.get_optimal_edges_su_2_n(ng)

Get the optimal number of edges in the anticommutation graph for \(\mathfrak{su}(2^{n})\).

get_optimal_su2_n.get_optimal_universal_generators(n)

Get an optimal universal generator set for \(\mathfrak{su}(2^{n})\).

Chaos metrics#

Utilities related to different DLA properties.

average_graph_complexity.average_graph_complexity(...)

Get the average graph complexity of a Pauli string with respect to the time evolution generated by a given generator set.

otoc.average_otoc(generators, v, w)

Finds the Haar averaged out-of-time-order correlator \(F\) between two Pauli strings \(V\) and \(W\).

otoc.fourpoint(generators, m, q, r, s)

Computes the four-point correlator of Pauli strings \(P\), \(Q\), \(R\), and \(S\).

second_moment.second_moment(operator_m, ...)

Computes the second-order twirl of an operator \(M\) by projecting it onto the subspace of quadratic symmetries of a DLA.

Pauli instability and fixed-unitary OTOC#

Expectations over uniform Pauli pairs for a given unitary (contrast with Haar-averaged average_otoc() over a DLA).

otoc.otoc_fixed_unitary(u, p1, p2, *[, ...])

Out-of-time-order correlator for a fixed unitary \(U\) and Pauli strings \(P_1\), \(P_2\):

otoc.mean_abs_otoc_uniform(u, *[, method, ...])

Uniform expectation of \(\lvert\mathrm{OTOC}(U,P_1,P_2)\rvert\) over independent \(P_1,P_2 \in \{I,X,Y,Z\}^{\otimes n}\) (each uniform on \(4^n\) strings).

otoc.pauli_instability(u, *[, method, ...])

Pauli instability (Definition 1):

Matrix decomposition#

Utilities related to matrix decompositions.

matrix_decomposition.matrix_decomposition(matrix)

Returns the weight vector corresponding to the Pauli basis decomposition of a matrix.

matrix_decomposition.matrix_decomposition_diagonal(diag)

Returns the weight vector corresponding to the Pauli basis decomposition of a diagonal matrix.