CollectCliffords
class qiskit_ibm_transpiler.ai.CollectCliffords(do_commutative_analysis: bool = True, min_block_size: int = 2, max_block_size: int = CLIFFORD_MAX_BLOCK_SIZE, collect_from_back: bool = False, num_reps: int = 10)
Bases: RepeatedCollectAndCollapse
Coleta blocos Clifford como objetos de instrução e armazena o subcircuito original para compará-lo após a síntese.
Parâmetros
- do_commutative_analysis (bool) – Ativar ou desativar a análise comutativa; o padrão é True
- min_block_size (int, optional) – Define o tamanho mínimo dos blocos gerados durante a passagem de coleta de Cliffords; o padrão é 2.
- max_block_size (int, optional) – Define o tamanho máximo dos blocos gerados durante a passagem de coleta de Cliffords; o padrão é 9.
- collect_from_back (bool, optional) – Especifica se os blocos devem ser coletados em ordem inversa ou não; o padrão é False.
- num_reps (int, optional) – Especifique quantas vezes repetir o processo de otimização; o padrão é 10.
- collect_function (callable) – uma função que recebe um DAG e retorna uma lista de blocos de nós "coletados"
- collapse_function (callable) – uma função que recebe um DAG e uma lista de blocos "coletados" e consolida cada bloco.
- do_commutative_analysis - se true, explora as relações de comutatividade entre os nós.
Atributos
is_analysis_pass
Verificar se o passe é um passe de análise.
Se a passagem for um AnalysisPass,, isso significa que a passagem pode analisar o DAG e escrever os resultados dessa análise no conjunto de propriedades. As modificações no DAG não são permitidas por esse tipo de passe.
is_transformation_pass
Verificar se o passe é um passe de transformação.
Se a passagem for um TransformationPass,, isso significa que a passagem pode manipular o DAG, mas não pode modificar o conjunto de propriedades (mas pode ser lido).
Métodos
execute
execute(passmanager_ir, state, callback=None)
Executar a tarefa de otimização para a entrada Qiskit IR.
Parâmetros
- passmanager_ir (Any) – Qiskit IR para otimizar.
- state (PassManagerState) – Estado associado à execução do fluxo de trabalho pelo próprio gerenciador de passes.
- callback (Callable) – Uma função de retorno de chamada que é chamada por execução da tarefa de otimização.
Retorna
Qiskit IR otimizado e estado do fluxo de trabalho.
Tipo de retorno
tuple [*Any*, PassManagerState ]
name
run
run(dag)
Execute a passagem CollectLinearFunctions em dag. :param dag: o DAG a ser otimizado. :type dag: DAGCircuit
Retorna
o DAG otimizado.
Tipo de retorno
DAGCircuit
update_status
update_status(state, run_state)
Atualizar o status do fluxo de trabalho.
Parâmetros
- state (PassManagerState) – Passar o estado do gerenciador para atualizar.
- run_state (RunState) – Status de conclusão da tarefa atual.
Retorna
Estado do gerenciador de passes atualizado.
Tipo de retorno