From 76a4aafaf0c5e732315fc5616d115f5918691c31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9sar=20Zaragoza=20Cort=C3=A9s?= Date: Wed, 16 Feb 2022 17:43:24 -0800 Subject: [PATCH 1/2] Runtime support for Quantinuum targets. --- .../Machine/QuantumMachineFactory.cs | 2 +- src/Simulation/Core/EntryPointInfo.cs | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/Azure/Azure.Quantum.Client/Machine/QuantumMachineFactory.cs b/src/Azure/Azure.Quantum.Client/Machine/QuantumMachineFactory.cs index be9c1b2b0e2..3ebcbe75206 100644 --- a/src/Azure/Azure.Quantum.Client/Machine/QuantumMachineFactory.cs +++ b/src/Azure/Azure.Quantum.Client/Machine/QuantumMachineFactory.cs @@ -34,7 +34,7 @@ targetNameNormalized is null : targetNameNormalized.StartsWith("ionq.") ? "Microsoft.Quantum.Providers.IonQ.Targets.IonQQuantumMachine, Microsoft.Quantum.Providers.IonQ" : targetNameNormalized.StartsWith("honeywell.") - ? "Microsoft.Quantum.Providers.Honeywell.Targets.HoneywellQuantumMachine, Microsoft.Quantum.Providers.Honeywell" + ? "Microsoft.Quantum.Providers.Honeywell.Targets.QuantinuumQuantumMachine, Microsoft.Quantum.Providers.Honeywell" : null; Type? machineType = null; diff --git a/src/Simulation/Core/EntryPointInfo.cs b/src/Simulation/Core/EntryPointInfo.cs index 7061be98855..3c188fa2efa 100644 --- a/src/Simulation/Core/EntryPointInfo.cs +++ b/src/Simulation/Core/EntryPointInfo.cs @@ -53,4 +53,16 @@ public QCIEntryPointInfo(Type operation) : base(operation) { } } + + /// + /// Base class containing information about an entry point + /// for a Q# executable targeted for a Quantinuum quantum processor. + /// + public class QuantinuumEntryPointInfo + : EntryPointInfo + { + public QuantinuumEntryPointInfo(Type operation) + : base(operation) + { } + } } From 66e76a8f460bb5516ab4ada652d54f372fecf0e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9sar=20Zaragoza=20Cort=C3=A9s?= Date: Fri, 18 Feb 2022 10:57:25 -0800 Subject: [PATCH 2/2] Fix quantum machine factory. --- .../Azure.Quantum.Client/Machine/QuantumMachineFactory.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Azure/Azure.Quantum.Client/Machine/QuantumMachineFactory.cs b/src/Azure/Azure.Quantum.Client/Machine/QuantumMachineFactory.cs index 3ebcbe75206..41b45ed095e 100644 --- a/src/Azure/Azure.Quantum.Client/Machine/QuantumMachineFactory.cs +++ b/src/Azure/Azure.Quantum.Client/Machine/QuantumMachineFactory.cs @@ -29,12 +29,14 @@ public static class QuantumMachineFactory var machineName = targetNameNormalized is null ? null + : targetNameNormalized.StartsWith("quantinuum.") + ? "Microsoft.Quantum.Providers.Quantinuum.Targets.QuantinuumQuantumMachine, Microsoft.Quantum.Providers.Honeywell" : targetNameNormalized.StartsWith("qci.") ? "Microsoft.Quantum.Providers.QCI.Targets.QCIQuantumMachine, Microsoft.Quantum.Providers.QCI" : targetNameNormalized.StartsWith("ionq.") ? "Microsoft.Quantum.Providers.IonQ.Targets.IonQQuantumMachine, Microsoft.Quantum.Providers.IonQ" : targetNameNormalized.StartsWith("honeywell.") - ? "Microsoft.Quantum.Providers.Honeywell.Targets.QuantinuumQuantumMachine, Microsoft.Quantum.Providers.Honeywell" + ? "Microsoft.Quantum.Providers.Honeywell.Targets.HoneywellQuantumMachine, Microsoft.Quantum.Providers.Honeywell" : null; Type? machineType = null;