#!/usr/bin/env python # coding: utf-8 # In[1]: import numpy as np import pygsti from pygsti import algorithms # In[2]: n_1 = 4 glist = ['Gx','Gy','Gcnot'] pspec_1 = pygsti.obj.ProcessorSpec(n_1,glist,verbosity=0) # In[3]: s_1, p_1 = pygsti.symplectic.random_clifford(n_1) circuit = algorithms.compile_clifford(s_1,p_1,pspec_1) print(circuit.twoqubit_gatecount()) # In[4]: circuit = algorithms.compile_stabilizer_state(s_1,p_1,pspec_1) print(circuit.twoqubit_gatecount()) # In[5]: circuit = algorithms.compile_stabilizer_measurement(s_1,p_1,pspec_1) print(circuit.twoqubit_gatecount()) # In[6]: from pygsti.extras import rb circuit, out = rb.sample.direct_rb_circuit(pspec_1,10,randomizeout=True) print(circuit) print(out) # In[11]: from pygsti.extras import rb circuit, out = rb.sample.clifford_rb_circuit(pspec_1,10,randomizeout=False) print(circuit) print(out) # In[ ]: n_2 = 3 glist = ['Gxpi','Gypi','Gzpi','Gh','Gp','Gcphase'] availability = {'Gcphase':[(0,1),(1,2)]} pspec_2 = pygsti.obj.ProcessorSpec(n_2,glist,availability=availability,verbosity=0) n_3 = 6 glist = ['Gxpi','Gypi','Gzpi','Gh','Gp','Gcphase'] availability = {'Gcphase':[(0,1),(1,2),(2,3),(3,4),(4,5)]} pspec_3 = pygsti.obj.ProcessorSpec(n_3,glist,availability=availability,verbosity=0) np.sum(pspec_3.qubitgraph.shortest_path_distance_matrix(),axis=0) # In[ ]: s_3, p_3 = pygsti.symplectic.random_clifford(n_3) circuit = algorithms.compile_clifford(s_3,p_3,pspec_3) print(circuit.twoqubit_gatecount()) circuit = algorithms.compile_stabilizer_state(s_3,p_3,pspec_3) print(circuit.twoqubit_gatecount()) # In[ ]: pygsti.symplectic.composite_clifford_from_clifford_circuit(circuit,) # In[ ]: g= pspec_1.models['clifford'] # In[ ]: l = [] # In[ ]: if l == None: print(1) # In[ ]: