# pytket.circuit ```{toctree} :caption: 'Classes:' :maxdepth: 1 circuit_class.rst optype.rst classical.rst display.md ``` ```{eval-rst} .. currentmodule:: pytket._tket.circuit ``` ```{eval-rst} .. automodule:: pytket.circuit ``` ```{eval-rst} .. automodule:: pytket._tket.circuit ``` ```{eval-rst} .. automethod:: pytket.circuit.fresh_symbol ``` ```{eval-rst} .. autoclass:: pytket.circuit.Op .. automethod:: create .. automethod:: free_symbols .. automethod:: get_name .. automethod:: get_unitary .. automethod:: is_clifford .. automethod:: is_clifford_type .. automethod:: is_gate .. autoproperty:: dagger .. autoproperty:: n_qubits .. autoproperty:: params .. autoproperty:: transpose .. autoproperty:: type ``` ```{eval-rst} .. autoclass:: pytket.circuit.Command .. automethod:: free_symbols .. autoproperty:: args .. autoproperty:: bits .. autoproperty:: op .. autoproperty:: opgroup .. autoproperty:: qubits ``` ```{eval-rst} .. autoenum:: pytket.circuit.BasisOrder ``` ```{eval-rst} .. autoenum:: pytket.circuit.CXConfigType ``` ```{eval-rst} .. autoenum:: pytket.circuit.EdgeType ``` ```{eval-rst} .. autoclass:: pytket.circuit.CircBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: symbol_substitution .. autoproperty:: circuit_name ``` ```{eval-rst} .. autoclass:: pytket.circuit.Unitary1qBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_matrix ``` ```{eval-rst} .. autoclass:: pytket.circuit.Unitary2qBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_matrix ``` ```{eval-rst} .. autoclass:: pytket.circuit.Unitary3qBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_matrix ``` ```{eval-rst} .. autoclass:: pytket.circuit.ExpBox .. automethod:: __init__ .. automethod:: get_circuit ``` ```{eval-rst} .. autoclass:: pytket.circuit.PauliExpBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_cx_config .. automethod:: get_paulis .. automethod:: get_phase ``` ```{eval-rst} .. autoclass:: pytket.circuit.PauliExpPairBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_cx_config .. automethod:: get_paulis_pair .. automethod:: get_phase_pair ``` ```{eval-rst} .. autoclass:: pytket.circuit.PauliExpCommutingSetBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_cx_config .. automethod:: get_paulis ``` ```{eval-rst} .. autoclass:: pytket.circuit.TermSequenceBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_cx_config .. automethod:: get_depth_weight .. automethod:: get_graph_colouring_method .. automethod:: get_partition_strategy .. automethod:: get_paulis .. automethod:: get_synthesis_strategy ``` ```{eval-rst} .. autoenum:: pytket.circuit.ToffoliBoxSynthStrat ``` ```{eval-rst} .. autoclass:: pytket.circuit.ToffoliBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_permutation .. automethod:: get_rotation_axis .. automethod:: get_strat ``` ```{eval-rst} .. autoclass:: pytket.circuit.QControlBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_control_state .. automethod:: get_control_state_bits .. automethod:: get_n_controls .. automethod:: get_op ``` ```{eval-rst} .. autoclass:: pytket.circuit.CustomGateDef .. automethod:: define .. automethod:: from_dict .. automethod:: to_dict .. autoproperty:: args .. autoproperty:: arity .. autoproperty:: definition .. autoproperty:: name ``` ```{eval-rst} .. autoclass:: pytket.circuit.CustomGate .. automethod:: get_circuit .. autoproperty:: gate .. autoproperty:: name .. autoproperty:: params ``` ```{eval-rst} .. autoclass:: pytket.circuit.Conditional .. autoproperty:: op .. autoproperty:: value .. autoproperty:: width ``` ```{eval-rst} .. autoclass:: pytket.circuit.ClExprOp .. automethod:: __init__ .. autoproperty:: expr .. autoproperty:: type ``` ```{eval-rst} .. autoclass:: pytket.circuit.WiredClExpr .. automethod:: __init__ .. automethod:: from_dict .. automethod:: to_dict .. autoproperty:: bit_posn .. autoproperty:: expr .. autoproperty:: output_posn .. autoproperty:: reg_posn ``` ```{eval-rst} .. autoclass:: pytket.circuit.ClExpr .. automethod:: __init__ .. automethod:: as_qasm .. autoproperty:: args .. autoproperty:: op ``` ```{eval-rst} .. autoenum:: pytket.circuit.ClOp ``` ```{eval-rst} .. autoclass:: pytket.circuit.ClBitVar .. automethod:: __init__ .. autoproperty:: index ``` ```{eval-rst} .. autoclass:: pytket.circuit.ClRegVar .. automethod:: __init__ .. autoproperty:: index ``` ```{eval-rst} .. autoclass:: pytket.circuit.PhasePolyBox .. automethod:: __init__ .. automethod:: get_circuit .. autoproperty:: linear_transformation .. autoproperty:: n_qubits .. autoproperty:: phase_polynomial .. autoproperty:: phase_polynomial_as_list .. autoproperty:: qubit_indices ``` ```{eval-rst} .. autoclass:: pytket.circuit.ProjectorAssertionBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_matrix ``` ```{eval-rst} .. autoclass:: pytket.circuit.StabiliserAssertionBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_stabilisers ``` ```{eval-rst} .. autoclass:: pytket.circuit.WASMOp .. automethod:: __init__ .. autoproperty:: func_name .. autoproperty:: input_widths .. autoproperty:: n_i32 .. autoproperty:: num_bits .. autoproperty:: num_w .. autoproperty:: output_widths .. autoproperty:: wasm_uid ``` ```{eval-rst} .. autoclass:: pytket.circuit.MultiBitOp .. automethod:: __init__ .. autoproperty:: basic_op .. autoproperty:: multiplier ``` ```{eval-rst} .. autoclass:: pytket.circuit.SetBitsOp .. automethod:: __init__ .. autoproperty:: values ``` ```{eval-rst} .. autoclass:: pytket.circuit.ClassicalEvalOp .. automethod:: __init__ ``` ```{eval-rst} .. autoclass:: pytket.circuit.ClassicalOp .. automethod:: __init__ .. autoproperty:: n_input_outputs .. autoproperty:: n_inputs .. autoproperty:: n_outputs ``` ```{eval-rst} .. autoclass:: pytket.circuit.CopyBitsOp .. automethod:: __init__ ``` ```{eval-rst} .. autoclass:: pytket.circuit.RangePredicateOp .. automethod:: __init__ .. autoproperty:: lower .. autoproperty:: upper ``` ```{eval-rst} .. autoclass:: pytket.circuit.MultiplexorBox .. automethod:: __init__ .. automethod:: get_bitstring_op_pair_list .. automethod:: get_circuit .. automethod:: get_op_map ``` ```{eval-rst} .. autoclass:: pytket.circuit.MultiplexedRotationBox .. automethod:: __init__ .. automethod:: get_bitstring_op_pair_list .. automethod:: get_circuit .. automethod:: get_op_map ``` ```{eval-rst} .. autoclass:: pytket.circuit.MultiplexedU2Box .. automethod:: __init__ .. automethod:: get_bitstring_op_pair_list .. automethod:: get_circuit .. automethod:: get_impl_diag .. automethod:: get_op_map ``` ```{eval-rst} .. autoclass:: pytket.circuit.MultiplexedTensoredU2Box .. automethod:: __init__ .. automethod:: get_bitstring_op_pair_list .. automethod:: get_circuit .. automethod:: get_op_map ``` ```{eval-rst} .. autoclass:: pytket.circuit.StatePreparationBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_statevector .. automethod:: is_inverse .. automethod:: with_initial_reset ``` ```{eval-rst} .. autoclass:: pytket.circuit.DiagonalBox .. automethod:: __init__ .. automethod:: get_circuit .. automethod:: get_diagonal .. automethod:: is_upper_triangle ``` ```{eval-rst} .. autoclass:: pytket.circuit.ConjugationBox .. automethod:: __init__ .. automethod:: get_action .. automethod:: get_circuit .. automethod:: get_compute .. automethod:: get_uncompute ``` ```{eval-rst} .. autoclass:: pytket.circuit.ResourceBounds .. automethod:: __init__ .. automethod:: get_max .. automethod:: get_min ``` ```{eval-rst} .. autoclass:: pytket.circuit.ResourceData .. automethod:: __init__ .. automethod:: __repr__ .. automethod:: get_gate_depth .. automethod:: get_op_type_count .. automethod:: get_op_type_depth .. automethod:: get_two_qubit_gate_depth ``` ```{eval-rst} .. autoclass:: pytket.circuit.DummyBox .. automethod:: __init__ .. automethod:: get_n_bits .. automethod:: get_n_qubits .. automethod:: get_resource_data ``` ```{eval-rst} .. autoclass:: pytket.circuit.BarrierOp .. automethod:: __init__ .. autoproperty:: data ``` ```{eval-rst} .. autoclass:: pytket.circuit.MetaOp .. automethod:: __init__ .. autoproperty:: data ``` ```{eval-rst} .. automodule:: pytket.circuit.named_types :members: ```