def test_grover(): nqubits = 2 assert apply_grover(return_one_on_one, nqubits) == IntQubit(1, nqubits=nqubits) nqubits = 4 basis_states = superposition_basis(nqubits) expected = (-13*basis_states)/64 + 264*IntQubit(2, nqubits)/256 assert apply_grover(return_one_on_two, 4) == qapply(expected)
def test_grover(): nqubits = 2 assert apply_grover(return_one_on_one, nqubits) == IntQubit(1, nqubits) nqubits = 4 basis_states = superposition_basis(nqubits) expected = (-13*basis_states)/64 + 264*IntQubit(2, nqubits)/256 assert apply_grover(return_one_on_two, 4) == qapply(expected)
print("q3:") print(q3.superposition()) print() print("q4:") print(q4.superposition()) print() print("q5:") print(q5.superposition()) print() print("q6:") print(q6.superposition()) print() print("q7:") print(q7.superposition()) print() print("q8:") print(q8.superposition()) print() # Grover Iteration print(qcol.allQubits[Qubit(qapply(grover_iteration(q2.superposition(), v2)))]) #print(qcol.allQubits[Qubit( print(qapply(apply_grover(f5, q2.nQubits()))) #])