Program.defgate(name, matrix, parameters=None)[source]

Define a new static gate.


The matrix elements along each axis are ordered by bitstring. For two qubits the order is 00, 01, 10, 11, where the the bits are ordered in reverse by the qubit index, i.e., for qubits 0 and 1 the bitstring 01 indicates that qubit 0 is in the state 1. See also the related docs in the WavefunctionSimulator Overview.

  • name (str) – The name of the gate.

  • matrix (Union[List[List[Any]], ndarray, matrix]) – List of lists or Numpy 2d array.

  • parameters (Optional[List[Parameter]]) – list of parameters that are used in this gate

Return type



The Program instance.