public void QuantumGate_ControlledGateFromNotGate_IsValid() { Assert.AreEqual(QuantumGate.ControlledGate(QuantumGate.NotGate), new QuantumGate(new Complex[, ] { { 1, 0, 0, 0 }, { 0, 1, 0, 0 }, { 0, 0, 0, 1 }, { 0, 0, 1, 0 }, })); }
public void QuantumGate_ControlledGateFromControlledNotGate_ThrowsArgumentException() { QuantumGate quantumGate = QuantumGate.ControlledGate(QuantumGate.ControlledGate(QuantumGate.NotGate)); }