Esempio n. 1
0
def test_tensor_state_vector_implicit_qubits():
    q = cirq.LineQubit.range(2)
    c = cirq.Circuit(cirq.YPowGate(exponent=0.25).on(q[0]))

    psi1 = cirq.final_state_vector(c, dtype=np.complex128)
    psi2 = ccq.tensor_state_vector(c)
    np.testing.assert_allclose(psi1, psi2, atol=1e-15)
Esempio n. 2
0
def test_tensor_state_vector_4():
    qubits = cirq.LineQubit.range(4)
    circuit = cirq.testing.random_circuit(qubits=qubits,
                                          n_moments=100,
                                          op_density=0.8)
    psi1 = cirq.final_state_vector(circuit, dtype=np.complex128)
    psi2 = ccq.tensor_state_vector(circuit, qubits)
    np.testing.assert_allclose(psi1, psi2, atol=1e-8)
Esempio n. 3
0
def test_tensor_state_vector_2():
    q = cirq.LineQubit.range(2)
    rs = np.random.RandomState(52)
    for _ in range(10):
        g = cirq.MatrixGate(cirq.testing.random_unitary(dim=2 ** len(q), random_state=rs))
        c = cirq.Circuit(g.on(*q))
        psi1 = cirq.final_state_vector(c, dtype=np.complex128)
        psi2 = ccq.tensor_state_vector(c, q)
        np.testing.assert_allclose(psi1, psi2, atol=1e-8)