Unroll3qOrMore
class qiskit.transpiler.passes.Unroll3qOrMore(*args, **kwargs)
Bases : TransformationPass
Développe récursivement les portes 3q+ jusqu'à ce que le circuit ne contienne plus que des portes 2q ou 1q.
Initialiser la passe Unroll3qOrMore
Paramètres
- target (Target) – L'objet cible représentant la cible de compilation. Si elle est spécifiée, toute instruction multi-qubit présente dans le circuit au moment de l'exécution de la passe et prise en charge par le dispositif cible sera laissée en place. Si this et
basis_gatessont tous deux spécifiés, seule la cible sera vérifiée. - basis_gates (list) – Une liste de noms de portes de base que le dispositif cible prend en charge. Si elle est spécifiée, tout nom de porte du circuit présent dans cette liste ne sera pas déroulé. Si this et
targetsont tous deux spécifiés, seule la cible sera utilisée pour vérifier quelles portes sont prises en charge.
Attributs
is_analysis_pass
Vérifier si la passe est une passe d'analyse.
Si le passe est un AnalysisPass,, cela signifie qu'il peut analyser le DAG et écrire les résultats de cette analyse dans l'ensemble de propriétés. Les modifications sur le DAG ne sont pas autorisées par ce type de passe.
is_transformation_pass
Vérifier si le laissez-passer est un laissez-passer de transformation.
Si la passe est une TransformationPass,, cela signifie qu'elle peut manipuler le DAG, mais qu'elle ne peut pas modifier l'ensemble des propriétés (mais qu'elle peut les lire).
Méthodes
execute
execute(passmanager_ir, state, callback=None)
Exécuter la tâche d'optimisation pour l'entrée Qiskit IR.
Paramètres
- passmanager_ir (DAGCircuit) – IR Qiskit à optimiser.
- state (DAGCircuit) – État lié à l'exécution du flux de travail par le gestionnaire de passes lui-même.
- callback (Callable[[Task, DAGCircuit, PropertySet, float, int], None] | None) – Une fonction de rappel qui est appelée à chaque exécution d'une tâche d'optimisation.
Retours
Qiskit IR optimisé et état du flux de travail.
Type de retour
name
run
run(dag)
Exécuter la passe Unroll3qOrMore sur dag.
Paramètres
dag (DAGCircuit) – input dag
Retours
sortie dag avec des degrés de nœuds maximums de 2
Type de retour
Augmentations
QiskitError – si une porte « 3q+ » n'est pas décomposable
update_status
update_status(state, run_state)
Mettre à jour le statut du flux de travail.
Paramètres
- state (PassManagerState) – Transmettre l'état du gestionnaire à mettre à jour.
- run_state (RunState) – Statut d'achèvement de la tâche en cours.
Retours
Mise à jour de l'état du gestionnaire de passe.
Type de retour