Logical Circuits#
The class LogicalCircuit, which is found in the circuits namespace, is a logical analog of the class
QuantumCircuit. The LogicalCircuit class has the same methods and attributes as QuantumCircuit; however,
there are a few changes in the behavior of some of the methods. As the two classes are very similar, I will give a few
examples of using the LogicalCircuit class to illustrate their differences.
An instance of a LogicalCircuit can be created using the following lines:
>>> import pecos as pc
>>> logic = pc.circuits.LogicalCircuit()
Instead of gate symbols, the append method of the LogicalCircuit class accepts LogicalGates directly. Also,
if a LogicalCircuit contains a single qecc then a gate location is not needed:
>>> surface = pc.qeccs.Surface4444(distance=3)
>>> logic = pc.circuits.LogicalCircuit()
>>> logic.append(surface.gate("ideal init |0>"))
>>> logic.append(surface.gate("I"))