Skip to main content

General Ideas and Feature Requests

General questions and feedback on Microsoft's Quantum Developer Kit

(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  1. Framework for generalized measurements

    It would be great if one could perform measurements other than Pauli bases, like arbitrary projection-valued or positive-operator valued measurements.

    If this is somehow possible with only currently available measurement operations, it would be great if that were explained somewhere.

    1 vote
    Sign in
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →

    General projective measurements can be implemented by transforming the state, performing a Pauli-basis measurement, and undoing the transformation. POVMs can also be implemented, although in general the use of ancilla qubits is required.

    Generally, quantum algorithms are written in terms of measurements in the computational (Pauli Z) basis, since most types of quantum computers only offer this specific measurement. For Q#, we’ve expanded this to all Pauli bases and to arbitrary multi-qubit measurements.

    Extending to general POVMs isn’t something we’ve seen a need for until your request. If there are a large number of upvotes, we’ll consider adding library routines for generalized measurements — or perhaps you or someone else will write these routines and contribute them?

  2. Some Project include "H₂" in *.sln can not be load Correctly

    Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "H₂ Simulation", "H₂ Simulation", "{461F5123-AB62-4FDE-8964-EE4A952BAFC2}"
    EndProject

    1 vote
    Sign in
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. Quantum circuit execution on Azure qubits vs. computer

    Unable to locate operational procedures to let my quantum decision science circuits use qubit in Azure vs. qubits on my surface book pro.
    Please advise.

    1 vote
    Sign in
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  4. Bug in BindAImpl (body part)

    The following code causes a Runtime exception:

    operation ExampleBindAFails() : Bool {
    body {
    mutable result = false;
    using (qubits = Qubit[6]) {
    let Hs = ApplyToEachA(H, _);
    let Zs = ApplyToEachA(Z, _);

    With(BindA([Hs; Zs; Hs]), Hs, qubits);
    }
    return result;
    }
    }

    And driver:

    var r = ExampleBindAFails.Run(sim).Result;

    Runtime exception is:

    System.MissingMethodException: 'Constructor on type 'System.ValueTuple`2[[Microsoft.Quantum.Simulation.Core.QArray`1[[Microsoft.Quantum.Simulation.Core.ICallable, Microsoft.Quantum.Simulation.Core, Version=0.1.1801.1707, Culture=neutral, PublicKeyToken=40866b40fd95c7f5]], Microsoft.Quantum.Simulation.Core, Version=0.1.1801.1707, Culture=neutral, PublicKeyToken=40866b40fd95c7f5],[Microsoft.Quantum.Simulation.Core.QArray`1[[Microsoft.Quantum.Simulation.Core.Qubit, Microsoft.Quantum.Simulation.Core, Version=0.1.1801.1707, Culture=neutral, PublicKeyToken=40866b40fd95c7f5]], Microsoft.Quantum.Simulation.Core, Version=0.1.1801.1707, Culture=neutral, PublicKeyToken=40866b40fd95c7f5]]' not found.'

    If I don't request the result, i.e., the driver code is

    ExampleBindAFails.Run(sim);

    no exception is thrown in

    Bind.qs at line 56. If we past lines…

    1 vote
    Sign in
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  5. .qs files

    So, whoever is making these .qs sample files needs to use regular Intellisense rules for their comments so Intellisense works within the C# control code. Consider your first example, the TeleportationSample. IntelliSense has no idea what the TeleportClassicMessage type is on this line:

    var received = TeleportClassicalMessage.Run(sim, sent).Result;

    because in TeleportationSample.qs, the comments describing this operation do not follow the IntelliSense syntax of

    /// <summary>
    ///
    /// </summary>
    /// <param name="args"></param>

    and also because the .qs file type is unknown by Visual Studio, so your Visual Studio Extensibility solution needs to be modified to make that happen.

    5 votes
    Sign in
    Signed in as (Sign out)

    We’ll send you updates on this idea

    under review  ·  3 comments  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

General Ideas and Feature Requests

Feedback and Knowledge Base