Manuscript En02-D@4 · En02-D-v4.tex · section · e19ec871

Computational supplement

Computational supplement · lines 1949–2021

Back to manuscript

def collect_decode(M,dk,K,U): out = np.zeros((2,2),complex) for lab,A in blocks(M,dk): modes = [r for S in lab for r in S] need(len(modes)==len(set(modes)),"repeated emitted mode") if len(modes)==K: B = history_unitary(lab,K,U) R = B.conj().T@A@B out += ptrace(R,(K-1,),K) else: out += dep(A) return out

def collect_ledger(lab,K,h,c): live,held,peak,events = 0,0,0,[] for j,S in enumerate(lab): live += h+c peak = max(peak,live) events.append(["arrival",j,live]) live -= h+c-len(S) held += len(S) events.append(["label_and_padding_consumed",j,live]) if held==K: live -= K-1 held = 1 events.append(["invert_consume_ancillas",j,live]) if sum(map(len,lab))==K: live -= 1 events.append(["return",len(lab),live]) else: live -= held events.append(["discard_incomplete",len(lab),live]) live += 1 peak = max(peak,live) events.append(["prepare_I_over_2",len(lab),live]) live -= 1 need(live==0 and peak<=h+c+K-1,"collect occupancy") return "labels":lab,"events":events,"peak":peak, "discard_readout_outcomes":"all computational outcomes"

def multiparticle_audit(): K,c = 3,2 law = 0:[F(1)],1:[F(1,2),F(1,2)], 2:[F(1,2),F(1,4),F(1,4)], 3:[F(1,2),F(1,4),F(1,4)] U = {} for j in (1,2,3): for n in range(1,K+1): G = embed(H,(0,),n) if n>1: G = embed(CZ,(0,1),n)@embed(CX,(0,1),n)@G U[j,n] = G entries = initial(localized(K),K) for j in (1,2,3): entries = advance(entries,j,law,U,lambda j,r:.7+.05*r) A,dk,ek = dense(entries) check("multiparticle_process_iso", A.reshape(-1,2).conj()[email protected](-1,2),I) N = channel(A) p = sum(np.trace(B).real for lab,B in blocks(N[0,0],dk) if sum(map(len,lab))==K) for i,j,E in units(): check("multiparticle_recovery_ collect_decode(N[i,j],dk,K,U),p*E+(1-p)*dep(E)) for lab in sorted(labels(d) for d in dk): DATA["occupancy"].append(collect_ledger(lab,K,3,c)) save("multiparticle_process",A=A,P_all=np.array(p), **{"U_

def rot(P,t): return np.cos(t/2)*I-1j*np.sin(t/2)*P

Nearby in this section