Path: blob/main/notebooks/intro/hello_qiskit.py
3855 views
import hello_quantum12exercises = [3{4'initialize': [],5'success_condition': {},6'allowed_gates': {'0': {'x': 3}, '1': {}, 'both': {}},7'vi': [[1], True, False],8'mode': 'line',9'qubit_names': {'0':'q[0]', '1':'q[1]'}10},11{12'initialize': [['h','0']],13'success_condition': {},14'allowed_gates': {'0': {'h': 3}, '1': {}, 'both': {}},15'vi': [[1], True, False],16'mode': 'line',17'qubit_names': {'0':'q[0]', '1':'q[1]'}18},19{20'initialize': [['x','0'],['h','0']],21'success_condition': {},22'allowed_gates': {'0': {'ry(pi/4)': 4}, '1': {}, 'both': {}},23'vi': [[1], True, False],24'mode': 'line',25'qubit_names': {'0':'q[0]', '1':'q[1]'}26},27{28'initialize': [['x','0'],['h','0']],29'success_condition': {},30'allowed_gates': {'0': {'bloch':0, 'ry(pi/4)': 4}, '1': {}, 'both': {}},31'vi': [[1], True, False],32'mode': 'line',33'qubit_names': {'0':'q[0]', '1':'q[1]'}34},35{36'initialize': [['x','0'],['h','0']],37'success_condition': {},38'allowed_gates': {'1': {'bloch':0,'x':2,'h':2,'ry(pi/4)': 2}, '0': {}, 'both': {}},39'vi': [[0], True, False],40'mode': 'line',41'qubit_names': {'0':'q[0]', '1':'q[1]'}42},43{44'initialize': [['x','0']],45'success_condition': {'XX':1},46'allowed_gates': {'0': {'bloch':0,'x':0,'h':0,'ry(pi/4)': 0}, '1': {'bloch':0,'x':0,'h':0,'ry(pi/4)': 0}, 'both': {}},47'vi': [[], True, True],48'mode': 'line',49'qubit_names': {'0':'q[0]', '1':'q[1]'}50},51{52'initialize': [['ry(-pi/4)','1']],53'success_condition': {},54'allowed_gates': {'0': {'x': 3}, '1': {}, 'both': {}},55'vi': [[], True, True],56'mode': 'line',57'qubit_names': {'0':'q[0]', '1':'q[1]'}58},59{60'initialize': [['ry(-pi/4)','1']],61'success_condition': {},62'allowed_gates': {'0': {'h': 3}, '1': {}, 'both': {}},63'vi': [[], True, True],64'mode': 'line',65'qubit_names': {'0':'q[0]', '1':'q[1]'}66},67{68'initialize': [],69'success_condition': {'ZI':-1, 'IZ':-1},70'allowed_gates': {'0': {'bloch':0,'ry(pi/4)': 0}, '1': {'bloch':0,'ry(pi/4)': 0}, 'both': {}},71'vi': [[], True, True],72'mode': 'line',73'qubit_names': {'0':'q[0]', '1':'q[1]'}74},75{76'initialize': [['h','0'],['h','1']],77'success_condition': {},78'allowed_gates': {'0': {}, '1': {}, 'both': {'cz':3}},79'vi': [[], True, True],80'mode': 'line',81'qubit_names': {'0':'q[0]', '1':'q[1]'}82},83{84'initialize': [['h','0'],['h','1']],85'success_condition': {},86'allowed_gates': {'0': {}, '1': {}, 'both': {'cz':3}},87'vi': [[], True, True],88'mode': 'y',89'qubit_names': {'0':'q[0]', '1':'q[1]'}90},91{92'initialize': [],93'success_condition': {'ZZ':2},94'allowed_gates': {'0': {'bloch':0, 'x':0, 'h':0, 'cz':0, 'ry(pi/4)': 0}, '1': {'bloch':0, 'x':0, 'h':0, 'cz':0, 'ry(pi/4)': 0}, 'both': {'cz':0}},95'vi': [[], True, True],96'mode': 'line',97'qubit_names': {'0':'q[0]', '1':'q[1]'}98},99{100'initialize': [],101'success_condition': {'ZZ':+0.7071,'ZX':+0.7071,'XZ':+0.7071,'XX':-0.7071},102'allowed_gates': {'0': {'bloch':0, 'x':0, 'h':0, 'cz':0, 'ry(pi/4)': 0}, '1': {'bloch':0, 'x':0, 'h':0, 'cz':0, 'ry(pi/4)': 0}, 'both': {'cz':0}},103'vi': [[], True, True],104'mode': 'line',105'qubit_names': {'0':'A', '1':'B'}106}107]108109110def run_puzzle(j):111puzzle = hello_quantum.run_game(exercises[j]['initialize'],112exercises[j]['success_condition'],113exercises[j]['allowed_gates'],114exercises[j]['vi'],115qubit_names=exercises[j]['qubit_names'],116mode=exercises[j]['mode']117)118return puzzle119120