Partager via


Sélectionner l’opération

Nom complet : Microsoft.Quantum.Unstable.TableLookup.Select

operation Select(data : Bool[][], address : Qubit[], target : Qubit[]) : Unit is Adj + Ctl

Résumé

Effectue une recherche de table à l’aide d’un réseau SELECT

Description

En supposant qu’un registre target initialisé zéro, cette opération l’initialise avec les chaînes de bits dans data aux index en fonction des valeurs de calcul du registre address.

Entrée

données

Données de recherche de table classiques préparées dans target par rapport à l’état dans address. La longueur des données doit être inférieure à 2ⁿ, où n est la longueur de address. Chaque entrée dans les données doit avoir la même longueur que celle qui doit être égale à la longueur de target.

adresse

Registre d’adresses

cible

Registre cible initialisé zéro

Remarques

L’implémentation du réseau SELECT est basée sur l’encodage unaire tel qu’il est présenté dans [1]. L’implémentation récursive de cet algorithme est présentée dans [3]. La variante adjointe est optimisée à l’aide d’une opération de recherche non basée sur les mesures [3]. La variante d’adjoint contrôlée n’est pas optimisée à l’aide de cette technique.

Références

  1. arXiv :1805.03662 « Encodage du spectre électronique dans les circuits quantiques avec complexité linéaire T »
  2. arXiv :1905.07682 « Arithmétique fenêtré »
  3. arXiv :2211.01133 « Recherche de table optimisée à l’espace-temps »