Q Sharp

Titre correct : « Q# ».

En raison de limitations techniques, la typographie souhaitable du titre n’a pu être restituée correctement.

Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

Cet article ne s'appuie pas, ou pas assez, sur des sources secondaires ou tertiaires ().

Pour améliorer la vérifiabilité de l'article ainsi que son intérêt encyclopédique, il est nécessaire, quand des sources primaires sont citées, de les associer à des analyses faites par des sources secondaires.

Q Sharp
Logo.

Date de première version Voir et modifier les données sur Wikidata
Dernière version 99045 ()[1]Voir et modifier les données sur Wikidata
Influencé par C#
F#Voir et modifier les données sur Wikidata
Licence Licence MIT[2]Voir et modifier les données sur Wikidata
Site web docs.microsoft.com/en-us/quantum/quantum-qr-introVoir et modifier les données sur Wikidata
Extension de fichier qsVoir et modifier les données sur Wikidata
modifier Consultez la documentation du modèle

Le Q# (ou Q Sharp) est un langage de programmation utilisé pour simuler des algorithmes quantiques.

Développé par Microsoft, une bêta est lancée le (the Microsoft Quantum Development Kit Preview)[3].

Ce langage est inclus dans Visual Studio en téléchargeant le kit de développement quantum sur le site de Microsoft.

Traits caractéristiques

Symbolise le langage quantique Q# de Microsoft

La caractéristique principale de Q # est la possibilité de créer et d'utiliser des qubits pour générer des algorithmes. En conséquence, certaines des caractéristiques les plus importantes de Q # sont la capacité à intriquer et introduire une superposition de qubits via des portes de Fonction NON contrôlées et des portes de Hadamard. De même via des portes de Toffoli et des matrices de Pauli et bien d'autres qui sont utilisées pour une grande variété d'opérations.

Exemple

operation BellTest (count : Int, initial: Result) : (Int,Int,Int)
{
    body
    {
        mutable numOnes = 0;
        mutable agree = 0;
        using (qubits = Qubit[2])
        {
            for (test in 1..count)
            {
                Set (initial, qubits[0]);
                Set (Zero, qubits[1]);
                H(qubits[0]);
                CNOT(qubits[0],qubits[1]);
                let res = M (qubits[0]);

                if (M (qubits[1]) == res)
                {
                    set agree = agree + 1;
                }
                // Count the number of ones we saw:
                if (res == One)
                {
                    set numOnes = numOnes + 1;
                }
            }
            Set(Zero, qubits[0]);
            Set(Zero, qubits[1]);
        }

        // Return number of times we saw a |0> and number of times we saw a |1>
        return (count - numOnes, numOnes, agree);
    }
}

Voir aussi

Sources

  • Microsoft : The Q# Programming Language[4]
  • Microsoft : Write a quantum program[5]

Bibliographie

  • Benoît Prieur, Informatique quantique : de la physique quantique à la programmation quantique en Q#, Éditions ENI, , 244 p. (ISBN 978-2-409-01741-4, OCLC 1089012186)Voir et modifier les données sur Wikidata

Notes et références

  1. a et b « Release 99045 », (consulté le )
  2. « https://api.github.com/repos/Microsoft/Quantum » (consulté le )
  3. (en-US) QuantumWriter, « Setting up the Q# development environment », sur docs.microsoft.com (consulté le ).
  4. (en-US) QuantumWriter, « The Q# Programming Language », sur docs.microsoft.com (consulté le )
  5. (en-US) QuantumWriter, « Write a quantum program », sur docs.microsoft.com (consulté le )
  • icône décorative Portail de Microsoft
  • icône décorative Portail de la programmation informatique