Skip to content
This repository was archived by the owner on Jan 12, 2024. It is now read-only.

Commit b7668ca

Browse files
authored
Cherry-Picked: Broken up QuantumSimulator into CommonNativeSimulator and QuantumSimulator (#895)
* Broken up QuantumSimulator into CommonNativeSimulator and QuantumSimulator (#853) * Reverting the Allocate() change. (#857)
1 parent 72f7e96 commit b7668ca

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+682
-416
lines changed

src/Simulation/Simulators/QuantumSimulator/ApplyControlledX.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyControlledX.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyControlledX.Body(Qubit control, Qubit target)
1212
{
1313
this.CheckQubits(new QArray<Qubit>(new Qubit[]{ control, target }));
1414

15-
MCX(this.Id, 1, new uint[]{(uint)control.Id}, (uint)target.Id);
15+
MCX(1, new uint[]{(uint)control.Id}, (uint)target.Id);
1616
}
1717
}
1818
}

src/Simulation/Simulators/QuantumSimulator/ApplyControlledZ.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyControlledZ.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyControlledZ.Body(Qubit control, Qubit target)
1212
{
1313
this.CheckQubits(new QArray<Qubit>(new Qubit[]{ control, target }));
1414

15-
MCZ(this.Id, 1, new uint[]{(uint)control.Id}, (uint)target.Id);
15+
MCZ(1, new uint[]{(uint)control.Id}, (uint)target.Id);
1616
}
1717
}
1818
}

src/Simulation/Simulators/QuantumSimulator/ApplyUncontrolledH.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyUncontrolledH.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyUncontrolledH.Body(Qubit target)
1212
{
1313
this.CheckQubit(target);
1414

15-
H(this.Id, (uint)target.Id);
15+
H((uint)target.Id);
1616
}
1717
}
1818
}

src/Simulation/Simulators/QuantumSimulator/ApplyUncontrolledRx.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyUncontrolledRx.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyUncontrolledRx.Body(double angle, Qubit target)
1212
{
1313
this.CheckQubit(target, nameof(target));
1414
CheckAngle(angle);
15-
R(this.Id, Pauli.PauliX, angle, (uint)target.Id);
15+
R(Pauli.PauliX, angle, (uint)target.Id);
1616
}
1717
}
1818
}

src/Simulation/Simulators/QuantumSimulator/ApplyUncontrolledRy.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyUncontrolledRy.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyUncontrolledRy.Body(double angle, Qubit target)
1212
{
1313
this.CheckQubit(target, nameof(target));
1414
CheckAngle(angle);
15-
R(this.Id, Pauli.PauliY, angle, (uint)target.Id);
15+
R(Pauli.PauliY, angle, (uint)target.Id);
1616
}
1717
}
1818
}

src/Simulation/Simulators/QuantumSimulator/ApplyUncontrolledRz.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyUncontrolledRz.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyUncontrolledRz.Body(double angle, Qubit target)
1212
{
1313
this.CheckQubit(target, nameof(target));
1414
CheckAngle(angle);
15-
R(this.Id, Pauli.PauliZ, angle, (uint)target.Id);
15+
R(Pauli.PauliZ, angle, (uint)target.Id);
1616
}
1717
}
1818
}

src/Simulation/Simulators/QuantumSimulator/ApplyUncontrolledS.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyUncontrolledS.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyUncontrolledS.Body(Qubit target)
1212
{
1313
this.CheckQubit(target);
1414

15-
S(this.Id, (uint)target.Id);
15+
S((uint)target.Id);
1616
}
1717
}
1818
}

src/Simulation/Simulators/QuantumSimulator/ApplyUncontrolledSAdj.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyUncontrolledSAdj.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyUncontrolledSAdj.Body(Qubit target)
1212
{
1313
this.CheckQubit(target);
1414

15-
AdjS(this.Id, (uint)target.Id);
15+
AdjS((uint)target.Id);
1616
}
1717
}
1818
}

src/Simulation/Simulators/QuantumSimulator/ApplyUncontrolledSWAP.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyUncontrolledSWAP.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyUncontrolledSWAP.Body(Qubit qubit1, Qubit qubit2)
1212
{
@@ -16,9 +16,9 @@ void IIntrinsicApplyUncontrolledSWAP.Body(Qubit qubit1, Qubit qubit2)
1616

1717
this.CheckQubits(new QArray<Qubit>(new Qubit[]{ qubit1, qubit2 }));
1818

19-
MCX(this.Id, 1, new uint[]{(uint)qubit1.Id}, (uint)qubit2.Id);
20-
MCX(this.Id, 1, new uint[]{(uint)qubit2.Id}, (uint)qubit1.Id);
21-
MCX(this.Id, 1, new uint[]{(uint)qubit1.Id}, (uint)qubit2.Id);
19+
MCX(1, new uint[]{(uint)qubit1.Id}, (uint)qubit2.Id);
20+
MCX(1, new uint[]{(uint)qubit2.Id}, (uint)qubit1.Id);
21+
MCX(1, new uint[]{(uint)qubit1.Id}, (uint)qubit2.Id);
2222
}
2323
}
2424
}

src/Simulation/Simulators/QuantumSimulator/ApplyUncontrolledT.cs renamed to src/Simulation/Simulators/CommonNativeSimulator/ApplyUncontrolledT.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
namespace Microsoft.Quantum.Simulation.Simulators
88
{
9-
public partial class QuantumSimulator
9+
public partial class CommonNativeSimulator
1010
{
1111
void IIntrinsicApplyUncontrolledT.Body(Qubit target)
1212
{
1313
this.CheckQubit(target);
1414

15-
T(this.Id, (uint)target.Id);
15+
T((uint)target.Id);
1616
}
1717
}
1818
}

0 commit comments

Comments
 (0)