Skip to main content
IBM Quantum Platform

FixedPoint

class qiskit.transpiler.passes.FixedPoint(*args, **kwargs)

GitHub

Bases: AnalysisPass

Verificar se uma propriedade atingiu um ponto fixo.

Uma passagem de análise simulada que verifica se uma propriedade atingiu um ponto fixo. O resultado é salvo em property_set['<property_to_check>_fixed_point'] como um valor booleano.

É possível fornecer um callable opcional getter para derivar um valor do conjunto de propriedades, em vez de ler uma única chave diretamente. Isso é útil quando é necessário verificar a convergência com base em uma combinação de propriedades (por exemplo, uma tupla composta por tamanho e contagem de t):

def get_size_and_t_count(property_set):
    return (
        property_set["size"],
        property_set["count_ops"].get("t", 0) + property_set["count_ops"].get("tdg", 0)
    )

FixedPoint("size_and_t_count", get_size_and_t_count)

Parâmetros

  • property_to_check – O nome usado para identificar o resultado em ponto fixo no conjunto de propriedades definido em property_set['<property_to_check>_fixed_point']. Quando getter é None, esse nome também é usado como chave para ler o valor correspondente do conjunto de propriedades.
  • getter – Função opcional que recebe a propriedade definida como entrada e retorna o valor a ser rastreado. Quando None (padrão), o valor property_set[property_to_check] é utilizado para fins de rastreamento.

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)

GitHub

Executar a tarefa de otimização para a entrada Qiskit IR.

Parâmetros

  • passmanager_ir (IR) – Qiskit IR para otimização.
  • state (PassManagerState) – Estado associado à execução do fluxo de trabalho pelo próprio gerenciador de passes.
  • callback (Callable[[Task, IR_OUT, PropertySet, float, int], None] | None) – Uma função de retorno de chamada que é chamada a cada execução da tarefa de otimização.

Retorna

Qiskit IR otimizado e estado do fluxo de trabalho.

Tipo de retorno

tupla [ IR_OUT, PassManagerState ]

name

name()

GitHub

Nome do passe.

Tipo de retorno

str

run

run(dag)

GitHub

Execute a verificação “ FixedPoint ” no dag.

Parâmetros

dag (DAGCircuit)

Tipo de retorno

Nenhum

update_status

update_status(state, run_state)

GitHub

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

PassManagerState

Esta página foi útil?
Relate um bug, erro de digitação ou solicite conteúdo no GitHub.