Quickstart

[1]:
from mqt.bench import CompilerSettings, QiskitSettings, TKETSettings, get_benchmark

Algorithmic Level

[2]:
qc_algorithmic_level = get_benchmark(benchmark_name="dj", level="alg", circuit_size=5)
qc_algorithmic_level.draw(output="mpl")
[2]:
_images/Quickstart_3_0.svg

Target-independent Level

[3]:
qc_target_independent_level = get_benchmark(benchmark_name="dj", level="indep", circuit_size=5, compiler="qiskit")
qc_target_independent_level.draw(output="mpl")
[3]:
_images/Quickstart_5_0.svg

Target-dependent Native Gates Level

[4]:
compiler_settings = CompilerSettings(qiskit=QiskitSettings(optimization_level=2))
qc_native_gates_level = get_benchmark(
    benchmark_name="dj",
    level="nativegates",
    circuit_size=5,
    compiler="qiskit",
    compiler_settings=compiler_settings,
    provider_name="ionq",
)
qc_native_gates_level.draw(output="mpl")
[4]:
_images/Quickstart_7_0.svg

Target-dependent Mapped Level

[5]:
from pytket.extensions.qiskit import tk_to_qiskit

compiler_settings = CompilerSettings(tket=TKETSettings(placement="lineplacement"))
qc_mapped_level = get_benchmark(
    benchmark_name="dj",
    level="mapped",
    circuit_size=5,
    compiler="tket",
    compiler_settings=compiler_settings,
    device_name="ionq_harmony",
)
tk_to_qiskit(qc_mapped_level).draw(output="mpl")
[5]:
_images/Quickstart_9_0.svg