cirq.sample_state_vector

cirq.sample_state_vector(state: numpy.ndarray, indices: List[int], repetitions: int = 1) → List[List[bool]][source]

Samples repeatedly from measurements in the computational basis.

Note that this does not modify the passed in state.

Parameters:
  • state – The multi-qubit wavefunction to be sampled. This is an array of 2 to the power of the number of qubit complex numbers, and so state must be of size 2**integer. The state can be a vector of size 2**integer or a tensor of shape (2, 2, ..., 2).
  • indices – Which qubits are measured. The state is assumed to be supplied in big endian order. That is the xth index of v, when expressed as a bitstring, has the largest values that the 0th index.
  • repetitions – The number of times to sample the state.
Returns:

Measurement results with True corresponding to the |1⟩ state. The outer list is for repetitions, and the inner corresponds to measurements ordered by the input indices.

Raises:
  • ValueErrorrepetitions is less than one or size of state is not a power of 2.
  • IndexError – An index from indices is out of range, given the number of qubits corresponding to the state.