From c00e214955d5d1c677525eeed76cea0d59ccb3e1 Mon Sep 17 00:00:00 2001 From: Pete Shadbolt Date: Mon, 15 Feb 2016 16:57:39 +0000 Subject: [PATCH] Broken `conjugate` operator --- abp.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/abp.py b/abp.py index 92f905a..09c087e 100644 --- a/abp.py +++ b/abp.py @@ -17,10 +17,10 @@ class Stabilizer(object): def __init__(self, graph): n = graph.nqubits self.paulis = [[None for i in range(n)] for j in range(n)] - self.signs = [None for i in range(n)] + self.rowsigns = [None for i in range(n)] for i in range(n): - signs[i] = 0 + self.rowsigns[i] = 0 for j in range(n): if i == j: self.paulis[i][j] = lco_x @@ -29,6 +29,11 @@ class Stabilizer(object): else: self.paulis[i][j] = lco_id + self.conjugate(i, j, graph.vertices[j].vertex_operator) + + def conjugate(self, i, j, vertex_operator): + self.rowsigns[j] = self.rowsigns[j] + self.paulis[i][j].conjugate(vertex_operator) + def __str__(self): return "\n".join(" ".join(stab_rep[x] for x in row) for row in self.paulis)