Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Nome completo: Std.TableLookup.Select
operation Select(data : Bool[][], address : Qubit[], target : Qubit[]) : Unit is Adj + Ctl
Sommario
Esegue la ricerca di tabelle usando una rete SELECT
Descrizione
Supponendo che un registro target inizializzato zero, questa operazione lo inizializzerà con le stringhe bit in data in corrispondenza degli indici in base ai valori di calcolo del registro address.
Inserimento
dati
Dati di ricerca della tabella classica preparati in target rispetto allo stato in address. La lunghezza dei dati deve essere minore di 2ⁿ, dove n è la lunghezza di address. Ogni voce nei dati deve avere la stessa lunghezza che deve essere uguale alla lunghezza di target.
indirizzo
Registro indirizzi
obiettivo
Registro di destinazione inizializzato zero
Osservazioni:
L'implementazione della rete SELECT si basa sulla codifica unaria come illustrato in [1]. L'implementazione ricorsiva di tale algoritmo viene presentata in [3]. La variante adiacente è ottimizzata usando un'operazione di ricerca non ricerca basata su misurazioni [3]. La variante adiacente controllata non è ottimizzata usando questa tecnica.
Riferimenti
- arXiv:1805.03662 "Codifica di spettro elettronici nei circuiti quantistici con complessità T lineare"
- arXiv:1905.07682 "aritmetica finestrata"
- arXiv:2211.01133 "Ricerca tabella ottimizzata per lo spazio"