:py:mod:`qsearch.unitaries` =========================== .. py:module:: qsearch.unitaries .. autoapi-nested-parse:: This module contains a list of predefined commonly used constant unitaries, and functions for generating commonly used unitaries. .. attribute:: cnot Constant `CNOT` unitary .. attribute:: sqrt_cnot Constant square root of `CNOT` unitary .. attribute:: swap Constant 2 qubit swap unitary .. attribute:: toffoli Constant toffoli unitary .. attribute:: fredkin Constant fredkin unitary .. attribute:: peres Constant peres unitary .. attribute:: logical_or Constant logical or unitary .. attribute:: full_adder Constant adder unitary .. attribute:: rot_x Function to generate an `X` rotation by `theta` .. attribute:: rot_x_jac Function that returns the jacobian of rot_x() .. attribute:: rot_y Function to generate an `Y` rotation by `theta` .. attribute:: rot_y_jac Function that returns the jacobian of rot_y() .. attribute:: rot_z Function to generate an `Z` rotation by `theta` .. attribute:: rot_z_jac Function that returns the jacobian of rot_z() .. attribute:: qft Returns a `n`x`n` qft matrix. .. attribute:: identity Returns a `n`x`n` identity matrix .. attribute:: general_swap Returns the swap matrix for qudits of the specified size. .. attribute:: arbitrary_cnot Returns a CNOT between any two qubits within the specified number of qubits Module Contents --------------- Functions ~~~~~~~~~ .. autoapisummary:: qsearch.unitaries.rot_z qsearch.unitaries.rot_z_jac qsearch.unitaries.rot_x qsearch.unitaries.rot_x_jac qsearch.unitaries.rot_y qsearch.unitaries.rot_y_jac qsearch.unitaries.qft qsearch.unitaries.identity qsearch.unitaries.general_swap qsearch.unitaries.arbitrary_cnot Attributes ~~~~~~~~~~ .. autoapisummary:: qsearch.unitaries.cnot qsearch.unitaries.sqrt_cnot qsearch.unitaries.swap qsearch.unitaries.toffoli qsearch.unitaries.fredkin qsearch.unitaries.peres qsearch.unitaries.logical_or qsearch.unitaries.full_adder qsearch.unitaries.pauli_x qsearch.unitaries.pauli_y qsearch.unitaries.pauli_z qsearch.unitaries.sqrt_x .. py:data:: cnot .. py:data:: sqrt_cnot .. py:data:: swap .. py:data:: toffoli .. py:data:: fredkin .. py:data:: peres .. py:data:: logical_or .. py:data:: full_adder .. py:data:: pauli_x .. py:data:: pauli_y .. py:data:: pauli_z .. py:data:: sqrt_x .. py:function:: rot_z(theta) .. py:function:: rot_z_jac(theta) .. py:function:: rot_x(theta) .. py:function:: rot_x_jac(theta) .. py:function:: rot_y(theta) .. py:function:: rot_y_jac(theta) .. py:function:: qft(n) .. py:function:: identity(n) .. py:function:: general_swap(d = 2) .. py:function:: arbitrary_cnot(qudits, control, target)