Split2QUnitaries
class qiskit.transpiler.passes.Split2QUnitaries(*args, **kwargs)
Bases: TransformationPass
Tentar dividir operadores unitários de dois qubits em DAGCircuit em duas portas de um único qubit.
Essa passagem analisará todas as UnitaryGate instâncias e determinará se a matriz é de fato um produto de 2 portas de qubit único. Nesses casos, a porta 2q pode ser simplificada em duas portas de um único qubit e essa passagem executará essa otimização e substituirá a porta de dois qubits por duas portas de um único qubit UnitaryGate.
Se alguns dos portões puderem ser vistos como uma troca unida pelo produto de 2 portões de qubit único, a passagem recriará o DAG, permutando os qubits trocados de forma semelhante ao que é feito no ElidePermutations.
Parâmetros
- fidelidade - Tolerância permitida para divisão de unitários de dois qubits e decomposições de porta.
- split_swap - Se deve tentar dividir as portas de troca, resultando em uma permutação dos qubits.
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 | 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 [ Any, PassManagerState ]
name
run
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