From a23ce676b3dbb84b6a97e5fe928286307c59d4be Mon Sep 17 00:00:00 2001 From: Eric Arellano <14852634+Eric-Arellano@users.noreply.github.com> Date: Tue, 9 Apr 2024 11:16:33 -0400 Subject: [PATCH] Regenerate Qiskit 1.1 and Runtime 0.23 dev docs (#1144) These haven't been generated in a long time. For Qiskit, this brings in precise GitHub source code links from https://github.com/Qiskit/documentation/issues/517. --- docs/api/qiskit-ibm-runtime/dev/_toc.json | 4 + .../dev/qiskit_ibm_runtime.Batch.mdx | 199 ++++ .../dev/qiskit_ibm_runtime.Estimator.mdx | 2 +- .../dev/qiskit_ibm_runtime.EstimatorV1.mdx | 4 +- .../dev/qiskit_ibm_runtime.EstimatorV2.mdx | 4 +- .../dev/qiskit_ibm_runtime.RuntimeDecoder.mdx | 4 +- .../dev/qiskit_ibm_runtime.RuntimeEncoder.mdx | 4 +- .../dev/qiskit_ibm_runtime.RuntimeJob.mdx | 46 +- .../dev/qiskit_ibm_runtime.RuntimeJobV2.mdx | 46 +- .../dev/qiskit_ibm_runtime.Sampler.mdx | 2 +- .../dev/qiskit_ibm_runtime.SamplerV1.mdx | 4 +- .../dev/qiskit_ibm_runtime.SamplerV2.mdx | 4 +- ..._ibm_runtime.fake_provider.FakeAlgiers.mdx | 14 +- ..._ibm_runtime.fake_provider.FakeAlmaden.mdx | 2 +- ...bm_runtime.fake_provider.FakeAlmadenV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeArmonk.mdx | 2 +- ...ibm_runtime.fake_provider.FakeArmonkV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeAthens.mdx | 2 +- ...ibm_runtime.fake_provider.FakeAthensV2.mdx | 14 +- ...ibm_runtime.fake_provider.FakeAuckland.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeBelem.mdx | 2 +- ..._ibm_runtime.fake_provider.FakeBelemV2.mdx | 14 +- ...m_runtime.fake_provider.FakeBoeblingen.mdx | 2 +- ...runtime.fake_provider.FakeBoeblingenV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeBogota.mdx | 2 +- ...ibm_runtime.fake_provider.FakeBogotaV2.mdx | 14 +- ...ibm_runtime.fake_provider.FakeBrisbane.mdx | 14 +- ...ibm_runtime.fake_provider.FakeBrooklyn.mdx | 2 +- ...m_runtime.fake_provider.FakeBrooklynV2.mdx | 14 +- ...m_runtime.fake_provider.FakeBurlington.mdx | 2 +- ...runtime.fake_provider.FakeBurlingtonV2.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeCairo.mdx | 2 +- ..._ibm_runtime.fake_provider.FakeCairoV2.mdx | 14 +- ...bm_runtime.fake_provider.FakeCambridge.mdx | 2 +- ..._runtime.fake_provider.FakeCambridgeV2.mdx | 14 +- ...m_runtime.fake_provider.FakeCasablanca.mdx | 2 +- ...runtime.fake_provider.FakeCasablancaV2.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeCusco.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeEssex.mdx | 2 +- ..._ibm_runtime.fake_provider.FakeEssexV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeGeneva.mdx | 14 +- ...bm_runtime.fake_provider.FakeGuadalupe.mdx | 2 +- ..._runtime.fake_provider.FakeGuadalupeV2.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeHanoi.mdx | 2 +- ..._ibm_runtime.fake_provider.FakeHanoiV2.mdx | 14 +- ..._ibm_runtime.fake_provider.FakeJakarta.mdx | 2 +- ...bm_runtime.fake_provider.FakeJakartaV2.mdx | 14 +- ...runtime.fake_provider.FakeJohannesburg.mdx | 2 +- ...ntime.fake_provider.FakeJohannesburgV2.mdx | 14 +- ...ibm_runtime.fake_provider.FakeKawasaki.mdx | 14 +- ..._ibm_runtime.fake_provider.FakeKolkata.mdx | 2 +- ...bm_runtime.fake_provider.FakeKolkataV2.mdx | 14 +- ...kit_ibm_runtime.fake_provider.FakeKyiv.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeKyoto.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeLagos.mdx | 2 +- ..._ibm_runtime.fake_provider.FakeLagosV2.mdx | 14 +- ...kit_ibm_runtime.fake_provider.FakeLima.mdx | 2 +- ...t_ibm_runtime.fake_provider.FakeLimaV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeLondon.mdx | 2 +- ...ibm_runtime.fake_provider.FakeLondonV2.mdx | 14 +- ...bm_runtime.fake_provider.FakeManhattan.mdx | 2 +- ..._runtime.fake_provider.FakeManhattanV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeManila.mdx | 2 +- ...ibm_runtime.fake_provider.FakeManilaV2.mdx | 14 +- ..._runtime.fake_provider.FakeMelbourneV2.mdx | 14 +- ...ibm_runtime.fake_provider.FakeMontreal.mdx | 2 +- ...m_runtime.fake_provider.FakeMontrealV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeMumbai.mdx | 2 +- ...ibm_runtime.fake_provider.FakeMumbaiV2.mdx | 14 +- ..._ibm_runtime.fake_provider.FakeNairobi.mdx | 2 +- ...bm_runtime.fake_provider.FakeNairobiV2.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeOsaka.mdx | 14 +- ...kit_ibm_runtime.fake_provider.FakeOslo.mdx | 14 +- ..._ibm_runtime.fake_provider.FakeOurense.mdx | 2 +- ...bm_runtime.fake_provider.FakeOurenseV2.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeParis.mdx | 2 +- ..._ibm_runtime.fake_provider.FakeParisV2.mdx | 14 +- ...bm_runtime.fake_provider.FakePeekskill.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakePerth.mdx | 14 +- ...ntime.fake_provider.FakePoughkeepsieV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakePrague.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeQuebec.mdx | 14 +- ...it_ibm_runtime.fake_provider.FakeQuito.mdx | 2 +- ..._ibm_runtime.fake_provider.FakeQuitoV2.mdx | 14 +- ...bm_runtime.fake_provider.FakeRochester.mdx | 2 +- ..._runtime.fake_provider.FakeRochesterV2.mdx | 14 +- ...kit_ibm_runtime.fake_provider.FakeRome.mdx | 2 +- ...t_ibm_runtime.fake_provider.FakeRomeV2.mdx | 14 +- ...ibm_runtime.fake_provider.FakeSantiago.mdx | 2 +- ...m_runtime.fake_provider.FakeSantiagoV2.mdx | 14 +- ...m_runtime.fake_provider.FakeSherbrooke.mdx | 14 +- ...bm_runtime.fake_provider.FakeSingapore.mdx | 2 +- ..._runtime.fake_provider.FakeSingaporeV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeSydney.mdx | 2 +- ...ibm_runtime.fake_provider.FakeSydneyV2.mdx | 14 +- ...t_ibm_runtime.fake_provider.FakeTorino.mdx | 14 +- ..._ibm_runtime.fake_provider.FakeToronto.mdx | 2 +- ...bm_runtime.fake_provider.FakeTorontoV2.mdx | 14 +- ...ibm_runtime.fake_provider.FakeValencia.mdx | 2 +- ...m_runtime.fake_provider.FakeValenciaV2.mdx | 14 +- ...kit_ibm_runtime.fake_provider.FakeVigo.mdx | 2 +- ...t_ibm_runtime.fake_provider.FakeVigoV2.mdx | 14 +- ...m_runtime.fake_provider.FakeWashington.mdx | 2 +- ...runtime.fake_provider.FakeWashingtonV2.mdx | 14 +- ...ibm_runtime.fake_provider.FakeYorktown.mdx | 2 +- ...m_runtime.fake_provider.FakeYorktownV2.mdx | 14 +- ...t_ibm_runtime.options.EstimatorOptions.mdx | 2 +- .../qiskit_ibm_runtime.options.Options.mdx | 4 +- .../qiskit_ibm_runtime.options.PecOptions.mdx | 11 +- ...kit_ibm_runtime.options.SamplerOptions.mdx | 2 +- ...passes.scheduling.ALAPScheduleAnalysis.mdx | 7 +- ...passes.scheduling.ASAPScheduleAnalysis.mdx | 7 +- ...iler.passes.scheduling.BlockBasePadder.mdx | 4 +- ...ing.DynamicCircuitInstructionDurations.mdx | 8 +- ....transpiler.passes.scheduling.PadDelay.mdx | 5 +- ...sses.scheduling.PadDynamicalDecoupling.mdx | 6 +- ...m_runtime.transpiler.passes.scheduling.mdx | 6 +- .../dev/runtime_service.mdx | 1 + docs/api/qiskit/dev/_toc.json | 64 +- docs/api/qiskit/dev/assembler.mdx | 6 +- docs/api/qiskit/dev/circuit.mdx | 985 +++++++++++++++--- docs/api/qiskit/dev/circuit_classical.mdx | 108 +- docs/api/qiskit/dev/circuit_library.mdx | 212 ++-- docs/api/qiskit/dev/circuit_singleton.mdx | 12 +- docs/api/qiskit/dev/compiler.mdx | 24 +- docs/api/qiskit/dev/converters.mdx | 20 +- docs/api/qiskit/dev/dagcircuit.mdx | 4 +- docs/api/qiskit/dev/exceptions.mdx | 14 +- docs/api/qiskit/dev/index.mdx | 2 +- docs/api/qiskit/dev/passmanager.mdx | 2 +- docs/api/qiskit/dev/primitives.mdx | 8 +- docs/api/qiskit/dev/providers.mdx | 16 +- .../qiskit/dev/providers_fake_provider.mdx | 6 +- docs/api/qiskit/dev/pulse.mdx | 100 +- docs/api/qiskit/dev/qasm2.mdx | 18 +- docs/api/qiskit/dev/qasm3.mdx | 30 +- .../qiskit/dev/qiskit.assembler.RunConfig.mdx | 6 +- .../dev/qiskit.circuit.AncillaQubit.mdx | 27 - .../dev/qiskit.circuit.AncillaRegister.mdx | 64 -- .../dev/qiskit.circuit.AnnotatedOperation.mdx | 129 +++ docs/api/qiskit/dev/qiskit.circuit.Bit.mdx | 22 - .../qiskit/dev/qiskit.circuit.BreakLoopOp.mdx | 71 +- .../dev/qiskit.circuit.ClassicalRegister.mdx | 64 -- docs/api/qiskit/dev/qiskit.circuit.Clbit.mdx | 27 - .../dev/qiskit.circuit.ContinueLoopOp.mdx | 75 +- .../dev/qiskit.circuit.ControlFlowOp.mdx | 69 +- .../dev/qiskit.circuit.ControlledGate.mdx | 42 +- docs/api/qiskit/dev/qiskit.circuit.Delay.mdx | 308 ------ .../dev/qiskit.circuit.EquivalenceLibrary.mdx | 16 +- .../qiskit/dev/qiskit.circuit.ForLoopOp.mdx | 94 +- docs/api/qiskit/dev/qiskit.circuit.Gate.mdx | 46 +- .../qiskit/dev/qiskit.circuit.IfElseOp.mdx | 77 +- .../qiskit/dev/qiskit.circuit.Instruction.mdx | 38 +- .../dev/qiskit.circuit.InstructionSet.mdx | 46 +- .../qiskit/dev/qiskit.circuit.Operation.mdx | 12 +- .../qiskit/dev/qiskit.circuit.Parameter.mdx | 48 +- .../qiskit.circuit.ParameterExpression.mdx | 38 +- .../dev/qiskit.circuit.ParameterVector.mdx | 6 +- .../dev/qiskit.circuit.QuantumCircuit.mdx | 462 ++++---- .../dev/qiskit.circuit.QuantumRegister.mdx | 64 -- docs/api/qiskit/dev/qiskit.circuit.Qubit.mdx | 27 - .../qiskit/dev/qiskit.circuit.Register.mdx | 72 -- docs/api/qiskit/dev/qiskit.circuit.Store.mdx | 307 ------ .../dev/qiskit.circuit.SwitchCaseOp.mdx | 90 +- .../qiskit/dev/qiskit.circuit.WhileLoopOp.mdx | 100 +- ...it.classicalfunction.BooleanExpression.mdx | 52 +- ...it.classicalfunction.ClassicalFunction.mdx | 54 +- ...ion.ClassicalFunctionCompilerTypeError.mdx | 2 +- ...alfunction.ClassicalFunctionParseError.mdx | 2 +- .../qiskit/dev/qiskit.circuit.library.AND.mdx | 12 +- .../dev/qiskit.circuit.library.Barrier.mdx | 271 ----- .../dev/qiskit.circuit.library.C3SXGate.mdx | 4 +- .../dev/qiskit.circuit.library.C3XGate.mdx | 12 +- .../dev/qiskit.circuit.library.C4XGate.mdx | 12 +- .../dev/qiskit.circuit.library.CCXGate.mdx | 12 +- .../dev/qiskit.circuit.library.CCZGate.mdx | 8 +- ...t.circuit.library.CDKMRippleCarryAdder.mdx | 12 +- .../dev/qiskit.circuit.library.CHGate.mdx | 6 +- .../dev/qiskit.circuit.library.CPhaseGate.mdx | 10 +- .../dev/qiskit.circuit.library.CRXGate.mdx | 8 +- .../dev/qiskit.circuit.library.CRYGate.mdx | 8 +- .../dev/qiskit.circuit.library.CRZGate.mdx | 8 +- .../dev/qiskit.circuit.library.CSGate.mdx | 10 +- .../dev/qiskit.circuit.library.CSXGate.mdx | 4 +- .../dev/qiskit.circuit.library.CSdgGate.mdx | 10 +- .../dev/qiskit.circuit.library.CSwapGate.mdx | 8 +- .../dev/qiskit.circuit.library.CU1Gate.mdx | 10 +- .../dev/qiskit.circuit.library.CU3Gate.mdx | 8 +- .../dev/qiskit.circuit.library.CUGate.mdx | 8 +- .../dev/qiskit.circuit.library.CXGate.mdx | 12 +- .../dev/qiskit.circuit.library.CYGate.mdx | 8 +- .../dev/qiskit.circuit.library.CZGate.mdx | 8 +- .../dev/qiskit.circuit.library.DCXGate.mdx | 4 +- .../dev/qiskit.circuit.library.Diagonal.mdx | 10 +- .../qiskit.circuit.library.DiagonalGate.mdx | 8 +- .../qiskit.circuit.library.DraperQFTAdder.mdx | 10 +- .../dev/qiskit.circuit.library.ECRGate.mdx | 8 +- .../qiskit.circuit.library.EfficientSU2.mdx | 10 +- ....circuit.library.EvolvedOperatorAnsatz.mdx | 10 +- ...qiskit.circuit.library.ExactReciprocal.mdx | 10 +- ...t.circuit.library.ExcitationPreserving.mdx | 10 +- ...qiskit.circuit.library.FourierChecking.mdx | 10 +- ...rcuit.library.FunctionalPauliRotations.mdx | 10 +- .../qiskit/dev/qiskit.circuit.library.GMS.mdx | 10 +- .../qiskit/dev/qiskit.circuit.library.GR.mdx | 10 +- .../qiskit/dev/qiskit.circuit.library.GRX.mdx | 10 +- .../qiskit/dev/qiskit.circuit.library.GRY.mdx | 12 +- .../qiskit/dev/qiskit.circuit.library.GRZ.mdx | 12 +- ...qiskit.circuit.library.GlobalPhaseGate.mdx | 8 +- .../dev/qiskit.circuit.library.GraphState.mdx | 12 +- .../qiskit.circuit.library.GroverOperator.mdx | 12 +- .../dev/qiskit.circuit.library.HGate.mdx | 10 +- ...ircuit.library.HRSCumulativeMultiplier.mdx | 12 +- ...qiskit.circuit.library.HamiltonianGate.mdx | 14 +- ...t.circuit.library.HiddenLinearFunction.mdx | 12 +- .../dev/qiskit.circuit.library.IGate.mdx | 10 +- .../qiskit/dev/qiskit.circuit.library.IQP.mdx | 12 +- .../dev/qiskit.circuit.library.Initialize.mdx | 6 +- .../qiskit.circuit.library.InnerProduct.mdx | 12 +- ...skit.circuit.library.IntegerComparator.mdx | 12 +- .../dev/qiskit.circuit.library.Isometry.mdx | 14 +- ...ircuit.library.LinearAmplitudeFunction.mdx | 14 +- .../qiskit.circuit.library.LinearFunction.mdx | 18 +- ...t.circuit.library.LinearPauliRotations.mdx | 12 +- .../dev/qiskit.circuit.library.MCMT.mdx | 18 +- .../dev/qiskit.circuit.library.MCMTVChain.mdx | 16 +- .../qiskit.circuit.library.MCPhaseGate.mdx | 10 +- .../dev/qiskit.circuit.library.MCXGate.mdx | 14 +- .../qiskit.circuit.library.MCXGrayCode.mdx | 8 +- .../qiskit.circuit.library.MCXRecursive.mdx | 10 +- .../dev/qiskit.circuit.library.MCXVChain.mdx | 10 +- .../dev/qiskit.circuit.library.MSGate.mdx | 4 +- .../dev/qiskit.circuit.library.Measure.mdx | 278 ----- .../dev/qiskit.circuit.library.NLocal.mdx | 22 +- .../qiskit/dev/qiskit.circuit.library.OR.mdx | 12 +- ...kit.circuit.library.PauliEvolutionGate.mdx | 6 +- ...qiskit.circuit.library.PauliFeatureMap.mdx | 16 +- .../dev/qiskit.circuit.library.PauliGate.mdx | 8 +- .../qiskit.circuit.library.PauliTwoDesign.mdx | 12 +- .../qiskit.circuit.library.Permutation.mdx | 12 +- ...qiskit.circuit.library.PermutationGate.mdx | 8 +- ...qiskit.circuit.library.PhaseEstimation.mdx | 12 +- .../dev/qiskit.circuit.library.PhaseGate.mdx | 12 +- .../qiskit.circuit.library.PhaseOracle.mdx | 16 +- ...kit.circuit.library.PiecewiseChebyshev.mdx | 12 +- ....library.PiecewiseLinearPauliRotations.mdx | 14 +- ...rary.PiecewisePolynomialPauliRotations.mdx | 14 +- ...rcuit.library.PolynomialPauliRotations.mdx | 12 +- .../dev/qiskit.circuit.library.QAOAAnsatz.mdx | 12 +- .../qiskit/dev/qiskit.circuit.library.QFT.mdx | 16 +- .../qiskit.circuit.library.QuadraticForm.mdx | 14 +- .../qiskit.circuit.library.QuantumVolume.mdx | 12 +- .../dev/qiskit.circuit.library.RC3XGate.mdx | 4 +- .../dev/qiskit.circuit.library.RCCXGate.mdx | 4 +- ...qiskit.circuit.library.RGQFTMultiplier.mdx | 12 +- .../dev/qiskit.circuit.library.RGate.mdx | 10 +- .../dev/qiskit.circuit.library.RVGate.mdx | 27 +- .../dev/qiskit.circuit.library.RXGate.mdx | 12 +- .../dev/qiskit.circuit.library.RXXGate.mdx | 10 +- .../dev/qiskit.circuit.library.RYGate.mdx | 12 +- .../dev/qiskit.circuit.library.RYYGate.mdx | 10 +- .../dev/qiskit.circuit.library.RZGate.mdx | 12 +- .../dev/qiskit.circuit.library.RZXGate.mdx | 10 +- .../dev/qiskit.circuit.library.RZZGate.mdx | 10 +- .../qiskit.circuit.library.RealAmplitudes.mdx | 12 +- .../dev/qiskit.circuit.library.Reset.mdx | 278 ----- .../dev/qiskit.circuit.library.SGate.mdx | 10 +- .../dev/qiskit.circuit.library.SXGate.mdx | 10 +- .../dev/qiskit.circuit.library.SXdgGate.mdx | 8 +- .../dev/qiskit.circuit.library.SdgGate.mdx | 10 +- ...iskit.circuit.library.StatePreparation.mdx | 10 +- .../dev/qiskit.circuit.library.SwapGate.mdx | 10 +- .../dev/qiskit.circuit.library.TGate.mdx | 10 +- .../dev/qiskit.circuit.library.TdgGate.mdx | 10 +- .../dev/qiskit.circuit.library.TwoLocal.mdx | 14 +- .../dev/qiskit.circuit.library.U1Gate.mdx | 10 +- .../dev/qiskit.circuit.library.U2Gate.mdx | 8 +- .../dev/qiskit.circuit.library.U3Gate.mdx | 10 +- .../dev/qiskit.circuit.library.UCGate.mdx | 8 +- .../qiskit.circuit.library.UCPauliRotGate.mdx | 4 +- .../dev/qiskit.circuit.library.UCRXGate.mdx | 4 +- .../dev/qiskit.circuit.library.UCRYGate.mdx | 4 +- .../dev/qiskit.circuit.library.UCRZGate.mdx | 4 +- .../dev/qiskit.circuit.library.UGate.mdx | 10 +- .../qiskit.circuit.library.UnitaryGate.mdx | 18 +- .../qiskit.circuit.library.UnitaryOverlap.mdx | 10 +- ...it.circuit.library.VBERippleCarryAdder.mdx | 10 +- .../qiskit.circuit.library.WeightedAdder.mdx | 10 +- .../dev/qiskit.circuit.library.XGate.mdx | 12 +- .../qiskit/dev/qiskit.circuit.library.XOR.mdx | 10 +- .../qiskit.circuit.library.XXMinusYYGate.mdx | 10 +- .../qiskit.circuit.library.XXPlusYYGate.mdx | 10 +- .../dev/qiskit.circuit.library.YGate.mdx | 12 +- .../qiskit.circuit.library.ZFeatureMap.mdx | 10 +- .../dev/qiskit.circuit.library.ZGate.mdx | 14 +- .../qiskit.circuit.library.ZZFeatureMap.mdx | 10 +- .../dev/qiskit.circuit.library.iSwapGate.mdx | 6 +- .../dev/qiskit.dagcircuit.DAGCircuit.mdx | 180 ++-- .../dev/qiskit.dagcircuit.DAGDepNode.mdx | 22 +- .../dev/qiskit.dagcircuit.DAGDependency.mdx | 52 +- .../dev/qiskit.dagcircuit.DAGInNode.mdx | 4 +- .../qiskit/dev/qiskit.dagcircuit.DAGNode.mdx | 4 +- .../dev/qiskit.dagcircuit.DAGOpNode.mdx | 4 +- .../dev/qiskit.dagcircuit.DAGOutNode.mdx | 4 +- .../dev/qiskit.passmanager.BaseController.mdx | 6 +- .../qiskit.passmanager.BasePassManager.mdx | 12 +- ...skit.passmanager.ConditionalController.mdx | 6 +- .../qiskit.passmanager.DoWhileController.mdx | 6 +- ...iskit.passmanager.FlowControllerLinear.mdx | 6 +- .../dev/qiskit.passmanager.GenericPass.mdx | 10 +- .../qiskit.passmanager.PassManagerState.mdx | 2 +- .../dev/qiskit.passmanager.PropertySet.mdx | 2 +- .../dev/qiskit.passmanager.WorkflowStatus.mdx | 2 +- .../qiskit.primitives.BackendEstimator.mdx | 8 +- .../qiskit.primitives.BackendEstimatorV2.mdx | 68 ++ .../dev/qiskit.primitives.BackendSampler.mdx | 8 +- .../qiskit.primitives.BackendSamplerV2.mdx | 71 ++ .../dev/qiskit.primitives.BaseEstimator.mdx | 2 +- .../dev/qiskit.primitives.BaseEstimatorV1.mdx | 6 +- .../dev/qiskit.primitives.BaseEstimatorV2.mdx | 4 +- .../qiskit.primitives.BasePrimitiveJob.mdx | 18 +- .../dev/qiskit.primitives.BaseSampler.mdx | 2 +- .../dev/qiskit.primitives.BaseSamplerV1.mdx | 6 +- .../dev/qiskit.primitives.BaseSamplerV2.mdx | 4 +- .../qiskit/dev/qiskit.primitives.BitArray.mdx | 18 +- .../qiskit/dev/qiskit.primitives.DataBin.mdx | 2 +- .../dev/qiskit.primitives.Estimator.mdx | 6 +- .../dev/qiskit.primitives.EstimatorResult.mdx | 2 +- .../dev/qiskit.primitives.PrimitiveJob.mdx | 18 +- .../dev/qiskit.primitives.PrimitiveResult.mdx | 2 +- .../dev/qiskit.primitives.PubResult.mdx | 2 +- .../qiskit/dev/qiskit.primitives.Sampler.mdx | 6 +- .../dev/qiskit.primitives.SamplerResult.mdx | 2 +- ...qiskit.primitives.StatevectorEstimator.mdx | 4 +- .../qiskit.primitives.StatevectorSampler.mdx | 4 +- .../qiskit/dev/qiskit.providers.Backend.mdx | 2 +- .../qiskit/dev/qiskit.providers.BackendV1.mdx | 20 +- .../qiskit/dev/qiskit.providers.BackendV2.mdx | 18 +- .../qiskit.providers.BackendV2Converter.mdx | 18 +- docs/api/qiskit/dev/qiskit.providers.Job.mdx | 2 +- .../qiskit/dev/qiskit.providers.JobStatus.mdx | 2 +- .../api/qiskit/dev/qiskit.providers.JobV1.mdx | 24 +- .../qiskit/dev/qiskit.providers.Options.mdx | 6 +- .../qiskit/dev/qiskit.providers.Provider.mdx | 2 +- .../dev/qiskit.providers.ProviderV1.mdx | 6 +- .../dev/qiskit.providers.QubitProperties.mdx | 2 +- ...providers.basic_provider.BasicProvider.mdx | 6 +- ...ders.basic_provider.BasicProviderError.mdx | 2 +- ...viders.basic_provider.BasicProviderJob.mdx | 24 +- ...roviders.basic_provider.BasicSimulator.mdx | 22 +- .../qiskit.providers.convert_to_target.mdx | 2 +- ...roviders.fake_provider.Fake127QPulseV1.mdx | 18 +- .../qiskit.providers.fake_provider.Fake1Q.mdx | 16 +- ...skit.providers.fake_provider.Fake20QV1.mdx | 16 +- ...providers.fake_provider.Fake27QPulseV1.mdx | 18 +- ...iskit.providers.fake_provider.Fake5QV1.mdx | 16 +- ....providers.fake_provider.Fake7QPulseV1.mdx | 18 +- ...roviders.fake_provider.FakeOpenPulse2Q.mdx | 18 +- ...roviders.fake_provider.FakeOpenPulse3Q.mdx | 18 +- ...oviders.fake_provider.GenericBackendV2.mdx | 16 +- ....providers.models.BackendConfiguration.mdx | 6 +- ...kit.providers.models.BackendProperties.mdx | 32 +- .../qiskit.providers.models.BackendStatus.mdx | 6 +- .../dev/qiskit.providers.models.Command.mdx | 6 +- .../qiskit.providers.models.GateConfig.mdx | 6 +- ...qiskit.providers.models.GateProperties.mdx | 6 +- .../dev/qiskit.providers.models.JobStatus.mdx | 6 +- .../dev/qiskit.providers.models.Nduv.mdx | 6 +- ...iders.models.PulseBackendConfiguration.mdx | 20 +- .../qiskit.providers.models.PulseDefaults.mdx | 6 +- ...viders.models.QasmBackendConfiguration.mdx | 6 +- .../qiskit.providers.models.UchannelLO.mdx | 6 +- .../qiskit.pulse.InstructionScheduleMap.mdx | 22 +- docs/api/qiskit/dev/qiskit.pulse.Schedule.mdx | 36 +- .../qiskit/dev/qiskit.pulse.ScheduleBlock.mdx | 34 +- .../qiskit.pulse.channels.AcquireChannel.mdx | 4 +- .../qiskit.pulse.channels.ControlChannel.mdx | 4 +- .../qiskit.pulse.channels.DriveChannel.mdx | 4 +- .../qiskit.pulse.channels.MeasureChannel.mdx | 4 +- .../dev/qiskit.pulse.channels.MemorySlot.mdx | 4 +- .../qiskit.pulse.channels.RegisterSlot.mdx | 4 +- .../qiskit.pulse.channels.SnapshotChannel.mdx | 4 +- .../dev/qiskit.pulse.instructions.Acquire.mdx | 16 +- .../dev/qiskit.pulse.instructions.Delay.mdx | 16 +- .../dev/qiskit.pulse.instructions.Play.mdx | 16 +- .../qiskit.pulse.instructions.Reference.mdx | 16 +- ...kit.pulse.instructions.RelativeBarrier.mdx | 16 +- ...qiskit.pulse.instructions.SetFrequency.mdx | 16 +- .../qiskit.pulse.instructions.SetPhase.mdx | 16 +- ...skit.pulse.instructions.ShiftFrequency.mdx | 16 +- .../qiskit.pulse.instructions.ShiftPhase.mdx | 16 +- .../qiskit.pulse.instructions.Snapshot.mdx | 16 +- ...qiskit.pulse.instructions.TimeBlockade.mdx | 16 +- ...iskit.pulse.library.Constant_class.rst.mdx | 2 +- .../qiskit.pulse.library.Cos_class.rst.mdx | 2 +- .../qiskit.pulse.library.Drag_class.rst.mdx | 2 +- .../qiskit.pulse.library.GaussianDeriv.mdx | 2 +- .../qiskit.pulse.library.GaussianSquare.mdx | 2 +- ...iskit.pulse.library.GaussianSquareDrag.mdx | 2 +- ...iskit.pulse.library.Gaussian_class.rst.mdx | 2 +- ...iskit.pulse.library.Sawtooth_class.rst.mdx | 2 +- .../dev/qiskit.pulse.library.SechDeriv.mdx | 2 +- .../dev/qiskit.pulse.library.Sech_fun.rst.mdx | 2 +- .../qiskit.pulse.library.Sin_class.rst.mdx | 2 +- .../qiskit.pulse.library.Square_fun.rst.mdx | 2 +- .../qiskit.pulse.library.SymbolicPulse.mdx | 10 +- ...iskit.pulse.library.Triangle_class.rst.mdx | 2 +- .../dev/qiskit.pulse.library.Waveform.mdx | 6 +- ...kit.pulse.library.gaussian_square_echo.mdx | 2 +- ...iskit.pulse.transforms.AlignEquispaced.mdx | 4 +- .../dev/qiskit.pulse.transforms.AlignFunc.mdx | 4 +- .../dev/qiskit.pulse.transforms.AlignLeft.mdx | 4 +- .../qiskit.pulse.transforms.AlignRight.mdx | 4 +- ...iskit.pulse.transforms.AlignSequential.mdx | 4 +- .../dev/qiskit.qobj.GateCalibration.mdx | 6 +- .../dev/qiskit.qobj.PulseLibraryItem.mdx | 6 +- docs/api/qiskit/dev/qiskit.qobj.PulseQobj.mdx | 6 +- .../dev/qiskit.qobj.PulseQobjConfig.mdx | 6 +- .../dev/qiskit.qobj.PulseQobjExperiment.mdx | 6 +- .../qiskit.qobj.PulseQobjExperimentConfig.mdx | 6 +- .../dev/qiskit.qobj.PulseQobjInstruction.mdx | 6 +- ...qiskit.qobj.QasmExperimentCalibrations.mdx | 6 +- docs/api/qiskit/dev/qiskit.qobj.QasmQobj.mdx | 6 +- .../qiskit/dev/qiskit.qobj.QasmQobjConfig.mdx | 6 +- .../dev/qiskit.qobj.QasmQobjExperiment.mdx | 6 +- .../qiskit.qobj.QasmQobjExperimentConfig.mdx | 6 +- .../dev/qiskit.qobj.QasmQobjInstruction.mdx | 6 +- .../dev/qiskit.qobj.QobjExperimentHeader.mdx | 6 +- .../api/qiskit/dev/qiskit.qobj.QobjHeader.mdx | 6 +- .../dev/qiskit.qobj.QobjMeasurementOption.mdx | 6 +- .../dev/qiskit.quantum_info.CNOTDihedral.mdx | 34 +- .../qiskit/dev/qiskit.quantum_info.Chi.mdx | 38 +- .../qiskit/dev/qiskit.quantum_info.Choi.mdx | 38 +- .../dev/qiskit.quantum_info.Clifford.mdx | 54 +- .../dev/qiskit.quantum_info.DensityMatrix.mdx | 54 +- .../qiskit/dev/qiskit.quantum_info.Kraus.mdx | 38 +- .../dev/qiskit.quantum_info.Operator.mdx | 46 +- .../qiskit/dev/qiskit.quantum_info.PTM.mdx | 38 +- .../qiskit/dev/qiskit.quantum_info.Pauli.mdx | 48 +- .../dev/qiskit.quantum_info.PauliList.mdx | 66 +- .../dev/qiskit.quantum_info.Quaternion.mdx | 14 +- .../dev/qiskit.quantum_info.ScalarOp.mdx | 32 +- .../dev/qiskit.quantum_info.SparsePauliOp.mdx | 64 +- .../qiskit.quantum_info.StabilizerState.mdx | 42 +- .../dev/qiskit.quantum_info.Statevector.mdx | 54 +- .../dev/qiskit.quantum_info.Stinespring.mdx | 38 +- .../dev/qiskit.quantum_info.SuperOp.mdx | 38 +- .../dev/qiskit.quantum_info.Z2Symmetries.mdx | 12 +- .../dev/qiskit.quantum_info.pauli_basis.mdx | 2 +- .../qiskit.result.BaseReadoutMitigator.mdx | 6 +- ...skit.result.CorrelatedReadoutMitigator.mdx | 12 +- docs/api/qiskit/dev/qiskit.result.Counts.mdx | 10 +- .../qiskit.result.LocalReadoutMitigator.mdx | 12 +- .../dev/qiskit.result.ProbDistribution.mdx | 6 +- .../dev/qiskit.result.QuasiDistribution.mdx | 8 +- docs/api/qiskit/dev/qiskit.result.Result.mdx | 16 +- .../qiskit/dev/qiskit.result.ResultError.mdx | 2 +- .../qiskit.synthesis.EvolutionSynthesis.mdx | 4 +- .../dev/qiskit.synthesis.LieTrotter.mdx | 4 +- .../qiskit.synthesis.MatrixExponential.mdx | 4 +- ...skit.synthesis.OneQubitEulerDecomposer.mdx | 10 +- .../dev/qiskit.synthesis.ProductFormula.mdx | 4 +- .../qiskit/dev/qiskit.synthesis.QDrift.mdx | 4 +- ...t.synthesis.SolovayKitaevDecomposition.mdx | 8 +- .../dev/qiskit.synthesis.SuzukiTrotter.mdx | 4 +- ...skit.synthesis.TwoQubitBasisDecomposer.mdx | 16 +- ...it.synthesis.TwoQubitWeylDecomposition.mdx | 29 +- .../dev/qiskit.synthesis.XXDecomposer.mdx | 6 +- .../dev/qiskit.synthesis.unitary.aqc.AQC.mdx | 4 +- ...nthesis.unitary.aqc.ApproximateCircuit.mdx | 12 +- ...sis.unitary.aqc.ApproximatingObjective.mdx | 6 +- ....synthesis.unitary.aqc.CNOTUnitCircuit.mdx | 12 +- ...ynthesis.unitary.aqc.CNOTUnitObjective.mdx | 2 +- ...s.unitary.aqc.DefaultCNOTUnitObjective.mdx | 6 +- ...esis.unitary.aqc.FastCNOTUnitObjective.mdx | 6 +- .../dev/qiskit.synthesis.unitary.aqc.mdx | 4 +- .../dev/qiskit.transpiler.AnalysisPass.mdx | 10 +- .../dev/qiskit.transpiler.CouplingMap.mdx | 44 +- ...qiskit.transpiler.InstructionDurations.mdx | 10 +- ...iskit.transpiler.InstructionProperties.mdx | 2 +- .../qiskit/dev/qiskit.transpiler.Layout.mdx | 82 +- .../dev/qiskit.transpiler.PassManager.mdx | 14 +- .../qiskit.transpiler.PassManagerConfig.mdx | 4 +- .../qiskit.transpiler.StagedPassManager.mdx | 14 +- .../qiskit/dev/qiskit.transpiler.Target.mdx | 42 +- .../qiskit.transpiler.TransformationPass.mdx | 10 +- .../dev/qiskit.transpiler.TranspileLayout.mdx | 82 +- .../qiskit.transpiler.passes.ALAPSchedule.mdx | 14 +- ...transpiler.passes.ALAPScheduleAnalysis.mdx | 10 +- .../qiskit.transpiler.passes.ASAPSchedule.mdx | 14 +- ...transpiler.passes.ASAPScheduleAnalysis.mdx | 10 +- ...qiskit.transpiler.passes.AlignMeasures.mdx | 14 +- .../qiskit.transpiler.passes.ApplyLayout.mdx | 10 +- ....passes.BarrierBeforeFinalMeasurements.mdx | 10 +- .../qiskit.transpiler.passes.BasicSwap.mdx | 10 +- ...skit.transpiler.passes.BasisTranslator.mdx | 10 +- .../qiskit.transpiler.passes.CSPLayout.mdx | 10 +- ...iskit.transpiler.passes.CXCancellation.mdx | 10 +- ...t.transpiler.passes.CheckGateDirection.mdx | 10 +- .../dev/qiskit.transpiler.passes.CheckMap.mdx | 10 +- ...qiskit.transpiler.passes.Collect1qRuns.mdx | 10 +- ...skit.transpiler.passes.Collect2qBlocks.mdx | 10 +- ...kit.transpiler.passes.CollectCliffords.mdx | 10 +- ...anspiler.passes.CollectLinearFunctions.mdx | 10 +- ....transpiler.passes.CollectMultiQBlocks.mdx | 14 +- ....transpiler.passes.CommutationAnalysis.mdx | 10 +- ...nspiler.passes.CommutativeCancellation.mdx | 10 +- ....passes.CommutativeInverseCancellation.mdx | 10 +- ...ranspiler.passes.Commuting2qGateRouter.mdx | 12 +- ...it.transpiler.passes.ConsolidateBlocks.mdx | 10 +- ...ranspiler.passes.ConstrainedReschedule.mdx | 11 +- ....transpiler.passes.ContainsInstruction.mdx | 10 +- ...spiler.passes.ConvertConditionsToIfOps.mdx | 10 +- .../dev/qiskit.transpiler.passes.CountOps.mdx | 10 +- ....transpiler.passes.CountOpsLongestPath.mdx | 10 +- ...qiskit.transpiler.passes.DAGFixedPoint.mdx | 10 +- ...iskit.transpiler.passes.DAGLongestPath.mdx | 10 +- .../qiskit.transpiler.passes.Decompose.mdx | 10 +- .../qiskit.transpiler.passes.DenseLayout.mdx | 10 +- .../dev/qiskit.transpiler.passes.Depth.mdx | 10 +- ....transpiler.passes.DynamicalDecoupling.mdx | 14 +- ...spiler.passes.EchoRZXWeylDecomposition.mdx | 10 +- ...t.transpiler.passes.EnlargeWithAncilla.mdx | 10 +- ...qiskit.transpiler.passes.FilterOpNodes.mdx | 10 +- .../qiskit.transpiler.passes.FixedPoint.mdx | 10 +- ...ranspiler.passes.FullAncillaAllocation.mdx | 12 +- ...qiskit.transpiler.passes.GateDirection.mdx | 10 +- .../qiskit.transpiler.passes.GatesInBasis.mdx | 10 +- .../qiskit.transpiler.passes.HLSConfig.mdx | 4 +- ...t.transpiler.passes.HighLevelSynthesis.mdx | 12 +- ...iskit.transpiler.passes.HoareOptimizer.mdx | 10 +- ...spiler.passes.InstructionDurationCheck.mdx | 11 +- ....transpiler.passes.InverseCancellation.mdx | 10 +- ...kit.transpiler.passes.Layout2qDistance.mdx | 10 +- ...r.passes.LinearFunctionsToPermutations.mdx | 10 +- ...qiskit.transpiler.passes.LookaheadSwap.mdx | 10 +- ...ranspiler.passes.MergeAdjacentBarriers.mdx | 10 +- .../qiskit.transpiler.passes.MinimumPoint.mdx | 10 +- ...kit.transpiler.passes.NormalizeRXAngle.mdx | 14 +- ...kit.transpiler.passes.NumTensorFactors.mdx | 10 +- ...skit.transpiler.passes.Optimize1qGates.mdx | 14 +- ...er.passes.Optimize1qGatesDecomposition.mdx | 10 +- ...asses.Optimize1qGatesSimpleCommutation.mdx | 10 +- ...it.transpiler.passes.OptimizeAnnotated.mdx | 10 +- ...it.transpiler.passes.OptimizeCliffords.mdx | 10 +- .../dev/qiskit.transpiler.passes.PadDelay.mdx | 10 +- ...anspiler.passes.PadDynamicalDecoupling.mdx | 10 +- .../qiskit.transpiler.passes.PulseGates.mdx | 14 +- ...transpiler.passes.RXCalibrationBuilder.mdx | 14 +- ...ranspiler.passes.RZXCalibrationBuilder.mdx | 16 +- ...ler.passes.RZXCalibrationBuilderNoEcho.mdx | 16 +- ...iskit.transpiler.passes.RemoveBarriers.mdx | 10 +- ...asses.RemoveDiagonalGatesBeforeMeasure.mdx | 10 +- ...nspiler.passes.RemoveFinalMeasurements.mdx | 10 +- ...kit.transpiler.passes.RemoveFinalReset.mdx | 103 ++ ...anspiler.passes.RemoveResetInZeroState.mdx | 10 +- ...passes.ResetAfterMeasureSimplification.mdx | 10 +- .../qiskit.transpiler.passes.SabreLayout.mdx | 10 +- ...iskit.transpiler.passes.SabrePreLayout.mdx | 10 +- .../qiskit.transpiler.passes.SabreSwap.mdx | 10 +- .../qiskit.transpiler.passes.SetIOLatency.mdx | 10 +- .../qiskit.transpiler.passes.SetLayout.mdx | 10 +- .../dev/qiskit.transpiler.passes.Size.mdx | 10 +- ...qiskit.transpiler.passes.SolovayKitaev.mdx | 10 +- ...iskit.transpiler.passes.StochasticSwap.mdx | 10 +- ...transpiler.passes.TemplateOptimization.mdx | 10 +- ...t.transpiler.passes.TimeUnitConversion.mdx | 10 +- ...ler.passes.TranslateParameterizedGates.mdx | 10 +- ...qiskit.transpiler.passes.TrivialLayout.mdx | 10 +- ...kit.transpiler.passes.UnitarySynthesis.mdx | 10 +- ...iskit.transpiler.passes.Unroll3qOrMore.mdx | 10 +- ...nspiler.passes.UnrollCustomDefinitions.mdx | 10 +- ...iskit.transpiler.passes.UnrollForLoops.mdx | 10 +- .../qiskit.transpiler.passes.VF2Layout.mdx | 10 +- ...qiskit.transpiler.passes.VF2PostLayout.mdx | 10 +- ...t.transpiler.passes.ValidatePulseGates.mdx | 11 +- .../dev/qiskit.transpiler.passes.Width.mdx | 10 +- ...ynthesis.aqc_plugin.AQCSynthesisPlugin.mdx | 4 +- ...evel_synthesis.ACGSynthesisPermutation.mdx | 4 +- ...gh_level_synthesis.AGSynthesisClifford.mdx | 4 +- ...gh_level_synthesis.BMSynthesisClifford.mdx | 4 +- ...el_synthesis.BasicSynthesisPermutation.mdx | 4 +- ...vel_synthesis.DefaultSynthesisClifford.mdx | 4 +- ...nthesis.DefaultSynthesisLinearFunction.mdx | 4 +- ...evel_synthesis.GreedySynthesisClifford.mdx | 4 +- ...l_synthesis.KMSSynthesisLinearFunction.mdx | 4 +- ...evel_synthesis.KMSSynthesisPermutation.mdx | 4 +- ...el_synthesis.LayerLnnSynthesisClifford.mdx | 4 +- ...level_synthesis.LayerSynthesisClifford.mdx | 4 +- ...l_synthesis.PMHSynthesisLinearFunction.mdx | 4 +- ...hesis.TokenSwapperSynthesisPermutation.mdx | 4 +- ...thesis.plugin.HighLevelSynthesisPlugin.mdx | 4 +- ...plugin.HighLevelSynthesisPluginManager.mdx | 6 +- ...ynthesis.plugin.UnitarySynthesisPlugin.mdx | 4 +- ...s.plugin.UnitarySynthesisPluginManager.mdx | 2 +- ...ugin.high_level_synthesis_plugin_names.mdx | 2 +- ....plugin.unitary_synthesis_plugin_names.mdx | 2 +- ...itaev_synthesis.SolovayKitaevSynthesis.mdx | 4 +- ...tary_synthesis.DefaultUnitarySynthesis.mdx | 4 +- ...managers.plugin.PassManagerStagePlugin.mdx | 4 +- ...s.plugin.PassManagerStagePluginManager.mdx | 4 +- .../qiskit.visualization.array_to_latex.mdx | 2 +- .../qiskit.visualization.circuit_drawer.mdx | 2 +- .../dev/qiskit.visualization.dag_drawer.mdx | 2 +- ...skit.visualization.pass_manager_drawer.mdx | 2 +- ...t.visualization.plot_bloch_multivector.mdx | 4 +- ...qiskit.visualization.plot_bloch_vector.mdx | 6 +- ...skit.visualization.plot_circuit_layout.mdx | 2 +- ...qiskit.visualization.plot_coupling_map.mdx | 2 +- ...qiskit.visualization.plot_distribution.mdx | 4 +- .../qiskit.visualization.plot_error_map.mdx | 2 +- .../qiskit.visualization.plot_gate_map.mdx | 2 +- .../qiskit.visualization.plot_histogram.mdx | 4 +- .../qiskit.visualization.plot_state_city.mdx | 8 +- ...qiskit.visualization.plot_state_hinton.mdx | 8 +- ...skit.visualization.plot_state_paulivec.mdx | 6 +- ...iskit.visualization.plot_state_qsphere.mdx | 6 +- .../qiskit.visualization.timeline_drawer.mdx | 2 +- ...kit.visualization.visualize_transition.mdx | 2 +- docs/api/qiskit/dev/qpy.mdx | 24 +- docs/api/qiskit/dev/quantum_info.mdx | 54 +- docs/api/qiskit/dev/result.mdx | 8 +- docs/api/qiskit/dev/scheduler.mdx | 8 +- docs/api/qiskit/dev/synthesis.mdx | 56 +- docs/api/qiskit/dev/transpiler.mdx | 40 +- docs/api/qiskit/dev/transpiler_passes.mdx | 3 +- docs/api/qiskit/dev/transpiler_plugins.mdx | 20 +- docs/api/qiskit/dev/transpiler_preset.mdx | 30 +- docs/api/qiskit/dev/utils.mdx | 36 +- docs/api/qiskit/dev/visualization.mdx | 2 +- public/api/qiskit-ibm-runtime/dev/objects.inv | Bin 62890 -> 63315 bytes public/api/qiskit/dev/objects.inv | Bin 70104 -> 69331 bytes .../dev/fake_provider-1_00.png | Bin 13102 -> 13102 bytes .../dev/fake_provider-1_01.png | Bin 22140 -> 22140 bytes .../dev/fake_provider-1_02.png | Bin 14150 -> 14559 bytes ...ntime.transpiler.passes.scheduling_0_0.png | Bin 57845 -> 57845 bytes ...time.transpiler.passes.scheduling_10_0.png | Bin 9687 -> 9687 bytes ...time.transpiler.passes.scheduling_11_0.png | Bin 7004 -> 7004 bytes ...time.transpiler.passes.scheduling_12_0.png | Bin 6991 -> 6991 bytes ...time.transpiler.passes.scheduling_13_0.png | Bin 7246 -> 7246 bytes ...time.transpiler.passes.scheduling_14_0.png | Bin 18297 -> 18297 bytes ...time.transpiler.passes.scheduling_15_0.png | Bin 11921 -> 11921 bytes ...ntime.transpiler.passes.scheduling_1_0.png | Bin 63023 -> 63023 bytes ...ntime.transpiler.passes.scheduling_2_0.png | Bin 3565 -> 3565 bytes ...ntime.transpiler.passes.scheduling_3_0.png | Bin 21200 -> 21200 bytes ...ntime.transpiler.passes.scheduling_4_0.png | Bin 21200 -> 21200 bytes ...ntime.transpiler.passes.scheduling_5_0.png | Bin 11208 -> 11208 bytes ...ntime.transpiler.passes.scheduling_6_0.png | Bin 7598 -> 7598 bytes ...ntime.transpiler.passes.scheduling_7_0.png | Bin 8263 -> 8263 bytes ...ntime.transpiler.passes.scheduling_8_0.png | Bin 12759 -> 12759 bytes ...ntime.transpiler.passes.scheduling_9_0.png | Bin 9282 -> 9282 bytes public/images/api/qiskit/dev/circuit-1.png | Bin 5373 -> 5373 bytes public/images/api/qiskit/dev/circuit-2.png | Bin 3876 -> 29666 bytes public/images/api/qiskit/dev/circuit-3.png | Bin 5607 -> 9304 bytes public/images/api/qiskit/dev/circuit-4.png | Bin 29666 -> 0 bytes public/images/api/qiskit/dev/circuit-5.png | Bin 6734 -> 13896 bytes .../api/qiskit/dev/circuit_library-1.png | Bin 6289 -> 6289 bytes public/images/api/qiskit/dev/converters-1.png | Bin 8320 -> 8320 bytes .../dev/providers_fake_provider-1_00.png | Bin 13102 -> 13102 bytes .../dev/providers_fake_provider-1_01.png | Bin 22602 -> 22602 bytes .../dev/providers_fake_provider-1_02.png | Bin 13444 -> 10941 bytes public/images/api/qiskit/dev/pulse-1.png | Bin 31312 -> 31312 bytes public/images/api/qiskit/dev/pulse-2.png | Bin 10974 -> 10716 bytes public/images/api/qiskit/dev/pulse-3.png | Bin 59558 -> 59407 bytes public/images/api/qiskit/dev/pulse-4.png | Bin 19108 -> 18989 bytes public/images/api/qiskit/dev/pulse-5.png | Bin 16415 -> 16294 bytes public/images/api/qiskit/dev/pulse-6.png | Bin 11509 -> 11372 bytes public/images/api/qiskit/dev/pulse-7.png | Bin 14140 -> 13921 bytes public/images/api/qiskit/dev/qasm3-1.png | Bin 25489 -> 25489 bytes .../dev/qiskit-circuit-ControlledGate-1.png | Bin 4578 -> 4578 bytes .../dev/qiskit-circuit-ControlledGate-2.png | Bin 7344 -> 7178 bytes .../dev/qiskit-circuit-InstructionSet-1.png | Bin 8936 -> 0 bytes .../qiskit/dev/qiskit-circuit-Operation-1.png | Bin 5879 -> 5879 bytes .../dev/qiskit-circuit-Parameter-1_00.png | Bin 1689 -> 1689 bytes .../dev/qiskit-circuit-Parameter-1_01.png | Bin 5370 -> 5370 bytes .../dev/qiskit-circuit-QuantumCircuit-1.png | Bin 6885 -> 6885 bytes .../dev/qiskit-circuit-QuantumCircuit-2.png | Bin 16553 -> 16553 bytes .../qiskit-circuit-QuantumCircuit-3_00.png | Bin 3661 -> 3661 bytes .../qiskit-circuit-QuantumCircuit-3_01.png | Bin 3635 -> 3635 bytes .../qiskit-circuit-QuantumCircuit-4_00.png | Bin 3585 -> 3585 bytes .../qiskit-circuit-QuantumCircuit-4_01.png | Bin 3913 -> 3913 bytes .../dev/qiskit-circuit-QuantumCircuit-5.png | Bin 3214 -> 3214 bytes .../dev/qiskit-circuit-QuantumCircuit-6.png | Bin 4256 -> 4256 bytes .../dev/qiskit-circuit-library-AND-1.png | Bin 16860 -> 16860 bytes .../dev/qiskit-circuit-library-AND-2.png | Bin 17615 -> 17615 bytes ...skit-circuit-library-FourierChecking-1.png | Bin 11434 -> 11434 bytes .../dev/qiskit-circuit-library-GMS-1.png | Bin 13316 -> 13316 bytes .../dev/qiskit-circuit-library-GR-1.png | Bin 16936 -> 16936 bytes .../dev/qiskit-circuit-library-GRX-1.png | Bin 16876 -> 16876 bytes .../dev/qiskit-circuit-library-GRY-1.png | Bin 16936 -> 16936 bytes .../dev/qiskit-circuit-library-GRZ-1.png | Bin 12094 -> 12094 bytes .../qiskit-circuit-library-GraphState-1.png | Bin 15678 -> 15678 bytes ...circuit-library-HiddenLinearFunction-1.png | Bin 13076 -> 13076 bytes .../dev/qiskit-circuit-library-IQP-1.png | Bin 6597 -> 6597 bytes .../dev/qiskit-circuit-library-IQP-2.png | Bin 15203 -> 15203 bytes .../qiskit-circuit-library-InnerProduct-1.png | Bin 14234 -> 14234 bytes .../qiskit-circuit-library-MCMTVChain-1.png | Bin 14771 -> 14771 bytes .../dev/qiskit-circuit-library-OR-1.png | Bin 20577 -> 20577 bytes .../dev/qiskit-circuit-library-OR-2.png | Bin 18664 -> 18664 bytes ...iskit-circuit-library-PauliTwoDesign-1.png | Bin 10538 -> 10538 bytes .../qiskit-circuit-library-Permutation-1.png | Bin 9030 -> 9030 bytes .../qiskit-circuit-library-Permutation-2.png | Bin 16568 -> 16568 bytes ...skit-circuit-library-PermutationGate-1.png | Bin 7616 -> 7616 bytes ...skit-circuit-library-PermutationGate-2.png | Bin 16123 -> 16028 bytes ...skit-circuit-library-PhaseEstimation-1.png | Bin 12202 -> 12189 bytes ...t-circuit-library-PiecewiseChebyshev-1.png | Bin 7636 -> 7636 bytes .../dev/qiskit-circuit-library-QFT-1.png | Bin 11836 -> 11836 bytes .../dev/qiskit-circuit-library-QFT-2.png | Bin 12001 -> 12001 bytes .../dev/qiskit-circuit-library-QFT-3.png | Bin 12100 -> 12100 bytes ...qiskit-circuit-library-QuantumVolume-1.png | Bin 9389 -> 9389 bytes ...qiskit-circuit-library-QuantumVolume-2.png | Bin 18255 -> 19385 bytes .../dev/qiskit-circuit-library-XOR-1.png | Bin 12259 -> 12259 bytes ...skit-primitives-StatevectorEstimator-1.png | Bin 44937 -> 44937 bytes .../qiskit-pulse-library-SymbolicPulse-1.png | Bin 11401 -> 11401 bytes .../dev/qiskit-quantum_info-Statevector-1.png | Bin 7558 -> 7558 bytes ...spiler-passes-DynamicalDecoupling-1_00.png | Bin 22803 -> 22803 bytes ...spiler-passes-DynamicalDecoupling-1_01.png | Bin 23583 -> 23583 bytes ...skit-transpiler-passes-FilterOpNodes-1.png | Bin 1637 -> 1637 bytes ...ler-passes-PadDynamicalDecoupling-1_00.png | Bin 22803 -> 22803 bytes ...ler-passes-PadDynamicalDecoupling-1_01.png | Bin 23583 -> 23583 bytes ...kit-transpiler-passes-RemoveBarriers-1.png | Bin 1593 -> 1593 bytes .../qiskit-visualization-circuit_drawer-1.png | Bin 3214 -> 3214 bytes ...visualization-plot_bloch_multivector-1.png | Bin 92847 -> 92847 bytes ...visualization-plot_bloch_multivector-2.png | Bin 95603 -> 95603 bytes ...skit-visualization-plot_bloch_vector-1.png | Bin 73448 -> 73448 bytes ...skit-visualization-plot_bloch_vector-2.png | Bin 74554 -> 74554 bytes ...it-visualization-plot_circuit_layout-1.png | Bin 10645 -> 10056 bytes ...skit-visualization-plot_coupling_map-1.png | Bin 8007 -> 8007 bytes ...t-visualization-plot_distribution-1_00.png | Bin 16020 -> 14124 bytes ...t-visualization-plot_distribution-1_01.png | Bin 20219 -> 16685 bytes ...t-visualization-plot_distribution-1_02.png | Bin 20276 -> 16681 bytes .../qiskit-visualization-plot_error_map-1.png | Bin 48968 -> 49643 bytes .../qiskit-visualization-plot_gate_map-1.png | Bin 8595 -> 8595 bytes ...skit-visualization-plot_histogram-1_00.png | Bin 12434 -> 10255 bytes ...skit-visualization-plot_histogram-1_01.png | Bin 16199 -> 12587 bytes ...skit-visualization-plot_histogram-1_02.png | Bin 16249 -> 12639 bytes ...qiskit-visualization-plot_state_city-1.png | Bin 117324 -> 117324 bytes ...qiskit-visualization-plot_state_city-2.png | Bin 159875 -> 159875 bytes ...skit-visualization-plot_state_hinton-1.png | Bin 11116 -> 11116 bytes ...it-visualization-plot_state_paulivec-1.png | Bin 17337 -> 17337 bytes ...it-visualization-plot_state_paulivec-2.png | Bin 18522 -> 18522 bytes ...kit-visualization-plot_state_qsphere-1.png | Bin 33861 -> 33861 bytes ...kit-visualization-plot_state_qsphere-2.png | Bin 38572 -> 38572 bytes ...qiskit-visualization-timeline_drawer-1.png | Bin 16073 -> 15891 bytes ...qiskit-visualization-timeline_drawer-2.png | Bin 8383 -> 8470 bytes ...qiskit-visualization-timeline_drawer-3.png | Bin 26824 -> 26333 bytes .../images/api/qiskit/dev/release_notes-1.png | Bin 7069 -> 8695 bytes .../images/api/qiskit/dev/release_notes-2.png | Bin 1266648 -> 7530 bytes .../images/api/qiskit/dev/release_notes-3.png | Bin 0 -> 7069 bytes .../images/api/qiskit/dev/transpiler-10.png | Bin 7231 -> 7231 bytes .../images/api/qiskit/dev/transpiler-11.png | Bin 36154 -> 36154 bytes .../images/api/qiskit/dev/transpiler-12.png | Bin 9016 -> 8913 bytes .../images/api/qiskit/dev/transpiler-13.png | Bin 36154 -> 36154 bytes .../images/api/qiskit/dev/transpiler-14.png | Bin 20314 -> 20314 bytes .../images/api/qiskit/dev/transpiler-15.png | Bin 9699 -> 9699 bytes .../images/api/qiskit/dev/transpiler-16.png | Bin 24539 -> 24996 bytes .../images/api/qiskit/dev/transpiler-17.png | Bin 19001 -> 18958 bytes public/images/api/qiskit/dev/transpiler-4.png | Bin 6289 -> 6289 bytes public/images/api/qiskit/dev/transpiler-5.png | Bin 20199 -> 20199 bytes public/images/api/qiskit/dev/transpiler-6.png | Bin 10473 -> 10473 bytes public/images/api/qiskit/dev/transpiler-7.png | Bin 12152 -> 12152 bytes public/images/api/qiskit/dev/transpiler-8.png | Bin 7725 -> 7725 bytes public/images/api/qiskit/dev/transpiler-9.png | Bin 7662 -> 7662 bytes .../images/api/qiskit/dev/visualization-1.png | Bin 10426 -> 8219 bytes .../images/api/qiskit/dev/visualization-2.png | Bin 17293 -> 15392 bytes .../images/api/qiskit/dev/visualization-3.png | Bin 10033 -> 7806 bytes .../images/api/qiskit/dev/visualization-4.png | Bin 108756 -> 108756 bytes .../images/api/qiskit/dev/visualization-5.png | Bin 113083 -> 113083 bytes .../images/api/qiskit/dev/visualization-6.png | Bin 113083 -> 113083 bytes scripts/lib/links/ignores.ts | 6 + 770 files changed, 5654 insertions(+), 6157 deletions(-) create mode 100644 docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Batch.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.AncillaQubit.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.AncillaRegister.mdx create mode 100644 docs/api/qiskit/dev/qiskit.circuit.AnnotatedOperation.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.Bit.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.ClassicalRegister.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.Clbit.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.Delay.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.QuantumRegister.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.Qubit.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.Register.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.Store.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.library.Barrier.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.library.Measure.mdx delete mode 100644 docs/api/qiskit/dev/qiskit.circuit.library.Reset.mdx create mode 100644 docs/api/qiskit/dev/qiskit.primitives.BackendEstimatorV2.mdx create mode 100644 docs/api/qiskit/dev/qiskit.primitives.BackendSamplerV2.mdx create mode 100644 docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalReset.mdx delete mode 100644 public/images/api/qiskit/dev/circuit-4.png delete mode 100644 public/images/api/qiskit/dev/qiskit-circuit-InstructionSet-1.png create mode 100644 public/images/api/qiskit/dev/release_notes-3.png diff --git a/docs/api/qiskit-ibm-runtime/dev/_toc.json b/docs/api/qiskit-ibm-runtime/dev/_toc.json index 95e411db6a8..43b51dd9f22 100644 --- a/docs/api/qiskit-ibm-runtime/dev/_toc.json +++ b/docs/api/qiskit-ibm-runtime/dev/_toc.json @@ -8,6 +8,10 @@ "title": "Overview", "url": "/api/qiskit-ibm-runtime/dev/runtime_service" }, + { + "title": "Batch", + "url": "/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Batch" + }, { "title": "EstimatorV1", "url": "/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.EstimatorV1" diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Batch.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Batch.mdx new file mode 100644 index 00000000000..a7effe81bfe --- /dev/null +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Batch.mdx @@ -0,0 +1,199 @@ +--- +title: Batch +description: API reference for qiskit_ibm_runtime.Batch +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit_ibm_runtime.Batch +--- + +# Batch + + + Class for running jobs in batch execution mode. + + Similar to a `session`, a Qiskit Runtime `batch` groups a collection of iterative calls to the quantum computer. Batch mode can shorten processing time if all jobs can be provided at the outset. To submit iterative jobs, use sessions instead. + + **Using batch mode has these benefits:** + + * The jobs’ classical computation, such as compilation, is run in parallel. Thus, running multiple jobs in a batch is significantly faster than running them serially. + * There is minimal delay between job, which can help avoid drift. + + You can open a Qiskit Runtime batch by using this `Batch` class, then submit jobs to one or more primitives. + + For example: + + ```python + from qiskit.circuit import QuantumCircuit, QuantumRegister, ClassicalRegister + from qiskit.transpiler.preset_passmanagers import generate_preset_pass_manager + from qiskit_ibm_runtime import Batch, SamplerV2 as Sampler + + service = QiskitRuntimeService() + backend = service.least_busy(operational=True, simulator=False) + + # Bell Circuit + qr = QuantumRegister(2, name="qr") + cr = ClassicalRegister(2, name="cr") + qc = QuantumCircuit(qr, cr, name="bell") + qc.h(qr[0]) + qc.cx(qr[0], qr[1]) + qc.measure(qr, cr) + + pm = generate_preset_pass_manager(backend=backend, optimization_level=1) + isa_circuit = pm.run(qc) + + with Batch(backend=backend) as batch: + sampler = Sampler(batch) + job = sampler.run([isa_circuit]) + pub_result = job.result()[0] + print(f"Sampler job ID: {job.job_id()}") + print(f"Counts: {pub_result.data.cr.get_counts()}") + ``` + + Batch constructor. + + **Parameters** + + * **service** (`Optional`\[[`QiskitRuntimeService`](qiskit_ibm_runtime.QiskitRuntimeService "qiskit_ibm_runtime.qiskit_runtime_service.QiskitRuntimeService")]) – Optional instance of the `QiskitRuntimeService` class. If `None`, the service associated with the backend, if known, is used. Otherwise `QiskitRuntimeService()` is used to initialize your default saved account. + * **backend** (`Union`\[`str`, `BackendV1`, `BackendV2`, `None`]) – Optional instance of `Backend` class or backend string name. + * **max\_time** (`Union`\[`int`, `str`, `None`]) – Maximum amount of time a runtime session can be open before being forcibly closed. Can be specified as seconds (int) or a string like “2h 30m 40s”. This value must be less than the [system imposed maximum](/run/max-execution-time). + + **Raises** + + **ValueError** – If an input value is invalid. + + ## Attributes + + ### service + + + Return service associated with this session. + + **Return type** + + [`QiskitRuntimeService`](qiskit_ibm_runtime.QiskitRuntimeService "qiskit_ibm_runtime.qiskit_runtime_service.QiskitRuntimeService") + + **Returns** + + [`qiskit_ibm_runtime.QiskitRuntimeService`](qiskit_ibm_runtime.QiskitRuntimeService "qiskit_ibm_runtime.QiskitRuntimeService") associated with this session. + + + ### session\_id + + + Return the session ID. + + **Return type** + + `Optional`\[`str`] + + **Returns** + + Session ID. None if the backend is a simulator. + + + ## Methods + + ### backend + + + Return backend for this session. + + **Return type** + + `Optional`\[`str`] + + **Returns** + + Backend for this session. None if unknown. + + + ### cancel + + + Cancel all pending jobs in a session. + + **Return type** + + `None` + + + ### close + + + Close the session so new jobs will no longer be accepted, but existing queued or running jobs will run to completion. The session will be terminated once there are no more pending jobs. + + **Return type** + + `None` + + + ### details + + + Return session details. + + **Returns** + + id: id of the session. backend\_name: backend used for the session. interactive\_timeout: The maximum idle time (in seconds) between jobs that is allowed to occur before the session is deactivated. max\_time: Maximum allowed time (in seconds) for the session, subject to plan limits. active\_timeout: The maximum time (in seconds) a session can stay active. state: State of the session - open, active, inactive, or closed. accepting\_jobs: Whether or not the session is accepting jobs. last\_job\_started: Timestamp of when the last job in the session started. last\_job\_completed: Timestamp of when the last job in the session completed. started\_at: Timestamp of when the session was started. closed\_at: Timestamp of when the session was closed. activated\_at: Timestamp of when the session state was changed to active. + + **Return type** + + A dictionary with the sessions details, including + + + ### from\_id + + + Construct a Session object with a given session\_id + + **Parameters** + + * **session\_id** (`str`) – the id of the session to be created. This must be an already existing session id. + * **service** (`Optional`\[[`QiskitRuntimeService`](qiskit_ibm_runtime.QiskitRuntimeService "qiskit_ibm_runtime.qiskit_runtime_service.QiskitRuntimeService")]) – instance of the `QiskitRuntimeService` class. + * **backend** (`Union`\[`str`, [`IBMBackend`](qiskit_ibm_runtime.IBMBackend "qiskit_ibm_runtime.ibm_backend.IBMBackend"), `None`]) – instance of [`qiskit_ibm_runtime.IBMBackend`](qiskit_ibm_runtime.IBMBackend "qiskit_ibm_runtime.IBMBackend") class or string name of backend. + + **Return type** + + [`Session`](qiskit_ibm_runtime.Session "qiskit_ibm_runtime.session.Session") + + **Returns** + + A new Session with the given `session_id` + + + ### run + + + Run a program in the session. + + **Parameters** + + * **program\_id** (`str`) – Program ID. + * **inputs** (`Dict`) – Program input parameters. These input values are passed to the runtime program. + * **options** (`Optional`\[`Dict`]) – Runtime options that control the execution environment. See [`qiskit_ibm_runtime.RuntimeOptions`](qiskit_ibm_runtime.RuntimeOptions "qiskit_ibm_runtime.RuntimeOptions") for all available options. + * **callback** (`Optional`\[`Callable`]) – Callback function to be invoked for any interim results and final result. + + **Return type** + + `Union`\[[`RuntimeJob`](qiskit_ibm_runtime.RuntimeJob "qiskit_ibm_runtime.runtime_job.RuntimeJob"), [`RuntimeJobV2`](qiskit_ibm_runtime.RuntimeJobV2 "qiskit_ibm_runtime.runtime_job_v2.RuntimeJobV2")] + + **Returns** + + Submitted job. + + + ### status + + + Return current session status. + + **Returns** + + Pending: Session is created but not active. It will become active when the next job of this session is dequeued. In progress, accepting new jobs: session is active and accepting new jobs. In progress, not accepting new jobs: session is active and not accepting new jobs. Closed: max\_time expired or session was explicitly closed. None: status details are not available. + + **Return type** + + The current status of the session, including + + + diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Estimator.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Estimator.mdx index 1fde116f913..79d8d4dcbab 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Estimator.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Estimator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.Estimator # Estimator - + alias of [`EstimatorV1`](qiskit_ibm_runtime.EstimatorV1 "qiskit_ibm_runtime.estimator.EstimatorV1") diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.EstimatorV1.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.EstimatorV1.mdx index 29575eaaa04..6bf70ae5c14 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.EstimatorV1.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.EstimatorV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.EstimatorV1 # EstimatorV1 - + Class for interacting with Qiskit Runtime Estimator primitive service. Qiskit Runtime Estimator primitive service estimates expectation values of quantum circuits and observables. @@ -95,7 +95,7 @@ python_api_name: qiskit_ibm_runtime.EstimatorV1 ### run - + Submit a request to the estimator primitive. **Parameters** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.EstimatorV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.EstimatorV2.mdx index bd545411ac8..29534eb0817 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.EstimatorV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.EstimatorV2.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.EstimatorV2 # EstimatorV2 - + Class for interacting with Qiskit Runtime Estimator primitive service. Qiskit Runtime Estimator primitive service estimates expectation values of quantum circuits and observables. @@ -101,7 +101,7 @@ python_api_name: qiskit_ibm_runtime.EstimatorV2 ### run - + Submit a request to the estimator primitive. **Parameters** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeDecoder.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeDecoder.mdx index d0f2e019db1..f159bfa1ec6 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeDecoder.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeDecoder.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeDecoder # RuntimeDecoder - + JSON Decoder used by runtime service. `object_hook`, if specified, will be called with the result of every JSON object decoded and its return value will be used in place of the given `dict`. This can be used to provide custom deserializations (e.g. to support JSON-RPC class hinting). @@ -33,7 +33,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeDecoder ### object\_hook - + Called to decode object. **Return type** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeEncoder.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeEncoder.mdx index 5bb42068a9c..1d534a807bb 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeEncoder.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeEncoder.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeEncoder # RuntimeEncoder - + JSON Encoder used by runtime service. Constructor for JSONEncoder, with sensible defaults. @@ -43,7 +43,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeEncoder ### default - + Implement this method in a subclass such that it returns a serializable object for `o`, or calls the base implementation (to raise a `TypeError`). For example, to support arbitrary iterators, you could implement default like this: diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeJob.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeJob.mdx index b773ed1f0ae..7b7ae790099 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeJob.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeJob.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob # RuntimeJob - + Representation of a runtime program execution. A new `RuntimeJob` instance is returned when you call [`QiskitRuntimeService.run`](qiskit_ibm_runtime.QiskitRuntimeService#run "qiskit_ibm_runtime.QiskitRuntimeService.run") to execute a runtime program, or [`QiskitRuntimeService.job`](qiskit_ibm_runtime.QiskitRuntimeService#job "qiskit_ibm_runtime.QiskitRuntimeService.job") to retrieve a previously executed job. @@ -50,6 +50,14 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ## Attributes + ### ERROR + + + + ### JOB\_FINAL\_STATES + + + ### creation\_date @@ -156,7 +164,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### backend - + Return the backend where this job was executed. Retrieve data again if backend is None. **Raises** @@ -170,7 +178,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### cancel - + Cancel the job. **Raises** @@ -185,7 +193,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### cancel\_result\_streaming - + Cancel result streaming. **Return type** @@ -215,7 +223,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### error\_message - + Returns the reason if the job failed. **Return type** @@ -229,7 +237,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### errored - + Return whether the job has failed. **Return type** @@ -239,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### in\_final\_state - + Return whether the job is in a final job state such as `DONE` or `ERROR`. **Return type** @@ -249,7 +257,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### interim\_results - + Return the interim results of the job. **Parameters** @@ -281,7 +289,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### logs - + Return job logs. @@ -303,7 +311,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### metrics - + Return job metrics. **Return type** @@ -321,7 +329,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### properties - + Return the backend properties for this job. **Parameters** @@ -339,7 +347,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### queue\_info - + Return queue information for this job. The queue information may include queue position, estimated start and end time, and dynamic priorities for the hub, group, and project. See `QueueInfo` for more information. @@ -359,7 +367,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### queue\_position - + Return the position of the job in the server queue. @@ -381,7 +389,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### result - + Return the results of the job. **Parameters** @@ -416,7 +424,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### status - + Return the status of the job. **Return type** @@ -430,7 +438,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### stream\_results - + Start streaming job results. **Parameters** @@ -455,7 +463,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### submit - + Unsupported method. .. note: ```python @@ -475,7 +483,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### update\_tags - + Update the tags associated with this job. **Parameters** @@ -497,7 +505,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJob ### wait\_for\_final\_state - + Use the websocket server to wait for the final the state of a job. The server will remain open if the job is still running and the connection will be terminated once the job completes. Then update and return the status of the job. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeJobV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeJobV2.mdx index e739c2bed84..f5f92719d3c 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeJobV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.RuntimeJobV2.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 # RuntimeJobV2 - + Representation of a runtime V2 primitive exeuction. RuntimeJob constructor. @@ -32,6 +32,14 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ## Attributes + ### ERROR + + + + ### JOB\_FINAL\_STATES + + + ### creation\_date @@ -134,7 +142,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### backend - + Return the backend where this job was executed. Retrieve data again if backend is None. **Raises** @@ -148,7 +156,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### cancel - + Cancel the job. **Raises** @@ -163,7 +171,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### cancel\_result\_streaming - + Cancel result streaming. **Return type** @@ -173,7 +181,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### cancelled - + Return whether the job has been cancelled. **Return type** @@ -183,7 +191,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### done - + Return whether the job has successfully run. **Return type** @@ -193,7 +201,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### error\_message - + Returns the reason if the job failed. **Return type** @@ -207,7 +215,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### errored - + Return whether the job has failed. **Return type** @@ -217,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### in\_final\_state - + Return whether the job is in a final job state such as `DONE` or `ERROR`. **Return type** @@ -227,7 +235,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### interim\_results - + Return the interim results of the job. **Parameters** @@ -259,7 +267,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### logs - + Return job logs. @@ -281,7 +289,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### metrics - + Return job metrics. **Return type** @@ -299,7 +307,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### properties - + Return the backend properties for this job. **Parameters** @@ -317,7 +325,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### result - + Return the results of the job. **Parameters** @@ -342,7 +350,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### running - + Return whether the job is actively running. **Return type** @@ -352,7 +360,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### status - + Return the status of the job. **Return type** @@ -366,7 +374,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### stream\_results - + Start streaming job results. **Parameters** @@ -391,7 +399,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### update\_tags - + Update the tags associated with this job. **Parameters** @@ -413,7 +421,7 @@ python_api_name: qiskit_ibm_runtime.RuntimeJobV2 ### wait\_for\_final\_state - + Use the websocket server to wait for the final the state of a job. The server will remain open if the job is still running and the connection will be terminated once the job completes. Then update and return the status of the job. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Sampler.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Sampler.mdx index 826672c1472..5af4fa37aa1 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Sampler.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.Sampler.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.Sampler # Sampler - + alias of [`SamplerV1`](qiskit_ibm_runtime.SamplerV1 "qiskit_ibm_runtime.sampler.SamplerV1") diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.SamplerV1.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.SamplerV1.mdx index dcd737d7ab5..2596998b8b2 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.SamplerV1.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.SamplerV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.SamplerV1 # SamplerV1 - + Class for interacting with Qiskit Runtime Sampler primitive service. Qiskit Runtime Sampler primitive service calculates quasi-probability distribution of bitstrings from quantum circuits. @@ -87,7 +87,7 @@ python_api_name: qiskit_ibm_runtime.SamplerV1 ### run - + Submit a request to the sampler primitive. **Parameters** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.SamplerV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.SamplerV2.mdx index f13bcd957ad..6700b696ab0 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.SamplerV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.SamplerV2.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.SamplerV2 # SamplerV2 - + Class for interacting with Qiskit Runtime Sampler primitive service. This class supports version 2 of the Sampler interface, which uses different input and output formats than version 1. @@ -69,7 +69,7 @@ python_api_name: qiskit_ibm_runtime.SamplerV2 ### run - + Submit a request to the sampler primitive. **Parameters** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlgiers.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlgiers.mdx index ea41c99cef3..232c0e4471b 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlgiers.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlgiers.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlgiers ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlgiers ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlgiers ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlgiers ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlgiers ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlmaden.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlmaden.mdx index c6c2f840617..9bac3f129a5 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlmaden.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlmaden.mdx @@ -114,7 +114,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlmaden ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlmadenV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlmadenV2.mdx index e8f88a797a8..7f1eb1c7252 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlmadenV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAlmadenV2.mdx @@ -219,7 +219,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlmadenV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -235,7 +235,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlmadenV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -257,7 +257,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlmadenV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -273,7 +273,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlmadenV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -313,12 +313,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAlmadenV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeArmonk.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeArmonk.mdx index 6fc92c231fe..5592fb64ff2 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeArmonk.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeArmonk.mdx @@ -122,7 +122,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeArmonk ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeArmonkV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeArmonkV2.mdx index 11b65e6628c..7da532d08a1 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeArmonkV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeArmonkV2.mdx @@ -213,7 +213,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeArmonkV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -229,7 +229,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeArmonkV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -251,7 +251,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeArmonkV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -267,7 +267,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeArmonkV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -307,12 +307,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeArmonkV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAthens.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAthens.mdx index 0a3b5676082..0986d787ece 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAthens.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAthens.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAthens ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAthensV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAthensV2.mdx index a81cba1f7d8..5ff5e1fcf83 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAthensV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAthensV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAthensV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAthensV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAthensV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAthensV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAthensV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAuckland.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAuckland.mdx index 8baa464c9e0..19c08d8ce33 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAuckland.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeAuckland.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAuckland ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAuckland ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAuckland ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAuckland ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeAuckland ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBelem.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBelem.mdx index ef46532ab08..2f8c7a7d494 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBelem.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBelem.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBelem ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBelemV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBelemV2.mdx index 75068b29d2e..e8085b457e6 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBelemV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBelemV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBelemV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBelemV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBelemV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBelemV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBelemV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBoeblingen.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBoeblingen.mdx index 0bdee659da1..0778d44616e 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBoeblingen.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBoeblingen.mdx @@ -128,7 +128,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBoeblingen ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBoeblingenV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBoeblingenV2.mdx index a13c336fe68..f805e51ce3c 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBoeblingenV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBoeblingenV2.mdx @@ -219,7 +219,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBoeblingenV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -235,7 +235,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBoeblingenV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -257,7 +257,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBoeblingenV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -273,7 +273,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBoeblingenV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -313,12 +313,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBoeblingenV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBogota.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBogota.mdx index 9ced0d13ca8..e934c77eb98 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBogota.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBogota.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBogota ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBogotaV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBogotaV2.mdx index db565800e2b..a865a455035 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBogotaV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBogotaV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBogotaV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBogotaV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBogotaV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBogotaV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBogotaV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrisbane.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrisbane.mdx index f23c3351f66..c17a7ae53a2 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrisbane.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrisbane.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrisbane ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrisbane ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrisbane ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrisbane ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrisbane ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrooklyn.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrooklyn.mdx index 4314c23a740..7de02a7cb80 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrooklyn.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrooklyn.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrooklyn ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrooklynV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrooklynV2.mdx index 4fcb3c713b6..1c4eb1ace8f 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrooklynV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBrooklynV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrooklynV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrooklynV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrooklynV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrooklynV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBrooklynV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBurlington.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBurlington.mdx index 470eed55251..cffc6b81646 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBurlington.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBurlington.mdx @@ -110,7 +110,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBurlington ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBurlingtonV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBurlingtonV2.mdx index f2f76b6acd5..36db184b691 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBurlingtonV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeBurlingtonV2.mdx @@ -215,7 +215,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBurlingtonV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -231,7 +231,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBurlingtonV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -253,7 +253,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBurlingtonV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -269,7 +269,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBurlingtonV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -309,12 +309,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeBurlingtonV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCairo.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCairo.mdx index 764598d3590..47055c99234 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCairo.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCairo.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCairo ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCairoV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCairoV2.mdx index f2972c12db0..83f726906d5 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCairoV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCairoV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCairoV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCairoV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCairoV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCairoV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCairoV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCambridge.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCambridge.mdx index e7e2d4a65ab..cd41f4d6146 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCambridge.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCambridge.mdx @@ -116,7 +116,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCambridge ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCambridgeV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCambridgeV2.mdx index 4c91837f38b..2fc36626928 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCambridgeV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCambridgeV2.mdx @@ -221,7 +221,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCambridgeV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -237,7 +237,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCambridgeV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -259,7 +259,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCambridgeV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -275,7 +275,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCambridgeV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -315,12 +315,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCambridgeV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCasablanca.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCasablanca.mdx index 1084538f29e..786a894232c 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCasablanca.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCasablanca.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCasablanca ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCasablancaV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCasablancaV2.mdx index 9d96def6983..2a091e82b27 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCasablancaV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCasablancaV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCasablancaV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCasablancaV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCasablancaV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCasablancaV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCasablancaV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCusco.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCusco.mdx index a8a1823e406..129c6103178 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCusco.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeCusco.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCusco ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCusco ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCusco ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCusco ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeCusco ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeEssex.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeEssex.mdx index d71bb655a4e..bae3e250887 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeEssex.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeEssex.mdx @@ -112,7 +112,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeEssex ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeEssexV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeEssexV2.mdx index 65a64e2b0c4..f79f8160dfc 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeEssexV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeEssexV2.mdx @@ -217,7 +217,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeEssexV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -233,7 +233,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeEssexV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -255,7 +255,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeEssexV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -271,7 +271,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeEssexV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -311,12 +311,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeEssexV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGeneva.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGeneva.mdx index 018dec3f3d6..e0adb7ed8c2 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGeneva.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGeneva.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGeneva ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGeneva ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGeneva ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGeneva ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGeneva ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGuadalupe.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGuadalupe.mdx index 4990b4ce28a..105e939733f 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGuadalupe.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGuadalupe.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGuadalupe ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGuadalupeV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGuadalupeV2.mdx index f458333f62b..c6d2db7c468 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGuadalupeV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeGuadalupeV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGuadalupeV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGuadalupeV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGuadalupeV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGuadalupeV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeGuadalupeV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeHanoi.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeHanoi.mdx index 0ea0159106d..edbe08e2391 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeHanoi.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeHanoi.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeHanoi ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeHanoiV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeHanoiV2.mdx index 09e3bfc048f..4ab2adf0d05 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeHanoiV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeHanoiV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeHanoiV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeHanoiV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeHanoiV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeHanoiV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeHanoiV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJakarta.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJakarta.mdx index 8696ddc7483..92356977572 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJakarta.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJakarta.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJakarta ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJakartaV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJakartaV2.mdx index 8615bac5111..80a8195cb52 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJakartaV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJakartaV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJakartaV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJakartaV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJakartaV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJakartaV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJakartaV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJohannesburg.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJohannesburg.mdx index ca0a30a052f..488c60b7b09 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJohannesburg.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJohannesburg.mdx @@ -114,7 +114,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJohannesburg ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJohannesburgV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJohannesburgV2.mdx index d5e43964112..482f59929e0 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJohannesburgV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeJohannesburgV2.mdx @@ -219,7 +219,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJohannesburgV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -235,7 +235,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJohannesburgV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -257,7 +257,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJohannesburgV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -273,7 +273,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJohannesburgV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -313,12 +313,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeJohannesburgV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKawasaki.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKawasaki.mdx index 89ec5e1ec17..4ebbc1b8ad6 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKawasaki.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKawasaki.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKawasaki ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKawasaki ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKawasaki ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKawasaki ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKawasaki ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKolkata.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKolkata.mdx index f4d5ac9f844..03f520f77c7 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKolkata.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKolkata.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKolkata ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKolkataV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKolkataV2.mdx index e20a23a315a..b15e3b7267a 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKolkataV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKolkataV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKolkataV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKolkataV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKolkataV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKolkataV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKolkataV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKyiv.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKyiv.mdx index c9efde29e1e..af54fbb17df 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKyiv.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKyiv.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyiv ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyiv ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyiv ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyiv ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyiv ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKyoto.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKyoto.mdx index c0d019a1df6..5a327eccaed 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKyoto.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeKyoto.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyoto ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyoto ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyoto ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyoto ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeKyoto ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLagos.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLagos.mdx index 2cd1e2af6a8..f4bca2a2914 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLagos.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLagos.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLagos ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLagosV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLagosV2.mdx index f8642883871..57636a56581 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLagosV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLagosV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLagosV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLagosV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLagosV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLagosV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLagosV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLima.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLima.mdx index b2cf1988d9a..798369272e8 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLima.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLima.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLima ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLimaV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLimaV2.mdx index 8f40bc49b1a..8d6b0451da1 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLimaV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLimaV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLimaV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLimaV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLimaV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLimaV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLimaV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLondon.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLondon.mdx index ad3630af372..f47084aab3a 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLondon.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLondon.mdx @@ -112,7 +112,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLondon ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLondonV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLondonV2.mdx index 1e60bab33f4..449139d7754 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLondonV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeLondonV2.mdx @@ -217,7 +217,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLondonV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -233,7 +233,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLondonV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -255,7 +255,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLondonV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -271,7 +271,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLondonV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -311,12 +311,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeLondonV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManhattan.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManhattan.mdx index aca07df3124..5ac90c5a505 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManhattan.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManhattan.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManhattan ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManhattanV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManhattanV2.mdx index 0d2c7196a25..5bcd44fe79b 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManhattanV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManhattanV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManhattanV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManhattanV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManhattanV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManhattanV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManhattanV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManila.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManila.mdx index 9c1a9bdf895..96b0e22aa83 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManila.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManila.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManila ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManilaV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManilaV2.mdx index 23f1696306c..4724e1ff907 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManilaV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeManilaV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManilaV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManilaV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManilaV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManilaV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeManilaV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMelbourneV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMelbourneV2.mdx index 7c721828185..f1e5a6f3a04 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMelbourneV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMelbourneV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMelbourneV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMelbourneV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMelbourneV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMelbourneV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMelbourneV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMontreal.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMontreal.mdx index 513e76ca46e..470a6c5af20 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMontreal.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMontreal.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMontreal ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMontrealV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMontrealV2.mdx index 65dc28cf08c..9cb1b864ebd 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMontrealV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMontrealV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMontrealV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMontrealV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMontrealV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMontrealV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMontrealV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMumbai.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMumbai.mdx index 75c9d8149f9..4f8939fa905 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMumbai.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMumbai.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMumbai ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMumbaiV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMumbaiV2.mdx index 22dc28c4225..c79d103881f 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMumbaiV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeMumbaiV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMumbaiV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMumbaiV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMumbaiV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMumbaiV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeMumbaiV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeNairobi.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeNairobi.mdx index 0e42a1aa64f..3326024b1aa 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeNairobi.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeNairobi.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeNairobi ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeNairobiV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeNairobiV2.mdx index 27f1421a5ad..ba1d8d9d5c6 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeNairobiV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeNairobiV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeNairobiV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeNairobiV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeNairobiV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeNairobiV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeNairobiV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOsaka.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOsaka.mdx index 647fba8e1ba..f62e3563dd6 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOsaka.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOsaka.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOsaka ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOsaka ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOsaka ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOsaka ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOsaka ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOslo.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOslo.mdx index 61e88c5078b..112bae56c4e 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOslo.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOslo.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOslo ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOslo ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOslo ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOslo ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOslo ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOurense.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOurense.mdx index 2bff5ced2df..076826d485f 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOurense.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOurense.mdx @@ -110,7 +110,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOurense ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOurenseV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOurenseV2.mdx index 2f2b77a1222..a267efbfdc2 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOurenseV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeOurenseV2.mdx @@ -215,7 +215,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOurenseV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -231,7 +231,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOurenseV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -253,7 +253,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOurenseV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -269,7 +269,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOurenseV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -309,12 +309,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeOurenseV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeParis.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeParis.mdx index 13350527393..0f61e3f3885 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeParis.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeParis.mdx @@ -130,7 +130,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeParis ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeParisV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeParisV2.mdx index ef9b0796e9a..5a9216e23c5 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeParisV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeParisV2.mdx @@ -221,7 +221,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeParisV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -237,7 +237,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeParisV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -259,7 +259,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeParisV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -275,7 +275,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeParisV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -315,12 +315,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeParisV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePeekskill.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePeekskill.mdx index 2ba89cb1633..1a63d21604a 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePeekskill.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePeekskill.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePeekskill ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePeekskill ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePeekskill ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePeekskill ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePeekskill ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePerth.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePerth.mdx index f72988144d7..ad64b05edcc 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePerth.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePerth.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePerth ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePerth ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePerth ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePerth ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePerth ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePoughkeepsieV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePoughkeepsieV2.mdx index 82b6f0139b7..6f377f84c41 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePoughkeepsieV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePoughkeepsieV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePoughkeepsieV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePoughkeepsieV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePoughkeepsieV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePoughkeepsieV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePoughkeepsieV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePrague.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePrague.mdx index af73f9f7cb8..f9dd4ed9f03 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePrague.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakePrague.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePrague ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePrague ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePrague ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePrague ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakePrague ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuebec.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuebec.mdx index d9152666f1d..bb77d937651 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuebec.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuebec.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuebec ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuebec ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuebec ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuebec ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuebec ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuito.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuito.mdx index a3a7a972d72..8d1bbf4009a 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuito.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuito.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuito ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuitoV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuitoV2.mdx index eb433a884a6..aedd5fedede 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuitoV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeQuitoV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuitoV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuitoV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuitoV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuitoV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeQuitoV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRochester.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRochester.mdx index 3c99ceb3325..e766711b464 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRochester.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRochester.mdx @@ -104,7 +104,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRochester ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRochesterV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRochesterV2.mdx index 54414836854..03cf350f2b5 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRochesterV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRochesterV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRochesterV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRochesterV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRochesterV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRochesterV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRochesterV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRome.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRome.mdx index 00790912e25..2ad6c6aa135 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRome.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRome.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRome ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRomeV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRomeV2.mdx index 2a99d336f3a..dec4a26814e 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRomeV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeRomeV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRomeV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRomeV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRomeV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRomeV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeRomeV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSantiago.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSantiago.mdx index 6a1ecc3da93..7774fa40b29 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSantiago.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSantiago.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSantiago ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSantiagoV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSantiagoV2.mdx index 66ac76013cd..dc276eef21c 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSantiagoV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSantiagoV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSantiagoV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSantiagoV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSantiagoV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSantiagoV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSantiagoV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSherbrooke.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSherbrooke.mdx index c8be6ceb070..0a99d92bf34 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSherbrooke.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSherbrooke.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSherbrooke ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSherbrooke ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSherbrooke ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSherbrooke ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSherbrooke ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSingapore.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSingapore.mdx index cd5127cc50f..d16fe53434f 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSingapore.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSingapore.mdx @@ -114,7 +114,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSingapore ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSingaporeV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSingaporeV2.mdx index 0f755ffaa27..d0a57dfd8c5 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSingaporeV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSingaporeV2.mdx @@ -219,7 +219,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSingaporeV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -235,7 +235,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSingaporeV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -257,7 +257,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSingaporeV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -273,7 +273,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSingaporeV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -313,12 +313,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSingaporeV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSydney.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSydney.mdx index 90ee57355b8..c651da0c7a0 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSydney.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSydney.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSydney ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSydneyV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSydneyV2.mdx index 6e6792be13f..09a97f17a7b 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSydneyV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeSydneyV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSydneyV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSydneyV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSydneyV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSydneyV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeSydneyV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeTorino.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeTorino.mdx index 29976872077..68bd78fc391 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeTorino.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeTorino.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorino ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorino ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorino ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorino ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorino ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeToronto.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeToronto.mdx index 90d912f1802..f5f0e33b56c 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeToronto.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeToronto.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeToronto ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeTorontoV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeTorontoV2.mdx index 3839135ee21..635f9201882 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeTorontoV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeTorontoV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorontoV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorontoV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorontoV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorontoV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeTorontoV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeValencia.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeValencia.mdx index 41d44ce13b9..6f7ac6e148c 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeValencia.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeValencia.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeValencia ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeValenciaV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeValenciaV2.mdx index 92e471ee68d..510bfd3590b 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeValenciaV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeValenciaV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeValenciaV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeValenciaV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeValenciaV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeValenciaV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeValenciaV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeVigo.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeVigo.mdx index afbd4070728..fb88f6af3a2 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeVigo.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeVigo.mdx @@ -110,7 +110,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeVigo ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeVigoV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeVigoV2.mdx index 4c47e2902fa..5988388a5e7 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeVigoV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeVigoV2.mdx @@ -215,7 +215,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeVigoV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -231,7 +231,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeVigoV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -253,7 +253,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeVigoV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -269,7 +269,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeVigoV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -309,12 +309,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeVigoV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeWashington.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeWashington.mdx index 21c08af8f63..5272525469a 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeWashington.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeWashington.mdx @@ -118,7 +118,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeWashington ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeWashingtonV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeWashingtonV2.mdx index 453c327f942..2b7619ea186 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeWashingtonV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeWashingtonV2.mdx @@ -209,7 +209,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeWashingtonV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -225,7 +225,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeWashingtonV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -247,7 +247,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeWashingtonV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -263,7 +263,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeWashingtonV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -303,12 +303,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeWashingtonV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeYorktown.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeYorktown.mdx index 8f052f4bcea..05a5ddc14c9 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeYorktown.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeYorktown.mdx @@ -112,7 +112,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeYorktown ### run - + Main job in simulator diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeYorktownV2.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeYorktownV2.mdx index 01ba88b0617..dc91f652832 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeYorktownV2.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.fake_provider.FakeYorktownV2.mdx @@ -217,7 +217,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeYorktownV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -233,7 +233,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeYorktownV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -255,7 +255,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeYorktownV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -271,7 +271,7 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeYorktownV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -311,12 +311,12 @@ python_api_name: qiskit_ibm_runtime.fake_provider.FakeYorktownV2 ### run - + Run on the fake backend using a simulator. - This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicAer simulator/ BasicSimulator or Aer simulator and returns a `Job` object. + This method runs circuit jobs (an individual or a list of QuantumCircuit ) and pulse jobs (an individual or a list of Schedule or ScheduleBlock) using BasicSimulator or Aer simulator and returns a `Job` object. - If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicAer simulator/ BasicSimulator simulator without noise. + If qiskit-aer is installed, jobs will be run using AerSimulator with noise model of the fake backend. Otherwise, jobs will be run using BasicSimulator without noise. Currently noisy simulation of a pulse job is not supported yet in FakeBackendV2. diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.EstimatorOptions.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.EstimatorOptions.mdx index 4ab4e507a55..5161ba0ac02 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.EstimatorOptions.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.EstimatorOptions.mdx @@ -122,7 +122,7 @@ python_api_name: qiskit_ibm_runtime.options.EstimatorOptions ### update - + Update the options. **Return type** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.Options.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.Options.mdx index 9d3e56821e5..b1b9cbee3b1 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.Options.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.Options.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.options.Options # Options - + Options for the primitives, used by V1 primitives. **Parameters** @@ -87,7 +87,7 @@ python_api_name: qiskit_ibm_runtime.options.Options ### validate\_options - + Validate that program inputs (options) are valid :raises ValueError: if optimization\_level is outside the allowed range. :raises ValueError: if max\_execution\_time is outside the allowed range. **Return type** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.PecOptions.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.PecOptions.mdx index 741316879e3..f8fb25bcbef 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.PecOptions.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.PecOptions.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.options.PecOptions # PecOptions - + Probabalistic error cancellation mitigation options. **Parameters** @@ -19,11 +19,12 @@ python_api_name: qiskit_ibm_runtime.options.PecOptions The amount by which to scale the noise, where: - * A value of one corresponds to attempting to remove all of the noise. - * A value greater than one corresponds to injecting noise. - * A value between 0 and 1 corresponds to partially removing the noise. + * A value of 0 corresponds to removing the full learned noise. + * A value of 1 corresponds to no removal of the learned noise. + * A value between 0 and 1 corresponds to partially removing the learned noise. + * A value greater than one corresponds to amplifying the learned noise. - If “auto”, the value will be chosen automatically based on the input PUBs. Default: “auto”. + If “auto”, the value in the range `[0, 1)` will be chosen automatically for each input PUB based on the learned noise strength, `max_overhead`, and the depth of the PUB. Default: “auto”. ## Attributes diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.SamplerOptions.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.SamplerOptions.mdx index af1e0872549..eb64b391e19 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.SamplerOptions.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.options.SamplerOptions.mdx @@ -52,7 +52,7 @@ python_api_name: qiskit_ibm_runtime.options.SamplerOptions ### update - + Update the options. **Return type** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAnalysis.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAnalysis.mdx index f9a5219dd55..691819658b4 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAnalysis.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAnalysis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAna # ALAPScheduleAnalysis - + Dynamic circuits as-late-as-possible (ALAP) scheduling analysis pass. This is a scheduler designed to work for the unique scheduling constraints of the dynamic circuits backends due to the limitations imposed by hardware. This is expected to evolve over time as the dynamic circuit backends also change. @@ -29,7 +29,8 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAna **Parameters** - **durations** (`InstructionDurations`) – Durations of instructions to be used in scheduling. + * **durations** (`InstructionDurations`) – Durations of instructions to be used in scheduling. + * **block\_ordering\_callable** (`Optional`\[`Callable`\[\[`DAGCircuit`], `Generator`\[`DAGOpNode`, `None`, `None`]]]) – A callable used to produce an ordering of the nodes to minimize the number of blocks needed. If not provided, `block_order_op_nodes()` will be used. ## Attributes @@ -102,7 +103,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAna ### run - + Run the ASAPSchedule pass on dag. :type dag: `DAGCircuit` :param dag: DAG to schedule. :type dag: DAGCircuit **Raises** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAnalysis.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAnalysis.mdx index 019bf6b4b79..5f81a8d6175 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAnalysis.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAnalysis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAna # ASAPScheduleAnalysis - + Dynamic circuits as-soon-as-possible (ASAP) scheduling analysis pass. This is a scheduler designed to work for the unique scheduling constraints of the dynamic circuits backends due to the limitations imposed by hardware. This is expected to evolve over time as the dynamic circuit backends also change. @@ -29,7 +29,8 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAna **Parameters** - **durations** (`InstructionDurations`) – Durations of instructions to be used in scheduling. + * **durations** (`InstructionDurations`) – Durations of instructions to be used in scheduling. + * **block\_ordering\_callable** (`Optional`\[`Callable`\[\[`DAGCircuit`], `Generator`\[`DAGOpNode`, `None`, `None`]]]) – A callable used to produce an ordering of the nodes to minimize the number of blocks needed. If not provided, `block_order_op_nodes()` will be used. ## Attributes @@ -102,7 +103,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAna ### run - + Run the ALAPSchedule pass on dag. :type dag: `DAGCircuit` :param dag: DAG to schedule. :type dag: DAGCircuit **Raises** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder.mdx index b0235c8bbb4..86a05bfe693 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder # BlockBasePadder - + The base class of padding pass. This pass requires one of scheduling passes to be executed before itself. Since there are multiple scheduling strategies, the selection of scheduling pass is left in the hands of the pass manager designer. Once a scheduling analysis pass is run, `node_start_time` is generated in the `property_set`. This information is represented by a python dictionary of the expected instruction execution times keyed on the node instances. The padding pass expects all `DAGOpNode` in the circuit to be scheduled. @@ -93,7 +93,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder ### run - + Run the padding pass on `dag`. **Parameters** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitInstructionDurations.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitInstructionDurations.mdx index dd7fcfd8964..396aeba80a1 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitInstructionDurations.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitInstructionDurations.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitI # DynamicCircuitInstructionDurations - + For dynamic circuits the IBM Qiskit backend currently reports instruction durations that differ compared with those required for the legacy Qobj-based path. For now we use this class to report updated InstructionDurations. TODO: This would be mitigated by a specialized Backend/Target for dynamic circuit backends. Dynamic circuit instruction durations. @@ -27,7 +27,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitI ### from\_backend - + Construct a `DynamicInstructionDurations` object from the backend. :type backend: `Backend` :param backend: backend from which durations (gate lengths) and dt are extracted. **Returns** @@ -41,7 +41,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitI ### from\_target - + Construct a `DynamicInstructionDurations` object from the target. :type target: `Target` :param target: target from which durations (gate lengths) and dt are extracted. **Returns** @@ -96,7 +96,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitI ### update - + Update self with inst\_durations (inst\_durations overwrite self). Overrides the default durations for certain hardcoded instructions. **Parameters** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.PadDelay.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.PadDelay.mdx index 43fe7778fc0..58ec85f72b2 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.PadDelay.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.PadDelay.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.PadDelay # PadDelay - + Padding idle time with Delay instructions. Consecutive delays will be merged in the output of this pass. @@ -34,6 +34,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.PadDelay * **durations** (`InstructionDurations`) – Durations of instructions to be used in scheduling. * **fill\_very\_end** (`bool`) – Set `True` to fill the end of circuit with delay. * **schedule\_idle\_qubits** (`bool`) – Set to true if you’d like a delay inserted on idle qubits. This is useful for timeline visualizations, but may cause issues for execution on large backends. + * **block\_ordering\_callable** (`Optional`\[`Callable`\[\[`DAGCircuit`], `Generator`\[`DAGOpNode`, `None`, `None`]]]) – A callable used to produce an ordering of the nodes to minimize the number of blocks needed. If not provided, `block_order_op_nodes()` will be used. ## Attributes @@ -106,7 +107,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.PadDelay ### run - + Run the padding pass on `dag`. **Parameters** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.PadDynamicalDecoupling.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.PadDynamicalDecoupling.mdx index 24ff3a52348..edb5285be60 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.PadDynamicalDecoupling.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.PadDynamicalDecoupling.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.PadDynamicalDec # PadDynamicalDecoupling - + Dynamical decoupling insertion pass for IBM dynamic circuit backends. This pass works on a scheduled, physical circuit. It scans the circuit for idle periods of time (i.e. those containing delay instructions) and inserts a DD sequence of gates in those spots. These gates amount to the identity, so do not alter the logical action of the circuit, but have the effect of mitigating decoherence in those idle periods. As a special case, the pass allows a length-1 sequence (e.g. \[XGate()]). In this case the DD insertion happens only when the gate inverse can be absorbed into a neighboring gate in the circuit (so we would still be replacing Delay with something that is equivalent to the identity). This can be used, for instance, as a Hahn echo. This pass ensures that the inserted sequence preserves the circuit exactly (including global phase). @@ -165,6 +165,8 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.PadDynamicalDec * **dd\_barrier** (`Optional`\[`str`]) – only apply DD to delays terminating with a barrier whose label contains the specified string + * **block\_ordering\_callable** (`Optional`\[`Callable`\[\[`DAGCircuit`], `Generator`\[`DAGOpNode`, `None`, `None`]]]) – A callable used to produce an ordering of the nodes to minimize the number of blocks needed. If not provided, `block_order_op_nodes()` will be used. + **Raises** * **TranspilerError** – When invalid DD sequence is specified. @@ -242,7 +244,7 @@ python_api_name: qiskit_ibm_runtime.transpiler.passes.scheduling.PadDynamicalDec ### run - + Run the padding pass on `dag`. **Parameters** diff --git a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.mdx b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.mdx index aa3f728d754..e9d095c2ab4 100644 --- a/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling.mdx @@ -371,9 +371,9 @@ qc_dd.draw(output="mpl", style="iqp") | | | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| [`BlockBasePadder`](qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder "qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder")(\[schedule\_idle\_qubits]) | The base class of padding pass. | -| [`ALAPScheduleAnalysis`](qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAnalysis "qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAnalysis")(durations) | Dynamic circuits as-late-as-possible (ALAP) scheduling analysis pass. | -| [`ASAPScheduleAnalysis`](qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAnalysis "qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAnalysis")(durations) | Dynamic circuits as-soon-as-possible (ASAP) scheduling analysis pass. | +| [`BlockBasePadder`](qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder "qiskit_ibm_runtime.transpiler.passes.scheduling.BlockBasePadder")(\[schedule\_idle\_qubits, ...]) | The base class of padding pass. | +| [`ALAPScheduleAnalysis`](qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAnalysis "qiskit_ibm_runtime.transpiler.passes.scheduling.ALAPScheduleAnalysis")(durations\[, ...]) | Dynamic circuits as-late-as-possible (ALAP) scheduling analysis pass. | +| [`ASAPScheduleAnalysis`](qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAnalysis "qiskit_ibm_runtime.transpiler.passes.scheduling.ASAPScheduleAnalysis")(durations\[, ...]) | Dynamic circuits as-soon-as-possible (ASAP) scheduling analysis pass. | | [`DynamicCircuitInstructionDurations`](qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitInstructionDurations "qiskit_ibm_runtime.transpiler.passes.scheduling.DynamicCircuitInstructionDurations")(\[...]) | For dynamic circuits the IBM Qiskit backend currently reports instruction durations that differ compared with those required for the legacy Qobj-based path. | | [`PadDelay`](qiskit_ibm_runtime.transpiler.passes.scheduling.PadDelay "qiskit_ibm_runtime.transpiler.passes.scheduling.PadDelay")(durations\[, fill\_very\_end, ...]) | Padding idle time with Delay instructions. | | [`PadDynamicalDecoupling`](qiskit_ibm_runtime.transpiler.passes.scheduling.PadDynamicalDecoupling "qiskit_ibm_runtime.transpiler.passes.scheduling.PadDynamicalDecoupling")(durations, dd\_sequences) | Dynamical decoupling insertion pass for IBM dynamic circuit backends. | diff --git a/docs/api/qiskit-ibm-runtime/dev/runtime_service.mdx b/docs/api/qiskit-ibm-runtime/dev/runtime_service.mdx index fc5883de13f..323e7cfe157 100644 --- a/docs/api/qiskit-ibm-runtime/dev/runtime_service.mdx +++ b/docs/api/qiskit-ibm-runtime/dev/runtime_service.mdx @@ -163,6 +163,7 @@ logging.getLogger('qiskit_ibm_runtime').setLevel(logging.WARNING) | [`SamplerV1`](qiskit_ibm_runtime.SamplerV1 "qiskit_ibm_runtime.SamplerV1")(\[backend, session, options]) | Class for interacting with Qiskit Runtime Sampler primitive service. | | [`SamplerV2`](qiskit_ibm_runtime.SamplerV2 "qiskit_ibm_runtime.SamplerV2")(\[backend, session, options]) | Class for interacting with Qiskit Runtime Sampler primitive service. | | [`Session`](qiskit_ibm_runtime.Session "qiskit_ibm_runtime.Session")(\[service, backend, max\_time]) | Class for creating a Qiskit Runtime session. | +| [`Batch`](qiskit_ibm_runtime.Batch "qiskit_ibm_runtime.Batch")(\[service, backend, max\_time]) | Class for running jobs in batch execution mode. | | [`IBMBackend`](qiskit_ibm_runtime.IBMBackend "qiskit_ibm_runtime.IBMBackend")(configuration, service, api\_client) | Backend class interfacing with an IBM Quantum backend. | | [`RuntimeJob`](qiskit_ibm_runtime.RuntimeJob "qiskit_ibm_runtime.RuntimeJob")(backend, api\_client, ...\[, ...]) | Representation of a runtime program execution. | | [`RuntimeJobV2`](qiskit_ibm_runtime.RuntimeJobV2 "qiskit_ibm_runtime.RuntimeJobV2")(backend, api\_client, ...\[, ...]) | Representation of a runtime V2 primitive exeuction. | diff --git a/docs/api/qiskit/dev/_toc.json b/docs/api/qiskit/dev/_toc.json index 4c9f8493fe4..20994656085 100644 --- a/docs/api/qiskit/dev/_toc.json +++ b/docs/api/qiskit/dev/_toc.json @@ -26,16 +26,8 @@ "url": "/api/qiskit/dev/circuit" }, { - "title": "AncillaQubit", - "url": "/api/qiskit/dev/qiskit.circuit.AncillaQubit" - }, - { - "title": "AncillaRegister", - "url": "/api/qiskit/dev/qiskit.circuit.AncillaRegister" - }, - { - "title": "Bit", - "url": "/api/qiskit/dev/qiskit.circuit.Bit" + "title": "AnnotatedOperation", + "url": "/api/qiskit/dev/qiskit.circuit.AnnotatedOperation" }, { "title": "BreakLoopOp", @@ -45,14 +37,6 @@ "title": "CircuitInstruction", "url": "/api/qiskit/dev/qiskit.circuit.CircuitInstruction" }, - { - "title": "ClassicalRegister", - "url": "/api/qiskit/dev/qiskit.circuit.ClassicalRegister" - }, - { - "title": "Clbit", - "url": "/api/qiskit/dev/qiskit.circuit.Clbit" - }, { "title": "ContinueLoopOp", "url": "/api/qiskit/dev/qiskit.circuit.ContinueLoopOp" @@ -65,10 +49,6 @@ "title": "ControlledGate", "url": "/api/qiskit/dev/qiskit.circuit.ControlledGate" }, - { - "title": "Delay", - "url": "/api/qiskit/dev/qiskit.circuit.Delay" - }, { "title": "EquivalenceLibrary", "url": "/api/qiskit/dev/qiskit.circuit.EquivalenceLibrary" @@ -121,22 +101,6 @@ "title": "QuantumCircuit", "url": "/api/qiskit/dev/qiskit.circuit.QuantumCircuit" }, - { - "title": "QuantumRegister", - "url": "/api/qiskit/dev/qiskit.circuit.QuantumRegister" - }, - { - "title": "Qubit", - "url": "/api/qiskit/dev/qiskit.circuit.Qubit" - }, - { - "title": "Register", - "url": "/api/qiskit/dev/qiskit.circuit.Register" - }, - { - "title": "Store", - "url": "/api/qiskit/dev/qiskit.circuit.Store" - }, { "title": "SwitchCaseOp", "url": "/api/qiskit/dev/qiskit.circuit.SwitchCaseOp" @@ -181,10 +145,6 @@ "title": "AND", "url": "/api/qiskit/dev/qiskit.circuit.library.AND" }, - { - "title": "Barrier", - "url": "/api/qiskit/dev/qiskit.circuit.library.Barrier" - }, { "title": "C3SXGate", "url": "/api/qiskit/dev/qiskit.circuit.library.C3SXGate" @@ -429,10 +389,6 @@ "title": "MCXVChain", "url": "/api/qiskit/dev/qiskit.circuit.library.MCXVChain" }, - { - "title": "Measure", - "url": "/api/qiskit/dev/qiskit.circuit.library.Measure" - }, { "title": "MSGate", "url": "/api/qiskit/dev/qiskit.circuit.library.MSGate" @@ -525,10 +481,6 @@ "title": "RealAmplitudes", "url": "/api/qiskit/dev/qiskit.circuit.library.RealAmplitudes" }, - { - "title": "Reset", - "url": "/api/qiskit/dev/qiskit.circuit.library.Reset" - }, { "title": "RGate", "url": "/api/qiskit/dev/qiskit.circuit.library.RGate" @@ -798,10 +750,18 @@ "title": "BackendEstimator", "url": "/api/qiskit/dev/qiskit.primitives.BackendEstimator" }, + { + "title": "BackendEstimatorV2", + "url": "/api/qiskit/dev/qiskit.primitives.BackendEstimatorV2" + }, { "title": "BackendSampler", "url": "/api/qiskit/dev/qiskit.primitives.BackendSampler" }, + { + "title": "BackendSamplerV2", + "url": "/api/qiskit/dev/qiskit.primitives.BackendSamplerV2" + }, { "title": "BaseEstimatorV1", "url": "/api/qiskit/dev/qiskit.primitives.BaseEstimatorV1" @@ -1904,6 +1864,10 @@ "title": "RemoveFinalMeasurements", "url": "/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalMeasurements" }, + { + "title": "RemoveFinalReset", + "url": "/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalReset" + }, { "title": "RemoveResetInZeroState", "url": "/api/qiskit/dev/qiskit.transpiler.passes.RemoveResetInZeroState" diff --git a/docs/api/qiskit/dev/assembler.mdx b/docs/api/qiskit/dev/assembler.mdx index aefc410c308..44d4dfde67e 100644 --- a/docs/api/qiskit/dev/assembler.mdx +++ b/docs/api/qiskit/dev/assembler.mdx @@ -22,7 +22,7 @@ python_api_name: qiskit.assembler ### assemble\_circuits - + Assembles a list of circuits into a qobj that can be run on the backend. **Parameters** @@ -65,7 +65,7 @@ python_api_name: qiskit.assembler ### assemble\_schedules - + Assembles a list of schedules into a qobj that can be run on the backend. **Parameters** @@ -129,7 +129,7 @@ python_api_name: qiskit.assembler ### disassemble - + Disassemble a qobj and return the circuits or pulse schedules, run\_config, and user header. diff --git a/docs/api/qiskit/dev/circuit.mdx b/docs/api/qiskit/dev/circuit.mdx index 55c219e5b33..edd6d7011fd 100644 --- a/docs/api/qiskit/dev/circuit.mdx +++ b/docs/api/qiskit/dev/circuit.mdx @@ -10,26 +10,45 @@ python_api_name: qiskit.circuit - + -# Quantum Circuits +# Quantum circuit model `qiskit.circuit` -## Overview +The fundamental element of quantum computing is the *quantum circuit*. This is a computational routine that can be run, one shot at a time, on a quantum processing unit (QPU). A circuit will act on a predefined amount of quantum data (in Qiskit, we only directly support qubits) with unitary operations (gates), measurements and resets. In addition, a quantum circuit can contain operations on classical data, including real-time computations and control-flow constructs, which are executed by the controllers of the QPU. -The fundamental element of quantum computing is the **quantum circuit**. A quantum circuit is a computational routine consisting of coherent quantum operations on quantum data, such as qubits. It is an ordered sequence of quantum gates, measurements and resets, which may be conditioned on real-time classical computation. A set of quantum gates is said to be universal if any unitary transformation of the quantum data can be efficiently approximated arbitrarily well as a sequence of gates in the set. Any quantum program can be represented by a sequence of quantum circuits and classical near-time computation. + + You may wish to skip the introductory material and jump directly to: -In Qiskit, this core element is represented by the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") class. Below is an example of a quantum circuit that makes a three-qubit GHZ state defined as: + * [the API overview of the whole circuit module](#circuit-module-api) + * [the detailed discussion about how circuits are represented](#circuit-repr) + * the core [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") class for how to build and query circuits + * [information on construction custom instructions](#circuit-custom-gates) + * [ways to work with circuit-level objects](#circuit-working-with) + * [discussion of Qiskit conventions for circuits, matrices and state labelling](#circuit-conventions) + + +Circuits are at a low level of abstraction when building up quantum programs. They are the construct that is used to build up to higher levels of abstraction, such as the [primitives of quantum computation](primitives#qiskit-primitives), which accumulate data from many shots of quantum-circuit execution, along with advanced error-mitigation techniques and measurement optimizations, into well-typed classical data and error statistics. + +In Qiskit, circuits can be defined in one of two regimes: + +* an *abstract* circuit, which is defined in terms of *virtual qubits* and arbitrary high-level operations, like encapsulated algorithms and user-defined gates. +* a *physical* circuit, which is defined in terms of the *hardware qubits* of one particular backend, and contains only operations that this backend natively supports. You might also see this concept referred to as an *ISA circuit*. + +You convert from an abstract circuit to a physical circuit by using [Qiskit’s transpilation package](transpiler#qiskit-transpiler), of which the top-level access point is [`transpile()`](compiler#qiskit.compiler.transpile "qiskit.compiler.transpile"). + +In Qiskit, a quantum circuit is represented by the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") class. Below is an example of a quantum circuit that makes a three-qubit Greenberger–Horne–Zeilinger (GHZ) state defined as: $$ -|\psi\rangle = \left(|000\rangle+|111\rangle\right)/\sqrt{2} +|\psi\rangle = \left( |000\rangle + |111\rangle \right) / \sqrt{2} $$ ```python from qiskit import QuantumCircuit + # Create a circuit with a register of three qubits circ = QuantumCircuit(3) # H gate on qubit 0, putting this qubit in a superposition of |0> + |1>. @@ -44,72 +63,666 @@ circ.draw('mpl') ![../\_images/circuit-1.png](/images/api/qiskit/dev/circuit-1.png) -## Supplementary Information + -### Quantum Circuit with conditionals +## Circuit concepts and definitions -When building a quantum circuit, there can be interest in applying a certain gate only if a classical register has a specific value. This can be done with the [`InstructionSet.c_if()`](qiskit.circuit.InstructionSet#c_if "qiskit.circuit.InstructionSet.c_if") method. +There is a lot of specialized terminology around quantum circuits. Much of this is common in quantum-computing literature, while some is more specific to quantum software packages, and a small amount specific to Qiskit. This is an alphabetical listing of some of the important concepts as a quick reference, but does not go into detail of the foundational concepts. Consider using the [IBM Quantum Learning platform](https://learning.quantum.ibm.com/) if you want to start from the beginning. -In the following example, we start with a single-qubit circuit formed by only a Hadamard gate ([`HGate`](qiskit.circuit.library.HGate "qiskit.circuit.library.HGate")), in which we expect to get $|0\rangle$ and $|1\rangle$ with equal probability. +**abstract circuit** -```python -from qiskit import transpile, QuantumRegister, ClassicalRegister, QuantumCircuit -qr = QuantumRegister(1) -cr = ClassicalRegister(1) -qc = QuantumCircuit(qr, cr) -qc.h(0) -qc.measure(0, 0) -qc.draw('mpl') -``` +A *circuit* defined in terms of abstract mathematical operations and *virtual qubits*. This is typically how you think about quantum algorithms; an abstract circuit can be made up of completely arbitrary unitary operations, measurements, and potentially *real-time classical computation*, with no restrictions about which qubits can interact with each other. -![../\_images/circuit-2.png](/images/api/qiskit/dev/circuit-2.png) +You turn an abstract circuit into a *physical circuit* by using [Qiskit’s transpilation package](transpiler#qiskit-transpiler). + +**ancilla qubit** + +An extra qubit that is used to help implement operations on other qubits, but whose final state is not important for the program. + +**circuit** + +A computational routine the defines a single execution to be taken on a QPU. This can either be an *abstract circuit* or a *physical circuit*. + +**clbit** + +A Qiskit-specific abbreviation meaning a single classical bit of data. + +**gate** + +A *unitary operation* on one or more qubits. + +**hardware qubit** + +The representation of a single qubit on a particular *QPU*. A hardware qubit has some physical quantum-mechanical system backing it, such as superconducting circuits; unlike a *virtual qubit*, it has particular coupling constraints and only certain gates can be applied to certain groups of hardware qubits. + +Qiskit does not distinguish *logical qubits* from any individual *physical qubits* when talking about hardware qubits. A QPU may implement its hardware qubits as logical qubits, where each hardware qubit comprises many physical qubits that are controlled and error-corrected opaquely to Qiskit by the control electronics. More likely, for near-term applications, a QPU will be directly exposing its physical qubits as the hardware qubits for Qiskit to reason about. + +Both physical and logical qubits will have coupling constraints between them, only permit certain quantum operations on them, and have scheduling concerns between them. Qiskit abstracts these concerns together in the concept of hardware qubits. In the early days of quantum error correction, particular backends may let you access their qubit resources either as high-level logical qubits or as low-level physical qubits through Qiskit. + +**instruction set architecture (ISA)** + +The abstract model of which operations are available on which sets of *hardware qubits* on one particular *QPU*. For example, one QPU may allow $\sqrt X$ and $R_Z$ operations on all single hardware qubits, and $CX$ operations on certain pairs of hardware qubits. + +**logical qubit** + +A collection of several *physical qubits* that are controlled together by a QPU (from the user’s perspective) to apply real-time quantum error correction. A logical qubit is a type of *hardware qubit* for Qiskit. + +**measurement** + +The act of extracting one classical bit of a data from a single qubit state. This is an irreversible operation, and usually destroys entanglement and phase coherence between the target qubit and the rest of the system. + +**physical circuit** + +A *circuit* defined in terms of *hardware qubits* and only the quantum operations available in a particular *QPU’s* *ISA*. Physical circuits are tied to one particular QPU architecture, and will not run on other incompatible architectures. You may also hear this referred to as an *ISA circuit*. + +You typically get a physical circuit by using [Qiskit’s transpilation routines](transpiler#qiskit-transpiler) on an *abstract circuit* that you constructed. + +**physical qubit** + +A controllable two-level quantum system. This is literally one “physics” qubit, such as a transmon or the electronic state of a trapped ion. A QPU may expose this directly as its *hardware qubit*, or combine several physical qubits into a *logical qubit*. + +**quantum processing unit (QPU)** + +Analogous to a CPU in classical computing or a GPU in graphics processing, a QPU is the hardware that runs quantum operations on quantum data. You can always expect a QPU that uses the *circuit* model of computation to be able to perform some set of *gates*, and *measurement* operations. Depending on the particular technology, they also may be able to run some real-time classical computations as well, such as classical control flow and bitwise calculations on classical data. + +**qubit** + +The basic unit of quantum information. + +**real-time classical computation** + +Any classical computation that can happen within the execution of a single shot of a *circuit*, where the results of the classical computation can affect later execution of the circuit. The amount of real-time classical computation available with particular *QPU*s will vary significantly dependent on many factors, such as the controlling electronics and the qubit technology in use. You should consult your hardware vendor’s documentation for more information on this. + +**unitary operation** + +A reversible operation on a quantum state. All quantum *gates* are unitary operations (by definition). + +**virtual qubit** + +An abstract, mathematical *qubit* used to build an *abstract circuit*. Virtual qubits are how one typically thinks about quantum algorithms at a high level; we assume that all quantum gates are valid on all virtual qubits, and all virtual qubits are always connected to every other virtual qubit. + +When mapping to hardware, virtual qubits must be assigned to *hardware qubits*. This mapping need not be one-to-one. Typically, one virtual qubit will need to be swapped from one hardware qubit to another over the course of a circuit execution in order to satisfy coupling constraints of the underlying QPU. It is not strictly necessary for all virtual qubits used in a circuit to be mapped to a physical qubit at any given point in a *physical circuit*; it could be that a virtual qubit is measured (collapsing its state) and then never used again, so a new virtual qubit could take its place. Evaluating these conditions to map a virtual circuit to a physical circuit is the job of [Qiskit’s transpilation package](transpiler#qiskit-transpiler). + + + + + +## API overview of + + + +`qiskit.circuit` + +All objects here are described in more detail, and in their greater context in the following sections. This section provides an overview of the API elements documented here. + +The principal class is [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"), which has its own documentation page, including an in-depth section on building circuits. Quantum data and the simplest classical data are represented by “bits” and “registers”: + +* **[`Bit`](#qiskit.circuit.Bit "qiskit.circuit.Bit"), an atom of data** + + * [`Qubit`](#qiskit.circuit.Qubit "qiskit.circuit.Qubit") + * [`Clbit`](#qiskit.circuit.Clbit "qiskit.circuit.Clbit") + * [`AncillaQubit`](#qiskit.circuit.AncillaQubit "qiskit.circuit.AncillaQubit") + +* **[`Register`](#qiskit.circuit.Register "qiskit.circuit.Register"), a collection of bits** + + * [`QuantumRegister`](#qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") + * [`ClassicalRegister`](#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") + * [`AncillaRegister`](#qiskit.circuit.AncillaRegister "qiskit.circuit.AncillaRegister") + +Within a circuit, each complete [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction") is made up of an [`Operation`](qiskit.circuit.Operation "qiskit.circuit.Operation") (which might be an [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"), a [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"), or some other subclass) and the qubit and clbit operands. The core base classes here are: + +* [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction"), an operation and its operands + +* [`InstructionSet`](qiskit.circuit.InstructionSet "qiskit.circuit.InstructionSet"), a temporary handle to a slice of circuit data + +* **[`Operation`](qiskit.circuit.Operation "qiskit.circuit.Operation"), any abstract mathematical object or hardware instruction** + + * **[`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), a subclass with applied abstract modifiers** + + * [`InverseModifier`](#qiskit.circuit.InverseModifier "qiskit.circuit.InverseModifier") + * [`ControlModifier`](#qiskit.circuit.ControlModifier "qiskit.circuit.ControlModifier") + * [`PowerModifier`](#qiskit.circuit.PowerModifier "qiskit.circuit.PowerModifier") + +The most common concrete subclass of the minimal, abstract [`Operation`](qiskit.circuit.Operation "qiskit.circuit.Operation") interface is the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"). While [`Operation`](qiskit.circuit.Operation "qiskit.circuit.Operation") can include abstract mathematical objects, an [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") is something that could conceivably run directly on hardware. This is in turn subclassed by [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") and [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") that further add unitarity and controlled semantics on top: + +* [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"), representing a hardware-based instruction +* [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"), representing a hardware instruction that is unitary +* [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate"), representing a gate with control structure. + +Qiskit includes a large library of standard gates and circuits, which is documented in [`qiskit.circuit.library`](circuit_library#module-qiskit.circuit.library "qiskit.circuit.library"). Many of these are declared as Python-object singletons. The machinery for this is described in detail in [`qiskit.circuit.singleton`](circuit_singleton#module-qiskit.circuit.singleton "qiskit.circuit.singleton"), of which the main classes are each a singleton form of the standard instruction–gate hierarchy: + +* [`SingletonInstruction`](circuit_singleton#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") +* [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") +* [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") + +Some instructions are particularly special in that they affect the control flow or data flow of the circuit. The top-level ones are: + +* [`Barrier`](#qiskit.circuit.Barrier "qiskit.circuit.Barrier"), to mark parts of the circuit that should be optimized independently + +* [`Delay`](#qiskit.circuit.Delay "qiskit.circuit.Delay"), to insert a real-time wait period + +* [`Measure`](#qiskit.circuit.Measure "qiskit.circuit.Measure"), to measure a [`Qubit`](#qiskit.circuit.Qubit "qiskit.circuit.Qubit") into a [`Clbit`](#qiskit.circuit.Clbit "qiskit.circuit.Clbit") + +* [`Reset`](#qiskit.circuit.Reset "qiskit.circuit.Reset"), to irreversibly reset a qubit to the $\lvert0\rangle$ state + +* [`Store`](#qiskit.circuit.Store "qiskit.circuit.Store"), to write a real-time classical expression to a storage location + +* **[`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp"), which has specific subclasses:** + + * [`BreakLoopOp`](qiskit.circuit.BreakLoopOp "qiskit.circuit.BreakLoopOp"), to break out of the nearest containing loop + * [`ContinueLoopOp`](qiskit.circuit.ContinueLoopOp "qiskit.circuit.ContinueLoopOp"), to move immediately to the next iteration of the containing loop + * [`ForLoopOp`](qiskit.circuit.ForLoopOp "qiskit.circuit.ForLoopOp"), to loop over a fixed range of values + * [`IfElseOp`](qiskit.circuit.IfElseOp "qiskit.circuit.IfElseOp"), to conditionally enter one of two subcircuits + * [`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp"), to conditionally enter one of many subcicuits + * [`WhileLoopOp`](qiskit.circuit.WhileLoopOp "qiskit.circuit.WhileLoopOp"), to repeat a subcircuit until a condition is falsified. + +[Circuits can include classical expressions that are evaluated in real time](#circuit-repr-real-time-classical), while the QPU is executing a single shot of the circuit. These are primarily documented in the module documentation of [`qiskit.circuit.classical`](circuit_classical#module-qiskit.circuit.classical "qiskit.circuit.classical"). You might be particularly interested in the base classes (which are not exposed from the [`qiskit.circuit`](#module-qiskit.circuit "qiskit.circuit") root): + +* [`Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var"), a typed classical storage location in a circuit +* [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr"), a real-time-evaluated expression +* [`Type`](circuit_classical#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.Type"), the classical type of an expression. + +In addition to this real-time expression evaluation, which is limited by classical hardware representations of data, Qiskit has the concept of “compile-time” parametrization, which is done in abstract symbolic algebra. These are typically used to represent gate angles in high-level algorithms that might want to perform numerical derivatives, but they are an older part of Qiskit than the real-time evaluation, so are still used in some places to do general parametrization. The main related classes are: + +* [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter"), the atom of compile-time expressions +* [`ParameterExpression`](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression"), a symbolic calculation on parameters +* [`ParameterVector`](qiskit.circuit.ParameterVector "qiskit.circuit.ParameterVector"), a convenience collection of many [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter")s + +The [`qiskit.circuit`](#module-qiskit.circuit "qiskit.circuit") module also exposes some calculation classes that work with circuits to assist compilation workflows. These include: + +* [`EquivalenceLibrary`](qiskit.circuit.EquivalenceLibrary "qiskit.circuit.EquivalenceLibrary"), a database of decomposition relations between gates and circuits +* [`SessionEquivalenceLibrary`](#qiskit.circuit.SessionEquivalenceLibrary "qiskit.circuit.SessionEquivalenceLibrary"), a mutable instance of [`EquivalenceLibrary`](qiskit.circuit.EquivalenceLibrary "qiskit.circuit.EquivalenceLibrary") which is used by default by the compiler’s [`BasisTranslator`](qiskit.transpiler.passes.BasisTranslator "qiskit.transpiler.passes.BasisTranslator"). + +There is also a utility for generating random circuits: + +* [`random.random_circuit()`](#qiskit.circuit.random.random_circuit "qiskit.circuit.random.random_circuit") + +Finally, the circuit module has its own exception class, to indicate when things went wrong in circuit-specific manners: + +* [`CircuitError`](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") + + + +## Representation of circuits in Qiskit + +The main user-facing class for representing circuits is [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). This can be either an abstract circuit or a physical circuit. There is much more information about the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") class itself and the multitude of available methods on it in its class documentation. + +| | | +| ---------------------------------------------------------------------------------------------------------------------- | --------------------- | +| [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")(\*regs\[, name, global\_phase, ...]) | Create a new circuit. | + +Internally, a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") contains the qubits, classical bits, compile-time parameters, real-time variables, and other tracking information about the data it acts on and how it is parametrized. It then contains a sequence of [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction")s, which contain the particular operation (gate, measurement, etc) and its operands (the qubits and classical bits). + +### Bits and registers + +Qubits and classical bits are represented by a shared base [`Bit`](#qiskit.circuit.Bit "qiskit.circuit.Bit") type, which is just intended to be a “type tag”; the classes have no behavior other than being immutable objects: + + + Implement a generic bit. + + + This class should not be instantiated directly. This is just a superclass for [`Clbit`](#qiskit.circuit.Clbit "qiskit.circuit.Clbit") and [`Qubit`](#qiskit.circuit.Qubit "qiskit.circuit.Qubit"). + + + Create a new generic bit. + + + + Bases: [`Bit`](#qiskit.circuit.Bit "qiskit.circuit.bit.Bit") + + Implement a quantum bit. + + + + Bases: [`Bit`](#qiskit.circuit.Bit "qiskit.circuit.bit.Bit") + + Implement a classical bit. + + +Qubits and clbits are instantiated by users with no arguments, such as by `Qubit()`. Bits compare equal if they are the same Python object, or if they were both created by a register of the same name and size, and they refer to the same index within that register. There is also a special type tag for “ancilla” qubits, but this is little used in the current state of Qiskit: + + + Bases: [`Qubit`](#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") + + A qubit used as ancillary qubit. + + +A collection bits of the same type can be encapsulated in a register of the matching type. The base functionality is in a base class that is not directly instantiated: + + + Implement a generic register. + + + This class should not be instantiated directly. This is just a superclass for [`ClassicalRegister`](#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and [`QuantumRegister`](#qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister"). + + + Create a new generic register. + + Either the `size` or the `bits` argument must be provided. If `size` is not None, the register will be pre-populated with bits of the correct type. + + **Parameters** + + * **size** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Optional. The number of bits to include in the register. + * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – Optional. The name of the register. If not provided, a unique name will be auto-generated from the register type. + * **bits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Bit*](#qiskit.circuit.Bit "qiskit.circuit.Bit")*]*) – Optional. A list of Bit() instances to be used to populate the register. + + **Raises** + + * [**CircuitError**](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if both the `size` and `bits` arguments are provided, or if neither are. + * [**CircuitError**](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `size` is not valid. + * [**CircuitError**](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `name` is not a valid name according to the OpenQASM spec. + * [**CircuitError**](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained duplicated bits. + * [**CircuitError**](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained bits of an incorrect type. + + ### index + + + Find the index of the provided bit within this register. + + + + Get the register name. + + + + Get the register size. + + + +Each of the defined bit subtypes has an associated register, which have the same constructor signatures, methods and properties as the base class: + + + Bases: [`Register`](#qiskit.circuit.Register "qiskit.circuit.register.Register") + + Implement a quantum register. + + + + Bases: [`Register`](#qiskit.circuit.Register "qiskit.circuit.register.Register") + + Implement a classical register. + + + + Bases: [`QuantumRegister`](#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") + + Implement an ancilla register. + + +A common way to instantiate several bits at once is to create a register, such as by `QuantumRegister("my_qreg", 5)`. This has the advantage that you can give that collection of bits a name, which will appear during circuit visualizations ([`QuantumCircuit.draw()`](qiskit.circuit.QuantumCircuit#draw "qiskit.circuit.QuantumCircuit.draw")) and exports to interchange languages (see [`qasm2`](qasm2#module-qiskit.qasm2 "qiskit.qasm2") and [`qasm3`](qasm3#module-qiskit.qasm3 "qiskit.qasm3")). You can also pass a name and a list of pre-constructed bits, but this creates an “aliasing register”, which are very poorly supported on hardware. + +Circuits track registers, but registers themselves impart almost no behavioral differences on circuits. The only exception is that [`ClassicalRegister`](#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")s can be implicitly cast to unsigned integers for use in conditional comparisons of [control flow operations](#circuit-control-flow). + +Classical registers and bits were the original way of representing classical data in Qiskit, and remain the most supported currently. Longer term, the data model is moving towards a more complete and strongly typed representation of a range of classical data (see [Real-time classical computation](#circuit-repr-real-time-classical)), but you will still very commonly use classical bits in current Qiskit. + +### Instruction contexts + +The scalar type of the [`QuantumCircuit.data`](qiskit.circuit.QuantumCircuit#data "qiskit.circuit.QuantumCircuit.data") sequence is the “instruction context” object, [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction"). This is essentially just a data class that contains a representation of what is to be done (its [`operation`](qiskit.circuit.CircuitInstruction#operation "qiskit.circuit.CircuitInstruction.operation")), and the data it acts on (the [`qubits`](qiskit.circuit.CircuitInstruction#qubits "qiskit.circuit.CircuitInstruction.qubits") and [`clbits`](qiskit.circuit.CircuitInstruction#clbits "qiskit.circuit.CircuitInstruction.clbits")). + +| | | +| --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction") | A single instruction in a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"), comprised of the `operation` and various operands. | + +Programmatically, this class is actually implemented in Rust and is a constructed handle to internal data within Rust space. Mutations to instances of this class will not be reflected in the circuit. In general, you cannot mutate instruction contexts that are already in the circuit directly; the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") interface is designed for storing and building circuits, while the [transpiler and its passes](transpiler#qiskit-transpiler), and its intermediate [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") representation, are where you should look for an interface to mutate circuits. + +The [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") methods that add instructions to circuits (such as [`append()`](qiskit.circuit.QuantumCircuit#append "qiskit.circuit.QuantumCircuit.append"), and all the helper standard-gate methods) return an [`InstructionSet`](qiskit.circuit.InstructionSet "qiskit.circuit.InstructionSet"), which is a handle to several [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction")s simultaneously. + +| | | +| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------- | +| [`InstructionSet`](qiskit.circuit.InstructionSet "qiskit.circuit.InstructionSet")(\*\[, resource\_requester]) | Instruction collection, and their contexts. | + +This [`InstructionSet`](qiskit.circuit.InstructionSet "qiskit.circuit.InstructionSet") is now little used in Qiskit. It provides a very minimal set of methods to perform post-append mutations on instructions (which *will* be propagated to the circuit), but these are now discouraged and you should use the alternatives noted in those methods. + +### Operations, instructions and gates + +Within a [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction"), the minimal interface that any operation must fulfill is [`Operation`](qiskit.circuit.Operation "qiskit.circuit.Operation"). This is a *very* high level view, and only usable for abstract circuits. The main purpose of treating operations as [`Operation`](qiskit.circuit.Operation "qiskit.circuit.Operation") is to allow arbitrary mathematical objects (such as [`quantum_info.Operator`](qiskit.quantum_info.Operator "qiskit.quantum_info.Operator")) to be added to abstract circuits directly. + +| | | +| -------------------------------------------------------------------- | ---------------------------- | +| [`Operation`](qiskit.circuit.Operation "qiskit.circuit.Operation")() | Quantum operation interface. | + +Most operations, including all operations on physical circuits, are instances of the more concretely defined [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"). This represents any instruction that some QPU might be able to carry out natively, such as [`Measure`](#qiskit.circuit.Measure "qiskit.circuit.Measure"). [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") need not be unitary (much as [`Measure`](#qiskit.circuit.Measure "qiskit.circuit.Measure") isn’t); an instruction is specifically unitary if it is a [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). + +| | | +| ---------------------------------------------------------------------------------------------------------------- | ---------------------------- | +| [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction")(name, num\_qubits, num\_clbits, params) | Generic quantum instruction. | + +[`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction")s can be near arbitrary, provided they only act on [`Qubit`](#qiskit.circuit.Qubit "qiskit.circuit.Qubit")s and [`Clbit`](#qiskit.circuit.Clbit "qiskit.circuit.Clbit")s, and are parametrized by their [`params`](qiskit.circuit.Instruction#params "qiskit.circuit.Instruction.params"); they should not attempt to “close over” outer circuit registers, or use hidden parameters inside themselves. [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction")s can be related to other circuits to provide a decompositions by using their [`Instruction.definition`](qiskit.circuit.Instruction#definition "qiskit.circuit.Instruction.definition") attribute, which provides a local, one-off decomposition. This can be in whatever basis set of operations is most convenient to you, as long as the definitions of all contained gates have some topological order; that is, you cannot use a gate in a definition it its own definition depends on the parent. If the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") should be considered entirely opaque to optimizers, its [`definition`](qiskit.circuit.Instruction#definition "qiskit.circuit.Instruction.definition") can be `None`. See [Creating custom instructions](#circuit-custom-gates) for more detail. + +The [`params`](qiskit.circuit.Instruction#params "qiskit.circuit.Instruction.params") of an instruction can technically be arbitrary, but in general you should attempt to stick to parametrizations in terms of real numbers, wherever possible. Qiskit itself breaks this rule in many places, and you will find all sorts of unusual types in [`Instruction.params`](qiskit.circuit.Instruction#params "qiskit.circuit.Instruction.params") fields, but these are an annoying source of bugs because they often imply the need for type-aware special casing. If your instruction is parametrized in terms of angles, you will be able to reliably use [compile-time parametrization in it](#circuit-compile-time-parameters), and it will integrate well with [`QuantumCircuit.assign_parameters()`](qiskit.circuit.QuantumCircuit#assign_parameters "qiskit.circuit.QuantumCircuit.assign_parameters"). + +While [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") is not necessarily unitary, its subclass [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") implies unitarity, and adds [`to_matrix()`](qiskit.circuit.Gate#to_matrix "qiskit.circuit.Gate.to_matrix") and [`control()`](qiskit.circuit.Gate#control "qiskit.circuit.Gate.control") methods to all the methods inherited from [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"). + +| | | +| --------------------------------------------------------------------------------------------- | ------------- | +| [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate")(name, num\_qubits, params\[, label, ...]) | Unitary gate. | + +[`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") inherits all the methods for [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") and all the same considerations about its [`params`](qiskit.circuit.Instruction#params "qiskit.circuit.Instruction.params") and [`definition`](qiskit.circuit.Instruction#definition "qiskit.circuit.Instruction.definition") field, except of course that [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate")s cannot act on any classical resources. + +[`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") instances can (and should) have a base [`definition`](qiskit.circuit.Instruction#definition "qiskit.circuit.Instruction.definition"), but you can also specify several different decompositions in different bases by using an [`EquivalenceLibrary`](qiskit.circuit.EquivalenceLibrary "qiskit.circuit.EquivalenceLibrary"). + +Subclassing [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"), Qiskit has a special [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") class as well. This class is the base of many standard-library gates that are controlled (such as `CXGate`), which is where you are most likely to encounter it: + +| | | +| -------------------------------------------------------------------------------------------------------------------- | ------------------------ | +| [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")(name, num\_qubits, params\[, ...]) | Controlled unitary gate. | + +Each of [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"), [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") and [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") has a corresponding singleton type, built using the machinery described in [`qiskit.circuit.singleton`](circuit_singleton#module-qiskit.circuit.singleton "qiskit.circuit.singleton"). The module-level documentation contains full details, along with descriptions of [`SingletonInstruction`](circuit_singleton#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction"), [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") and [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate"). From a user’s perspective, little changes based on whether the base class is a singleton or not; the intention always remains that you should call [`to_mutable()`](qiskit.circuit.Instruction#to_mutable "qiskit.circuit.Instruction.to_mutable") first if you need to get a safe-to-mutate owned copy of an instruction (you cannot assume that an arbitrary instruction is mutable), and while direct [`type`](https://docs.python.org/3/library/functions.html#type "(in Python v3.12)") inspection is discouraged, if you do need it, the reliable way to find the “base” type of a potentially singleton instruction is to use [`base_class`](qiskit.circuit.Instruction#base_class "qiskit.circuit.Instruction.base_class"). + +[`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") uses the same mechanisms as [subclassing gates](#circuit-custom-gates) to define a fixed, lazy synthesis for itself. This is naturally not hardware-aware, and harder to hook into the synthesis routines of the compiler, but works better as a concrete [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") that could potentially be run natively on hardware. For cases where synthesis and abstract optimization is more important, Qiskit offers a composable class called [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), which tracks “gate modifiers” (of which [`ControlModifier`](#qiskit.circuit.ControlModifier "qiskit.circuit.ControlModifier") is one) to apply to the inner [`base_op`](qiskit.circuit.AnnotatedOperation#base_op "qiskit.circuit.AnnotatedOperation.base_op"). + +| | | +| ------------------------------------------------------------------------------------------------------------------ | -------------------- | +| [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation")(base\_op, modifiers) | Annotated operation. | + +The available modifiers for [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") are: + + + Inverse modifier: specifies that the operation is inverted. + + + + Control modifier: specifies that the operation is controlled by `num_ctrl_qubits` and has control state `ctrl_state`. + + + + Power modifier: specifies that the operation is raised to the power `power`. + + +For information on how to create custom gates and instructions, including how to build one-off objects, and re-usable parametric gates via subclassing, see [Creating custom instructions](#circuit-custom-gates) below. The Qiskit circuit library in [`qiskit.circuit.library`](circuit_library#module-qiskit.circuit.library "qiskit.circuit.library") contains many predefined gates and circuits for you to use. + +### Built-in special instructions + +Qiskit contains a few [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") classes that are in some ways “special”. These typically have special handling in circuit code, in the transpiler, or the models of hardware. These are all generally instructions you might already be familiar with. + +Measurements in Qiskit are of a single [`Qubit`](#qiskit.circuit.Qubit "qiskit.circuit.Qubit") into a single [`Clbit`](#qiskit.circuit.Clbit "qiskit.circuit.Clbit"). These are the two that the instruction is applied to. Measurements are in the computational basis. + + + Bases: [`SingletonInstruction`](circuit_singleton#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") + + Quantum measurement in the computational basis. + + **Parameters** + + **label** – optional string label for this instruction. + + +Related to measurements, there is a [`Reset`](#qiskit.circuit.Reset "qiskit.circuit.Reset") operation, which produces no classical data but instructs hardware to return the qubit to the $\lvert0\rangle$ state. This is assumed to happen incoherently and to collapse any entanglement. + + + Bases: [`SingletonInstruction`](circuit_singleton#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") + + Incoherently reset a qubit to the $\lvert0\rangle$ state. + + **Parameters** + + **label** – optional string label of this instruction. + + +Hardware can be instructed to apply a real-time idle period on a given qubit. A scheduled circuit (see [`qiskit.transpiler`](transpiler#module-qiskit.transpiler "qiskit.transpiler")) will include all the idle times on qubits explicitly in terms of this [`Delay`](#qiskit.circuit.Delay "qiskit.circuit.Delay"). + + + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") + + Do nothing and just delay/wait/idle for a specified duration. + + **Parameters** + + * **duration** – the length of time of the duration. Given in units of `unit`. + * **unit** – the unit of the duration. Must be `"dt"` or an SI-prefixed seconds unit. + + +The [`Barrier`](#qiskit.circuit.Barrier "qiskit.circuit.Barrier") instruction can span an arbitrary number of qubits and clbits, and is a no-op in hardware. During transpilation and optimization, however, it blocks any optimizations from “crossing” the barrier; that is, in: ```python -from qiskit.providers.basic_provider import BasicSimulator -backend = BasicSimulator() -tqc = transpile(qc, backend) -counts = backend.run(tqc).result().get_counts() +from qiskit.circuit import QuantumCircuit -print(counts) +qc = QuantumCircuit(1) +qc.x(0) +qc.barrier() +qc.x(0) ``` +it is forbidden for the optimizer to cancel out the two $X$ instructions. + + + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") + + A directive for circuit compilation to separate pieces of a circuit so that any optimizations or re-writes are constrained to only act between barriers. + + This will also appear in visualizations as a visual marker. + + **Parameters** + + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – the number of qubits for the barrier. + * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – the optional label of this barrier. + + +The [`Store`](#qiskit.circuit.Store "qiskit.circuit.Store") instruction is particularly special, in that it allows writing the result of a [real-time classical computation expression](#circuit-repr-real-time-classical) (an [`expr.Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) in a local classical variable (a [`expr.Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var")). It takes *neither* [`Qubit`](#qiskit.circuit.Qubit "qiskit.circuit.Qubit") nor [`Clbit`](#qiskit.circuit.Clbit "qiskit.circuit.Clbit") operands, but has an explicit [`lvalue`](#qiskit.circuit.Store.lvalue "qiskit.circuit.Store.lvalue") and [`rvalue`](#qiskit.circuit.Store.rvalue "qiskit.circuit.Store.rvalue"). + + + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") + + A manual storage of some classical value to a classical memory location. + + This is a low-level primitive of the classical-expression handling (similar to how [`Measure`](#qiskit.circuit.Measure "qiskit.circuit.Measure") is a primitive for quantum measurement), and is not safe for subclassing. + + **Parameters** + + * **lvalue** ([*expr.Expr*](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – the memory location being stored into. + * **rvalue** ([*expr.Expr*](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – the expression result being stored. + + + Get the l-value [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") node that is being stored to. + + + + Get the r-value [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") node that is being written into the l-value. + + + + + +### Real-time classical computation + + + The primary documentation for real-time classical computation is in the module-level documentation of [`qiskit.circuit.classical`](circuit_classical#module-qiskit.circuit.classical "qiskit.circuit.classical"). + + You might also want to read about the circuit methods for working with real-time variables on the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") class page. + + +Qiskit has rudimentary low-level support for representing real-time classical computations, which happen during the QPU execution and affect the results. We are still relatively early into hardware support for these concepts as well, so beware that you will need to work closely with your hardware provider’s documentation to get the best use out of any real-time classical computation. + +These real-time calculations are represented by the expression and type system in [`qiskit.circuit.classical`](circuit_classical#module-qiskit.circuit.classical "qiskit.circuit.classical"). At a high level, all real-time expressions are represented by an [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") node, which is part of an expression “tree” representation, which has a well-defined `Type` associated with it at every level. See the module-level documentation for much more detail on the internal representations of these classes. + +The result of a real-time [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") can be used directly in certain places. Currently this is limited to conditions of [`IfElseOp`](qiskit.circuit.IfElseOp "qiskit.circuit.IfElseOp") and [`WhileLoopOp`](qiskit.circuit.WhileLoopOp "qiskit.circuit.WhileLoopOp"), and the target of [`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp"). The result can also be stored in a typed classical storage location, using the [`Store`](#qiskit.circuit.Store "qiskit.circuit.Store") instruction (or its [`QuantumCircuit.store()`](qiskit.circuit.QuantumCircuit#store "qiskit.circuit.QuantumCircuit.store") constructor), backed by a [`expr.Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node. + +A circuit can contain manual classical storage locations, represented internally by the [`Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node of the [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") tree. These have an attached classical type (like any other expression). These can either be declared and initialized within each execution of the circuit ([`add_var()`](qiskit.circuit.QuantumCircuit#add_var "qiskit.circuit.QuantumCircuit.add_var")), or be inputs to the circuit ([`add_input()`](qiskit.circuit.QuantumCircuit#add_input "qiskit.circuit.QuantumCircuit.add_input")). + + + +### Compile-time parametrization + +Various parametric [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") instances in Qiskit can be parametrized in ways that are designed to be resolved at compile time. These are characterized by the use of the [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter") and [`ParameterExpression`](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression") classes. + +| | | +| ------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- | +| [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter")(name, \*\[, uuid]) | A compile-time symbolic parameter. | +| [`ParameterExpression`](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")(symbol\_map, expr) | ParameterExpression class to enable creating expressions of Parameters. | + +The main way that this differs from the `expr.Var` variables used in real-time classical computation is that [`ParameterExpression`](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression") is a symbolic representation of a mathematical expression. The semantics of the expression are those of regular mathematics over the continuous real numbers (and, in limited cases, over the complex numbers). In contrast, [`Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") is a handle to a variable stored on a classical computer, such as a floating-point value or an fixed-width integer, which are always discrete. + +In other words, you can expect [`ParameterExpression`](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression") to do symbolic simplifications that are valid in mathematics, such as simplifying $(x + y - x) / y \to 1$. Such a simplification is not valid in floating-point arithmetic, and [`expr.Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") will not do this. + +The “compile-time” part of these parameters means that you typically will want to “assign” values to the parameters before sending the circuit for execution. These parameters can typically be used anywhere that expects a mathematical angle (like a rotation gate’s parameters), with the caveat that hardware will usually require them to be assigned to a proper classically typed value before execution. You can do this assignment using [`QuantumCircuit.assign_parameters()`](qiskit.circuit.QuantumCircuit#assign_parameters "qiskit.circuit.QuantumCircuit.assign_parameters"). + +You may want to use many parameters that are related to each other. To make this easier (and to avoid you needing to come up with many names), you can use the convenience constructor [`ParameterVector`](qiskit.circuit.ParameterVector "qiskit.circuit.ParameterVector"). The elements of the vector are all valid [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter") instances. + +| | | +| ----------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- | +| [`ParameterVector`](qiskit.circuit.ParameterVector "qiskit.circuit.ParameterVector")(name\[, length]) | ParameterVector class to quickly generate lists of parameters. | + + + +### Control flow in circuits + +Within [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"), classical control flow is represented by specific [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction")s, which are subclasses of [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp"). + +| | | +| -------------------------------------------------------------------------------------------------- | ---------------------------------------------------------- | +| [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp")(\*args, \*\*kwargs) | Abstract class to encapsulate all control flow operations. | + +These control-flow operations ([`IfElseOp`](qiskit.circuit.IfElseOp "qiskit.circuit.IfElseOp"), [`WhileLoopOp`](qiskit.circuit.WhileLoopOp "qiskit.circuit.WhileLoopOp"), [`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp") and [`ForLoopOp`](qiskit.circuit.ForLoopOp "qiskit.circuit.ForLoopOp")) all have specific state that defines the branching conditions and strategies, but contain all the different subcircuit blocks that might be entered in their [`blocks`](qiskit.circuit.ControlFlowOp#blocks "qiskit.circuit.ControlFlowOp.blocks") property. + +| | | +| ----------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [`IfElseOp`](qiskit.circuit.IfElseOp "qiskit.circuit.IfElseOp")(condition, true\_body\[, false\_body, ...]) | A circuit operation which executes a program (`true_body`) if a provided condition (`condition`) evaluates to true, and optionally evaluates another program (`false_body`) otherwise. | +| [`WhileLoopOp`](qiskit.circuit.WhileLoopOp "qiskit.circuit.WhileLoopOp")(condition, body\[, label]) | A circuit operation which repeatedly executes a subcircuit (`body`) until a condition (`condition`) evaluates as False. | +| [`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp")(target, cases, \*\[, label]) | A circuit operation that executes one particular circuit block based on matching a given `target` against an ordered list of `values`. | +| [`ForLoopOp`](qiskit.circuit.ForLoopOp "qiskit.circuit.ForLoopOp")(indexset, loop\_parameter, body\[, ...]) | A circuit operation which repeatedly executes a subcircuit (`body`) parameterized by a parameter `loop_parameter` through the set of integer values provided in `indexset`. | + +The [`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp") also understands a special value: + +**qiskit.circuit.CASE\_DEFAULT *= \*** + +A special object that represents the “default” case of a switch statement. If you use this as a case target, it must be the last case, and will match anything that wasn’t already matched. When using the builder interface of [`QuantumCircuit.switch()`](qiskit.circuit.QuantumCircuit#switch "qiskit.circuit.QuantumCircuit.switch"), this can also be accessed as the `DEFAULT` attribute of the bound case-builder object. + +In addition to the block-structure control-flow operations, there are also two special instructions that affect the flow of control when within loops. These correspond to typical uses of the `break` and `continue` statements in classical programming languages. + +| | | +| --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | +| [`BreakLoopOp`](qiskit.circuit.BreakLoopOp "qiskit.circuit.BreakLoopOp")(num\_qubits, num\_clbits\[, label]) | A circuit operation which, when encountered, jumps to the end of the nearest enclosing loop. | +| [`ContinueLoopOp`](qiskit.circuit.ContinueLoopOp "qiskit.circuit.ContinueLoopOp")(num\_qubits, num\_clbits\[, label]) | A circuit operation which, when encountered, moves to the next iteration of the nearest enclosing loop. | + + + The classes representations are documented here, but please note that manually constructing these classes is a low-level operation that we do not expect users to need to do frequently. + + +Since [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") subclasses are also [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") subclasses, this means that the way they are stored in [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction") instances has them “applied” to a sequence of qubits and clbits in its [`qubits`](qiskit.circuit.CircuitInstruction#qubits "qiskit.circuit.CircuitInstruction.qubits") and [`clbits`](qiskit.circuit.CircuitInstruction#clbits "qiskit.circuit.CircuitInstruction.clbits") attributes. This can lead to subtle data-coherence problems: the [`Qubit`](#qiskit.circuit.Qubit "qiskit.circuit.Qubit") and [`Clbit`](#qiskit.circuit.Clbit "qiskit.circuit.Clbit") objects used inside the subcircuit blocks of the control-flow ops will not necessarily be identical to the corresponding objects in the [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction"). Any code that consumes control-flow operations in Qiskit needs to be aware of this; within a subcircuit, you should treat `subcircuit.qubits[i]` as if it were really `outer_instruction.qubits[i]`, and so on. You can generate an easy lookup table for this by doing: + ```python -{'0': 524, '1': 500} +cf_instruction: CircuitInstruction = ... +cf_operation: ControlFlowOp = cf_instruction.operation +for block in blocks: + # Mappings of "inner" qubits/clbits to the outer ones. + qubit_map = dict(zip(block.qubits, cf_instruction.qubits)) + clbit_map = dict(zip(block.clbits, cf_instruction.clbits)) + + # ... do something with `block` ... ``` -Now, we add an [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.library.XGate") only if the value of the [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") is 0. That way, if the state is $|0\rangle$, it will be changed to $|1\rangle$ and if the state is $|1\rangle$, it will not be changed at all, so the final state will always be $|1\rangle$. +Remember that you will need to propagate this information if you recurse into subblocks of control-flow operations. -```python -from qiskit import transpile, QuantumRegister, ClassicalRegister, QuantumCircuit +All the subcircuit blocks in a [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") are required to contain the same numbers of [`Qubit`](#qiskit.circuit.Qubit "qiskit.circuit.Qubit")s and [`Clbit`](#qiskit.circuit.Clbit "qiskit.circuit.Clbit")s, referring to the same outer bits in the same order, such that the `zip` loop given in the code block above works. The inner-circuit [`Bit`](#qiskit.circuit.Bit "qiskit.circuit.Bit") objects do not need to be literally the same objects. When using the control-flow builder interface (which, it cannot be stressed enough, is *highly* recommended for users), the builders will arrange that the inner bit objects *are* identical to the outer bit objects; the `qubit_map` in the code block above will always be a mapping `{x: x}`, but if you are consuming the blocks, you should be prepared for the case that the mapping is required. -qr = QuantumRegister(1) -cr = ClassicalRegister(1) -qc = QuantumCircuit(qr, cr) -qc.h(0) -qc.measure(0, 0) +Any [`ClassicalRegister`](#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")s used in a control-flow subcircuit must also be present in all containing blocks (*i.e.* any containing control-flow operations, and the outermost circuit), and all blocks in the same [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") need to contain the same registers. Again, the builder interface will arrange for this to be the case (or produce an eager error if they cannot). -qc.x(0).c_if(cr, 0) -qc.measure(0, 0) +When the low-level construction is being used the inner [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") blocks must manually close over any outer-scope [real-time classical computation variables](#circuit-repr-real-time-classical) that they use. This is marked by these being in the [`iter_captured_vars()`](qiskit.circuit.QuantumCircuit#iter_captured_vars "qiskit.circuit.QuantumCircuit.iter_captured_vars") iterator for that block. Libraries constructing these blocks manually will need to track these captures when building control-flow circuit blocks and add them to the block using [`add_capture()`](qiskit.circuit.QuantumCircuit#add_capture "qiskit.circuit.QuantumCircuit.add_capture") (or the `captures` constructor argument), but user code will typically use the control-flow builder interface, which handles this automatically. -qc.draw('mpl') -``` + -![../\_images/circuit-3.png](/images/api/qiskit/dev/circuit-3.png) +## Creating custom instructions -```python -from qiskit.providers.basic_provider import BasicSimulator -backend = BasicSimulator() -tqc = transpile(qc, backend) -counts = backend.run(tqc).result().get_counts() +If you wish to create simple one-off instructions or gates that will be added to a circuit, and the blocks are just being used for visualization or grouping purposes, the easiest way to create a custom instruction or gate is simply to build its definition as a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"), and then use its [`to_instruction()`](qiskit.circuit.QuantumCircuit#to_instruction "qiskit.circuit.QuantumCircuit.to_instruction") or [`to_gate()`](qiskit.circuit.QuantumCircuit#to_gate "qiskit.circuit.QuantumCircuit.to_gate") method as appropriate. The results can be given directly to [`QuantumCircuit.append()`](qiskit.circuit.QuantumCircuit#append "qiskit.circuit.QuantumCircuit.append") on the larger circuit. These methods will create base [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") or [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") instances whose [`definition`](qiskit.circuit.Instruction#definition "qiskit.circuit.Instruction.definition") attribute is the circuit as supplied, meaning it will automatically be accessible to the transpiler, and to other Qiskit functions that attempt to decompose circuits. + +Note that standalone instructions and gates should act only on qubits and clbits; instructions that need to use complex control-flow will need to be inlined onto the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") using [`compose()`](qiskit.circuit.QuantumCircuit#compose "qiskit.circuit.QuantumCircuit.compose"). + +### Creating instruction subclasses + +The base classes [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"), [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") and [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") are all designed to be safe to subclass, and have hook points for subclasses to implement. If your custom gate is parameterless and stateless, you may also want to derive from the corresponding singleton class in [`qiskit.circuit.singleton`](circuit_singleton#module-qiskit.circuit.singleton "qiskit.circuit.singleton"), such as `SingletonGate`. You should consult the documentation in [`qiskit.circuit.singleton`](circuit_singleton#module-qiskit.circuit.singleton "qiskit.circuit.singleton") for additional methods and hook points for the singleton machinery. + +Subclasses should typically define a default constructor that calls the :class\`super\` constructor with the correct arguments for your instruction. It is permissible to have extra state in the class, but your subclasses will most reliably integrate with the rest of the Qiskit machinery if you depend only on your [`Instruction.params`](qiskit.circuit.Instruction#params "qiskit.circuit.Instruction.params"), and these parameters are purely gate angles. + +Subclasses of [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") (or one of its subclasses) should implement the private [`Instruction._define()`](#qiskit.circuit.Instruction._define "qiskit.circuit.Instruction._define") method, which lazily populates the hidden `_definition` cache that backs the public [`definition`](qiskit.circuit.Instruction#definition "qiskit.circuit.Instruction.definition") method. + +### \_define + + + Populate the cached `_definition` field of this [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"). + + Subclasses should implement this method to provide lazy construction of their public [`definition`](qiskit.circuit.Instruction#definition "qiskit.circuit.Instruction.definition") attribute. A subclass can use its [`params`](qiskit.circuit.Instruction#params "qiskit.circuit.Instruction.params") at the time of the call. The method should populate `_definition` with a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") and not return a value. + + +In subclasses of [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate"), the [`_define()`](#qiskit.circuit.Instruction._define "qiskit.circuit.Instruction._define") method should implement the decomposition only for the all-ones control state. The [`ControlledGate.definition`](qiskit.circuit.Instruction#definition "qiskit.circuit.Instruction.definition") machinery will modify this to handle the actual control state. -print(counts) +If the subclass is using the singleton machinery, beware that [`_define()`](#qiskit.circuit.Instruction._define "qiskit.circuit.Instruction._define") will be called eagerly immediately after the class-body statement has been executed, in order to produce the definition object for the canonical singleton object. This means that your definition must only use gates that are already defined; if you are writing a library with many singleton gates, you will have to order your files and imports to ensure that this is possible. + +Subclasses of [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") will also likely wish to override [the Numpy array-protocol instance method](https://numpy.org/devdocs/user/basics.interoperability.html#the-array-method), `__array__`. This is used by [`Gate.to_matrix()`](qiskit.circuit.Gate#to_matrix "qiskit.circuit.Gate.to_matrix"), and has the signature: + +### array\_\_ + + + Return a Numpy array representing the gate. This can use the gate’s `params` field, and may assume that these are numeric values (assuming the subclass expects that) and not [compile-time parameters](#circuit-compile-time-parameters). + + For greatest efficiency, the returned array should default to a dtype of [`complex`](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)"). + + +If your custom subclass has natural representations of its controlled or inverse forms, you may also wish to override the [`inverse()`](qiskit.circuit.Instruction#inverse "qiskit.circuit.Instruction.inverse") and [`control()`](qiskit.circuit.Gate#control "qiskit.circuit.Gate.control") methods. + +As an example of defining a custom $R_{xz}$ gate; that is, a single-angle rotation about the $XZ$ axis. This is essentially `RZXGate`, if the qubits were the other way around, so we will write our definition in terms of that. We are parametric, so cannot be a singleton, but we are unitary, so should be a [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"): + +```python +import math +import numpy as np +from qiskit.circuit import Gate, QuantumCircuit + +class RXZGate(Gate): + def __init__(self, theta): + # Initialize with our name, number of qubits and parameters. + super().__init__("rxz", 2, [theta]) + + def _define(self): + # Our base definition is an RZXGate, applied "backwards". + defn = QuantumCircuit(2) + defn.rzx(1, 0) + self._definition = defn + + def inverse(self, annotated = False): + # We have an efficient representation of our inverse, + # so we'll override this method. + return RXZGate(-self.params[0]) + + def power(self, exponent: float): + # Also we have an efficient representation of power. + return RXZGate(exponent * self.params[0]) + + def __array__(self, dtype=None): + cos = math.cos(0.5 * self.params[0]) + isin = 1j * math.sin(0.5 * self.params[0]) + return np.array([ + [cos, -isin, 0, 0], + [-isin, cos, 0, 0], + [0, 0, cos, isin], + [0, 0, isin, cos], + ], dtype=dtype) ``` +In this example, we defined a base definition in terms of `RZXGate`, but to enable faster decompositions to a range of bases, we might want to add some more equivalences to [`SessionEquivalenceLibrary`](#qiskit.circuit.SessionEquivalenceLibrary "qiskit.circuit.SessionEquivalenceLibrary"). Note that the [`BasisTranslator`](qiskit.transpiler.passes.BasisTranslator "qiskit.transpiler.passes.BasisTranslator") translation search will search through all possible equivalences at all possible depths, so providing an equivalence in terms of (say) [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.library.XGate") will automatically make decompositions in terms of [`RXGate`](qiskit.circuit.library.RXGate "qiskit.circuit.library.RXGate") available as well. + +Let us add an equivalence in terms of $H$, $CX$ and $R_z$ for an arbitrary symbolic parameter: + ```python -{'1': 1024} +from qiskit.circuit import SessionEquivalenceLibrary, Parameter + +theta = Parameter("theta") + +equiv = QuantumCircuit(2) +equiv.h(0) +equiv.cx(1, 0) +equiv.rz(theta, 0) +equiv.cx(1, 0) +equiv.h(0) + +SessionEquivalenceLibrary.add_equivalence(RZXGate(theta), equiv) ``` -### Quantum Circuit Properties +After this, for the duration of the Python interpreter session, translators like [`BasisTranslator`](qiskit.transpiler.passes.BasisTranslator "qiskit.transpiler.passes.BasisTranslator") will find our new definition in their search. + + + +## Working with circuit-level objects + +### Circuit properties When constructing quantum circuits, there are several properties that help quantify the “size” of the circuits, and their ability to be run on a noisy quantum device. Some of these, like number of qubits, are straightforward to understand, while others like depth and number of tensor components require a bit more explanation. Here we will explain all of these properties, and, in preparation for understanding how circuits change when run on actual devices, highlight the conditions under which they change. @@ -134,7 +747,7 @@ qc.x(6) qc.draw('mpl') ``` -![../\_images/circuit-4.png](/images/api/qiskit/dev/circuit-4.png) +![../\_images/circuit-2.png](/images/api/qiskit/dev/circuit-2.png) From the plot, it is easy to see that this circuit has 12 qubits, and a collection of Hadamard, CNOT, X, and SWAP gates. But how to quantify this programmatically? Because we can do single-qubit gates on all the qubits simultaneously, the number of qubits in this circuit is equal to the **width** of the circuit: @@ -196,99 +809,56 @@ qc.depth() 9 ``` -## Quantum Circuit API - -### Quantum Circuit Construction - -| | | -| ---------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")(\*regs\[, name, global\_phase, ...]) | Create a new circuit. | -| [`QuantumRegister`](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister")(\[size, name, bits]) | Implement a quantum register. | -| [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit")(\[register, index]) | Implement a quantum bit. | -| [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")(\[size, name, bits]) | Implement a classical register. | -| [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit")(\[register, index]) | Implement a classical bit. | -| [`AncillaRegister`](qiskit.circuit.AncillaRegister "qiskit.circuit.AncillaRegister")(\[size, name, bits]) | Implement an ancilla register. | -| [`AncillaQubit`](qiskit.circuit.AncillaQubit "qiskit.circuit.AncillaQubit")(\[register, index]) | A qubit used as ancillary qubit. | -| [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction") | A single instruction in a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"), comprised of the `operation` and various operands. | -| [`Register`](qiskit.circuit.Register "qiskit.circuit.Register")(\[size, name, bits]) | Implement a generic register. | -| [`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit")(\[register, index]) | Implement a generic bit. | - -### Gates and Instructions - -| | | -| -------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ | -| [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate")(name, num\_qubits, params\[, label, ...]) | Unitary gate. | -| [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")(name, num\_qubits, params\[, ...]) | Controlled unitary gate. | -| [`Delay`](qiskit.circuit.Delay "qiskit.circuit.Delay")(duration\[, unit]) | Do nothing and just delay/wait/idle for a specified duration. | -| [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction")(name, num\_qubits, num\_clbits, params) | Generic quantum instruction. | -| [`InstructionSet`](qiskit.circuit.InstructionSet "qiskit.circuit.InstructionSet")(\*\[, resource\_requester]) | Instruction collection, and their contexts. | -| [`Operation`](qiskit.circuit.Operation "qiskit.circuit.Operation")() | Quantum Operation Interface Class. | -| [`EquivalenceLibrary`](qiskit.circuit.EquivalenceLibrary "qiskit.circuit.EquivalenceLibrary")(\*\[, base]) | A library providing a one-way mapping of Gates to their equivalent implementations as QuantumCircuits. | -| [`Store`](qiskit.circuit.Store "qiskit.circuit.Store")(lvalue, rvalue) | A manual storage of some classical value to a classical memory location. | - -### Control Flow Operations - -| | | -| --------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp")(\*args, \*\*kwargs) | Abstract class to encapsulate all control flow operations. | -| [`IfElseOp`](qiskit.circuit.IfElseOp "qiskit.circuit.IfElseOp")(condition, true\_body\[, false\_body, ...]) | A circuit operation which executes a program (`true_body`) if a provided condition (`condition`) evaluates to true, and optionally evaluates another program (`false_body`) otherwise. | -| [`WhileLoopOp`](qiskit.circuit.WhileLoopOp "qiskit.circuit.WhileLoopOp")(condition, body\[, label]) | A circuit operation which repeatedly executes a subcircuit (`body`) until a condition (`condition`) evaluates as False. | -| [`ForLoopOp`](qiskit.circuit.ForLoopOp "qiskit.circuit.ForLoopOp")(indexset, loop\_parameter, body\[, ...]) | A circuit operation which repeatedly executes a subcircuit (`body`) parameterized by a parameter `loop_parameter` through the set of integer values provided in `indexset`. | -| [`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp")(target, cases, \*\[, label]) | A circuit operation that executes one particular circuit block based on matching a given `target` against an ordered list of `values`. | -| [`BreakLoopOp`](qiskit.circuit.BreakLoopOp "qiskit.circuit.BreakLoopOp")(num\_qubits, num\_clbits\[, label]) | A circuit operation which, when encountered, jumps to the end of the nearest enclosing loop. | -| [`ContinueLoopOp`](qiskit.circuit.ContinueLoopOp "qiskit.circuit.ContinueLoopOp")(num\_qubits, num\_clbits\[, label]) | A circuit operation which, when encountered, moves to the next iteration of the nearest enclosing loop. | + -The [`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp") also understands a special value: +### Converting abstract circuits to physical circuits -**qiskit.circuit.CASE\_DEFAULT** +An abstract [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") cannot reliably be run on hardware. You might be able to use some of the high-level simulators linked to in [Simulating circuits](#circuit-simulation) to produce quick results for small scale circuits, but to run utility-scale circuits, you will need to use real hardware, which involves compiling to a physical circuit. -A special object that represents the “default” case of a switch statement. If you use this as a case target, it must be the last case, and will match anything that wasn’t already matched. For example: +The high-level function to do this is [`transpile()`](compiler#qiskit.compiler.transpile "qiskit.compiler.transpile"); it takes in an abstract circuit and a hardware `backend` or `target`, and returns a physical circuit. To get more access and control over the stages of the passes that will be run, use [`generate_preset_pass_manager()`](transpiler_preset#qiskit.transpiler.preset_passmanagers.generate_preset_pass_manager "qiskit.transpiler.preset_passmanagers.generate_preset_pass_manager") to build a [`StagedPassManager`](qiskit.transpiler.StagedPassManager "qiskit.transpiler.StagedPassManager") first, which you can then modify. -```python -from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister -from qiskit.circuit import SwitchCaseOp, CASE_DEFAULT - -body0 = QuantumCircuit(2, 2) -body0.x(0) -body1 = QuantumCircuit(2, 2) -body1.z(0) -body2 = QuantumCircuit(2, 2) -body2.cx(0, 1) - -qr, cr = QuantumRegister(2), ClassicalRegister(2) -qc = QuantumCircuit(qr, cr) -qc.switch(cr, [(0, body0), (1, body1), (CASE_DEFAULT, body2)], qr, cr) -``` +The full transpilation and compilation machinery is described in detail in the [`qiskit.transpiler`](transpiler#module-qiskit.transpiler "qiskit.transpiler") module documentation, and detail on all the passes built into Qiskit is available in [`qiskit.transpiler.passes`](transpiler_passes#module-qiskit.transpiler.passes "qiskit.transpiler.passes"). -When using the builder interface of [`QuantumCircuit.switch()`](qiskit.circuit.QuantumCircuit#switch "qiskit.circuit.QuantumCircuit.switch"), this can also be accessed as the `DEFAULT` attribute of the bound case-builder object, such as: + -```python -from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister - -qr, cr = QuantumRegister(2), ClassicalRegister(2) -qc = QuantumCircuit(qr, cr) -with qc.switch(cr) as case: - with case(0): - qc.x(0) - with case(1): - qc.z(0) - with case(case.DEFAULT): - qc.cx(0, 1) -``` +### Simulating circuits -### Parametric Quantum Circuits +While not part of the [`qiskit.circuit`](#module-qiskit.circuit "qiskit.circuit") interface, one of the most common needs is to get quick simulation results for [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") objects. This section provides a quick jumping-off point to other places in the documentation to find the relevant information. -| | | -| ------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- | -| [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter")(name, \*\[, uuid]) | Parameter Class for variable parameters. | -| [`ParameterVector`](qiskit.circuit.ParameterVector "qiskit.circuit.ParameterVector")(name\[, length]) | ParameterVector class to quickly generate lists of parameters. | -| [`ParameterExpression`](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")(symbol\_map, expr) | ParameterExpression class to enable creating expressions of Parameters. | +For unitary circuits, you can simulate the effects on the $\lvert0\dotsm0\rangle$ state by passing the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") directly to the [`Statevector`](qiskit.quantum_info.Statevector "qiskit.quantum_info.Statevector") default constructor. You can similar get a unitary matrix representing the circuit as an operator by passing it to the [`Operator`](qiskit.quantum_info.Operator "qiskit.quantum_info.Operator") default constructor. If you have a physical circuit, you may want to instead pass it to [`Operator.from_circuit()`](qiskit.quantum_info.Operator#from_circuit "qiskit.quantum_info.Operator.from_circuit") method to apply transformations from the [`QuantumCircuit.layout`](qiskit.circuit.QuantumCircuit#layout "qiskit.circuit.QuantumCircuit.layout") to map it back to the “abstract” qubit space. + +For a more backend-like simulation experience, there are simulator-backed implementations of all the Qiskit hardware interfaces. In particular, you might be interested in: + +* [`BasicProvider`](qiskit.providers.basic_provider.BasicProvider "qiskit.providers.basic_provider.BasicProvider") and the raw backends it can return to you. +* `StatevectorSimulator` for a backend-like wrapper around [`Statevector`](qiskit.quantum_info.Statevector "qiskit.quantum_info.Statevector") +* The [`qiskit_aer`](https://qiskit.github.io/qiskit-aer/apidocs/aer_provider.html#module-qiskit_aer "(in Qiskit Aer v0.14.0)") for full, high-performance simulation capabilities. +* [`StatevectorSampler`](qiskit.primitives.StatevectorSampler "qiskit.primitives.StatevectorSampler") and [`StatevectorEstimator`](qiskit.primitives.StatevectorEstimator "qiskit.primitives.StatevectorEstimator") for simulator-backed reference implementations of the [Qiskit Primitives](primitives#qiskit-primitives). + +### Defining equivalence relationships + +A common task in mapping abstract circuits to physical hardware and optimizing the result is to find equivalence relations that map a gate to a different basis set. Qiskit stores this information in a database class called [`EquivalenceLibrary`](qiskit.circuit.EquivalenceLibrary "qiskit.circuit.EquivalenceLibrary"). + +| | | +| ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ | +| [`EquivalenceLibrary`](qiskit.circuit.EquivalenceLibrary "qiskit.circuit.EquivalenceLibrary")(\*\[, base]) | A library providing a one-way mapping of Gates to their equivalent implementations as QuantumCircuits. | + +Qiskit ships with a large set of predefined equivalence relationships for all of its standard gates. This base library is called [`StandardEquivalenceLibrary`](#qiskit.circuit.StandardEquivalenceLibrary "qiskit.circuit.StandardEquivalenceLibrary"), and should be treated as immutable. + +**qiskit.circuit.StandardEquivalenceLibrary** -### Random Circuits +A [`EquivalenceLibrary`](qiskit.circuit.EquivalenceLibrary "qiskit.circuit.EquivalenceLibrary") that stores of all Qiskit’s built-in standard gate relationships. You should not mutate this, but instead either create your own [`EquivalenceLibrary`](qiskit.circuit.EquivalenceLibrary "qiskit.circuit.EquivalenceLibrary") using this one as its `base`, or modify the global-state [`SessionEquivalenceLibrary`](#qiskit.circuit.SessionEquivalenceLibrary "qiskit.circuit.SessionEquivalenceLibrary"). + +Qiskit also defines a shared global-state object, [`SessionEquivalenceLibrary`](#qiskit.circuit.SessionEquivalenceLibrary "qiskit.circuit.SessionEquivalenceLibrary"), which is the default equivalences used by various places in Qiskit, most notably the [`BasisTranslator`](qiskit.transpiler.passes.BasisTranslator "qiskit.transpiler.passes.BasisTranslator") transpiler pass. You should feel free to add your own equivalences to this using its [`add_equivalence()`](qiskit.circuit.EquivalenceLibrary#add_equivalence "qiskit.circuit.EquivalenceLibrary.add_equivalence") method, and they will be automatically picked up by default instances of the [`BasisTranslator`](qiskit.transpiler.passes.BasisTranslator "qiskit.transpiler.passes.BasisTranslator"). + +**qiskit.circuit.SessionEquivalenceLibrary** + +The default instance of [`EquivalenceLibrary`](qiskit.circuit.EquivalenceLibrary "qiskit.circuit.EquivalenceLibrary"), which will be used by most Qiskit objects if no library is manually specified. You can feel free to add equivalences to this using [`add_equivalence()`](qiskit.circuit.EquivalenceLibrary#add_equivalence "qiskit.circuit.EquivalenceLibrary.add_equivalence"). It inherits all the built-in rules of [`StandardEquivalenceLibrary`](#qiskit.circuit.StandardEquivalenceLibrary "qiskit.circuit.StandardEquivalenceLibrary"). + +### Generating random circuits ### random\_circuit - + Generate random circuit of arbitrary size and form. This function will generate a random circuit by randomly selecting gates from the set of standard gates in `qiskit.circuit.library.standard_gates`. For example: @@ -300,7 +870,7 @@ with qc.switch(cr) as case: circ.draw(output='mpl') ``` - ![../\_images/circuit-5.png](/images/api/qiskit/dev/circuit-5.png) + ![../\_images/circuit-3.png](/images/api/qiskit/dev/circuit-3.png) **Parameters** @@ -325,15 +895,166 @@ with qc.switch(cr) as case: [**CircuitError**](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – when invalid options given -### Exceptions +## Exceptions Almost all circuit functions and methods will raise a [`CircuitError`](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") when encountering an error that is particular to usage of Qiskit (as opposed to regular typing or indexing problems, which will typically raise the corresponding standard Python error). ### CircuitError - + Base class for errors raised while processing a circuit. Set the error message. + + +## Circuit conventions + +When constructing circuits out of abstract objects and more concrete matrices, there are several possible conventions around bit-labelling, bit-ordering, and how the abstract tensor product is realized in concrete matrix algebra. + +Qiskit’s conventions are: + +* in bitstring representations, bits are labelled with the right-most bit in the string called $0$ and the left-most bit in the string of $n$ bits called $n - 1$. +* when using integers as bit-specifier indices in circuit-construction functions, the integer is treated as an index into [`QuantumCircuit.qubits`](qiskit.circuit.QuantumCircuit#qubits "qiskit.circuit.QuantumCircuit.qubits") (or [`clbits`](qiskit.circuit.QuantumCircuit#clbits "qiskit.circuit.QuantumCircuit.clbits")). +* when drawing circuits, we put the lowest-index bits on top. +* in statevector representations, we realize the abstract tensor product as the Kronecker product, and order the arguments to this such that the amplitude of computational-basis state $\lvert x\rangle$, where $x$ is the bitstring interpreted as an integer, is at location `statevector[x]`. +* when controlling a gate, the control qubit(s) is placed first in the argument list, *e.g.* in the call `qc.cx(0, 1)`, qubit 0 will be the control and qubit 1 will be the target. Similarly, in the manual call `qc.append(CXGate(), [0, 1])`, qubit 0 will be the control and qubit 1 will be the target. + +Let us illustrate these conventions with some examples. + +### Bit labelling + +Take the circuit: + +```python +from qiskit import QuantumCircuit + +qc = QuantumCircuit(5, 5) +qc.x(0) +qc.x(1) +qc.x(4) +qc.measure(range(5), range(5)) +``` + +This flips the states of qubits 0, 1 and 4 from $\lvert0\rangle$ to $\lvert1\rangle$, then measures all qubits $n$ into the corresponding clbit $n$ using the computational ($Z$) basis. If simulated noiselessly, the bitstring output from this circuit will be $10011$ every time; qubits 0, 1, and 4 are flipped, and the “one” values in the bitstring are in the zeroth, first and fourth digits *from the right*. + +In Qiskit, we would write the qubit state immediately before the measurement in ket-notation shorthand as $\lvert10011\rangle$. Note that the ket label matches the classical bitstring, and has the numeric binary value of 19. + +If we draw this circuit, we will see that Qiskit places the zeroth qubit on the top of the circuit drawing: + +```python +qc.draw("mpl") +``` + +![../\_images/circuit-5.png](/images/api/qiskit/dev/circuit-5.png) + +### Matrix representations + +Statevectors are defined in the convention that for a two-level system, the relationship between abstract representation and matrix representation is such that + +$$ +\alpha\lvert0\rangle + \beta\lvert1\rangle + \leftrightarrow \begin{pmatrix} \alpha \\ \beta \end{pmatrix} +$$ + +where $\alpha$ and $\beta$ are complex numbers. We store the statevector as a 1D Numpy [`ndarray`](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray "(in NumPy v1.26)") with data `sv = [alpha, beta]`, *i.e.* `sv[0] == alpha` and `sv[1] == beta`; note that the indices into the statevector match the ket labels. + +We construct [the tensor product of two qubit states](https://en.wikipedia.org/wiki/Tensor_product) in matrix algebra using [the Kronecker product](https://en.wikipedia.org/wiki/Kronecker_product), with qubit 0 on the right and qubit 1 on the left, such that the $Z$ basis state $\lvert x\rangle$ (where $x$ is the integer interpretation of the bitstring) has its non-zero term in the statevector `sv` at `sv[x]`: + +```python +import numpy +from qiskit import QuantumCircuit +from qiskit.quantum_info import Statevector + +state_0 = [1, 0] # defined representation of |0> +state_1 = [0, 1] # defined representation of |1> + +# Circuit that creates basis state |10011>, where +# binary 10011 has the decimal value 19. +qc = QuantumCircuit(5) +qc.x(0) +qc.x(1) +qc.x(4) +qiskit_sv = Statevector(qc) + +# List index 'n' corresponds to qubit 'n'. +individual_states = [ + state_1, + state_1, + state_0, + state_0, + state_1, +] +# Start from a scalar. +manual_sv = [1] +for qubit_state in individual_states: + # Each new qubit goes "on the left". + manual_sv = numpy.kron(qubit_state, manual_sv) + +# Now `qiskit_sv` and `manual_sv` are the same, and: +assert manual_sv[19] == 1 +assert qiskit_sv[19] == 1 +``` + +This feeds through to the matrix representation of operators, and joins with the conventions on bit orders for controlled operators. For example, the matrix form of [`CXGate`](qiskit.circuit.library.CXGate "qiskit.circuit.library.CXGate") is: + +```python +import numpy +from qiskit.circuit.library import CXGate + +numpy.array(CXGate()) +``` + +$$ +\operatorname{array}(CX) = + \begin{pmatrix} + 1 & 0 & 0 & 0 \\ + 0 & 0 & 0 & 1 \\ + 0 & 0 & 1 & 0 \\ + 0 & 1 & 0 & 0 + \end{pmatrix} +$$ + +This might be different to other matrix representations you have seen for $CX$, but recall that the choice of matrix representation is conventional, and this form matches Qiskit’s conventions of *control qubits come first* and *the tensor product is represented such that there is a correspondence between the index of the “one amplitude” and the bitstring value of a state*. + +In the case of multiple controls for a gate, such as for [`CCXGate`](qiskit.circuit.library.CCXGate "qiskit.circuit.library.CCXGate"), the `ctrl_state` argument is interpreted as the bitstring value of the control qubits, using the same zero-based labelling conventions. For example, given that the default `ctrl_state` is the all-ones bitstring, we can see that the matrix form of [`CCXGate`](qiskit.circuit.library.CCXGate "qiskit.circuit.library.CCXGate") with `ctrl_state = 1` is the same as if we took the all-ones control-state [`CCXGate`](qiskit.circuit.library.CCXGate "qiskit.circuit.library.CCXGate"), but flipped the value of the higher indexed control qubit on entry and exist to the gate: + +```python +from qiskit import QuantumCircuit +from qiskit.quantum_info import Operator + +# Build the natural representation of `CCX` with the +# control qubits being `[0, 1]`, relative to the +# bitstring state "01", such that qubit 0 must be in |1> +# and qubit 1 must be in |0>. The target qubit is 2. +ccx_natural = QuantumCircuit(3) +ccx_natural.ccx(0, 1, 2, ctrl_state=1) + +# Build the same circuit in terms of the all-ones CCX. +# Note that we flip _qubit 1_, because that's the one +# that differs from the all-ones state. +ccx_relative = QuantumCircuit(3) +ccx_relative.x(1) +ccx_relative.ccx(0, 1, 2) +ccx_relative.x(1) + +assert Operator(ccx_relative) == Operator(ccx_natural) +``` + +In both these cases, the matrix form of [`CCXGate`](qiskit.circuit.library.CCXGate "qiskit.circuit.library.CCXGate") in `ctrl_state = 1` is: + +$$ +\operatorname{array}\bigl(CCX(\text{ctrl\_state}=1)\bigr) = + \begin{pmatrix} + 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ + 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \\ + 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\ + 0 & 0 & 0 & 1 & 0 & 0 & 0 & 0 \\ + 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\ + 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ + 0 & 0 & 0 & 0 & 0 & 0 & 1 & 0 \\ + 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 + \end{pmatrix} +$$ + diff --git a/docs/api/qiskit/dev/circuit_classical.mdx b/docs/api/qiskit/dev/circuit_classical.mdx index 3b89288900b..c667fe0a10c 100644 --- a/docs/api/qiskit/dev/circuit_classical.mdx +++ b/docs/api/qiskit/dev/circuit_classical.mdx @@ -18,7 +18,7 @@ python_api_name: qiskit.circuit.classical `qiskit.circuit.classical` -This module contains an exploratory representation of runtime operations on classical values during circuit execution. +This module contains an exploratory representation of real-time operations on classical values during circuit execution. Currently, only simple expressions on bits and registers that result in a Boolean value are supported, and these are only valid for use in the conditions of [`QuantumCircuit.if_test()`](qiskit.circuit.QuantumCircuit#if_test "qiskit.circuit.QuantumCircuit.if_test") ([`IfElseOp`](qiskit.circuit.IfElseOp "qiskit.circuit.IfElseOp")) and [`QuantumCircuit.while_loop()`](qiskit.circuit.QuantumCircuit#while_loop "qiskit.circuit.QuantumCircuit.while_loop") ([`WhileLoopOp`](qiskit.circuit.WhileLoopOp "qiskit.circuit.WhileLoopOp")), and in the target of [`QuantumCircuit.switch()`](qiskit.circuit.QuantumCircuit#switch "qiskit.circuit.QuantumCircuit.switch") ([`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp")). @@ -48,7 +48,7 @@ There are two pathways for constructing expressions. The classes that form [the The expression system is based on tree representation. All nodes in the tree are final (uninheritable) instances of the abstract base class: - + Root base class of all nodes in the expression tree. The base case should never be instantiated directly. This must not be subclassed by users; subclasses form the internal data of the representation of expressions, and it does not make sense to add more outside of Qiskit library code. @@ -58,12 +58,12 @@ The expression system is based on tree representation. All nodes in the tree are These objects are mutable and should not be reused in a different location without a copy. -The base for dynamic variables is the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var"), which can be either an arbitrarily typed runtime variable, or a wrapper around a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"). +The base for dynamic variables is the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var"), which can be either an arbitrarily typed real-time variable, or a wrapper around a [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"). - + A classical variable. - These variables take two forms: a new-style variable that owns its storage location and has an associated name; and an old-style variable that wraps a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") instance that is owned by some containing circuit. In general, construction of variables for use in programs should use `Var.new()` or [`QuantumCircuit.add_var()`](qiskit.circuit.QuantumCircuit#add_var "qiskit.circuit.QuantumCircuit.add_var"). + These variables take two forms: a new-style variable that owns its storage location and has an associated name; and an old-style variable that wraps a [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") instance that is owned by some containing circuit. In general, construction of variables for use in programs should use `Var.new()` or [`QuantumCircuit.add_var()`](qiskit.circuit.QuantumCircuit#add_var "qiskit.circuit.QuantumCircuit.add_var"). Variables are immutable after construction, so they can be used as dictionary keys. @@ -76,19 +76,19 @@ The base for dynamic variables is the [`Var`](#qiskit.circuit.classical.expr.Var ### var - A reference to the backing data storage of the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") instance. When lifting old-style [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") instances into a [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var"), this is exactly the [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"). If the variable is a new-style classical variable (one that owns its own storage separate to the old [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit")/[`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") model), this field will be a [`UUID`](https://docs.python.org/3/library/uuid.html#uuid.UUID "(in Python v3.12)") to uniquely identify it. + A reference to the backing data storage of the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") instance. When lifting old-style [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") instances into a [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var"), this is exactly the [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"). If the variable is a new-style classical variable (one that owns its own storage separate to the old [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")/[`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") model), this field will be a [`UUID`](https://docs.python.org/3/library/uuid.html#uuid.UUID "(in Python v3.12)") to uniquely identify it. Similarly, literals used in comparison (such as integers) should be lifted to [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes with associated types. - + A single scalar value. The operations traditionally associated with pre-, post- or infix operators in programming are represented by the [`Unary`](#qiskit.circuit.classical.expr.Unary "qiskit.circuit.classical.expr.Unary") and [`Binary`](#qiskit.circuit.classical.expr.Binary "qiskit.circuit.classical.expr.Binary") nodes as appropriate. These each take an operation type code, which are exposed as enumerations inside each class as [`Unary.Op`](#qiskit.circuit.classical.expr.Unary.Op "qiskit.circuit.classical.expr.Unary.Op") and [`Binary.Op`](#qiskit.circuit.classical.expr.Binary.Op "qiskit.circuit.classical.expr.Binary.Op") respectively. - + A unary expression. **Parameters** @@ -97,7 +97,7 @@ The operations traditionally associated with pre-, post- or infix operators in p * **operand** ([*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – The operand of the operation. * **type** ([*Type*](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.types.Type")) – The resolved type of the result. - + Enumeration of the opcodes for unary operations. The bitwise negation [`BIT_NOT`](#qiskit.circuit.classical.expr.Unary.Op.BIT_NOT "qiskit.circuit.classical.expr.Unary.Op.BIT_NOT") takes a single bit or an unsigned integer of known width, and returns a value of the same type. @@ -118,7 +118,7 @@ The operations traditionally associated with pre-, post- or infix operators in p - + A binary expression. **Parameters** @@ -128,7 +128,7 @@ The operations traditionally associated with pre-, post- or infix operators in p * **right** ([*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – The right-hand operand. * **type** ([*Type*](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.types.Type")) – The resolved type of the result. - + Enumeration of the opcodes for binary operations. The bitwise operations [`BIT_AND`](#qiskit.circuit.classical.expr.Binary.Op.BIT_AND "qiskit.circuit.classical.expr.Binary.Op.BIT_AND"), [`BIT_OR`](#qiskit.circuit.classical.expr.Binary.Op.BIT_OR "qiskit.circuit.classical.expr.Binary.Op.BIT_OR") and [`BIT_XOR`](#qiskit.circuit.classical.expr.Binary.Op.BIT_XOR "qiskit.circuit.classical.expr.Binary.Op.BIT_XOR") apply to two operands of the same type, which must be a single bit or an unsigned integer of fixed width. The resultant type is the same as the two input types. @@ -209,7 +209,7 @@ When constructing expressions, one must ensure that the types are valid for the Expressions in this system are defined to act only on certain sets of types. However, values may be cast to a suitable supertype in order to satisfy the typing requirements. In these cases, a node in the expression tree is used to represent the promotion. In all cases where operations note that they “implicitly cast” or “coerce” their arguments, the expression tree must have this node representing the conversion. - + A cast from one type to another, implied by the use of an expression in a different context. @@ -223,7 +223,7 @@ The functions and methods described in this section are a more user-friendly way ### lift - + Lift the given Python `value` to a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.expr.Value") or [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var"). If an explicit `type` is given, the typing in the output will reflect that. @@ -263,7 +263,7 @@ You can manually specify casts in cases where the cast is allowed in explicit fo ### cast - + Create an explicit cast from the given value to the given type. **Examples** @@ -286,12 +286,12 @@ There are helper constructor functions for each of the unary operations. ### bit\_not - + Create a bitwise ‘not’ expression node from the given value, resolving any implicit casts and lifting the value into a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") node if required. **Examples** - Bitwise negation of a [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"): + Bitwise negation of a [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"): ```python >>> from qiskit.circuit import ClassicalRegister @@ -307,12 +307,12 @@ There are helper constructor functions for each of the unary operations. ### logic\_not - + Create a logical ‘not’ expression node from the given value, resolving any implicit casts and lifting the value into a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") node if required. **Examples** - Logical negation of a [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"): + Logical negation of a [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"): ```python >>> from qiskit.circuit import ClassicalRegister @@ -330,7 +330,7 @@ Similarly, the binary operations and relations have helper functions defined. ### bit\_and - + Create a bitwise ‘and’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -351,7 +351,7 @@ Similarly, the binary operations and relations have helper functions defined. ### bit\_or - + Create a bitwise ‘or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -372,7 +372,7 @@ Similarly, the binary operations and relations have helper functions defined. ### bit\_xor - + Create a bitwise ‘exclusive or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -393,7 +393,7 @@ Similarly, the binary operations and relations have helper functions defined. ### logic\_and - + Create a logical ‘and’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -414,7 +414,7 @@ Similarly, the binary operations and relations have helper functions defined. ### logic\_or - + Create a logical ‘or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -435,7 +435,7 @@ Similarly, the binary operations and relations have helper functions defined. ### equal - + Create an ‘equal’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -456,7 +456,7 @@ Similarly, the binary operations and relations have helper functions defined. ### not\_equal - + Create a ‘not equal’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -477,7 +477,7 @@ Similarly, the binary operations and relations have helper functions defined. ### less - + Create a ‘less than’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -498,7 +498,7 @@ Similarly, the binary operations and relations have helper functions defined. ### less\_equal - + Create a ‘less than or equal to’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -519,7 +519,7 @@ Similarly, the binary operations and relations have helper functions defined. ### greater - + Create a ‘greater than’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -540,7 +540,7 @@ Similarly, the binary operations and relations have helper functions defined. ### greater\_equal - + Create a ‘greater than or equal to’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required. **Examples** @@ -559,11 +559,11 @@ Similarly, the binary operations and relations have helper functions defined. [*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr") -Qiskit’s legacy method for specifying equality conditions for use in conditionals is to use a two-tuple of a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and an integer. This represents an exact equality condition, and there are no ways to specify any other relations. The helper function [`lift_legacy_condition()`](#qiskit.circuit.classical.expr.lift_legacy_condition "qiskit.circuit.classical.expr.lift_legacy_condition") converts this legacy format into the new expression syntax. +Qiskit’s legacy method for specifying equality conditions for use in conditionals is to use a two-tuple of a [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and an integer. This represents an exact equality condition, and there are no ways to specify any other relations. The helper function [`lift_legacy_condition()`](#qiskit.circuit.classical.expr.lift_legacy_condition "qiskit.circuit.classical.expr.lift_legacy_condition") converts this legacy format into the new expression syntax. ### lift\_legacy\_condition - + Lift a legacy two-tuple equality condition into a new-style [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr"). **Examples** @@ -590,12 +590,12 @@ Qiskit’s legacy method for specifying equality conditions for use in condition A typical consumer of the expression tree wants to recursively walk through the tree, potentially statefully, acting on each node differently depending on its type. This is naturally a double-dispatch problem; the logic of ‘what is to be done’ is likely stateful and users should be free to define their own operations, yet each node defines ‘what is being acted on’. We enable this double dispatch by providing a base visitor class for the expression tree. - + Base class for visitors to the [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") tree. Subclasses should override whichever of the `visit_*` methods that they are able to handle, and should be organised such that non-existent methods will never be called. ### visit\_binary - + **Return type** *\_T\_co* @@ -603,7 +603,7 @@ A typical consumer of the expression tree wants to recursively walk through the ### visit\_cast - + **Return type** *\_T\_co* @@ -611,7 +611,7 @@ A typical consumer of the expression tree wants to recursively walk through the ### visit\_generic - + **Return type** *\_T\_co* @@ -619,7 +619,7 @@ A typical consumer of the expression tree wants to recursively walk through the ### visit\_unary - + **Return type** *\_T\_co* @@ -627,7 +627,7 @@ A typical consumer of the expression tree wants to recursively walk through the ### visit\_value - + **Return type** *\_T\_co* @@ -635,7 +635,7 @@ A typical consumer of the expression tree wants to recursively walk through the ### visit\_var - + **Return type** *\_T\_co* @@ -648,12 +648,12 @@ For the convenience of simple visitors that only need to inspect the variables i ### iter\_vars - + Get an iterator over the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var") nodes referenced at any level in the given [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr"). **Examples** - Print out the name of each [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") encountered: + Print out the name of each [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") encountered: ```python from qiskit.circuit import ClassicalRegister @@ -676,7 +676,7 @@ Two expressions can be compared for direct structural equality by using the buil ### structurally\_equivalent - + Do these two expressions have exactly the same tree structure, up to some key function for the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var") objects? In other words, are these two expressions the exact same trees, except we compare the [`Var.var`](#qiskit.circuit.classical.expr.Var.var "qiskit.circuit.classical.expr.Var.var") fields by calling the appropriate `*_var_key` function on them, and comparing that output for equality. This function does not allow any semantic “equivalences” such as asserting that `a == b` is equivalent to `b == a`; the evaluation order of the operands could, in general, cause such a statement to be false (consider hypothetical `extern` functions that access global state). @@ -696,7 +696,7 @@ Two expressions can be compared for direct structural equality by using the buil **Examples** - Comparing two expressions for structural equivalence, with no remapping of the variables. These are different because the different [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") instances compare differently: + Comparing two expressions for structural equivalence, with no remapping of the variables. These are different because the different [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") instances compare differently: ```python >>> from qiskit.circuit import Clbit @@ -723,7 +723,7 @@ Some expressions have associated memory locations, and others may be purely temp ### is\_lvalue - + Return whether this expression can be used in l-value positions, that is, whether it has a well-defined location in memory, such as one that might be writeable. Being an l-value is a necessary but not sufficient for this location to be writeable; it is permissible that a larger object containing this memory location may not allow writing from the scope that attempts to write to it. This would be an access property of the containing program, however, and not an inherent property of the expression system. @@ -783,7 +783,7 @@ The type system of the expression tree is exposed through this module. This is i All types inherit from an abstract base class: - + Root base class of all nodes in the type tree. The base case should never be instantiated directly. This must not be subclassed by users; subclasses form the internal data of the representation of expressions, and it does not make sense to add more outside of Qiskit library code. @@ -791,13 +791,13 @@ All types inherit from an abstract base class: Types should be considered immutable objects, and you must not mutate them. It is permissible to reuse a [`Type`](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.Type") that you take from another object without copying it, and generally this will be the best approach for performance. [`Type`](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.Type") objects are designed to be small amounts of data, and it’s best to point to the same instance of the data where possible rather than heap-allocating a new version of the same thing. Where possible, the class constructors will return singleton instances to facilitate this. -The two different types available are for Booleans (corresponding to [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") and the literals `True` and `False`), and unsigned integers (corresponding to [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and Python integers). +The two different types available are for Booleans (corresponding to [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") and the literals `True` and `False`), and unsigned integers (corresponding to [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and Python integers). - + The Boolean type. This has exactly two values: `True` and `False`. - + An unsigned integer of fixed bit width. @@ -815,7 +815,7 @@ The low-level interface to querying the subtyping relationship is the [`order()` ### order - + Get the ordering relationship between the two types as an enumeration value. **Examples** @@ -842,7 +842,7 @@ The low-level interface to querying the subtyping relationship is the [`order()` The return value is an enumeration [`Ordering`](#qiskit.circuit.classical.types.Ordering "qiskit.circuit.classical.types.Ordering") that describes what, if any, subtyping relationship exists between the two types. - + Enumeration listing the possible relations between two types. Types only have a partial ordering, so it’s possible for two types to have no sub-typing relationship. Note that the sub-/supertyping relationship is not the same as whether a type can be explicitly cast from one to another. @@ -852,7 +852,7 @@ Some helper methods are then defined in terms of this low-level [`order()`](#qis ### is\_subtype - + Does the relation $\text{left} \le \text{right}$ hold? If there is no ordering relation between the two types, then this returns `False`. If `strict`, then the equality is also forbidden. **Examples** @@ -881,7 +881,7 @@ Some helper methods are then defined in terms of this low-level [`order()`](#qis ### is\_supertype - + Does the relation $\text{left} \ge \text{right}$ hold? If there is no ordering relation between the two types, then this returns `False`. If `strict`, then the equality is also forbidden. **Examples** @@ -910,7 +910,7 @@ Some helper methods are then defined in terms of this low-level [`order()`](#qis ### greater - + Get the greater of the two types, assuming that there is an ordering relation between them. Technically, this is a slightly restricted version of the concept of the ‘meet’ of the two types in that the return value must be one of the inputs. In practice in the type system there is no concept of a ‘sum’ type, so the ‘meet’ exists if and only if there is an ordering between the two types, and is equal to the greater of the two types. **Returns** @@ -942,7 +942,7 @@ It is common to need to cast values of one type to another type. The casting rul ### cast\_kind - + Determine the sort of cast that is required to move from the left type to the right type. **Examples** @@ -966,7 +966,7 @@ It is common to need to cast values of one type to another type. The casting rul The return values from this function are an enumeration explaining the types of cast that are allowed from the left type to the right type. - + A return value indicating the type of cast that can occur from one type to another. diff --git a/docs/api/qiskit/dev/circuit_library.mdx b/docs/api/qiskit/dev/circuit_library.mdx index abb532d3882..33cbf622edd 100644 --- a/docs/api/qiskit/dev/circuit_library.mdx +++ b/docs/api/qiskit/dev/circuit_library.mdx @@ -122,18 +122,18 @@ print(gate.control(1).to_matrix()) # CX (controlled X) gate Directives are operations to the quantum stack that are meant to be interpreted by the backend or the transpiler. In general, the transpiler or backend might optionally ignore them if there is no implementation for them. -| | | -| --------------------------------------------------------------------------------------------------- | -------------------- | -| [`Barrier`](qiskit.circuit.library.Barrier "qiskit.circuit.library.Barrier")(num\_qubits\[, label]) | Barrier instruction. | +| | | +| -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `Barrier`(num\_qubits\[, label]) | A directive for circuit compilation to separate pieces of a circuit so that any optimizations or re-writes are constrained to only act between barriers. | ## Standard Operations Operations are non-reversible changes in the quantum state of the circuit. -| | | -| --------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | -| [`Measure`](qiskit.circuit.library.Measure "qiskit.circuit.library.Measure")(\*args\[, \_force\_mutable]) | Quantum measurement in the computational basis. | -| [`Reset`](qiskit.circuit.library.Reset "qiskit.circuit.library.Reset")(\*args\[, \_force\_mutable]) | Qubit reset. | +| | | +| -------------------------------------- | --------------------------------------------------------- | +| `Measure`(\*args\[, \_force\_mutable]) | Quantum measurement in the computational basis. | +| `Reset`(\*args\[, \_force\_mutable]) | Incoherently reset a qubit to the $\lvert0\rangle$ state. | ## Generalized Gates @@ -154,34 +154,34 @@ print(diagonal.num_qubits) 2 ``` -| | | | | -| ------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | - | ----------------------------------- | -| [`Diagonal`](qiskit.circuit.library.Diagonal "qiskit.circuit.library.Diagonal")(diag) | Diagonal circuit. | | | -| [`DiagonalGate`](qiskit.circuit.library.DiagonalGate "qiskit.circuit.library.DiagonalGate")(diag) | Gate implementing a diagonal transformation. | | | -| [`MCMT`](qiskit.circuit.library.MCMT "qiskit.circuit.library.MCMT")(gate, num\_ctrl\_qubits, num\_target\_qubits) | The multi-controlled multi-target gate, for an arbitrary singly controlled target gate. | | | -| [`MCMTVChain`](qiskit.circuit.library.MCMTVChain "qiskit.circuit.library.MCMTVChain")(gate, num\_ctrl\_qubits, ...) | The MCMT implementation using the CCX V-chain. | | | -| [`Permutation`](qiskit.circuit.library.Permutation "qiskit.circuit.library.Permutation")(num\_qubits\[, pattern, seed]) | An n\_qubit circuit that permutes qubits. | | | -| [`PermutationGate`](qiskit.circuit.library.PermutationGate "qiskit.circuit.library.PermutationGate")(pattern) | A gate that permutes qubits. | | | -| [`GMS`](qiskit.circuit.library.GMS "qiskit.circuit.library.GMS")(num\_qubits, theta) | Global Mølmer–Sørensen gate. | | | -| [`GR`](qiskit.circuit.library.GR "qiskit.circuit.library.GR")(num\_qubits, theta, phi) | Global R gate. | | | -| [`GRX`](qiskit.circuit.library.GRX "qiskit.circuit.library.GRX")(num\_qubits, theta) | Global RX gate. | | | -| [`GRY`](qiskit.circuit.library.GRY "qiskit.circuit.library.GRY")(num\_qubits, theta) | Global RY gate. | | | -| [`GRZ`](qiskit.circuit.library.GRZ "qiskit.circuit.library.GRZ")(num\_qubits, phi) | Global RZ gate. | | | -| [`MCPhaseGate`](qiskit.circuit.library.MCPhaseGate "qiskit.circuit.library.MCPhaseGate")(lam, num\_ctrl\_qubits\[, label, ...]) | Multi-controlled-Phase gate. | | | -| [`MCXGate`](qiskit.circuit.library.MCXGate "qiskit.circuit.library.MCXGate")(\[num\_ctrl\_qubits, label, ...]) | The general, multi-controlled X gate. | | | -| [`MCXGrayCode`](qiskit.circuit.library.MCXGrayCode "qiskit.circuit.library.MCXGrayCode")(\[num\_ctrl\_qubits, label, ...]) | Implement the multi-controlled X gate using the Gray code. | | | -| [`MCXRecursive`](qiskit.circuit.library.MCXRecursive "qiskit.circuit.library.MCXRecursive")(\[num\_ctrl\_qubits, label, ...]) | Implement the multi-controlled X gate using recursion. | | | -| [`MCXVChain`](qiskit.circuit.library.MCXVChain "qiskit.circuit.library.MCXVChain")(\[num\_ctrl\_qubits, dirty\_ancillas, ...]) | Implement the multi-controlled X gate using a V-chain of CX gates. | | | -| [`RVGate`](qiskit.circuit.library.RVGate "qiskit.circuit.library.RVGate")(v\_x, v\_y, v\_z\[, basis]) | Rotation around arbitrary rotation axis $v$ where \$ | v | \$ is angle of rotation in radians. | -| [`PauliGate`](qiskit.circuit.library.PauliGate "qiskit.circuit.library.PauliGate")(label) | A multi-qubit Pauli gate. | | | -| [`LinearFunction`](qiskit.circuit.library.LinearFunction "qiskit.circuit.library.LinearFunction")(linear\[, validate\_input]) | A linear reversible circuit on n qubits. | | | -| [`Isometry`](qiskit.circuit.library.Isometry "qiskit.circuit.library.Isometry")(isometry, num\_ancillas\_zero, ...\[, ...]) | Decomposition of arbitrary isometries from $m$ to $n$ qubits. | | | -| [`UnitaryGate`](qiskit.circuit.library.UnitaryGate "qiskit.circuit.library.UnitaryGate")(data\[, label, check\_input]) | Class quantum gates specified by a unitary matrix. | | | -| [`UCGate`](qiskit.circuit.library.UCGate "qiskit.circuit.library.UCGate")(gate\_list\[, up\_to\_diagonal]) | Uniformly controlled gate (also called multiplexed gate). | | | -| [`UCPauliRotGate`](qiskit.circuit.library.UCPauliRotGate "qiskit.circuit.library.UCPauliRotGate")(angle\_list, rot\_axis) | Uniformly controlled Pauli rotations. | | | -| [`UCRXGate`](qiskit.circuit.library.UCRXGate "qiskit.circuit.library.UCRXGate")(angle\_list) | Uniformly controlled Pauli-X rotations. | | | -| [`UCRYGate`](qiskit.circuit.library.UCRYGate "qiskit.circuit.library.UCRYGate")(angle\_list) | Uniformly controlled Pauli-Y rotations. | | | -| [`UCRZGate`](qiskit.circuit.library.UCRZGate "qiskit.circuit.library.UCRZGate")(angle\_list) | Uniformly controlled Pauli-Z rotations. | | | +| | | +| ------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | +| [`Diagonal`](qiskit.circuit.library.Diagonal "qiskit.circuit.library.Diagonal")(diag) | Diagonal circuit. | +| [`DiagonalGate`](qiskit.circuit.library.DiagonalGate "qiskit.circuit.library.DiagonalGate")(diag) | Gate implementing a diagonal transformation. | +| [`MCMT`](qiskit.circuit.library.MCMT "qiskit.circuit.library.MCMT")(gate, num\_ctrl\_qubits, num\_target\_qubits) | The multi-controlled multi-target gate, for an arbitrary singly controlled target gate. | +| [`MCMTVChain`](qiskit.circuit.library.MCMTVChain "qiskit.circuit.library.MCMTVChain")(gate, num\_ctrl\_qubits, ...) | The MCMT implementation using the CCX V-chain. | +| [`Permutation`](qiskit.circuit.library.Permutation "qiskit.circuit.library.Permutation")(num\_qubits\[, pattern, seed]) | An n\_qubit circuit that permutes qubits. | +| [`PermutationGate`](qiskit.circuit.library.PermutationGate "qiskit.circuit.library.PermutationGate")(pattern) | A gate that permutes qubits. | +| [`GMS`](qiskit.circuit.library.GMS "qiskit.circuit.library.GMS")(num\_qubits, theta) | Global Mølmer–Sørensen gate. | +| [`GR`](qiskit.circuit.library.GR "qiskit.circuit.library.GR")(num\_qubits, theta, phi) | Global R gate. | +| [`GRX`](qiskit.circuit.library.GRX "qiskit.circuit.library.GRX")(num\_qubits, theta) | Global RX gate. | +| [`GRY`](qiskit.circuit.library.GRY "qiskit.circuit.library.GRY")(num\_qubits, theta) | Global RY gate. | +| [`GRZ`](qiskit.circuit.library.GRZ "qiskit.circuit.library.GRZ")(num\_qubits, phi) | Global RZ gate. | +| [`MCPhaseGate`](qiskit.circuit.library.MCPhaseGate "qiskit.circuit.library.MCPhaseGate")(lam, num\_ctrl\_qubits\[, label, ...]) | Multi-controlled-Phase gate. | +| [`MCXGate`](qiskit.circuit.library.MCXGate "qiskit.circuit.library.MCXGate")(\[num\_ctrl\_qubits, label, ...]) | The general, multi-controlled X gate. | +| [`MCXGrayCode`](qiskit.circuit.library.MCXGrayCode "qiskit.circuit.library.MCXGrayCode")(\[num\_ctrl\_qubits, label, ...]) | Implement the multi-controlled X gate using the Gray code. | +| [`MCXRecursive`](qiskit.circuit.library.MCXRecursive "qiskit.circuit.library.MCXRecursive")(\[num\_ctrl\_qubits, label, ...]) | Implement the multi-controlled X gate using recursion. | +| [`MCXVChain`](qiskit.circuit.library.MCXVChain "qiskit.circuit.library.MCXVChain")(\[num\_ctrl\_qubits, dirty\_ancillas, ...]) | Implement the multi-controlled X gate using a V-chain of CX gates. | +| [`RVGate`](qiskit.circuit.library.RVGate "qiskit.circuit.library.RVGate")(v\_x, v\_y, v\_z\[, basis]) | Rotation around arbitrary rotation axis $\vec{v}$ where $\|\vec{v}\|_2$ is angle of rotation in radians. | +| [`PauliGate`](qiskit.circuit.library.PauliGate "qiskit.circuit.library.PauliGate")(label) | A multi-qubit Pauli gate. | +| [`LinearFunction`](qiskit.circuit.library.LinearFunction "qiskit.circuit.library.LinearFunction")(linear\[, validate\_input]) | A linear reversible circuit on n qubits. | +| [`Isometry`](qiskit.circuit.library.Isometry "qiskit.circuit.library.Isometry")(isometry, num\_ancillas\_zero, ...\[, ...]) | Decomposition of arbitrary isometries from $m$ to $n$ qubits. | +| [`UnitaryGate`](qiskit.circuit.library.UnitaryGate "qiskit.circuit.library.UnitaryGate")(data\[, label, check\_input]) | Class quantum gates specified by a unitary matrix. | +| [`UCGate`](qiskit.circuit.library.UCGate "qiskit.circuit.library.UCGate")(gate\_list\[, up\_to\_diagonal]) | Uniformly controlled gate (also called multiplexed gate). | +| [`UCPauliRotGate`](qiskit.circuit.library.UCPauliRotGate "qiskit.circuit.library.UCPauliRotGate")(angle\_list, rot\_axis) | Uniformly controlled Pauli rotations. | +| [`UCRXGate`](qiskit.circuit.library.UCRXGate "qiskit.circuit.library.UCRXGate")(angle\_list) | Uniformly controlled Pauli-X rotations. | +| [`UCRYGate`](qiskit.circuit.library.UCRYGate "qiskit.circuit.library.UCRYGate")(angle\_list) | Uniformly controlled Pauli-Y rotations. | +| [`UCRZGate`](qiskit.circuit.library.UCRZGate "qiskit.circuit.library.UCRZGate")(angle\_list) | Uniformly controlled Pauli-Z rotations. | ## Boolean Logic Circuits @@ -326,7 +326,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_2a\_1 - + **Returns** template as a quantum circuit. @@ -338,7 +338,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_2a\_2 - + **Returns** template as a quantum circuit. @@ -350,7 +350,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_2a\_3 - + **Returns** template as a quantum circuit. @@ -362,7 +362,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_4a\_1 - + **Returns** template as a quantum circuit. @@ -374,7 +374,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_4a\_2 - + **Returns** template as a quantum circuit. @@ -386,7 +386,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_4a\_3 - + **Returns** template as a quantum circuit. @@ -398,7 +398,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_4b\_1 - + **Returns** template as a quantum circuit. @@ -410,7 +410,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_4b\_2 - + **Returns** template as a quantum circuit. @@ -422,7 +422,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_5a\_1 - + **Returns** template as a quantum circuit. @@ -434,7 +434,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_5a\_2 - + **Returns** template as a quantum circuit. @@ -446,7 +446,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_5a\_3 - + **Returns** template as a quantum circuit. @@ -458,7 +458,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_5a\_4 - + **Returns** template as a quantum circuit. @@ -470,7 +470,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_6a\_1 - + **Returns** template as a quantum circuit. @@ -482,7 +482,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_6a\_2 - + **Returns** template as a quantum circuit. @@ -494,7 +494,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_6a\_3 - + **Returns** template as a quantum circuit. @@ -506,7 +506,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_6a\_4 - + **Returns** template as a quantum circuit. @@ -518,7 +518,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_6b\_1 - + **Returns** template as a quantum circuit. @@ -530,7 +530,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_6b\_2 - + **Returns** template as a quantum circuit. @@ -542,7 +542,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_6c\_1 - + **Returns** template as a quantum circuit. @@ -554,7 +554,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_7a\_1 - + **Returns** template as a quantum circuit. @@ -566,7 +566,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_7b\_1 - + **Returns** template as a quantum circuit. @@ -578,7 +578,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_7c\_1 - + **Returns** template as a quantum circuit. @@ -590,7 +590,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_7d\_1 - + **Returns** template as a quantum circuit. @@ -602,7 +602,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_7e\_1 - + **Returns** template as a quantum circuit. @@ -614,7 +614,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9a\_1 - + **Returns** template as a quantum circuit. @@ -626,7 +626,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_1 - + **Returns** template as a quantum circuit. @@ -638,7 +638,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_2 - + **Returns** template as a quantum circuit. @@ -650,7 +650,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_3 - + **Returns** template as a quantum circuit. @@ -662,7 +662,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_4 - + **Returns** template as a quantum circuit. @@ -674,7 +674,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_5 - + **Returns** template as a quantum circuit. @@ -686,7 +686,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_6 - + **Returns** template as a quantum circuit. @@ -698,7 +698,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_7 - + **Returns** template as a quantum circuit. @@ -710,7 +710,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_8 - + **Returns** template as a quantum circuit. @@ -722,7 +722,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_9 - + **Returns** template as a quantum circuit. @@ -734,7 +734,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_10 - + **Returns** template as a quantum circuit. @@ -746,7 +746,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_11 - + **Returns** template as a quantum circuit. @@ -758,7 +758,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9c\_12 - + **Returns** template as a quantum circuit. @@ -770,7 +770,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_1 - + **Returns** template as a quantum circuit. @@ -782,7 +782,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_2 - + **Returns** template as a quantum circuit. @@ -794,7 +794,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_3 - + **Returns** template as a quantum circuit. @@ -806,7 +806,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_4 - + **Returns** template as a quantum circuit. @@ -818,7 +818,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_5 - + **Returns** template as a quantum circuit. @@ -830,7 +830,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_6 - + **Returns** template as a quantum circuit. @@ -842,7 +842,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_7 - + **Returns** template as a quantum circuit. @@ -854,7 +854,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_8 - + **Returns** template as a quantum circuit. @@ -866,7 +866,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_9 - + **Returns** template as a quantum circuit. @@ -878,7 +878,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib ### template\_nct\_9d\_10 - + **Returns** template as a quantum circuit. @@ -894,7 +894,7 @@ Template circuits over Clifford gates. ### clifford\_2\_1 - + **Returns** template as a quantum circuit. @@ -906,7 +906,7 @@ Template circuits over Clifford gates. ### clifford\_2\_2 - + **Returns** template as a quantum circuit. @@ -918,7 +918,7 @@ Template circuits over Clifford gates. ### clifford\_2\_3 - + **Returns** template as a quantum circuit. @@ -930,7 +930,7 @@ Template circuits over Clifford gates. ### clifford\_2\_4 - + **Returns** template as a quantum circuit. @@ -942,7 +942,7 @@ Template circuits over Clifford gates. ### clifford\_3\_1 - + **Returns** template as a quantum circuit. @@ -954,7 +954,7 @@ Template circuits over Clifford gates. ### clifford\_4\_1 - + **Returns** template as a quantum circuit. @@ -966,7 +966,7 @@ Template circuits over Clifford gates. ### clifford\_4\_2 - + **Returns** template as a quantum circuit. @@ -978,7 +978,7 @@ Template circuits over Clifford gates. ### clifford\_4\_3 - + **Returns** template as a quantum circuit. @@ -990,7 +990,7 @@ Template circuits over Clifford gates. ### clifford\_4\_4 - + **Returns** template as a quantum circuit. @@ -1002,7 +1002,7 @@ Template circuits over Clifford gates. ### clifford\_5\_1 - + **Returns** template as a quantum circuit. @@ -1014,7 +1014,7 @@ Template circuits over Clifford gates. ### clifford\_6\_1 - + **Returns** template as a quantum circuit. @@ -1026,7 +1026,7 @@ Template circuits over Clifford gates. ### clifford\_6\_2 - + **Returns** template as a quantum circuit. @@ -1038,7 +1038,7 @@ Template circuits over Clifford gates. ### clifford\_6\_3 - + **Returns** template as a quantum circuit. @@ -1050,7 +1050,7 @@ Template circuits over Clifford gates. ### clifford\_6\_4 - + **Returns** template as a quantum circuit. @@ -1062,7 +1062,7 @@ Template circuits over Clifford gates. ### clifford\_6\_5 - + **Returns** template as a quantum circuit. @@ -1074,7 +1074,7 @@ Template circuits over Clifford gates. ### clifford\_8\_1 - + **Returns** template as a quantum circuit. @@ -1086,7 +1086,7 @@ Template circuits over Clifford gates. ### clifford\_8\_2 - + **Returns** template as a quantum circuit. @@ -1098,7 +1098,7 @@ Template circuits over Clifford gates. ### clifford\_8\_3 - + **Returns** template as a quantum circuit. @@ -1114,37 +1114,37 @@ Template circuits with [`RZXGate`](qiskit.circuit.library.RZXGate "qiskit.circui ### rzx\_yz - + Template for CX - RYGate - CX. ### rzx\_xz - + Template for CX - RXGate - CX. ### rzx\_cy - + Template for CX - RYGate - CX. ### rzx\_zz1 - + Template for CX - RZGate - CX. ### rzx\_zz2 - + Template for CX - RZGate - CX. ### rzx\_zz3 - + Template for CX - RZGate - CX. diff --git a/docs/api/qiskit/dev/circuit_singleton.mdx b/docs/api/qiskit/dev/circuit_singleton.mdx index aa202e20af4..c2cfbdf233a 100644 --- a/docs/api/qiskit/dev/circuit_singleton.mdx +++ b/docs/api/qiskit/dev/circuit_singleton.mdx @@ -24,7 +24,7 @@ The machinery in this module is for defining subclasses of [`Instruction`](qiski * Doing something like `XGate(label="my_gate")` produces an object whose type is exactly `XGate`, and all the mutability works completely as expected; all the methods resolve to exactly those defined by [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.library.XGate"), [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"), or parents. * Doing `XGate()` produces a singleton object whose type is a synthetic `_SingletonXGate` class, which derives [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.library.XGate") but overrides [`__setattr__()`](https://docs.python.org/3/reference/datamodel.html#object.__setattr__ "(in Python v3.12)") to make itself immutable. The object itself has precisely the same instance attributes as `XGate()` would have if there was no singleton handling. This object will return itself under [`copy()`](https://docs.python.org/3/library/copy.html#copy.copy "(in Python v3.12)"), [`deepcopy()`](https://docs.python.org/3/library/copy.html#copy.deepcopy "(in Python v3.12)") and roundtrip through [`pickle`](https://docs.python.org/3/library/pickle.html#module-pickle "(in Python v3.12)"). -The same can be true for, for example, [`Measure`](qiskit.circuit.library.Measure "qiskit.circuit.library.Measure"), except that it’s a subclass of [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") only, and not [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). +The same can be true for, for example, [`Measure`](circuit#qiskit.circuit.Measure "qiskit.circuit.Measure"), except that it’s a subclass of [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") only, and not [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). The classes in this module are for advanced use, because they are closely entwined with the heart of Qiskit’s data model for circuits. @@ -44,21 +44,21 @@ assert XGate() is XGate() The public classes correspond to the standard classes [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") and [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"), respectively, and are subclasses of these. - + A base class to use for [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") objects that by default are singleton instances. - This class should be used for instruction classes that have fixed definitions and do not contain any unique state. The canonical example of something like this is [`Measure`](qiskit.circuit.library.Measure "qiskit.circuit.library.Measure") which has an immutable definition and any instance of [`Measure`](qiskit.circuit.library.Measure "qiskit.circuit.library.Measure") is the same. Using singleton instructions as a base class for these types of gate classes provides a large advantage in the memory footprint of multiple instructions. + This class should be used for instruction classes that have fixed definitions and do not contain any unique state. The canonical example of something like this is [`Measure`](circuit#qiskit.circuit.Measure "qiskit.circuit.Measure") which has an immutable definition and any instance of [`Measure`](circuit#qiskit.circuit.Measure "qiskit.circuit.Measure") is the same. Using singleton instructions as a base class for these types of gate classes provides a large advantage in the memory footprint of multiple instructions. The exception to be aware of with this class though are the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") attributes [`label`](qiskit.circuit.Instruction#label "qiskit.circuit.Instruction.label"), [`condition`](qiskit.circuit.Instruction#condition "qiskit.circuit.Instruction.condition"), [`duration`](qiskit.circuit.Instruction#duration "qiskit.circuit.Instruction.duration"), and [`unit`](qiskit.circuit.Instruction#unit "qiskit.circuit.Instruction.unit") which can be set differently for specific instances of gates. For [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") usage to be sound setting these attributes is not available and they can only be set at creation time, or on an object that has been specifically made mutable using [`to_mutable()`](qiskit.circuit.Instruction#to_mutable "qiskit.circuit.Instruction.to_mutable"). If any of these attributes are used during creation, then instead of using a single shared global instance of the same gate a new separate instance will be created. - + A base class to use for [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") objects that by default are singleton instances. This class is very similar to [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction"), except implies unitary [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") semantics as well. The same caveats around setting attributes in that class apply here as well. - + A base class to use for [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") objects that by default are singleton instances This class is very similar to [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction"), except implies unitary [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") semantics as well. The same caveats around setting attributes in that class apply here as well. @@ -120,7 +120,7 @@ Subclasses of [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstru ### \_singleton\_lookup\_key - + Given the arguments to the constructor, return a key tuple that identifies the singleton instance to retrieve, or `None` if the arguments imply that a mutable object must be created. For performance, as a special case, this method will not be called if the class constructor was given zero arguments (e.g. the construction `XGate()` will not call this method, but `XGate(label=None)` will), and the default singleton will immediately be returned. diff --git a/docs/api/qiskit/dev/compiler.mdx b/docs/api/qiskit/dev/compiler.mdx index 033ab0ddd58..043e42ab918 100644 --- a/docs/api/qiskit/dev/compiler.mdx +++ b/docs/api/qiskit/dev/compiler.mdx @@ -22,7 +22,7 @@ python_api_name: qiskit.compiler ### assemble - + Assemble a list of circuits or pulse schedules into a `Qobj`. This function serializes the payloads, which could be either circuits or schedules, to create `Qobj` “experiments”. It further annotates the experiment payload with header and configurations. @@ -66,7 +66,7 @@ python_api_name: qiskit.compiler * `single` returns information from every shot. * `avg` returns average measurement output (averaged over number of shots). - * **meas\_map** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")*\[*[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit")*]] | None*) – List of lists, containing qubits that must be measured together. + * **meas\_map** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")*\[*[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit")*]] | None*) – List of lists, containing qubits that must be measured together. * **memory\_slot\_size** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Size of each memory slot if the output is Level 0. @@ -103,7 +103,7 @@ python_api_name: qiskit.compiler ### schedule - + Schedule a circuit to a pulse `Schedule`, using the backend, according to any specified methods. Supported methods are documented in `qiskit.scheduler.schedule_circuit`. **Parameters** @@ -130,10 +130,22 @@ python_api_name: qiskit.compiler ### transpile - + Transpile one or more circuits, according to some desired transpilation targets. - Transpilation is potentially done in parallel using multiprocessing when `circuits` is a list with > 1 [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") object depending on the local environment and configuration. + Transpilation is potentially done in parallel using multiprocessing when `circuits` is a list with > 1 [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") object, depending on the local environment and configuration. + + The prioritization of transpilation target constraints works as follows: if a `target` input is provided, it will take priority over any `backend` input or loose constraints (`basis_gates`, `inst_map`, `coupling_map`, `backend_properties`, `instruction_durations`, `dt` or `timing_constraints`). If a `backend` is provided together with any loose constraint from the list above, the loose constraint will take priority over the corresponding backend constraint. This behavior is independent of whether the `backend` instance is of type [`BackendV1`](qiskit.providers.BackendV1 "qiskit.providers.BackendV1") or [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2"), as summarized in the table below. The first column in the table summarizes the potential user-provided constraints, and each cell shows whether the priority is assigned to that specific constraint input or another input (target/backend(V1)/backend(V2)). + + | User Provided | target | backend(V1) | backend(V2) | + | -------------------------- | ------ | ---------------------- | ---------------------- | + | **basis\_gates** | target | basis\_gates | basis\_gates | + | **coupling\_map** | target | coupling\_map | coupling\_map | + | **instruction\_durations** | target | instruction\_durations | instruction\_durations | + | **inst\_map** | target | inst\_map | inst\_map | + | **dt** | target | dt | dt | + | **timing\_constraints** | target | timing\_constraints | timing\_constraints | + | **backend\_properties** | target | backend\_properties | backend\_properties | **Parameters** @@ -278,7 +290,7 @@ python_api_name: qiskit.compiler ### sequence - + Schedule a scheduled circuit to a pulse `Schedule`, using the backend. **Parameters** diff --git a/docs/api/qiskit/dev/converters.mdx b/docs/api/qiskit/dev/converters.mdx index db45c72409e..1a19198229f 100644 --- a/docs/api/qiskit/dev/converters.mdx +++ b/docs/api/qiskit/dev/converters.mdx @@ -20,15 +20,15 @@ python_api_name: qiskit.converters ### circuit\_to\_dag - + Build a [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") object from a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). **Parameters** * **circuit** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – the input circuit. * **copy\_operations** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – Deep copy the operation objects in the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") for the output [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit"). This should only be set to `False` if the input [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") will not be used anymore as the operations in the output [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") will be shared instances and modifications to operations in the [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") will be reflected in the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") (and vice versa). - * **qubit\_order** (*Iterable\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*] or None*) – the order that the qubits should be indexed in the output DAG. Defaults to the same order as in the circuit. - * **clbit\_order** (*Iterable\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*] or None*) – the order that the clbits should be indexed in the output DAG. Defaults to the same order as in the circuit. + * **qubit\_order** (*Iterable\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*] or None*) – the order that the qubits should be indexed in the output DAG. Defaults to the same order as in the circuit. + * **clbit\_order** (*Iterable\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*] or None*) – the order that the clbits should be indexed in the output DAG. Defaults to the same order as in the circuit. **Returns** @@ -62,7 +62,7 @@ python_api_name: qiskit.converters ### dag\_to\_circuit - + Build a `QuantumCircuit` object from a `DAGCircuit`. **Parameters** @@ -104,7 +104,7 @@ python_api_name: qiskit.converters ### circuit\_to\_instruction - + Build an [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") object from a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). The instruction is anonymous (not tied to a named quantum register), and so can be inserted into another circuit. The instruction will have the same string name as the circuit. @@ -147,7 +147,7 @@ python_api_name: qiskit.converters ### circuit\_to\_gate - + Build a [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") object from a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). The gate is anonymous (not tied to a named quantum register), and so can be inserted into another circuit. The gate will have the same string name as the circuit. @@ -174,7 +174,7 @@ python_api_name: qiskit.converters ### dagdependency\_to\_circuit - + Build a `QuantumCircuit` object from a `DAGDependency`. **Parameters** @@ -192,7 +192,7 @@ python_api_name: qiskit.converters ### circuit\_to\_dagdependency - + Build a `DAGDependency` object from a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). **Parameters** @@ -211,7 +211,7 @@ python_api_name: qiskit.converters ### dag\_to\_dagdependency - + Build a `DAGDependency` object from a `DAGCircuit`. **Parameters** @@ -230,7 +230,7 @@ python_api_name: qiskit.converters ### dagdependency\_to\_dag - + Build a `DAGCircuit` object from a `DAGDependency`. **Parameters** diff --git a/docs/api/qiskit/dev/dagcircuit.mdx b/docs/api/qiskit/dev/dagcircuit.mdx index 63942dd3887..ba842c943e2 100644 --- a/docs/api/qiskit/dev/dagcircuit.mdx +++ b/docs/api/qiskit/dev/dagcircuit.mdx @@ -34,7 +34,7 @@ python_api_name: qiskit.dagcircuit ### DAGCircuitError - + Base class for errors raised by the DAGCircuit object. Set the error message. @@ -42,7 +42,7 @@ python_api_name: qiskit.dagcircuit ### DAGDependencyError - + Base class for errors raised by the DAGDependency object. Set the error message. diff --git a/docs/api/qiskit/dev/exceptions.mdx b/docs/api/qiskit/dev/exceptions.mdx index 7cce12fc208..ba85b5cdeda 100644 --- a/docs/api/qiskit/dev/exceptions.mdx +++ b/docs/api/qiskit/dev/exceptions.mdx @@ -24,7 +24,7 @@ All Qiskit-related exceptions raised by Qiskit are subclasses of the base: ### QiskitError - + Base class for errors raised by Qiskit. Set the error message. @@ -40,7 +40,7 @@ Qiskit has several optional features that depend on other packages that are not ### MissingOptionalLibraryError - + Raised when an optional library is missing. Set the error message. :param libname: Name of missing library :param name: Name of class, function, module that uses this library :param pip\_install: pip install command, if any :param msg: Descriptive message, if any @@ -50,7 +50,7 @@ Two more uncommon errors relate to failures in reading user-configuration files, ### QiskitUserConfigError - + Raised when an error is encountered reading a user config file. Set the error message. @@ -58,7 +58,7 @@ Two more uncommon errors relate to failures in reading user-configuration files, ### InvalidFileError - + Raised when the file provided is not valid for the specific task. Set the error message. @@ -70,7 +70,7 @@ Some particular features of Qiskit may raise custom warnings. In general, Qiskit ### QiskitWarning - + Common subclass of warnings for Qiskit-specific warnings being raised. @@ -78,7 +78,7 @@ Related to [`MissingOptionalLibraryError`](#qiskit.exceptions.MissingOptionalLib ### OptionalDependencyImportWarning - + Raised when an optional library raises errors during its import. @@ -90,7 +90,7 @@ When experimental features are being used, Qiskit will raise [`ExperimentalWarni ### ExperimentalWarning - + Raised when an experimental feature is being used. diff --git a/docs/api/qiskit/dev/index.mdx b/docs/api/qiskit/dev/index.mdx index 7e20f134155..a9e575c88c3 100644 --- a/docs/api/qiskit/dev/index.mdx +++ b/docs/api/qiskit/dev/index.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit # API Reference -* [Quantum Circuits (`qiskit.circuit`)](circuit) +* [Quantum circuit model (`qiskit.circuit`)](circuit) * [Circuit Library (`qiskit.circuit.library`)](circuit_library) * [Classical expressions (`qiskit.circuit.classical`)](circuit_classical) * [Singleton instructions (`qiskit.circuit.singleton`)](circuit_singleton) diff --git a/docs/api/qiskit/dev/passmanager.mdx b/docs/api/qiskit/dev/passmanager.mdx index c98aef3344d..7a730fdd1e4 100644 --- a/docs/api/qiskit/dev/passmanager.mdx +++ b/docs/api/qiskit/dev/passmanager.mdx @@ -162,7 +162,7 @@ With the pass manager framework, a developer can flexibly customize the optimiza ### PassManagerError - + Pass manager error. Set the error message. diff --git a/docs/api/qiskit/dev/primitives.mdx b/docs/api/qiskit/dev/primitives.mdx index 7fb20956f7c..7bb97659146 100644 --- a/docs/api/qiskit/dev/primitives.mdx +++ b/docs/api/qiskit/dev/primitives.mdx @@ -85,7 +85,7 @@ print(f"The primitive-job finished with result {job_result}") [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.BaseSamplerV2") is a primitive that samples outputs of quantum circuits. -Following construction, a sampler is used by calling its [`run()`](qiskit.primitives.BaseSamplerV2#run "qiskit.primitives.BaseSamplerV2.run") method with a list of pubs (Primitive Unified Blocks). Each pub contains values that, together, define a computational unit of work for the sampler to complete: +Following construction, a sampler is used by calling its [`run()`](qiskit.primitives.BaseSamplerV2#run "qiskit.primitives.BaseSamplerV2.run") method with a list of pubs (Primitive Unified Blocs). Each pub contains values that, together, define a computational unit of work for the sampler to complete: * A single [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"), possibly parameterized. * A collection parameter value sets to bind the circuit against if it is parametric. @@ -96,7 +96,7 @@ Running an estimator returns a [`BasePrimitiveJob`](qiskit.primitives.BasePrimit Here is an example of how a sampler is used. ```python -from qiskit.primitives.statevector_sampler import Sampler +from qiskit.primitives import StatevectorSampler as Sampler from qiskit import QuantumCircuit from qiskit.circuit.library import RealAmplitudes @@ -304,12 +304,13 @@ The formal distinction between the Primitives V1 and V2 APIs are the base classe ## Primitives API -### Primitives V2 +### Estimator V2 | | | | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | | [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.BaseEstimatorV2")() | Estimator V2 base class. | | [`StatevectorEstimator`](qiskit.primitives.StatevectorEstimator "qiskit.primitives.StatevectorEstimator")(\*\[, default\_precision, ...]) | Simple implementation of [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.BaseEstimatorV2") with full state vector simulation. | +| [`BackendEstimatorV2`](qiskit.primitives.BackendEstimatorV2 "qiskit.primitives.BackendEstimatorV2")(\*, backend\[, options]) | Evaluates expectation values for provided quantum circuit and observable combinations | ### Sampler V2 @@ -317,6 +318,7 @@ The formal distinction between the Primitives V1 and V2 APIs are the base classe | -------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | | [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.BaseSamplerV2")() | Sampler V2 base class. | | [`StatevectorSampler`](qiskit.primitives.StatevectorSampler "qiskit.primitives.StatevectorSampler")(\*\[, default\_shots, seed]) | Simple implementation of [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.BaseSamplerV2") using full state vector simulation. | +| [`BackendSamplerV2`](qiskit.primitives.BackendSamplerV2 "qiskit.primitives.BackendSamplerV2")(\*, backend\[, options]) | Evaluates bitstrings for provided quantum circuits | ### Results V2 diff --git a/docs/api/qiskit/dev/providers.mdx b/docs/api/qiskit/dev/providers.mdx index 0a1ea8fdc73..d4d9f8fecfd 100644 --- a/docs/api/qiskit/dev/providers.mdx +++ b/docs/api/qiskit/dev/providers.mdx @@ -32,7 +32,7 @@ Each minor version release of qiskit-terra **may** increment the version of any To enable providers to have time to adjust to changes in this interface Terra will support multiple versions of each class at once. Given the nature of one version per release the version deprecation policy is a bit more conservative than the standard deprecation policy. Terra will support a provider interface version for a minimum of 3 minor releases or the first release after 6 months from the release that introduced a version, whichever is longer, prior to a potential deprecation. After that the standard deprecation policy will apply to that interface version. This will give providers and users sufficient time to adapt to potential breaking changes in the interface. So for example lets say in 0.19.0 `BackendV2` is introduced and in the 3 months after the release of 0.19.0 we release 0.20.0, 0.21.0, and 0.22.0, then 7 months after 0.19.0 we release 0.23.0. In 0.23.0 we can deprecate BackendV2, and it needs to still be supported and can’t be removed until the deprecation policy completes. -It’s worth pointing out that Terra’s version support policy doesn’t mean providers themselves will have the same support story, they can (and arguably should) update to newer versions as soon as they can, the support window is just for Terra’s supported versions. Part of this lengthy window prior to deprecation is to give providers enough time to do their own deprecation of a potential end user impacting change in a user facing part of the interface prior to bumping their version. For example, let’s say we changed the signature to `Backend.run()` in `BackendV34` in a backwards incompatible way. Before Aer could update its [`AerSimulator`](https://qiskit.github.io/qiskit-aer/stubs/qiskit_aer.AerSimulator.html#qiskit_aer.AerSimulator "(in Qiskit Aer v0.13.3)") class to be based on version 34 they’d need to deprecate the old signature prior to switching over. The changeover for Aer is not guaranteed to be lockstep with Terra so we need to ensure there is a sufficient amount of time for Aer to complete its deprecation cycle prior to removing version 33 (ie making version 34 mandatory/the minimum version). +It’s worth pointing out that Terra’s version support policy doesn’t mean providers themselves will have the same support story, they can (and arguably should) update to newer versions as soon as they can, the support window is just for Terra’s supported versions. Part of this lengthy window prior to deprecation is to give providers enough time to do their own deprecation of a potential end user impacting change in a user facing part of the interface prior to bumping their version. For example, let’s say we changed the signature to `Backend.run()` in `BackendV34` in a backwards incompatible way. Before Aer could update its [`AerSimulator`](https://qiskit.github.io/qiskit-aer/stubs/qiskit_aer.AerSimulator.html#qiskit_aer.AerSimulator "(in Qiskit Aer v0.14.0)") class to be based on version 34 they’d need to deprecate the old signature prior to switching over. The changeover for Aer is not guaranteed to be lockstep with Terra so we need to ensure there is a sufficient amount of time for Aer to complete its deprecation cycle prior to removing version 33 (ie making version 34 mandatory/the minimum version). ## Abstract Classes @@ -77,7 +77,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p ### QiskitBackendNotFoundError - + Base class for errors raised while looking for a backend. Set the error message. @@ -85,7 +85,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p ### BackendPropertyError - + Base class for errors raised while looking for a backend property. Set the error message. @@ -93,7 +93,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p ### JobError - + Base class for errors raised by Jobs. Set the error message. @@ -101,7 +101,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p ### JobTimeoutError - + Base class for timeout errors raised by jobs. Set the error message. @@ -109,7 +109,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p ### BackendConfigurationError - + Base class for errors raised by the BackendConfiguration. Set the error message. @@ -492,8 +492,8 @@ Below is a table of example access patterns in [`BackendV1`](qiskit.providers.Ba | `backend.properties().t1(0)` | `backend.qubit_properties(0).t1` | | | `backend.properties().t2(0)` | `backend.qubit_properties(0).t2` | | | `backend.properties().frequency(0)` | `backend.qubit_properties(0).frequency` | | -| `backend.properties().readout_error(0)` | `backend.target["measure"][(0,)].error` | In [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") the error rate for the [`Measure`](qiskit.circuit.library.Measure "qiskit.circuit.library.Measure") operation on a given qubit is used to model the readout error. However a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") can implement multiple measurement types and list them separately in a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target"). | -| `backend.properties().readout_length(0)` | `backend.target["measure"][(0,)].duration` | In [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") the duration for the [`Measure`](qiskit.circuit.library.Measure "qiskit.circuit.library.Measure") operation on a given qubit is used to model the readout length. However, a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") can implement multiple measurement types and list them separately in a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target"). | +| `backend.properties().readout_error(0)` | `backend.target["measure"][(0,)].error` | In [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") the error rate for the `Measure` operation on a given qubit is used to model the readout error. However a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") can implement multiple measurement types and list them separately in a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target"). | +| `backend.properties().readout_length(0)` | `backend.target["measure"][(0,)].duration` | In [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") the duration for the `Measure` operation on a given qubit is used to model the readout length. However, a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") can implement multiple measurement types and list them separately in a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target"). | There is also a [`BackendV2Converter`](qiskit.providers.BackendV2Converter "qiskit.providers.BackendV2Converter") class available that enables you to wrap a [`BackendV1`](qiskit.providers.BackendV1 "qiskit.providers.BackendV1") object with a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") interface. diff --git a/docs/api/qiskit/dev/providers_fake_provider.mdx b/docs/api/qiskit/dev/providers_fake_provider.mdx index d5849293cb8..be361f9924a 100644 --- a/docs/api/qiskit/dev/providers_fake_provider.mdx +++ b/docs/api/qiskit/dev/providers_fake_provider.mdx @@ -81,7 +81,7 @@ plot_histogram(counts) The V1 fake backends are based on a set of base classes: - + This is a dummy backend just for testing purposes. FakeBackend initializer. @@ -92,7 +92,7 @@ The V1 fake backends are based on a set of base classes: * **time\_alive** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – time to wait before returning result - + A fake OpenQASM backend. FakeBackend initializer. @@ -103,7 +103,7 @@ The V1 fake backends are based on a set of base classes: * **time\_alive** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – time to wait before returning result - + A fake pulse backend. FakeBackend initializer. diff --git a/docs/api/qiskit/dev/pulse.mdx b/docs/api/qiskit/dev/pulse.mdx index 362c0823216..999222d23ca 100644 --- a/docs/api/qiskit/dev/pulse.mdx +++ b/docs/api/qiskit/dev/pulse.mdx @@ -70,7 +70,7 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls These are all instances of the same base class: - + The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels. Instruction initializer. @@ -161,7 +161,7 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe All channels are children of the same abstract base class: - + Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0. When serialized channels are identified by their serialized name ``. The type of the channel is interpreted from the prefix, and the index often (but not always) maps to the qubit index. All concrete channel classes must have a `prefix` class attribute (and instances of that class have an index attribute). Base classes which have `prefix` set to `None` are prevented from being instantiated. @@ -214,7 +214,7 @@ The alignment transforms define alignment policies of instructions in [`Schedule These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind"). - + An abstract class for schedule alignment. Create new context. @@ -228,7 +228,7 @@ The canonicalization transforms convert schedules to a form amenable for executi ### add\_implicit\_acquires - + Return a new schedule with implicit acquires from the measurement mapping replaced by explicit ones. @@ -251,7 +251,7 @@ The canonicalization transforms convert schedules to a form amenable for executi ### align\_measures - + Return new schedules where measurements occur at the same physical time. This transformation will align the first [`Acquire`](qiskit.pulse.instructions.Acquire "qiskit.pulse.instructions.Acquire") on every channel to occur at the same time. @@ -318,7 +318,7 @@ The canonicalization transforms convert schedules to a form amenable for executi ### block\_to\_schedule - + Convert `ScheduleBlock` to `Schedule`. **Parameters** @@ -345,7 +345,7 @@ The canonicalization transforms convert schedules to a form amenable for executi ### compress\_pulses - + Optimization pass to replace identical pulses. **Parameters** @@ -363,7 +363,7 @@ The canonicalization transforms convert schedules to a form amenable for executi ### flatten - + Flatten (inline) any called nodes into a Schedule tree with no nested children. **Parameters** @@ -385,7 +385,7 @@ The canonicalization transforms convert schedules to a form amenable for executi ### inline\_subroutines - + Recursively remove call instructions and inline the respective subroutine instructions. Assigned parameter values, which are stored in the parameter table, are also applied. The subroutine is copied before the parameter assignment to avoid mutation problem. @@ -409,7 +409,7 @@ The canonicalization transforms convert schedules to a form amenable for executi ### pad - + Pad the input Schedule with `Delay``s on all unoccupied timeslots until ``schedule.duration` or `until` if not `None`. **Parameters** @@ -435,7 +435,7 @@ The canonicalization transforms convert schedules to a form amenable for executi ### remove\_directives - + Remove directives. **Parameters** @@ -453,7 +453,7 @@ The canonicalization transforms convert schedules to a form amenable for executi ### remove\_trivial\_barriers - + Remove trivial barriers with 0 or 1 channels. **Parameters** @@ -477,7 +477,7 @@ The DAG transforms create DAG representation of input program. This can be used ### block\_to\_dag - + Convert schedule block instruction into DAG. `ScheduleBlock` can be represented as a DAG as needed. For example, equality of two programs are efficiently checked on DAG representation. @@ -535,7 +535,7 @@ A sequence of transformations to generate a target code. ### target\_qobj\_transform - + A basic pulse program transformation for OpenPulse API execution. **Parameters** @@ -752,7 +752,7 @@ The above is just a small taste of what is possible with the builder. See the re ### build - + Create a context manager for launching the imperative pulse builder DSL. To enter a building context and starting building a pulse program: @@ -812,7 +812,7 @@ DriveChannel(0) ### acquire\_channel - + Return `AcquireChannel` for `qubit` on the active builder backend. Examples: @@ -838,7 +838,7 @@ DriveChannel(0) ### control\_channels - + Return `ControlChannel` for `qubit` on the active builder backend. Return the secondary drive channel for the given qubit – typically utilized for controlling multi-qubit interactions. @@ -873,7 +873,7 @@ DriveChannel(0) ### drive\_channel - + Return `DriveChannel` for `qubit` on the active builder backend. Examples: @@ -899,7 +899,7 @@ DriveChannel(0) ### measure\_channel - + Return `MeasureChannel` for `qubit` on the active builder backend. Examples: @@ -958,7 +958,7 @@ drive_sched.draw() ### acquire - + Acquire for a `duration` on a `channel` and store the result in a `register`. Examples: @@ -995,7 +995,7 @@ drive_sched.draw() ### barrier - + Barrier directive for a set of channels and qubits. This directive prevents the compiler from moving instructions across the barrier. Consider the case where we want to enforce that one pulse happens after another on separate channels, this can be done with: @@ -1062,7 +1062,7 @@ drive_sched.draw() ### call - + Call the subroutine within the currently active builder context with arbitrary parameters which will be assigned to the target program. @@ -1231,7 +1231,7 @@ drive_sched.draw() ### delay - + Delay on a `channel` for a `duration`. Examples: @@ -1254,7 +1254,7 @@ drive_sched.draw() ### play - + Play a `pulse` on a `channel`. Examples: @@ -1277,7 +1277,7 @@ drive_sched.draw() ### reference - + Refer to undefined subroutine by string keys. A [`Reference`](qiskit.pulse.instructions.Reference "qiskit.pulse.instructions.Reference") instruction is implicitly created and a schedule can be separately registered to the reference at a later stage. @@ -1302,7 +1302,7 @@ drive_sched.draw() ### set\_frequency - + Set the `frequency` of a pulse `channel`. Examples: @@ -1325,7 +1325,7 @@ drive_sched.draw() ### set\_phase - + Set the `phase` of a pulse `channel`. Examples: @@ -1350,7 +1350,7 @@ drive_sched.draw() ### shift\_frequency - + Shift the `frequency` of a pulse `channel`. Examples: @@ -1373,7 +1373,7 @@ drive_sched.draw() ### shift\_phase - + Shift the `phase` of a pulse `channel`. Examples: @@ -1398,7 +1398,7 @@ drive_sched.draw() ### snapshot - + Simulator snapshot. Examples: @@ -1440,7 +1440,7 @@ pulse_prog.draw() ### align\_equispaced - + Equispaced alignment pulse scheduling context. Pulse instructions within this context are scheduled with the same interval spacing such that the total length of the context block is `duration`. If the total free `duration` cannot be evenly divided by the number of instructions within the context, the modulo is split and then prepended and appended to the returned schedule. Delay instructions are automatically inserted in between pulses. @@ -1486,7 +1486,7 @@ pulse_prog.draw() ### align\_func - + Callback defined alignment pulse scheduling context. Pulse instructions within this context are scheduled at the location specified by arbitrary callback function position that takes integer index and returns the associated fractional location within \[0, 1]. Delay instruction is automatically inserted in between pulses. @@ -1538,7 +1538,7 @@ pulse_prog.draw() ### align\_left - + Left alignment pulse scheduling context. Pulse instructions within this context are scheduled as early as possible by shifting them left to the earliest available time. @@ -1573,7 +1573,7 @@ pulse_prog.draw() ### align\_right - + Right alignment pulse scheduling context. Pulse instructions within this context are scheduled as late as possible by shifting them right to the latest available time. @@ -1608,7 +1608,7 @@ pulse_prog.draw() ### align\_sequential - + Sequential alignment pulse scheduling context. Pulse instructions within this context are scheduled sequentially in time such that no two instructions will be played at the same time. @@ -1643,7 +1643,7 @@ pulse_prog.draw() ### frequency\_offset - + Shift the frequency of inputs channels on entry into context and undo on exit. Examples: @@ -1687,7 +1687,7 @@ pulse_prog.draw() ### phase\_offset - + Shift the phase of input channels on entry into context and undo on exit. Examples: @@ -1741,7 +1741,7 @@ MemorySlot(0) ### measure - + Measure a qubit within the currently active builder context. At the pulse level a measurement is composed of both a stimulus pulse and an acquisition instruction which tells the systems measurement unit to acquire data and process it. We provide this measurement macro to automate the process for you, but if desired full control is still available with [`acquire()`](#qiskit.pulse.builder.acquire "qiskit.pulse.builder.acquire") and [`play()`](#qiskit.pulse.builder.play "qiskit.pulse.builder.play"). @@ -1796,7 +1796,7 @@ MemorySlot(0) ### measure\_all - + Measure all qubits within the currently active builder context. A simple macro function to measure all of the qubits in the device at the same time. This is useful for handling device `meas_map` and single measurement constraints. @@ -1829,7 +1829,7 @@ MemorySlot(0) ### delay\_qubits - + Insert delays on all the `channels.Channel`s that correspond to the input `qubits` at the same time. Examples: @@ -1886,7 +1886,7 @@ There are 1e-06 seconds in 4500 samples. ### active\_backend - + Get the backend of the currently active builder context. **Returns** @@ -1906,7 +1906,7 @@ There are 1e-06 seconds in 4500 samples. ### num\_qubits - + Return number of qubits in the currently active backend. Examples: @@ -1936,7 +1936,7 @@ There are 1e-06 seconds in 4500 samples. ### qubit\_channels - + Returns the set of channels associated with a qubit. Examples: @@ -1970,7 +1970,7 @@ There are 1e-06 seconds in 4500 samples. ### samples\_to\_seconds - + Obtain the time in seconds that will elapse for the input number of samples on the active backend. **Parameters** @@ -1988,7 +1988,7 @@ There are 1e-06 seconds in 4500 samples. ### seconds\_to\_samples - + Obtain the number of samples that will elapse in `seconds` on the active backend. Rounds down. @@ -2016,7 +2016,7 @@ There are 1e-06 seconds in 4500 samples. ### PulseError - + Errors raised by the pulse module. Set the error message. @@ -2024,7 +2024,7 @@ There are 1e-06 seconds in 4500 samples. ### BackendNotSet - + Raised if the builder context does not have a backend. Set the error message. @@ -2032,7 +2032,7 @@ There are 1e-06 seconds in 4500 samples. ### NoActiveBuilder - + Raised if no builder context is active. Set the error message. @@ -2040,7 +2040,7 @@ There are 1e-06 seconds in 4500 samples. ### UnassignedDurationError - + Raised if instruction duration is unassigned. Set the error message. @@ -2048,7 +2048,7 @@ There are 1e-06 seconds in 4500 samples. ### UnassignedReferenceError - + Raised if subroutine is unassigned. Set the error message. diff --git a/docs/api/qiskit/dev/qasm2.mdx b/docs/api/qiskit/dev/qasm2.mdx index 8efd7a34092..f8132a0c82a 100644 --- a/docs/api/qiskit/dev/qasm2.mdx +++ b/docs/api/qiskit/dev/qasm2.mdx @@ -32,7 +32,7 @@ This module contains two public functions, both of which create a [`QuantumCircu ### load - + Parse an OpenQASM 2 program from a file into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). The given path should be ASCII or UTF-8 encoded, and contain the OpenQASM 2 program. **Parameters** @@ -55,7 +55,7 @@ This module contains two public functions, both of which create a [`QuantumCircu ### loads - + Parse an OpenQASM 2 program from a string into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). **Parameters** @@ -83,7 +83,7 @@ Both of these loading functions also take an argument `include_path`, which is a You can extend the quantum components of the OpenQASM 2 language by passing an iterable of information on custom instructions as the argument `custom_instructions`. In files that have compatible definitions for these instructions, the given `constructor` will be used in place of whatever other handling [`qiskit.qasm2`](#module-qiskit.qasm2 "qiskit.qasm2") would have done. These instructions may optionally be marked as `builtin`, which causes them to not require an `opaque` or `gate` declaration, but they will silently ignore a compatible declaration. Either way, it is an error to provide a custom instruction that has a different number of parameters or qubits as a defined instruction in a parsed program. Each element of the argument iterable should be a particular data class: - + Information about a custom instruction that should be defined during the parse. The `name`, `num_params` and `num_qubits` fields are self-explanatory. The `constructor` field should be a callable object with signature `*args -> Instruction`, where each of the `num_params` `args` is a floating-point value. Most of the built-in Qiskit gate classes have this form. @@ -119,7 +119,7 @@ Similar to other serialisation modules in Python, this module offers two public ### dump - + Dump a circuit as an OpenQASM 2 program to a file or stream. **Parameters** @@ -134,7 +134,7 @@ Similar to other serialisation modules in Python, this module offers two public ### dumps - + Export a circuit to an OpenQASM 2 program in a string. **Parameters** @@ -160,7 +160,7 @@ This module defines a generic error type that derives from [`QiskitError`](excep ### QASM2Error - + A general error raised by the OpenQASM 2 interoperation layer. Set the error message. @@ -170,7 +170,7 @@ In cases where the lexer or parser fails due to an invalid OpenQASM 2 file, the ### QASM2ParseError - + An error raised because of a failure to parse an OpenQASM 2 file. Set the error message. @@ -180,7 +180,7 @@ When the exporters fail to export a circuit, likely because it has structure tha ### QASM2ExportError - + An error raised because of a failure to convert a Qiskit object to an OpenQASM 2 form. Set the error message. @@ -470,7 +470,7 @@ In particular, in the legacy importers: The quadruple-controlled $X$ gate., corresponding to [`C4XGate`](qiskit.circuit.library.C4XGate "qiskit.circuit.library.C4XGate"). -* if *any* `opaque` or `gate` definition was given for the name `delay`, they attempt to output a [`Delay`](qiskit.circuit.Delay "qiskit.circuit.Delay") instruction at each call. To function, this expects a definition compatible with `opaque delay(t) q;`, where the time `t` is given in units of `dt`. The importer will raise errors on construction if there was not exactly one parameter and one qubit, or if the parameter is not integer-valued. +* if *any* `opaque` or `gate` definition was given for the name `delay`, they attempt to output a [`Delay`](circuit#qiskit.circuit.Delay "qiskit.circuit.Delay") instruction at each call. To function, this expects a definition compatible with `opaque delay(t) q;`, where the time `t` is given in units of `dt`. The importer will raise errors on construction if there was not exactly one parameter and one qubit, or if the parameter is not integer-valued. * the additional scientific-calculator functions `asin`, `acos` and `atan` are available. diff --git a/docs/api/qiskit/dev/qasm3.mdx b/docs/api/qiskit/dev/qasm3.mdx index 571a99346ae..60e70056d4a 100644 --- a/docs/api/qiskit/dev/qasm3.mdx +++ b/docs/api/qiskit/dev/qasm3.mdx @@ -26,7 +26,7 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3. ### dump - + Serialize a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") object as an OpenQASM 3 stream to file-like object. **Parameters** @@ -38,7 +38,7 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3. ### dumps - + Serialize a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") object in an OpenQASM 3 string. **Parameters** @@ -57,7 +57,7 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3. Both of these exporter functions are single-use wrappers around the main [`Exporter`](#qiskit.qasm3.Exporter "qiskit.qasm3.Exporter") class. For more complex exporting needs, including dumping multiple circuits in a single session, it may be more convenient or faster to use the complete interface. - + QASM3 exporter main class. **Parameters** @@ -90,13 +90,13 @@ Both of these exporter functions are single-use wrappers around the main [`Expor ### dump - + Convert the circuit to OpenQASM 3, dumping the result to a file or text stream. ### dumps - + Convert the circuit to OpenQASM 3, returning the result as a string. @@ -105,7 +105,7 @@ All of these interfaces will raise [`QASM3ExporterError`](#qiskit.qasm3.QASM3Exp ### QASM3ExporterError - + An error raised during running the OpenQASM 3 exporter. Set the error message. @@ -115,7 +115,7 @@ All of these interfaces will raise [`QASM3ExporterError`](#qiskit.qasm3.QASM3Exp The OpenQASM 3 language is still evolving as hardware capabilities improve, so there is no final syntax that Qiskit can reliably target. In order to represent the evolving language, we will sometimes release features before formal standardization, which may need to change as the review process in the OpenQASM 3 design committees progresses. By default, the exporters will only support standardised features of the language. To enable these early-release features, use the `experimental` keyword argument of [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.dump") and [`dumps()`](#qiskit.qasm3.dumps "qiskit.qasm3.dumps"). The available feature flags are: - + Flags for experimental features that the OpenQASM 3 exporter supports. These are experimental and are more liable to change, because the OpenQASM 3 specification has not formally accepted them yet, so the syntax may not be finalized. @@ -198,18 +198,18 @@ qasm_string = qasm3.dumps(qc, experimental=qasm3.ExperimentalFeatures.SWITCH_CAS Currently only two high-level functions are offered, as Qiskit support for importing from OpenQASM 3 is in its infancy, and the implementation is expected to change significantly. The two functions are [`load()`](#qiskit.qasm3.load "qiskit.qasm3.load") and [`loads()`](#qiskit.qasm3.loads "qiskit.qasm3.loads"), which are direct counterparts of [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.dump") and [`dumps()`](#qiskit.qasm3.dumps "qiskit.qasm3.dumps"), respectively loading a program indirectly from a named file and directly from a given string. - While we are still in the exploratory release period, to use either function, the package `qiskit_qasm3_import` must be installed. This can be done by installing Qiskit Terra with the `qasm3-import` extra, such as by: + While we are still in the exploratory release period, to use either function, the package `qiskit_qasm3_import` must be installed. This can be done by installing Qiskit with the `qasm3-import` extra, such as by: ```python - pip install qiskit-terra[qasm3-import] + pip install qiskit[qasm3-import] ``` - We expect that this functionality will eventually be merged into core Terra, and no longer require an optional import, but we do not yet have a timeline for this. + We expect that this functionality will eventually be merged into Qiskit, and no longer require an optional import, but we do not yet have a timeline for this. ### load - + Load an OpenQASM 3 program from the file `filename`. **Parameters** @@ -231,7 +231,7 @@ Currently only two high-level functions are offered, as Qiskit support for impor ### loads - + Load an OpenQASM 3 program from the given string. **Parameters** @@ -255,7 +255,7 @@ Both of these two functions raise [`QASM3ImporterError`](#qiskit.qasm3.QASM3Impo ### QASM3ImporterError - + An error raised during the OpenQASM 3 importer. Set the error message. @@ -322,7 +322,7 @@ You can use the experimental interface immediately, with similar functions to th ### load\_experimental - + Load an OpenQASM 3 program from a source file into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). @@ -350,7 +350,7 @@ You can use the experimental interface immediately, with similar functions to th ### loads\_experimental - + Load an OpenQASM 3 program from a string into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). diff --git a/docs/api/qiskit/dev/qiskit.assembler.RunConfig.mdx b/docs/api/qiskit/dev/qiskit.assembler.RunConfig.mdx index 959ed9a9f2c..ba273393c9c 100644 --- a/docs/api/qiskit/dev/qiskit.assembler.RunConfig.mdx +++ b/docs/api/qiskit/dev/qiskit.assembler.RunConfig.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.assembler.RunConfig # RunConfig - + Bases: [`SimpleNamespace`](https://docs.python.org/3/library/types.html#types.SimpleNamespace "(in Python v3.12)") Class for Run Configuration. @@ -67,7 +67,7 @@ python_api_name: qiskit.assembler.RunConfig ### from\_dict - + Create a new RunConfig object from a dictionary. **Parameters** @@ -85,7 +85,7 @@ python_api_name: qiskit.assembler.RunConfig ### to\_dict - + Return a dictionary format representation of the RunConfig **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.AncillaQubit.mdx b/docs/api/qiskit/dev/qiskit.circuit.AncillaQubit.mdx deleted file mode 100644 index 7aa3667ffc6..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.AncillaQubit.mdx +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: AncillaQubit -description: API reference for qiskit.circuit.AncillaQubit -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.AncillaQubit ---- - -# AncillaQubit - - - Bases: [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") - - A qubit used as ancillary qubit. - - Creates a qubit. - - **Parameters** - - * **register** ([*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister")) – Optional. A quantum register containing the bit. - * **index** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Optional. The index of the bit in its containing register. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if the provided register is not a valid [`QuantumRegister`](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.AncillaRegister.mdx b/docs/api/qiskit/dev/qiskit.circuit.AncillaRegister.mdx deleted file mode 100644 index fd3f1949975..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.AncillaRegister.mdx +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: AncillaRegister -description: API reference for qiskit.circuit.AncillaRegister -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.AncillaRegister ---- - -# AncillaRegister - - - Bases: [`QuantumRegister`](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") - - Implement an ancilla register. - - Create a new generic register. - - Either the `size` or the `bits` argument must be provided. If `size` is not None, the register will be pre-populated with bits of the correct type. - - **Parameters** - - * **size** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Optional. The number of bits to include in the register. - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – Optional. The name of the register. If not provided, a unique name will be auto-generated from the register type. - * **bits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")*]*) – Optional. A list of Bit() instances to be used to populate the register. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if both the `size` and `bits` arguments are provided, or if neither are. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `size` is not valid. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `name` is not a valid name according to the OpenQASM spec. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained duplicated bits. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained bits of an incorrect type. - - ## Attributes - - ### instances\_counter - - - - ### name - - - Get the register name. - - - ### prefix - - - - ### size - - - Get the register size. - - - ## Methods - - ### index - - - Find the index of the provided bit within this register. - - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.AnnotatedOperation.mdx b/docs/api/qiskit/dev/qiskit.circuit.AnnotatedOperation.mdx new file mode 100644 index 00000000000..4c003351ad9 --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.circuit.AnnotatedOperation.mdx @@ -0,0 +1,129 @@ +--- +title: AnnotatedOperation +description: API reference for qiskit.circuit.AnnotatedOperation +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.circuit.AnnotatedOperation +--- + +# AnnotatedOperation + + + Bases: [`Operation`](qiskit.circuit.Operation "qiskit.circuit.operation.Operation") + + Annotated operation. + + Create a new AnnotatedOperation. + + An “annotated operation” allows to add a list of modifiers to the “base” operation. For now, the only supported modifiers are of types [`InverseModifier`](circuit#qiskit.circuit.InverseModifier "qiskit.circuit.InverseModifier"), [`ControlModifier`](circuit#qiskit.circuit.ControlModifier "qiskit.circuit.ControlModifier") and [`PowerModifier`](circuit#qiskit.circuit.PowerModifier "qiskit.circuit.PowerModifier"). + + An annotated operation can be viewed as an extension of [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") (which also allows adding control to the base operation). However, an important difference is that the circuit definition of an annotated operation is not constructed when the operation is declared, and instead happens during transpilation, specifically during the [`HighLevelSynthesis`](qiskit.transpiler.passes.HighLevelSynthesis "qiskit.transpiler.passes.HighLevelSynthesis") transpiler pass. + + An annotated operation can be also viewed as a “higher-level” or “more abstract” object that can be added to a quantum circuit. This enables writing transpiler optimization passes that make use of this higher-level representation, for instance removing a gate that is immediately followed by its inverse. + + **Parameters** + + * **base\_op** ([*Operation*](qiskit.circuit.Operation "qiskit.circuit.Operation")) – base operation being modified + * **modifiers** (*Union\[Modifier, List\[Modifier]]*) – ordered list of modifiers. Supported modifiers include `InverseModifier`, `ControlModifier` and `PowerModifier`. + + Examples: + + ```python + op1 = AnnotatedOperation(SGate(), [InverseModifier(), ControlModifier(2)]) + + op2_inner = AnnotatedGate(SGate(), InverseModifier()) + op2 = AnnotatedGate(op2_inner, ControlModifier(2)) + ``` + + Both op1 and op2 are semantically equivalent to an `SGate()` which is first inverted and then controlled by 2 qubits. + + ## Attributes + + ### name + + + Unique string identifier for operation type. + + + ### num\_clbits + + + Number of classical bits. + + + ### num\_qubits + + + Number of qubits. + + + ### base\_op + + + The base operation that the modifiers in this annotated operation applies to. + + + ### modifiers + + + Ordered sequence of the modifiers to apply to [`base_op`](#qiskit.circuit.AnnotatedOperation.base_op "qiskit.circuit.AnnotatedOperation.base_op"). The modifiers are applied in order from lowest index to highest index. + + + ## Methods + + ### control + + + Return the controlled version of itself. + + Implemented as an annotated operation, see [`AnnotatedOperation`](#qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). + + **Parameters** + + * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – number of controls to add to gate (default: `1`) + * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – ignored (used for consistency with other control methods) + * **ctrl\_state** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – The control state in decimal or as a bitstring (e.g. `'111'`). If `None`, use `2**num_ctrl_qubits-1`. + * **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – ignored (used for consistency with other control methods) + + **Returns** + + Controlled version of the given operation. + + **Return type** + + [AnnotatedOperation](#qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") + + + ### copy + + + Return a copy of the [`AnnotatedOperation`](#qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). + + **Return type** + + [*AnnotatedOperation*](#qiskit.circuit.AnnotatedOperation "qiskit.circuit.annotated_operation.AnnotatedOperation") + + + ### inverse + + + Return the inverse version of itself. + + Implemented as an annotated operation, see [`AnnotatedOperation`](#qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). + + **Parameters** + + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – ignored (used for consistency with other inverse methods) + + **Returns** + + Inverse version of the given operation. + + + ### to\_matrix + + + Return a matrix representation (allowing to construct Operator). + + + diff --git a/docs/api/qiskit/dev/qiskit.circuit.Bit.mdx b/docs/api/qiskit/dev/qiskit.circuit.Bit.mdx deleted file mode 100644 index 5056f1d058a..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.Bit.mdx +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: Bit -description: API reference for qiskit.circuit.Bit -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.Bit ---- - -# Bit - - - Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") - - Implement a generic bit. - - - This class should not be instantiated directly. This is just a superclass for [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") and [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit"). - - - Create a new generic bit. - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.BreakLoopOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.BreakLoopOp.mdx index 483d290f22e..a8309bad144 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.BreakLoopOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.BreakLoopOp.mdx @@ -8,41 +8,16 @@ python_api_name: qiskit.circuit.BreakLoopOp # BreakLoopOp - + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") - A circuit operation which, when encountered, jumps to the end of the nearest enclosing loop. - - **Circuit symbol:** - - ```python - ┌──────────────┐ - q_0: ┤0 ├ - │ │ - q_1: ┤1 ├ - │ break_loop │ - q_2: ┤2 ├ - │ │ - c_0: ╡0 ╞ - └──────────────┘ - ``` - - Create a new instruction. + A circuit operation which, when encountered, jumps to the end of the nearest enclosing loop. Can only be used inside loops. **Parameters** - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – instruction name - * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s qubit width - * **num\_clbits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s clbit width - * **params** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")*|*[*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")*|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*|ndarray|*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")*]*) – list of parameters - * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *or*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – instruction’s duration. it must be integer if `unit` is ‘dt’ - * **unit** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – time unit of duration - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *or None*) – An optional label for identifying the instruction. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – when the register is not in the correct format. - * [**TypeError**](https://docs.python.org/3/library/exceptions.html#TypeError "(in Python v3.12)") – when the optional label is provided, but it is not a string. + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – the number of qubits this affects. + * **num\_clbits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – the number of qubits this affects. + * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – an optional string label for the instruction. ## Attributes @@ -132,7 +107,7 @@ python_api_name: qiskit.circuit.BreakLoopOp ### params - return instruction params. + The parameters of this [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"). Ideally these will be gate angles. ### unit @@ -145,19 +120,19 @@ python_api_name: qiskit.circuit.BreakLoopOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -176,7 +151,7 @@ python_api_name: qiskit.circuit.BreakLoopOp ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -186,7 +161,7 @@ python_api_name: qiskit.circuit.BreakLoopOp ### copy - + Copy of the instruction. **Parameters** @@ -204,18 +179,18 @@ python_api_name: qiskit.circuit.BreakLoopOp ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -228,14 +203,16 @@ python_api_name: qiskit.circuit.BreakLoopOp ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -256,7 +233,7 @@ python_api_name: qiskit.circuit.BreakLoopOp ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -274,7 +251,7 @@ python_api_name: qiskit.circuit.BreakLoopOp ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -292,7 +269,7 @@ python_api_name: qiskit.circuit.BreakLoopOp ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -300,7 +277,7 @@ python_api_name: qiskit.circuit.BreakLoopOp ### validate\_parameter - + Instruction parameters has no validation or normalization. diff --git a/docs/api/qiskit/dev/qiskit.circuit.ClassicalRegister.mdx b/docs/api/qiskit/dev/qiskit.circuit.ClassicalRegister.mdx deleted file mode 100644 index da1d23d1770..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.ClassicalRegister.mdx +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: ClassicalRegister -description: API reference for qiskit.circuit.ClassicalRegister -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.ClassicalRegister ---- - -# ClassicalRegister - - - Bases: [`Register`](qiskit.circuit.Register "qiskit.circuit.register.Register") - - Implement a classical register. - - Create a new generic register. - - Either the `size` or the `bits` argument must be provided. If `size` is not None, the register will be pre-populated with bits of the correct type. - - **Parameters** - - * **size** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Optional. The number of bits to include in the register. - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – Optional. The name of the register. If not provided, a unique name will be auto-generated from the register type. - * **bits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")*]*) – Optional. A list of Bit() instances to be used to populate the register. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if both the `size` and `bits` arguments are provided, or if neither are. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `size` is not valid. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `name` is not a valid name according to the OpenQASM spec. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained duplicated bits. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained bits of an incorrect type. - - ## Attributes - - ### instances\_counter - - - - ### name - - - Get the register name. - - - ### prefix - - - - ### size - - - Get the register size. - - - ## Methods - - ### index - - - Find the index of the provided bit within this register. - - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.Clbit.mdx b/docs/api/qiskit/dev/qiskit.circuit.Clbit.mdx deleted file mode 100644 index f249f7d5eaa..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.Clbit.mdx +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Clbit -description: API reference for qiskit.circuit.Clbit -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.Clbit ---- - -# Clbit - - - Bases: [`Bit`](qiskit.circuit.Bit "qiskit.circuit.bit.Bit") - - Implement a classical bit. - - Creates a classical bit. - - **Parameters** - - * **register** ([*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")) – Optional. A classical register containing the bit. - * **index** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Optional. The index of the bit in its containing register. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if the provided register is not a valid [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.ContinueLoopOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.ContinueLoopOp.mdx index 97c1f54b15d..fbcccf898d5 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ContinueLoopOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ContinueLoopOp.mdx @@ -8,45 +8,16 @@ python_api_name: qiskit.circuit.ContinueLoopOp # ContinueLoopOp - + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") - A circuit operation which, when encountered, moves to the next iteration of the nearest enclosing loop. - - - Can be inserted only within the body of a loop op, and must span the full width of that block. - - - **Circuit symbol:** - - ```python - ┌─────────────────┐ - q_0: ┤0 ├ - │ │ - q_1: ┤1 ├ - │ continue_loop │ - q_2: ┤2 ├ - │ │ - c_0: ╡0 ╞ - └─────────────────┘ - ``` - - Create a new instruction. + A circuit operation which, when encountered, moves to the next iteration of the nearest enclosing loop. Can only be used inside loops. **Parameters** - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – instruction name - * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s qubit width - * **num\_clbits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s clbit width - * **params** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")*|*[*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")*|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*|ndarray|*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")*]*) – list of parameters - * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *or*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – instruction’s duration. it must be integer if `unit` is ‘dt’ - * **unit** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – time unit of duration - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *or None*) – An optional label for identifying the instruction. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – when the register is not in the correct format. - * [**TypeError**](https://docs.python.org/3/library/exceptions.html#TypeError "(in Python v3.12)") – when the optional label is provided, but it is not a string. + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – the number of qubits this affects. + * **num\_clbits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – the number of qubits this affects. + * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – an optional string label for the instruction. ## Attributes @@ -136,7 +107,7 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### params - return instruction params. + The parameters of this [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"). Ideally these will be gate angles. ### unit @@ -149,19 +120,19 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -180,7 +151,7 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -190,7 +161,7 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### copy - + Copy of the instruction. **Parameters** @@ -208,18 +179,18 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -232,14 +203,16 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -260,7 +233,7 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -278,7 +251,7 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -296,7 +269,7 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -304,7 +277,7 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### validate\_parameter - + Instruction parameters has no validation or normalization. diff --git a/docs/api/qiskit/dev/qiskit.circuit.ControlFlowOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.ControlFlowOp.mdx index 56ce6b06987..d413cd932a4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ControlFlowOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ControlFlowOp.mdx @@ -8,11 +8,13 @@ python_api_name: qiskit.circuit.ControlFlowOp # ControlFlowOp - + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction"), [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Abstract class to encapsulate all control flow operations. + All subclasses of [`ControlFlowOp`](#qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") have an internal attribute, [`blocks`](#qiskit.circuit.ControlFlowOp.blocks "qiskit.circuit.ControlFlowOp.blocks"), which exposes the inner subcircuits used in the different blocks of the control flow. + Create a new instruction. **Parameters** @@ -56,7 +58,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### blocks - Tuple of QuantumCircuits which may be executed as part of the execution of this ControlFlowOp. May be parameterized by a loop parameter to be resolved at run time. + Tuple of [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")s which may be executed as part of the execution of this [`ControlFlowOp`](#qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp"). ### condition @@ -124,7 +126,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### params - return instruction params. + The parameters of this [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"). Ideally these will be gate angles. ### unit @@ -137,19 +139,19 @@ python_api_name: qiskit.circuit.ControlFlowOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -168,7 +170,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -178,7 +180,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### copy - + Copy of the instruction. **Parameters** @@ -196,18 +198,18 @@ python_api_name: qiskit.circuit.ControlFlowOp ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -220,14 +222,16 @@ python_api_name: qiskit.circuit.ControlFlowOp ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -248,12 +252,33 @@ python_api_name: qiskit.circuit.ControlFlowOp ### replace\_blocks - - Replace blocks and return new instruction. :param blocks: Tuple of QuantumCircuits to replace in instruction. + + Return a new version of this control-flow operations with the [`blocks`](#qiskit.circuit.ControlFlowOp.blocks "qiskit.circuit.ControlFlowOp.blocks") mapped to the given new ones. + + Typically this is used in a workflow such as: + + ```python + existing_op = ... + + def map_block(block: QuantumCircuit) -> QuantumCircuit: + new_block = block.copy_empty_like() + # ... do something to `new_block` ... + return new_block + + new_op = existing_op.replace_blocks( + map_block(block) for block in existing_op.blocks + ) + ``` + + It is the caller’s responsibility to ensure that the mapped blocks are defined over a unified set of circuit resources, much like constructing a [`ControlFlowOp`](#qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") using its default constructor. + + **Parameters** + + **blocks** ([*Iterable*](https://docs.python.org/3/library/typing.html#typing.Iterable "(in Python v3.12)")*\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*]*) – the new subcircuit blocks to use. **Returns** - New ControlFlowOp with replaced blocks. + New [`ControlFlowOp`](#qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") with replaced blocks. **Return type** @@ -262,7 +287,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -280,7 +305,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -298,7 +323,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -306,7 +331,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### validate\_parameter - + Instruction parameters has no validation or normalization. diff --git a/docs/api/qiskit/dev/qiskit.circuit.ControlledGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.ControlledGate.mdx index 85c27448b16..a226f55d9ec 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ControlledGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ControlledGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.ControlledGate # ControlledGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Controlled unitary gate. @@ -116,7 +116,7 @@ python_api_name: qiskit.circuit.ControlledGate ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.ControlledGate.ctrl_state "qiskit.circuit.ControlledGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -203,19 +203,19 @@ python_api_name: qiskit.circuit.ControlledGate ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation and handling of the arguments and its relationship. For example, `cx([q[0],q[1]], q[2])` means `cx(q[0], q[2]); cx(q[1], q[2])`. This method yields the arguments in the right grouping. In the given example: @@ -268,7 +268,7 @@ python_api_name: qiskit.circuit.ControlledGate ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -278,10 +278,10 @@ python_api_name: qiskit.circuit.ControlledGate ### control - + Return the controlled version of itself. - Implemented either as a controlled gate (ref. [`ControlledGate`](#qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")) or as an annotated operation (ref. `AnnotatedOperation`). + Implemented either as a controlled gate (ref. [`ControlledGate`](#qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")) or as an annotated operation (ref. [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation")). **Parameters** @@ -301,7 +301,7 @@ python_api_name: qiskit.circuit.ControlledGate ### copy - + Copy of the instruction. **Parameters** @@ -319,7 +319,7 @@ python_api_name: qiskit.circuit.ControlledGate ### inverse - + Invert this gate by calling inverse on the base gate. **Return type** @@ -329,13 +329,13 @@ python_api_name: qiskit.circuit.ControlledGate ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### power - + Creates a unitary gate as gate^exponent. **Parameters** @@ -357,8 +357,10 @@ python_api_name: qiskit.circuit.ControlledGate ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -379,7 +381,7 @@ python_api_name: qiskit.circuit.ControlledGate ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -397,7 +399,7 @@ python_api_name: qiskit.circuit.ControlledGate ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -415,7 +417,7 @@ python_api_name: qiskit.circuit.ControlledGate ### to\_matrix - + Return a Numpy.array for the gate unitary matrix. **Returns** @@ -433,7 +435,7 @@ python_api_name: qiskit.circuit.ControlledGate ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -441,7 +443,7 @@ python_api_name: qiskit.circuit.ControlledGate ### validate\_parameter - + Gate parameters should be int, float, or ParameterExpression diff --git a/docs/api/qiskit/dev/qiskit.circuit.Delay.mdx b/docs/api/qiskit/dev/qiskit.circuit.Delay.mdx deleted file mode 100644 index 387991a1a44..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.Delay.mdx +++ /dev/null @@ -1,308 +0,0 @@ ---- -title: Delay -description: API reference for qiskit.circuit.Delay -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.Delay ---- - -# Delay - - - Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") - - Do nothing and just delay/wait/idle for a specified duration. - - Create new delay instruction. - - ## Attributes - - ### base\_class - - - Get the base class of this instruction. This is guaranteed to be in the inheritance tree of `self`. - - The “base class” of an instruction is the lowest class in its inheritance tree that the object should be considered entirely compatible with for \_all\_ circuit applications. This typically means that the subclass is defined purely to offer some sort of programmer convenience over the base class, and the base class is the “true” class for a behavioural perspective. In particular, you should *not* override [`base_class`](#qiskit.circuit.Delay.base_class "qiskit.circuit.Delay.base_class") if you are defining a custom version of an instruction that will be implemented differently by hardware, such as an alternative measurement strategy, or a version of a parametrised gate with a particular set of parameters for the purposes of distinguishing it in a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") from the full parametrised gate. - - This is often exactly equivalent to `type(obj)`, except in the case of singleton instances of standard-library instructions. These singleton instances are special subclasses of their base class, and this property will return that base. For example: - - ```python - >>> isinstance(XGate(), XGate) - True - >>> type(XGate()) is XGate - False - >>> XGate().base_class is XGate - True - ``` - - In general, you should not rely on the precise class of an instruction; within a given circuit, it is expected that [`Instruction.name`](qiskit.circuit.Instruction#name "qiskit.circuit.Instruction.name") should be a more suitable discriminator in most situations. - - - ### condition - - - The classical condition on the instruction. - - - ### condition\_bits - - - Get Clbits in condition. - - - ### decompositions - - - Get the decompositions of the instruction from the SessionEquivalenceLibrary. - - - ### definition - - - Return definition in terms of other basic gates. - - - ### duration - - - Get the duration of this delay. - - - ### label - - - Return instruction label - - - ### mutable - - - Is this instance is a mutable unique instance or not. - - If this attribute is `False` the gate instance is a shared singleton and is not mutable. - - - ### name - - - Return the name. - - - ### num\_clbits - - - Return the number of clbits. - - - ### num\_qubits - - - Return the number of qubits. - - - ### params - - - return instruction params. - - - ### unit - - - Get the time unit of duration. - - - ## Methods - - ### add\_decomposition - - - Add a decomposition of the instruction to the SessionEquivalenceLibrary. - - - ### assemble - - - Assemble a QasmQobjInstruction - - - ### broadcast\_arguments - - - Validation and handling of the arguments and its relationship. - - For example, `cx([q[0],q[1]], q[2])` means `cx(q[0], q[2]); cx(q[1], q[2])`. This method yields the arguments in the right grouping. In the given example: - - ```python - in: [[q[0],q[1]], q[2]],[] - outs: [q[0], q[2]], [] - [q[1], q[2]], [] - ``` - - The general broadcasting rules are: - - > * If len(qargs) == 1: - > - > ```python - > [q[0], q[1]] -> [q[0]],[q[1]] - > ``` - > - > * If len(qargs) == 2: - > - > ```python - > [[q[0], q[1]], [r[0], r[1]]] -> [q[0], r[0]], [q[1], r[1]] - > [[q[0]], [r[0], r[1]]] -> [q[0], r[0]], [q[0], r[1]] - > [[q[0], q[1]], [r[0]]] -> [q[0], r[0]], [q[1], r[0]] - > ``` - > - > * If len(qargs) >= 3: - > - > ```python - > [q[0], q[1]], [r[0], r[1]], ...] -> [q[0], r[0], ...], [q[1], r[1], ...] - > ``` - - **Parameters** - - * **qargs** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")) – List of quantum bit arguments. - * **cargs** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")) – List of classical bit arguments. - - **Returns** - - A tuple with single arguments. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If the input is not valid. For example, the number of arguments does not match the gate expectation. - - **Return type** - - [*Iterable*](https://docs.python.org/3/library/typing.html#typing.Iterable "(in Python v3.12)")\[[tuple](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")\[[list](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)"), [list](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")]] - - - ### c\_if - - - Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. - - - This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. - - - - ### copy - - - Copy of the instruction. - - **Parameters** - - **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – name to be given to the copied circuit, if `None` then the name stays the same. - - **Returns** - - a copy of the current instruction, with the name updated if it was provided - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### inverse - - - Special case. Return self. - - - ### is\_parameterized - - - Return True .IFF. instruction is parameterized else False - - - ### repeat - - - Creates an instruction with gate repeated n amount of times. - - **Parameters** - - **n** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Number of times to repeat the instruction - - **Returns** - - Containing the definition. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If n \< 1. - - - ### reverse\_ops - - - For a composite instruction, reverse the order of sub-instructions. - - This is done by recursively reversing all sub-instructions. It does not invert any gate. - - **Returns** - - **a new instruction with** - - sub-instructions reversed. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### soft\_compare - - - Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. - - **Parameters** - - **other** (*instruction*) – other instruction. - - **Returns** - - are self and other equal up to parameter expressions. - - **Return type** - - [bool](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)") - - - ### to\_matrix - - - Return a Numpy.array for the unitary matrix. This has been added to enable simulation without making delay a full Gate type. - - **Returns** - - matrix representation. - - **Return type** - - np.ndarray - - - ### to\_mutable - - - Return a mutable copy of this gate. - - This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. - - - ### validate\_parameter - - - Delay parameter (i.e. duration) must be int, float or ParameterExpression. - - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.EquivalenceLibrary.mdx b/docs/api/qiskit/dev/qiskit.circuit.EquivalenceLibrary.mdx index 464ccbbd7ce..e0437951e4f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.EquivalenceLibrary.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.EquivalenceLibrary.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.EquivalenceLibrary # EquivalenceLibrary - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A library providing a one-way mapping of Gates to their equivalent implementations as QuantumCircuits. @@ -41,7 +41,7 @@ python_api_name: qiskit.circuit.EquivalenceLibrary ### add\_equivalence - + Add a new equivalence to the library. Future queries for the Gate will include the given circuit, in addition to all existing equivalences (including those from base). Parameterized Gates (those including qiskit.circuit.Parameters in their Gate.params) can be marked equivalent to parameterized circuits, provided the parameters match. @@ -54,7 +54,7 @@ python_api_name: qiskit.circuit.EquivalenceLibrary ### draw - + Draws the equivalence relations available in the library. **Parameters** @@ -78,7 +78,7 @@ python_api_name: qiskit.circuit.EquivalenceLibrary ### get\_entry - + Gets the set of QuantumCircuits circuits from the library which equivalently implement the given Gate. Parameterized circuits will have their parameters replaced with the corresponding entries from Gate.params. @@ -102,7 +102,7 @@ python_api_name: qiskit.circuit.EquivalenceLibrary ### has\_entry - + Check if a library contains any decompositions for gate. **Parameters** @@ -122,7 +122,7 @@ python_api_name: qiskit.circuit.EquivalenceLibrary ### keys - + Return list of keys to key to node index map. **Returns** @@ -136,7 +136,7 @@ python_api_name: qiskit.circuit.EquivalenceLibrary ### node\_index - + Return node index for a given key. **Parameters** @@ -154,7 +154,7 @@ python_api_name: qiskit.circuit.EquivalenceLibrary ### set\_entry - + Set the equivalence record for a Gate. Future queries for the Gate will return only the circuits provided. Parameterized Gates (those including qiskit.circuit.Parameters in their Gate.params) can be marked equivalent to parameterized circuits, provided the parameters match. diff --git a/docs/api/qiskit/dev/qiskit.circuit.ForLoopOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.ForLoopOp.mdx index c9345a9780d..40fee183a1a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ForLoopOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ForLoopOp.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.ForLoopOp # ForLoopOp - + Bases: [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.controlflow.control_flow.ControlFlowOp") A circuit operation which repeatedly executes a subcircuit (`body`) parameterized by a parameter `loop_parameter` through the set of integer values provided in `indexset`. @@ -20,37 +20,6 @@ python_api_name: qiskit.circuit.ForLoopOp * **body** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – The loop body to be repeatedly executed. * **label** (*Optional\[*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*]*) – An optional label for identifying the instruction. - **Circuit symbol:** - - ```python - ┌───────────┐ - q_0: ┤0 ├ - │ │ - q_1: ┤1 ├ - │ for_loop │ - q_2: ┤2 ├ - │ │ - c_0: ╡0 ╞ - └───────────┘ - ``` - - Create a new instruction. - - **Parameters** - - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – instruction name - * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s qubit width - * **num\_clbits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s clbit width - * **params** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")*|*[*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")*|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*|ndarray|*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")*]*) – list of parameters - * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *or*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – instruction’s duration. it must be integer if `unit` is ‘dt’ - * **unit** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – time unit of duration - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *or None*) – An optional label for identifying the instruction. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – when the register is not in the correct format. - * [**TypeError**](https://docs.python.org/3/library/exceptions.html#TypeError "(in Python v3.12)") – when the optional label is provided, but it is not a string. - ## Attributes ### base\_class @@ -154,19 +123,19 @@ python_api_name: qiskit.circuit.ForLoopOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -185,7 +154,7 @@ python_api_name: qiskit.circuit.ForLoopOp ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -195,7 +164,7 @@ python_api_name: qiskit.circuit.ForLoopOp ### copy - + Copy of the instruction. **Parameters** @@ -213,18 +182,18 @@ python_api_name: qiskit.circuit.ForLoopOp ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -237,14 +206,16 @@ python_api_name: qiskit.circuit.ForLoopOp ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -265,17 +236,38 @@ python_api_name: qiskit.circuit.ForLoopOp ### replace\_blocks - - Replace blocks and return new instruction. :param blocks: Tuple of QuantumCircuits to replace in instruction. + + Return a new version of this control-flow operations with the [`blocks`](#qiskit.circuit.ForLoopOp.blocks "qiskit.circuit.ForLoopOp.blocks") mapped to the given new ones. + + Typically this is used in a workflow such as: + + ```python + existing_op = ... + + def map_block(block: QuantumCircuit) -> QuantumCircuit: + new_block = block.copy_empty_like() + # ... do something to `new_block` ... + return new_block + + new_op = existing_op.replace_blocks( + map_block(block) for block in existing_op.blocks + ) + ``` + + It is the caller’s responsibility to ensure that the mapped blocks are defined over a unified set of circuit resources, much like constructing a [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") using its default constructor. + + **Parameters** + + **blocks** – the new subcircuit blocks to use. **Returns** - New ControlFlowOp with replaced blocks. + New [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") with replaced blocks. ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -293,7 +285,7 @@ python_api_name: qiskit.circuit.ForLoopOp ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -311,7 +303,7 @@ python_api_name: qiskit.circuit.ForLoopOp ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -319,7 +311,7 @@ python_api_name: qiskit.circuit.ForLoopOp ### validate\_parameter - + Instruction parameters has no validation or normalization. diff --git a/docs/api/qiskit/dev/qiskit.circuit.Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.Gate.mdx index 4e1ef331770..8dcdd7ac0cb 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.Gate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.Gate # Gate - + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") Unitary gate. @@ -110,7 +110,7 @@ python_api_name: qiskit.circuit.Gate ### params - return instruction params. + The parameters of this [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"). Ideally these will be gate angles. ### unit @@ -123,19 +123,19 @@ python_api_name: qiskit.circuit.Gate ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation and handling of the arguments and its relationship. For example, `cx([q[0],q[1]], q[2])` means `cx(q[0], q[2]); cx(q[1], q[2])`. This method yields the arguments in the right grouping. In the given example: @@ -188,7 +188,7 @@ python_api_name: qiskit.circuit.Gate ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -198,10 +198,10 @@ python_api_name: qiskit.circuit.Gate ### control - + Return the controlled version of itself. - Implemented either as a controlled gate (ref. [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")) or as an annotated operation (ref. `AnnotatedOperation`). + Implemented either as a controlled gate (ref. [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")) or as an annotated operation (ref. [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation")). **Parameters** @@ -221,7 +221,7 @@ python_api_name: qiskit.circuit.Gate ### copy - + Copy of the instruction. **Parameters** @@ -239,18 +239,18 @@ python_api_name: qiskit.circuit.Gate ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -263,13 +263,13 @@ python_api_name: qiskit.circuit.Gate ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### power - + Creates a unitary gate as gate^exponent. **Parameters** @@ -291,8 +291,10 @@ python_api_name: qiskit.circuit.Gate ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -313,7 +315,7 @@ python_api_name: qiskit.circuit.Gate ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -331,7 +333,7 @@ python_api_name: qiskit.circuit.Gate ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -349,7 +351,7 @@ python_api_name: qiskit.circuit.Gate ### to\_matrix - + Return a Numpy.array for the gate unitary matrix. **Returns** @@ -367,7 +369,7 @@ python_api_name: qiskit.circuit.Gate ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -375,7 +377,7 @@ python_api_name: qiskit.circuit.Gate ### validate\_parameter - + Gate parameters should be int, float, or ParameterExpression diff --git a/docs/api/qiskit/dev/qiskit.circuit.IfElseOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.IfElseOp.mdx index 1c9d701a682..2a99edbf5b4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.IfElseOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.IfElseOp.mdx @@ -8,52 +8,21 @@ python_api_name: qiskit.circuit.IfElseOp # IfElseOp - + Bases: [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.controlflow.control_flow.ControlFlowOp") A circuit operation which executes a program (`true_body`) if a provided condition (`condition`) evaluates to true, and optionally evaluates another program (`false_body`) otherwise. - **Parameters** - - * **condition** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*expr.Expr*](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – A condition to be evaluated at circuit runtime which, if true, will trigger the evaluation of `true_body`. Can be specified as either a tuple of a `ClassicalRegister` to be tested for equality with a given `int`, or as a tuple of a `Clbit` to be compared to either a `bool` or an `int`. - * **true\_body** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – A program to be executed if `condition` evaluates to true. - * **false\_body** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") *| None*) – A optional program to be executed if `condition` evaluates to false. - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for identifying the instruction. - If provided, `false_body` must be of the same `num_qubits` and `num_clbits` as `true_body`. The classical bits used in `condition` must be a subset of those attached to the circuit on which this `IfElseOp` will be appended. - **Circuit symbol:** - - ```python - ┌───────────┐ - q_0: ┤0 ├ - │ │ - q_1: ┤1 ├ - │ if_else │ - q_2: ┤2 ├ - │ │ - c_0: ╡0 ╞ - └───────────┘ - ``` - - Create a new instruction. - **Parameters** - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – instruction name - * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s qubit width - * **num\_clbits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s clbit width - * **params** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")*|*[*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")*|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*|ndarray|*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")*]*) – list of parameters - * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *or*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – instruction’s duration. it must be integer if `unit` is ‘dt’ - * **unit** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – time unit of duration - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *or None*) – An optional label for identifying the instruction. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – when the register is not in the correct format. - * [**TypeError**](https://docs.python.org/3/library/exceptions.html#TypeError "(in Python v3.12)") – when the optional label is provided, but it is not a string. + * **condition** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*expr.Expr*](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – A condition to be evaluated in real time during circuit execution which, if true, will trigger the evaluation of `true_body`. Can be specified as either a tuple of a `ClassicalRegister` to be tested for equality with a given `int`, or as a tuple of a `Clbit` to be compared to either a `bool` or an `int`. + * **true\_body** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – A program to be executed if `condition` evaluates to true. + * **false\_body** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") *| None*) – A optional program to be executed if `condition` evaluates to false. + * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for identifying the instruction. ## Attributes @@ -158,19 +127,19 @@ python_api_name: qiskit.circuit.IfElseOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -189,7 +158,7 @@ python_api_name: qiskit.circuit.IfElseOp ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -199,7 +168,7 @@ python_api_name: qiskit.circuit.IfElseOp ### copy - + Copy of the instruction. **Parameters** @@ -217,18 +186,18 @@ python_api_name: qiskit.circuit.IfElseOp ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -241,14 +210,16 @@ python_api_name: qiskit.circuit.IfElseOp ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -269,7 +240,7 @@ python_api_name: qiskit.circuit.IfElseOp ### replace\_blocks - + Replace blocks and return new instruction. **Parameters** @@ -287,7 +258,7 @@ python_api_name: qiskit.circuit.IfElseOp ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -305,7 +276,7 @@ python_api_name: qiskit.circuit.IfElseOp ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -323,7 +294,7 @@ python_api_name: qiskit.circuit.IfElseOp ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -331,7 +302,7 @@ python_api_name: qiskit.circuit.IfElseOp ### validate\_parameter - + Instruction parameters has no validation or normalization. diff --git a/docs/api/qiskit/dev/qiskit.circuit.Instruction.mdx b/docs/api/qiskit/dev/qiskit.circuit.Instruction.mdx index 2b03d39ae53..b8b339f6d5b 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.Instruction.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.Instruction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.Instruction # Instruction - + Bases: [`Operation`](qiskit.circuit.Operation "qiskit.circuit.operation.Operation") Generic quantum instruction. @@ -118,7 +118,7 @@ python_api_name: qiskit.circuit.Instruction ### params - return instruction params. + The parameters of this [`Instruction`](#qiskit.circuit.Instruction "qiskit.circuit.Instruction"). Ideally these will be gate angles. ### unit @@ -131,19 +131,19 @@ python_api_name: qiskit.circuit.Instruction ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -162,7 +162,7 @@ python_api_name: qiskit.circuit.Instruction ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -172,7 +172,7 @@ python_api_name: qiskit.circuit.Instruction ### copy - + Copy of the instruction. **Parameters** @@ -190,18 +190,18 @@ python_api_name: qiskit.circuit.Instruction ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -214,14 +214,16 @@ python_api_name: qiskit.circuit.Instruction ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](#qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -242,7 +244,7 @@ python_api_name: qiskit.circuit.Instruction ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -260,7 +262,7 @@ python_api_name: qiskit.circuit.Instruction ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -278,7 +280,7 @@ python_api_name: qiskit.circuit.Instruction ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -286,7 +288,7 @@ python_api_name: qiskit.circuit.Instruction ### validate\_parameter - + Instruction parameters has no validation or normalization. diff --git a/docs/api/qiskit/dev/qiskit.circuit.InstructionSet.mdx b/docs/api/qiskit/dev/qiskit.circuit.InstructionSet.mdx index 4261e4c216f..7c5a6afa8cc 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.InstructionSet.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.InstructionSet.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.InstructionSet # InstructionSet - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Instruction collection, and their contexts. @@ -19,9 +19,9 @@ python_api_name: qiskit.circuit.InstructionSet **Parameters** - **resource\_requester** (*Callable\[...,* [*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") *|*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*] | None*) – + **resource\_requester** (*Callable\[...,* [*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") *|*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*] | None*) – - A callable that takes in the classical resource used in the condition, verifies that it is present in the attached circuit, resolves any indices into concrete [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") instances, and returns the concrete resource. If this is not given, specifying a condition with an index is forbidden, and all concrete [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") and [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") resources will be assumed to be valid. + A callable that takes in the classical resource used in the condition, verifies that it is present in the attached circuit, resolves any indices into concrete [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") instances, and returns the concrete resource. If this is not given, specifying a condition with an index is forbidden, and all concrete [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") and [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") resources will be assumed to be valid. The callback `resource_requester` is called once for each call to [`c_if()`](#qiskit.circuit.InstructionSet.c_if "qiskit.circuit.InstructionSet.c_if"), and assumes that a call implies that the resource will now be used. It may throw an error if the resource is not valid for usage. @@ -51,14 +51,18 @@ python_api_name: qiskit.circuit.InstructionSet ### add - + Add an instruction and its context (where it is attached). ### c\_if - - Set a classical equality condition on all the instructions in this set between the [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") or [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") `classical` and value `val`. + + Set a classical equality condition on all the instructions in this set between the [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") or [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") `classical` and value `val`. + + + You should prefer to use the [`QuantumCircuit.if_test()`](qiskit.circuit.QuantumCircuit#if_test "qiskit.circuit.QuantumCircuit.if_test") builder interface, rather than using this method. + This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition on any of the contained instructions; it does not stack. @@ -66,7 +70,7 @@ python_api_name: qiskit.circuit.InstructionSet **Parameters** - * **classical** ([*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit") *|*[*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – the classical resource the equality condition should be on. If this is given as an integer, it will be resolved into a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") using the same conventions as the circuit these instructions are attached to. + * **classical** ([*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") *|*[*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – the classical resource the equality condition should be on. If this is given as an integer, it will be resolved into a [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") using the same conventions as the circuit these instructions are attached to. * **val** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – the value the classical resource should be equal to. **Returns** @@ -80,34 +84,16 @@ python_api_name: qiskit.circuit.InstructionSet **Return type** [InstructionSet](#qiskit.circuit.InstructionSet "qiskit.circuit.InstructionSet") - - **Example** - - ```python - from qiskit import ClassicalRegister, QuantumRegister, QuantumCircuit - - qr = QuantumRegister(2) - cr = ClassicalRegister(2) - qc = QuantumCircuit(qr, cr) - qc.h(range(2)) - qc.measure(range(2), range(2)) - - # apply x gate if the classical register has the value 2 (10 in binary) - qc.x(0).c_if(cr, 2) - - # apply y gate if bit 0 is set to 1 - qc.y(1).c_if(0, 1) - - qc.draw('mpl') - ``` - - ![../\_images/qiskit-circuit-InstructionSet-1.png](/images/api/qiskit/dev/qiskit-circuit-InstructionSet-1.png) ### inverse - + Invert all instructions. + + + It is preferable to take the inverse *before* appending the gate(s) to the circuit. + diff --git a/docs/api/qiskit/dev/qiskit.circuit.Operation.mdx b/docs/api/qiskit/dev/qiskit.circuit.Operation.mdx index 5fa29da8626..c63a3f71067 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.Operation.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.Operation.mdx @@ -8,14 +8,20 @@ python_api_name: qiskit.circuit.Operation # Operation - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") - Quantum Operation Interface Class. For objects that can be added to a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). These objects include [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"), `Reset`, `Barrier`, `Measure`, and operators such as [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford"). The main purpose is to add an [`Operation`](#qiskit.circuit.Operation "qiskit.circuit.Operation") to a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") without synthesizing it before the transpilation. + Quantum operation interface. + + The minimal interface that any object must fulfil in order to be added to a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). + + Concrete instances of this interface include [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"), [`Reset`](circuit#qiskit.circuit.Reset "qiskit.circuit.Reset"), [`Barrier`](circuit#qiskit.circuit.Barrier "qiskit.circuit.Barrier"), [`Measure`](circuit#qiskit.circuit.Measure "qiskit.circuit.Measure"), and operators such as [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford"). + + The main purpose is to add allow abstract mathematical objects to be added directly onto abstract circuits, and for the exact syntheses of these to be determined later, during compilation. **Example** - Add a Clifford and a Toffoli gate to a QuantumCircuit. + Add a Clifford and a Toffoli gate to a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). ```python from qiskit import QuantumCircuit diff --git a/docs/api/qiskit/dev/qiskit.circuit.Parameter.mdx b/docs/api/qiskit/dev/qiskit.circuit.Parameter.mdx index 96c570b5d55..1de98f741ad 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.Parameter.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.Parameter.mdx @@ -8,12 +8,14 @@ python_api_name: qiskit.circuit.Parameter # Parameter - + Bases: [`ParameterExpression`](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") - Parameter Class for variable parameters. + A compile-time symbolic parameter. - A parameter is a variable value that is not required to be fixed at circuit definition. + The value of a [`Parameter`](#qiskit.circuit.Parameter "qiskit.circuit.Parameter") must be entirely determined before a circuit begins execution. Typically this will mean that you should supply values for all [`Parameter`](#qiskit.circuit.Parameter "qiskit.circuit.Parameter")s in a circuit using [`QuantumCircuit.assign_parameters()`](qiskit.circuit.QuantumCircuit#assign_parameters "qiskit.circuit.QuantumCircuit.assign_parameters"), though certain hardware vendors may allow you to give them a circuit in terms of these parameters, provided you also pass the values separately. + + This is the atom of [`ParameterExpression`](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression"), and is itself an expression. The numeric value of a parameter need not be fixed while the circuit is being defined. **Examples** @@ -40,11 +42,9 @@ python_api_name: qiskit.circuit.Parameter ![../\_images/qiskit-circuit-Parameter-1\_01.png](/images/api/qiskit/dev/qiskit-circuit-Parameter-1_01.png) - Create a new named [`Parameter`](#qiskit.circuit.Parameter "qiskit.circuit.Parameter"). - **Parameters** - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – name of the `Parameter`, used for visual representation. This can be any unicode string, e.g. “ϕ”. + * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – name of the `Parameter`, used for visual representation. This can be any Unicode string, e.g. “ϕ”. * **uuid** (*UUID | None*) – For advanced usage only. Override the UUID of this parameter, in order to make it compare equal to some other parameter object. By default, two parameters with the same name do not compare equal to help catch shadowing bugs when two circuits containing the same named parameters are spurious combined. Setting the `uuid` field when creating two parameters to the same thing (along with the same name) allows them to be equal. This is useful during serialization and deserialization. ## Attributes @@ -73,31 +73,31 @@ python_api_name: qiskit.circuit.Parameter ### abs - + Absolute of a ParameterExpression ### arccos - + Arccos of a ParameterExpression ### arcsin - + Arcsin of a ParameterExpression ### arctan - + Arctan of a ParameterExpression ### assign - + Assign one parameter to a value, which can either be numeric or another parameter expression. **Parameters** @@ -112,7 +112,7 @@ python_api_name: qiskit.circuit.Parameter ### bind - + Binds the provided set of parameters to their corresponding values. **Parameters** @@ -141,7 +141,7 @@ python_api_name: qiskit.circuit.Parameter ### conjugate - + Return the conjugate. **Return type** @@ -151,19 +151,19 @@ python_api_name: qiskit.circuit.Parameter ### cos - + Cosine of a ParameterExpression ### exp - + Exponential of a ParameterExpression ### gradient - + Get the derivative of a parameter expression w\.r.t. a specified parameter expression. **Parameters** @@ -181,19 +181,19 @@ python_api_name: qiskit.circuit.Parameter ### is\_real - + Return whether the expression is real ### log - + Logarithm of a ParameterExpression ### numeric - + Return a Python number representing this object, using the most restrictive of [`int`](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)"), [`float`](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") and [`complex`](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)") that is valid for this object. In general, an [`int`](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") is only returned if the expression only involved symbolic integers. If floating-point values were used during the evaluation, the return value will be a [`float`](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") regardless of whether the represented value is an integer. This is because floating-point values “infect” symbolic computations by their inexact nature, and symbolic libraries will use inexact floating-point semantics not exact real-number semantics when they are involved. If you want to assert that all floating-point calculations *were* carried out at infinite precision (i.e. [`float`](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") could represent every intermediate value exactly), you can use [`float.is_integer()`](https://docs.python.org/3/library/stdtypes.html#float.is_integer "(in Python v3.12)") to check if the return float represents an integer and cast it using [`int`](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") if so. This would be an unusual pattern; typically one requires this by only ever using explicitly [`Rational`](https://docs.python.org/3/library/numbers.html#numbers.Rational "(in Python v3.12)") objects while working with symbolic expressions. @@ -215,25 +215,25 @@ python_api_name: qiskit.circuit.Parameter ### sign - + Sign of a ParameterExpression ### sin - + Sine of a ParameterExpression ### subs - + Substitute self with the corresponding parameter in `parameter_map`. ### sympify - + Return symbolic expression as a raw Sympy or Symengine object. Symengine is used preferentially; if both are available, the result will always be a `symengine` object. Symengine is a separate library but has integration with Sympy. @@ -245,7 +245,7 @@ python_api_name: qiskit.circuit.Parameter ### tan - + Tangent of a ParameterExpression diff --git a/docs/api/qiskit/dev/qiskit.circuit.ParameterExpression.mdx b/docs/api/qiskit/dev/qiskit.circuit.ParameterExpression.mdx index d7a4688856d..d3eb1a1b780 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ParameterExpression.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ParameterExpression.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.ParameterExpression # ParameterExpression - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") ParameterExpression class to enable creating expressions of Parameters. @@ -34,31 +34,31 @@ python_api_name: qiskit.circuit.ParameterExpression ### abs - + Absolute of a ParameterExpression ### arccos - + Arccos of a ParameterExpression ### arcsin - + Arcsin of a ParameterExpression ### arctan - + Arctan of a ParameterExpression ### assign - + Assign one parameter to a value, which can either be numeric or another parameter expression. **Parameters** @@ -77,7 +77,7 @@ python_api_name: qiskit.circuit.ParameterExpression ### bind - + Binds the provided set of parameters to their corresponding values. **Parameters** @@ -106,7 +106,7 @@ python_api_name: qiskit.circuit.ParameterExpression ### conjugate - + Return the conjugate. **Return type** @@ -116,19 +116,19 @@ python_api_name: qiskit.circuit.ParameterExpression ### cos - + Cosine of a ParameterExpression ### exp - + Exponential of a ParameterExpression ### gradient - + Get the derivative of a parameter expression w\.r.t. a specified parameter expression. **Parameters** @@ -146,19 +146,19 @@ python_api_name: qiskit.circuit.ParameterExpression ### is\_real - + Return whether the expression is real ### log - + Logarithm of a ParameterExpression ### numeric - + Return a Python number representing this object, using the most restrictive of [`int`](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)"), [`float`](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") and [`complex`](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)") that is valid for this object. In general, an [`int`](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") is only returned if the expression only involved symbolic integers. If floating-point values were used during the evaluation, the return value will be a [`float`](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") regardless of whether the represented value is an integer. This is because floating-point values “infect” symbolic computations by their inexact nature, and symbolic libraries will use inexact floating-point semantics not exact real-number semantics when they are involved. If you want to assert that all floating-point calculations *were* carried out at infinite precision (i.e. [`float`](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") could represent every intermediate value exactly), you can use [`float.is_integer()`](https://docs.python.org/3/library/stdtypes.html#float.is_integer "(in Python v3.12)") to check if the return float represents an integer and cast it using [`int`](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") if so. This would be an unusual pattern; typically one requires this by only ever using explicitly [`Rational`](https://docs.python.org/3/library/numbers.html#numbers.Rational "(in Python v3.12)") objects while working with symbolic expressions. @@ -180,19 +180,19 @@ python_api_name: qiskit.circuit.ParameterExpression ### sign - + Sign of a ParameterExpression ### sin - + Sine of a ParameterExpression ### subs - + Returns a new Expression with replacement Parameters. **Parameters** @@ -217,7 +217,7 @@ python_api_name: qiskit.circuit.ParameterExpression ### sympify - + Return symbolic expression as a raw Sympy or Symengine object. Symengine is used preferentially; if both are available, the result will always be a `symengine` object. Symengine is a separate library but has integration with Sympy. @@ -229,7 +229,7 @@ python_api_name: qiskit.circuit.ParameterExpression ### tan - + Tangent of a ParameterExpression diff --git a/docs/api/qiskit/dev/qiskit.circuit.ParameterVector.mdx b/docs/api/qiskit/dev/qiskit.circuit.ParameterVector.mdx index a23f4e3ea33..fba97fb1512 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ParameterVector.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ParameterVector.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.ParameterVector # ParameterVector - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") ParameterVector class to quickly generate lists of parameters. @@ -31,13 +31,13 @@ python_api_name: qiskit.circuit.ParameterVector ### index - + Returns first index of value. ### resize - + Resize the parameter vector. If necessary, new elements are generated. If length is smaller than before, the previous elements are cached and not re-generated if the vector is enlarged again. This is to ensure that the parameter instances do not change. diff --git a/docs/api/qiskit/dev/qiskit.circuit.QuantumCircuit.mdx b/docs/api/qiskit/dev/qiskit.circuit.QuantumCircuit.mdx index 342c53522ef..33519fc724a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.QuantumCircuit.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.QuantumCircuit.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.QuantumCircuit # QuantumCircuit - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Create a new circuit. @@ -17,11 +17,11 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** - * **regs** (list([`Register`](qiskit.circuit.Register "qiskit.circuit.Register")) or list(`int`) or list(list([`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit")))) – + * **regs** (list([`Register`](circuit#qiskit.circuit.Register "qiskit.circuit.Register")) or list(`int`) or list(list([`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit")))) – The registers to be included in the circuit. - * If a list of [`Register`](qiskit.circuit.Register "qiskit.circuit.Register") objects, represents the [`QuantumRegister`](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") and/or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") objects to include in the circuit. + * If a list of [`Register`](circuit#qiskit.circuit.Register "qiskit.circuit.Register") objects, represents the [`QuantumRegister`](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") and/or [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") objects to include in the circuit. For example: @@ -36,7 +36,7 @@ python_api_name: qiskit.circuit.QuantumCircuit > * `QuantumCircuit(4) # A QuantumCircuit with 4 qubits` > * `QuantumCircuit(4, 3) # A QuantumCircuit with 4 qubits and 3 classical bits` - * If a list of python lists containing [`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit") objects, a collection of [`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit") s to be added to the circuit. + * If a list of python lists containing [`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit") objects, a collection of [`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit") s to be added to the circuit. * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – the name of the quantum circuit. If not set, an automatically generated string will be assigned. @@ -44,7 +44,7 @@ python_api_name: qiskit.circuit.QuantumCircuit * **metadata** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)")) – Arbitrary key value metadata to associate with the circuit. This gets stored as free-form data in a dict in the [`metadata`](#qiskit.circuit.QuantumCircuit.metadata "qiskit.circuit.QuantumCircuit.metadata") attribute. It will not be directly used in the circuit. - * **inputs** (*Iterable\[*[*expr.Var*](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var")*]*) – any variables to declare as `input` runtime variables for this circuit. These should already be existing [`expr.Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") nodes that you build from somewhere else; if you need to create the inputs as well, use [`QuantumCircuit.add_input()`](#qiskit.circuit.QuantumCircuit.add_input "qiskit.circuit.QuantumCircuit.add_input"). The variables given in this argument will be passed directly to [`add_input()`](#qiskit.circuit.QuantumCircuit.add_input "qiskit.circuit.QuantumCircuit.add_input"). A circuit cannot have both `inputs` and `captures`. + * **inputs** (*Iterable\[*[*expr.Var*](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var")*]*) – any variables to declare as `input` real-time variables for this circuit. These should already be existing [`expr.Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") nodes that you build from somewhere else; if you need to create the inputs as well, use [`QuantumCircuit.add_input()`](#qiskit.circuit.QuantumCircuit.add_input "qiskit.circuit.QuantumCircuit.add_input"). The variables given in this argument will be passed directly to [`add_input()`](#qiskit.circuit.QuantumCircuit.add_input "qiskit.circuit.QuantumCircuit.add_input"). A circuit cannot have both `inputs` and `captures`. * **captures** (*Iterable\[*[*expr.Var*](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var")*]*) – any variables that that this circuit scope should capture from a containing scope. The variables given here will be passed directly to [`add_capture()`](#qiskit.circuit.QuantumCircuit.add_capture "qiskit.circuit.QuantumCircuit.add_capture"). A circuit cannot have both `inputs` and `captures`. @@ -153,7 +153,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### instances - + ### layout @@ -182,7 +182,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the [`iter_captured_vars()`](#qiskit.circuit.QuantumCircuit.iter_captured_vars "qiskit.circuit.QuantumCircuit.iter_captured_vars") iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.QuantumCircuit.num_input_vars "qiskit.circuit.QuantumCircuit.num_input_vars") must be zero. @@ -196,7 +196,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the [`iter_declared_vars()`](#qiskit.circuit.QuantumCircuit.iter_declared_vars "qiskit.circuit.QuantumCircuit.iter_declared_vars") iterable. @@ -204,7 +204,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the [`iter_input_vars()`](#qiskit.circuit.QuantumCircuit.iter_input_vars "qiskit.circuit.QuantumCircuit.iter_input_vars") iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.QuantumCircuit.num_captured_vars "qiskit.circuit.QuantumCircuit.num_captured_vars") must be zero. @@ -224,7 +224,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the [`iter_vars()`](#qiskit.circuit.QuantumCircuit.iter_vars "qiskit.circuit.QuantumCircuit.iter_vars") iterable. @@ -317,13 +317,13 @@ python_api_name: qiskit.circuit.QuantumCircuit ### add\_bits - + Add Bits to the circuit. ### add\_calibration - + Register a low-level, custom pulse definition for the given gate. **Parameters** @@ -340,7 +340,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### add\_capture - + Add a variable to the circuit that it should capture from a scope it will be contained within. This method requires a [`Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node to enforce that you’ve got a handle to one, because you will need to declare the same variable using the same object into the outer circuit. @@ -358,7 +358,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### add\_input - + Register a variable as an input to the circuit. **Parameters** @@ -377,13 +377,13 @@ python_api_name: qiskit.circuit.QuantumCircuit ### add\_register - + Add registers. ### add\_uninitialized\_var - + Add a variable with no initializer. In most cases, you should use [`add_var()`](#qiskit.circuit.QuantumCircuit.add_var "qiskit.circuit.QuantumCircuit.add_var") to initialize the variable. To use this function, you must already hold a [`Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") instance, as the use of the function typically only makes sense in copying contexts. @@ -401,7 +401,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### add\_var - + Add a classical variable with automatic storage and scope to this circuit. The variable is considered to have been “declared” at the beginning of the circuit, but it only becomes initialized at the point of the circuit that you call this method, so it can depend on variables defined before it. @@ -463,26 +463,26 @@ python_api_name: qiskit.circuit.QuantumCircuit qc.cx(0, i) qc.measure(range(8), cr2) - # Now when we add the variable, it is initialized using the runtime state of the two - # classical registers we measured into above. + # Now when we add the variable, it is initialized using the real-time state of the + # two classical registers we measured into above. qc.add_var(my_var, expr.bit_and(cr1, cr2)) ``` ### append - + Append one or more instructions to the end of the circuit, modifying the circuit in place. - The `qargs` and `cargs` will be expanded and broadcast according to the rules of the given [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"), and any non-[`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit") specifiers (such as integer indices) will be resolved into the relevant instances. + The `qargs` and `cargs` will be expanded and broadcast according to the rules of the given [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"), and any non-[`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit") specifiers (such as integer indices) will be resolved into the relevant instances. If a [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction") is given, it will be unwrapped, verified in the context of this circuit, and a new object will be appended to the circuit. In this case, you may not pass `qargs` or `cargs` separately. **Parameters** * **instruction** ([*Operation*](qiskit.circuit.Operation "qiskit.circuit.Operation") *|*[*CircuitInstruction*](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction")) – [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") instance to append, or a [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction") with all its context. - * **qargs** (*Sequence\[QubitSpecifier] | None*) – specifiers of the [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit")s to attach instruction to. - * **cargs** (*Sequence\[ClbitSpecifier] | None*) – specifiers of the [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit")s to attach instruction to. + * **qargs** (*Sequence\[QubitSpecifier] | None*) – specifiers of the [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")s to attach instruction to. + * **cargs** (*Sequence\[ClbitSpecifier] | None*) – specifiers of the [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")s to attach instruction to. **Returns** @@ -499,7 +499,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### assign\_parameters - + Assign parameters to new parameters or values. If `parameters` is passed as a dictionary, the keys should be [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter") instances in the current circuit. The values of the dictionary can either be numeric values or new parameter objects. @@ -573,8 +573,8 @@ python_api_name: qiskit.circuit.QuantumCircuit ### barrier - - Apply [`Barrier`](qiskit.circuit.library.Barrier "qiskit.circuit.library.Barrier"). If `qargs` is empty, applies to all qubits in the circuit. + + Apply `Barrier`. If `qargs` is empty, applies to all qubits in the circuit. **Parameters** @@ -592,7 +592,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### break\_loop - + Apply [`BreakLoopOp`](qiskit.circuit.BreakLoopOp "qiskit.circuit.BreakLoopOp"). @@ -614,7 +614,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cast - + Best effort to cast value to type. Otherwise, returns the value. **Return type** @@ -624,7 +624,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cbit\_argument\_conversion - + Converts several classical bit representations (such as indexes, range, etc.) into a list of classical bits. **Parameters** @@ -642,7 +642,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### ccx - + Apply [`CCXGate`](qiskit.circuit.library.CCXGate "qiskit.circuit.library.CCXGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -665,7 +665,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### ccz - + Apply [`CCZGate`](qiskit.circuit.library.CCZGate "qiskit.circuit.library.CCZGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -689,7 +689,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### ch - + Apply [`CHGate`](qiskit.circuit.library.CHGate "qiskit.circuit.library.CHGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -712,7 +712,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### clear - + Clear all instructions in self. Clearing the circuits will keep the metadata and calibrations. @@ -720,7 +720,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cls\_instances - + Return the current number of instances of this class, useful for auto naming. **Return type** @@ -730,7 +730,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cls\_prefix - + Return the prefix to use for auto naming. **Return type** @@ -740,7 +740,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### compose - + Compose circuit with `other` circuit or instruction, optionally permuting wires. `other` can be narrower or of equal width to `self`. @@ -748,8 +748,8 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** * **other** ([*qiskit.circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction") *or*[*QuantumCircuit*](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – (sub)circuit or instruction to compose onto self. If not a [`QuantumCircuit`](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"), this can be anything that [`append`](#qiskit.circuit.QuantumCircuit.append "qiskit.circuit.QuantumCircuit.append") will accept. - * **qubits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – qubits of self to compose onto. - * **clbits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – clbits of self to compose onto. + * **qubits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – qubits of self to compose onto. + * **clbits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – clbits of self to compose onto. * **front** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If True, front composition will be performed. This is not possible within control-flow builder context managers. * **inplace** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If True, modify the object. Otherwise return composed circuit. * **wrap** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If True, wraps the other circuit into a gate (or instruction, depending on whether it contains only unitary instructions) before composing it onto self. @@ -794,7 +794,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### continue\_loop - + Apply [`ContinueLoopOp`](qiskit.circuit.ContinueLoopOp "qiskit.circuit.ContinueLoopOp"). @@ -816,7 +816,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### control - + Control this circuit on `num_ctrl_qubits` qubits. **Parameters** @@ -841,7 +841,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### copy - + Copy the circuit. **Parameters** @@ -859,7 +859,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### copy\_empty\_like - + Return a copy of self with the same structure but empty. **That structure includes:** @@ -869,7 +869,7 @@ python_api_name: qiskit.circuit.QuantumCircuit * all the qubits and clbits, including the registers - If the circuit contains any local variable declarations (those added by the `declarations` argument to the circuit constructor, or using [`add_var()`](#qiskit.circuit.QuantumCircuit.add_var "qiskit.circuit.QuantumCircuit.add_var")), they will be **uninitialized** in the output circuit. You will need to manually add store instructions for them (see [`Store`](qiskit.circuit.Store "qiskit.circuit.Store") and [`QuantumCircuit.store()`](#qiskit.circuit.QuantumCircuit.store "qiskit.circuit.QuantumCircuit.store")) to initialize them. + If the circuit contains any local variable declarations (those added by the `declarations` argument to the circuit constructor, or using [`add_var()`](#qiskit.circuit.QuantumCircuit.add_var "qiskit.circuit.QuantumCircuit.add_var")), they will be **uninitialized** in the output circuit. You will need to manually add store instructions for them (see [`Store`](circuit#qiskit.circuit.Store "qiskit.circuit.Store") and [`QuantumCircuit.store()`](#qiskit.circuit.QuantumCircuit.store "qiskit.circuit.QuantumCircuit.store")) to initialize them. **Parameters** @@ -887,7 +887,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### count\_ops - + Count each operation kind in the circuit. **Returns** @@ -901,7 +901,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cp - + Apply [`CPhaseGate`](qiskit.circuit.library.CPhaseGate "qiskit.circuit.library.CPhaseGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -925,7 +925,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### crx - + Apply [`CRXGate`](qiskit.circuit.library.CRXGate "qiskit.circuit.library.CRXGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -949,7 +949,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cry - + Apply [`CRYGate`](qiskit.circuit.library.CRYGate "qiskit.circuit.library.CRYGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -973,7 +973,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### crz - + Apply [`CRZGate`](qiskit.circuit.library.CRZGate "qiskit.circuit.library.CRZGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -997,7 +997,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cs - + Apply [`CSGate`](qiskit.circuit.library.CSGate "qiskit.circuit.library.CSGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -1020,7 +1020,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### csdg - + Apply [`CSdgGate`](qiskit.circuit.library.CSdgGate "qiskit.circuit.library.CSdgGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -1043,7 +1043,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cswap - + Apply [`CSwapGate`](qiskit.circuit.library.CSwapGate "qiskit.circuit.library.CSwapGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -1067,7 +1067,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### csx - + Apply [`CSXGate`](qiskit.circuit.library.CSXGate "qiskit.circuit.library.CSXGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -1090,7 +1090,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cu - + Apply [`CUGate`](qiskit.circuit.library.CUGate "qiskit.circuit.library.CUGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -1117,7 +1117,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cx - + Apply [`CXGate`](qiskit.circuit.library.CXGate "qiskit.circuit.library.CXGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -1140,7 +1140,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cy - + Apply [`CYGate`](qiskit.circuit.library.CYGate "qiskit.circuit.library.CYGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -1163,7 +1163,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cz - + Apply [`CZGate`](qiskit.circuit.library.CZGate "qiskit.circuit.library.CZGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -1186,15 +1186,15 @@ python_api_name: qiskit.circuit.QuantumCircuit ### dcx - + Apply [`DCXGate`](qiskit.circuit.library.DCXGate "qiskit.circuit.library.DCXGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - * **qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. - * **qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -1207,7 +1207,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### decompose - + Call a decomposition pass on this circuit, to decompose one level (shallow decompose). **Parameters** @@ -1226,8 +1226,8 @@ python_api_name: qiskit.circuit.QuantumCircuit ### delay - - Apply [`Delay`](qiskit.circuit.Delay "qiskit.circuit.Delay"). If qarg is `None`, applies to all qubits. When applying to multiple qubits, delays with the same duration will be created. + + Apply [`Delay`](circuit#qiskit.circuit.Delay "qiskit.circuit.Delay"). If qarg is `None`, applies to all qubits. When applying to multiple qubits, delays with the same duration will be created. **Parameters** @@ -1250,7 +1250,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### depth - + Return circuit depth (i.e., length of critical path). **Parameters** @@ -1272,7 +1272,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### draw - + Draw the quantum circuit. Use the output parameter to choose the drawing format: **text**: ASCII art TextDrawing that can be printed in the console. @@ -1370,15 +1370,15 @@ python_api_name: qiskit.circuit.QuantumCircuit ### ecr - + Apply [`ECRGate`](qiskit.circuit.library.ECRGate "qiskit.circuit.library.ECRGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - * **qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. - * **qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. + * **qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. + * **qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. **Returns** @@ -1391,31 +1391,31 @@ python_api_name: qiskit.circuit.QuantumCircuit ### find\_bit - - Find locations in the circuit which can be used to reference a given [`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit"). + + Find locations in the circuit which can be used to reference a given [`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit"). **Parameters** - **bit** ([*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")) – The bit to locate. + **bit** ([*Bit*](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit")) – The bit to locate. **Returns** **A 2-tuple. The first element (`index`)** - contains the index at which the `Bit` can be found (in either [`qubits`](#qiskit.circuit.QuantumCircuit.qubits "qiskit.circuit.QuantumCircuit.qubits"), [`clbits`](#qiskit.circuit.QuantumCircuit.clbits "qiskit.circuit.QuantumCircuit.clbits"), depending on its type). The second element (`registers`) is a list of `(register, index)` pairs with an entry for each [`Register`](qiskit.circuit.Register "qiskit.circuit.Register") in the circuit which contains the [`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit") (and the index in the [`Register`](qiskit.circuit.Register "qiskit.circuit.Register") at which it can be found). + contains the index at which the `Bit` can be found (in either [`qubits`](#qiskit.circuit.QuantumCircuit.qubits "qiskit.circuit.QuantumCircuit.qubits"), [`clbits`](#qiskit.circuit.QuantumCircuit.clbits "qiskit.circuit.QuantumCircuit.clbits"), depending on its type). The second element (`registers`) is a list of `(register, index)` pairs with an entry for each [`Register`](circuit#qiskit.circuit.Register "qiskit.circuit.Register") in the circuit which contains the [`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit") (and the index in the [`Register`](circuit#qiskit.circuit.Register "qiskit.circuit.Register") at which it can be found). **Return type** - namedtuple([int](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)"), List\[Tuple([Register](qiskit.circuit.Register "qiskit.circuit.Register"), [int](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)"))]) + namedtuple([int](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)"), List\[Tuple([Register](circuit#qiskit.circuit.Register "qiskit.circuit.Register"), [int](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)"))]) **Notes** - The circuit index of an [`AncillaQubit`](qiskit.circuit.AncillaQubit "qiskit.circuit.AncillaQubit") will be its index in [`qubits`](#qiskit.circuit.QuantumCircuit.qubits "qiskit.circuit.QuantumCircuit.qubits"), not [`ancillas`](#qiskit.circuit.QuantumCircuit.ancillas "qiskit.circuit.QuantumCircuit.ancillas"). + The circuit index of an [`AncillaQubit`](circuit#qiskit.circuit.AncillaQubit "qiskit.circuit.AncillaQubit") will be its index in [`qubits`](#qiskit.circuit.QuantumCircuit.qubits "qiskit.circuit.QuantumCircuit.qubits"), not [`ancillas`](#qiskit.circuit.QuantumCircuit.ancillas "qiskit.circuit.QuantumCircuit.ancillas"). **Raises** - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If the supplied [`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit") was of an unknown type. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If the supplied [`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit") could not be found on the circuit. + * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If the supplied [`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit") was of an unknown type. + * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If the supplied [`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit") could not be found on the circuit. **Return type** @@ -1424,7 +1424,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### for\_loop - + Create a `for` loop on this circuit. There are two forms for calling this function. If called with all its arguments (with the possible exception of `label`), it will create a [`ForLoopOp`](qiskit.circuit.ForLoopOp "qiskit.circuit.ForLoopOp") with the given `body`. If `body` (and `qubits` and `clbits`) are *not* passed, then this acts as a context manager, which, when entered, provides a loop variable (unless one is given, in which case it will be reused) and will automatically build a [`ForLoopOp`](qiskit.circuit.ForLoopOp "qiskit.circuit.ForLoopOp") when the scope finishes. In this form, you do not need to keep track of the qubits or clbits you are using, because the scope will handle it for you. @@ -1475,14 +1475,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### from\_instructions - + Construct a circuit from an iterable of CircuitInstructions. **Parameters** - * **instructions** (*Iterable\[*[*CircuitInstruction*](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction") *|*[*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*qiskit.circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*qiskit.circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*, Iterable\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*qiskit.circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*, Iterable\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*], Iterable\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]]]*) – The instructions to add to the circuit. - * **qubits** (*Iterable\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – Any qubits to add to the circuit. This argument can be used, for example, to enforce a particular ordering of qubits. - * **clbits** (*Iterable\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – Any classical bits to add to the circuit. This argument can be used, for example, to enforce a particular ordering of classical bits. + * **instructions** (*Iterable\[*[*CircuitInstruction*](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction") *|*[*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*qiskit.circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*qiskit.circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*, Iterable\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*qiskit.circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*, Iterable\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*], Iterable\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]]]*) – The instructions to add to the circuit. + * **qubits** (*Iterable\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – Any qubits to add to the circuit. This argument can be used, for example, to enforce a particular ordering of qubits. + * **clbits** (*Iterable\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – Any classical bits to add to the circuit. This argument can be used, for example, to enforce a particular ordering of classical bits. * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – The name of the circuit. * **global\_phase** (*ParameterValueType*) – The global phase of the circuit in radians. * **metadata** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)") *| None*) – Arbitrary key value metadata to associate with the circuit. @@ -1498,7 +1498,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### from\_qasm\_file - + Read an OpenQASM 2.0 program from a file and convert to an instance of [`QuantumCircuit`](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). **Parameters** @@ -1520,7 +1520,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### from\_qasm\_str - + Convert a string containing an OpenQASM 2.0 program to a [`QuantumCircuit`](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). **Parameters** @@ -1542,7 +1542,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### get\_instructions - + Get instructions matching name. **Parameters** @@ -1560,7 +1560,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### get\_parameter - + Retrieve a compile-time parameter that is accessible in this circuit scope by name. **Parameters** @@ -1612,7 +1612,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### get\_var - + Retrieve a variable that is accessible in this circuit scope by name. **Parameters** @@ -1662,14 +1662,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### h - + Apply [`HGate`](qiskit.circuit.library.HGate "qiskit.circuit.library.HGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -1682,13 +1682,13 @@ python_api_name: qiskit.circuit.QuantumCircuit ### has\_calibration\_for - + Return True if the circuit has a calibration defined for the instruction context. In this case, the operation does not need to be translated to the device basis. ### has\_parameter - + Check whether a parameter object exists in this circuit. **Parameters** @@ -1716,12 +1716,12 @@ python_api_name: qiskit.circuit.QuantumCircuit ### has\_register - + Test if this circuit has the register r. **Parameters** - **register** ([*Register*](qiskit.circuit.Register "qiskit.circuit.Register")) – a quantum or classical register. + **register** ([*Register*](circuit#qiskit.circuit.Register "qiskit.circuit.Register")) – a quantum or classical register. **Returns** @@ -1734,7 +1734,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### has\_var - + Check whether a variable is accessible in this scope. **Parameters** @@ -1762,14 +1762,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### id - + Apply [`IGate`](qiskit.circuit.library.IGate "qiskit.circuit.library.IGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -1782,7 +1782,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### if\_else - + Apply [`IfElseOp`](qiskit.circuit.IfElseOp "qiskit.circuit.IfElseOp"). @@ -1804,7 +1804,7 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** - * **condition** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*,* [*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")*]*) – A condition to be evaluated at circuit runtime which, if true, will trigger the evaluation of `true_body`. Can be specified as either a tuple of a `ClassicalRegister` to be tested for equality with a given `int`, or as a tuple of a `Clbit` to be compared to either a `bool` or an `int`. + * **condition** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*,* [*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")*]*) – A condition to be evaluated in real time at circuit execution, which, if true, will trigger the evaluation of `true_body`. Can be specified as either a tuple of a `ClassicalRegister` to be tested for equality with a given `int`, or as a tuple of a `Clbit` to be compared to either a `bool` or an `int`. * **true\_body** ([*QuantumCircuit*](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – The circuit body to be run if `condition` is true. * **false\_body** ([*QuantumCircuit*](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – The circuit to be run if `condition` is false. * **qubits** (*Sequence\[QubitSpecifier]*) – The circuit qubits over which the if/else should be run. @@ -1826,7 +1826,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### if\_test - + Create an `if` statement on this circuit. There are two forms for calling this function. If called with all its arguments (with the possible exception of `label`), it will create a [`IfElseOp`](qiskit.circuit.IfElseOp "qiskit.circuit.IfElseOp") with the given `true_body`, and there will be no branch for the `false` condition (see also the [`if_else()`](#qiskit.circuit.QuantumCircuit.if_else "qiskit.circuit.QuantumCircuit.if_else") method). However, if `true_body` (and `qubits` and `clbits`) are *not* passed, then this acts as a context manager, which can be used to build `if` statements. The return value of the `with` statement is a chainable context manager, which can be used to create subsequent `else` blocks. In this form, you do not need to keep track of the qubits or clbits you are using, because the scope will handle it for you. @@ -1854,7 +1854,7 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** - * **condition** (*Tuple\[Union\[*[*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*],* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – A condition to be evaluated at circuit runtime which, if true, will trigger the evaluation of `true_body`. Can be specified as either a tuple of a `ClassicalRegister` to be tested for equality with a given `int`, or as a tuple of a `Clbit` to be compared to either a `bool` or an `int`. + * **condition** (*Tuple\[Union\[*[*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*],* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – A condition to be evaluated in real time during circuit execution, which, if true, will trigger the evaluation of `true_body`. Can be specified as either a tuple of a `ClassicalRegister` to be tested for equality with a given `int`, or as a tuple of a `Clbit` to be compared to either a `bool` or an `int`. * **true\_body** (*Optional\[*[*QuantumCircuit*](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*]*) – The circuit body to be run if `condition` is true. * **qubits** (*Optional\[Sequence\[QubitSpecifier]]*) – The circuit qubits over which the if/else should be run. * **clbits** (*Optional\[Sequence\[ClbitSpecifier]]*) – The circuit clbits over which the if/else should be run. @@ -1880,7 +1880,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### initialize - + Initialize qubits in a specific state. Qubit initialization is done by first resetting the qubits to $|0\rangle$ followed by calling [`StatePreparation`](qiskit.circuit.library.StatePreparation "qiskit.circuit.library.StatePreparation") class to prepare the qubits in a specified state. Both these steps are included in the [`Initialize`](qiskit.circuit.library.Initialize "qiskit.circuit.library.Initialize") instruction. @@ -1969,7 +1969,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### inverse - + Invert (take adjoint of) this circuit. This is done by recursively inverting all gates. @@ -2015,15 +2015,15 @@ python_api_name: qiskit.circuit.QuantumCircuit ### iswap - + Apply [`iSwapGate`](qiskit.circuit.library.iSwapGate "qiskit.circuit.library.iSwapGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - * **qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. - * **qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. + * **qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. + * **qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. **Returns** @@ -2036,8 +2036,8 @@ python_api_name: qiskit.circuit.QuantumCircuit ### iter\_captured\_vars - - Get an iterable over all runtime classical variables that are captured by this circuit scope from a containing scope. This excludes input variables (see [`iter_input_vars()`](#qiskit.circuit.QuantumCircuit.iter_input_vars "qiskit.circuit.QuantumCircuit.iter_input_vars")) and locally declared variables (see [`iter_declared_vars()`](#qiskit.circuit.QuantumCircuit.iter_declared_vars "qiskit.circuit.QuantumCircuit.iter_declared_vars")). + + Get an iterable over all real-time classical variables that are captured by this circuit scope from a containing scope. This excludes input variables (see [`iter_input_vars()`](#qiskit.circuit.QuantumCircuit.iter_input_vars "qiskit.circuit.QuantumCircuit.iter_input_vars")) and locally declared variables (see [`iter_declared_vars()`](#qiskit.circuit.QuantumCircuit.iter_declared_vars "qiskit.circuit.QuantumCircuit.iter_declared_vars")). **Return type** @@ -2046,8 +2046,8 @@ python_api_name: qiskit.circuit.QuantumCircuit ### iter\_declared\_vars - - Get an iterable over all runtime classical variables that are declared with automatic storage duration in this scope. This excludes input variables (see [`iter_input_vars()`](#qiskit.circuit.QuantumCircuit.iter_input_vars "qiskit.circuit.QuantumCircuit.iter_input_vars")) and captured variables (see [`iter_captured_vars()`](#qiskit.circuit.QuantumCircuit.iter_captured_vars "qiskit.circuit.QuantumCircuit.iter_captured_vars")). + + Get an iterable over all real-time classical variables that are declared with automatic storage duration in this scope. This excludes input variables (see [`iter_input_vars()`](#qiskit.circuit.QuantumCircuit.iter_input_vars "qiskit.circuit.QuantumCircuit.iter_input_vars")) and captured variables (see [`iter_captured_vars()`](#qiskit.circuit.QuantumCircuit.iter_captured_vars "qiskit.circuit.QuantumCircuit.iter_captured_vars")). **Return type** @@ -2056,8 +2056,8 @@ python_api_name: qiskit.circuit.QuantumCircuit ### iter\_input\_vars - - Get an iterable over all runtime classical variables that are declared as inputs to this circuit scope. This excludes locally declared variables (see [`iter_declared_vars()`](#qiskit.circuit.QuantumCircuit.iter_declared_vars "qiskit.circuit.QuantumCircuit.iter_declared_vars")) and captured variables (see [`iter_captured_vars()`](#qiskit.circuit.QuantumCircuit.iter_captured_vars "qiskit.circuit.QuantumCircuit.iter_captured_vars")). + + Get an iterable over all real-time classical variables that are declared as inputs to this circuit scope. This excludes locally declared variables (see [`iter_declared_vars()`](#qiskit.circuit.QuantumCircuit.iter_declared_vars "qiskit.circuit.QuantumCircuit.iter_declared_vars")) and captured variables (see [`iter_captured_vars()`](#qiskit.circuit.QuantumCircuit.iter_captured_vars "qiskit.circuit.QuantumCircuit.iter_captured_vars")). **Return type** @@ -2066,8 +2066,8 @@ python_api_name: qiskit.circuit.QuantumCircuit ### iter\_vars - - Get an iterable over all runtime classical variables in scope within this circuit. + + Get an iterable over all real-time classical variables in scope within this circuit. This method will iterate over all variables in scope. For more fine-grained iterators, see [`iter_declared_vars()`](#qiskit.circuit.QuantumCircuit.iter_declared_vars "qiskit.circuit.QuantumCircuit.iter_declared_vars"), [`iter_input_vars()`](#qiskit.circuit.QuantumCircuit.iter_input_vars "qiskit.circuit.QuantumCircuit.iter_input_vars") and [`iter_captured_vars()`](#qiskit.circuit.QuantumCircuit.iter_captured_vars "qiskit.circuit.QuantumCircuit.iter_captured_vars"). @@ -2078,16 +2078,17 @@ python_api_name: qiskit.circuit.QuantumCircuit ### mcp - + Apply [`MCPhaseGate`](qiskit.circuit.library.MCPhaseGate "qiskit.circuit.library.MCPhaseGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - * **lam** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The angle of the rotation. - * **control\_qubits** ([*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]]*) – The qubits used as the controls. - * **target\_qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) targeted by the gate. + * **lam** (*ParameterValueType*) – The angle of the rotation. + * **control\_qubits** (*Sequence\[QubitSpecifier]*) – The qubits used as the controls. + * **target\_qubit** (*QubitSpecifier*) – The qubit(s) targeted by the gate. + * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – The control state in decimal, or as a bitstring (e.g. ‘1’). Defaults to controlling on the ‘1’ state. **Returns** @@ -2095,20 +2096,20 @@ python_api_name: qiskit.circuit.QuantumCircuit **Return type** - [*InstructionSet*](qiskit.circuit.InstructionSet "qiskit.circuit.instructionset.InstructionSet") + [InstructionSet](qiskit.circuit.InstructionSet "qiskit.circuit.InstructionSet") ### mcrx - + Apply Multiple-Controlled X rotation gate **Parameters** * **self** ([*QuantumCircuit*](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – The QuantumCircuit object to apply the mcrx gate on. * **theta** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – angle theta - * **q\_controls** ([*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") *or*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*(*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*)*) – The list of control qubits - * **q\_target** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – The target qubit + * **q\_controls** ([*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") *or*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*(*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*)*) – The list of control qubits + * **q\_target** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – The target qubit * **use\_basis\_gates** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – use p, u, cx **Raises** @@ -2118,16 +2119,16 @@ python_api_name: qiskit.circuit.QuantumCircuit ### mcry - + Apply Multiple-Controlled Y rotation gate **Parameters** * **self** ([*QuantumCircuit*](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – The QuantumCircuit object to apply the mcry gate on. * **theta** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – angle theta - * **q\_controls** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*(*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*)*) – The list of control qubits - * **q\_target** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – The target qubit - * **q\_ancillae** ([*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") *or*[*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*(*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*)*) – The list of ancillary qubits. + * **q\_controls** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*(*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*)*) – The list of control qubits + * **q\_target** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – The target qubit + * **q\_ancillae** ([*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") *or*[*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*(*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*)*) – The list of ancillary qubits. * **mode** (*string*) – The implementation mode to use * **use\_basis\_gates** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – use p, u, cx @@ -2138,15 +2139,15 @@ python_api_name: qiskit.circuit.QuantumCircuit ### mcrz - + Apply Multiple-Controlled Z rotation gate **Parameters** * **self** ([*QuantumCircuit*](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – The QuantumCircuit object to apply the mcrz gate on. * **lam** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – angle lambda - * **q\_controls** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*(*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*)*) – The list of control qubits - * **q\_target** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – The target qubit + * **q\_controls** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*(*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*)*) – The list of control qubits + * **q\_target** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – The target qubit * **use\_basis\_gates** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – use p, u, cx **Raises** @@ -2156,7 +2157,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### mcx - + Apply [`MCXGate`](qiskit.circuit.library.MCXGate "qiskit.circuit.library.MCXGate"). The multi-cX gate can be implemented using different techniques, which use different numbers of ancilla qubits and have varying circuit depth. These modes are: @@ -2174,6 +2175,7 @@ python_api_name: qiskit.circuit.QuantumCircuit * **target\_qubit** (*QubitSpecifier*) – The qubit(s) targeted by the gate. * **ancilla\_qubits** (*QubitSpecifier | Sequence\[QubitSpecifier] | None*) – The qubits used as the ancillae, if the mode requires them. * **mode** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – The choice of mode, explained further above. + * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – The control state in decimal, or as a bitstring (e.g. ‘1’). Defaults to controlling on the ‘1’ state. **Returns** @@ -2191,15 +2193,15 @@ python_api_name: qiskit.circuit.QuantumCircuit ### measure - + Measure a quantum bit (`qubit`) in the Z basis into a classical bit (`cbit`). When a quantum state is measured, a qubit is projected in the computational (Pauli Z) basis to either $\lvert 0 \rangle$ or $\lvert 1 \rangle$. The classical bit `cbit` indicates the result of that projection as a `0` or a `1` respectively. This operation is non-reversible. **Parameters** - * **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – qubit(s) to measure. - * **cbit** ([*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.classicalregister.Clbit") *|*[*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.classicalregister.ClassicalRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.classicalregister.Clbit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – classical bit(s) to place the measurement result(s) in. + * **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – qubit(s) to measure. + * **cbit** ([*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.classicalregister.Clbit") *|*[*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.classicalregister.ClassicalRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.classicalregister.Clbit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – classical bit(s) to place the measurement result(s) in. **Returns** @@ -2246,7 +2248,7 @@ python_api_name: qiskit.circuit.QuantumCircuit circuit.measure(1, 1) ``` - Instead of lists, you can use [`QuantumRegister`](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") and [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") under the same logic. + Instead of lists, you can use [`QuantumRegister`](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") and [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") under the same logic. ```python from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister @@ -2267,7 +2269,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### measure\_active - + Adds measurement to all non-idle qubits. Creates a new ClassicalRegister with a size equal to the number of non-idle qubits being measured. Returns a new circuit with measurements if inplace=False. @@ -2287,10 +2289,10 @@ python_api_name: qiskit.circuit.QuantumCircuit ### measure\_all - + Adds measurement to all qubits. - By default, adds new classical bits in a [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") to store these measurements. If `add_bits=False`, the results of the measurements will instead be stored in the already existing classical bits, with qubit `n` being measured into classical bit `n`. + By default, adds new classical bits in a [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") to store these measurements. If `add_bits=False`, the results of the measurements will instead be stored in the already existing classical bits, with qubit `n` being measured into classical bit `n`. Returns a new circuit with measurements if `inplace=False`. @@ -2314,7 +2316,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### ms - + Apply [`MSGate`](qiskit.circuit.library.MSGate "qiskit.circuit.library.MSGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2322,7 +2324,7 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** * **theta** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The angle of the rotation. - * **qubits** ([*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]]*) – The qubits to apply the gate to. + * **qubits** ([*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]]*) – The qubits to apply the gate to. **Returns** @@ -2335,7 +2337,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### num\_connected\_components - + How many non-entangled subcircuits can the circuit be factored to. **Parameters** @@ -2353,7 +2355,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### num\_nonlocal\_gates - + Return number of non-local gates (i.e. involving 2+ qubits). Conditional nonlocal gates are also included. @@ -2365,7 +2367,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### num\_tensor\_factors - + Computes the number of tensor factors in the unitary (quantum) part of the circuit only. **Notes** @@ -2379,7 +2381,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### num\_unitary\_factors - + Computes the number of tensor factors in the unitary (quantum) part of the circuit only. **Return type** @@ -2389,7 +2391,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### p - + Apply [`PhaseGate`](qiskit.circuit.library.PhaseGate "qiskit.circuit.library.PhaseGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2397,7 +2399,7 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** * **theta** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – THe angle of the rotation. - * **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -2410,13 +2412,13 @@ python_api_name: qiskit.circuit.QuantumCircuit ### pauli - + Apply [`PauliGate`](qiskit.circuit.library.PauliGate "qiskit.circuit.library.PauliGate"). **Parameters** * **pauli\_string** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – A string representing the Pauli operator to apply, e.g. ‘XX’. - * **qubits** ([*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]]*) – The qubits to apply this gate to. + * **qubits** ([*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]]*) – The qubits to apply this gate to. **Returns** @@ -2429,7 +2431,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### power - + Raise this circuit to the power of `power`. If `power` is a positive integer and `matrix_power` is `False`, this implementation defaults to calling `repeat`. Otherwise, if the circuit is unitary, the matrix is computed to calculate the matrix power. @@ -2454,7 +2456,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### prepare\_state - + Prepare qubits in a specific state. This class implements a state preparing unitary. Unlike [`initialize()`](#qiskit.circuit.QuantumCircuit.initialize "qiskit.circuit.QuantumCircuit.initialize") it does not reset the qubits first. @@ -2549,7 +2551,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### qbit\_argument\_conversion - + Converts several qubit representations (such as indexes, range, etc.) into a list of qubits. **Parameters** @@ -2562,17 +2564,17 @@ python_api_name: qiskit.circuit.QuantumCircuit **Return type** - List([Qubit](qiskit.circuit.Qubit "qiskit.circuit.Qubit")) + List([Qubit](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")) ### qubit\_duration - + Return the duration between the start and stop time of the first and last instructions, excluding delays, over the supplied qubits. Its time unit is `self.unit`. **Parameters** - **\*qubits** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Qubits within `self` to include. + **\*qubits** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Qubits within `self` to include. **Returns** @@ -2585,14 +2587,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### qubit\_start\_time - + Return the start time of the first instruction, excluding delays, over the supplied qubits. Its time unit is `self.unit`. Return 0 if there are no instructions over qubits **Parameters** - * **\*qubits** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Qubits within `self` to include. Integers are allowed for qubits, indicating + * **\*qubits** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Qubits within `self` to include. Integers are allowed for qubits, indicating * **self.qubits.** (*indices of*) – **Returns** @@ -2610,14 +2612,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### qubit\_stop\_time - + Return the stop time of the last instruction, excluding delays, over the supplied qubits. Its time unit is `self.unit`. Return 0 if there are no instructions over qubits **Parameters** - * **\*qubits** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Qubits within `self` to include. Integers are allowed for qubits, indicating + * **\*qubits** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Qubits within `self` to include. Integers are allowed for qubits, indicating * **self.qubits.** (*indices of*) – **Returns** @@ -2635,7 +2637,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### r - + Apply [`RGate`](qiskit.circuit.library.RGate "qiskit.circuit.library.RGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2644,7 +2646,7 @@ python_api_name: qiskit.circuit.QuantumCircuit * **theta** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The angle of the rotation. * **phi** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The angle of the axis of rotation in the x-y plane. - * **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -2657,17 +2659,17 @@ python_api_name: qiskit.circuit.QuantumCircuit ### rcccx - + Apply [`RC3XGate`](qiskit.circuit.library.RC3XGate "qiskit.circuit.library.RC3XGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - * **control\_qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the first control. - * **control\_qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the second control. - * **control\_qubit3** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the third control. - * **target\_qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) targeted by the gate. + * **control\_qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the first control. + * **control\_qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the second control. + * **control\_qubit3** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the third control. + * **target\_qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) targeted by the gate. **Returns** @@ -2680,16 +2682,16 @@ python_api_name: qiskit.circuit.QuantumCircuit ### rccx - + Apply [`RCCXGate`](qiskit.circuit.library.RCCXGate "qiskit.circuit.library.RCCXGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - * **control\_qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the first control. - * **control\_qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the second control. - * **target\_qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) targeted by the gate. + * **control\_qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the first control. + * **control\_qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) used as the second control. + * **target\_qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) targeted by the gate. **Returns** @@ -2702,7 +2704,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### remove\_final\_measurements - + Removes final measurements and barriers on all qubits if they are present. Deletes the classical registers that were used to store the values from these measurements that become idle as a result of this operation, and deletes classical bits that are referenced only by removed registers, or that aren’t referenced at all but have become idle as a result of this operation. Measurements and barriers are considered final if they are followed by no other operations (aside from other measurements or barriers.) @@ -2722,7 +2724,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### repeat - + Repeat this circuit `reps` times. **Parameters** @@ -2740,12 +2742,12 @@ python_api_name: qiskit.circuit.QuantumCircuit ### reset - + Reset the quantum bit(s) to their default state. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – qubit(s) to reset. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – qubit(s) to reset. **Returns** @@ -2758,7 +2760,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### reverse\_bits - + Return a circuit with the opposite order of wires. The circuit is “vertically” flipped. If a circuit is defined over multiple registers, the resulting circuit will have the same registers but with their order flipped. @@ -2810,7 +2812,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### reverse\_ops - + Reverse the circuit by reversing the order of instructions. This is done by recursively reversing all instructions. It does not invert (adjoint) any gate. @@ -2848,7 +2850,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### rv - + Apply [`RVGate`](qiskit.circuit.library.RVGate "qiskit.circuit.library.RVGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2860,7 +2862,7 @@ python_api_name: qiskit.circuit.QuantumCircuit * **vx** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – x-component of the rotation axis. * **vy** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – y-component of the rotation axis. * **vz** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – z-component of the rotation axis. - * **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -2873,7 +2875,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### rx - + Apply [`RXGate`](qiskit.circuit.library.RXGate "qiskit.circuit.library.RXGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2895,7 +2897,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### rxx - + Apply [`RXXGate`](qiskit.circuit.library.RXXGate "qiskit.circuit.library.RXXGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2903,8 +2905,8 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** * **theta** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The angle of the rotation. - * **qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. - * **qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -2917,7 +2919,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### ry - + Apply [`RYGate`](qiskit.circuit.library.RYGate "qiskit.circuit.library.RYGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2939,7 +2941,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### ryy - + Apply [`RYYGate`](qiskit.circuit.library.RYYGate "qiskit.circuit.library.RYYGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2947,8 +2949,8 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** * **theta** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The rotation angle of the gate. - * **qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. - * **qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -2961,7 +2963,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### rz - + Apply [`RZGate`](qiskit.circuit.library.RZGate "qiskit.circuit.library.RZGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2969,7 +2971,7 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** * **phi** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The rotation angle of the gate. - * **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -2982,7 +2984,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### rzx - + Apply [`RZXGate`](qiskit.circuit.library.RZXGate "qiskit.circuit.library.RZXGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -2990,8 +2992,8 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** * **theta** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The rotation angle of the gate. - * **qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. - * **qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3004,7 +3006,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### rzz - + Apply [`RZZGate`](qiskit.circuit.library.RZZGate "qiskit.circuit.library.RZZGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -3012,8 +3014,8 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** * **theta** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The rotation angle of the gate. - * **qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. - * **qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3026,14 +3028,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### s - + Apply [`SGate`](qiskit.circuit.library.SGate "qiskit.circuit.library.SGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3046,14 +3048,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### sdg - + Apply [`SdgGate`](qiskit.circuit.library.SdgGate "qiskit.circuit.library.SdgGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3066,7 +3068,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### size - + Returns total number of instructions in circuit. **Parameters** @@ -3084,22 +3086,22 @@ python_api_name: qiskit.circuit.QuantumCircuit ### store - - Store the result of the given runtime classical expression `rvalue` in the memory location defined by `lvalue`. + + Store the result of the given real-time classical expression `rvalue` in the memory location defined by `lvalue`. Typically `lvalue` will be a [`Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node and `rvalue` will be some [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") to write into it, but anything that [`expr.lift()`](circuit_classical#qiskit.circuit.classical.expr.lift "qiskit.circuit.classical.expr.lift") can raise to an [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") is permissible in both places, and it will be called on them. **Parameters** - * **lvalue** ([*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")) – a valid specifier for a memory location in the circuit. This will typically be a [`Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node, but you can also write to [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") memory locations if your hardware supports it. The memory location must already be present in the circuit. - * **rvalue** ([*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")) – a runtime classical expression whose result should be written into the given memory location. + * **lvalue** ([*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")) – a valid specifier for a memory location in the circuit. This will typically be a [`Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node, but you can also write to [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") memory locations if your hardware supports it. The memory location must already be present in the circuit. + * **rvalue** ([*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")) – a real-time classical expression whose result should be written into the given memory location. **Return type** [*InstructionSet*](qiskit.circuit.InstructionSet "qiskit.circuit.instructionset.InstructionSet") - **[`Store`](qiskit.circuit.Store "qiskit.circuit.Store")** + **[`Store`](circuit#qiskit.circuit.Store "qiskit.circuit.Store")** The backing [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") class that represents this operation. @@ -3111,15 +3113,15 @@ python_api_name: qiskit.circuit.QuantumCircuit ### swap - + Apply [`SwapGate`](qiskit.circuit.library.SwapGate "qiskit.circuit.library.SwapGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - * **qubit1** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. - * **qubit2** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. + * **qubit1** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. + * **qubit2** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubits to apply the gate to. **Returns** @@ -3132,7 +3134,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### switch - + Create a `switch`/`case` structure on this circuit. There are two forms for calling this function. If called with all its arguments (with the possible exception of `label`), it will create a [`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp") with the given case structure. If `cases` (and `qubits` and `clbits`) are *not* passed, then this acts as a context manager, which will automatically build a [`SwitchCaseOp`](qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp") when the scope finishes. In this form, you do not need to keep track of the qubits or clbits you are using, because the scope will handle it for you. @@ -3158,10 +3160,10 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** - * **target** (*Union\[*[*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – The classical value to switch one. This must be integer-like. + * **target** (*Union\[*[*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – The classical value to switch one. This must be integer-like. * **cases** (*Iterable\[Tuple\[*[*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")*,* [*QuantumCircuit*](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*]]*) – A sequence of case specifiers. Each tuple defines one case body (the second item). The first item of the tuple can be either a single integer value, the special value [`CASE_DEFAULT`](circuit#qiskit.circuit.CASE_DEFAULT "qiskit.circuit.CASE_DEFAULT"), or a tuple of several integer values. Each of the integer values will be tried in turn; control will then pass to the body corresponding to the first match. [`CASE_DEFAULT`](circuit#qiskit.circuit.CASE_DEFAULT "qiskit.circuit.CASE_DEFAULT") matches all possible values. Omit in context-manager form. - * **qubits** (*Sequence\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – The circuit qubits over which all case bodies execute. Omit in context-manager form. - * **clbits** (*Sequence\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – The circuit clbits over which all case bodies execute. Omit in context-manager form. + * **qubits** (*Sequence\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – The circuit qubits over which all case bodies execute. Omit in context-manager form. + * **clbits** (*Sequence\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – The circuit clbits over which all case bodies execute. Omit in context-manager form. * **label** (*Optional\[*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*]*) – The string label of the instruction in the circuit. **Returns** @@ -3179,14 +3181,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### sx - + Apply [`SXGate`](qiskit.circuit.library.SXGate "qiskit.circuit.library.SXGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3199,14 +3201,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### sxdg - + Apply [`SXdgGate`](qiskit.circuit.library.SXdgGate "qiskit.circuit.library.SXdgGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3219,14 +3221,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### t - + Apply [`TGate`](qiskit.circuit.library.TGate "qiskit.circuit.library.TGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3239,14 +3241,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### tdg - + Apply [`TdgGate`](qiskit.circuit.library.TdgGate "qiskit.circuit.library.TdgGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3259,7 +3261,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### tensor - + Tensor `self` with `other`. Remember that in the little-endian convention the leftmost operation will be at the bottom of the circuit. See also [the docs](/build/circuit-construction) for more information. @@ -3306,7 +3308,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### to\_gate - + Create a Gate out of this circuit. **Parameters** @@ -3325,7 +3327,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### to\_instruction - + Create an Instruction out of this circuit. **Parameters** @@ -3344,7 +3346,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### u - + Apply [`UGate`](qiskit.circuit.library.UGate "qiskit.circuit.library.UGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -3354,7 +3356,7 @@ python_api_name: qiskit.circuit.QuantumCircuit * **theta** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The $\theta$ rotation angle of the gate. * **phi** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The $\phi$ rotation angle of the gate. * **lam** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – The $\lambda$ rotation angle of the gate. - * **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + * **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3367,7 +3369,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### unitary - + Apply unitary gate specified by `obj` to `qubits`. **Parameters** @@ -3401,7 +3403,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### while\_loop - + Create a `while` loop on this circuit. There are two forms for calling this function. If called with all its arguments (with the possible exception of `label`), it will create a `WhileLoopOp` with the given `body`. If `body` (and `qubits` and `clbits`) are *not* passed, then this acts as a context manager, which will automatically build a `WhileLoopOp` when the scope finishes. In this form, you do not need to keep track of the qubits or clbits you are using, because the scope will handle it for you. @@ -3421,10 +3423,10 @@ python_api_name: qiskit.circuit.QuantumCircuit **Parameters** - * **condition** (*Tuple\[Union\[*[*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*],* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – An equality condition to be checked prior to executing `body`. The left-hand side of the condition must be a [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") or a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit"), and the right-hand side must be an integer or boolean. + * **condition** (*Tuple\[Union\[*[*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*],* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – An equality condition to be checked prior to executing `body`. The left-hand side of the condition must be a [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") or a [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit"), and the right-hand side must be an integer or boolean. * **body** (*Optional\[*[*QuantumCircuit*](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*]*) – The loop body to be repeatedly executed. Omit this to use the context-manager mode. - * **qubits** (*Optional\[Sequence\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]]*) – The circuit qubits over which the loop body should be run. Omit this to use the context-manager mode. - * **clbits** (*Optional\[Sequence\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]]*) – The circuit clbits over which the loop body should be run. Omit this to use the context-manager mode. + * **qubits** (*Optional\[Sequence\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]]*) – The circuit qubits over which the loop body should be run. Omit this to use the context-manager mode. + * **clbits** (*Optional\[Sequence\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]]*) – The circuit clbits over which the loop body should be run. Omit this to use the context-manager mode. * **label** (*Optional\[*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*]*) – The string label of the instruction in the circuit. **Returns** @@ -3442,7 +3444,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### width - + Return number of qubits plus clbits in circuit. **Returns** @@ -3456,7 +3458,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### x - + Apply [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.library.XGate"). For the full matrix form of this gate, see the underlying gate documentation. @@ -3477,14 +3479,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### y - + Apply [`YGate`](qiskit.circuit.library.YGate "qiskit.circuit.library.YGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** @@ -3497,14 +3499,14 @@ python_api_name: qiskit.circuit.QuantumCircuit ### z - + Apply [`ZGate`](qiskit.circuit.library.ZGate "qiskit.circuit.library.ZGate"). For the full matrix form of this gate, see the underlying gate documentation. **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*QuantumRegister*](circuit#qiskit.circuit.QuantumRegister "qiskit.circuit.quantumregister.QuantumRegister") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*slice*](https://docs.python.org/3/library/functions.html#slice "(in Python v3.12)") *|*[*Sequence*](https://docs.python.org/3/library/typing.html#typing.Sequence "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The qubit(s) to apply the gate to. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.QuantumRegister.mdx b/docs/api/qiskit/dev/qiskit.circuit.QuantumRegister.mdx deleted file mode 100644 index 8dc9f0a3164..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.QuantumRegister.mdx +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: QuantumRegister -description: API reference for qiskit.circuit.QuantumRegister -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.QuantumRegister ---- - -# QuantumRegister - - - Bases: [`Register`](qiskit.circuit.Register "qiskit.circuit.register.Register") - - Implement a quantum register. - - Create a new generic register. - - Either the `size` or the `bits` argument must be provided. If `size` is not None, the register will be pre-populated with bits of the correct type. - - **Parameters** - - * **size** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Optional. The number of bits to include in the register. - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – Optional. The name of the register. If not provided, a unique name will be auto-generated from the register type. - * **bits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")*]*) – Optional. A list of Bit() instances to be used to populate the register. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if both the `size` and `bits` arguments are provided, or if neither are. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `size` is not valid. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `name` is not a valid name according to the OpenQASM spec. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained duplicated bits. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained bits of an incorrect type. - - ## Attributes - - ### instances\_counter - - - - ### name - - - Get the register name. - - - ### prefix - - - - ### size - - - Get the register size. - - - ## Methods - - ### index - - - Find the index of the provided bit within this register. - - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.Qubit.mdx b/docs/api/qiskit/dev/qiskit.circuit.Qubit.mdx deleted file mode 100644 index 1607673d137..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.Qubit.mdx +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: Qubit -description: API reference for qiskit.circuit.Qubit -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.Qubit ---- - -# Qubit - - - Bases: [`Bit`](qiskit.circuit.Bit "qiskit.circuit.bit.Bit") - - Implement a quantum bit. - - Creates a qubit. - - **Parameters** - - * **register** ([*QuantumRegister*](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister")) – Optional. A quantum register containing the bit. - * **index** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Optional. The index of the bit in its containing register. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if the provided register is not a valid [`QuantumRegister`](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister") - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.Register.mdx b/docs/api/qiskit/dev/qiskit.circuit.Register.mdx deleted file mode 100644 index 8c2ec09f2fe..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.Register.mdx +++ /dev/null @@ -1,72 +0,0 @@ ---- -title: Register -description: API reference for qiskit.circuit.Register -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.Register ---- - -# Register - - - Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") - - Implement a generic register. - - - This class should not be instantiated directly. This is just a superclass for [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and [`QuantumRegister`](qiskit.circuit.QuantumRegister "qiskit.circuit.QuantumRegister"). - - - Create a new generic register. - - Either the `size` or the `bits` argument must be provided. If `size` is not None, the register will be pre-populated with bits of the correct type. - - **Parameters** - - * **size** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Optional. The number of bits to include in the register. - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – Optional. The name of the register. If not provided, a unique name will be auto-generated from the register type. - * **bits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")*]*) – Optional. A list of Bit() instances to be used to populate the register. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if both the `size` and `bits` arguments are provided, or if neither are. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `size` is not valid. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `name` is not a valid name according to the OpenQASM spec. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained duplicated bits. - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if `bits` contained bits of an incorrect type. - - ## Attributes - - ### bit\_type - - - - ### instances\_counter - - - - ### name - - - Get the register name. - - - ### prefix - - - - ### size - - - Get the register size. - - - ## Methods - - ### index - - - Find the index of the provided bit within this register. - - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.Store.mdx b/docs/api/qiskit/dev/qiskit.circuit.Store.mdx deleted file mode 100644 index 3b461e7d4b1..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.Store.mdx +++ /dev/null @@ -1,307 +0,0 @@ ---- -title: Store -description: API reference for qiskit.circuit.Store -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.Store ---- - -# Store - - - Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") - - A manual storage of some classical value to a classical memory location. - - This is a low-level primitive of the classical-expression handling (similar to how `Measure` is a primitive for quantum measurement), and is not safe for subclassing. It is likely to become a special-case instruction in later versions of Qiskit circuit and compiler internal representations. - - Create a new instruction. - - **Parameters** - - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – instruction name - * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s qubit width - * **num\_clbits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s clbit width - * **params** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")*|*[*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")*|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*|ndarray|*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")*]*) – list of parameters - * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *or*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – instruction’s duration. it must be integer if `unit` is ‘dt’ - * **unit** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – time unit of duration - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *or None*) – An optional label for identifying the instruction. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – when the register is not in the correct format. - * [**TypeError**](https://docs.python.org/3/library/exceptions.html#TypeError "(in Python v3.12)") – when the optional label is provided, but it is not a string. - - ## Attributes - - ### base\_class - - - Get the base class of this instruction. This is guaranteed to be in the inheritance tree of `self`. - - The “base class” of an instruction is the lowest class in its inheritance tree that the object should be considered entirely compatible with for \_all\_ circuit applications. This typically means that the subclass is defined purely to offer some sort of programmer convenience over the base class, and the base class is the “true” class for a behavioural perspective. In particular, you should *not* override [`base_class`](#qiskit.circuit.Store.base_class "qiskit.circuit.Store.base_class") if you are defining a custom version of an instruction that will be implemented differently by hardware, such as an alternative measurement strategy, or a version of a parametrised gate with a particular set of parameters for the purposes of distinguishing it in a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") from the full parametrised gate. - - This is often exactly equivalent to `type(obj)`, except in the case of singleton instances of standard-library instructions. These singleton instances are special subclasses of their base class, and this property will return that base. For example: - - ```python - >>> isinstance(XGate(), XGate) - True - >>> type(XGate()) is XGate - False - >>> XGate().base_class is XGate - True - ``` - - In general, you should not rely on the precise class of an instruction; within a given circuit, it is expected that [`Instruction.name`](qiskit.circuit.Instruction#name "qiskit.circuit.Instruction.name") should be a more suitable discriminator in most situations. - - - ### condition - - - The classical condition on the instruction. - - - ### condition\_bits - - - Get Clbits in condition. - - - ### decompositions - - - Get the decompositions of the instruction from the SessionEquivalenceLibrary. - - - ### definition - - - Return definition in terms of other basic gates. - - - ### duration - - - Get the duration. - - - ### label - - - Return instruction label - - - ### lvalue - - - Get the l-value [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") node that is being stored to. - - - ### mutable - - - Is this instance is a mutable unique instance or not. - - If this attribute is `False` the gate instance is a shared singleton and is not mutable. - - - ### name - - - Return the name. - - - ### num\_clbits - - - Return the number of clbits. - - - ### num\_qubits - - - Return the number of qubits. - - - ### params - - - return instruction params. - - - ### rvalue - - - Get the r-value [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") node that is being written into the l-value. - - - ### unit - - - Get the time unit of duration. - - - ## Methods - - ### add\_decomposition - - - Add a decomposition of the instruction to the SessionEquivalenceLibrary. - - - ### assemble - - - Assemble a QasmQobjInstruction - - - ### broadcast\_arguments - - - Validation of the arguments. - - **Parameters** - - * **qargs** (*List*) – List of quantum bit arguments. - * **cargs** (*List*) – List of classical bit arguments. - - **Yields** - - *Tuple(List, List)* – A tuple with single arguments. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If the input is not valid. For example, the number of arguments does not match the gate expectation. - - - ### c\_if - - - Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. - - - This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. - - - - ### copy - - - Copy of the instruction. - - **Parameters** - - **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – name to be given to the copied circuit, if `None` then the name stays the same. - - **Returns** - - a copy of the current instruction, with the name updated if it was provided - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### inverse - - - Invert this instruction. - - If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. - - Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. - - **Parameters** - - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. - - **Returns** - - The inverse operation. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if the instruction is not composite and an inverse has not been implemented for it. - - - ### is\_parameterized - - - Return True .IFF. instruction is parameterized else False - - - ### repeat - - - Creates an instruction with gate repeated n amount of times. - - **Parameters** - - **n** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Number of times to repeat the instruction - - **Returns** - - Containing the definition. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If n \< 1. - - - ### reverse\_ops - - - For a composite instruction, reverse the order of sub-instructions. - - This is done by recursively reversing all sub-instructions. It does not invert any gate. - - **Returns** - - **a new instruction with** - - sub-instructions reversed. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### soft\_compare - - - Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. - - **Parameters** - - **other** (*instruction*) – other instruction. - - **Returns** - - are self and other equal up to parameter expressions. - - **Return type** - - [bool](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)") - - - ### to\_mutable - - - Return a mutable copy of this gate. - - This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. - - - ### validate\_parameter - - - Instruction parameters has no validation or normalization. - - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.SwitchCaseOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.SwitchCaseOp.mdx index 9d2849a0286..4eef39897ae 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.SwitchCaseOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.SwitchCaseOp.mdx @@ -8,35 +8,16 @@ python_api_name: qiskit.circuit.SwitchCaseOp # SwitchCaseOp - + Bases: [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.controlflow.control_flow.ControlFlowOp") A circuit operation that executes one particular circuit block based on matching a given `target` against an ordered list of `values`. The special value [`CASE_DEFAULT`](circuit#qiskit.circuit.CASE_DEFAULT "qiskit.circuit.CASE_DEFAULT") can be used to represent a default condition. - This is the low-level interface for creating a switch-case statement; in general, the circuit method [`QuantumCircuit.switch()`](qiskit.circuit.QuantumCircuit#switch "qiskit.circuit.QuantumCircuit.switch") should be used as a context manager to access the builder interface. At the low level, you must ensure that all the circuit blocks contain equal numbers of qubits and clbits, and that the order the virtual bits of the containing circuit should be bound is the same for all blocks. This will likely mean that each circuit block is wider than its natural width, as each block must span the union of all the spaces covered by *any* of the blocks. - **Parameters** - * **target** ([*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit") *|*[*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") *|*[*expr.Expr*](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – the runtime value to switch on. + * **target** ([*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") *|*[*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") *|*[*expr.Expr*](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – the real-time value to switch on. * **cases** (*Iterable\[Tuple\[Any,* [*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*]]*) – an ordered iterable of the corresponding value of the `target` and the circuit block that should be executed if this is matched. There is no fall-through between blocks, and the order matters. - Create a new instruction. - - **Parameters** - - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – instruction name - * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s qubit width - * **num\_clbits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s clbit width - * **params** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")*|*[*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")*|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*|ndarray|*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")*]*) – list of parameters - * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *or*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – instruction’s duration. it must be integer if `unit` is ‘dt’ - * **unit** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – time unit of duration - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *or None*) – An optional label for identifying the instruction. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – when the register is not in the correct format. - * [**TypeError**](https://docs.python.org/3/library/exceptions.html#TypeError "(in Python v3.12)") – when the optional label is provided, but it is not a string. - ## Attributes ### base\_class @@ -129,7 +110,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### params - return instruction params. + The parameters of this [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction"). Ideally these will be gate angles. ### unit @@ -142,19 +123,19 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -173,7 +154,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -183,7 +164,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### cases - + Return a lookup table from case labels to the circuit that would be executed in that case. This object is not generally suitable for creating a new [`SwitchCaseOp`](#qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp") because any keys that point to the same object will not be grouped. @@ -195,7 +176,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### cases\_specifier - + Return an iterable where each element is a 2-tuple whose first element is a tuple of jump values, and whose second is the single circuit block that is associated with those values. This is an abstract specification of the jump table suitable for creating new [`SwitchCaseOp`](#qiskit.circuit.SwitchCaseOp "qiskit.circuit.SwitchCaseOp") instances. @@ -213,7 +194,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### copy - + Copy of the instruction. **Parameters** @@ -231,18 +212,18 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -255,14 +236,16 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -283,12 +266,33 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### replace\_blocks - - Replace blocks and return new instruction. :param blocks: Tuple of QuantumCircuits to replace in instruction. + + Return a new version of this control-flow operations with the [`blocks`](#qiskit.circuit.SwitchCaseOp.blocks "qiskit.circuit.SwitchCaseOp.blocks") mapped to the given new ones. + + Typically this is used in a workflow such as: + + ```python + existing_op = ... + + def map_block(block: QuantumCircuit) -> QuantumCircuit: + new_block = block.copy_empty_like() + # ... do something to `new_block` ... + return new_block + + new_op = existing_op.replace_blocks( + map_block(block) for block in existing_op.blocks + ) + ``` + + It is the caller’s responsibility to ensure that the mapped blocks are defined over a unified set of circuit resources, much like constructing a [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") using its default constructor. + + **Parameters** + + **blocks** (*Iterable\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*]*) – the new subcircuit blocks to use. **Returns** - New ControlFlowOp with replaced blocks. + New [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") with replaced blocks. **Return type** @@ -297,7 +301,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -315,7 +319,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -333,7 +337,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -341,7 +345,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### validate\_parameter - + Instruction parameters has no validation or normalization. diff --git a/docs/api/qiskit/dev/qiskit.circuit.WhileLoopOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.WhileLoopOp.mdx index 0301c7f1c90..4682b90962a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.WhileLoopOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.WhileLoopOp.mdx @@ -8,49 +8,18 @@ python_api_name: qiskit.circuit.WhileLoopOp # WhileLoopOp - + Bases: [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.controlflow.control_flow.ControlFlowOp") A circuit operation which repeatedly executes a subcircuit (`body`) until a condition (`condition`) evaluates as False. - **Parameters** - - * **condition** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*ClassicalRegister*](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*expr.Expr*](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – A condition to be checked prior to executing `body`. Can be specified as either a tuple of a `ClassicalRegister` to be tested for equality with a given `int`, or as a tuple of a `Clbit` to be compared to either a `bool` or an `int`. - * **body** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – The loop body to be repeatedly executed. - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for identifying the instruction. - The classical bits used in `condition` must be a subset of those attached to `body`. - **Circuit symbol:** - - ```python - ┌─────────────┐ - q_0: ┤0 ├ - │ │ - q_1: ┤1 ├ - │ while_loop │ - q_2: ┤2 ├ - │ │ - c_0: ╡0 ╞ - └─────────────┘ - ``` - - Create a new instruction. - **Parameters** - * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – instruction name - * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s qubit width - * **num\_clbits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – instruction’s clbit width - * **params** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")*|*[*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")*|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*|ndarray|*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")*]*) – list of parameters - * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *or*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – instruction’s duration. it must be integer if `unit` is ‘dt’ - * **unit** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – time unit of duration - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *or None*) – An optional label for identifying the instruction. - - **Raises** - - * [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – when the register is not in the correct format. - * [**TypeError**](https://docs.python.org/3/library/exceptions.html#TypeError "(in Python v3.12)") – when the optional label is provided, but it is not a string. + * **condition** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*ClassicalRegister*](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*] |* [*expr.Expr*](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – A condition to be checked prior to executing `body`. Can be specified as either a tuple of a `ClassicalRegister` to be tested for equality with a given `int`, or as a tuple of a `Clbit` to be compared to either a `bool` or an `int`. + * **body** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")) – The loop body to be repeatedly executed. + * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for identifying the instruction. ## Attributes @@ -155,19 +124,19 @@ python_api_name: qiskit.circuit.WhileLoopOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -186,7 +155,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -196,7 +165,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### copy - + Copy of the instruction. **Parameters** @@ -214,18 +183,18 @@ python_api_name: qiskit.circuit.WhileLoopOp ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -238,14 +207,16 @@ python_api_name: qiskit.circuit.WhileLoopOp ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -266,17 +237,38 @@ python_api_name: qiskit.circuit.WhileLoopOp ### replace\_blocks - - Replace blocks and return new instruction. :param blocks: Tuple of QuantumCircuits to replace in instruction. + + Return a new version of this control-flow operations with the [`blocks`](#qiskit.circuit.WhileLoopOp.blocks "qiskit.circuit.WhileLoopOp.blocks") mapped to the given new ones. + + Typically this is used in a workflow such as: + + ```python + existing_op = ... + + def map_block(block: QuantumCircuit) -> QuantumCircuit: + new_block = block.copy_empty_like() + # ... do something to `new_block` ... + return new_block + + new_op = existing_op.replace_blocks( + map_block(block) for block in existing_op.blocks + ) + ``` + + It is the caller’s responsibility to ensure that the mapped blocks are defined over a unified set of circuit resources, much like constructing a [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") using its default constructor. + + **Parameters** + + **blocks** – the new subcircuit blocks to use. **Returns** - New ControlFlowOp with replaced blocks. + New [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp") with replaced blocks. ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -294,7 +286,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -312,7 +304,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -320,7 +312,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### validate\_parameter - + Instruction parameters has no validation or normalization. diff --git a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.BooleanExpression.mdx b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.BooleanExpression.mdx index a6f0a9e2763..05f27d8204d 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.BooleanExpression.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.BooleanExpression.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression # BooleanExpression - + Bases: `ClassicalElement` The Boolean Expression gate. @@ -107,7 +107,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -120,19 +120,19 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation and handling of the arguments and its relationship. For example, `cx([q[0],q[1]], q[2])` means `cx(q[0], q[2]); cx(q[1], q[2])`. This method yields the arguments in the right grouping. In the given example: @@ -185,7 +185,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -195,10 +195,10 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### control - + Return the controlled version of itself. - Implemented either as a controlled gate (ref. [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")) or as an annotated operation (ref. `AnnotatedOperation`). + Implemented either as a controlled gate (ref. [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")) or as an annotated operation (ref. [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation")). **Parameters** @@ -218,7 +218,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### copy - + Copy of the instruction. **Parameters** @@ -236,7 +236,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### from\_dimacs\_file - + Create a BooleanExpression from the string in the DIMACS format. :param filename: A file in DIMACS format. **Returns** @@ -254,18 +254,18 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -278,13 +278,13 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the `Instruction` contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### power - + Creates a unitary gate as gate^exponent. **Parameters** @@ -306,8 +306,10 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -328,7 +330,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -346,7 +348,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### simulate - + Evaluate the expression on a bitstring. This evaluation is done classically. @@ -366,7 +368,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -384,7 +386,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### synth - + Synthesis the logic network into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). **Parameters** @@ -403,7 +405,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### to\_matrix - + Return a Numpy.array for the gate unitary matrix. **Returns** @@ -421,7 +423,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -429,7 +431,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### validate\_parameter - + Gate parameters should be int, float, or ParameterExpression diff --git a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunction.mdx b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunction.mdx index 223db029fd7..6d9b39246ba 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction # ClassicalFunction - + Bases: `ClassicalElement` Represent a classical function and its logic network. @@ -126,7 +126,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### qregs @@ -171,19 +171,19 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction ### broadcast\_arguments - + Validation and handling of the arguments and its relationship. For example, `cx([q[0],q[1]], q[2])` means `cx(q[0], q[2]); cx(q[1], q[2])`. This method yields the arguments in the right grouping. In the given example: @@ -236,7 +236,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### c\_if - + Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. @@ -246,16 +246,16 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### compile - + Parses and creates the logical circuit ### control - + Return the controlled version of itself. - Implemented either as a controlled gate (ref. [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")) or as an annotated operation (ref. `AnnotatedOperation`). + Implemented either as a controlled gate (ref. [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate")) or as an annotated operation (ref. [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation")). **Parameters** @@ -275,7 +275,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### copy - + Copy of the instruction. **Parameters** @@ -293,18 +293,18 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -317,13 +317,13 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### is\_parameterized - - Return True .IFF. instruction is parameterized else False + + Return whether the `Instruction` contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### power - + Creates a unitary gate as gate^exponent. **Parameters** @@ -345,8 +345,10 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### repeat - - Creates an instruction with gate repeated n amount of times. + + Creates an instruction with `self` repeated :math\`n\` times. + + If this operation has a conditional, the output instruction will have the same conditional and the inner repeated operations will be unconditional; instructions within a compound definition cannot be conditioned on registers within Qiskit’s data model. This means that it is not valid to apply a repeated instruction to a clbit that it both writes to and reads from in its condition. **Parameters** @@ -367,7 +369,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### reverse\_ops - + For a composite instruction, reverse the order of sub-instructions. This is done by recursively reversing all sub-instructions. It does not invert any gate. @@ -385,7 +387,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### simulate - + Evaluate the expression on a bitstring. This evaluation is done classically. @@ -405,7 +407,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### simulate\_all - + Returns a truth table. **Returns** @@ -419,7 +421,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### soft\_compare - + Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. **Parameters** @@ -437,7 +439,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### synth - + Synthesis the logic network into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). **Parameters** @@ -458,7 +460,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### to\_matrix - + Return a Numpy.array for the gate unitary matrix. **Returns** @@ -476,7 +478,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### to\_mutable - + Return a mutable copy of this gate. This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. @@ -484,7 +486,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### validate\_parameter - + Gate parameters should be int, float, or ParameterExpression diff --git a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunctionCompilerTypeError.mdx b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunctionCompilerTypeError.mdx index 279641b52a0..c8cb29b90d1 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunctionCompilerTypeError.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunctionCompilerTypeError.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunctionCompilerTypeE # qiskit.circuit.classicalfunction.ClassicalFunctionCompilerTypeError - + ClassicalFunction compiler type error. The classicalfunction function fails at type checking time. Set the error message. diff --git a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunctionParseError.mdx b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunctionParseError.mdx index 82f0a19d78f..4b37d0f91d0 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunctionParseError.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunctionParseError.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunctionParseError # qiskit.circuit.classicalfunction.ClassicalFunctionParseError - + ClassicalFunction compiler parse error. The classicalfunction function fails at parsing time. Set the error message. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.AND.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.AND.mdx index cc23d188e88..e22abb54785 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.AND.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.AND.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.AND # AND - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") A circuit implementing the logical AND operation on a number of qubits. @@ -75,7 +75,7 @@ python_api_name: qiskit.circuit.library.AND ### instances - + ### layout @@ -104,7 +104,7 @@ python_api_name: qiskit.circuit.library.AND ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.AND.num_input_vars "qiskit.circuit.library.AND.num_input_vars") must be zero. @@ -118,7 +118,7 @@ python_api_name: qiskit.circuit.library.AND ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -126,7 +126,7 @@ python_api_name: qiskit.circuit.library.AND ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.AND.num_captured_vars "qiskit.circuit.library.AND.num_captured_vars") must be zero. @@ -146,7 +146,7 @@ python_api_name: qiskit.circuit.library.AND ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Barrier.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Barrier.mdx deleted file mode 100644 index ca63c122542..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Barrier.mdx +++ /dev/null @@ -1,271 +0,0 @@ ---- -title: Barrier -description: API reference for qiskit.circuit.library.Barrier -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.library.Barrier ---- - -# Barrier - - - Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") - - Barrier instruction. - - A barrier is a visual indicator of the grouping of a circuit section. It also acts as a directive for circuit compilation to separate pieces of a circuit so that any optimizations or re-writes are constrained to only act between barriers. - - Create new barrier instruction. - - **Parameters** - - * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – the number of qubits for the barrier type \[Default: 0]. - * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – the barrier label - - **Raises** - - [**TypeError**](https://docs.python.org/3/library/exceptions.html#TypeError "(in Python v3.12)") – if barrier label is invalid. - - ## Attributes - - ### base\_class - - - Get the base class of this instruction. This is guaranteed to be in the inheritance tree of `self`. - - The “base class” of an instruction is the lowest class in its inheritance tree that the object should be considered entirely compatible with for \_all\_ circuit applications. This typically means that the subclass is defined purely to offer some sort of programmer convenience over the base class, and the base class is the “true” class for a behavioural perspective. In particular, you should *not* override [`base_class`](#qiskit.circuit.library.Barrier.base_class "qiskit.circuit.library.Barrier.base_class") if you are defining a custom version of an instruction that will be implemented differently by hardware, such as an alternative measurement strategy, or a version of a parametrised gate with a particular set of parameters for the purposes of distinguishing it in a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") from the full parametrised gate. - - This is often exactly equivalent to `type(obj)`, except in the case of singleton instances of standard-library instructions. These singleton instances are special subclasses of their base class, and this property will return that base. For example: - - ```python - >>> isinstance(XGate(), XGate) - True - >>> type(XGate()) is XGate - False - >>> XGate().base_class is XGate - True - ``` - - In general, you should not rely on the precise class of an instruction; within a given circuit, it is expected that `Instruction.name` should be a more suitable discriminator in most situations. - - - ### condition - - - The classical condition on the instruction. - - - ### condition\_bits - - - Get Clbits in condition. - - - ### decompositions - - - Get the decompositions of the instruction from the SessionEquivalenceLibrary. - - - ### definition - - - Return definition in terms of other basic gates. - - - ### duration - - - Get the duration. - - - ### label - - - Return instruction label - - - ### mutable - - - Is this instance is a mutable unique instance or not. - - If this attribute is `False` the gate instance is a shared singleton and is not mutable. - - - ### name - - - Return the name. - - - ### num\_clbits - - - Return the number of clbits. - - - ### num\_qubits - - - Return the number of qubits. - - - ### params - - - return instruction params. - - - ### unit - - - Get the time unit of duration. - - - ## Methods - - ### add\_decomposition - - - Add a decomposition of the instruction to the SessionEquivalenceLibrary. - - - ### assemble - - - Assemble a QasmQobjInstruction - - - ### broadcast\_arguments - - - Validation of the arguments. - - **Parameters** - - * **qargs** (*List*) – List of quantum bit arguments. - * **cargs** (*List*) – List of classical bit arguments. - - **Yields** - - *Tuple(List, List)* – A tuple with single arguments. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If the input is not valid. For example, the number of arguments does not match the gate expectation. - - - ### c\_if - - - Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. - - - This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. - - - - ### copy - - - Copy of the instruction. - - **Parameters** - - **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – name to be given to the copied circuit, if `None` then the name stays the same. - - **Returns** - - a copy of the current instruction, with the name updated if it was provided - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### inverse - - - Special case. Return self. - - - ### is\_parameterized - - - Return True .IFF. instruction is parameterized else False - - - ### repeat - - - Creates an instruction with gate repeated n amount of times. - - **Parameters** - - **n** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Number of times to repeat the instruction - - **Returns** - - Containing the definition. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If n \< 1. - - - ### reverse\_ops - - - For a composite instruction, reverse the order of sub-instructions. - - This is done by recursively reversing all sub-instructions. It does not invert any gate. - - **Returns** - - **a new instruction with** - - sub-instructions reversed. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### soft\_compare - - - Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. - - **Parameters** - - **other** (*instruction*) – other instruction. - - **Returns** - - are self and other equal up to parameter expressions. - - **Return type** - - [bool](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)") - - - ### to\_mutable - - - Return a mutable copy of this gate. - - This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. - - - ### validate\_parameter - - - Instruction parameters has no validation or normalization. - - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.C3SXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.C3SXGate.mdx index bbf3e323461..d90426693d7 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.C3SXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.C3SXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.C3SXGate # C3SXGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") The 3-qubit controlled sqrt-X gate. @@ -76,7 +76,7 @@ python_api_name: qiskit.circuit.library.C3SXGate ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.C3SXGate.ctrl_state "qiskit.circuit.library.C3SXGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.C3XGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.C3XGate.mdx index a1a19e35429..c214ae32530 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.C3XGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.C3XGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.C3XGate # C3XGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") The X gate controlled on 3 qubits. @@ -67,7 +67,7 @@ python_api_name: qiskit.circuit.library.C3XGate ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.C3XGate.ctrl_state "qiskit.circuit.library.C3XGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -154,14 +154,14 @@ python_api_name: qiskit.circuit.library.C3XGate ### control - + Controlled version of this gate. **Parameters** * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – number of control qubits. * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for the gate \[Default: `None`] - * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. + * **ctrl\_state** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. * **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – indicates whether the controlled gate can be implemented as an annotated gate. **Returns** @@ -175,12 +175,12 @@ python_api_name: qiskit.circuit.library.C3XGate ### inverse - + Invert this gate. The C3X is its own inverse. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.C4XGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.C4XGate.mdx index a02c88f7ff3..c27a32c254c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.C4XGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.C4XGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.C4XGate # C4XGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") The 4-qubit controlled X gate. @@ -71,7 +71,7 @@ python_api_name: qiskit.circuit.library.C4XGate ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.C4XGate.ctrl_state "qiskit.circuit.library.C4XGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -158,14 +158,14 @@ python_api_name: qiskit.circuit.library.C4XGate ### control - + Controlled version of this gate. **Parameters** * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – number of control qubits. * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for the gate \[Default: `None`] - * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. + * **ctrl\_state** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. * **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – indicates whether the controlled gate can be implemented as an annotated gate. **Returns** @@ -179,12 +179,12 @@ python_api_name: qiskit.circuit.library.C4XGate ### inverse - + Invert this gate. The C4X is its own inverse. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CCXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CCXGate.mdx index af02a92b779..266f1175249 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CCXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CCXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CCXGate # CCXGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") CCX gate, also known as Toffoli gate. @@ -123,7 +123,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CCXGate.ctrl_state "qiskit.circuit.library.CCXGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -210,14 +210,14 @@ $$ ### control - + Controlled version of this gate. **Parameters** * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – number of control qubits. * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for the gate \[Default: `None`] - * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. + * **ctrl\_state** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. * **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – indicates whether the controlled gate can be implemented as an annotated gate. **Returns** @@ -231,12 +231,12 @@ $$ ### inverse - + Return an inverted CCX gate (also a CCX). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CCZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CCZGate.mdx index 6c56f5fdcb9..1dbbeeb857c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CCZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CCZGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CCZGate # CCZGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") CCZ gate. @@ -98,7 +98,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CCZGate.ctrl_state "qiskit.circuit.library.CCZGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -185,12 +185,12 @@ $$ ### inverse - + Return inverted CCZ gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CDKMRippleCarryAdder.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CDKMRippleCarryAdder.mdx index 83b0d6ae861..e1cf13d3d62 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CDKMRippleCarryAdder.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CDKMRippleCarryAdder.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CDKMRippleCarryAdder # CDKMRippleCarryAdder - + Bases: `Adder` A ripple-carry circuit to perform in-place addition on two qubit registers. @@ -121,7 +121,7 @@ python_api_name: qiskit.circuit.library.CDKMRippleCarryAdder ### instances - + ### layout @@ -150,7 +150,7 @@ python_api_name: qiskit.circuit.library.CDKMRippleCarryAdder ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.CDKMRippleCarryAdder.num_input_vars "qiskit.circuit.library.CDKMRippleCarryAdder.num_input_vars") must be zero. @@ -164,7 +164,7 @@ python_api_name: qiskit.circuit.library.CDKMRippleCarryAdder ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -172,7 +172,7 @@ python_api_name: qiskit.circuit.library.CDKMRippleCarryAdder ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.CDKMRippleCarryAdder.num_captured_vars "qiskit.circuit.library.CDKMRippleCarryAdder.num_captured_vars") must be zero. @@ -202,7 +202,7 @@ python_api_name: qiskit.circuit.library.CDKMRippleCarryAdder ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CHGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CHGate.mdx index 2e95b01d378..c193e328caf 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CHGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CHGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CHGate # CHGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") Controlled-Hadamard gate. @@ -113,7 +113,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CHGate.ctrl_state "qiskit.circuit.library.CHGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -200,7 +200,7 @@ $$ ### inverse - + Return inverted CH gate (itself). diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CPhaseGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CPhaseGate.mdx index 6b910de3715..c112ae25ec0 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CPhaseGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CPhaseGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CPhaseGate # CPhaseGate - + Bases: [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.controlledgate.ControlledGate") Controlled-Phase gate. @@ -94,7 +94,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CPhaseGate.ctrl_state "qiskit.circuit.library.CPhaseGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -181,7 +181,7 @@ $$ ### control - + Controlled version of this gate. **Parameters** @@ -202,13 +202,13 @@ $$ ### inverse - + Return inverted CPhase gate ($CPhase(\lambda)^{\dagger} = CPhase(-\lambda)$) ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CRXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CRXGate.mdx index b3c2b1d32e5..4096d9ab881 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CRXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CRXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CRXGate # CRXGate - + Bases: [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.controlledgate.ControlledGate") Controlled-RX gate. @@ -115,7 +115,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CRXGate.ctrl_state "qiskit.circuit.library.CRXGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -202,12 +202,12 @@ $$ ### inverse - + Return inverse CRX gate (i.e. with the negative rotation angle). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CRXGate`](#qiskit.circuit.library.CRXGate "qiskit.circuit.library.CRXGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CRXGate`](#qiskit.circuit.library.CRXGate "qiskit.circuit.library.CRXGate") with an inverted parameter value. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CRYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CRYGate.mdx index f709fb44d15..9fa0ace7db4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CRYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CRYGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CRYGate # CRYGate - + Bases: [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.controlledgate.ControlledGate") Controlled-RY gate. @@ -115,7 +115,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CRYGate.ctrl_state "qiskit.circuit.library.CRYGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -202,12 +202,12 @@ $$ ### inverse - + Return inverse CRY gate (i.e. with the negative rotation angle) **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CRYGate`](#qiskit.circuit.library.CRYGate "qiskit.circuit.library.CRYGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CRYGate`](#qiskit.circuit.library.CRYGate "qiskit.circuit.library.CRYGate") with an inverted parameter value. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CRZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CRZGate.mdx index a99d87bffc0..210d0778e01 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CRZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CRZGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CRZGate # CRZGate - + Bases: [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.controlledgate.ControlledGate") Controlled-RZ gate. @@ -117,7 +117,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CRZGate.ctrl_state "qiskit.circuit.library.CRZGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -204,7 +204,7 @@ $$ ### inverse - + Return inverse CRZ gate (i.e. with the negative rotation angle). **Parameters** @@ -213,7 +213,7 @@ $$ **when set to `True`, this is typically used to return an** - `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CRZGate`](#qiskit.circuit.library.CRZGate "qiskit.circuit.library.CRZGate") with an inverted parameter value. + [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CRZGate`](#qiskit.circuit.library.CRZGate "qiskit.circuit.library.CRZGate") with an inverted parameter value. **Returns:** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CSGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CSGate.mdx index 05a35456ded..bfabbb6fb22 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CSGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CSGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CSGate # CSGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") Controlled-S gate. @@ -89,7 +89,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CSGate.ctrl_state "qiskit.circuit.library.CSGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -176,12 +176,12 @@ $$ ### inverse - + Return inverse of CSGate (CSdgGate). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CSdgGate`](qiskit.circuit.library.CSdgGate "qiskit.circuit.library.CSdgGate"). + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CSdgGate`](qiskit.circuit.library.CSdgGate "qiskit.circuit.library.CSdgGate"). **Returns** @@ -194,7 +194,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CSXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CSXGate.mdx index 6fd187f0abd..fcd983912c4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CSXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CSXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CSXGate # CSXGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") Controlled-√X gate. @@ -111,7 +111,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CSXGate.ctrl_state "qiskit.circuit.library.CSXGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CSdgGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CSdgGate.mdx index 52020cb952f..cb5871d9739 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CSdgGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CSdgGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CSdgGate # CSdgGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") Controlled-S^dagger gate. @@ -89,7 +89,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CSdgGate.ctrl_state "qiskit.circuit.library.CSdgGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -176,12 +176,12 @@ $$ ### inverse - + Return inverse of CSdgGate (CSGate). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CSGate`](qiskit.circuit.library.CSGate "qiskit.circuit.library.CSGate"). + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CSGate`](qiskit.circuit.library.CSGate "qiskit.circuit.library.CSGate"). **Returns** @@ -194,7 +194,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CSwapGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CSwapGate.mdx index 943d9e7c880..a8c57bf7ca3 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CSwapGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CSwapGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CSwapGate # CSwapGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") Controlled-SWAP gate, also known as the Fredkin gate. @@ -132,7 +132,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CSwapGate.ctrl_state "qiskit.circuit.library.CSwapGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -219,12 +219,12 @@ $$ ### inverse - + Return inverse CSwap gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CU1Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CU1Gate.mdx index ad04e8eaff9..482be8b9e99 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CU1Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CU1Gate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CU1Gate # CU1Gate - + Bases: [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.controlledgate.ControlledGate") Controlled-U1 gate. @@ -92,7 +92,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CU1Gate.ctrl_state "qiskit.circuit.library.CU1Gate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -179,7 +179,7 @@ $$ ### control - + Controlled version of this gate. **Parameters** @@ -200,12 +200,12 @@ $$ ### inverse - + Return inverted CU1 gate ($CU1(\lambda)^{\dagger} = CU1(-\lambda))$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CU1Gate`](#qiskit.circuit.library.CU1Gate "qiskit.circuit.library.CU1Gate") with inverse parameter values. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CU1Gate`](#qiskit.circuit.library.CU1Gate "qiskit.circuit.library.CU1Gate") with inverse parameter values. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CU3Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CU3Gate.mdx index 946bca2ef51..1ecc3b1c23e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CU3Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CU3Gate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CU3Gate # CU3Gate - + Bases: [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.controlledgate.ControlledGate") Controlled-U3 gate (3-parameter two-qubit gate). @@ -117,7 +117,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CU3Gate.ctrl_state "qiskit.circuit.library.CU3Gate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -204,14 +204,14 @@ $$ ### inverse - + Return inverted CU3 gate. $CU3(\theta,\phi,\lambda)^{\dagger} =CU3(-\theta,-\phi,-\lambda))$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CU3Gate`](#qiskit.circuit.library.CU3Gate "qiskit.circuit.library.CU3Gate") with inverse parameter values. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CU3Gate`](#qiskit.circuit.library.CU3Gate "qiskit.circuit.library.CU3Gate") with inverse parameter values. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CUGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CUGate.mdx index a80b484b8b3..3334e64b859 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CUGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CUGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CUGate # CUGate - + Bases: [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.controlledgate.ControlledGate") Controlled-U gate (4-parameter two-qubit gate). @@ -121,7 +121,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CUGate.ctrl_state "qiskit.circuit.library.CUGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -194,14 +194,14 @@ $$ ### inverse - + Return inverted CU gate. $CU(\theta,\phi,\lambda,\gamma)^{\dagger} = CU(-\theta,-\phi,-\lambda,-\gamma))$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CUGate`](#qiskit.circuit.library.CUGate "qiskit.circuit.library.CUGate") with inverse parameter values. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`CUGate`](#qiskit.circuit.library.CUGate "qiskit.circuit.library.CUGate") with inverse parameter values. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CXGate.mdx index 0333d3ca643..17ef36a7647 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CXGate # CXGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") Controlled-X gate. @@ -119,7 +119,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CXGate.ctrl_state "qiskit.circuit.library.CXGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -206,14 +206,14 @@ $$ ### control - + Return a controlled-X gate with more control lines. **Parameters** * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – number of control qubits. * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for the gate \[Default: `None`] - * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. + * **ctrl\_state** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. * **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – indicates whether the controlled gate can be implemented as an annotated gate. **Returns** @@ -227,12 +227,12 @@ $$ ### inverse - + Return inverted CX gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CYGate.mdx index 3ec14c5abdb..630e0525e2f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CYGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CYGate # CYGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") Controlled-Y gate. @@ -111,7 +111,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CYGate.ctrl_state "qiskit.circuit.library.CYGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -198,12 +198,12 @@ $$ ### inverse - + Return inverted CY gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CZGate.mdx index d12aab79ee5..d92c841e6ec 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CZGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.CZGate # CZGate - + Bases: [`SingletonControlledGate`](circuit_singleton#qiskit.circuit.singleton.SingletonControlledGate "qiskit.circuit.singleton.SingletonControlledGate") Controlled-Z gate. @@ -92,7 +92,7 @@ $$ ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.CZGate.ctrl_state "qiskit.circuit.library.CZGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -179,12 +179,12 @@ $$ ### inverse - + Return inverted CZ gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.DCXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.DCXGate.mdx index 3398c802567..68dd93881f0 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.DCXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.DCXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.DCXGate # DCXGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") Double-CNOT gate. @@ -127,7 +127,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Diagonal.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Diagonal.mdx index 579e4863315..6b3fe0084f2 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Diagonal.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.Diagonal.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.Diagonal # Diagonal - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Diagonal circuit. @@ -132,7 +132,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.Diagonal.num_input_vars "qiskit.circuit.library.Diagonal.num_input_vars") must be zero. @@ -146,7 +146,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -154,7 +154,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.Diagonal.num_captured_vars "qiskit.circuit.library.Diagonal.num_captured_vars") must be zero. @@ -174,7 +174,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.DiagonalGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.DiagonalGate.mdx index cefed548edd..8e4c418f9ae 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.DiagonalGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.DiagonalGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.DiagonalGate # DiagonalGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Gate implementing a diagonal transformation. @@ -105,7 +105,7 @@ python_api_name: qiskit.circuit.library.DiagonalGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -118,13 +118,13 @@ python_api_name: qiskit.circuit.library.DiagonalGate ### inverse - + Return the inverse of the diagonal gate. ### validate\_parameter - + Diagonal Gate parameter should accept complex (in addition to the Gate parameter types) and always return build-in complex. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.DraperQFTAdder.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.DraperQFTAdder.mdx index 54d5f0dd338..643239d4df2 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.DraperQFTAdder.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.DraperQFTAdder.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.DraperQFTAdder # DraperQFTAdder - + Bases: `Adder` A circuit that uses QFT to perform in-place addition on two qubit registers. @@ -121,7 +121,7 @@ python_api_name: qiskit.circuit.library.DraperQFTAdder ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.DraperQFTAdder.num_input_vars "qiskit.circuit.library.DraperQFTAdder.num_input_vars") must be zero. @@ -135,7 +135,7 @@ python_api_name: qiskit.circuit.library.DraperQFTAdder ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -143,7 +143,7 @@ python_api_name: qiskit.circuit.library.DraperQFTAdder ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.DraperQFTAdder.num_captured_vars "qiskit.circuit.library.DraperQFTAdder.num_captured_vars") must be zero. @@ -173,7 +173,7 @@ python_api_name: qiskit.circuit.library.DraperQFTAdder ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ECRGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ECRGate.mdx index d207e814e16..f5f8bc4041b 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ECRGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ECRGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.ECRGate # ECRGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") An echoed cross-resonance gate. @@ -151,7 +151,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -164,12 +164,12 @@ $$ ### inverse - + Return inverse ECR gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.EfficientSU2.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.EfficientSU2.mdx index c9371feb7ab..b986f950409 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.EfficientSU2.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.EfficientSU2.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.EfficientSU2 # EfficientSU2 - + Bases: [`TwoLocal`](qiskit.circuit.library.TwoLocal "qiskit.circuit.library.n_local.two_local.TwoLocal") The hardware efficient SU(2) 2-local circuit. @@ -183,7 +183,7 @@ python_api_name: qiskit.circuit.library.EfficientSU2 ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.EfficientSU2.num_input_vars "qiskit.circuit.library.EfficientSU2.num_input_vars") must be zero. @@ -197,7 +197,7 @@ python_api_name: qiskit.circuit.library.EfficientSU2 ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -205,7 +205,7 @@ python_api_name: qiskit.circuit.library.EfficientSU2 ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.EfficientSU2.num_captured_vars "qiskit.circuit.library.EfficientSU2.num_captured_vars") must be zero. @@ -253,7 +253,7 @@ python_api_name: qiskit.circuit.library.EfficientSU2 ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.EvolvedOperatorAnsatz.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.EvolvedOperatorAnsatz.mdx index d4e7c8fc197..6380f0d5bf5 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.EvolvedOperatorAnsatz.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.EvolvedOperatorAnsatz.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.EvolvedOperatorAnsatz # EvolvedOperatorAnsatz - + Bases: [`NLocal`](qiskit.circuit.library.NLocal "qiskit.circuit.library.n_local.n_local.NLocal") The evolved operator ansatz. @@ -147,7 +147,7 @@ python_api_name: qiskit.circuit.library.EvolvedOperatorAnsatz ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.EvolvedOperatorAnsatz.num_input_vars "qiskit.circuit.library.EvolvedOperatorAnsatz.num_input_vars") must be zero. @@ -161,7 +161,7 @@ python_api_name: qiskit.circuit.library.EvolvedOperatorAnsatz ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -169,7 +169,7 @@ python_api_name: qiskit.circuit.library.EvolvedOperatorAnsatz ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.EvolvedOperatorAnsatz.num_captured_vars "qiskit.circuit.library.EvolvedOperatorAnsatz.num_captured_vars") must be zero. @@ -217,7 +217,7 @@ python_api_name: qiskit.circuit.library.EvolvedOperatorAnsatz ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ExactReciprocal.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ExactReciprocal.mdx index 5a0beb0efde..44650e778d1 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ExactReciprocal.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ExactReciprocal.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.ExactReciprocal # ExactReciprocal - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Exact reciprocal @@ -101,7 +101,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.ExactReciprocal.num_input_vars "qiskit.circuit.library.ExactReciprocal.num_input_vars") must be zero. @@ -115,7 +115,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -123,7 +123,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.ExactReciprocal.num_captured_vars "qiskit.circuit.library.ExactReciprocal.num_captured_vars") must be zero. @@ -143,7 +143,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ExcitationPreserving.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ExcitationPreserving.mdx index ffc385c2e83..aae4618671f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ExcitationPreserving.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ExcitationPreserving.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.ExcitationPreserving # ExcitationPreserving - + Bases: [`TwoLocal`](qiskit.circuit.library.TwoLocal "qiskit.circuit.library.n_local.two_local.TwoLocal") The heuristic excitation-preserving wave function ansatz. @@ -202,7 +202,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.ExcitationPreserving.num_input_vars "qiskit.circuit.library.ExcitationPreserving.num_input_vars") must be zero. @@ -216,7 +216,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -224,7 +224,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.ExcitationPreserving.num_captured_vars "qiskit.circuit.library.ExcitationPreserving.num_captured_vars") must be zero. @@ -272,7 +272,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.FourierChecking.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.FourierChecking.mdx index c75e7b306be..de3c0de715c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.FourierChecking.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.FourierChecking.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.FourierChecking # FourierChecking - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Fourier checking circuit. @@ -115,7 +115,7 @@ python_api_name: qiskit.circuit.library.FourierChecking ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.FourierChecking.num_input_vars "qiskit.circuit.library.FourierChecking.num_input_vars") must be zero. @@ -129,7 +129,7 @@ python_api_name: qiskit.circuit.library.FourierChecking ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -137,7 +137,7 @@ python_api_name: qiskit.circuit.library.FourierChecking ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.FourierChecking.num_captured_vars "qiskit.circuit.library.FourierChecking.num_captured_vars") must be zero. @@ -157,7 +157,7 @@ python_api_name: qiskit.circuit.library.FourierChecking ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.FunctionalPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.FunctionalPauliRotations.mdx index 099480a4f00..a7850ac21c9 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.FunctionalPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.FunctionalPauliRotations.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.FunctionalPauliRotations # FunctionalPauliRotations - + Bases: `BlueprintCircuit`, [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Base class for functional Pauli rotations. @@ -106,7 +106,7 @@ python_api_name: qiskit.circuit.library.FunctionalPauliRotations ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.FunctionalPauliRotations.num_input_vars "qiskit.circuit.library.FunctionalPauliRotations.num_input_vars") must be zero. @@ -120,7 +120,7 @@ python_api_name: qiskit.circuit.library.FunctionalPauliRotations ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -128,7 +128,7 @@ python_api_name: qiskit.circuit.library.FunctionalPauliRotations ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.FunctionalPauliRotations.num_captured_vars "qiskit.circuit.library.FunctionalPauliRotations.num_captured_vars") must be zero. @@ -156,7 +156,7 @@ python_api_name: qiskit.circuit.library.FunctionalPauliRotations ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GMS.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GMS.mdx index d63eea1fe44..2660c464957 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GMS.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GMS.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.GMS # GMS - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Global Mølmer–Sørensen gate. @@ -124,7 +124,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.GMS.num_input_vars "qiskit.circuit.library.GMS.num_input_vars") must be zero. @@ -138,7 +138,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -146,7 +146,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.GMS.num_captured_vars "qiskit.circuit.library.GMS.num_captured_vars") must be zero. @@ -166,7 +166,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GR.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GR.mdx index 6910aa26780..56510f10a65 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GR.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GR.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.GR # GR - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Global R gate. @@ -118,7 +118,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.GR.num_input_vars "qiskit.circuit.library.GR.num_input_vars") must be zero. @@ -132,7 +132,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -140,7 +140,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.GR.num_captured_vars "qiskit.circuit.library.GR.num_captured_vars") must be zero. @@ -160,7 +160,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GRX.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GRX.mdx index 967d342b64a..aefaccc3a74 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GRX.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GRX.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.GRX # GRX - + Bases: [`GR`](qiskit.circuit.library.GR "qiskit.circuit.library.generalized_gates.gr.GR") Global RX gate. @@ -117,7 +117,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.GRX.num_input_vars "qiskit.circuit.library.GRX.num_input_vars") must be zero. @@ -131,7 +131,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -139,7 +139,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.GRX.num_captured_vars "qiskit.circuit.library.GRX.num_captured_vars") must be zero. @@ -159,7 +159,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GRY.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GRY.mdx index 59b434845d9..a3d7cac9bd2 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GRY.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GRY.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.GRY # GRY - + Bases: [`GR`](qiskit.circuit.library.GR "qiskit.circuit.library.generalized_gates.gr.GR") Global RY gate. @@ -88,7 +88,7 @@ $$ ### instances - + ### layout @@ -117,7 +117,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.GRY.num_input_vars "qiskit.circuit.library.GRY.num_input_vars") must be zero. @@ -131,7 +131,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -139,7 +139,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.GRY.num_captured_vars "qiskit.circuit.library.GRY.num_captured_vars") must be zero. @@ -159,7 +159,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GRZ.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GRZ.mdx index f9ebce303fe..2fbffe19c28 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GRZ.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GRZ.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.GRZ # GRZ - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Global RZ gate. @@ -88,7 +88,7 @@ $$ ### instances - + ### layout @@ -117,7 +117,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.GRZ.num_input_vars "qiskit.circuit.library.GRZ.num_input_vars") must be zero. @@ -131,7 +131,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -139,7 +139,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.GRZ.num_captured_vars "qiskit.circuit.library.GRZ.num_captured_vars") must be zero. @@ -159,7 +159,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GlobalPhaseGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GlobalPhaseGate.mdx index 4401a6db8b5..ac97c66fb32 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GlobalPhaseGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GlobalPhaseGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.GlobalPhaseGate # GlobalPhaseGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") The global phase gate ($e^{i\theta}$). @@ -119,7 +119,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -132,14 +132,14 @@ $$ ### inverse - + Return inverse GlobalPhaseGate gate. $\text{GlobalPhaseGate}(\lambda)^{\dagger} = \text{GlobalPhaseGate}(-\lambda)$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse is always another [`GlobalPhaseGate`](#qiskit.circuit.library.GlobalPhaseGate "qiskit.circuit.library.GlobalPhaseGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse is always another [`GlobalPhaseGate`](#qiskit.circuit.library.GlobalPhaseGate "qiskit.circuit.library.GlobalPhaseGate") with an inverted parameter value. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GraphState.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GraphState.mdx index 89b1f4bc457..29b8a3cc44d 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GraphState.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GraphState.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.GraphState # GraphState - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Circuit to prepare a graph state. @@ -93,7 +93,7 @@ $$ ### instances - + ### layout @@ -122,7 +122,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.GraphState.num_input_vars "qiskit.circuit.library.GraphState.num_input_vars") must be zero. @@ -136,7 +136,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -144,7 +144,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.GraphState.num_captured_vars "qiskit.circuit.library.GraphState.num_captured_vars") must be zero. @@ -164,7 +164,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GroverOperator.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GroverOperator.mdx index 5e7c6a0f770..73b0153867a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GroverOperator.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GroverOperator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.GroverOperator # GroverOperator - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") The Grover operator. @@ -204,7 +204,7 @@ $$ ### instances - + ### layout @@ -233,7 +233,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.GroverOperator.num_input_vars "qiskit.circuit.library.GroverOperator.num_input_vars") must be zero. @@ -247,7 +247,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -255,7 +255,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.GroverOperator.num_captured_vars "qiskit.circuit.library.GroverOperator.num_captured_vars") must be zero. @@ -275,7 +275,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.HGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.HGate.mdx index 5424f8f0737..ec0056e1fe8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.HGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.HGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.HGate # HGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") Single-qubit Hadamard gate. @@ -125,7 +125,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -138,7 +138,7 @@ $$ ### control - + Return a (multi-)controlled-H gate. One control qubit returns a CH gate. @@ -161,12 +161,12 @@ $$ ### inverse - + Return inverted H gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.HRSCumulativeMultiplier.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.HRSCumulativeMultiplier.mdx index 47114b843e4..cd131d9069c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.HRSCumulativeMultiplier.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.HRSCumulativeMultiplier.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.HRSCumulativeMultiplier # HRSCumulativeMultiplier - + Bases: `Multiplier` A multiplication circuit to store product of two input registers out-of-place. @@ -105,7 +105,7 @@ python_api_name: qiskit.circuit.library.HRSCumulativeMultiplier ### instances - + ### layout @@ -134,7 +134,7 @@ python_api_name: qiskit.circuit.library.HRSCumulativeMultiplier ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.HRSCumulativeMultiplier.num_input_vars "qiskit.circuit.library.HRSCumulativeMultiplier.num_input_vars") must be zero. @@ -148,7 +148,7 @@ python_api_name: qiskit.circuit.library.HRSCumulativeMultiplier ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -156,7 +156,7 @@ python_api_name: qiskit.circuit.library.HRSCumulativeMultiplier ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.HRSCumulativeMultiplier.num_captured_vars "qiskit.circuit.library.HRSCumulativeMultiplier.num_captured_vars") must be zero. @@ -196,7 +196,7 @@ python_api_name: qiskit.circuit.library.HRSCumulativeMultiplier ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.HamiltonianGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.HamiltonianGate.mdx index 8ee8771ca48..998bfb22d5f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.HamiltonianGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.HamiltonianGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.HamiltonianGate # HamiltonianGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Class for representing evolution by a Hamiltonian operator as a gate. @@ -113,7 +113,7 @@ python_api_name: qiskit.circuit.library.HamiltonianGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -126,31 +126,31 @@ python_api_name: qiskit.circuit.library.HamiltonianGate ### adjoint - + Return the adjoint of the unitary. ### conjugate - + Return the conjugate of the Hamiltonian. ### inverse - + Return the adjoint of the unitary. ### transpose - + Return the transpose of the Hamiltonian. ### validate\_parameter - + Hamiltonian parameter has to be an ndarray, operator or float. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.HiddenLinearFunction.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.HiddenLinearFunction.mdx index 24b9e37393b..0f566f0d122 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.HiddenLinearFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.HiddenLinearFunction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.HiddenLinearFunction # HiddenLinearFunction - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Circuit to solve the hidden linear function problem. @@ -95,7 +95,7 @@ $$ ### instances - + ### layout @@ -124,7 +124,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.HiddenLinearFunction.num_input_vars "qiskit.circuit.library.HiddenLinearFunction.num_input_vars") must be zero. @@ -138,7 +138,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -146,7 +146,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.HiddenLinearFunction.num_captured_vars "qiskit.circuit.library.HiddenLinearFunction.num_captured_vars") must be zero. @@ -166,7 +166,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.IGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.IGate.mdx index c52c26420e9..706138a30d9 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.IGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.IGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.IGate # IGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") Identity gate. @@ -124,7 +124,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -137,12 +137,12 @@ $$ ### inverse - + Returne the inverse gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** @@ -157,7 +157,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.IQP.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.IQP.mdx index e55dcec39fe..7c6ab4f3dd2 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.IQP.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.IQP.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.IQP # IQP - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Instantaneous quantum polynomial (IQP) circuit. @@ -83,7 +83,7 @@ python_api_name: qiskit.circuit.library.IQP ### instances - + ### layout @@ -112,7 +112,7 @@ python_api_name: qiskit.circuit.library.IQP ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.IQP.num_input_vars "qiskit.circuit.library.IQP.num_input_vars") must be zero. @@ -126,7 +126,7 @@ python_api_name: qiskit.circuit.library.IQP ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -134,7 +134,7 @@ python_api_name: qiskit.circuit.library.IQP ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.IQP.num_captured_vars "qiskit.circuit.library.IQP.num_captured_vars") must be zero. @@ -154,7 +154,7 @@ python_api_name: qiskit.circuit.library.IQP ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Initialize.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Initialize.mdx index b4c07e9d3cb..460eb71aae4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Initialize.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.Initialize.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.Initialize # Initialize - + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") Complex amplitude initialization. @@ -130,7 +130,7 @@ python_api_name: qiskit.circuit.library.Initialize ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -149,7 +149,7 @@ python_api_name: qiskit.circuit.library.Initialize ### gates\_to\_uncompute - + Call to create a circuit with gates that take the desired vector to zero. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.InnerProduct.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.InnerProduct.mdx index 46a781f59cf..c82cec80bf4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.InnerProduct.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.InnerProduct.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.InnerProduct # InnerProduct - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") A 2n-qubit Boolean function that computes the inner product of two n-qubit vectors over $F_2$. @@ -94,7 +94,7 @@ $$ ### instances - + ### layout @@ -123,7 +123,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.InnerProduct.num_input_vars "qiskit.circuit.library.InnerProduct.num_input_vars") must be zero. @@ -137,7 +137,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -145,7 +145,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.InnerProduct.num_captured_vars "qiskit.circuit.library.InnerProduct.num_captured_vars") must be zero. @@ -165,7 +165,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.IntegerComparator.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.IntegerComparator.mdx index e4150f79c0e..2644e62f402 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.IntegerComparator.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.IntegerComparator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.IntegerComparator # IntegerComparator - + Bases: `BlueprintCircuit` Integer Comparator. @@ -74,7 +74,7 @@ $$ ### instances - + ### layout @@ -103,7 +103,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.IntegerComparator.num_input_vars "qiskit.circuit.library.IntegerComparator.num_input_vars") must be zero. @@ -117,7 +117,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -125,7 +125,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.IntegerComparator.num_captured_vars "qiskit.circuit.library.IntegerComparator.num_captured_vars") must be zero. @@ -153,7 +153,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Isometry.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Isometry.mdx index d1df19211e2..6699dfea79b 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Isometry.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.Isometry.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.Isometry # Isometry - + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") Decomposition of arbitrary isometries from $m$ to $n$ qubits. @@ -118,7 +118,7 @@ python_api_name: qiskit.circuit.library.Isometry ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -131,24 +131,24 @@ python_api_name: qiskit.circuit.library.Isometry ### inv\_gate - + Return the adjoint of the unitary. ### inverse - + Invert this instruction. If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. + If annotated is True, the inverse instruction is implemented as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"), and corresponds to the given instruction annotated with the “inverse modifier”. Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). **Returns** @@ -161,7 +161,7 @@ python_api_name: qiskit.circuit.library.Isometry ### validate\_parameter - + Isometry parameter has to be an ndarray. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.LinearAmplitudeFunction.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.LinearAmplitudeFunction.mdx index baf00225c69..4a739d2a956 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.LinearAmplitudeFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.LinearAmplitudeFunction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.LinearAmplitudeFunction # LinearAmplitudeFunction - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") A circuit implementing a (piecewise) linear function on qubit amplitudes. @@ -109,7 +109,7 @@ $$ ### instances - + ### layout @@ -138,7 +138,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.LinearAmplitudeFunction.num_input_vars "qiskit.circuit.library.LinearAmplitudeFunction.num_input_vars") must be zero. @@ -152,7 +152,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -160,7 +160,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.LinearAmplitudeFunction.num_captured_vars "qiskit.circuit.library.LinearAmplitudeFunction.num_captured_vars") must be zero. @@ -180,7 +180,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -273,7 +273,7 @@ $$ ### post\_processing - + Map the function value of the approximated $\hat{f}$ to $f$. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.LinearFunction.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.LinearFunction.mdx index 846e0c569e6..625aa87b86c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.LinearFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.LinearFunction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.LinearFunction # LinearFunction - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") A linear reversible circuit on n qubits. @@ -154,7 +154,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -167,7 +167,7 @@ $$ ### extend\_with\_identity - + Extend linear function to a linear function over nq qubits, with identities on other subsystems. **Parameters** @@ -186,13 +186,13 @@ $$ ### function\_str - + Return string representation of the linear function viewed as a linear transformation. ### is\_permutation - + Returns whether this linear function is a permutation, that is whether every row and every column of the n x n matrix has exactly one 1. **Return type** @@ -202,19 +202,19 @@ $$ ### mat\_str - + Return string representation of the linear function viewed as a matrix with 0/1 entries. ### permutation\_pattern - + This method first checks if a linear function is a permutation and raises a qiskit.circuit.exceptions.CircuitError if not. In the case that this linear function is a permutation, returns the permutation pattern. ### synthesize - + Synthesizes the linear function into a quantum circuit. **Returns** @@ -228,7 +228,7 @@ $$ ### validate\_parameter - + Parameter validation diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.LinearPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.LinearPauliRotations.mdx index ca14232d857..5594cb2d620 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.LinearPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.LinearPauliRotations.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.LinearPauliRotations # LinearPauliRotations - + Bases: [`FunctionalPauliRotations`](qiskit.circuit.library.FunctionalPauliRotations "qiskit.circuit.library.arithmetic.functional_pauli_rotations.FunctionalPauliRotations") Linearly-controlled X, Y or Z rotation. @@ -90,7 +90,7 @@ $$ ### instances - + ### layout @@ -129,7 +129,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.LinearPauliRotations.num_input_vars "qiskit.circuit.library.LinearPauliRotations.num_input_vars") must be zero. @@ -143,7 +143,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -151,7 +151,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.LinearPauliRotations.num_captured_vars "qiskit.circuit.library.LinearPauliRotations.num_captured_vars") must be zero. @@ -179,7 +179,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCMT.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCMT.mdx index f0277a7ccdc..6bb920e2665 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCMT.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCMT.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.MCMT # MCMT - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") The multi-controlled multi-target gate, for an arbitrary singly controlled target gate. @@ -34,7 +34,7 @@ python_api_name: qiskit.circuit.library.MCMT **Parameters** - * **gate** ([*Gate*](qiskit.circuit.Gate "qiskit.circuit.Gate") *| Callable\[\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*,* [*circuit.Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*,* [*circuit.Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*],* [*circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*]*) – The gate to be applied controlled on the control qubits and applied to the target qubits. Can be either a Gate or a circuit method. If it is a callable, it will be casted to a Gate. + * **gate** ([*Gate*](qiskit.circuit.Gate "qiskit.circuit.Gate") *| Callable\[\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*,* [*circuit.Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*,* [*circuit.Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*],* [*circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*]*) – The gate to be applied controlled on the control qubits and applied to the target qubits. Can be either a Gate or a circuit method. If it is a callable, it will be casted to a Gate. * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – The number of control qubits. * **num\_target\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – The number of target qubits. @@ -87,7 +87,7 @@ python_api_name: qiskit.circuit.library.MCMT ### instances - + ### layout @@ -122,7 +122,7 @@ python_api_name: qiskit.circuit.library.MCMT ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.MCMT.num_input_vars "qiskit.circuit.library.MCMT.num_input_vars") must be zero. @@ -136,7 +136,7 @@ python_api_name: qiskit.circuit.library.MCMT ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -144,7 +144,7 @@ python_api_name: qiskit.circuit.library.MCMT ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.MCMT.num_captured_vars "qiskit.circuit.library.MCMT.num_captured_vars") must be zero. @@ -164,7 +164,7 @@ python_api_name: qiskit.circuit.library.MCMT ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -257,13 +257,13 @@ python_api_name: qiskit.circuit.library.MCMT ### control - + Return the controlled version of the MCMT circuit. ### inverse - + Return the inverse MCMT circuit, which is itself. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCMTVChain.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCMTVChain.mdx index 5633437295a..5d31c330d43 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCMTVChain.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCMTVChain.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.MCMTVChain # MCMTVChain - + Bases: [`MCMT`](qiskit.circuit.library.MCMT "qiskit.circuit.library.generalized_gates.mcmt.MCMT") The MCMT implementation using the CCX V-chain. @@ -58,7 +58,7 @@ python_api_name: qiskit.circuit.library.MCMTVChain **Parameters** - * **gate** ([*Gate*](qiskit.circuit.Gate "qiskit.circuit.Gate") *| Callable\[\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*,* [*circuit.Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*,* [*circuit.Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*],* [*circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*]*) – The gate to be applied controlled on the control qubits and applied to the target qubits. Can be either a Gate or a circuit method. If it is a callable, it will be casted to a Gate. + * **gate** ([*Gate*](qiskit.circuit.Gate "qiskit.circuit.Gate") *| Callable\[\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")*,* [*circuit.Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*,* [*circuit.Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*],* [*circuit.Instruction*](qiskit.circuit.Instruction "qiskit.circuit.Instruction")*]*) – The gate to be applied controlled on the control qubits and applied to the target qubits. Can be either a Gate or a circuit method. If it is a callable, it will be casted to a Gate. * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – The number of control qubits. * **num\_target\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – The number of target qubits. @@ -111,7 +111,7 @@ python_api_name: qiskit.circuit.library.MCMTVChain ### instances - + ### layout @@ -146,7 +146,7 @@ python_api_name: qiskit.circuit.library.MCMTVChain ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.MCMTVChain.num_input_vars "qiskit.circuit.library.MCMTVChain.num_input_vars") must be zero. @@ -160,7 +160,7 @@ python_api_name: qiskit.circuit.library.MCMTVChain ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -168,7 +168,7 @@ python_api_name: qiskit.circuit.library.MCMTVChain ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.MCMTVChain.num_captured_vars "qiskit.circuit.library.MCMTVChain.num_captured_vars") must be zero. @@ -188,7 +188,7 @@ python_api_name: qiskit.circuit.library.MCMTVChain ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -281,7 +281,7 @@ python_api_name: qiskit.circuit.library.MCMTVChain ### inverse - + Return the inverse MCMT circuit, which is itself. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCPhaseGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCPhaseGate.mdx index 0039897a9ab..db7ddb9ed18 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCPhaseGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCPhaseGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.MCPhaseGate # MCPhaseGate - + Bases: [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.controlledgate.ControlledGate") Multi-controlled-Phase gate. @@ -86,7 +86,7 @@ python_api_name: qiskit.circuit.library.MCPhaseGate ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.MCPhaseGate.ctrl_state "qiskit.circuit.library.MCPhaseGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -173,7 +173,7 @@ python_api_name: qiskit.circuit.library.MCPhaseGate ### control - + Controlled version of this gate. **Parameters** @@ -194,8 +194,8 @@ python_api_name: qiskit.circuit.library.MCPhaseGate ### inverse - - Return inverted MCU1 gate ($MCU1(\lambda)^{\dagger} = MCU1(-\lambda)$) + + Return inverted MCPhase gate ($MCPhase(\lambda)^{\dagger} = MCPhase(-\lambda)$) diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCXGate.mdx index 3e2219a59af..522aba7f980 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.MCXGate # MCXGate - + Bases: [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.controlledgate.ControlledGate") The general, multi-controlled X gate. @@ -67,7 +67,7 @@ python_api_name: qiskit.circuit.library.MCXGate ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.MCXGate.ctrl_state "qiskit.circuit.library.MCXGate.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -160,14 +160,14 @@ python_api_name: qiskit.circuit.library.MCXGate ### control - + Return a multi-controlled-X gate with more control lines. **Parameters** * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – number of control qubits. * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for the gate \[Default: `None`] - * **ctrl\_state** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. + * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. * **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – indicates whether the controlled gate can be implemented as an annotated gate. **Returns** @@ -181,7 +181,7 @@ python_api_name: qiskit.circuit.library.MCXGate ### get\_num\_ancilla\_qubits - + Get the number of required ancilla qubits without instantiating the class. This staticmethod might be necessary to check the number of ancillas before creating the gate, or to use the number of ancillas in the initialization. @@ -193,12 +193,12 @@ python_api_name: qiskit.circuit.library.MCXGate ### inverse - + Invert this gate. The MCX is its own inverse. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCXGrayCode.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCXGrayCode.mdx index ff9c600bad9..e49cbdd3e5a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCXGrayCode.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCXGrayCode.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.MCXGrayCode # MCXGrayCode - + Bases: [`MCXGate`](qiskit.circuit.library.MCXGate "qiskit.circuit.library.standard_gates.x.MCXGate") Implement the multi-controlled X gate using the Gray code. @@ -67,7 +67,7 @@ python_api_name: qiskit.circuit.library.MCXGrayCode ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.MCXGrayCode.ctrl_state "qiskit.circuit.library.MCXGrayCode.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -160,12 +160,12 @@ python_api_name: qiskit.circuit.library.MCXGrayCode ### inverse - + Invert this gate. The MCX is its own inverse. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCXRecursive.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCXRecursive.mdx index d332c3507e8..60a17831652 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCXRecursive.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCXRecursive.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.MCXRecursive # MCXRecursive - + Bases: [`MCXGate`](qiskit.circuit.library.MCXGate "qiskit.circuit.library.standard_gates.x.MCXGate") Implement the multi-controlled X gate using recursion. @@ -67,7 +67,7 @@ python_api_name: qiskit.circuit.library.MCXRecursive ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.MCXRecursive.ctrl_state "qiskit.circuit.library.MCXRecursive.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -160,18 +160,18 @@ python_api_name: qiskit.circuit.library.MCXRecursive ### get\_num\_ancilla\_qubits - + Get the number of required ancilla qubits. ### inverse - + Invert this gate. The MCX is its own inverse. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCXVChain.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCXVChain.mdx index 91027b7d716..5b82472437c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCXVChain.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCXVChain.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.MCXVChain # MCXVChain - + Bases: [`MCXGate`](qiskit.circuit.library.MCXGate "qiskit.circuit.library.standard_gates.x.MCXGate") Implement the multi-controlled X gate using a V-chain of CX gates. @@ -65,7 +65,7 @@ python_api_name: qiskit.circuit.library.MCXVChain ### definition - Return definition in terms of other basic gates. If the gate has open controls, as determined from self.ctrl\_state, the returned definition is conjugated with X without changing the internal \_definition. + Return definition in terms of other basic gates. If the gate has open controls, as determined from [`ctrl_state`](#qiskit.circuit.library.MCXVChain.ctrl_state "qiskit.circuit.library.MCXVChain.ctrl_state"), the returned definition is conjugated with X without changing the internal `_definition`. ### duration @@ -158,18 +158,18 @@ python_api_name: qiskit.circuit.library.MCXVChain ### get\_num\_ancilla\_qubits - + Get the number of required ancilla qubits. ### inverse - + Invert this gate. The MCX is its own inverse. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MSGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MSGate.mdx index c531f35d8bb..d5b01a871df 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MSGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MSGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.MSGate # MSGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") MSGate has been deprecated. Please use `GMS` in `qiskit.circuit.generalized_gates` instead. @@ -109,7 +109,7 @@ python_api_name: qiskit.circuit.library.MSGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Measure.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Measure.mdx deleted file mode 100644 index 0f2d73f84c6..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Measure.mdx +++ /dev/null @@ -1,278 +0,0 @@ ---- -title: Measure -description: API reference for qiskit.circuit.library.Measure -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.library.Measure ---- - -# Measure - - - Bases: [`SingletonInstruction`](circuit_singleton#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") - - Quantum measurement in the computational basis. - - Create new measurement instruction. - - ## Attributes - - ### base\_class - - - Get the base class of this instruction. This is guaranteed to be in the inheritance tree of `self`. - - The “base class” of an instruction is the lowest class in its inheritance tree that the object should be considered entirely compatible with for \_all\_ circuit applications. This typically means that the subclass is defined purely to offer some sort of programmer convenience over the base class, and the base class is the “true” class for a behavioural perspective. In particular, you should *not* override [`base_class`](#qiskit.circuit.library.Measure.base_class "qiskit.circuit.library.Measure.base_class") if you are defining a custom version of an instruction that will be implemented differently by hardware, such as an alternative measurement strategy, or a version of a parametrised gate with a particular set of parameters for the purposes of distinguishing it in a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") from the full parametrised gate. - - This is often exactly equivalent to `type(obj)`, except in the case of singleton instances of standard-library instructions. These singleton instances are special subclasses of their base class, and this property will return that base. For example: - - ```python - >>> isinstance(XGate(), XGate) - True - >>> type(XGate()) is XGate - False - >>> XGate().base_class is XGate - True - ``` - - In general, you should not rely on the precise class of an instruction; within a given circuit, it is expected that `Instruction.name` should be a more suitable discriminator in most situations. - - - ### condition - - - The classical condition on the instruction. - - - ### condition\_bits - - - Get Clbits in condition. - - - ### decompositions - - - Get the decompositions of the instruction from the SessionEquivalenceLibrary. - - - ### definition - - - Return definition in terms of other basic gates. - - - ### duration - - - Get the duration. - - - ### label - - - Return instruction label - - - ### mutable - - - Is this instance is a mutable unique instance or not. - - If this attribute is `False` the gate instance is a shared singleton and is not mutable. - - - ### name - - - Return the name. - - - ### num\_clbits - - - Return the number of clbits. - - - ### num\_qubits - - - Return the number of qubits. - - - ### params - - - return instruction params. - - - ### unit - - - Get the time unit of duration. - - - ## Methods - - ### add\_decomposition - - - Add a decomposition of the instruction to the SessionEquivalenceLibrary. - - - ### assemble - - - Assemble a QasmQobjInstruction - - - ### broadcast\_arguments - - - Validation of the arguments. - - **Parameters** - - * **qargs** (*List*) – List of quantum bit arguments. - * **cargs** (*List*) – List of classical bit arguments. - - **Yields** - - *Tuple(List, List)* – A tuple with single arguments. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If the input is not valid. For example, the number of arguments does not match the gate expectation. - - - ### c\_if - - - Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. - - - This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. - - - - ### copy - - - Copy of the instruction. - - **Parameters** - - **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – name to be given to the copied circuit, if `None` then the name stays the same. - - **Returns** - - a copy of the current instruction, with the name updated if it was provided - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### inverse - - - Invert this instruction. - - If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. - - Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. - - **Parameters** - - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. - - **Returns** - - The inverse operation. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if the instruction is not composite and an inverse has not been implemented for it. - - - ### is\_parameterized - - - Return True .IFF. instruction is parameterized else False - - - ### repeat - - - Creates an instruction with gate repeated n amount of times. - - **Parameters** - - **n** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Number of times to repeat the instruction - - **Returns** - - Containing the definition. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If n \< 1. - - - ### reverse\_ops - - - For a composite instruction, reverse the order of sub-instructions. - - This is done by recursively reversing all sub-instructions. It does not invert any gate. - - **Returns** - - **a new instruction with** - - sub-instructions reversed. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### soft\_compare - - - Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. - - **Parameters** - - **other** (*instruction*) – other instruction. - - **Returns** - - are self and other equal up to parameter expressions. - - **Return type** - - [bool](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)") - - - ### to\_mutable - - - Return a mutable copy of this gate. - - This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. - - - ### validate\_parameter - - - Instruction parameters has no validation or normalization. - - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.NLocal.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.NLocal.mdx index 8d668a1c993..e0260913a6a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.NLocal.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.NLocal.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.NLocal # NLocal - + Bases: `BlueprintCircuit` The n-local circuit class. @@ -140,7 +140,7 @@ python_api_name: qiskit.circuit.library.NLocal ### instances - + ### layout @@ -169,7 +169,7 @@ python_api_name: qiskit.circuit.library.NLocal ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.NLocal.num_input_vars "qiskit.circuit.library.NLocal.num_input_vars") must be zero. @@ -183,7 +183,7 @@ python_api_name: qiskit.circuit.library.NLocal ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -191,7 +191,7 @@ python_api_name: qiskit.circuit.library.NLocal ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.NLocal.num_captured_vars "qiskit.circuit.library.NLocal.num_captured_vars") must be zero. @@ -239,7 +239,7 @@ python_api_name: qiskit.circuit.library.NLocal ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -350,7 +350,7 @@ python_api_name: qiskit.circuit.library.NLocal ### add\_layer - + Append another layer to the NLocal. **Parameters** @@ -374,7 +374,7 @@ python_api_name: qiskit.circuit.library.NLocal ### assign\_parameters - + Assign parameters to the n-local circuit. This method also supports passing a list instead of a dictionary. If a list is passed, the list must have the same length as the number of unbound parameters in the circuit. The parameters are assigned in the order of the parameters in [`ordered_parameters()`](#qiskit.circuit.library.NLocal.ordered_parameters "qiskit.circuit.library.NLocal.ordered_parameters"). @@ -394,7 +394,7 @@ python_api_name: qiskit.circuit.library.NLocal ### get\_entangler\_map - + Get the entangler map for in the repetition `rep_num` and the block `block_num`. The entangler map for the current block is derived from the value of `self.entanglement`. Below the different cases are listed, where `i` and `j` denote the repetition number and the block number, respectively, and `n` the number of qubits in the block. @@ -435,7 +435,7 @@ python_api_name: qiskit.circuit.library.NLocal ### get\_unentangled\_qubits - + Get the indices of unentangled qubits in a set. **Returns** @@ -449,7 +449,7 @@ python_api_name: qiskit.circuit.library.NLocal ### print\_settings - + Returns information about the setting. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.OR.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.OR.mdx index 0ffc8dd9f4b..265e04e61d9 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.OR.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.OR.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.OR # OR - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") A circuit implementing the logical OR operation on a number of qubits. @@ -75,7 +75,7 @@ python_api_name: qiskit.circuit.library.OR ### instances - + ### layout @@ -104,7 +104,7 @@ python_api_name: qiskit.circuit.library.OR ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.OR.num_input_vars "qiskit.circuit.library.OR.num_input_vars") must be zero. @@ -118,7 +118,7 @@ python_api_name: qiskit.circuit.library.OR ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -126,7 +126,7 @@ python_api_name: qiskit.circuit.library.OR ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.OR.num_captured_vars "qiskit.circuit.library.OR.num_captured_vars") must be zero. @@ -146,7 +146,7 @@ python_api_name: qiskit.circuit.library.OR ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PauliEvolutionGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PauliEvolutionGate.mdx index 5553c60174e..d1b5eb60c7f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PauliEvolutionGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PauliEvolutionGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PauliEvolutionGate # PauliEvolutionGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Time-evolution of an operator consisting of Paulis. @@ -156,7 +156,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### time @@ -179,7 +179,7 @@ $$ ### validate\_parameter - + Gate parameters should be int, float, or ParameterExpression **Return type** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PauliFeatureMap.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PauliFeatureMap.mdx index f2c4ddd332c..b155ec69f37 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PauliFeatureMap.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PauliFeatureMap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PauliFeatureMap # PauliFeatureMap - + Bases: [`NLocal`](qiskit.circuit.library.NLocal "qiskit.circuit.library.n_local.n_local.NLocal") The Pauli Expansion circuit. @@ -203,7 +203,7 @@ $$ ### instances - + ### layout @@ -232,7 +232,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.PauliFeatureMap.num_input_vars "qiskit.circuit.library.PauliFeatureMap.num_input_vars") must be zero. @@ -246,7 +246,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -254,7 +254,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.PauliFeatureMap.num_captured_vars "qiskit.circuit.library.PauliFeatureMap.num_captured_vars") must be zero. @@ -292,7 +292,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -413,13 +413,13 @@ $$ ### pauli\_block - + Get the Pauli block for the feature map circuit. ### pauli\_evolution - + Get the evolution block for the given pauli string. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PauliGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PauliGate.mdx index 84954772485..7d3a222d976 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PauliGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PauliGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PauliGate # PauliGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") A multi-qubit Pauli gate. @@ -116,7 +116,7 @@ python_api_name: qiskit.circuit.library.PauliGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -129,13 +129,13 @@ python_api_name: qiskit.circuit.library.PauliGate ### inverse - + Return inverted pauli gate (itself). ### validate\_parameter - + Gate parameters should be int, float, or ParameterExpression diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PauliTwoDesign.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PauliTwoDesign.mdx index 9d331d8eeb6..5aee65bc7ea 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PauliTwoDesign.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PauliTwoDesign.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PauliTwoDesign # PauliTwoDesign - + Bases: [`TwoLocal`](qiskit.circuit.library.TwoLocal "qiskit.circuit.library.n_local.two_local.TwoLocal") The Pauli Two-Design ansatz. @@ -138,7 +138,7 @@ python_api_name: qiskit.circuit.library.PauliTwoDesign ### instances - + ### layout @@ -167,7 +167,7 @@ python_api_name: qiskit.circuit.library.PauliTwoDesign ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.PauliTwoDesign.num_input_vars "qiskit.circuit.library.PauliTwoDesign.num_input_vars") must be zero. @@ -181,7 +181,7 @@ python_api_name: qiskit.circuit.library.PauliTwoDesign ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -189,7 +189,7 @@ python_api_name: qiskit.circuit.library.PauliTwoDesign ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.PauliTwoDesign.num_captured_vars "qiskit.circuit.library.PauliTwoDesign.num_captured_vars") must be zero. @@ -231,7 +231,7 @@ python_api_name: qiskit.circuit.library.PauliTwoDesign ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Permutation.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Permutation.mdx index efd624f8c3c..a46147b472d 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Permutation.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.Permutation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.Permutation # Permutation - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") An n\_qubit circuit that permutes qubits. @@ -77,7 +77,7 @@ python_api_name: qiskit.circuit.library.Permutation ### instances - + ### layout @@ -106,7 +106,7 @@ python_api_name: qiskit.circuit.library.Permutation ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.Permutation.num_input_vars "qiskit.circuit.library.Permutation.num_input_vars") must be zero. @@ -120,7 +120,7 @@ python_api_name: qiskit.circuit.library.Permutation ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -128,7 +128,7 @@ python_api_name: qiskit.circuit.library.Permutation ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.Permutation.num_captured_vars "qiskit.circuit.library.Permutation.num_captured_vars") must be zero. @@ -148,7 +148,7 @@ python_api_name: qiskit.circuit.library.Permutation ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PermutationGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PermutationGate.mdx index 0d8c35038dc..29baefc50c5 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PermutationGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PermutationGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PermutationGate # PermutationGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") A gate that permutes qubits. @@ -119,7 +119,7 @@ python_api_name: qiskit.circuit.library.PermutationGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### pattern @@ -138,13 +138,13 @@ python_api_name: qiskit.circuit.library.PermutationGate ### inverse - + Returns the inverse of the permutation. ### validate\_parameter - + Parameter validation. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseEstimation.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseEstimation.mdx index 9b2922c9233..91cf4cbd9d1 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseEstimation.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseEstimation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PhaseEstimation # PhaseEstimation - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Phase Estimation circuit. @@ -94,7 +94,7 @@ $$ ### instances - + ### layout @@ -123,7 +123,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.PhaseEstimation.num_input_vars "qiskit.circuit.library.PhaseEstimation.num_input_vars") must be zero. @@ -137,7 +137,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -145,7 +145,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.PhaseEstimation.num_captured_vars "qiskit.circuit.library.PhaseEstimation.num_captured_vars") must be zero. @@ -165,7 +165,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseGate.mdx index f00adb5776d..261082ff2e0 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PhaseGate # PhaseGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Single-qubit rotation about the Z axis. @@ -149,7 +149,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -162,7 +162,7 @@ $$ ### control - + Return a (multi-)controlled-Phase gate. **Parameters** @@ -183,12 +183,12 @@ $$ ### inverse - + Return inverted Phase gate ($Phase(\lambda)^{\dagger} = Phase(-\lambda)$) **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always another `PGate` with an inverse parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always another `PGate` with an inverse parameter value. **Returns** @@ -201,7 +201,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseOracle.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseOracle.mdx index 30897340abd..11825b7cdfc 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseOracle.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseOracle.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PhaseOracle # PhaseOracle - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Phase Oracle. @@ -71,7 +71,7 @@ python_api_name: qiskit.circuit.library.PhaseOracle ### instances - + ### layout @@ -100,7 +100,7 @@ python_api_name: qiskit.circuit.library.PhaseOracle ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.PhaseOracle.num_input_vars "qiskit.circuit.library.PhaseOracle.num_input_vars") must be zero. @@ -114,7 +114,7 @@ python_api_name: qiskit.circuit.library.PhaseOracle ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -122,7 +122,7 @@ python_api_name: qiskit.circuit.library.PhaseOracle ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.PhaseOracle.num_captured_vars "qiskit.circuit.library.PhaseOracle.num_captured_vars") must be zero. @@ -142,7 +142,7 @@ python_api_name: qiskit.circuit.library.PhaseOracle ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -235,7 +235,7 @@ python_api_name: qiskit.circuit.library.PhaseOracle ### evaluate\_bitstring - + Evaluate the oracle on a bitstring. This evaluation is done classically without any quantum circuit. **Parameters** @@ -253,7 +253,7 @@ python_api_name: qiskit.circuit.library.PhaseOracle ### from\_dimacs\_file - + Create a PhaseOracle from the string in the DIMACS format. It is possible to build a PhaseOracle from a file in [DIMACS CNF format](http://www.satcompetition.org/2009/format-benchmarks2009.html), which is the standard format for specifying SATisfiability (SAT) problem instances in [Conjunctive Normal Form (CNF)](https://en.wikipedia.org/wiki/Conjunctive_normal_form), which is a conjunction of one or more clauses, where a clause is a disjunction of one or more literals. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseChebyshev.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseChebyshev.mdx index f403dc0e916..51519ef5a6a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseChebyshev.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseChebyshev.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PiecewiseChebyshev # PiecewiseChebyshev - + Bases: `BlueprintCircuit` Piecewise Chebyshev approximation to an input function. @@ -116,7 +116,7 @@ python_api_name: qiskit.circuit.library.PiecewiseChebyshev ### instances - + ### layout @@ -145,7 +145,7 @@ python_api_name: qiskit.circuit.library.PiecewiseChebyshev ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.PiecewiseChebyshev.num_input_vars "qiskit.circuit.library.PiecewiseChebyshev.num_input_vars") must be zero. @@ -159,7 +159,7 @@ python_api_name: qiskit.circuit.library.PiecewiseChebyshev ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -167,7 +167,7 @@ python_api_name: qiskit.circuit.library.PiecewiseChebyshev ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.PiecewiseChebyshev.num_captured_vars "qiskit.circuit.library.PiecewiseChebyshev.num_captured_vars") must be zero. @@ -195,7 +195,7 @@ python_api_name: qiskit.circuit.library.PiecewiseChebyshev ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseLinearPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseLinearPauliRotations.mdx index 976d78548d3..242ce4b6c10 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseLinearPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseLinearPauliRotations.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PiecewiseLinearPauliRotations # PiecewiseLinearPauliRotations - + Bases: [`FunctionalPauliRotations`](qiskit.circuit.library.FunctionalPauliRotations "qiskit.circuit.library.arithmetic.functional_pauli_rotations.FunctionalPauliRotations") Piecewise-linearly-controlled Pauli rotations. @@ -99,7 +99,7 @@ $$ ### instances - + ### layout @@ -158,7 +158,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.PiecewiseLinearPauliRotations.num_input_vars "qiskit.circuit.library.PiecewiseLinearPauliRotations.num_input_vars") must be zero. @@ -172,7 +172,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -180,7 +180,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.PiecewiseLinearPauliRotations.num_captured_vars "qiskit.circuit.library.PiecewiseLinearPauliRotations.num_captured_vars") must be zero. @@ -208,7 +208,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -269,7 +269,7 @@ $$ ### evaluate - + Classically evaluate the piecewise linear rotation. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewisePolynomialPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewisePolynomialPauliRotations.mdx index 372228b3e47..6bd19ad15a4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewisePolynomialPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewisePolynomialPauliRotations.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PiecewisePolynomialPauliRotations # PiecewisePolynomialPauliRotations - + Bases: [`FunctionalPauliRotations`](qiskit.circuit.library.FunctionalPauliRotations "qiskit.circuit.library.arithmetic.functional_pauli_rotations.FunctionalPauliRotations") Piecewise-polynomially-controlled Pauli rotations. @@ -157,7 +157,7 @@ $$ ### instances - + ### layout @@ -206,7 +206,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.PiecewisePolynomialPauliRotations.num_input_vars "qiskit.circuit.library.PiecewisePolynomialPauliRotations.num_input_vars") must be zero. @@ -220,7 +220,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -228,7 +228,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.PiecewisePolynomialPauliRotations.num_captured_vars "qiskit.circuit.library.PiecewisePolynomialPauliRotations.num_captured_vars") must be zero. @@ -256,7 +256,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -301,7 +301,7 @@ $$ ### evaluate - + Classically evaluate the piecewise polynomial rotation. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PolynomialPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PolynomialPauliRotations.mdx index 2d15352ad5d..809e5c58631 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PolynomialPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PolynomialPauliRotations.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.PolynomialPauliRotations # PolynomialPauliRotations - + Bases: [`FunctionalPauliRotations`](qiskit.circuit.library.FunctionalPauliRotations "qiskit.circuit.library.arithmetic.functional_pauli_rotations.FunctionalPauliRotations") A circuit implementing polynomial Pauli rotations. @@ -117,7 +117,7 @@ $$ ### instances - + ### layout @@ -156,7 +156,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.PolynomialPauliRotations.num_input_vars "qiskit.circuit.library.PolynomialPauliRotations.num_input_vars") must be zero. @@ -170,7 +170,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -178,7 +178,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.PolynomialPauliRotations.num_captured_vars "qiskit.circuit.library.PolynomialPauliRotations.num_captured_vars") must be zero. @@ -206,7 +206,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.QAOAAnsatz.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.QAOAAnsatz.mdx index 1085f2048b5..22669e3d95e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.QAOAAnsatz.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.QAOAAnsatz.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.QAOAAnsatz # QAOAAnsatz - + Bases: [`EvolvedOperatorAnsatz`](qiskit.circuit.library.EvolvedOperatorAnsatz "qiskit.circuit.library.n_local.evolved_operator_ansatz.EvolvedOperatorAnsatz") A generalized QAOA quantum circuit with a support of custom initial states and mixers. @@ -132,7 +132,7 @@ python_api_name: qiskit.circuit.library.QAOAAnsatz ### instances - + ### layout @@ -175,7 +175,7 @@ python_api_name: qiskit.circuit.library.QAOAAnsatz ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.QAOAAnsatz.num_input_vars "qiskit.circuit.library.QAOAAnsatz.num_input_vars") must be zero. @@ -189,7 +189,7 @@ python_api_name: qiskit.circuit.library.QAOAAnsatz ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -197,7 +197,7 @@ python_api_name: qiskit.circuit.library.QAOAAnsatz ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.QAOAAnsatz.num_captured_vars "qiskit.circuit.library.QAOAAnsatz.num_captured_vars") must be zero. @@ -239,7 +239,7 @@ python_api_name: qiskit.circuit.library.QAOAAnsatz ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.QFT.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.QFT.mdx index d417de7d746..dbb7b4177a5 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.QFT.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.QFT.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.QFT # QFT - + Bases: `BlueprintCircuit` Quantum Fourier Transform Circuit. @@ -110,7 +110,7 @@ $$ ### instances - + ### layout @@ -139,7 +139,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.QFT.num_input_vars "qiskit.circuit.library.QFT.num_input_vars") must be zero. @@ -153,7 +153,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -161,7 +161,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.QFT.num_captured_vars "qiskit.circuit.library.QFT.num_captured_vars") must be zero. @@ -183,7 +183,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -228,7 +228,7 @@ $$ ### inverse - + Invert this circuit. **Parameters** @@ -246,7 +246,7 @@ $$ ### is\_inverse - + Whether the inverse Fourier transform is implemented. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.QuadraticForm.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.QuadraticForm.mdx index f163878476a..7b04c8aaa65 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.QuadraticForm.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.QuadraticForm.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.QuadraticForm # QuadraticForm - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Implements a quadratic form on binary variables encoded in qubit registers. @@ -96,7 +96,7 @@ $$ ### instances - + ### layout @@ -125,7 +125,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.QuadraticForm.num_input_vars "qiskit.circuit.library.QuadraticForm.num_input_vars") must be zero. @@ -139,7 +139,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -147,7 +147,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.QuadraticForm.num_captured_vars "qiskit.circuit.library.QuadraticForm.num_captured_vars") must be zero. @@ -167,7 +167,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -260,7 +260,7 @@ $$ ### required\_result\_qubits - + Get the number of required result qubits. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.QuantumVolume.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.QuantumVolume.mdx index 67dc46cba8d..fe605c3a04c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.QuantumVolume.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.QuantumVolume.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.QuantumVolume # QuantumVolume - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") A quantum volume model circuit. @@ -82,7 +82,7 @@ python_api_name: qiskit.circuit.library.QuantumVolume ### instances - + ### layout @@ -111,7 +111,7 @@ python_api_name: qiskit.circuit.library.QuantumVolume ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.QuantumVolume.num_input_vars "qiskit.circuit.library.QuantumVolume.num_input_vars") must be zero. @@ -125,7 +125,7 @@ python_api_name: qiskit.circuit.library.QuantumVolume ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -133,7 +133,7 @@ python_api_name: qiskit.circuit.library.QuantumVolume ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.QuantumVolume.num_captured_vars "qiskit.circuit.library.QuantumVolume.num_captured_vars") must be zero. @@ -153,7 +153,7 @@ python_api_name: qiskit.circuit.library.QuantumVolume ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RC3XGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RC3XGate.mdx index 87d256a46fa..75c6ce6e2a6 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RC3XGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RC3XGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RC3XGate # RC3XGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") The simplified 3-controlled Toffoli gate. @@ -109,7 +109,7 @@ python_api_name: qiskit.circuit.library.RC3XGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RCCXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RCCXGate.mdx index 3bf04e1a36b..ade6aa0ede7 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RCCXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RCCXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RCCXGate # RCCXGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") The simplified Toffoli gate, also referred to as Margolus gate. @@ -109,7 +109,7 @@ python_api_name: qiskit.circuit.library.RCCXGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RGQFTMultiplier.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RGQFTMultiplier.mdx index 0d52c4eb446..712f31dda49 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RGQFTMultiplier.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RGQFTMultiplier.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RGQFTMultiplier # RGQFTMultiplier - + Bases: `Multiplier` A QFT multiplication circuit to store product of two input registers out-of-place. @@ -84,7 +84,7 @@ python_api_name: qiskit.circuit.library.RGQFTMultiplier ### instances - + ### layout @@ -113,7 +113,7 @@ python_api_name: qiskit.circuit.library.RGQFTMultiplier ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.RGQFTMultiplier.num_input_vars "qiskit.circuit.library.RGQFTMultiplier.num_input_vars") must be zero. @@ -127,7 +127,7 @@ python_api_name: qiskit.circuit.library.RGQFTMultiplier ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -135,7 +135,7 @@ python_api_name: qiskit.circuit.library.RGQFTMultiplier ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.RGQFTMultiplier.num_captured_vars "qiskit.circuit.library.RGQFTMultiplier.num_captured_vars") must be zero. @@ -175,7 +175,7 @@ python_api_name: qiskit.circuit.library.RGQFTMultiplier ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RGate.mdx index 2cc3aaca948..a81a1cf7689 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RGate # RGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Rotation θ around the cos(φ)x + sin(φ)y axis. @@ -125,7 +125,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -138,12 +138,12 @@ $$ ### inverse - + Invert this gate as: $r(θ, φ)^dagger = r(-θ, φ)$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RGate`](#qiskit.circuit.library.RGate "qiskit.circuit.library.RGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RGate`](#qiskit.circuit.library.RGate "qiskit.circuit.library.RGate") with an inverted parameter value. **Returns** @@ -156,7 +156,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RVGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RVGate.mdx index 7536ca02760..386606492e3 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RVGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RVGate.mdx @@ -8,10 +8,10 @@ python_api_name: qiskit.circuit.library.RVGate # RVGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") - Rotation around arbitrary rotation axis $v$ where $|v|$ is angle of rotation in radians. + Rotation around arbitrary rotation axis $\vec{v}$ where $\|\vec{v}\|_2$ is angle of rotation in radians. Can be applied to a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") with the [`rv()`](qiskit.circuit.QuantumCircuit#rv "qiskit.circuit.QuantumCircuit.rv") method. @@ -26,14 +26,17 @@ python_api_name: qiskit.circuit.library.RVGate **Matrix Representation:** $$ -\newcommand{\rotationangle}{|\vec{v}|} -\newcommand{\sinc}{\text{sinc}} -R(\vec{v}) = e^{-i \vec{v}\cdot\vec{\sigma}} = +\newcommand{\rotationangle}{\frac{\|\vec{v}\|_2}{2}} +R(\vec{v}) = e^{-i \vec{v}\cdot\vec{\sigma} / 2} = \begin{pmatrix} -\cos\left(\rotationangle\right) -i v_z \sinc\left(\rotationangle\right) -& -(i v_x + v_y) \sinc\left(\rotationangle\right) \\ --(i v_x - v_y) \sinc\left(\rotationangle\right) -& \cos\left(\rotationangle\right) + i v_z \sinc\left(\rotationangle\right) +\cos\left(\rotationangle\right) +-i \frac{v_z}{\|\vec{v}\|_2} \sin\left(\rotationangle\right) +& -(i \frac{v_x}{\|\vec{v}\|_2} ++ \frac{v_y}{\|\vec{v}\|_2}) \sin\left(\rotationangle\right) \\ +-(i \frac{v_x}{\|\vec{v}\|_2} +- \frac{v_y}{\|\vec{v}\|_2}) \sin\left(\rotationangle\right) +& \cos\left(\rotationangle\right) ++ i \frac{v_z}{\|\vec{v}\|_2} \sin\left(\rotationangle\right) \end{pmatrix} $$ @@ -134,7 +137,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -147,13 +150,13 @@ $$ ### inverse - + Invert this gate. ### to\_matrix - + Return a numpy.array for the R(v) gate. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RXGate.mdx index 32afc229a9d..368c0e9a4f9 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RXGate # RXGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Single-qubit rotation about the X axis. @@ -125,7 +125,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -138,7 +138,7 @@ $$ ### control - + Return a (multi-)controlled-RX gate. **Parameters** @@ -159,14 +159,14 @@ $$ ### inverse - + Return inverted RX gate. $RX(\lambda)^{\dagger} = RX(-\lambda)$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RXGate`](#qiskit.circuit.library.RXGate "qiskit.circuit.library.RXGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RXGate`](#qiskit.circuit.library.RXGate "qiskit.circuit.library.RXGate") with an inverted parameter value. **Returns** @@ -179,7 +179,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RXXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RXXGate.mdx index 71917d281f6..87ba8fbcc21 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RXXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RXXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RXXGate # RXXGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") A parametric 2-qubit $X \otimes X$ interaction (rotation about XX). @@ -151,7 +151,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -164,12 +164,12 @@ $$ ### inverse - + Return inverse RXX gate (i.e. with the negative rotation angle). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RXXGate`](#qiskit.circuit.library.RXXGate "qiskit.circuit.library.RXXGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RXXGate`](#qiskit.circuit.library.RXXGate "qiskit.circuit.library.RXXGate") with an inverted parameter value. **Returns** @@ -182,7 +182,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RYGate.mdx index a79a632b16c..5b920848f2f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RYGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RYGate # RYGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Single-qubit rotation about the Y axis. @@ -125,7 +125,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -138,7 +138,7 @@ $$ ### control - + Return a (multi-)controlled-RY gate. **Parameters** @@ -159,14 +159,14 @@ $$ ### inverse - + Return inverse RY gate. $RY(\lambda)^{\dagger} = RY(-\lambda)$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RYGate`](#qiskit.circuit.library.RYGate "qiskit.circuit.library.RYGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RYGate`](#qiskit.circuit.library.RYGate "qiskit.circuit.library.RYGate") with an inverted parameter value. **Returns** @@ -179,7 +179,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RYYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RYYGate.mdx index da4af69ed2e..a39f4ac1e67 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RYYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RYYGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RYYGate # RYYGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") A parametric 2-qubit $Y \otimes Y$ interaction (rotation about YY). @@ -151,7 +151,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -164,12 +164,12 @@ $$ ### inverse - + Return inverse RYY gate (i.e. with the negative rotation angle). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RYYGate`](#qiskit.circuit.library.RYYGate "qiskit.circuit.library.RYYGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RYYGate`](#qiskit.circuit.library.RYYGate "qiskit.circuit.library.RYYGate") with an inverted parameter value. **Returns** @@ -182,7 +182,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RZGate.mdx index a1a42470903..0c4c2d95c24 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RZGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RZGate # RZGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Single-qubit rotation about the Z axis. @@ -135,7 +135,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -148,7 +148,7 @@ $$ ### control - + Return a (multi-)controlled-RZ gate. **Parameters** @@ -169,14 +169,14 @@ $$ ### inverse - + Return inverted RZ gate $RZ(\lambda)^{\dagger} = RZ(-\lambda)$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RZGate`](#qiskit.circuit.library.RZGate "qiskit.circuit.library.RZGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RZGate`](#qiskit.circuit.library.RZGate "qiskit.circuit.library.RZGate") with an inverted parameter value. **Returns** @@ -189,7 +189,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RZXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RZXGate.mdx index 9da32e42177..4bca636d90c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RZXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RZXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RZXGate # RZXGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") A parametric 2-qubit $Z \otimes X$ interaction (rotation about ZX). @@ -191,7 +191,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -204,7 +204,7 @@ $$ ### inverse - + Return inverse RZX gate (i.e. with the negative rotation angle). **Parameters** @@ -213,7 +213,7 @@ $$ **when set to `True`, this is typically used to return an** - `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RZXGate`](#qiskit.circuit.library.RZXGate "qiskit.circuit.library.RZXGate") with an inverted parameter value. + [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RZXGate`](#qiskit.circuit.library.RZXGate "qiskit.circuit.library.RZXGate") with an inverted parameter value. **Returns:** @@ -222,7 +222,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RZZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RZZGate.mdx index 3dd8f36798b..df7ca97a7a8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RZZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RZZGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RZZGate # RZZGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") A parametric 2-qubit $Z \otimes Z$ interaction (rotation about ZZ). @@ -163,7 +163,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -176,12 +176,12 @@ $$ ### inverse - + Return inverse RZZ gate (i.e. with the negative rotation angle). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RZZGate`](#qiskit.circuit.library.RZZGate "qiskit.circuit.library.RZZGate") with an inverted parameter value. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`RZZGate`](#qiskit.circuit.library.RZZGate "qiskit.circuit.library.RZZGate") with an inverted parameter value. **Returns** @@ -194,7 +194,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RealAmplitudes.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RealAmplitudes.mdx index c2553050cdc..9906aba0bb9 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RealAmplitudes.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RealAmplitudes.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.RealAmplitudes # RealAmplitudes - + Bases: [`TwoLocal`](qiskit.circuit.library.TwoLocal "qiskit.circuit.library.n_local.two_local.TwoLocal") The real-amplitudes 2-local circuit. @@ -192,7 +192,7 @@ python_api_name: qiskit.circuit.library.RealAmplitudes ### instances - + ### layout @@ -221,7 +221,7 @@ python_api_name: qiskit.circuit.library.RealAmplitudes ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.RealAmplitudes.num_input_vars "qiskit.circuit.library.RealAmplitudes.num_input_vars") must be zero. @@ -235,7 +235,7 @@ python_api_name: qiskit.circuit.library.RealAmplitudes ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -243,7 +243,7 @@ python_api_name: qiskit.circuit.library.RealAmplitudes ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.RealAmplitudes.num_captured_vars "qiskit.circuit.library.RealAmplitudes.num_captured_vars") must be zero. @@ -291,7 +291,7 @@ python_api_name: qiskit.circuit.library.RealAmplitudes ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Reset.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Reset.mdx deleted file mode 100644 index 1716978ed34..00000000000 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Reset.mdx +++ /dev/null @@ -1,278 +0,0 @@ ---- -title: Reset -description: API reference for qiskit.circuit.library.Reset -in_page_toc_min_heading_level: 1 -python_api_type: class -python_api_name: qiskit.circuit.library.Reset ---- - -# Reset - - - Bases: [`SingletonInstruction`](circuit_singleton#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") - - Qubit reset. - - Create new reset instruction. - - ## Attributes - - ### base\_class - - - Get the base class of this instruction. This is guaranteed to be in the inheritance tree of `self`. - - The “base class” of an instruction is the lowest class in its inheritance tree that the object should be considered entirely compatible with for \_all\_ circuit applications. This typically means that the subclass is defined purely to offer some sort of programmer convenience over the base class, and the base class is the “true” class for a behavioural perspective. In particular, you should *not* override [`base_class`](#qiskit.circuit.library.Reset.base_class "qiskit.circuit.library.Reset.base_class") if you are defining a custom version of an instruction that will be implemented differently by hardware, such as an alternative measurement strategy, or a version of a parametrised gate with a particular set of parameters for the purposes of distinguishing it in a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") from the full parametrised gate. - - This is often exactly equivalent to `type(obj)`, except in the case of singleton instances of standard-library instructions. These singleton instances are special subclasses of their base class, and this property will return that base. For example: - - ```python - >>> isinstance(XGate(), XGate) - True - >>> type(XGate()) is XGate - False - >>> XGate().base_class is XGate - True - ``` - - In general, you should not rely on the precise class of an instruction; within a given circuit, it is expected that `Instruction.name` should be a more suitable discriminator in most situations. - - - ### condition - - - The classical condition on the instruction. - - - ### condition\_bits - - - Get Clbits in condition. - - - ### decompositions - - - Get the decompositions of the instruction from the SessionEquivalenceLibrary. - - - ### definition - - - Return definition in terms of other basic gates. - - - ### duration - - - Get the duration. - - - ### label - - - Return instruction label - - - ### mutable - - - Is this instance is a mutable unique instance or not. - - If this attribute is `False` the gate instance is a shared singleton and is not mutable. - - - ### name - - - Return the name. - - - ### num\_clbits - - - Return the number of clbits. - - - ### num\_qubits - - - Return the number of qubits. - - - ### params - - - return instruction params. - - - ### unit - - - Get the time unit of duration. - - - ## Methods - - ### add\_decomposition - - - Add a decomposition of the instruction to the SessionEquivalenceLibrary. - - - ### assemble - - - Assemble a QasmQobjInstruction - - - ### broadcast\_arguments - - - Validation of the arguments. - - **Parameters** - - * **qargs** (*List*) – List of quantum bit arguments. - * **cargs** (*List*) – List of classical bit arguments. - - **Yields** - - *Tuple(List, List)* – A tuple with single arguments. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If the input is not valid. For example, the number of arguments does not match the gate expectation. - - - ### c\_if - - - Set a classical equality condition on this instruction between the register or cbit `classical` and value `val`. - - - This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. - - - - ### copy - - - Copy of the instruction. - - **Parameters** - - **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – name to be given to the copied circuit, if `None` then the name stays the same. - - **Returns** - - a copy of the current instruction, with the name updated if it was provided - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### inverse - - - Invert this instruction. - - If annotated is False, the inverse instruction is implemented as a fresh instruction with the recursively inverted definition. - - If annotated is True, the inverse instruction is implemented as `AnnotatedOperation`, and corresponds to the given instruction annotated with the “inverse modifier”. - - Special instructions inheriting from Instruction can implement their own inverse (e.g. T and Tdg, Barrier, etc.) In particular, they can choose how to handle the argument `annotated` which may include ignoring it and always returning a concrete gate class if the inverse is defined as a standard gate. - - **Parameters** - - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – if set to True the output inverse gate will be returned as `AnnotatedOperation`. - - **Returns** - - The inverse operation. - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if the instruction is not composite and an inverse has not been implemented for it. - - - ### is\_parameterized - - - Return True .IFF. instruction is parameterized else False - - - ### repeat - - - Creates an instruction with gate repeated n amount of times. - - **Parameters** - - **n** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – Number of times to repeat the instruction - - **Returns** - - Containing the definition. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - **Raises** - - [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – If n \< 1. - - - ### reverse\_ops - - - For a composite instruction, reverse the order of sub-instructions. - - This is done by recursively reversing all sub-instructions. It does not invert any gate. - - **Returns** - - **a new instruction with** - - sub-instructions reversed. - - **Return type** - - [qiskit.circuit.Instruction](qiskit.circuit.Instruction "qiskit.circuit.Instruction") - - - ### soft\_compare - - - Soft comparison between gates. Their names, number of qubits, and classical bit numbers must match. The number of parameters must match. Each parameter is compared. If one is a ParameterExpression then it is not taken into account. - - **Parameters** - - **other** (*instruction*) – other instruction. - - **Returns** - - are self and other equal up to parameter expressions. - - **Return type** - - [bool](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)") - - - ### to\_mutable - - - Return a mutable copy of this gate. - - This method will return a new mutable copy of this gate instance. If a singleton instance is being used this will be a new unique instance that can be mutated. If the instance is already mutable it will be a deepcopy of that instance. - - - ### validate\_parameter - - - Instruction parameters has no validation or normalization. - - - diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SGate.mdx index 1e95b3b8545..da99b4d0a53 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.SGate # SGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") Single qubit S gate (Z\*\*0.5). @@ -128,7 +128,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -141,12 +141,12 @@ $$ ### inverse - + Return inverse of S (SdgGate). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`SdgGate`](qiskit.circuit.library.SdgGate "qiskit.circuit.library.SdgGate"). + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`SdgGate`](qiskit.circuit.library.SdgGate "qiskit.circuit.library.SdgGate"). **Returns** @@ -159,7 +159,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SXGate.mdx index b54575b5525..e617fe0af17 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.SXGate # SXGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") The single-qubit Sqrt(X) gate ($\sqrt{X}$). @@ -134,7 +134,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -147,7 +147,7 @@ $$ ### control - + Return a (multi-)controlled-SX gate. One control returns a CSX gate. @@ -170,12 +170,12 @@ $$ ### inverse - + Return inverse SX gate (i.e. SXdg). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`SXdgGate`](qiskit.circuit.library.SXdgGate "qiskit.circuit.library.SXdgGate"). + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`SXdgGate`](qiskit.circuit.library.SXdgGate "qiskit.circuit.library.SXdgGate"). **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SXdgGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SXdgGate.mdx index bbc283f2123..866fc57b5f8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SXdgGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SXdgGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.SXdgGate # SXdgGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") The inverse single-qubit Sqrt(X) gate. @@ -124,7 +124,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -137,12 +137,12 @@ $$ ### inverse - + Return inverse SXdg gate (i.e. SX). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`SXGate`](qiskit.circuit.library.SXGate "qiskit.circuit.library.SXGate"). + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`SXGate`](qiskit.circuit.library.SXGate "qiskit.circuit.library.SXGate"). **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SdgGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SdgGate.mdx index 9cbc91f6e6a..b77425d270f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SdgGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SdgGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.SdgGate # SdgGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") Single qubit S-adjoint gate (\~Z\*\*0.5). @@ -128,7 +128,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -141,12 +141,12 @@ $$ ### inverse - + Return inverse of Sdg (SGate). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`SGate`](qiskit.circuit.library.SGate "qiskit.circuit.library.SGate"). + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`SGate`](qiskit.circuit.library.SGate "qiskit.circuit.library.SGate"). **Returns** @@ -159,7 +159,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.StatePreparation.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.StatePreparation.mdx index b86bbf5cb78..4031f17dcfc 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.StatePreparation.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.StatePreparation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.StatePreparation # StatePreparation - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Complex amplitude state preparation. @@ -128,7 +128,7 @@ python_api_name: qiskit.circuit.library.StatePreparation ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -141,7 +141,7 @@ python_api_name: qiskit.circuit.library.StatePreparation ### broadcast\_arguments - + Validation and handling of the arguments and its relationship. For example, `cx([q[0],q[1]], q[2])` means `cx(q[0], q[2]); cx(q[1], q[2])`. This method yields the arguments in the right grouping. In the given example: @@ -190,13 +190,13 @@ python_api_name: qiskit.circuit.library.StatePreparation ### inverse - + Return inverted StatePreparation ### validate\_parameter - + StatePreparation instruction parameter can be str, int, float, and complex. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SwapGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SwapGate.mdx index 398ed4f3c63..1364c1e3274 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SwapGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SwapGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.SwapGate # SwapGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") The SWAP gate. @@ -133,7 +133,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -146,7 +146,7 @@ $$ ### control - + Return a (multi-)controlled-SWAP gate. One control returns a CSWAP (Fredkin) gate. @@ -169,12 +169,12 @@ $$ ### inverse - + Return inverse Swap gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.TGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.TGate.mdx index a1ebe0fd9f7..8943e259fbb 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.TGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.TGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.TGate # TGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") Single qubit T gate (Z\*\*0.25). @@ -128,7 +128,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -141,12 +141,12 @@ $$ ### inverse - + Return inverse T gate (i.e. Tdg). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`TdgGate`](qiskit.circuit.library.TdgGate "qiskit.circuit.library.TdgGate"). + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`TdgGate`](qiskit.circuit.library.TdgGate "qiskit.circuit.library.TdgGate"). **Returns** @@ -159,7 +159,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.TdgGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.TdgGate.mdx index 9c12fcd2466..30af013b636 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.TdgGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.TdgGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.TdgGate # TdgGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") Single qubit T-adjoint gate (\~Z\*\*0.25). @@ -128,7 +128,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -141,12 +141,12 @@ $$ ### inverse - + Return inverse Tdg gate (i.e. T). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`TGate`](qiskit.circuit.library.TGate "qiskit.circuit.library.TGate"). + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`TGate`](qiskit.circuit.library.TGate "qiskit.circuit.library.TGate"). **Returns** @@ -159,7 +159,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.TwoLocal.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.TwoLocal.mdx index 56089531766..d2d06a25ae0 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.TwoLocal.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.TwoLocal.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.TwoLocal # TwoLocal - + Bases: [`NLocal`](qiskit.circuit.library.NLocal "qiskit.circuit.library.n_local.n_local.NLocal") The two-local circuit. @@ -204,7 +204,7 @@ python_api_name: qiskit.circuit.library.TwoLocal ### instances - + ### layout @@ -233,7 +233,7 @@ python_api_name: qiskit.circuit.library.TwoLocal ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.TwoLocal.num_input_vars "qiskit.circuit.library.TwoLocal.num_input_vars") must be zero. @@ -247,7 +247,7 @@ python_api_name: qiskit.circuit.library.TwoLocal ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -255,7 +255,7 @@ python_api_name: qiskit.circuit.library.TwoLocal ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.TwoLocal.num_captured_vars "qiskit.circuit.library.TwoLocal.num_captured_vars") must be zero. @@ -303,7 +303,7 @@ python_api_name: qiskit.circuit.library.TwoLocal ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -414,7 +414,7 @@ python_api_name: qiskit.circuit.library.TwoLocal ### get\_entangler\_map - + Overloading to handle the special case of 1 qubit where the entanglement are ignored. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.U1Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.U1Gate.mdx index ba1656fe743..0dde5118c8e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.U1Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.U1Gate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.U1Gate # U1Gate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Single-qubit rotation about the Z axis. @@ -162,7 +162,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -175,7 +175,7 @@ $$ ### control - + Return a (multi-)controlled-U1 gate. **Parameters** @@ -196,12 +196,12 @@ $$ ### inverse - + Return inverted U1 gate ($U1(\lambda)^{\dagger} = U1(-\lambda))$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`U1Gate`](#qiskit.circuit.library.U1Gate "qiskit.circuit.library.U1Gate") with inverse parameter values. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`U1Gate`](#qiskit.circuit.library.U1Gate "qiskit.circuit.library.U1Gate") with inverse parameter values. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.U2Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.U2Gate.mdx index 267509aae43..50f999a98ae 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.U2Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.U2Gate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.U2Gate # U2Gate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Single-qubit rotation about the X+Z axis. @@ -161,7 +161,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -174,14 +174,14 @@ $$ ### inverse - + Return inverted U2 gate. $U2(\phi, \lambda)^{\dagger} =U2(-\lambda-\pi, -\phi+\pi))$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`U2Gate`](#qiskit.circuit.library.U2Gate "qiskit.circuit.library.U2Gate") with inverse parameter values. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`U2Gate`](#qiskit.circuit.library.U2Gate "qiskit.circuit.library.U2Gate") with inverse parameter values. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.U3Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.U3Gate.mdx index 38cdf824c43..10b07b3d5ad 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.U3Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.U3Gate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.U3Gate # U3Gate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Generic single-qubit rotation gate with 3 Euler angles. @@ -156,7 +156,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -169,7 +169,7 @@ $$ ### control - + Return a (multi-)controlled-U3 gate. **Parameters** @@ -190,14 +190,14 @@ $$ ### inverse - + Return inverted U3 gate. $U3(\theta,\phi,\lambda)^{\dagger} =U3(-\theta,-\lambda,-\phi))$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`U3Gate`](#qiskit.circuit.library.U3Gate "qiskit.circuit.library.U3Gate") with inverse parameter values. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`U3Gate`](#qiskit.circuit.library.U3Gate "qiskit.circuit.library.U3Gate") with inverse parameter values. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCGate.mdx index e3f1cde0aec..087963bcc50 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.UCGate # UCGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Uniformly controlled gate (also called multiplexed gate). @@ -131,7 +131,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -144,7 +144,7 @@ $$ ### inverse - + Return the inverse. This does not re-compute the decomposition for the multiplexer with the inverse of the gates but simply inverts the existing decomposition. @@ -156,7 +156,7 @@ $$ ### validate\_parameter - + Uniformly controlled gate parameter has to be an ndarray. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCPauliRotGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCPauliRotGate.mdx index 3439a084661..c80c3857776 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCPauliRotGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCPauliRotGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.UCPauliRotGate # UCPauliRotGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Uniformly controlled Pauli rotations. @@ -108,7 +108,7 @@ python_api_name: qiskit.circuit.library.UCPauliRotGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCRXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCRXGate.mdx index 11c340c785d..66bfa83f7ad 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCRXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCRXGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.UCRXGate # UCRXGate - + Bases: [`UCPauliRotGate`](qiskit.circuit.library.UCPauliRotGate "qiskit.circuit.library.generalized_gates.uc_pauli_rot.UCPauliRotGate") Uniformly controlled Pauli-X rotations. @@ -107,7 +107,7 @@ python_api_name: qiskit.circuit.library.UCRXGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCRYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCRYGate.mdx index 3e0a7363df8..39fa553da93 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCRYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCRYGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.UCRYGate # UCRYGate - + Bases: [`UCPauliRotGate`](qiskit.circuit.library.UCPauliRotGate "qiskit.circuit.library.generalized_gates.uc_pauli_rot.UCPauliRotGate") Uniformly controlled Pauli-Y rotations. @@ -107,7 +107,7 @@ python_api_name: qiskit.circuit.library.UCRYGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCRZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCRZGate.mdx index 6136d8c0c4a..e0859032f22 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCRZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCRZGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.UCRZGate # UCRZGate - + Bases: [`UCPauliRotGate`](qiskit.circuit.library.UCPauliRotGate "qiskit.circuit.library.generalized_gates.uc_pauli_rot.UCPauliRotGate") Uniformly controlled Pauli-Z rotations. @@ -107,7 +107,7 @@ python_api_name: qiskit.circuit.library.UCRZGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UGate.mdx index 5d6656862f4..ebd0b5c1541 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.UGate # UGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Generic single-qubit rotation gate with 3 Euler angles. @@ -139,7 +139,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -152,7 +152,7 @@ $$ ### control - + Return a (multi-)controlled-U gate. **Parameters** @@ -173,14 +173,14 @@ $$ ### inverse - + Return inverted U gate. $U(\theta,\phi,\lambda)^{\dagger} =U(-\theta,-\lambda,-\phi))$ **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`UGate`](#qiskit.circuit.library.UGate "qiskit.circuit.library.UGate") with inverse parameter values. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`UGate`](#qiskit.circuit.library.UGate "qiskit.circuit.library.UGate") with inverse parameter values. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryGate.mdx index bad38cd9786..5d5f9a435eb 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.UnitaryGate # UnitaryGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") Class quantum gates specified by a unitary matrix. @@ -131,7 +131,7 @@ python_api_name: qiskit.circuit.library.UnitaryGate ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -144,19 +144,19 @@ python_api_name: qiskit.circuit.library.UnitaryGate ### adjoint - + Return the adjoint of the unitary. ### conjugate - + Return the conjugate of the unitary. ### control - + Return controlled version of gate. **Parameters** @@ -172,24 +172,24 @@ python_api_name: qiskit.circuit.library.UnitaryGate **Return type** - [ControlledGate](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") | AnnotatedOperation + [ControlledGate](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") | [AnnotatedOperation](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") ### inverse - + Return the adjoint of the unitary. ### transpose - + Return the transpose of the unitary. ### validate\_parameter - + Unitary gate parameter has to be an ndarray. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryOverlap.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryOverlap.mdx index d2da0a8e543..485f565c2ad 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryOverlap.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryOverlap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.UnitaryOverlap # UnitaryOverlap - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") Circuit that returns the overlap between two unitaries $U_2^{\dag} U_1$. @@ -133,7 +133,7 @@ python_api_name: qiskit.circuit.library.UnitaryOverlap ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.UnitaryOverlap.num_input_vars "qiskit.circuit.library.UnitaryOverlap.num_input_vars") must be zero. @@ -147,7 +147,7 @@ python_api_name: qiskit.circuit.library.UnitaryOverlap ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -155,7 +155,7 @@ python_api_name: qiskit.circuit.library.UnitaryOverlap ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.UnitaryOverlap.num_captured_vars "qiskit.circuit.library.UnitaryOverlap.num_captured_vars") must be zero. @@ -175,7 +175,7 @@ python_api_name: qiskit.circuit.library.UnitaryOverlap ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.VBERippleCarryAdder.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.VBERippleCarryAdder.mdx index 69ec2d3184d..261d8f961e8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.VBERippleCarryAdder.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.VBERippleCarryAdder.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.VBERippleCarryAdder # VBERippleCarryAdder - + Bases: `Adder` The VBE ripple carry adder \[1]. @@ -122,7 +122,7 @@ python_api_name: qiskit.circuit.library.VBERippleCarryAdder ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.VBERippleCarryAdder.num_input_vars "qiskit.circuit.library.VBERippleCarryAdder.num_input_vars") must be zero. @@ -136,7 +136,7 @@ python_api_name: qiskit.circuit.library.VBERippleCarryAdder ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -144,7 +144,7 @@ python_api_name: qiskit.circuit.library.VBERippleCarryAdder ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.VBERippleCarryAdder.num_captured_vars "qiskit.circuit.library.VBERippleCarryAdder.num_captured_vars") must be zero. @@ -174,7 +174,7 @@ python_api_name: qiskit.circuit.library.VBERippleCarryAdder ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.WeightedAdder.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.WeightedAdder.mdx index 11f817a09df..71958e6bde4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.WeightedAdder.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.WeightedAdder.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.WeightedAdder # WeightedAdder - + Bases: `BlueprintCircuit` A circuit to compute the weighted sum of qubit registers. @@ -125,7 +125,7 @@ $$ ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.WeightedAdder.num_input_vars "qiskit.circuit.library.WeightedAdder.num_input_vars") must be zero. @@ -163,7 +163,7 @@ $$ ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -171,7 +171,7 @@ $$ ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.WeightedAdder.num_captured_vars "qiskit.circuit.library.WeightedAdder.num_captured_vars") must be zero. @@ -209,7 +209,7 @@ $$ ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.XGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.XGate.mdx index d963897dc20..291dd9cf4cd 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.XGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.XGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.XGate # XGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") The single-qubit Pauli-X gate ($\sigma_x$). @@ -143,7 +143,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -156,7 +156,7 @@ $$ ### control - + Return a (multi-)controlled-X gate. One control returns a CX gate. Two controls returns a CCX gate. @@ -165,7 +165,7 @@ $$ * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – number of control qubits. * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for the gate \[Default: `None`] - * **ctrl\_state** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. + * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. * **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – indicates whether the controlled gate can be implemented as an annotated gate. **Returns** @@ -179,12 +179,12 @@ $$ ### inverse - + Return inverted X gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.XOR.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.XOR.mdx index 68cacd3e1a3..f77af05b4ff 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.XOR.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.XOR.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.XOR # XOR - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") An n\_qubit circuit for bitwise xor-ing the input with some integer `amount`. @@ -106,7 +106,7 @@ python_api_name: qiskit.circuit.library.XOR ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.XOR.num_input_vars "qiskit.circuit.library.XOR.num_input_vars") must be zero. @@ -120,7 +120,7 @@ python_api_name: qiskit.circuit.library.XOR ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -128,7 +128,7 @@ python_api_name: qiskit.circuit.library.XOR ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.XOR.num_captured_vars "qiskit.circuit.library.XOR.num_captured_vars") must be zero. @@ -148,7 +148,7 @@ python_api_name: qiskit.circuit.library.XOR ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.XXMinusYYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.XXMinusYYGate.mdx index 1a37c1897ed..658c947a328 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.XXMinusYYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.XXMinusYYGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.XXMinusYYGate # XXMinusYYGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") XX-YY interaction gate. @@ -161,7 +161,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -174,12 +174,12 @@ $$ ### inverse - + Inverse gate. **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`XXMinusYYGate`](#qiskit.circuit.library.XXMinusYYGate "qiskit.circuit.library.XXMinusYYGate") with inverse parameter values. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`XXMinusYYGate`](#qiskit.circuit.library.XXMinusYYGate "qiskit.circuit.library.XXMinusYYGate") with inverse parameter values. **Returns** @@ -192,7 +192,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.XXPlusYYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.XXPlusYYGate.mdx index 9385f3bf44c..69a6a7df9f6 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.XXPlusYYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.XXPlusYYGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.XXPlusYYGate # XXPlusYYGate - + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") XX+YY interaction gate. @@ -161,7 +161,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -174,12 +174,12 @@ $$ ### inverse - + Return inverse XX+YY gate (i.e. with the negative rotation angle and same phase angle). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`XXPlusYYGate`](#qiskit.circuit.library.XXPlusYYGate "qiskit.circuit.library.XXPlusYYGate") with inverse parameter values. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as the inverse of this gate is always a [`XXPlusYYGate`](#qiskit.circuit.library.XXPlusYYGate "qiskit.circuit.library.XXPlusYYGate") with inverse parameter values. **Returns** @@ -192,7 +192,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.YGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.YGate.mdx index 3324634cc29..edd25c1f58e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.YGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.YGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.YGate # YGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") The single-qubit Pauli-Y gate ($\sigma_y$). @@ -143,7 +143,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -156,7 +156,7 @@ $$ ### control - + Return a (multi-)controlled-Y gate. One control returns a CY gate. @@ -165,7 +165,7 @@ $$ * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – number of control qubits. * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for the gate \[Default: `None`] - * **ctrl\_state** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. + * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. * **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – indicates whether the controlled gate can be implemented as an annotated gate. **Returns** @@ -179,12 +179,12 @@ $$ ### inverse - + Return inverted Y gate ($Y^{\dagger} = Y$) **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ZFeatureMap.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ZFeatureMap.mdx index be502036c67..4a1e7471311 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ZFeatureMap.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ZFeatureMap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.ZFeatureMap # ZFeatureMap - + Bases: [`PauliFeatureMap`](qiskit.circuit.library.PauliFeatureMap "qiskit.circuit.library.data_preparation.pauli_feature_map.PauliFeatureMap") The first order Pauli Z-evolution circuit. @@ -199,7 +199,7 @@ python_api_name: qiskit.circuit.library.ZFeatureMap ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.ZFeatureMap.num_input_vars "qiskit.circuit.library.ZFeatureMap.num_input_vars") must be zero. @@ -213,7 +213,7 @@ python_api_name: qiskit.circuit.library.ZFeatureMap ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -221,7 +221,7 @@ python_api_name: qiskit.circuit.library.ZFeatureMap ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.ZFeatureMap.num_captured_vars "qiskit.circuit.library.ZFeatureMap.num_captured_vars") must be zero. @@ -259,7 +259,7 @@ python_api_name: qiskit.circuit.library.ZFeatureMap ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ZGate.mdx index 1584bceb58c..d12c31bb94c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ZGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.ZGate # ZGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") The single-qubit Pauli-Z gate ($\sigma_z$). @@ -143,7 +143,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -156,7 +156,7 @@ $$ ### control - + Return a (multi-)controlled-Z gate. One control returns a CZ gate. @@ -165,7 +165,7 @@ $$ * **num\_ctrl\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – number of control qubits. * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – An optional label for the gate \[Default: `None`] - * **ctrl\_state** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *|*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. + * **ctrl\_state** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – control state expressed as integer, string (e.g.\`\`’110’`), or ``None`. If `None`, use all 1s. * **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – indicates whether the controlled gate can be implemented as an annotated gate. **Returns** @@ -179,12 +179,12 @@ $$ ### inverse - + Return inverted Z gate (itself). **Parameters** - **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an `AnnotatedOperation` with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – when set to `True`, this is typically used to return an [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") with an inverse modifier set instead of a concrete [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"). However, for this class this argument is ignored as this gate is self-inverse. **Returns** @@ -197,7 +197,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ZZFeatureMap.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ZZFeatureMap.mdx index c63b169e5eb..da4c0e8101b 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ZZFeatureMap.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ZZFeatureMap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.ZZFeatureMap # ZZFeatureMap - + Bases: [`PauliFeatureMap`](qiskit.circuit.library.PauliFeatureMap "qiskit.circuit.library.data_preparation.pauli_feature_map.PauliFeatureMap") Second-order Pauli-Z evolution circuit. @@ -204,7 +204,7 @@ python_api_name: qiskit.circuit.library.ZZFeatureMap ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.circuit.library.ZZFeatureMap.num_input_vars "qiskit.circuit.library.ZZFeatureMap.num_input_vars") must be zero. @@ -218,7 +218,7 @@ python_api_name: qiskit.circuit.library.ZZFeatureMap ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -226,7 +226,7 @@ python_api_name: qiskit.circuit.library.ZZFeatureMap ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.circuit.library.ZZFeatureMap.num_captured_vars "qiskit.circuit.library.ZZFeatureMap.num_captured_vars") must be zero. @@ -264,7 +264,7 @@ python_api_name: qiskit.circuit.library.ZZFeatureMap ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.iSwapGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.iSwapGate.mdx index 2660beeaa45..29a781ba7a2 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.iSwapGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.iSwapGate.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.circuit.library.iSwapGate # iSwapGate - + Bases: [`SingletonGate`](circuit_singleton#qiskit.circuit.singleton.SingletonGate "qiskit.circuit.singleton.SingletonGate") iSWAP gate. @@ -156,7 +156,7 @@ $$ ### params - return instruction params. + The parameters of this `Instruction`. Ideally these will be gate angles. ### unit @@ -169,7 +169,7 @@ $$ ### power - + Raise gate to a power. diff --git a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGCircuit.mdx b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGCircuit.mdx index 48344a1c74e..1bcabb39424 100644 --- a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGCircuit.mdx +++ b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGCircuit.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit # DAGCircuit - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Quantum circuit as a directed acyclic graph. @@ -51,7 +51,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### add\_calibration - + Register a low-level, custom pulse definition for the given gate. **Parameters** @@ -68,45 +68,45 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### add\_clbits - + Add individual clbit wires. ### add\_creg - + Add all wires in a classical register. ### add\_qreg - + Add all wires in a quantum register. ### add\_qubits - + Add individual qubit wires. ### ancestors - + Returns set of the ancestors of a node as DAGOpNodes and DAGInNodes. ### apply\_operation\_back - + Apply an operation to the output of the circuit. **Parameters** * **op** ([*qiskit.circuit.Operation*](qiskit.circuit.Operation "qiskit.circuit.Operation")) – the operation associated with the DAG node - * **qargs** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – qubits that op will be applied to - * **cargs** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – cbits that op will be applied to - * **check** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If `True` (default), this function will enforce that the [`DAGCircuit`](#qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") data-structure invariants are maintained (all `qargs` are [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit")s, all are in the DAG, etc). If `False`, the caller *must* uphold these invariants itself, but the cost of several checks will be skipped. This is most useful when building a new DAG from a source of known-good nodes. + * **qargs** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – qubits that op will be applied to + * **cargs** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – cbits that op will be applied to + * **check** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If `True` (default), this function will enforce that the [`DAGCircuit`](#qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") data-structure invariants are maintained (all `qargs` are [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")s, all are in the DAG, etc). If `False`, the caller *must* uphold these invariants itself, but the cost of several checks will be skipped. This is most useful when building a new DAG from a source of known-good nodes. **Returns** @@ -123,15 +123,15 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### apply\_operation\_front - + Apply an operation to the input of the circuit. **Parameters** * **op** ([*qiskit.circuit.Operation*](qiskit.circuit.Operation "qiskit.circuit.Operation")) – the operation associated with the DAG node - * **qargs** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – qubits that op will be applied to - * **cargs** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – cbits that op will be applied to - * **check** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If `True` (default), this function will enforce that the [`DAGCircuit`](#qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") data-structure invariants are maintained (all `qargs` are [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit")s, all are in the DAG, etc). If `False`, the caller *must* uphold these invariants itself, but the cost of several checks will be skipped. This is most useful when building a new DAG from a source of known-good nodes. + * **qargs** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – qubits that op will be applied to + * **cargs** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – cbits that op will be applied to + * **check** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If `True` (default), this function will enforce that the [`DAGCircuit`](#qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") data-structure invariants are maintained (all `qargs` are [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")s, all are in the DAG, etc). If `False`, the caller *must* uphold these invariants itself, but the cost of several checks will be skipped. This is most useful when building a new DAG from a source of known-good nodes. **Returns** @@ -148,37 +148,41 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### bfs\_successors - + Returns an iterator of tuples of (DAGNode, \[DAGNodes]) where the DAGNode is the current node and \[DAGNode] is its successors in BFS order. ### classical\_predecessors - + Returns iterator of the predecessors of a node that are connected by a classical edge as DAGOpNodes and DAGInNodes. ### classical\_successors - + Returns iterator of the successors of a node that are connected by a classical edge as DAGOpNodes and DAGInNodes. ### collect\_1q\_runs - + Return a set of non-conditional runs of 1q “op” nodes. + + **Return type** + + [list](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")\[[list](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")\[[qiskit.dagcircuit.dagnode.DAGOpNode](qiskit.dagcircuit.DAGOpNode "qiskit.dagcircuit.dagnode.DAGOpNode")]] ### collect\_2q\_runs - + Return a set of non-conditional runs of 2q “op” nodes. ### collect\_runs - + Return a set of non-conditional runs of “op” nodes with the given names. For example, “… h q\[0]; cx q\[0],q\[1]; cx q\[0],q\[1]; h q\[1]; ..” would produce the tuple of cx nodes as an element of the set returned from a call to collect\_runs(\[“cx”]). If instead the cx nodes were “cx q\[0],q\[1]; cx q\[1],q\[0];”, the method would still return the pair in a tuple. The namelist can contain names that are not in the circuit’s basis. @@ -188,7 +192,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### compose - + Compose the `other` circuit onto the output of this circuit. A subset of input wires of `other` are mapped to a subset of output wires of this circuit. @@ -198,8 +202,8 @@ python_api_name: qiskit.dagcircuit.DAGCircuit **Parameters** * **other** ([*DAGCircuit*](#qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit")) – circuit to compose with self - * **qubits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – qubits of self to compose onto. - * **clbits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – clbits of self to compose onto. + * **qubits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – qubits of self to compose onto. + * **clbits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*|*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – clbits of self to compose onto. * **front** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If True, front composition will be performed (not implemented yet) * **inplace** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If True, modify the object. Otherwise return composed circuit. @@ -218,7 +222,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### copy\_empty\_like - + Return a copy of self with the same structure but empty. **That structure includes:** @@ -239,7 +243,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### count\_ops - + Count the occurrences of operation names. **Parameters** @@ -257,7 +261,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### count\_ops\_longest\_path - + Count the occurrences of operation names on the longest path. Returns a dictionary of counts keyed on the operation name. @@ -265,7 +269,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### depth - + Return the circuit depth. If there is control flow present, this count may only be an estimate, as the complete control-flow path cannot be statically known. **Parameters** @@ -288,13 +292,13 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### descendants - + Returns set of the descendants of a node as DAGOpNodes and DAGOutNodes. ### draw - + Draws the dag circuit. This function needs [Graphviz](https://www.graphviz.org/) to be installed. Graphviz is not a python package and can’t be pip installed (the `graphviz` package on PyPI is a Python interface library for Graphviz and does not actually install Graphviz). You can refer to [the Graphviz documentation](https://www.graphviz.org/download/) on how to install it. @@ -316,7 +320,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### edges - + Iterator for edge values and source and dest node This works by returning the output edges from the specified nodes. If no nodes are specified all edges from the graph are returned. @@ -336,12 +340,12 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### find\_bit - + Finds locations in the circuit, by mapping the Qubit and Clbit to positional index BitLocations is defined as: BitLocations = namedtuple(“BitLocations”, (“index”, “registers”)) **Parameters** - **bit** ([*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")) – The bit to locate. + **bit** ([*Bit*](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit")) – The bit to locate. **Returns** @@ -360,13 +364,13 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### front\_layer - + Return a list of op nodes in the first layer of this dag. ### gate\_nodes - + Get the list of gate nodes in the dag. **Returns** @@ -380,13 +384,13 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### has\_calibration\_for - + Return True if the dag has a calibration defined for the node operation. In this case, the operation does not need to be translated to the device basis. ### idle\_wires - + Return idle wires. **Parameters** @@ -404,19 +408,19 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### is\_predecessor - + Checks if a second node is in the predecessors of node. ### is\_successor - + Checks if a second node is in the successors of node. ### layers - + Yield a shallow view on a layer of this DAGCircuit for all d layers of this circuit. A layer is a circuit whose gates act on disjoint qubits, i.e., a layer has depth 1. The total number of layers equals the circuit depth d. The layers are indexed from 0 to d-1 with the earliest layer at index 0. The layers are constructed using a greedy algorithm. Each returned layer is a dict containing \{“graph”: circuit graph, “partition”: list of qubit lists}. @@ -428,31 +432,31 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### longest\_path - + Returns the longest path in the dag as a list of DAGOpNodes, DAGInNodes, and DAGOutNodes. ### multi\_qubit\_ops - + Get list of 3+ qubit operations. Ignore directives like snapshot and barrier. ### multigraph\_layers - + Yield layers of the multigraph. ### named\_nodes - + Get the set of “op” nodes with the given name. ### node - + Get the node in the dag. **Parameters** @@ -470,7 +474,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### nodes - + Iterator for node values. **Yields** @@ -480,12 +484,12 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### nodes\_on\_wire - + Iterator for nodes that affect a given wire. **Parameters** - * **wire** ([*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")) – the wire to be looked at. + * **wire** ([*Bit*](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit")) – the wire to be looked at. * **only\_ops** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – True if only the ops nodes are wanted; otherwise, all nodes are returned. **Yields** @@ -499,25 +503,25 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### num\_clbits - + Return the total number of classical bits used by the circuit. ### num\_qubits - + Return the total number of qubits used by the circuit. num\_qubits() replaces former use of width(). DAGCircuit.width() now returns qubits + clbits for consistency with Circuit.width() \[qiskit-terra #2564]. ### num\_tensor\_factors - + Compute how many components the circuit can decompose into. ### op\_nodes - + Get the list of “op” nodes in the dag. **Parameters** @@ -536,19 +540,19 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### predecessors - + Returns iterator of the predecessors of a node as DAGOpNodes and DAGInNodes. ### properties - + Return a dictionary of circuit properties. ### quantum\_causal\_cone - + Returns causal cone of a qubit. A qubit’s causal cone is the set of qubits that can influence the output of that qubit through interactions, whether through multi-qubit gates or operations. Knowing the causal cone of a qubit can be useful when debugging faulty circuits, as it can help identify which wire(s) may be causing the problem. @@ -557,7 +561,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit **Parameters** - **qubit** ([*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – The output qubit for which we want to find the causal cone. + **qubit** ([*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – The output qubit for which we want to find the causal cone. **Returns** @@ -565,50 +569,50 @@ python_api_name: qiskit.dagcircuit.DAGCircuit **Return type** - Set\[[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")] + Set\[[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")] ### quantum\_predecessors - + Returns iterator of the predecessors of a node that are connected by a quantum edge as DAGOpNodes and DAGInNodes. ### quantum\_successors - + Returns iterator of the successors of a node that are connected by a quantum edge as Opnodes and DAGOutNodes. ### remove\_all\_ops\_named - + Remove all operation nodes with the given name. ### remove\_ancestors\_of - + Remove all of the ancestor operation nodes of node. ### remove\_clbits - + Remove classical bits from the circuit. All bits MUST be idle. Any registers with references to at least one of the specified bits will also be removed. **Parameters** - **clbits** (*List\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – The bits to remove. + **clbits** (*List\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – The bits to remove. **Raises** - [**DAGCircuitError**](dagcircuit#qiskit.dagcircuit.DAGCircuitError "qiskit.dagcircuit.DAGCircuitError") – a clbit is not a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit"), is not in the circuit, or is not idle. + [**DAGCircuitError**](dagcircuit#qiskit.dagcircuit.DAGCircuitError "qiskit.dagcircuit.DAGCircuitError") – a clbit is not a [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit"), is not in the circuit, or is not idle. ### remove\_cregs - + Remove classical registers from the circuit, leaving underlying bits in place. **Raises** @@ -619,25 +623,25 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### remove\_descendants\_of - + Remove all of the descendant operation nodes of node. ### remove\_nonancestors\_of - + Remove all of the non-ancestors operation nodes of node. ### remove\_nondescendants\_of - + Remove all of the non-descendants operation nodes of node. ### remove\_op\_node - + Remove an operation node n. Add edges from predecessors to successors. @@ -645,7 +649,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### remove\_qregs - + Remove classical registers from the circuit, leaving underlying bits in place. **Raises** @@ -656,21 +660,21 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### remove\_qubits - + Remove quantum bits from the circuit. All bits MUST be idle. Any registers with references to at least one of the specified bits will also be removed. **Parameters** - **qubits** (*List\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – The bits to remove. + **qubits** (*List\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – The bits to remove. **Raises** - [**DAGCircuitError**](dagcircuit#qiskit.dagcircuit.DAGCircuitError "qiskit.dagcircuit.DAGCircuitError") – a qubit is not a [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit"), is not in the circuit, or is not idle. + [**DAGCircuitError**](dagcircuit#qiskit.dagcircuit.DAGCircuitError "qiskit.dagcircuit.DAGCircuitError") – a qubit is not a [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit"), is not in the circuit, or is not idle. ### replace\_block\_with\_op - + Replace a block of nodes with a single node. This is used to consolidate a block of DAGOpNodes into a single operation. A typical example is a block of gates being consolidated into a single `UnitaryGate` representing the unitary matrix of the block. @@ -679,7 +683,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit * **node\_block** (*List\[*[*DAGNode*](qiskit.dagcircuit.DAGNode "qiskit.dagcircuit.DAGNode")*]*) – A list of dag nodes that represents the node block to be replaced * **op** ([*qiskit.circuit.Operation*](qiskit.circuit.Operation "qiskit.circuit.Operation")) – The operation to replace the block with - * **wire\_pos\_map** (*Dict\[*[*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The dictionary mapping the bits to their positions in the output `qargs` or `cargs`. This is necessary to reconstruct the arg order over multiple gates in the combined single op node. If a [`Bit`](qiskit.circuit.Bit "qiskit.circuit.Bit") is not in the dictionary, it will not be added to the args; this can be useful when dealing with control-flow operations that have inherent bits in their `condition` or `target` fields. + * **wire\_pos\_map** (*Dict\[*[*Bit*](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The dictionary mapping the bits to their positions in the output `qargs` or `cargs`. This is necessary to reconstruct the arg order over multiple gates in the combined single op node. If a [`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit") is not in the dictionary, it will not be added to the args; this can be useful when dealing with control-flow operations that have inherent bits in their `condition` or `target` fields. * **cycle\_check** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – When set to True this method will check that replacing the provided `node_block` with a single node would introduce a cycle (which would invalidate the `DAGCircuit`) and will raise a `DAGCircuitError` if a cycle would be introduced. This checking comes with a run time penalty. If you can guarantee that your input `node_block` is a contiguous block and won’t introduce a cycle when it’s contracted to a single node, this can be set to `False` to improve the runtime performance of this method. **Raises** @@ -697,7 +701,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### reverse\_ops - + Reverse the operations in the `self` circuit. **Returns** @@ -711,7 +715,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### separable\_circuits - + Decompose the circuit into sets of qubits with no gates connecting them. **Parameters** @@ -733,7 +737,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### serial\_layers - + Yield a layer for all gates of this circuit. A serial layer is a circuit with one gate. The layers have the same structure as in layers(). @@ -741,7 +745,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### size - + Return the number of operations. If there is control flow present, this count may only be an estimate, as the complete control-flow path cannot be statically known. **Parameters** @@ -763,7 +767,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### substitute\_node - + Replace an DAGOpNode with a single operation. qargs, cargs and conditions for the new operation will be inferred from the node to be replaced. The new operation will be checked to match the shape of the replaced operation. **Parameters** @@ -789,14 +793,14 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### substitute\_node\_with\_dag - + Replace one node with dag. **Parameters** * **node** ([*DAGOpNode*](qiskit.dagcircuit.DAGOpNode "qiskit.dagcircuit.DAGOpNode")) – node to substitute * **input\_dag** ([*DAGCircuit*](#qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit")) – circuit that will substitute the node - * **wires** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")*] | Dict\[*[*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")*,* [*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")*]*) – gives an order for (qu)bits in the input circuit. If a list, then the bits refer to those in the `input_dag`, and the order gets matched to the node wires by qargs first, then cargs, then conditions. If a dictionary, then a mapping of bits in the `input_dag` to those that the `node` acts on. + * **wires** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Bit*](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit")*] | Dict\[*[*Bit*](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit")*,* [*Bit*](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit")*]*) – gives an order for (qu)bits in the input circuit. If a list, then the bits refer to those in the `input_dag`, and the order gets matched to the node wires by qargs first, then cargs, then conditions. If a dictionary, then a mapping of bits in the `input_dag` to those that the `node` acts on. * **propagate\_condition** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If `True` (default), then any `condition` attribute on the operation within `node` is propagated to each node in the `input_dag`. If `False`, then the `input_dag` is assumed to faithfully implement suitable conditional logic already. This is ignored for [`ControlFlowOp`](qiskit.circuit.ControlFlowOp "qiskit.circuit.ControlFlowOp")s (i.e. treated as if it is `False`); replacements of those must already fulfill the same conditional logic or this function would be close to useless for them. **Returns** @@ -814,13 +818,13 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### successors - + Returns iterator of the successors of a node as DAGOpNodes and DAGOutNodes. ### swap\_nodes - + Swap connected nodes e.g. due to commutation. **Parameters** @@ -835,7 +839,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### topological\_nodes - + Yield nodes in topological order. **Parameters** @@ -853,7 +857,7 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### topological\_op\_nodes - + Yield op nodes in topological order. Allowed to pass in specific key to break ties in top order @@ -873,13 +877,13 @@ python_api_name: qiskit.dagcircuit.DAGCircuit ### two\_qubit\_ops - + Get list of 2 qubit operations. Ignore directives like snapshot and barrier. ### width - + Return the total number of qubits + clbits used by the circuit. This function formerly returned the number of qubits by the calculation return len(self.\_wires) - self.num\_clbits() but was changed by issue #2564 to return number of qubits + clbits with the new function DAGCircuit.num\_qubits replacing the former semantic of DAGCircuit.width(). diff --git a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDepNode.mdx b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDepNode.mdx index 274b2dec41f..a46a3c085ce 100644 --- a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDepNode.mdx +++ b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDepNode.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.dagcircuit.DAGDepNode # DAGDepNode - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Object to represent the information at a node in the DAGDependency(). @@ -31,7 +31,7 @@ python_api_name: qiskit.dagcircuit.DAGDepNode ### sort\_key - + ### node\_id @@ -39,11 +39,11 @@ python_api_name: qiskit.dagcircuit.DAGDepNode ### successors - + ### predecessors - + ### reachable @@ -51,23 +51,23 @@ python_api_name: qiskit.dagcircuit.DAGDepNode ### matchedwith - + ### isblocked - + ### successorstovisit - + ### qindices - + ### cindices - + ### op @@ -85,13 +85,13 @@ python_api_name: qiskit.dagcircuit.DAGDepNode ### copy - + Function to copy a DAGDepNode object. :returns: a copy of a DAGDepNode object. :rtype: DAGDepNode ### semantic\_eq - + Check if DAG nodes are considered equivalent, e.g., as a node\_match for nx.is\_isomorphic. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDependency.mdx b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDependency.mdx index 24e29140e3a..ccc0379038f 100644 --- a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDependency.mdx +++ b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDependency.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency # DAGDependency - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Object to represent a quantum circuit as a Directed Acyclic Graph (DAG) via operation dependencies (i.e. lack of commutation). @@ -57,55 +57,55 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### add\_clbits - + Add individual clbit wires. ### add\_creg - + Add clbits in a classical register. ### add\_op\_node - + Add a DAGDepNode to the graph and update the edges. **Parameters** * **operation** ([*qiskit.circuit.Operation*](qiskit.circuit.Operation "qiskit.circuit.Operation")) – operation as a quantum gate - * **qargs** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – list of qubits on which the operation acts - * **cargs** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Clbit*](qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – list of classical wires to attach to + * **qargs** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*]*) – list of qubits on which the operation acts + * **cargs** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Clbit*](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit")*]*) – list of classical wires to attach to ### add\_qreg - + Add qubits in a quantum register. ### add\_qubits - + Add individual qubit wires. ### copy - + Function to copy a DAGDependency object. :returns: a copy of a DAGDependency object. :rtype: DAGDependency ### depth - + Return the circuit depth. :returns: the circuit depth :rtype: int ### direct\_predecessors - + Direct predecessors id of a given node as sorted list. **Parameters** @@ -123,7 +123,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### direct\_successors - + Direct successors id of a given node as sorted list. **Parameters** @@ -141,7 +141,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### draw - + Draws the DAGDependency graph. This function needs pydot \<[https://github.com/erocarrera/pydot](https://github.com/erocarrera/pydot)>, which in turn needs Graphviz \<[https://www.graphviz.org/](https://www.graphviz.org/)>\` to be installed. @@ -163,7 +163,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_all\_edges - + Enumeration of all edges. **Returns** @@ -177,7 +177,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_edges - + Edge enumeration between two nodes through method get\_all\_edge\_data. **Parameters** @@ -196,7 +196,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_in\_edges - + Enumeration of all incoming edges for a given node. **Parameters** @@ -214,7 +214,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_node - + **Parameters** **node\_id** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – label of considered node. @@ -230,7 +230,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_nodes - + **Returns** iterator over all the nodes. @@ -242,7 +242,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_out\_edges - + Enumeration of all outgoing edges for a given node. **Parameters** @@ -260,7 +260,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### predecessors - + Predecessors id of a given node as sorted list. **Parameters** @@ -278,7 +278,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### replace\_block\_with\_op - + Replace a block of nodes with a single node. This is used to consolidate a block of DAGDepNodes into a single operation. A typical example is a block of CX and SWAP gates consolidated into a LinearFunction. This function is an adaptation of a similar function from DAGCircuit. @@ -289,7 +289,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency * **node\_block** (*List\[*[*DAGDepNode*](qiskit.dagcircuit.DAGDepNode "qiskit.dagcircuit.DAGDepNode")*]*) – A list of dag nodes that represents the node block to be replaced * **op** ([*qiskit.circuit.Operation*](qiskit.circuit.Operation "qiskit.circuit.Operation")) – The operation to replace the block with - * **wire\_pos\_map** (*Dict\[*[*Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The dictionary mapping the qarg to the position. This is necessary to reconstruct the qarg order over multiple gates in the combined single op node. + * **wire\_pos\_map** (*Dict\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")*,* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")*]*) – The dictionary mapping the qarg to the position. This is necessary to reconstruct the qarg order over multiple gates in the combined single op node. * **cycle\_check** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – When set to True this method will check that replacing the provided `node_block` with a single node would introduce a cycle (which would invalidate the `DAGDependency`) and will raise a `DAGDependencyError` if a cycle would be introduced. This checking comes with a run time penalty. If you can guarantee that your input `node_block` is a contiguous block and won’t introduce a cycle when it’s contracted to a single node, this can be set to `False` to improve the runtime performance of this method. **Raises** @@ -299,13 +299,13 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### size - + Returns the number of gates in the circuit ### successors - + Successors id of a given node as sorted list. **Parameters** @@ -323,13 +323,13 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### to\_retworkx - + Returns the DAGDependency in retworkx format. ### topological\_nodes - + Yield nodes in topological order. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGInNode.mdx b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGInNode.mdx index 974a38cecff..0a91efe7021 100644 --- a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGInNode.mdx +++ b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGInNode.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.dagcircuit.DAGInNode # DAGInNode - + Bases: [`DAGNode`](qiskit.dagcircuit.DAGNode "qiskit.dagcircuit.dagnode.DAGNode") Object to represent an incoming wire node in the DAGCircuit. @@ -29,7 +29,7 @@ python_api_name: qiskit.dagcircuit.DAGInNode ### semantic\_eq - + Check if DAG nodes are considered equivalent, e.g., as a node\_match for [`rustworkx.is_isomorphic_node_match()`](https://www.rustworkx.org/apiref/rustworkx.is_isomorphic_node_match.html#rustworkx.is_isomorphic_node_match "(in rustworkx v0.14)"). **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGNode.mdx b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGNode.mdx index 98577c019c6..6005bed46b1 100644 --- a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGNode.mdx +++ b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGNode.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.dagcircuit.DAGNode # DAGNode - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Parent class for DAGOpNode, DAGInNode, and DAGOutNode. @@ -19,7 +19,7 @@ python_api_name: qiskit.dagcircuit.DAGNode ### semantic\_eq - + Check if DAG nodes are considered equivalent, e.g., as a node\_match for [`rustworkx.is_isomorphic_node_match()`](https://www.rustworkx.org/apiref/rustworkx.is_isomorphic_node_match.html#rustworkx.is_isomorphic_node_match "(in rustworkx v0.14)"). **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGOpNode.mdx b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGOpNode.mdx index 2c7009e7f2d..95bb588e3cf 100644 --- a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGOpNode.mdx +++ b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGOpNode.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.dagcircuit.DAGOpNode # DAGOpNode - + Bases: [`DAGNode`](qiskit.dagcircuit.DAGNode "qiskit.dagcircuit.dagnode.DAGNode") Object to represent an Instruction at a node in the DAGCircuit. @@ -43,7 +43,7 @@ python_api_name: qiskit.dagcircuit.DAGOpNode ### semantic\_eq - + Check if DAG nodes are considered equivalent, e.g., as a node\_match for [`rustworkx.is_isomorphic_node_match()`](https://www.rustworkx.org/apiref/rustworkx.is_isomorphic_node_match.html#rustworkx.is_isomorphic_node_match "(in rustworkx v0.14)"). **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGOutNode.mdx b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGOutNode.mdx index 884d8abe19d..0259bf4dfd9 100644 --- a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGOutNode.mdx +++ b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGOutNode.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.dagcircuit.DAGOutNode # DAGOutNode - + Bases: [`DAGNode`](qiskit.dagcircuit.DAGNode "qiskit.dagcircuit.dagnode.DAGNode") Object to represent an outgoing wire node in the DAGCircuit. @@ -29,7 +29,7 @@ python_api_name: qiskit.dagcircuit.DAGOutNode ### semantic\_eq - + Check if DAG nodes are considered equivalent, e.g., as a node\_match for [`rustworkx.is_isomorphic_node_match()`](https://www.rustworkx.org/apiref/rustworkx.is_isomorphic_node_match.html#rustworkx.is_isomorphic_node_match "(in rustworkx v0.14)"). **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.passmanager.BaseController.mdx b/docs/api/qiskit/dev/qiskit.passmanager.BaseController.mdx index 992ad82d8e8..acc04161778 100644 --- a/docs/api/qiskit/dev/qiskit.passmanager.BaseController.mdx +++ b/docs/api/qiskit/dev/qiskit.passmanager.BaseController.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.passmanager.BaseController # BaseController - + Bases: `Task`, [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Base class of controller. @@ -25,7 +25,7 @@ python_api_name: qiskit.passmanager.BaseController ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -45,7 +45,7 @@ python_api_name: qiskit.passmanager.BaseController ### iter\_tasks - + A custom logic to choose a next task to run. Controller subclass can consume the state to build a proper task pipeline. The updated state after a task execution will be fed back in as the “return” value of any `yield` statements. This indicates the order of task execution is only determined at running time. This method is not allowed to mutate the given state object. diff --git a/docs/api/qiskit/dev/qiskit.passmanager.BasePassManager.mdx b/docs/api/qiskit/dev/qiskit.passmanager.BasePassManager.mdx index 28f58ed37c4..1bd848ebc01 100644 --- a/docs/api/qiskit/dev/qiskit.passmanager.BasePassManager.mdx +++ b/docs/api/qiskit/dev/qiskit.passmanager.BasePassManager.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.passmanager.BasePassManager # BasePassManager - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Pass manager base class. @@ -24,7 +24,7 @@ python_api_name: qiskit.passmanager.BasePassManager ### append - + Append tasks to the schedule of passes. **Parameters** @@ -38,7 +38,7 @@ python_api_name: qiskit.passmanager.BasePassManager ### remove - + Removes a particular pass in the scheduler. **Parameters** @@ -52,7 +52,7 @@ python_api_name: qiskit.passmanager.BasePassManager ### replace - + Replace a particular pass in the scheduler. **Parameters** @@ -68,7 +68,7 @@ python_api_name: qiskit.passmanager.BasePassManager ### run - + Run all the passes on the specified `in_programs`. **Parameters** @@ -116,7 +116,7 @@ python_api_name: qiskit.passmanager.BasePassManager ### to\_flow\_controller - + Linearize this manager into a single [`FlowControllerLinear`](qiskit.passmanager.FlowControllerLinear "qiskit.passmanager.FlowControllerLinear"), so that it can be nested inside another pass manager. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.passmanager.ConditionalController.mdx b/docs/api/qiskit/dev/qiskit.passmanager.ConditionalController.mdx index c5d67bf8cf7..6fc3a44a7f0 100644 --- a/docs/api/qiskit/dev/qiskit.passmanager.ConditionalController.mdx +++ b/docs/api/qiskit/dev/qiskit.passmanager.ConditionalController.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.passmanager.ConditionalController # ConditionalController - + Bases: [`BaseController`](qiskit.passmanager.BaseController "qiskit.passmanager.base_tasks.BaseController") A flow controller runs the pipeline once if the condition is true, or does nothing if the condition is false. @@ -31,7 +31,7 @@ python_api_name: qiskit.passmanager.ConditionalController ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -51,7 +51,7 @@ python_api_name: qiskit.passmanager.ConditionalController ### iter\_tasks - + A custom logic to choose a next task to run. Controller subclass can consume the state to build a proper task pipeline. The updated state after a task execution will be fed back in as the “return” value of any `yield` statements. This indicates the order of task execution is only determined at running time. This method is not allowed to mutate the given state object. diff --git a/docs/api/qiskit/dev/qiskit.passmanager.DoWhileController.mdx b/docs/api/qiskit/dev/qiskit.passmanager.DoWhileController.mdx index 2686a11156f..ce6b773e4eb 100644 --- a/docs/api/qiskit/dev/qiskit.passmanager.DoWhileController.mdx +++ b/docs/api/qiskit/dev/qiskit.passmanager.DoWhileController.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.passmanager.DoWhileController # DoWhileController - + Bases: [`BaseController`](qiskit.passmanager.BaseController "qiskit.passmanager.base_tasks.BaseController") Run the given tasks in a loop until the `do_while` condition on the property set becomes `False`. @@ -33,7 +33,7 @@ python_api_name: qiskit.passmanager.DoWhileController ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -53,7 +53,7 @@ python_api_name: qiskit.passmanager.DoWhileController ### iter\_tasks - + A custom logic to choose a next task to run. Controller subclass can consume the state to build a proper task pipeline. The updated state after a task execution will be fed back in as the “return” value of any `yield` statements. This indicates the order of task execution is only determined at running time. This method is not allowed to mutate the given state object. diff --git a/docs/api/qiskit/dev/qiskit.passmanager.FlowControllerLinear.mdx b/docs/api/qiskit/dev/qiskit.passmanager.FlowControllerLinear.mdx index 1ec1355bdc6..b004a7bf61f 100644 --- a/docs/api/qiskit/dev/qiskit.passmanager.FlowControllerLinear.mdx +++ b/docs/api/qiskit/dev/qiskit.passmanager.FlowControllerLinear.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.passmanager.FlowControllerLinear # FlowControllerLinear - + Bases: [`BaseController`](qiskit.passmanager.BaseController "qiskit.passmanager.base_tasks.BaseController") A standard flow controller that runs tasks one after the other. @@ -31,7 +31,7 @@ python_api_name: qiskit.passmanager.FlowControllerLinear ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -51,7 +51,7 @@ python_api_name: qiskit.passmanager.FlowControllerLinear ### iter\_tasks - + A custom logic to choose a next task to run. Controller subclass can consume the state to build a proper task pipeline. The updated state after a task execution will be fed back in as the “return” value of any `yield` statements. This indicates the order of task execution is only determined at running time. This method is not allowed to mutate the given state object. diff --git a/docs/api/qiskit/dev/qiskit.passmanager.GenericPass.mdx b/docs/api/qiskit/dev/qiskit.passmanager.GenericPass.mdx index 7e5f147bfc6..d13d915a6c6 100644 --- a/docs/api/qiskit/dev/qiskit.passmanager.GenericPass.mdx +++ b/docs/api/qiskit/dev/qiskit.passmanager.GenericPass.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.passmanager.GenericPass # GenericPass - + Bases: `Task`, [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Base class of a single pass manager task. @@ -19,7 +19,7 @@ python_api_name: qiskit.passmanager.GenericPass ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -39,7 +39,7 @@ python_api_name: qiskit.passmanager.GenericPass ### name - + Name of the pass. **Return type** @@ -49,7 +49,7 @@ python_api_name: qiskit.passmanager.GenericPass ### run - + Run optimization task. **Parameters** @@ -67,7 +67,7 @@ python_api_name: qiskit.passmanager.GenericPass ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.passmanager.PassManagerState.mdx b/docs/api/qiskit/dev/qiskit.passmanager.PassManagerState.mdx index 82b81df8fdf..8d24fb8ca16 100644 --- a/docs/api/qiskit/dev/qiskit.passmanager.PassManagerState.mdx +++ b/docs/api/qiskit/dev/qiskit.passmanager.PassManagerState.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.passmanager.PassManagerState # PassManagerState - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A portable container object that pass manager tasks communicate through generator. diff --git a/docs/api/qiskit/dev/qiskit.passmanager.PropertySet.mdx b/docs/api/qiskit/dev/qiskit.passmanager.PropertySet.mdx index 06e15d452b1..4211b051c56 100644 --- a/docs/api/qiskit/dev/qiskit.passmanager.PropertySet.mdx +++ b/docs/api/qiskit/dev/qiskit.passmanager.PropertySet.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.passmanager.PropertySet # PropertySet - + Bases: [`dict`](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)") A default dictionary-like object. diff --git a/docs/api/qiskit/dev/qiskit.passmanager.WorkflowStatus.mdx b/docs/api/qiskit/dev/qiskit.passmanager.WorkflowStatus.mdx index 206d9d6bbfe..ad70267c0e4 100644 --- a/docs/api/qiskit/dev/qiskit.passmanager.WorkflowStatus.mdx +++ b/docs/api/qiskit/dev/qiskit.passmanager.WorkflowStatus.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.passmanager.WorkflowStatus # WorkflowStatus - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Collection of compilation status of workflow, i.e. pass manager run. diff --git a/docs/api/qiskit/dev/qiskit.primitives.BackendEstimator.mdx b/docs/api/qiskit/dev/qiskit.primitives.BackendEstimator.mdx index e9711945d61..d9aa29f9cc7 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BackendEstimator.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BackendEstimator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BackendEstimator # BackendEstimator - + Bases: [`BaseEstimatorV1`](qiskit.primitives.BaseEstimatorV1 "qiskit.primitives.base.base_estimator.BaseEstimatorV1")\[[`PrimitiveJob`](qiskit.primitives.PrimitiveJob "qiskit.primitives.primitive_job.PrimitiveJob")\[[`EstimatorResult`](qiskit.primitives.EstimatorResult "qiskit.primitives.base.estimator_result.EstimatorResult")]] Evaluates expectation value using Pauli rotation gates. @@ -69,7 +69,7 @@ python_api_name: qiskit.primitives.BackendEstimator ### run - + Run the job of the estimation of expectation value(s). `circuits`, `observables`, and `parameter_values` should have the same length. The i-th element of the result is the expectation of observable @@ -113,7 +113,7 @@ python_api_name: qiskit.primitives.BackendEstimator ### set\_options - + Set options values for the estimator. **Parameters** @@ -123,7 +123,7 @@ python_api_name: qiskit.primitives.BackendEstimator ### set\_transpile\_options - + Set the transpiler options for transpiler. :param \*\*fields: The fields to update the options diff --git a/docs/api/qiskit/dev/qiskit.primitives.BackendEstimatorV2.mdx b/docs/api/qiskit/dev/qiskit.primitives.BackendEstimatorV2.mdx new file mode 100644 index 00000000000..906261f9b4c --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.primitives.BackendEstimatorV2.mdx @@ -0,0 +1,68 @@ +--- +title: BackendEstimatorV2 +description: API reference for qiskit.primitives.BackendEstimatorV2 +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.primitives.BackendEstimatorV2 +--- + +# BackendEstimatorV2 + + + Bases: [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.base.base_estimator.BaseEstimatorV2") + + Evaluates expectation values for provided quantum circuit and observable combinations + + The [`BackendEstimatorV2`](#qiskit.primitives.BackendEstimatorV2 "qiskit.primitives.BackendEstimatorV2") class is a generic implementation of the [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.BaseEstimatorV2") interface that is used to wrap a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") (or [`BackendV1`](qiskit.providers.BackendV1 "qiskit.providers.BackendV1")) object in the [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.BaseEstimatorV2") API. It facilitates using backends that do not provide a native [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.BaseEstimatorV2") implementation in places that work with [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.BaseEstimatorV2"). However, if you’re using a provider that has a native implementation of [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.BaseEstimatorV2"), it is a better choice to leverage that native implementation as it will likely include additional optimizations and be a more efficient implementation. The generic nature of this class precludes doing any provider- or backend-specific optimizations. + + This class does not perform any measurement or gate mitigation, and, presently, is only compatible with Pauli-based observables. + + Each tuple of `(circuit, observables, parameter values, precision)`, called an estimator primitive unified bloc (PUB), produces its own array-based result. The [`run()`](#qiskit.primitives.BackendEstimatorV2.run "qiskit.primitives.BackendEstimatorV2.run") method can be given a sequence of pubs to run in one call. + + The options for [`BackendEstimatorV2`](#qiskit.primitives.BackendEstimatorV2 "qiskit.primitives.BackendEstimatorV2") consist of the following items. + + * `default_precision`: The default precision to use if none are specified in [`run()`](#qiskit.primitives.BackendEstimatorV2.run "qiskit.primitives.BackendEstimatorV2.run"). Default: 0.015625 (1 / sqrt(4096)). + * `abelian_grouping`: Whether the observables should be grouped into sets of qubit-wise commuting observables. Default: True. + * `seed_simulator`: The seed to use in the simulator. If None, a random seed will be used. Default: None. + + **Parameters** + + * **backend** ([*BackendV1*](qiskit.providers.BackendV1 "qiskit.providers.BackendV1") *|*[*BackendV2*](qiskit.providers.BackendV2 "qiskit.providers.BackendV2")) – The backend to run the primitive on. + * **options** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)") *| None*) – The options to control the default precision (`default_precision`), the operator grouping (`abelian_grouping`), and the random seed for the simulator (`seed_simulator`). + + ## Attributes + + ### backend + + + Returns the backend which this sampler object based on. + + + ### options + + + Return the options + + + ## Methods + + ### run + + + Estimate expectation values for each provided pub (Primitive Unified Bloc). + + **Parameters** + + * **pubs** (*Iterable\[EstimatorPubLike]*) – An iterable of pub-like objects, such as tuples `(circuit, observables)` or `(circuit, observables, parameter_values)`. + * **precision** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") *| None*) – The target precision for expectation value estimates of each run Estimator Pub that does not specify its own precision. If None the estimator’s default precision value will be used. + + **Returns** + + A job object that contains results. + + **Return type** + + [PrimitiveJob](qiskit.primitives.PrimitiveJob "qiskit.primitives.PrimitiveJob")\[[PrimitiveResult](qiskit.primitives.PrimitiveResult "qiskit.primitives.PrimitiveResult")\[[PubResult](qiskit.primitives.PubResult "qiskit.primitives.PubResult")]] + + + diff --git a/docs/api/qiskit/dev/qiskit.primitives.BackendSampler.mdx b/docs/api/qiskit/dev/qiskit.primitives.BackendSampler.mdx index ce642e5fa2c..dacf34c701f 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BackendSampler.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BackendSampler.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BackendSampler # BackendSampler - + Bases: [`BaseSamplerV1`](qiskit.primitives.BaseSamplerV1 "qiskit.primitives.base.base_sampler.BaseSamplerV1")\[[`PrimitiveJob`](qiskit.primitives.PrimitiveJob "qiskit.primitives.primitive_job.PrimitiveJob")\[[`SamplerResult`](qiskit.primitives.SamplerResult "qiskit.primitives.base.sampler_result.SamplerResult")]] A `BaseSampler` implementation that provides an interface for leveraging the sampler interface from any backend. @@ -76,7 +76,7 @@ python_api_name: qiskit.primitives.BackendSampler ### run - + Run the job of the sampling of bitstrings. **Parameters** @@ -100,7 +100,7 @@ python_api_name: qiskit.primitives.BackendSampler ### set\_options - + Set options values for the estimator. **Parameters** @@ -110,7 +110,7 @@ python_api_name: qiskit.primitives.BackendSampler ### set\_transpile\_options - + Set the transpiler options for transpiler. :param \*\*fields: The fields to update the options. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.primitives.BackendSamplerV2.mdx b/docs/api/qiskit/dev/qiskit.primitives.BackendSamplerV2.mdx new file mode 100644 index 00000000000..cb01b3659fb --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.primitives.BackendSamplerV2.mdx @@ -0,0 +1,71 @@ +--- +title: BackendSamplerV2 +description: API reference for qiskit.primitives.BackendSamplerV2 +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.primitives.BackendSamplerV2 +--- + +# BackendSamplerV2 + + + Bases: [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.base.base_sampler.BaseSamplerV2") + + Evaluates bitstrings for provided quantum circuits + + The [`BackendSamplerV2`](#qiskit.primitives.BackendSamplerV2 "qiskit.primitives.BackendSamplerV2") class is a generic implementation of the [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.BaseSamplerV2") interface that is used to wrap a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") (or [`BackendV1`](qiskit.providers.BackendV1 "qiskit.providers.BackendV1")) object in the class [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.BaseSamplerV2") API. It facilitates using backends that do not provide a native [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.BaseSamplerV2") implementation in places that work with [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.BaseSamplerV2"). However, if you’re using a provider that has a native implementation of [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.BaseSamplerV2"), it is a better choice to leverage that native implementation as it will likely include additional optimizations and be a more efficient implementation. The generic nature of this class precludes doing any provider- or backend-specific optimizations. + + This class does not perform any measurement or gate mitigation. + + Each tuple of `(circuit, parameter values, shots)`, called a sampler primitive unified bloc (PUB), produces its own array-valued result. The [`run()`](#qiskit.primitives.BackendSamplerV2.run "qiskit.primitives.BackendSamplerV2.run") method can be given many pubs at once. + + The options for [`BackendSamplerV2`](#qiskit.primitives.BackendSamplerV2 "qiskit.primitives.BackendSamplerV2") consist of the following items. + + * `default_shots`: The default shots to use if none are specified in [`run()`](#qiskit.primitives.BackendSamplerV2.run "qiskit.primitives.BackendSamplerV2.run"). Default: 1024. + * `seed_simulator`: The seed to use in the simulator. If None, a random seed will be used. Default: None. + + + This class requires a backend that supports `memory` option. + + + **Parameters** + + * **backend** ([*BackendV1*](qiskit.providers.BackendV1 "qiskit.providers.BackendV1") *|*[*BackendV2*](qiskit.providers.BackendV2 "qiskit.providers.BackendV2")) – The backend to run the primitive on. + * **options** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)") *| None*) – The options to control the default shots (`default_shots`) and the random seed for the simulator (`seed_simulator`). + + ## Attributes + + ### backend + + + Returns the backend which this sampler object based on. + + + ### options + + + Return the options + + + ## Methods + + ### run + + + Run and collect samples from each pub. + + **Parameters** + + * **pubs** (*Iterable\[SamplerPubLike]*) – An iterable of pub-like objects. For example, a list of circuits or tuples `(circuit, parameter_values)`. + * **shots** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)") *| None*) – The total number of shots to sample for each sampler pub that does not specify its own shots. If `None`, the primitive’s default shots value will be used, which can vary by implementation. + + **Returns** + + The job object of Sampler’s result. + + **Return type** + + [PrimitiveJob](qiskit.primitives.PrimitiveJob "qiskit.primitives.PrimitiveJob")\[[PrimitiveResult](qiskit.primitives.PrimitiveResult "qiskit.primitives.PrimitiveResult")\[[PubResult](qiskit.primitives.PubResult "qiskit.primitives.PubResult")]] + + + diff --git a/docs/api/qiskit/dev/qiskit.primitives.BaseEstimator.mdx b/docs/api/qiskit/dev/qiskit.primitives.BaseEstimator.mdx index d6ffab04e84..f4ddf397cea 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BaseEstimator.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BaseEstimator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BaseEstimator # BaseEstimator - + alias of [`BaseEstimatorV1`](qiskit.primitives.BaseEstimatorV1 "qiskit.primitives.base.base_estimator.BaseEstimatorV1") diff --git a/docs/api/qiskit/dev/qiskit.primitives.BaseEstimatorV1.mdx b/docs/api/qiskit/dev/qiskit.primitives.BaseEstimatorV1.mdx index 0acda6f7df2..3a6e80d19ee 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BaseEstimatorV1.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BaseEstimatorV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BaseEstimatorV1 # BaseEstimatorV1 - + Bases: `BasePrimitive`, [`Generic`](https://docs.python.org/3/library/typing.html#typing.Generic "(in Python v3.12)")\[`T`] Estimator V1 base class. @@ -82,7 +82,7 @@ $$ ### run - + Run the job of the estimation of expectation value(s). `circuits`, `observables`, and `parameter_values` should have the same length. The i-th element of the result is the expectation of observable @@ -126,7 +126,7 @@ $$ ### set\_options - + Set options values for the estimator. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.primitives.BaseEstimatorV2.mdx b/docs/api/qiskit/dev/qiskit.primitives.BaseEstimatorV2.mdx index d08edbfbf19..e32914f3059 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BaseEstimatorV2.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BaseEstimatorV2.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BaseEstimatorV2 # BaseEstimatorV2 - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Estimator V2 base class. @@ -21,7 +21,7 @@ python_api_name: qiskit.primitives.BaseEstimatorV2 ### run - + Estimate expectation values for each provided pub (Primitive Unified Bloc). **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.primitives.BasePrimitiveJob.mdx b/docs/api/qiskit/dev/qiskit.primitives.BasePrimitiveJob.mdx index 6dc41343b95..d613ba42370 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BasePrimitiveJob.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BasePrimitiveJob.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BasePrimitiveJob # BasePrimitiveJob - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)"), [`Generic`](https://docs.python.org/3/library/typing.html#typing.Generic "(in Python v3.12)")\[`ResultT`, `StatusT`] Primitive job abstract base class. @@ -24,13 +24,13 @@ python_api_name: qiskit.primitives.BasePrimitiveJob ### cancel - + Attempt to cancel the job. ### cancelled - + Return whether the job has been cancelled. **Return type** @@ -40,7 +40,7 @@ python_api_name: qiskit.primitives.BasePrimitiveJob ### done - + Return whether the job has successfully run. **Return type** @@ -50,7 +50,7 @@ python_api_name: qiskit.primitives.BasePrimitiveJob ### in\_final\_state - + Return whether the job is in a final job state such as `DONE` or `ERROR`. **Return type** @@ -60,7 +60,7 @@ python_api_name: qiskit.primitives.BasePrimitiveJob ### job\_id - + Return a unique id identifying the job. **Return type** @@ -70,7 +70,7 @@ python_api_name: qiskit.primitives.BasePrimitiveJob ### result - + Return the results of the job. **Return type** @@ -80,7 +80,7 @@ python_api_name: qiskit.primitives.BasePrimitiveJob ### running - + Return whether the job is actively running. **Return type** @@ -90,7 +90,7 @@ python_api_name: qiskit.primitives.BasePrimitiveJob ### status - + Return the status of the job. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.primitives.BaseSampler.mdx b/docs/api/qiskit/dev/qiskit.primitives.BaseSampler.mdx index de3f8ebe7af..fbd27621848 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BaseSampler.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BaseSampler.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BaseSampler # BaseSampler - + alias of [`BaseSamplerV1`](qiskit.primitives.BaseSamplerV1 "qiskit.primitives.base.base_sampler.BaseSamplerV1") diff --git a/docs/api/qiskit/dev/qiskit.primitives.BaseSamplerV1.mdx b/docs/api/qiskit/dev/qiskit.primitives.BaseSamplerV1.mdx index e47965e2c13..c47f3ab33b7 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BaseSamplerV1.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BaseSamplerV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BaseSamplerV1 # BaseSamplerV1 - + Bases: `BasePrimitive`, [`Generic`](https://docs.python.org/3/library/typing.html#typing.Generic "(in Python v3.12)")\[`T`] Sampler V1 base class @@ -81,7 +81,7 @@ python_api_name: qiskit.primitives.BaseSamplerV1 ### run - + Run the job of the sampling of bitstrings. **Parameters** @@ -105,7 +105,7 @@ python_api_name: qiskit.primitives.BaseSamplerV1 ### set\_options - + Set options values for the estimator. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.primitives.BaseSamplerV2.mdx b/docs/api/qiskit/dev/qiskit.primitives.BaseSamplerV2.mdx index 329a0d0c784..6906f423048 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BaseSamplerV2.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BaseSamplerV2.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BaseSamplerV2 # BaseSamplerV2 - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Sampler V2 base class. @@ -21,7 +21,7 @@ python_api_name: qiskit.primitives.BaseSamplerV2 ### run - + Run and collect samples from each pub. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.primitives.BitArray.mdx b/docs/api/qiskit/dev/qiskit.primitives.BitArray.mdx index fd2b0b31eb4..59ebb39f368 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.BitArray.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.BitArray.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.BitArray # BitArray - + Bases: `ShapedMixin` Stores an array of bit values. @@ -65,7 +65,7 @@ python_api_name: qiskit.primitives.BitArray ### bitcount - + Compute the number of ones appearing in the binary representation of each shot. **Returns** @@ -79,7 +79,7 @@ python_api_name: qiskit.primitives.BitArray ### from\_bool\_array - + Construct a new bit array from an array of bools. **Parameters** @@ -98,7 +98,7 @@ python_api_name: qiskit.primitives.BitArray ### from\_counts - + Construct a new bit array from one or more `Counts`-like objects. The `counts` can have keys that are (uniformly) integers, hexstrings, or bitstrings. Their values represent numbers of occurrences of that value. @@ -124,7 +124,7 @@ python_api_name: qiskit.primitives.BitArray ### from\_samples - + Construct a new bit array from an iterable of bitstrings, hexstrings, or integers. All samples are assumed to be integers if the first one is. Strings are all assumed to be bitstrings whenever the first string doesn’t start with `"0x"`. @@ -151,7 +151,7 @@ python_api_name: qiskit.primitives.BitArray ### get\_bitstrings - + Return a list of bitstrings. **Parameters** @@ -169,7 +169,7 @@ python_api_name: qiskit.primitives.BitArray ### get\_counts - + Return a counts dictionary with bitstring keys. **Parameters** @@ -187,7 +187,7 @@ python_api_name: qiskit.primitives.BitArray ### get\_int\_counts - + Return a counts dictionary, where bitstrings are stored as `int`s. **Parameters** @@ -205,7 +205,7 @@ python_api_name: qiskit.primitives.BitArray ### reshape - + Return a new reshaped bit array. The [`num_shots`](#qiskit.primitives.BitArray.num_shots "qiskit.primitives.BitArray.num_shots") axis is either included or excluded from the reshaping procedure depending on which picture the new shape is compatible with. For example, for a bit array with shape `(20, 5)` and `64` shots, a reshape to `(100,)` would leave the number of shots intact, whereas a reshape to `(200, 32)` would change the number of shots to `32`. diff --git a/docs/api/qiskit/dev/qiskit.primitives.DataBin.mdx b/docs/api/qiskit/dev/qiskit.primitives.DataBin.mdx index 83e21d9603a..df03aa398c3 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.DataBin.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.DataBin.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.DataBin # DataBin - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Base class for data bin containers. diff --git a/docs/api/qiskit/dev/qiskit.primitives.Estimator.mdx b/docs/api/qiskit/dev/qiskit.primitives.Estimator.mdx index 4ee3770a770..f90a4bd5c4f 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.Estimator.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.Estimator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.Estimator # Estimator - + Bases: [`BaseEstimatorV1`](qiskit.primitives.BaseEstimatorV1 "qiskit.primitives.base.base_estimator.BaseEstimatorV1")\[[`PrimitiveJob`](qiskit.primitives.PrimitiveJob "qiskit.primitives.primitive_job.PrimitiveJob")\[[`EstimatorResult`](qiskit.primitives.EstimatorResult "qiskit.primitives.base.estimator_result.EstimatorResult")]] Reference implementation of [`BaseEstimator`](qiskit.primitives.BaseEstimator "qiskit.primitives.BaseEstimator"). @@ -42,7 +42,7 @@ python_api_name: qiskit.primitives.Estimator ### run - + Run the job of the estimation of expectation value(s). `circuits`, `observables`, and `parameter_values` should have the same length. The i-th element of the result is the expectation of observable @@ -86,7 +86,7 @@ python_api_name: qiskit.primitives.Estimator ### set\_options - + Set options values for the estimator. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.primitives.EstimatorResult.mdx b/docs/api/qiskit/dev/qiskit.primitives.EstimatorResult.mdx index 3c372f4bd22..ff1f46a64ac 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.EstimatorResult.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.EstimatorResult.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.EstimatorResult # EstimatorResult - + Bases: `_BasePrimitiveResult` Result of Estimator. diff --git a/docs/api/qiskit/dev/qiskit.primitives.PrimitiveJob.mdx b/docs/api/qiskit/dev/qiskit.primitives.PrimitiveJob.mdx index 477be56fe4a..186503664fb 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.PrimitiveJob.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.PrimitiveJob.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.PrimitiveJob # PrimitiveJob - + Bases: [`BasePrimitiveJob`](qiskit.primitives.BasePrimitiveJob "qiskit.primitives.base.base_primitive_job.BasePrimitiveJob")\[`ResultT`, [`JobStatus`](qiskit.providers.JobStatus "qiskit.providers.jobstatus.JobStatus")] Primitive job class for the reference implementations of Primitives. @@ -21,13 +21,13 @@ python_api_name: qiskit.primitives.PrimitiveJob ### cancel - + Attempt to cancel the job. ### cancelled - + Return whether the job has been cancelled. **Return type** @@ -37,7 +37,7 @@ python_api_name: qiskit.primitives.PrimitiveJob ### done - + Return whether the job has successfully run. **Return type** @@ -47,7 +47,7 @@ python_api_name: qiskit.primitives.PrimitiveJob ### in\_final\_state - + Return whether the job is in a final job state such as `DONE` or `ERROR`. **Return type** @@ -57,7 +57,7 @@ python_api_name: qiskit.primitives.PrimitiveJob ### job\_id - + Return a unique id identifying the job. **Return type** @@ -67,7 +67,7 @@ python_api_name: qiskit.primitives.PrimitiveJob ### result - + Return the results of the job. **Return type** @@ -77,7 +77,7 @@ python_api_name: qiskit.primitives.PrimitiveJob ### running - + Return whether the job is actively running. **Return type** @@ -87,7 +87,7 @@ python_api_name: qiskit.primitives.PrimitiveJob ### status - + Return the status of the job. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.primitives.PrimitiveResult.mdx b/docs/api/qiskit/dev/qiskit.primitives.PrimitiveResult.mdx index 5fe2d30a534..1bd9b1cc674 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.PrimitiveResult.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.PrimitiveResult.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.PrimitiveResult # PrimitiveResult - + Bases: [`Generic`](https://docs.python.org/3/library/typing.html#typing.Generic "(in Python v3.12)")\[`T`] A container for multiple pub results and global metadata. diff --git a/docs/api/qiskit/dev/qiskit.primitives.PubResult.mdx b/docs/api/qiskit/dev/qiskit.primitives.PubResult.mdx index 724012897cf..9571084e1b7 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.PubResult.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.PubResult.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.PubResult # PubResult - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Result of Primitive Unified Bloc. diff --git a/docs/api/qiskit/dev/qiskit.primitives.Sampler.mdx b/docs/api/qiskit/dev/qiskit.primitives.Sampler.mdx index ea9d4aa9fac..ab23f03f6ac 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.Sampler.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.Sampler.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.Sampler # Sampler - + Bases: [`BaseSamplerV1`](qiskit.primitives.BaseSamplerV1 "qiskit.primitives.base.base_sampler.BaseSamplerV1")\[[`PrimitiveJob`](qiskit.primitives.PrimitiveJob "qiskit.primitives.primitive_job.PrimitiveJob")\[[`SamplerResult`](qiskit.primitives.SamplerResult "qiskit.primitives.base.sampler_result.SamplerResult")]] Sampler class. @@ -44,7 +44,7 @@ python_api_name: qiskit.primitives.Sampler ### run - + Run the job of the sampling of bitstrings. **Parameters** @@ -68,7 +68,7 @@ python_api_name: qiskit.primitives.Sampler ### set\_options - + Set options values for the estimator. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.primitives.SamplerResult.mdx b/docs/api/qiskit/dev/qiskit.primitives.SamplerResult.mdx index 803811d5018..335950c5c9b 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.SamplerResult.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.SamplerResult.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.SamplerResult # SamplerResult - + Bases: `_BasePrimitiveResult` Result of Sampler. diff --git a/docs/api/qiskit/dev/qiskit.primitives.StatevectorEstimator.mdx b/docs/api/qiskit/dev/qiskit.primitives.StatevectorEstimator.mdx index 9fba20476b6..4f167392b2c 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.StatevectorEstimator.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.StatevectorEstimator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.StatevectorEstimator # StatevectorEstimator - + Bases: [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.base.base_estimator.BaseEstimatorV2") Simple implementation of [`BaseEstimatorV2`](qiskit.primitives.BaseEstimatorV2 "qiskit.primitives.BaseEstimatorV2") with full state vector simulation. @@ -101,7 +101,7 @@ python_api_name: qiskit.primitives.StatevectorEstimator ### run - + Estimate expectation values for each provided pub (Primitive Unified Bloc). **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.primitives.StatevectorSampler.mdx b/docs/api/qiskit/dev/qiskit.primitives.StatevectorSampler.mdx index 010e07f2d11..32f37238e5a 100644 --- a/docs/api/qiskit/dev/qiskit.primitives.StatevectorSampler.mdx +++ b/docs/api/qiskit/dev/qiskit.primitives.StatevectorSampler.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.primitives.StatevectorSampler # StatevectorSampler - + Bases: [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.base.base_sampler.BaseSamplerV2") Simple implementation of [`BaseSamplerV2`](qiskit.primitives.BaseSamplerV2 "qiskit.primitives.BaseSamplerV2") using full state vector simulation. @@ -108,7 +108,7 @@ python_api_name: qiskit.primitives.StatevectorSampler ### run - + Run and collect samples from each pub. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.providers.Backend.mdx b/docs/api/qiskit/dev/qiskit.providers.Backend.mdx index 72f0b8f89a2..0524b848c8b 100644 --- a/docs/api/qiskit/dev/qiskit.providers.Backend.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.Backend.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.Backend # Backend - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Base common type for all versioned Backend abstract classes. diff --git a/docs/api/qiskit/dev/qiskit.providers.BackendV1.mdx b/docs/api/qiskit/dev/qiskit.providers.BackendV1.mdx index 1143fed7ba9..e84576e1c24 100644 --- a/docs/api/qiskit/dev/qiskit.providers.BackendV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.BackendV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.BackendV1 # BackendV1 - + Bases: [`Backend`](qiskit.providers.Backend "qiskit.providers.backend.Backend"), [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Abstract class for Backends @@ -21,7 +21,7 @@ python_api_name: qiskit.providers.BackendV1 ### \_default\_options - + Return the default options This method will return a [`qiskit.providers.Options`](qiskit.providers.Options "qiskit.providers.Options") subclass object that will be used for the default options. These should be the default parameters to use for the options of the backend. @@ -51,7 +51,7 @@ python_api_name: qiskit.providers.BackendV1 In addition to the public abstract methods, subclasses should also implement the following private methods: - + Return the default options This method will return a [`qiskit.providers.Options`](qiskit.providers.Options "qiskit.providers.Options") subclass object that will be used for the default options. These should be the default parameters to use for the options of the backend. @@ -85,7 +85,7 @@ python_api_name: qiskit.providers.BackendV1 ### configuration - + Return the backend configuration. **Returns** @@ -99,7 +99,7 @@ python_api_name: qiskit.providers.BackendV1 ### name - + Return the backend name. **Returns** @@ -113,7 +113,7 @@ python_api_name: qiskit.providers.BackendV1 ### properties - + Return the backend properties. **Returns** @@ -127,7 +127,7 @@ python_api_name: qiskit.providers.BackendV1 ### provider - + Return the backend Provider. **Returns** @@ -141,7 +141,7 @@ python_api_name: qiskit.providers.BackendV1 ### run - + Run on the backend. This method returns a [`Job`](qiskit.providers.Job "qiskit.providers.Job") object that runs circuits. Depending on the backend this may be either an async or sync call. It is at the discretion of the provider to decide whether running should block until the execution is finished or not: the Job class can handle either situation. @@ -162,7 +162,7 @@ python_api_name: qiskit.providers.BackendV1 ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. @@ -178,7 +178,7 @@ python_api_name: qiskit.providers.BackendV1 ### status - + Return the backend status. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.BackendV2.mdx b/docs/api/qiskit/dev/qiskit.providers.BackendV2.mdx index 742bffcb731..43e14bb13d7 100644 --- a/docs/api/qiskit/dev/qiskit.providers.BackendV2.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.BackendV2.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.BackendV2 # BackendV2 - + Bases: [`Backend`](qiskit.providers.Backend "qiskit.providers.backend.Backend"), [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Abstract class for Backends @@ -25,7 +25,7 @@ python_api_name: qiskit.providers.BackendV2 ### \_default\_options - + Return the default options This method will return a [`qiskit.providers.Options`](qiskit.providers.Options "qiskit.providers.Options") subclass object that will be used for the default options. These should be the default parameters to use for the options of the backend. @@ -214,7 +214,7 @@ python_api_name: qiskit.providers.BackendV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -234,7 +234,7 @@ python_api_name: qiskit.providers.BackendV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -260,7 +260,7 @@ python_api_name: qiskit.providers.BackendV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -280,7 +280,7 @@ python_api_name: qiskit.providers.BackendV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -300,7 +300,7 @@ python_api_name: qiskit.providers.BackendV2 ### qubit\_properties - + Return QubitProperties for a given qubit. If there are no defined or the backend doesn’t support querying these details this method does not need to be implemented. @@ -324,7 +324,7 @@ python_api_name: qiskit.providers.BackendV2 ### run - + Run on the backend. This method returns a [`Job`](qiskit.providers.Job "qiskit.providers.Job") object that runs circuits. Depending on the backend this may be either an async or sync call. It is at the discretion of the provider to decide whether running should block until the execution is finished or not: the Job class can handle either situation. @@ -345,7 +345,7 @@ python_api_name: qiskit.providers.BackendV2 ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. diff --git a/docs/api/qiskit/dev/qiskit.providers.BackendV2Converter.mdx b/docs/api/qiskit/dev/qiskit.providers.BackendV2Converter.mdx index 47406976be6..161ed78ff3c 100644 --- a/docs/api/qiskit/dev/qiskit.providers.BackendV2Converter.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.BackendV2Converter.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.BackendV2Converter # BackendV2Converter - + Bases: [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.backend.BackendV2") A converter class that takes a [`BackendV1`](qiskit.providers.BackendV1 "qiskit.providers.BackendV1") instance and wraps it in a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") interface. @@ -32,7 +32,7 @@ python_api_name: qiskit.providers.BackendV2Converter * **backend** ([*BackendV1*](qiskit.providers.BackendV1 "qiskit.providers.BackendV1")) – The input [`BackendV1`](qiskit.providers.BackendV1 "qiskit.providers.BackendV1") based backend to wrap in a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") interface * **name\_mapping** (*Optional\[Dict\[*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")*, Any]]*) – An optional dictionary that maps custom gate/operation names in `backend` to an [`Operation`](qiskit.circuit.Operation "qiskit.circuit.Operation") object representing that gate/operation. By default most standard gates names are mapped to the standard gate object from [`qiskit.circuit.library`](circuit_library#module-qiskit.circuit.library "qiskit.circuit.library") this only needs to be specified if the input `backend` defines gates in names outside that set. - * **add\_delay** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If set to true a [`Delay`](qiskit.circuit.Delay "qiskit.circuit.Delay") operation will be added to the target as a supported operation for all qubits + * **add\_delay** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If set to true a [`Delay`](circuit#qiskit.circuit.Delay "qiskit.circuit.Delay") operation will be added to the target as a supported operation for all qubits * **filter\_faulty** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – If the [`BackendProperties`](qiskit.providers.models.BackendProperties "qiskit.providers.models.BackendProperties") object (if present) for `backend` has any qubits or gates flagged as non-operational filter those from the output target. ## Attributes @@ -167,7 +167,7 @@ python_api_name: qiskit.providers.BackendV2Converter ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -187,7 +187,7 @@ python_api_name: qiskit.providers.BackendV2Converter ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -213,7 +213,7 @@ python_api_name: qiskit.providers.BackendV2Converter ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -233,7 +233,7 @@ python_api_name: qiskit.providers.BackendV2Converter ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -253,7 +253,7 @@ python_api_name: qiskit.providers.BackendV2Converter ### qubit\_properties - + Return QubitProperties for a given qubit. If there are no defined or the backend doesn’t support querying these details this method does not need to be implemented. @@ -277,7 +277,7 @@ python_api_name: qiskit.providers.BackendV2Converter ### run - + Run on the backend. This method returns a [`Job`](qiskit.providers.Job "qiskit.providers.Job") object that runs circuits. Depending on the backend this may be either an async or sync call. It is at the discretion of the provider to decide whether running should block until the execution is finished or not: the Job class can handle either situation. @@ -298,7 +298,7 @@ python_api_name: qiskit.providers.BackendV2Converter ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. diff --git a/docs/api/qiskit/dev/qiskit.providers.Job.mdx b/docs/api/qiskit/dev/qiskit.providers.Job.mdx index caeab6e6730..5856416d3d6 100644 --- a/docs/api/qiskit/dev/qiskit.providers.Job.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.Job.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.Job # Job - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Base common type for all versioned Job abstract classes. diff --git a/docs/api/qiskit/dev/qiskit.providers.JobStatus.mdx b/docs/api/qiskit/dev/qiskit.providers.JobStatus.mdx index c2063c4d634..aedc9a7fb54 100644 --- a/docs/api/qiskit/dev/qiskit.providers.JobStatus.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.JobStatus.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.JobStatus # JobStatus - + Bases: [`Enum`](https://docs.python.org/3/library/enum.html#enum.Enum "(in Python v3.12)") Class for job status enumerated type. diff --git a/docs/api/qiskit/dev/qiskit.providers.JobV1.mdx b/docs/api/qiskit/dev/qiskit.providers.JobV1.mdx index 1f4fdaaf174..2d7cc87fa26 100644 --- a/docs/api/qiskit/dev/qiskit.providers.JobV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.JobV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.JobV1 # JobV1 - + Bases: [`Job`](qiskit.providers.Job "qiskit.providers.job.Job"), [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Class to handle jobs @@ -33,7 +33,7 @@ python_api_name: qiskit.providers.JobV1 ### backend - + Return the backend where this job was executed. **Return type** @@ -43,13 +43,13 @@ python_api_name: qiskit.providers.JobV1 ### cancel - + Attempt to cancel the job. ### cancelled - + Return whether the job has been cancelled. **Return type** @@ -59,7 +59,7 @@ python_api_name: qiskit.providers.JobV1 ### done - + Return whether the job has successfully run. **Return type** @@ -69,7 +69,7 @@ python_api_name: qiskit.providers.JobV1 ### in\_final\_state - + Return whether the job is in a final job state such as `DONE` or `ERROR`. **Return type** @@ -79,7 +79,7 @@ python_api_name: qiskit.providers.JobV1 ### job\_id - + Return a unique id identifying the job. **Return type** @@ -89,7 +89,7 @@ python_api_name: qiskit.providers.JobV1 ### result - + Return the results of the job. **Return type** @@ -99,7 +99,7 @@ python_api_name: qiskit.providers.JobV1 ### running - + Return whether the job is actively running. **Return type** @@ -109,7 +109,7 @@ python_api_name: qiskit.providers.JobV1 ### status - + Return the status of the job, among the values of `JobStatus`. **Return type** @@ -119,13 +119,13 @@ python_api_name: qiskit.providers.JobV1 ### submit - + Submit the job to the backend for execution. ### wait\_for\_final\_state - + Poll the job status until it progresses to a final state such as `DONE` or `ERROR`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.providers.Options.mdx b/docs/api/qiskit/dev/qiskit.providers.Options.mdx index 42d2932ed8e..5c51b7661ab 100644 --- a/docs/api/qiskit/dev/qiskit.providers.Options.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.Options.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.Options # Options - + Bases: [`Mapping`](https://docs.python.org/3/library/collections.abc.html#collections.abc.Mapping "(in Python v3.12)") Base options object @@ -75,7 +75,7 @@ python_api_name: qiskit.providers.Options ### set\_validator - + Set an optional validator for a field in the options Setting a validator enables changes to an options values to be validated for correctness when [`update_options()`](#qiskit.providers.Options.update_options "qiskit.providers.Options.update_options") is called. For example if you have a numeric field like `shots` you can specify a bounds tuple that set an upper and lower bound on the value such as: @@ -100,7 +100,7 @@ python_api_name: qiskit.providers.Options ### update\_options - + Update options with kwargs diff --git a/docs/api/qiskit/dev/qiskit.providers.Provider.mdx b/docs/api/qiskit/dev/qiskit.providers.Provider.mdx index 02196afa4cf..77f1293e95a 100644 --- a/docs/api/qiskit/dev/qiskit.providers.Provider.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.Provider.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.Provider # Provider - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Base common type for all versioned Provider abstract classes. diff --git a/docs/api/qiskit/dev/qiskit.providers.ProviderV1.mdx b/docs/api/qiskit/dev/qiskit.providers.ProviderV1.mdx index ef174ccc766..3eb0991539b 100644 --- a/docs/api/qiskit/dev/qiskit.providers.ProviderV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.ProviderV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.ProviderV1 # ProviderV1 - + Bases: [`Provider`](qiskit.providers.Provider "qiskit.providers.provider.Provider"), [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Base class for a Backend Provider. @@ -23,7 +23,7 @@ python_api_name: qiskit.providers.ProviderV1 ### backends - + Return a list of backends matching the specified filtering. **Parameters** @@ -44,7 +44,7 @@ python_api_name: qiskit.providers.ProviderV1 ### get\_backend - + Return a single backend matching the specified filtering. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.providers.QubitProperties.mdx b/docs/api/qiskit/dev/qiskit.providers.QubitProperties.mdx index 1f1aaa616e4..4092fe4c02f 100644 --- a/docs/api/qiskit/dev/qiskit.providers.QubitProperties.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.QubitProperties.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.QubitProperties # QubitProperties - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A representation of the properties of a qubit on a backend. diff --git a/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProvider.mdx b/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProvider.mdx index 280a50d201a..cd30368f678 100644 --- a/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProvider.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProvider.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProvider # BasicProvider - + Bases: [`ProviderV1`](qiskit.providers.ProviderV1 "qiskit.providers.provider.ProviderV1") Provider for test simulators. @@ -23,7 +23,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProvider ### backends - + Return a list of backends matching the specified filtering. **Parameters** @@ -44,7 +44,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProvider ### get\_backend - + Return a single backend matching the specified filtering. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProviderError.mdx b/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProviderError.mdx index 9e79c56abd9..d1a15fd1ecf 100644 --- a/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProviderError.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProviderError.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderError # qiskit.providers.basic\_provider.BasicProviderError - + Base class for errors raised by the Basic Provider. Set the error message. diff --git a/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProviderJob.mdx b/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProviderJob.mdx index 95317455f5d..f161c0a7a4d 100644 --- a/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProviderJob.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicProviderJob.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob # BasicProviderJob - + Bases: [`JobV1`](qiskit.providers.JobV1 "qiskit.providers.job.JobV1") BasicProviderJob class. @@ -31,19 +31,19 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob ### backend - + Return the instance of the backend used for this job. ### cancel - + Attempt to cancel the job. ### cancelled - + Return whether the job has been cancelled. **Return type** @@ -53,7 +53,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob ### done - + Return whether the job has successfully run. **Return type** @@ -63,7 +63,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob ### in\_final\_state - + Return whether the job is in a final job state such as `DONE` or `ERROR`. **Return type** @@ -73,7 +73,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob ### job\_id - + Return a unique id identifying the job. **Return type** @@ -83,7 +83,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob ### result - + Get job result . **Returns** @@ -97,7 +97,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob ### running - + Return whether the job is actively running. **Return type** @@ -107,7 +107,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob ### status - + Gets the status of the job by querying the Python’s future **Returns** @@ -121,7 +121,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob ### submit - + Submit the job to the backend for execution. **Raises** @@ -131,7 +131,7 @@ python_api_name: qiskit.providers.basic_provider.BasicProviderJob ### wait\_for\_final\_state - + Poll the job status until it progresses to a final state such as `DONE` or `ERROR`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicSimulator.mdx b/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicSimulator.mdx index 471a878fea2..86c9f647744 100644 --- a/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicSimulator.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.basic_provider.BasicSimulator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator # BasicSimulator - + Bases: [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.backend.BackendV2") Python implementation of a basic (non-efficient) quantum simulator. @@ -175,7 +175,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -195,7 +195,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### configuration - + Return the simulator backend configuration. **Returns** @@ -209,7 +209,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -235,7 +235,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -255,7 +255,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -275,7 +275,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### qubit\_properties - + Return QubitProperties for a given qubit. If there are no defined or the backend doesn’t support querying these details this method does not need to be implemented. @@ -299,7 +299,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### run - + Run on the backend. **Parameters** @@ -327,14 +327,14 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ```python backend_options = { - "initial_statevector": np.array([1, 0, 0, 1j]) / np.sqrt(2), + "initial_statevector": np.array([1, 0, 0, 1j]) / math.sqrt(2), } ``` ### run\_experiment - + Run an experiment (circuit) and return a single experiment result. **Parameters** @@ -372,7 +372,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. diff --git a/docs/api/qiskit/dev/qiskit.providers.convert_to_target.mdx b/docs/api/qiskit/dev/qiskit.providers.convert_to_target.mdx index b0ad803bf26..71eaaa3c310 100644 --- a/docs/api/qiskit/dev/qiskit.providers.convert_to_target.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.convert_to_target.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.providers.convert_to_target # qiskit.providers.convert\_to\_target - + Decode transpiler target from backend data set. This function generates `` Target` `` instance from intermediate legacy objects such as [`BackendProperties`](qiskit.providers.models.BackendProperties "qiskit.providers.models.BackendProperties") and [`PulseDefaults`](qiskit.providers.models.PulseDefaults "qiskit.providers.models.PulseDefaults"). These objects are usually components of the legacy [`BackendV1`](qiskit.providers.BackendV1 "qiskit.providers.BackendV1") model. diff --git a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake127QPulseV1.mdx b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake127QPulseV1.mdx index 0f062a89a73..468bafb4682 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake127QPulseV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake127QPulseV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 # Fake127QPulseV1 - + Bases: [`FakePulseBackend`](providers_fake_provider#qiskit.providers.fake_provider.FakePulseBackend "qiskit.providers.fake_provider.fake_pulse_backend.FakePulseBackend") A fake **pulse** backend with the following characteristics: @@ -68,7 +68,7 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 ### configuration - + Return the backend configuration. **Returns** @@ -82,13 +82,13 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 ### defaults - + Returns a snapshot of device defaults ### name - + Return the backend name. **Returns** @@ -102,13 +102,13 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 ### properties - + Returns a snapshot of device properties ### provider - + Return the backend Provider. **Returns** @@ -122,13 +122,13 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 ### run - + Main job in simulator ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. @@ -144,7 +144,7 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 ### status - + Return the backend status. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake1Q.mdx b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake1Q.mdx index a73e1695342..23e41c47a29 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake1Q.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake1Q.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.fake_provider.Fake1Q # Fake1Q - + Bases: [`FakeBackend`](providers_fake_provider#qiskit.providers.fake_provider.FakeBackend "qiskit.providers.fake_provider.fake_backend.FakeBackend") A fake 1Q backend. @@ -33,7 +33,7 @@ python_api_name: qiskit.providers.fake_provider.Fake1Q ### configuration - + Return the backend configuration. **Returns** @@ -47,7 +47,7 @@ python_api_name: qiskit.providers.fake_provider.Fake1Q ### name - + Return the backend name. **Returns** @@ -61,13 +61,13 @@ python_api_name: qiskit.providers.fake_provider.Fake1Q ### properties - + Return backend properties ### provider - + Return the backend Provider. **Returns** @@ -81,13 +81,13 @@ python_api_name: qiskit.providers.fake_provider.Fake1Q ### run - + Main job in simulator ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. @@ -103,7 +103,7 @@ python_api_name: qiskit.providers.fake_provider.Fake1Q ### status - + Return the backend status. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake20QV1.mdx b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake20QV1.mdx index 645e3a09e5b..48b2e05c1d2 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake20QV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake20QV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 # Fake20QV1 - + Bases: [`FakeQasmBackend`](providers_fake_provider#qiskit.providers.fake_provider.FakeQasmBackend "qiskit.providers.fake_provider.fake_qasm_backend.FakeQasmBackend") A fake backend with the following characteristics: @@ -70,7 +70,7 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 ### configuration - + Return the backend configuration. **Returns** @@ -84,7 +84,7 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 ### name - + Return the backend name. **Returns** @@ -98,13 +98,13 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 ### properties - + Returns a snapshot of device properties ### provider - + Return the backend Provider. **Returns** @@ -118,13 +118,13 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 ### run - + Main job in simulator ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. @@ -140,7 +140,7 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 ### status - + Return the backend status. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake27QPulseV1.mdx b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake27QPulseV1.mdx index a057390c1de..98dcb673c5c 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake27QPulseV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake27QPulseV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 # Fake27QPulseV1 - + Bases: [`FakePulseBackend`](providers_fake_provider#qiskit.providers.fake_provider.FakePulseBackend "qiskit.providers.fake_provider.fake_pulse_backend.FakePulseBackend") A fake **pulse** backend with the following characteristics: @@ -80,7 +80,7 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 ### configuration - + Return the backend configuration. **Returns** @@ -94,13 +94,13 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 ### defaults - + Returns a snapshot of device defaults ### name - + Return the backend name. **Returns** @@ -114,13 +114,13 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 ### properties - + Returns a snapshot of device properties ### provider - + Return the backend Provider. **Returns** @@ -134,13 +134,13 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 ### run - + Main job in simulator ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. @@ -156,7 +156,7 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 ### status - + Return the backend status. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake5QV1.mdx b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake5QV1.mdx index ce833c9c330..128888d3726 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake5QV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake5QV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 # Fake5QV1 - + Bases: [`FakeQasmBackend`](providers_fake_provider#qiskit.providers.fake_provider.FakeQasmBackend "qiskit.providers.fake_provider.fake_qasm_backend.FakeQasmBackend") A fake backend with the following characteristics: @@ -68,7 +68,7 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 ### configuration - + Return the backend configuration. **Returns** @@ -82,7 +82,7 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 ### name - + Return the backend name. **Returns** @@ -96,13 +96,13 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 ### properties - + Returns a snapshot of device properties ### provider - + Return the backend Provider. **Returns** @@ -116,13 +116,13 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 ### run - + Main job in simulator ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. @@ -138,7 +138,7 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 ### status - + Return the backend status. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake7QPulseV1.mdx b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake7QPulseV1.mdx index adfa6049838..22cb46c2f7d 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake7QPulseV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake7QPulseV1.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 # Fake7QPulseV1 - + Bases: [`FakePulseBackend`](providers_fake_provider#qiskit.providers.fake_provider.FakePulseBackend "qiskit.providers.fake_provider.fake_pulse_backend.FakePulseBackend") A fake **pulse** backend with the following characteristics: @@ -74,7 +74,7 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 ### configuration - + Return the backend configuration. **Returns** @@ -88,13 +88,13 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 ### defaults - + Returns a snapshot of device defaults ### name - + Return the backend name. **Returns** @@ -108,13 +108,13 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 ### properties - + Returns a snapshot of device properties ### provider - + Return the backend Provider. **Returns** @@ -128,13 +128,13 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 ### run - + Main job in simulator ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. @@ -150,7 +150,7 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 ### status - + Return the backend status. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse2Q.mdx b/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse2Q.mdx index e8aa4bbbd1a..63abcee692e 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse2Q.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse2Q.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q # FakeOpenPulse2Q - + Bases: [`FakeBackend`](providers_fake_provider#qiskit.providers.fake_provider.FakeBackend "qiskit.providers.fake_provider.fake_backend.FakeBackend") A fake 2 qubit backend for pulse test. @@ -38,7 +38,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q ### configuration - + Return the backend configuration. **Returns** @@ -52,13 +52,13 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q ### defaults - + Return the default pulse-related settings provided by the backend (such as gate to Schedule mappings). ### name - + Return the backend name. **Returns** @@ -72,13 +72,13 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q ### properties - + Return the measured characteristics of the backend. ### provider - + Return the backend Provider. **Returns** @@ -92,13 +92,13 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q ### run - + Main job in simulator ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. @@ -114,7 +114,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q ### status - + Return the backend status. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse3Q.mdx b/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse3Q.mdx index e3a98586568..eb114989f6a 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse3Q.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse3Q.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q # FakeOpenPulse3Q - + Bases: [`FakeBackend`](providers_fake_provider#qiskit.providers.fake_provider.FakeBackend "qiskit.providers.fake_provider.fake_backend.FakeBackend") Trivial extension of the FakeOpenPulse2Q. @@ -38,7 +38,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q ### configuration - + Return the backend configuration. **Returns** @@ -52,11 +52,11 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q ### defaults - + ### name - + Return the backend name. **Returns** @@ -70,13 +70,13 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q ### properties - + Return backend properties ### provider - + Return the backend Provider. **Returns** @@ -90,13 +90,13 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q ### run - + Main job in simulator ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. @@ -112,7 +112,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q ### status - + Return the backend status. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.fake_provider.GenericBackendV2.mdx b/docs/api/qiskit/dev/qiskit.providers.fake_provider.GenericBackendV2.mdx index eacb55952fb..c0a237f5a29 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.GenericBackendV2.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.GenericBackendV2.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 # GenericBackendV2 - + Bases: [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.backend.BackendV2") Generic [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") implementation with a configurable constructor. This class will return a [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") instance that runs on a local simulator (in the spirit of fake backends) and contains all the necessary information to test backend-interfacing components, such as the transpiler. A [`GenericBackendV2`](#qiskit.providers.fake_provider.GenericBackendV2 "qiskit.providers.fake_provider.GenericBackendV2") instance can be constructed from as little as a specified `num_qubits`, but users can additionally configure the basis gates, coupling map, ability to run dynamic circuits (control flow instructions), instruction calibrations and dtm. The remainder of the backend properties are generated by randomly sampling from default ranges extracted from historical IBM backend data. The seed for this random generation can be fixed to ensure the reproducibility of the backend output. This backend only supports gates in the standard library, if you need a more flexible backend, there is always the option to directly instantiate a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") object to use for transpilation. @@ -180,7 +180,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 ### acquire\_channel - + Return the acquisition channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -200,7 +200,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 ### control\_channel - + Return the secondary drive channel for the given qubit This is typically utilized for controlling multiqubit interactions. This channel is derived from other channels. @@ -226,7 +226,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 ### drive\_channel - + Return the drive channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -246,7 +246,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 ### measure\_channel - + Return the measure stimulus channel for the given qubit. This is required to be implemented if the backend supports Pulse scheduling. @@ -266,7 +266,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 ### qubit\_properties - + Return QubitProperties for a given qubit. If there are no defined or the backend doesn’t support querying these details this method does not need to be implemented. @@ -290,7 +290,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 ### run - + Run on the backend using a simulator. This method runs circuit jobs (an individual or a list of [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") ) and pulse jobs (an individual or a list of [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") or [`ScheduleBlock`](qiskit.pulse.ScheduleBlock "qiskit.pulse.ScheduleBlock")) using [`BasicSimulator`](qiskit.providers.basic_provider.BasicSimulator "qiskit.providers.basic_provider.BasicSimulator") or Aer simulator and returns a [`Job`](qiskit.providers.Job "qiskit.providers.Job") object. @@ -319,7 +319,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 ### set\_options - + Set the options fields for the backend This method is used to update the options of a backend. If you need to change any of the options prior to running just pass in the kwarg with the new value for the options. diff --git a/docs/api/qiskit/dev/qiskit.providers.models.BackendConfiguration.mdx b/docs/api/qiskit/dev/qiskit.providers.models.BackendConfiguration.mdx index 2b28b08a6dc..8b125357b68 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.BackendConfiguration.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.BackendConfiguration.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.BackendConfiguration # BackendConfiguration - + Bases: [`QasmBackendConfiguration`](qiskit.providers.models.QasmBackendConfiguration "qiskit.providers.models.backendconfiguration.QasmBackendConfiguration") Backwards compat shim representing an abstract backend configuration. @@ -99,7 +99,7 @@ python_api_name: qiskit.providers.models.BackendConfiguration ### from\_dict - + Create a new GateConfig object from a dictionary. **Parameters** @@ -117,7 +117,7 @@ python_api_name: qiskit.providers.models.BackendConfiguration ### to\_dict - + Return a dictionary format representation of the GateConfig. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.BackendProperties.mdx b/docs/api/qiskit/dev/qiskit.providers.models.BackendProperties.mdx index 011240d5bd5..9fbe3b6220f 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.BackendProperties.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.BackendProperties.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.BackendProperties # BackendProperties - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Class representing backend properties @@ -31,19 +31,19 @@ python_api_name: qiskit.providers.models.BackendProperties ### faulty\_gates - + Return a list of faulty gates. ### faulty\_qubits - + Return a list of faulty qubits. ### frequency - + Return the frequency of the given qubit. **Parameters** @@ -61,7 +61,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### from\_dict - + Create a new BackendProperties object from a dictionary. **Parameters** @@ -79,7 +79,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### gate\_error - + Return gate error estimates from backend properties. **Parameters** @@ -98,7 +98,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### gate\_length - + Return the duration of the gate in units of seconds. **Parameters** @@ -117,7 +117,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### gate\_property - + Return the property of the given gate. **Parameters** @@ -141,7 +141,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### is\_gate\_operational - + Return the operational status of the given gate. **Parameters** @@ -160,7 +160,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### is\_qubit\_operational - + Return the operational status of the given qubit. **Parameters** @@ -178,7 +178,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### qubit\_property - + Return the property of the given qubit. **Parameters** @@ -201,7 +201,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### readout\_error - + Return the readout error of the given qubit. **Parameters** @@ -219,7 +219,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### readout\_length - + Return the readout length \[sec] of the given qubit. **Parameters** @@ -237,7 +237,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### t1 - + Return the T1 time of the given qubit. **Parameters** @@ -255,7 +255,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### t2 - + Return the T2 time of the given qubit. **Parameters** @@ -273,7 +273,7 @@ python_api_name: qiskit.providers.models.BackendProperties ### to\_dict - + Return a dictionary format representation of the BackendProperties. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.BackendStatus.mdx b/docs/api/qiskit/dev/qiskit.providers.models.BackendStatus.mdx index 9ab339ca45d..a638839eba7 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.BackendStatus.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.BackendStatus.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.BackendStatus # BackendStatus - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Class representing Backend Status. @@ -31,7 +31,7 @@ python_api_name: qiskit.providers.models.BackendStatus ### from\_dict - + Create a new BackendStatus object from a dictionary. **Parameters** @@ -49,7 +49,7 @@ python_api_name: qiskit.providers.models.BackendStatus ### to\_dict - + Return a dictionary format representation of the BackendStatus. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.Command.mdx b/docs/api/qiskit/dev/qiskit.providers.models.Command.mdx index 3546db0a17c..dcd980d4b16 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.Command.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.Command.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.Command # Command - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Class representing a Command. @@ -32,7 +32,7 @@ python_api_name: qiskit.providers.models.Command ### from\_dict - + Create a new Command object from a dictionary. **Parameters** @@ -50,7 +50,7 @@ python_api_name: qiskit.providers.models.Command ### to\_dict - + Return a dictionary format representation of the Command. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.GateConfig.mdx b/docs/api/qiskit/dev/qiskit.providers.models.GateConfig.mdx index 9658594e7a4..3a821d33259 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.GateConfig.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.GateConfig.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.GateConfig # GateConfig - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Class representing a Gate Configuration @@ -47,7 +47,7 @@ python_api_name: qiskit.providers.models.GateConfig ### from\_dict - + Create a new GateConfig object from a dictionary. **Parameters** @@ -65,7 +65,7 @@ python_api_name: qiskit.providers.models.GateConfig ### to\_dict - + Return a dictionary format representation of the GateConfig. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.GateProperties.mdx b/docs/api/qiskit/dev/qiskit.providers.models.GateProperties.mdx index 5db2c356508..15539f94b3f 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.GateProperties.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.GateProperties.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.GateProperties # GateProperties - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Class representing a gate’s properties @@ -44,7 +44,7 @@ python_api_name: qiskit.providers.models.GateProperties ### from\_dict - + Create a new Gate object from a dictionary. **Parameters** @@ -62,7 +62,7 @@ python_api_name: qiskit.providers.models.GateProperties ### to\_dict - + Return a dictionary format representation of the BackendStatus. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.JobStatus.mdx b/docs/api/qiskit/dev/qiskit.providers.models.JobStatus.mdx index 2280c366df1..813539dd9ab 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.JobStatus.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.JobStatus.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.JobStatus # JobStatus - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Model for JobStatus. @@ -47,7 +47,7 @@ python_api_name: qiskit.providers.models.JobStatus ### from\_dict - + Create a new JobStatus object from a dictionary. **Parameters** @@ -65,7 +65,7 @@ python_api_name: qiskit.providers.models.JobStatus ### to\_dict - + Return a dictionary format representation of the JobStatus. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.Nduv.mdx b/docs/api/qiskit/dev/qiskit.providers.models.Nduv.mdx index efb427ed9a7..cbea907df1b 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.Nduv.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.Nduv.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.Nduv # Nduv - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Class representing name-date-unit-value @@ -50,7 +50,7 @@ python_api_name: qiskit.providers.models.Nduv ### from\_dict - + Create a new Nduv object from a dictionary. **Parameters** @@ -68,7 +68,7 @@ python_api_name: qiskit.providers.models.Nduv ### to\_dict - + Return a dictionary format representation of the object. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.PulseBackendConfiguration.mdx b/docs/api/qiskit/dev/qiskit.providers.models.PulseBackendConfiguration.mdx index 355537dde72..4b5312b71db 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.PulseBackendConfiguration.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.PulseBackendConfiguration.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration # PulseBackendConfiguration - + Bases: [`QasmBackendConfiguration`](qiskit.providers.models.QasmBackendConfiguration "qiskit.providers.models.backendconfiguration.QasmBackendConfiguration") Static configuration state for an OpenPulse enabled backend. This contains information about the set up of the device which can be useful for building Pulse programs. @@ -83,7 +83,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration ### acquire - + Return the acquisition channel for the given qubit. **Raises** @@ -101,7 +101,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration ### control - + Return the secondary drive channel for the given qubit – typically utilized for controlling multiqubit interactions. This channel is derived from other channels. **Parameters** @@ -123,7 +123,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration ### describe - + Return a basic description of the channel dependency. Derived channels are given weights which describe how their frames are linked to other frames. For instance, the backend could be configured with this setting: ```python @@ -159,7 +159,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration ### drive - + Return the drive channel for the given qubit. **Raises** @@ -177,7 +177,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration ### from\_dict - + Create a new GateConfig object from a dictionary. **Parameters** @@ -195,7 +195,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration ### get\_channel\_qubits - + Return a list of indices for qubits which are operated on directly by the given `channel`. **Raises** @@ -213,7 +213,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration ### get\_qubit\_channels - + Return a list of channels which operate on the given `qubit`. **Raises** @@ -231,7 +231,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration ### measure - + Return the measure stimulus channel for the given qubit. **Raises** @@ -249,7 +249,7 @@ python_api_name: qiskit.providers.models.PulseBackendConfiguration ### to\_dict - + Return a dictionary format representation of the GateConfig. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.PulseDefaults.mdx b/docs/api/qiskit/dev/qiskit.providers.models.PulseDefaults.mdx index 06fb87d348b..7348ee1c7ca 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.PulseDefaults.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.PulseDefaults.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.PulseDefaults # PulseDefaults - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Description of default settings for Pulse systems. These are instructions or settings that may be good starting points for the Pulse user. The user may modify these defaults for custom scheduling. @@ -33,7 +33,7 @@ python_api_name: qiskit.providers.models.PulseDefaults ### from\_dict - + Create a new PulseDefaults object from a dictionary. **Parameters** @@ -51,7 +51,7 @@ python_api_name: qiskit.providers.models.PulseDefaults ### to\_dict - + Return a dictionary format representation of the PulseDefaults. :returns: The dictionary form of the PulseDefaults. :rtype: dict diff --git a/docs/api/qiskit/dev/qiskit.providers.models.QasmBackendConfiguration.mdx b/docs/api/qiskit/dev/qiskit.providers.models.QasmBackendConfiguration.mdx index b02f5949f6b..d45120d9589 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.QasmBackendConfiguration.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.QasmBackendConfiguration.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.QasmBackendConfiguration # QasmBackendConfiguration - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Class representing an OpenQASM 2.0 Backend Configuration. @@ -165,7 +165,7 @@ python_api_name: qiskit.providers.models.QasmBackendConfiguration ### from\_dict - + Create a new GateConfig object from a dictionary. **Parameters** @@ -183,7 +183,7 @@ python_api_name: qiskit.providers.models.QasmBackendConfiguration ### to\_dict - + Return a dictionary format representation of the GateConfig. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.providers.models.UchannelLO.mdx b/docs/api/qiskit/dev/qiskit.providers.models.UchannelLO.mdx index a2fb30f453e..87125b6ef6c 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.UchannelLO.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.UchannelLO.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.providers.models.UchannelLO # UchannelLO - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Class representing a U Channel LO @@ -40,7 +40,7 @@ python_api_name: qiskit.providers.models.UchannelLO ### from\_dict - + Create a new UchannelLO object from a dictionary. **Parameters** @@ -58,7 +58,7 @@ python_api_name: qiskit.providers.models.UchannelLO ### to\_dict - + Return a dictionary format representation of the UChannelLO. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.pulse.InstructionScheduleMap.mdx b/docs/api/qiskit/dev/qiskit.pulse.InstructionScheduleMap.mdx index a8315ecbaa3..e4fed61027b 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.InstructionScheduleMap.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.InstructionScheduleMap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap # InstructionScheduleMap - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Mapping from [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") [`qiskit.circuit.Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") names and qubits to [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") s. In particular, the mapping is formatted as type: @@ -41,7 +41,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### add - + Add a new known instruction for the given qubits and its mapping to a pulse schedule. **Parameters** @@ -58,7 +58,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### assert\_has - + Error if the given instruction is not defined. **Parameters** @@ -73,7 +73,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### get - + Return the defined [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") or [`ScheduleBlock`](qiskit.pulse.ScheduleBlock "qiskit.pulse.ScheduleBlock") for the given instruction on the given qubits. If all keys are not specified this method returns schedule with unbound parameters. @@ -96,7 +96,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### get\_parameters - + Return the list of parameters taken by the given instruction on the given qubits. **Parameters** @@ -115,7 +115,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### has - + Is the instruction defined for the given qubits? **Parameters** @@ -134,7 +134,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### has\_custom\_gate - + Return `True` if the map has user provided instruction. **Return type** @@ -144,7 +144,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### pop - + Remove and return the defined schedule for the given instruction on the given qubits. **Parameters** @@ -165,7 +165,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### qubit\_instructions - + Return a list of the instruction names that are defined by the backend for the given qubit or qubits. **Parameters** @@ -185,7 +185,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### qubits\_with\_instruction - + Return a list of the qubits for which the given instruction is defined. Single qubit instructions return a flat list, and multiqubit instructions return a list of ordered tuples. **Parameters** @@ -207,7 +207,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### remove - + Remove the given instruction from the listing of instructions defined in self. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.Schedule.mdx b/docs/api/qiskit/dev/qiskit.pulse.Schedule.mdx index 3da9c294c8b..b69821f16e0 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.Schedule.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.Schedule.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.Schedule # Schedule - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A quantum program *schedule* with exact time constraints for its instructions, operating over all input signal *channels* and supporting special syntaxes for building. @@ -148,7 +148,7 @@ python_api_name: qiskit.pulse.Schedule ### append - + Return a new schedule with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. $$ @@ -169,12 +169,14 @@ $$ ### assign\_parameters - + Assign the parameters in this schedule according to the input. **Parameters** - * **value\_dict** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)")*\[*[*qiskit.circuit.parameterexpression.ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression")*,* [*Union*](https://docs.python.org/3/library/typing.html#typing.Union "(in Python v3.12)")*\[*[*qiskit.circuit.parameterexpression.ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression")*,* [*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")*]]*) – A mapping from Parameters to either numeric values or another Parameter expression. + * **value\_dict** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)")*\[*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression") *|*[*ParameterVector*](qiskit.circuit.ParameterVector "qiskit.circuit.ParameterVector")*, ParameterValueType | Sequence\[ParameterValueType]]*) – A mapping from parameters (parameter vectors) to either + * **values** (*numeric*) – + * **expression** (*or another Parameter*) – * **inplace** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – Set `True` to override this instance with new parameter. **Returns** @@ -183,12 +185,12 @@ $$ **Return type** - [*Schedule*](#qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule") + [Schedule](#qiskit.pulse.Schedule "qiskit.pulse.Schedule") ### ch\_duration - + Return the time of the end of the last instruction over the supplied channels. **Parameters** @@ -202,7 +204,7 @@ $$ ### ch\_start\_time - + Return the time of the start of the first instruction over the supplied channels. **Parameters** @@ -216,7 +218,7 @@ $$ ### ch\_stop\_time - + Return maximum start time over supplied channels. **Parameters** @@ -230,7 +232,7 @@ $$ ### draw - + Plot the schedule. **Parameters** @@ -274,7 +276,7 @@ $$ ### exclude - + Return a `Schedule` with only the instructions from this Schedule *failing* at least one of the provided filters. This method is the complement of py:meth:\~self.filter, so that: ```python @@ -297,7 +299,7 @@ $$ ### filter - + Return a new `Schedule` with only the instructions from this `Schedule` which pass though the provided filters; i.e. an instruction will be retained iff every function in `filter_funcs` returns `True`, the instruction occurs on a channel type contained in `channels`, the instruction type is contained in `instruction_types`, and the period over which the instruction operates is *fully* contained in one specified in `time_ranges` or `intervals`. If no arguments are provided, `self` is returned. @@ -318,7 +320,7 @@ $$ ### get\_parameters - + Get parameter object bound to this schedule by string name. Because different `Parameter` objects can have the same name, this method returns a list of `Parameter` s for the provided name. @@ -338,7 +340,7 @@ $$ ### initialize\_from - + Create new schedule object with metadata of another schedule object. **Parameters** @@ -361,7 +363,7 @@ $$ ### insert - + Return a new schedule with `schedule` inserted into `self` at `start_time`. **Parameters** @@ -378,7 +380,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -388,7 +390,7 @@ $$ ### replace - + Return a `Schedule` with the `old` instruction replaced with a `new` instruction. The replacement matching is based on an instruction equality check. @@ -447,7 +449,7 @@ $$ ### shift - + Return a schedule shifted forward by `time`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.ScheduleBlock.mdx b/docs/api/qiskit/dev/qiskit.pulse.ScheduleBlock.mdx index c50aa36cfd0..c0f24f2a32b 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.ScheduleBlock.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.ScheduleBlock.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.ScheduleBlock # ScheduleBlock - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Time-ordered sequence of instructions with alignment context. @@ -200,7 +200,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### append - + Return a new schedule block with `block` appended to the context block. The execution time is automatically assigned when the block is converted into schedule. **Parameters** @@ -224,12 +224,14 @@ python_api_name: qiskit.pulse.ScheduleBlock ### assign\_parameters - + Assign the parameters in this schedule according to the input. **Parameters** - * **value\_dict** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)")*\[*[*qiskit.circuit.parameterexpression.ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression")*,* [*Union*](https://docs.python.org/3/library/typing.html#typing.Union "(in Python v3.12)")*\[*[*qiskit.circuit.parameterexpression.ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression")*,* [*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")*]]*) – A mapping from Parameters to either numeric values or another Parameter expression. + * **value\_dict** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)")*\[*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression") *|*[*ParameterVector*](qiskit.circuit.ParameterVector "qiskit.circuit.ParameterVector")*, ParameterValueType | Sequence\[ParameterValueType]]*) – A mapping from parameters (parameter vectors) to either numeric values + * **values**\*\*)\*\* (*(*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)") *of numeric*) – + * **expression** (*or another parameter*) – * **inplace** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – Set `True` to override this instance with new parameter. **Returns** @@ -242,12 +244,12 @@ python_api_name: qiskit.pulse.ScheduleBlock **Return type** - [*ScheduleBlock*](#qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock") + [ScheduleBlock](#qiskit.pulse.ScheduleBlock "qiskit.pulse.ScheduleBlock") ### assign\_references - + Assign schedules to references. It is only capable of assigning a schedule block to immediate references which are directly referred within the current scope. Let’s see following example: @@ -305,7 +307,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### ch\_duration - + Return the time of the end of the last instruction over the supplied channels. **Parameters** @@ -319,7 +321,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### draw - + Plot the schedule. **Parameters** @@ -363,7 +365,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### exclude - + Return a new `ScheduleBlock` with only the instructions from this `ScheduleBlock` *failing* at least one of the provided filters. This method is the complement of py:meth:\~self.filter, so that: ```python @@ -388,7 +390,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### filter - + Return a new `ScheduleBlock` with only the instructions from this `ScheduleBlock` which pass though the provided filters; i.e. an instruction will be retained if every function in `filter_funcs` returns `True`, the instruction occurs on a channel type contained in `channels`, and the instruction type is contained in `instruction_types`. @@ -411,7 +413,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### get\_parameters - + Get parameter object bound to this schedule by string name. Note that we can define different parameter objects with the same name, because these different objects are identified by their unique uuid. For example, @@ -449,7 +451,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### initialize\_from - + Create new schedule object with metadata of another schedule object. **Parameters** @@ -472,7 +474,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -482,7 +484,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### is\_referenced - + Return True iff the current schedule block contains reference to subroutine. **Return type** @@ -492,7 +494,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### is\_schedulable - + Return `True` if all durations are assigned. **Return type** @@ -502,7 +504,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### replace - + Return a `ScheduleBlock` with the `old` component replaced with a `new` component. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.channels.AcquireChannel.mdx b/docs/api/qiskit/dev/qiskit.pulse.channels.AcquireChannel.mdx index 59eea695561..6fd4d75226a 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.AcquireChannel.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.AcquireChannel.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.channels.AcquireChannel # AcquireChannel - + Bases: [`Channel`](pulse#qiskit.pulse.channels.Channel "qiskit.pulse.channels.Channel") Acquire channels are used to collect data. @@ -49,7 +49,7 @@ python_api_name: qiskit.pulse.channels.AcquireChannel ### is\_parameterized - + Return True iff the channel is parameterized. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.pulse.channels.ControlChannel.mdx b/docs/api/qiskit/dev/qiskit.pulse.channels.ControlChannel.mdx index be218b0ed40..5e8c4e1371b 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.ControlChannel.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.ControlChannel.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.channels.ControlChannel # ControlChannel - + Bases: `PulseChannel` Control channels provide supplementary control over the qubit to the drive channel. These are often associated with multi-qubit gate operations. They may not map trivially to a particular qubit index. @@ -49,7 +49,7 @@ python_api_name: qiskit.pulse.channels.ControlChannel ### is\_parameterized - + Return True iff the channel is parameterized. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.pulse.channels.DriveChannel.mdx b/docs/api/qiskit/dev/qiskit.pulse.channels.DriveChannel.mdx index daf5e47a86d..97645c52286 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.DriveChannel.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.DriveChannel.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.channels.DriveChannel # DriveChannel - + Bases: `PulseChannel` Drive channels transmit signals to qubits which enact gate operations. @@ -49,7 +49,7 @@ python_api_name: qiskit.pulse.channels.DriveChannel ### is\_parameterized - + Return True iff the channel is parameterized. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.pulse.channels.MeasureChannel.mdx b/docs/api/qiskit/dev/qiskit.pulse.channels.MeasureChannel.mdx index 9478f4e675c..50283490259 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.MeasureChannel.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.MeasureChannel.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.channels.MeasureChannel # MeasureChannel - + Bases: `PulseChannel` Measure channels transmit measurement stimulus pulses for readout. @@ -49,7 +49,7 @@ python_api_name: qiskit.pulse.channels.MeasureChannel ### is\_parameterized - + Return True iff the channel is parameterized. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.pulse.channels.MemorySlot.mdx b/docs/api/qiskit/dev/qiskit.pulse.channels.MemorySlot.mdx index b32fce3b2ca..103c9b543f7 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.MemorySlot.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.MemorySlot.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.channels.MemorySlot # MemorySlot - + Bases: `ClassicalIOChannel` Memory slot channels represent classical memory storage. @@ -49,7 +49,7 @@ python_api_name: qiskit.pulse.channels.MemorySlot ### is\_parameterized - + Return True iff the channel is parameterized. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.pulse.channels.RegisterSlot.mdx b/docs/api/qiskit/dev/qiskit.pulse.channels.RegisterSlot.mdx index 4745c5eb402..d1988eaaed2 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.RegisterSlot.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.RegisterSlot.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.channels.RegisterSlot # RegisterSlot - + Bases: `ClassicalIOChannel` Classical resister slot channels represent classical registers (low-latency classical memory). @@ -49,7 +49,7 @@ python_api_name: qiskit.pulse.channels.RegisterSlot ### is\_parameterized - + Return True iff the channel is parameterized. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.pulse.channels.SnapshotChannel.mdx b/docs/api/qiskit/dev/qiskit.pulse.channels.SnapshotChannel.mdx index 77aacde96e8..7af9657159c 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.SnapshotChannel.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.SnapshotChannel.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.channels.SnapshotChannel # SnapshotChannel - + Bases: `ClassicalIOChannel` Snapshot channels are used to specify instructions for simulators. @@ -45,7 +45,7 @@ python_api_name: qiskit.pulse.channels.SnapshotChannel ### is\_parameterized - + Return True iff the channel is parameterized. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.Acquire.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.Acquire.mdx index 937eef16c81..40152efb3cd 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.Acquire.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.Acquire.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.Acquire # Acquire - + Bases: [`Instruction`](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") The Acquire instruction is used to trigger the ADC associated with a particular qubit; e.g. instantiated with AcquireChannel(0), the Acquire command will trigger data collection for the channel associated with qubit 0 readout. This instruction also provides acquisition metadata: @@ -127,7 +127,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -146,7 +146,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -160,7 +160,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -174,7 +174,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -188,7 +188,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -208,7 +208,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -218,7 +218,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.Delay.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.Delay.mdx index 9c8bbcf8cd4..87006b5eed6 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.Delay.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.Delay.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.Delay # Delay - + Bases: [`Instruction`](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") A blocking instruction with no other effect. The delay is used for aligning and scheduling other instructions. @@ -101,7 +101,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -120,7 +120,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -134,7 +134,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -148,7 +148,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -162,7 +162,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -182,7 +182,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -192,7 +192,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.Play.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.Play.mdx index a86a9e211a8..97589599589 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.Play.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.Play.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.Play # Play - + Bases: [`Instruction`](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") This instruction is responsible for applying a pulse on a channel. @@ -95,7 +95,7 @@ python_api_name: qiskit.pulse.instructions.Play ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -114,7 +114,7 @@ python_api_name: qiskit.pulse.instructions.Play ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -128,7 +128,7 @@ python_api_name: qiskit.pulse.instructions.Play ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -142,7 +142,7 @@ python_api_name: qiskit.pulse.instructions.Play ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -156,7 +156,7 @@ python_api_name: qiskit.pulse.instructions.Play ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -176,7 +176,7 @@ python_api_name: qiskit.pulse.instructions.Play ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -186,7 +186,7 @@ python_api_name: qiskit.pulse.instructions.Play ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.Reference.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.Reference.mdx index 05f08b79a86..742d0f6dc98 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.Reference.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.Reference.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.Reference # Reference - + Bases: [`Instruction`](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") Pulse compiler directive that refers to a subroutine. @@ -100,7 +100,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -119,7 +119,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -133,7 +133,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -147,7 +147,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -161,7 +161,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -181,7 +181,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -191,7 +191,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.RelativeBarrier.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.RelativeBarrier.mdx index 5201930054a..e28738bc151 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.RelativeBarrier.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.RelativeBarrier.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier # RelativeBarrier - + Bases: `Directive` Pulse `RelativeBarrier` directive. @@ -82,7 +82,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -101,7 +101,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -115,7 +115,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -129,7 +129,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -143,7 +143,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -163,7 +163,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -173,7 +173,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.SetFrequency.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.SetFrequency.mdx index 32b215e6ff4..b0e64446c1c 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.SetFrequency.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.SetFrequency.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.SetFrequency # SetFrequency - + Bases: [`Instruction`](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") Set the channel frequency. This instruction operates on `PulseChannel` s. A `PulseChannel` creates pulses of the form @@ -103,7 +103,7 @@ $$ ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -122,7 +122,7 @@ $$ ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -136,7 +136,7 @@ $$ ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -150,7 +150,7 @@ $$ ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -164,7 +164,7 @@ $$ ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -184,7 +184,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -194,7 +194,7 @@ $$ ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.SetPhase.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.SetPhase.mdx index 94c07d5dfe8..e853352dcc0 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.SetPhase.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.SetPhase.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.SetPhase # SetPhase - + Bases: [`Instruction`](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") The set phase instruction sets the phase of the proceeding pulses on that channel to `phase` radians. @@ -101,7 +101,7 @@ $$ ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -120,7 +120,7 @@ $$ ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -134,7 +134,7 @@ $$ ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -148,7 +148,7 @@ $$ ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -162,7 +162,7 @@ $$ ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -182,7 +182,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -192,7 +192,7 @@ $$ ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftFrequency.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftFrequency.mdx index 63dda39e7e1..db694b4a08d 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftFrequency.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftFrequency.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency # ShiftFrequency - + Bases: [`Instruction`](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") Shift the channel frequency away from the current frequency. @@ -93,7 +93,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -112,7 +112,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -126,7 +126,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -140,7 +140,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -154,7 +154,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -174,7 +174,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -184,7 +184,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftPhase.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftPhase.mdx index 6c86ecaaecf..e274c85b446 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftPhase.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftPhase.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.ShiftPhase # ShiftPhase - + Bases: [`Instruction`](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") The shift phase instruction updates the modulation phase of proceeding pulses played on the same [`Channel`](pulse#qiskit.pulse.channels.Channel "qiskit.pulse.channels.Channel"). It is a relative increase in phase determined by the `phase` operand. @@ -105,7 +105,7 @@ $$ ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -124,7 +124,7 @@ $$ ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -138,7 +138,7 @@ $$ ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -152,7 +152,7 @@ $$ ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -166,7 +166,7 @@ $$ ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -186,7 +186,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -196,7 +196,7 @@ $$ ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.Snapshot.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.Snapshot.mdx index 7ac79aab84d..6c70fcc1f8d 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.Snapshot.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.Snapshot.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot # Snapshot - + Bases: [`Instruction`](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") An instruction targeted for simulators, to capture a moment in the simulation. @@ -99,7 +99,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -118,7 +118,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -132,7 +132,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -146,7 +146,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -160,7 +160,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -180,7 +180,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -190,7 +190,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.instructions.TimeBlockade.mdx b/docs/api/qiskit/dev/qiskit.pulse.instructions.TimeBlockade.mdx index 1229693e6e2..40a124309c7 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.TimeBlockade.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.TimeBlockade.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade # TimeBlockade - + Bases: `Directive` Pulse `TimeBlockade` directive. @@ -118,7 +118,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### append - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted at the maximum time over all channels shared between `self` and `schedule`. **Parameters** @@ -137,7 +137,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -151,7 +151,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -165,7 +165,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -179,7 +179,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -199,7 +199,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -209,7 +209,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### shift - + Return a new schedule shifted forward by time. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Constant_class.rst.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Constant_class.rst.mdx index 44cf96b6ba3..24b7151e057 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Constant_class.rst.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Constant_class.rst.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.library.Constant # Constant - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A simple constant pulse, with an amplitude value and a duration: diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Cos_class.rst.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Cos_class.rst.mdx index 4df4802b4f8..9da7aa20fd6 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Cos_class.rst.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Cos_class.rst.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.Cos # qiskit.pulse.library.Cos - + A cosine pulse. The envelope of the pulse is given by: diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Drag_class.rst.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Drag_class.rst.mdx index 88bce445bfe..788de57c35b 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Drag_class.rst.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Drag_class.rst.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.library.Drag # Drag - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") The Derivative Removal by Adiabatic Gate (DRAG) pulse is a standard Gaussian pulse with an additional Gaussian derivative component and lifting applied. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianDeriv.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianDeriv.mdx index 8abe122a453..13eefd7be28 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianDeriv.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianDeriv.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.GaussianDeriv # qiskit.pulse.library.GaussianDeriv - + An unnormalized Gaussian derivative pulse. The Gaussian function is centered around the halfway point of the pulse, and the envelope of the pulse is given by: diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquare.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquare.mdx index 5430085bc05..0d0038642b5 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquare.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquare.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.library.GaussianSquare # GaussianSquare - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A square pulse with a Gaussian shaped risefall on both sides lifted such that its first sample is zero. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquareDrag.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquareDrag.mdx index 58c96ed2e20..a931b032f03 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquareDrag.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquareDrag.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.GaussianSquareDrag # qiskit.pulse.library.GaussianSquareDrag - + A square pulse with a Drag shaped rise and fall This pulse shape is similar to [`GaussianSquare`](qiskit.pulse.library.GaussianSquare "qiskit.pulse.library.GaussianSquare") but uses [`Drag`](qiskit.pulse.library.Drag_class.rst#qiskit.pulse.library.Drag "qiskit.pulse.library.Drag") for its rise and fall instead of [`Gaussian`](qiskit.pulse.library.Gaussian_class.rst#qiskit.pulse.library.Gaussian "qiskit.pulse.library.Gaussian"). The addition of the DRAG component of the rise and fall is sometimes helpful in suppressing the spectral content of the pulse at frequencies near to, but slightly offset from, the fundamental frequency of the drive. When there is a spectator qubit close in frequency to the fundamental frequency, suppressing the drive at the spectator’s frequency can help avoid unwanted excitation of the spectator. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Gaussian_class.rst.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Gaussian_class.rst.mdx index 381b943c59d..9360d2a3e3e 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Gaussian_class.rst.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Gaussian_class.rst.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.library.Gaussian # Gaussian - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A lifted and truncated pulse envelope shaped according to the Gaussian function whose mean is centered at the center of the pulse (duration / 2): diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Sawtooth_class.rst.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Sawtooth_class.rst.mdx index d3305fb92de..7a01d01e3c0 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Sawtooth_class.rst.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Sawtooth_class.rst.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.Sawtooth # qiskit.pulse.library.Sawtooth - + A sawtooth pulse. The envelope of the pulse is given by: diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.SechDeriv.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.SechDeriv.mdx index 8a31bd86d42..42343e3e693 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.SechDeriv.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.SechDeriv.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.SechDeriv # qiskit.pulse.library.SechDeriv - + An unnormalized sech derivative pulse. The sech function is centered around the halfway point of the pulse, and the envelope of the pulse is given by: diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Sech_fun.rst.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Sech_fun.rst.mdx index e53f1a8a035..ef3a34ed367 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Sech_fun.rst.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Sech_fun.rst.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.Sech # qiskit.pulse.library.Sech - + An unnormalized sech pulse. The sech function is centered around the halfway point of the pulse, and the envelope of the pulse is given by: diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Sin_class.rst.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Sin_class.rst.mdx index 51ea251e524..f2b3254398e 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Sin_class.rst.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Sin_class.rst.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.Sin # qiskit.pulse.library.Sin - + A sinusoidal pulse. The envelope of the pulse is given by: diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Square_fun.rst.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Square_fun.rst.mdx index aefe6140c67..0519777e35d 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Square_fun.rst.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Square_fun.rst.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.Square # qiskit.pulse.library.Square - + A square wave pulse. The envelope of the pulse is given by: diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.SymbolicPulse.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.SymbolicPulse.mdx index 09609246ee6..0870d7433e3 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.SymbolicPulse.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.SymbolicPulse.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.library.SymbolicPulse # SymbolicPulse - + Bases: `Pulse` The pulse representation model with parameters and symbolic expressions. @@ -172,7 +172,7 @@ $$ ### draw - + Plot the interpolated envelope of pulse. **Parameters** @@ -208,7 +208,7 @@ $$ ### get\_waveform - + Return a Waveform with samples filled according to the formula that the pulse represents and the parameter values it contains. Since the returned array is a discretized time series of the continuous function, this method uses a midpoint sampler. For `duration`, return: @@ -233,7 +233,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -243,7 +243,7 @@ $$ ### validate\_parameters - + Validate parameters. **Raises** diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Triangle_class.rst.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Triangle_class.rst.mdx index 936f0af761d..4e28fef3c29 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Triangle_class.rst.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Triangle_class.rst.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.Triangle # qiskit.pulse.library.Triangle - + A triangle wave pulse. The envelope of the pulse is given by: diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Waveform.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Waveform.mdx index df52c706671..e655582fb44 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Waveform.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Waveform.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.library.Waveform # Waveform - + Bases: `Pulse` A pulse specified completely by complex-valued samples; each sample is played for the duration of the backend cycle-time, dt. @@ -58,7 +58,7 @@ python_api_name: qiskit.pulse.library.Waveform ### draw - + Plot the interpolated envelope of pulse. **Parameters** @@ -94,7 +94,7 @@ python_api_name: qiskit.pulse.library.Waveform ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.gaussian_square_echo.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.gaussian_square_echo.mdx index 64f096a6103..fec1207f46d 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.gaussian_square_echo.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.gaussian_square_echo.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.pulse.library.gaussian_square_echo # qiskit.pulse.library.gaussian\_square\_echo - + An echoed Gaussian square pulse with an active tone overlaid on it. The Gaussian Square Echo pulse is composed of three pulses. First, a Gaussian Square pulse $f_{echo}(x)$ with amplitude `amp` and phase `angle` playing for half duration, followed by a second Gaussian Square pulse $-f_{echo}(x)$ with opposite amplitude and same phase playing for the rest of the duration. Third a Gaussian Square pulse $f_{active}(x)$ with amplitude `active_amp` and phase `active_angle` playing for the entire duration. The Gaussian Square Echo pulse $g_e()$ can be written as: diff --git a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignEquispaced.mdx b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignEquispaced.mdx index d2342aef421..f79b3a4830c 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignEquispaced.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignEquispaced.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.transforms.AlignEquispaced # AlignEquispaced - + Bases: [`AlignmentKind`](pulse#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind") Align instructions with equispaced interval within a specified duration. @@ -37,7 +37,7 @@ python_api_name: qiskit.pulse.transforms.AlignEquispaced ### align - + Reallocate instructions according to the policy. Only top-level sub-schedules are aligned. If sub-schedules are nested, nested schedules are not recursively aligned. diff --git a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignFunc.mdx b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignFunc.mdx index 316aff5d4bc..5c1f152b174 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignFunc.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignFunc.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.transforms.AlignFunc # AlignFunc - + Bases: [`AlignmentKind`](pulse#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind") Allocate instructions at position specified by callback function. @@ -57,7 +57,7 @@ python_api_name: qiskit.pulse.transforms.AlignFunc ### align - + Reallocate instructions according to the policy. Only top-level sub-schedules are aligned. If sub-schedules are nested, nested schedules are not recursively aligned. diff --git a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignLeft.mdx b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignLeft.mdx index f2d5d124b53..df2fa096784 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignLeft.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignLeft.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.transforms.AlignLeft # AlignLeft - + Bases: [`AlignmentKind`](pulse#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind") Align instructions in as-soon-as-possible manner. @@ -27,7 +27,7 @@ python_api_name: qiskit.pulse.transforms.AlignLeft ### align - + Reallocate instructions according to the policy. Only top-level sub-schedules are aligned. If sub-schedules are nested, nested schedules are not recursively aligned. diff --git a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignRight.mdx b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignRight.mdx index 3b3c1d1c3fe..2bd00592d67 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignRight.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignRight.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.transforms.AlignRight # AlignRight - + Bases: [`AlignmentKind`](pulse#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind") Align instructions in as-late-as-possible manner. @@ -27,7 +27,7 @@ python_api_name: qiskit.pulse.transforms.AlignRight ### align - + Reallocate instructions according to the policy. Only top-level sub-schedules are aligned. If sub-schedules are nested, nested schedules are not recursively aligned. diff --git a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignSequential.mdx b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignSequential.mdx index ff9603b47bc..87c1814b854 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignSequential.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.transforms.AlignSequential.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.pulse.transforms.AlignSequential # AlignSequential - + Bases: [`AlignmentKind`](pulse#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind") Align instructions sequentially. @@ -27,7 +27,7 @@ python_api_name: qiskit.pulse.transforms.AlignSequential ### align - + Reallocate instructions according to the policy. Only top-level sub-schedules are aligned. If sub-schedules are nested, nested schedules are not recursively aligned. diff --git a/docs/api/qiskit/dev/qiskit.qobj.GateCalibration.mdx b/docs/api/qiskit/dev/qiskit.qobj.GateCalibration.mdx index 2e9ed79135f..fef5ffc8eb0 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.GateCalibration.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.GateCalibration.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.GateCalibration # GateCalibration - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Each calibration specifies a unique gate by name, qubits and params, and contains the Pulse instructions to implement it. @@ -26,7 +26,7 @@ python_api_name: qiskit.qobj.GateCalibration ### from\_dict - + Create a new GateCalibration object from a dictionary. **Parameters** @@ -44,7 +44,7 @@ python_api_name: qiskit.qobj.GateCalibration ### to\_dict - + Return a dictionary format representation of the Gate Calibration. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.PulseLibraryItem.mdx b/docs/api/qiskit/dev/qiskit.qobj.PulseLibraryItem.mdx index 3c861da5b59..c15bb99ad28 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.PulseLibraryItem.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.PulseLibraryItem.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.PulseLibraryItem # PulseLibraryItem - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") An item in a pulse library. @@ -24,7 +24,7 @@ python_api_name: qiskit.qobj.PulseLibraryItem ### from\_dict - + Create a new PulseLibraryItem object from a dictionary. **Parameters** @@ -42,7 +42,7 @@ python_api_name: qiskit.qobj.PulseLibraryItem ### to\_dict - + Return a dictionary format representation of the pulse library item. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.PulseQobj.mdx b/docs/api/qiskit/dev/qiskit.qobj.PulseQobj.mdx index 48281552fd3..c29ec1e2479 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.PulseQobj.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.PulseQobj.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.PulseQobj # PulseQobj - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A Pulse Qobj. @@ -28,7 +28,7 @@ python_api_name: qiskit.qobj.PulseQobj ### from\_dict - + Create a new PulseQobj object from a dictionary. **Parameters** @@ -46,7 +46,7 @@ python_api_name: qiskit.qobj.PulseQobj ### to\_dict - + Return a dictionary format representation of the Pulse Qobj. Note this dict is not in the json wire format expected by IBMQ and qobj specification because complex numbers are still of type complex. Also this may contain native numpy arrays. When serializing this output for use with IBMQ you can leverage a json encoder that converts these as expected. For example: diff --git a/docs/api/qiskit/dev/qiskit.qobj.PulseQobjConfig.mdx b/docs/api/qiskit/dev/qiskit.qobj.PulseQobjConfig.mdx index 1e39829162b..d9dabf14ab1 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.PulseQobjConfig.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.PulseQobjConfig.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.PulseQobjConfig # PulseQobjConfig - + Bases: `QobjDictField` A configuration for a Pulse Qobj. @@ -34,7 +34,7 @@ python_api_name: qiskit.qobj.PulseQobjConfig ### from\_dict - + Create a new PulseQobjConfig object from a dictionary. **Parameters** @@ -52,7 +52,7 @@ python_api_name: qiskit.qobj.PulseQobjConfig ### to\_dict - + Return a dictionary format representation of the Pulse Qobj config. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.PulseQobjExperiment.mdx b/docs/api/qiskit/dev/qiskit.qobj.PulseQobjExperiment.mdx index e0ab1236ffc..e041d4fc7c2 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.PulseQobjExperiment.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.PulseQobjExperiment.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.PulseQobjExperiment # PulseQobjExperiment - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A Pulse Qobj Experiment. @@ -27,7 +27,7 @@ python_api_name: qiskit.qobj.PulseQobjExperiment ### from\_dict - + Create a new PulseQobjExperiment object from a dictionary. **Parameters** @@ -45,7 +45,7 @@ python_api_name: qiskit.qobj.PulseQobjExperiment ### to\_dict - + Return a dictionary format representation of the Experiment. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.PulseQobjExperimentConfig.mdx b/docs/api/qiskit/dev/qiskit.qobj.PulseQobjExperimentConfig.mdx index fe8d00a412d..121045a2af4 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.PulseQobjExperimentConfig.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.PulseQobjExperimentConfig.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.PulseQobjExperimentConfig # PulseQobjExperimentConfig - + Bases: `QobjDictField` A config for a single Pulse experiment in the qobj. @@ -25,7 +25,7 @@ python_api_name: qiskit.qobj.PulseQobjExperimentConfig ### from\_dict - + Create a new QobjHeader object from a dictionary. **Parameters** @@ -43,7 +43,7 @@ python_api_name: qiskit.qobj.PulseQobjExperimentConfig ### to\_dict - + Return a dictionary format representation of the OpenQASM 2 Qobj. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.PulseQobjInstruction.mdx b/docs/api/qiskit/dev/qiskit.qobj.PulseQobjInstruction.mdx index 6e7311496de..c32733c9536 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.PulseQobjInstruction.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.PulseQobjInstruction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.PulseQobjInstruction # PulseQobjInstruction - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A class representing a single instruction in an PulseQobj Experiment. @@ -39,7 +39,7 @@ python_api_name: qiskit.qobj.PulseQobjInstruction ### from\_dict - + Create a new PulseQobjExperimentConfig object from a dictionary. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.qobj.PulseQobjInstruction ### to\_dict - + Return a dictionary format representation of the Instruction. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.QasmExperimentCalibrations.mdx b/docs/api/qiskit/dev/qiskit.qobj.QasmExperimentCalibrations.mdx index 51daab0aad3..b83806a0b12 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.QasmExperimentCalibrations.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.QasmExperimentCalibrations.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.QasmExperimentCalibrations # QasmExperimentCalibrations - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A container for any calibrations data. The gates attribute contains a list of GateCalibrations. @@ -23,7 +23,7 @@ python_api_name: qiskit.qobj.QasmExperimentCalibrations ### from\_dict - + Create a new GateCalibration object from a dictionary. **Parameters** @@ -41,7 +41,7 @@ python_api_name: qiskit.qobj.QasmExperimentCalibrations ### to\_dict - + Return a dictionary format representation of the calibrations. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.QasmQobj.mdx b/docs/api/qiskit/dev/qiskit.qobj.QasmQobj.mdx index 97e3e7c6b74..a17354a959f 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.QasmQobj.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.QasmQobj.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.QasmQobj # QasmQobj - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") An OpenQASM 2 Qobj. @@ -28,7 +28,7 @@ python_api_name: qiskit.qobj.QasmQobj ### from\_dict - + Create a new QASMQobj object from a dictionary. **Parameters** @@ -46,7 +46,7 @@ python_api_name: qiskit.qobj.QasmQobj ### to\_dict - + Return a dictionary format representation of the OpenQASM 2 Qobj. Note this dict is not in the json wire format expected by IBM and Qobj specification because complex numbers are still of type complex. Also, this may contain native numpy arrays. When serializing this output for use with IBM systems, you can leverage a json encoder that converts these as expected. For example: diff --git a/docs/api/qiskit/dev/qiskit.qobj.QasmQobjConfig.mdx b/docs/api/qiskit/dev/qiskit.qobj.QasmQobjConfig.mdx index a83386c8595..d8b52225117 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.QasmQobjConfig.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.QasmQobjConfig.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.QasmQobjConfig # QasmQobjConfig - + Bases: [`SimpleNamespace`](https://docs.python.org/3/library/types.html#types.SimpleNamespace "(in Python v3.12)") A configuration for an OpenQASM 2 Qobj. @@ -36,7 +36,7 @@ python_api_name: qiskit.qobj.QasmQobjConfig ### from\_dict - + Create a new QasmQobjConfig object from a dictionary. **Parameters** @@ -54,7 +54,7 @@ python_api_name: qiskit.qobj.QasmQobjConfig ### to\_dict - + Return a dictionary format representation of the OpenQASM 2 Qobj config. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.QasmQobjExperiment.mdx b/docs/api/qiskit/dev/qiskit.qobj.QasmQobjExperiment.mdx index f519d668d45..a03993a76fb 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.QasmQobjExperiment.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.QasmQobjExperiment.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.QasmQobjExperiment # QasmQobjExperiment - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") An OpenQASM 2 Qobj Experiment. @@ -27,7 +27,7 @@ python_api_name: qiskit.qobj.QasmQobjExperiment ### from\_dict - + Create a new QasmQobjExperiment object from a dictionary. **Parameters** @@ -45,7 +45,7 @@ python_api_name: qiskit.qobj.QasmQobjExperiment ### to\_dict - + Return a dictionary format representation of the Experiment. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.QasmQobjExperimentConfig.mdx b/docs/api/qiskit/dev/qiskit.qobj.QasmQobjExperimentConfig.mdx index 306b35d7ec4..071b57808a0 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.QasmQobjExperimentConfig.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.QasmQobjExperimentConfig.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.QasmQobjExperimentConfig # QasmQobjExperimentConfig - + Bases: `QobjDictField` Configuration for a single OpenQASM 2 experiment in the qobj. @@ -24,7 +24,7 @@ python_api_name: qiskit.qobj.QasmQobjExperimentConfig ### from\_dict - + Create a new QobjHeader object from a dictionary. **Parameters** @@ -42,7 +42,7 @@ python_api_name: qiskit.qobj.QasmQobjExperimentConfig ### to\_dict - + Return a dictionary format representation of the OpenQASM 2 Qobj. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.QasmQobjInstruction.mdx b/docs/api/qiskit/dev/qiskit.qobj.QasmQobjInstruction.mdx index 42a17616c2d..649b5b02ce9 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.QasmQobjInstruction.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.QasmQobjInstruction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.QasmQobjInstruction # QasmQobjInstruction - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A class representing a single instruction in an QasmQobj Experiment. @@ -34,7 +34,7 @@ python_api_name: qiskit.qobj.QasmQobjInstruction ### from\_dict - + Create a new QasmQobjInstruction object from a dictionary. **Parameters** @@ -52,7 +52,7 @@ python_api_name: qiskit.qobj.QasmQobjInstruction ### to\_dict - + Return a dictionary format representation of the Instruction. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.QobjExperimentHeader.mdx b/docs/api/qiskit/dev/qiskit.qobj.QobjExperimentHeader.mdx index 4082e626c90..abd381162c9 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.QobjExperimentHeader.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.QobjExperimentHeader.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.QobjExperimentHeader # QobjExperimentHeader - + Bases: [`QobjHeader`](qiskit.qobj.QobjHeader "qiskit.qobj.common.QobjHeader") A class representing a header dictionary for a Qobj Experiment. @@ -23,7 +23,7 @@ python_api_name: qiskit.qobj.QobjExperimentHeader ### from\_dict - + Create a new QobjHeader object from a dictionary. **Parameters** @@ -41,7 +41,7 @@ python_api_name: qiskit.qobj.QobjExperimentHeader ### to\_dict - + Return a dictionary format representation of the OpenQASM 2 Qobj. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.QobjHeader.mdx b/docs/api/qiskit/dev/qiskit.qobj.QobjHeader.mdx index 8142bd93c9e..aeba574b153 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.QobjHeader.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.QobjHeader.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.QobjHeader # QobjHeader - + Bases: `QobjDictField` A class used to represent a dictionary header in Qobj objects. @@ -23,7 +23,7 @@ python_api_name: qiskit.qobj.QobjHeader ### from\_dict - + Create a new QobjHeader object from a dictionary. **Parameters** @@ -41,7 +41,7 @@ python_api_name: qiskit.qobj.QobjHeader ### to\_dict - + Return a dictionary format representation of the OpenQASM 2 Qobj. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.qobj.QobjMeasurementOption.mdx b/docs/api/qiskit/dev/qiskit.qobj.QobjMeasurementOption.mdx index 548bef359b2..73f03fd0419 100644 --- a/docs/api/qiskit/dev/qiskit.qobj.QobjMeasurementOption.mdx +++ b/docs/api/qiskit/dev/qiskit.qobj.QobjMeasurementOption.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.qobj.QobjMeasurementOption # QobjMeasurementOption - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") An individual measurement option. @@ -24,7 +24,7 @@ python_api_name: qiskit.qobj.QobjMeasurementOption ### from\_dict - + Create a new QobjMeasurementOption object from a dictionary. **Parameters** @@ -42,7 +42,7 @@ python_api_name: qiskit.qobj.QobjMeasurementOption ### to\_dict - + Return a dict format representation of the QobjMeasurementOption. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.CNOTDihedral.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.CNOTDihedral.mdx index bc78ae0d6d3..e29a4207ba6 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.CNOTDihedral.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.CNOTDihedral.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.CNOTDihedral # CNOTDihedral - + Bases: `BaseOperator`, `AdjointMixin` An N-qubit operator from the CNOT-Dihedral group. @@ -106,13 +106,13 @@ python_api_name: qiskit.quantum_info.CNOTDihedral ### adjoint - + Return the adjoint of the Operator. ### compose - + Return the operator composition with another CNOTDihedral. **Parameters** @@ -142,19 +142,19 @@ python_api_name: qiskit.quantum_info.CNOTDihedral ### conjugate - + Return the conjugate of the CNOTDihedral. ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -177,7 +177,7 @@ python_api_name: qiskit.quantum_info.CNOTDihedral ### expand - + Return the reverse-order tensor product with another CNOTDihedral. **Parameters** @@ -197,19 +197,19 @@ python_api_name: qiskit.quantum_info.CNOTDihedral ### input\_dims - + Return tuple of input dimension for specified subsystems. ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the compose of a operator with itself n times. **Parameters** @@ -231,7 +231,7 @@ python_api_name: qiskit.quantum_info.CNOTDihedral ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -255,7 +255,7 @@ python_api_name: qiskit.quantum_info.CNOTDihedral ### tensor - + Return the tensor product with another CNOTDihedral. **Parameters** @@ -279,7 +279,7 @@ python_api_name: qiskit.quantum_info.CNOTDihedral ### to\_circuit - + Return a QuantumCircuit implementing the CNOT-Dihedral element. **Returns** @@ -298,19 +298,19 @@ python_api_name: qiskit.quantum_info.CNOTDihedral ### to\_instruction - + Return a Gate instruction implementing the CNOTDihedral object. ### to\_matrix - + Convert operator to Numpy matrix. ### to\_operator - + Convert to an Operator object. **Return type** @@ -320,7 +320,7 @@ python_api_name: qiskit.quantum_info.CNOTDihedral ### transpose - + Return the transpose of the CNOTDihedral. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Chi.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Chi.mdx index e972612c2c7..8ff179734d1 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Chi.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Chi.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Chi # Chi - + Bases: `QuantumChannel` Pauli basis Chi-matrix representation of a quantum channel. @@ -87,7 +87,7 @@ $$ ### adjoint - + Return the adjoint quantum channel. @@ -97,7 +97,7 @@ $$ ### compose - + Return the operator composition with another Chi. **Parameters** @@ -127,7 +127,7 @@ $$ ### conjugate - + Return the conjugate quantum channel. @@ -137,13 +137,13 @@ $$ ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -166,7 +166,7 @@ $$ ### expand - + Return the reverse-order tensor product with another Chi. **Parameters** @@ -186,13 +186,13 @@ $$ ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_cp - + Test if Choi-matrix is completely-positive (CP) **Return type** @@ -202,7 +202,7 @@ $$ ### is\_cptp - + Return True if completely-positive trace-preserving (CPTP). **Return type** @@ -212,7 +212,7 @@ $$ ### is\_tp - + Test if a channel is trace-preserving (TP) **Return type** @@ -222,7 +222,7 @@ $$ ### is\_unitary - + Return True if QuantumChannel is a unitary channel. **Return type** @@ -232,13 +232,13 @@ $$ ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the power of the quantum channel. **Parameters** @@ -264,7 +264,7 @@ $$ ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -288,7 +288,7 @@ $$ ### tensor - + Return the tensor product with another Chi. **Parameters** @@ -312,7 +312,7 @@ $$ ### to\_instruction - + Convert to a Kraus or UnitaryGate circuit instruction. If the channel is unitary it will be added as a unitary gate, otherwise it will be added as a kraus simulator instruction. @@ -332,7 +332,7 @@ $$ ### to\_operator - + Try to convert channel to a unitary representation Operator. **Return type** @@ -342,7 +342,7 @@ $$ ### transpose - + Return the transpose quantum channel. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Choi.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Choi.mdx index eb019aacf95..1157eaaac48 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Choi.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Choi.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Choi # Choi - + Bases: `QuantumChannel` Choi-matrix representation of a Quantum Channel. @@ -95,7 +95,7 @@ $$ ### adjoint - + Return the adjoint quantum channel. @@ -109,7 +109,7 @@ $$ ### compose - + Return the operator composition with another Choi. **Parameters** @@ -139,7 +139,7 @@ $$ ### conjugate - + Return the conjugate quantum channel. @@ -149,13 +149,13 @@ $$ ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -178,7 +178,7 @@ $$ ### expand - + Return the reverse-order tensor product with another Choi. **Parameters** @@ -198,13 +198,13 @@ $$ ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_cp - + Test if Choi-matrix is completely-positive (CP) **Return type** @@ -214,7 +214,7 @@ $$ ### is\_cptp - + Return True if completely-positive trace-preserving (CPTP). **Return type** @@ -224,7 +224,7 @@ $$ ### is\_tp - + Test if a channel is trace-preserving (TP) **Return type** @@ -234,7 +234,7 @@ $$ ### is\_unitary - + Return True if QuantumChannel is a unitary channel. **Return type** @@ -244,13 +244,13 @@ $$ ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the power of the quantum channel. **Parameters** @@ -276,7 +276,7 @@ $$ ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -300,7 +300,7 @@ $$ ### tensor - + Return the tensor product with another Choi. **Parameters** @@ -324,7 +324,7 @@ $$ ### to\_instruction - + Convert to a Kraus or UnitaryGate circuit instruction. If the channel is unitary it will be added as a unitary gate, otherwise it will be added as a kraus simulator instruction. @@ -344,7 +344,7 @@ $$ ### to\_operator - + Try to convert channel to a unitary representation Operator. **Return type** @@ -354,7 +354,7 @@ $$ ### transpose - + Return the transpose quantum channel. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Clifford.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Clifford.mdx index ce8f4e92209..eb6b091ef98 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Clifford.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Clifford.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Clifford # Clifford - + Bases: `BaseOperator`, `AdjointMixin`, [`Operation`](qiskit.circuit.Operation "qiskit.circuit.operation.Operation") An N-qubit unitary operator from the Clifford group. @@ -174,13 +174,13 @@ python_api_name: qiskit.quantum_info.Clifford ### adjoint - + Return the adjoint of the Operator. ### compose - + Return the operator composition with another Clifford. **Parameters** @@ -210,19 +210,19 @@ python_api_name: qiskit.quantum_info.Clifford ### conjugate - + Return the conjugate of the Clifford. ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -245,7 +245,7 @@ python_api_name: qiskit.quantum_info.Clifford ### expand - + Return the reverse-order tensor product with another Clifford. **Parameters** @@ -265,7 +265,7 @@ python_api_name: qiskit.quantum_info.Clifford ### from\_circuit - + Initialize from a QuantumCircuit or Instruction. **Parameters** @@ -287,13 +287,13 @@ python_api_name: qiskit.quantum_info.Clifford ### from\_dict - + Load a Clifford from a dictionary ### from\_label - + Return a tensor product of single-qubit Clifford gates. **Parameters** @@ -341,7 +341,7 @@ python_api_name: qiskit.quantum_info.Clifford ### from\_linear\_function - + Create a Clifford from a Linear Function. If the linear function is represented by a nxn binary invertible matrix A, then the corresponding Clifford has symplectic matrix \[\[A^t, 0], \[0, A^\{-1}]]. @@ -361,7 +361,7 @@ python_api_name: qiskit.quantum_info.Clifford ### from\_matrix - + Create a Clifford from a unitary matrix. Note that this function takes exponentially long time w\.r.t. the number of qubits. @@ -385,7 +385,7 @@ python_api_name: qiskit.quantum_info.Clifford ### from\_operator - + Create a Clifford from a operator. Note that this function takes exponentially long time w\.r.t. the number of qubits. @@ -409,7 +409,7 @@ python_api_name: qiskit.quantum_info.Clifford ### from\_permutation - + Create a Clifford from a PermutationGate. **Parameters** @@ -427,25 +427,25 @@ python_api_name: qiskit.quantum_info.Clifford ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_unitary - + Return True if the Clifford table is valid. ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the compose of a operator with itself n times. **Parameters** @@ -467,7 +467,7 @@ python_api_name: qiskit.quantum_info.Clifford ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -491,7 +491,7 @@ python_api_name: qiskit.quantum_info.Clifford ### tensor - + Return the tensor product with another Clifford. **Parameters** @@ -515,7 +515,7 @@ python_api_name: qiskit.quantum_info.Clifford ### to\_circuit - + Return a QuantumCircuit implementing the Clifford. For N \<= 3 qubits this is based on optimal CX cost decomposition from reference \[1]. For N > 3 qubits this is done using the general non-optimal compilation routine from reference \[2]. @@ -536,19 +536,19 @@ python_api_name: qiskit.quantum_info.Clifford ### to\_dict - + Return dictionary representation of Clifford object. ### to\_instruction - + Return a Gate instruction implementing the Clifford. ### to\_labels - + Convert a Clifford to a list Pauli (de)stabilizer string labels. For large Clifford converting using the `array=True` kwarg will be more efficient since it allocates memory for the full Numpy array of labels in advance. @@ -584,13 +584,13 @@ python_api_name: qiskit.quantum_info.Clifford ### to\_matrix - + Convert operator to Numpy matrix. ### to\_operator - + Convert to an Operator object. **Return type** @@ -600,7 +600,7 @@ python_api_name: qiskit.quantum_info.Clifford ### transpose - + Return the transpose of the Clifford. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.DensityMatrix.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.DensityMatrix.mdx index 2e4c15a359e..2887a7da0e0 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.DensityMatrix.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.DensityMatrix.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix # DensityMatrix - + Bases: `QuantumState`, `TolerancesMixin` DensityMatrix class @@ -69,25 +69,25 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### conjugate - + Return the conjugate of the density matrix. ### copy - + Make a copy of current operator. ### dims - + Return tuple of input dimension for specified subsystems. ### draw - + Return a visualization of the Statevector. **repr**: ASCII TextMatrix of the state’s `__repr__`. @@ -120,7 +120,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### evolve - + Evolve a quantum state by an operator. **Parameters** @@ -143,7 +143,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### expand - + Return the tensor product state other ⊗ self. **Parameters** @@ -165,7 +165,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### expectation\_value - + Compute the expectation value of an operator. **Parameters** @@ -184,7 +184,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### from\_instruction - + Return the output density matrix of an instruction. The statevector is initialized in the state $|{0,\ldots,0}\rangle$ of the same number of qubits as the input instruction or circuit, evolved by the input instruction, and the output statevector returned. @@ -208,7 +208,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### from\_int - + Return a computational basis state density matrix. **Parameters** @@ -234,7 +234,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### from\_label - + Return a tensor product of Pauli X,Y,Z eigenstates. | Label | Statevector | @@ -265,13 +265,13 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### is\_valid - + Return True if trace 1 and positive semidefinite. ### measure - + Measure subsystems and return outcome and post-measure state. Note that this function uses the QuantumStates internal random number generator for sampling the measurement outcome. The RNG seed can be set using the [`seed()`](#qiskit.quantum_info.DensityMatrix.seed "qiskit.quantum_info.DensityMatrix.seed") method. @@ -293,7 +293,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### partial\_transpose - + Return partially transposed density matrix. **Parameters** @@ -311,7 +311,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### probabilities - + Return the subsystem measurement probability vector. Measurement probabilities are with respect to measurement in the computation (diagonal) basis. @@ -382,7 +382,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### probabilities\_dict - + Return the subsystem measurement probability dictionary. Measurement probabilities are with respect to measurement in the computation (diagonal) basis. @@ -405,13 +405,13 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### purity - + Return the purity of the quantum state. ### reset - + Reset state or subsystems to the 0-state. **Parameters** @@ -433,7 +433,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### reverse\_qargs - + Return a DensityMatrix with reversed subsystem ordering. For a tensor product state this is equivalent to reversing the order of tensor product subsystems. For a density matrix $\rho = \rho_{n-1} \otimes ... \otimes \rho_0$ the returned state will be $\rho_0 \otimes ... \otimes \rho_{n-1}$. @@ -449,7 +449,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### sample\_counts - + Sample a dict of qubit measurement outcomes in the computational basis. **Parameters** @@ -474,7 +474,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### sample\_memory - + Sample a list of qubit measurement outcomes in the computational basis. **Parameters** @@ -499,13 +499,13 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### seed - + Set the seed for the quantum state RNG. ### tensor - + Return the tensor product state self ⊗ other. **Parameters** @@ -527,7 +527,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### to\_dict - + Convert the density matrix to dictionary form. This dictionary representation uses a Ket-like notation where the dictionary keys are qudit strings for the subsystem basis vectors. If any subsystem has a dimension greater than 10 comma delimiters are inserted between integers so that subsystems can be distinguished. @@ -603,7 +603,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### to\_operator - + Convert to Operator **Return type** @@ -613,7 +613,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### to\_statevector - + Return a statevector from a pure density matrix. **Parameters** @@ -638,7 +638,7 @@ python_api_name: qiskit.quantum_info.DensityMatrix ### trace - + Return the trace of the density matrix. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Kraus.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Kraus.mdx index ef8f1146725..8222906771a 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Kraus.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Kraus.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Kraus # Kraus - + Bases: `QuantumChannel` Kraus representation of a quantum channel. @@ -91,7 +91,7 @@ $$ ### adjoint - + Return the adjoint quantum channel. @@ -101,7 +101,7 @@ $$ ### compose - + Return the operator composition with another Kraus. **Parameters** @@ -131,7 +131,7 @@ $$ ### conjugate - + Return the conjugate quantum channel. @@ -141,13 +141,13 @@ $$ ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -170,7 +170,7 @@ $$ ### expand - + Return the reverse-order tensor product with another Kraus. **Parameters** @@ -190,13 +190,13 @@ $$ ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_cp - + Test if Choi-matrix is completely-positive (CP) **Return type** @@ -206,13 +206,13 @@ $$ ### is\_cptp - + Return True if completely-positive trace-preserving. ### is\_tp - + Test if a channel is trace-preserving (TP) **Return type** @@ -222,7 +222,7 @@ $$ ### is\_unitary - + Return True if QuantumChannel is a unitary channel. **Return type** @@ -232,13 +232,13 @@ $$ ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the power of the quantum channel. **Parameters** @@ -264,7 +264,7 @@ $$ ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -288,7 +288,7 @@ $$ ### tensor - + Return the tensor product with another Kraus. **Parameters** @@ -312,7 +312,7 @@ $$ ### to\_instruction - + Convert to a Kraus or UnitaryGate circuit instruction. If the channel is unitary it will be added as a unitary gate, otherwise it will be added as a kraus simulator instruction. @@ -332,7 +332,7 @@ $$ ### to\_operator - + Try to convert channel to a unitary representation Operator. **Return type** @@ -342,7 +342,7 @@ $$ ### transpose - + Return the transpose quantum channel. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Operator.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Operator.mdx index 43a4812f708..08c43f0a987 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Operator.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Operator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Operator # Operator - + Bases: `LinearOp` Matrix operator class @@ -85,7 +85,7 @@ $$ ### adjoint - + Return the adjoint of the Operator. **Return type** @@ -95,7 +95,7 @@ $$ ### apply\_permutation - + Modifies operator’s data by composing it with a permutation. **Parameters** @@ -118,7 +118,7 @@ $$ ### compose - + Return the operator composition with another Operator. **Parameters** @@ -148,19 +148,19 @@ $$ ### conjugate - + Return the conjugate of the Operator. ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -183,7 +183,7 @@ $$ ### draw - + Return a visualization of the Operator. **repr**: String of the state’s `__repr__`. @@ -214,7 +214,7 @@ $$ ### equiv - + Return True if operators are equivalent up to global phase. **Parameters** @@ -234,7 +234,7 @@ $$ ### expand - + Return the reverse-order tensor product with another Operator. **Parameters** @@ -254,7 +254,7 @@ $$ ### from\_circuit - + Create a new Operator object from a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") While a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") object can passed directly as `data` to the class constructor this provides no options on how the circuit is used to create an [`Operator`](#qiskit.quantum_info.Operator "qiskit.quantum_info.Operator"). This constructor method lets you control how the [`Operator`](#qiskit.quantum_info.Operator "qiskit.quantum_info.Operator") is created so it can be adjusted for a particular use case. @@ -279,7 +279,7 @@ $$ ### from\_label - + Return a tensor product of single-qubit operators. **Parameters** @@ -305,25 +305,25 @@ $$ ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_unitary - + Return True if operator is a unitary matrix. ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the matrix power of the operator. **Parameters** @@ -345,7 +345,7 @@ $$ ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -369,7 +369,7 @@ $$ ### reverse\_qargs - + Return an Operator with reversed subsystem ordering. For a tensor product operator this is equivalent to reversing the order of tensor product subsystems. For an operator $A = A_{n-1} \otimes ... \otimes A_0$ the returned operator will be $A_0 \otimes ... \otimes A_{n-1}$. @@ -385,7 +385,7 @@ $$ ### tensor - + Return the tensor product with another Operator. **Parameters** @@ -409,19 +409,19 @@ $$ ### to\_instruction - + Convert to a UnitaryGate instruction. ### to\_matrix - + Convert operator to NumPy matrix. ### to\_operator - + Convert operator to matrix operator class **Return type** @@ -431,7 +431,7 @@ $$ ### transpose - + Return the transpose of the Operator. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.PTM.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.PTM.mdx index f29d1a002f7..d4706ec7af2 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.PTM.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.PTM.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.PTM # PTM - + Bases: `QuantumChannel` Pauli Transfer Matrix (PTM) representation of a Quantum Channel. @@ -95,7 +95,7 @@ $$ ### adjoint - + Return the adjoint quantum channel. @@ -105,7 +105,7 @@ $$ ### compose - + Return the operator composition with another PTM. **Parameters** @@ -135,7 +135,7 @@ $$ ### conjugate - + Return the conjugate quantum channel. @@ -145,13 +145,13 @@ $$ ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -174,7 +174,7 @@ $$ ### expand - + Return the reverse-order tensor product with another PTM. **Parameters** @@ -194,13 +194,13 @@ $$ ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_cp - + Test if Choi-matrix is completely-positive (CP) **Return type** @@ -210,7 +210,7 @@ $$ ### is\_cptp - + Return True if completely-positive trace-preserving (CPTP). **Return type** @@ -220,7 +220,7 @@ $$ ### is\_tp - + Test if a channel is trace-preserving (TP) **Return type** @@ -230,7 +230,7 @@ $$ ### is\_unitary - + Return True if QuantumChannel is a unitary channel. **Return type** @@ -240,13 +240,13 @@ $$ ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the power of the quantum channel. **Parameters** @@ -272,7 +272,7 @@ $$ ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -296,7 +296,7 @@ $$ ### tensor - + Return the tensor product with another PTM. **Parameters** @@ -320,7 +320,7 @@ $$ ### to\_instruction - + Convert to a Kraus or UnitaryGate circuit instruction. If the channel is unitary it will be added as a unitary gate, otherwise it will be added as a kraus simulator instruction. @@ -340,7 +340,7 @@ $$ ### to\_operator - + Try to convert channel to a unitary representation Operator. **Return type** @@ -350,7 +350,7 @@ $$ ### transpose - + Return the transpose quantum channel. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Pauli.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Pauli.mdx index 15aaeb55562..6b45f2d2863 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Pauli.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Pauli.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Pauli # Pauli - + Bases: `BasePauli` N-qubit Pauli operator. @@ -169,13 +169,13 @@ $$ ### adjoint - + Return the adjoint of the Operator. ### anticommutes - + Return True if other Pauli anticommutes with self. **Parameters** @@ -194,7 +194,7 @@ $$ ### commutes - + Return True if the Pauli commutes with other. **Parameters** @@ -213,7 +213,7 @@ $$ ### compose - + Return the operator composition with another Pauli. **Parameters** @@ -244,19 +244,19 @@ $$ ### conjugate - + Return the conjugate of each Pauli in the list. ### copy - + Make a deep copy of current operator. ### delete - + Return a Pauli with qubits deleted. **Parameters** @@ -278,7 +278,7 @@ $$ ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -298,7 +298,7 @@ $$ ### equiv - + Return True if Pauli’s are equivalent up to group phase. **Parameters** @@ -316,7 +316,7 @@ $$ ### evolve - + Performs either Heisenberg (default) or Schrödinger picture evolution of the Pauli by a Clifford and returns the evolved Pauli. Schrödinger picture evolution can be chosen by passing parameter `frame='s'`. This option yields a faster calculation. @@ -347,7 +347,7 @@ $$ ### expand - + Return the reverse-order tensor product with another Pauli. **Parameters** @@ -367,13 +367,13 @@ $$ ### input\_dims - + Return tuple of input dimension for specified subsystems. ### insert - + Insert a Pauli at specific qubit value. **Parameters** @@ -396,19 +396,19 @@ $$ ### inverse - + Return the inverse of the Pauli. ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the compose of a operator with itself n times. **Parameters** @@ -430,7 +430,7 @@ $$ ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -454,7 +454,7 @@ $$ ### set\_truncation - + Set the max number of Pauli characters to display before truncation/ **Parameters** @@ -468,7 +468,7 @@ $$ ### tensor - + Return the tensor product with another Pauli. **Parameters** @@ -492,13 +492,13 @@ $$ ### to\_instruction - + Convert to Pauli circuit instruction. ### to\_label - + Convert a Pauli to a string label. @@ -516,7 +516,7 @@ $$ ### to\_matrix - + Convert to a Numpy array or sparse CSR matrix. **Parameters** @@ -534,7 +534,7 @@ $$ ### transpose - + Return the transpose of each Pauli in the list. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.PauliList.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.PauliList.mdx index 3d1942b2a11..1c393ce6bbe 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.PauliList.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.PauliList.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.PauliList # PauliList - + Bases: `BasePauli`, `LinearMixin`, `GroupMixin` List of N-qubit Pauli operators. @@ -161,13 +161,13 @@ python_api_name: qiskit.quantum_info.PauliList ### adjoint - + Return the adjoint of each Pauli in the list. ### anticommutes - + Return `True` if other Pauli that anticommutes with other. **Parameters** @@ -186,7 +186,7 @@ python_api_name: qiskit.quantum_info.PauliList ### anticommutes\_with\_all - + Return indexes of rows that commute other. If `other` is a multi-row Pauli list the returned vector indexes rows of the current PauliList that anti-commute with *all* Paulis in other. If no rows satisfy the condition the returned array will be empty. @@ -206,7 +206,7 @@ python_api_name: qiskit.quantum_info.PauliList ### argsort - + Return indices for sorting the rows of the table. The default sort method is lexicographic sorting by qubit number. By using the weight kwarg the output can additionally be sorted by the number of non-identity terms in the Pauli, where the set of all Paulis of a given weight are still ordered lexicographically. @@ -227,7 +227,7 @@ python_api_name: qiskit.quantum_info.PauliList ### commutes - + Return True for each Pauli that commutes with other. **Parameters** @@ -246,7 +246,7 @@ python_api_name: qiskit.quantum_info.PauliList ### commutes\_with\_all - + Return indexes of rows that commute `other`. If `other` is a multi-row Pauli list the returned vector indexes rows of the current PauliList that commute with *all* Paulis in other. If no rows satisfy the condition the returned array will be empty. @@ -266,7 +266,7 @@ python_api_name: qiskit.quantum_info.PauliList ### compose - + Return the composition self∘other for each Pauli in the list. **Parameters** @@ -291,19 +291,19 @@ python_api_name: qiskit.quantum_info.PauliList ### conjugate - + Return the conjugate of each Pauli in the list. ### copy - + Make a deep copy of current operator. ### delete - + Return a copy with Pauli rows deleted from table. When deleting qubits the qubit index is the same as the column index of the underlying `X` and `Z` arrays. @@ -328,7 +328,7 @@ python_api_name: qiskit.quantum_info.PauliList ### dot - + Return the composition other∘self for each Pauli in the list. **Parameters** @@ -352,7 +352,7 @@ python_api_name: qiskit.quantum_info.PauliList ### equiv - + Entrywise comparison of Pauli equivalence up to global phase. **Parameters** @@ -372,7 +372,7 @@ python_api_name: qiskit.quantum_info.PauliList ### evolve - + Performs either Heisenberg (default) or Schrödinger picture evolution of the Pauli by a Clifford and returns the evolved Pauli. Schrödinger picture evolution can be chosen by passing parameter `frame='s'`. This option yields a faster calculation. @@ -402,7 +402,7 @@ python_api_name: qiskit.quantum_info.PauliList ### expand - + Return the expand product of each Pauli in the list. **Parameters** @@ -424,7 +424,7 @@ python_api_name: qiskit.quantum_info.PauliList ### from\_symplectic - + Construct a PauliList from a symplectic data. **Parameters** @@ -444,7 +444,7 @@ python_api_name: qiskit.quantum_info.PauliList ### group\_commuting - + Partition a PauliList into sets of commuting Pauli strings. **Parameters** @@ -473,7 +473,7 @@ python_api_name: qiskit.quantum_info.PauliList ### group\_qubit\_wise\_commuting - + Partition a PauliList into sets of mutually qubit-wise commuting Pauli strings. **Returns** @@ -487,13 +487,13 @@ python_api_name: qiskit.quantum_info.PauliList ### input\_dims - + Return tuple of input dimension for specified subsystems. ### insert - + Insert Paulis into the table. When inserting qubits the qubit index is the same as the column index of the underlying `X` and `Z` arrays. @@ -519,13 +519,13 @@ python_api_name: qiskit.quantum_info.PauliList ### inverse - + Return the inverse of each Pauli in the list. ### label\_iter - + Return a label representation iterator. This is a lazy iterator that converts each row into the string label only as it is used. To convert the entire table to labels use the [`to_labels()`](#qiskit.quantum_info.PauliList.to_labels "qiskit.quantum_info.PauliList.to_labels") method. @@ -541,7 +541,7 @@ python_api_name: qiskit.quantum_info.PauliList ### matrix\_iter - + Return a matrix representation iterator. This is a lazy iterator that converts each row into the Pauli matrix representation only as it is used. To convert the entire table to matrices use the [`to_matrix()`](#qiskit.quantum_info.PauliList.to_matrix "qiskit.quantum_info.PauliList.to_matrix") method. @@ -561,7 +561,7 @@ python_api_name: qiskit.quantum_info.PauliList ### noncommutation\_graph - + Create the non-commutation graph of this PauliList. This transforms the measurement operator grouping problem into graph coloring problem. The constructed graph contains one node for each Pauli. The nodes will be connecting for any two Pauli terms that do \_not\_ commute. @@ -583,13 +583,13 @@ python_api_name: qiskit.quantum_info.PauliList ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the compose of a operator with itself n times. **Parameters** @@ -611,7 +611,7 @@ python_api_name: qiskit.quantum_info.PauliList ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -635,7 +635,7 @@ python_api_name: qiskit.quantum_info.PauliList ### sort - + Sort the rows of the table. The default sort method is lexicographic sorting by qubit number. By using the weight kwarg the output can additionally be sorted by the number of non-identity terms in the Pauli, where the set of all Paulis of a given weight are still ordered lexicographically. @@ -696,7 +696,7 @@ python_api_name: qiskit.quantum_info.PauliList ### tensor - + Return the tensor product with each Pauli in the list. **Parameters** @@ -718,7 +718,7 @@ python_api_name: qiskit.quantum_info.PauliList ### to\_labels - + Convert a PauliList to a list Pauli string labels. For large PauliLists converting using the `array=True` kwarg will be more efficient since it allocates memory for the full Numpy array of labels in advance. @@ -745,7 +745,7 @@ python_api_name: qiskit.quantum_info.PauliList ### to\_matrix - + Convert to a list or array of Pauli matrices. For large PauliLists converting using the `array=True` kwarg will be more efficient since it allocates memory a full rank-3 Numpy array of matrices in advance. @@ -773,13 +773,13 @@ python_api_name: qiskit.quantum_info.PauliList ### transpose - + Return the transpose of each Pauli in the list. ### unique - + Return unique Paulis from the table. **Example** diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Quaternion.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Quaternion.mdx index fda98bed823..78ddf3bf9ca 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Quaternion.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Quaternion.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Quaternion # Quaternion - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A class representing a Quaternion. @@ -17,7 +17,7 @@ python_api_name: qiskit.quantum_info.Quaternion ### from\_axis\_rotation - + Return quaternion for rotation about given axis. **Parameters** @@ -40,7 +40,7 @@ python_api_name: qiskit.quantum_info.Quaternion ### from\_euler - + Generate a quaternion from a set of Euler angles. **Parameters** @@ -59,13 +59,13 @@ python_api_name: qiskit.quantum_info.Quaternion ### norm - + Norm of quaternion. ### normalize - + Normalizes a Quaternion to unit length so that it represents a valid rotation. **Parameters** @@ -83,7 +83,7 @@ python_api_name: qiskit.quantum_info.Quaternion ### to\_matrix - + Converts a unit-length quaternion to a rotation matrix. **Returns** @@ -97,7 +97,7 @@ python_api_name: qiskit.quantum_info.Quaternion ### to\_zyz - + Converts a unit-length quaternion to a sequence of ZYZ Euler angles. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.ScalarOp.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.ScalarOp.mdx index 23b029c4e12..9226d18bc45 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.ScalarOp.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.ScalarOp.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.ScalarOp # ScalarOp - + Bases: `LinearOp` Scalar identity operator class. @@ -64,7 +64,7 @@ python_api_name: qiskit.quantum_info.ScalarOp ### adjoint - + Return the adjoint of the Operator. **Return type** @@ -74,7 +74,7 @@ python_api_name: qiskit.quantum_info.ScalarOp ### compose - + Return the operator composition with another ScalarOp. **Parameters** @@ -104,19 +104,19 @@ python_api_name: qiskit.quantum_info.ScalarOp ### conjugate - + Return the conjugate of the ScalarOp. ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -139,7 +139,7 @@ python_api_name: qiskit.quantum_info.ScalarOp ### expand - + Return the reverse-order tensor product with another ScalarOp. **Parameters** @@ -159,25 +159,25 @@ python_api_name: qiskit.quantum_info.ScalarOp ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_unitary - + Return True if operator is a unitary matrix. ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the power of the ScalarOp. **Parameters** @@ -195,7 +195,7 @@ python_api_name: qiskit.quantum_info.ScalarOp ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -219,7 +219,7 @@ python_api_name: qiskit.quantum_info.ScalarOp ### tensor - + Return the tensor product with another ScalarOp. **Parameters** @@ -243,13 +243,13 @@ python_api_name: qiskit.quantum_info.ScalarOp ### to\_matrix - + Convert to a Numpy matrix. ### to\_operator - + Convert to an Operator object. **Return type** @@ -259,7 +259,7 @@ python_api_name: qiskit.quantum_info.ScalarOp ### transpose - + Return the transpose of the ScalarOp. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.SparsePauliOp.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.SparsePauliOp.mdx index b1cad652d4c..1fdd5800d5d 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.SparsePauliOp.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.SparsePauliOp.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.SparsePauliOp # SparsePauliOp - + Bases: `LinearOp` Sparse N-qubit operator in a Pauli basis representation. @@ -127,13 +127,13 @@ python_api_name: qiskit.quantum_info.SparsePauliOp ### adjoint - + Return the adjoint of the Operator. ### apply\_layout - + Apply a transpiler layout to this [`SparsePauliOp`](#qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp") **Parameters** @@ -152,7 +152,7 @@ python_api_name: qiskit.quantum_info.SparsePauliOp ### argsort - + Return indices for sorting the rows of the table. Returns the composition of permutations in the order of sorting by coefficient and sorting by Pauli. By using the weight kwarg the output can additionally be sorted by the number of non-identity terms in the Pauli, where the set of all Pauli’s of a given weight are still ordered lexicographically. @@ -220,7 +220,7 @@ python_api_name: qiskit.quantum_info.SparsePauliOp ### assign\_parameters - + Bind the free `Parameter`s in the coefficients to provided values. **Parameters** @@ -239,7 +239,7 @@ python_api_name: qiskit.quantum_info.SparsePauliOp ### chop - + Set real and imaginary parts of the coefficients to 0 if `< tol` in magnitude. For example, the operator representing `1+1e-17j X + 1e-17 Y` with a tolerance larger than `1e-17` will be reduced to `1 X` whereas [`SparsePauliOp.simplify()`](#qiskit.quantum_info.SparsePauliOp.simplify "qiskit.quantum_info.SparsePauliOp.simplify") would return `1+1e-17j X`. @@ -261,7 +261,7 @@ python_api_name: qiskit.quantum_info.SparsePauliOp ### compose - + Return the operator composition with another SparsePauliOp. **Parameters** @@ -291,19 +291,19 @@ python_api_name: qiskit.quantum_info.SparsePauliOp ### conjugate - + Return the conjugate of the SparsePauliOp. ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -326,7 +326,7 @@ python_api_name: qiskit.quantum_info.SparsePauliOp ### equiv - + Check if two SparsePauliOp operators are equivalent. **Parameters** @@ -345,7 +345,7 @@ python_api_name: qiskit.quantum_info.SparsePauliOp ### expand - + Return the reverse-order tensor product with another SparsePauliOp. **Parameters** @@ -365,7 +365,7 @@ python_api_name: qiskit.quantum_info.SparsePauliOp ### from\_list - + Construct from a list of Pauli strings and coefficients. For example, the 5-qubit Hamiltonian @@ -403,7 +403,7 @@ $$ ### from\_operator - + Construct from an Operator objector. Note that the cost of this construction is exponential in general because the number of possible Pauli terms in the decomposition is exponential in the number of qubits. @@ -431,7 +431,7 @@ $$ ### from\_sparse\_list - + Construct from a list of local Pauli strings and coefficients. Each list element is a 3-tuple of a local Pauli string, indices where to apply it, and a coefficient. @@ -476,7 +476,7 @@ $$ ### group\_commuting - + Partition a SparsePauliOp into sets of commuting Pauli strings. **Parameters** @@ -509,13 +509,13 @@ $$ ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_unitary - + Return True if operator is a unitary matrix. **Parameters** @@ -534,7 +534,7 @@ $$ ### label\_iter - + Return a label representation iterator. This is a lazy iterator that converts each term in the SparsePauliOp into a tuple (label, coeff). To convert the entire table to labels use the `to_labels()` method. @@ -550,7 +550,7 @@ $$ ### matrix\_iter - + Return a matrix representation iterator. This is a lazy iterator that converts each term in the SparsePauliOp into a matrix as it is used. To convert to a single matrix use the [`to_matrix()`](#qiskit.quantum_info.SparsePauliOp.to_matrix "qiskit.quantum_info.SparsePauliOp.to_matrix") method. @@ -570,7 +570,7 @@ $$ ### noncommutation\_graph - + Create the non-commutation graph of this SparsePauliOp. This transforms the measurement operator grouping problem into graph coloring problem. The constructed graph contains one node for each Pauli. The nodes will be connecting for any two Pauli terms that do \_not\_ commute. @@ -592,13 +592,13 @@ $$ ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the compose of a operator with itself n times. **Parameters** @@ -620,7 +620,7 @@ $$ ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -644,7 +644,7 @@ $$ ### simplify - + Simplify PauliList by combining duplicates and removing zeros. **Parameters** @@ -663,7 +663,7 @@ $$ ### sort - + Sort the rows of the table. After sorting the coefficients using numpy’s argsort, sort by Pauli. Pauli sort takes precedence. If Pauli is the same, it will be sorted by coefficient. By using the weight kwarg the output can additionally be sorted by the number of non-identity terms in the Pauli, where the set of all Pauli’s of a given weight are still ordered lexicographically. @@ -734,7 +734,7 @@ $$ ### sum - + Sum of SparsePauliOps. This is a specialized version of the builtin `sum` function for SparsePauliOp with smaller overhead. @@ -760,7 +760,7 @@ $$ ### tensor - + Return the tensor product with another SparsePauliOp. **Parameters** @@ -784,7 +784,7 @@ $$ ### to\_list - + Convert to a list Pauli string labels and coefficients. For operators with a lot of terms converting using the `array=True` kwarg will be more efficient since it allocates memory for the full Numpy array of labels in advance. @@ -804,7 +804,7 @@ $$ ### to\_matrix - + Convert to a dense or sparse matrix. **Parameters** @@ -822,7 +822,7 @@ $$ ### to\_operator - + Convert to a matrix Operator object **Return type** @@ -832,7 +832,7 @@ $$ ### transpose - + Return the transpose of the SparsePauliOp. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.StabilizerState.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.StabilizerState.mdx index 79f00b0278f..6d003a3768d 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.StabilizerState.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.StabilizerState.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.StabilizerState # StabilizerState - + Bases: `QuantumState` StabilizerState class. Stabilizer simulator using the convention from reference \[1]. Based on the internal class [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford"). @@ -83,25 +83,25 @@ python_api_name: qiskit.quantum_info.StabilizerState ### conjugate - + Return the conjugate of the operator. ### copy - + Make a copy of current operator. ### dims - + Return tuple of input dimension for specified subsystems. ### equiv - + Return True if the two generating sets generate the same stabilizer group. **Parameters** @@ -119,7 +119,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### evolve - + Evolve a stabilizer state by a Clifford operator. **Parameters** @@ -143,7 +143,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### expand - + Return the tensor product stabilizer state other ⊗ self. **Parameters** @@ -165,7 +165,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### expectation\_value - + Compute the expectation value of a Pauli operator. **Parameters** @@ -188,7 +188,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### from\_stabilizer\_list - + Create a stabilizer state from the collection of stabilizers. **Parameters** @@ -208,13 +208,13 @@ python_api_name: qiskit.quantum_info.StabilizerState ### is\_valid - + Return True if a valid StabilizerState. ### measure - + Measure subsystems and return outcome and post-measure state. Note that this function uses the QuantumStates internal random number generator for sampling the measurement outcome. The RNG seed can be set using the [`seed()`](#qiskit.quantum_info.StabilizerState.seed "qiskit.quantum_info.StabilizerState.seed") method. @@ -236,7 +236,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### probabilities - + Return the subsystem measurement probability vector. Measurement probabilities are with respect to measurement in the computation (diagonal) basis. @@ -257,7 +257,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### probabilities\_dict - + Return the subsystem measurement probability dictionary. Measurement probabilities are with respect to measurement in the computation (diagonal) basis. @@ -280,7 +280,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### purity - + Return the purity of the quantum state, which equals to 1, since it is always a pure state. **Returns** @@ -298,7 +298,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### reset - + Reset state or subsystems to the 0-state. **Parameters** @@ -320,7 +320,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### sample\_counts - + Sample a dict of qubit measurement outcomes in the computational basis. **Parameters** @@ -345,7 +345,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### sample\_memory - + Sample a list of qubit measurement outcomes in the computational basis. **Parameters** @@ -370,13 +370,13 @@ python_api_name: qiskit.quantum_info.StabilizerState ### seed - + Set the seed for the quantum state RNG. ### tensor - + Return the tensor product stabilizer state self ⊗ other. **Parameters** @@ -398,7 +398,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### to\_operator - + Convert state to matrix operator class **Return type** @@ -408,7 +408,7 @@ python_api_name: qiskit.quantum_info.StabilizerState ### trace - + Return the trace of the stabilizer state as a density matrix, which equals to 1, since it is always a pure state. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Statevector.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Statevector.mdx index 7ffe0734bba..6a8f599073c 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Statevector.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Statevector.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Statevector # Statevector - + Bases: `QuantumState`, `TolerancesMixin` Statevector class @@ -69,7 +69,7 @@ python_api_name: qiskit.quantum_info.Statevector ### conjugate - + Return the conjugate of the operator. **Return type** @@ -79,19 +79,19 @@ python_api_name: qiskit.quantum_info.Statevector ### copy - + Make a copy of current operator. ### dims - + Return tuple of input dimension for specified subsystems. ### draw - + Return a visualization of the Statevector. **repr**: ASCII TextMatrix of the state’s `__repr__`. @@ -141,7 +141,7 @@ python_api_name: qiskit.quantum_info.Statevector ### equiv - + Return True if other is equivalent as a statevector up to global phase. @@ -165,7 +165,7 @@ python_api_name: qiskit.quantum_info.Statevector ### evolve - + Evolve a quantum state by the operator. **Parameters** @@ -188,7 +188,7 @@ python_api_name: qiskit.quantum_info.Statevector ### expand - + Return the tensor product state other ⊗ self. **Parameters** @@ -210,7 +210,7 @@ python_api_name: qiskit.quantum_info.Statevector ### expectation\_value - + Compute the expectation value of an operator. **Parameters** @@ -229,7 +229,7 @@ python_api_name: qiskit.quantum_info.Statevector ### from\_instruction - + Return the output statevector of an instruction. The statevector is initialized in the state $|{0,\ldots,0}\rangle$ of the same number of qubits as the input instruction or circuit, evolved by the input instruction, and the output statevector returned. @@ -253,7 +253,7 @@ python_api_name: qiskit.quantum_info.Statevector ### from\_int - + Return a computational basis statevector. **Parameters** @@ -279,7 +279,7 @@ python_api_name: qiskit.quantum_info.Statevector ### from\_label - + Return a tensor product of Pauli X,Y,Z eigenstates. | Label | Statevector | @@ -310,7 +310,7 @@ python_api_name: qiskit.quantum_info.Statevector ### inner - + Return the inner product of self and other as $\langle self| other \rangle$. **Parameters** @@ -332,7 +332,7 @@ python_api_name: qiskit.quantum_info.Statevector ### is\_valid - + Return True if a Statevector has norm 1. **Return type** @@ -342,7 +342,7 @@ python_api_name: qiskit.quantum_info.Statevector ### measure - + Measure subsystems and return outcome and post-measure state. Note that this function uses the QuantumStates internal random number generator for sampling the measurement outcome. The RNG seed can be set using the [`seed()`](#qiskit.quantum_info.Statevector.seed "qiskit.quantum_info.Statevector.seed") method. @@ -364,7 +364,7 @@ python_api_name: qiskit.quantum_info.Statevector ### probabilities - + Return the subsystem measurement probability vector. Measurement probabilities are with respect to measurement in the computation (diagonal) basis. @@ -435,7 +435,7 @@ python_api_name: qiskit.quantum_info.Statevector ### probabilities\_dict - + Return the subsystem measurement probability dictionary. Measurement probabilities are with respect to measurement in the computation (diagonal) basis. @@ -458,7 +458,7 @@ python_api_name: qiskit.quantum_info.Statevector ### purity - + Return the purity of the quantum state. **Return type** @@ -468,7 +468,7 @@ python_api_name: qiskit.quantum_info.Statevector ### reset - + Reset state or subsystems to the 0-state. **Parameters** @@ -490,7 +490,7 @@ python_api_name: qiskit.quantum_info.Statevector ### reverse\_qargs - + Return a Statevector with reversed subsystem ordering. For a tensor product state this is equivalent to reversing the order of tensor product subsystems. For a statevector $|\psi \rangle = |\psi_{n-1} \rangle \otimes ... \otimes |\psi_0 \rangle$ the returned statevector will be $|\psi_{0} \rangle \otimes ... \otimes |\psi_{n-1} \rangle$. @@ -506,7 +506,7 @@ python_api_name: qiskit.quantum_info.Statevector ### sample\_counts - + Sample a dict of qubit measurement outcomes in the computational basis. **Parameters** @@ -531,7 +531,7 @@ python_api_name: qiskit.quantum_info.Statevector ### sample\_memory - + Sample a list of qubit measurement outcomes in the computational basis. **Parameters** @@ -556,13 +556,13 @@ python_api_name: qiskit.quantum_info.Statevector ### seed - + Set the seed for the quantum state RNG. ### tensor - + Return the tensor product state self ⊗ other. **Parameters** @@ -584,7 +584,7 @@ python_api_name: qiskit.quantum_info.Statevector ### to\_dict - + Convert the statevector to dictionary form. This dictionary representation uses a Ket-like notation where the dictionary keys are qudit strings for the subsystem basis vectors. If any subsystem has a dimension greater than 10 comma delimiters are inserted between integers so that subsystems can be distinguished. @@ -653,7 +653,7 @@ python_api_name: qiskit.quantum_info.Statevector ### to\_operator - + Convert state to a rank-1 projector operator **Return type** @@ -663,7 +663,7 @@ python_api_name: qiskit.quantum_info.Statevector ### trace - + Return the trace of the quantum state as a density matrix. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Stinespring.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Stinespring.mdx index 742f35dcad6..2dc61cae3d4 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Stinespring.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Stinespring.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Stinespring # Stinespring - + Bases: `QuantumChannel` Stinespring representation of a quantum channel. @@ -91,7 +91,7 @@ $$ ### adjoint - + Return the adjoint quantum channel. @@ -105,7 +105,7 @@ $$ ### compose - + Return the operator composition with another Stinespring. **Parameters** @@ -135,7 +135,7 @@ $$ ### conjugate - + Return the conjugate quantum channel. @@ -145,13 +145,13 @@ $$ ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -174,7 +174,7 @@ $$ ### expand - + Return the reverse-order tensor product with another Stinespring. **Parameters** @@ -194,13 +194,13 @@ $$ ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_cp - + Test if Choi-matrix is completely-positive (CP) **Return type** @@ -210,13 +210,13 @@ $$ ### is\_cptp - + Return True if completely-positive trace-preserving. ### is\_tp - + Test if a channel is trace-preserving (TP) **Return type** @@ -226,7 +226,7 @@ $$ ### is\_unitary - + Return True if QuantumChannel is a unitary channel. **Return type** @@ -236,13 +236,13 @@ $$ ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the power of the quantum channel. **Parameters** @@ -268,7 +268,7 @@ $$ ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -292,7 +292,7 @@ $$ ### tensor - + Return the tensor product with another Stinespring. **Parameters** @@ -316,7 +316,7 @@ $$ ### to\_instruction - + Convert to a Kraus or UnitaryGate circuit instruction. If the channel is unitary it will be added as a unitary gate, otherwise it will be added as a kraus simulator instruction. @@ -336,7 +336,7 @@ $$ ### to\_operator - + Try to convert channel to a unitary representation Operator. **Return type** @@ -346,7 +346,7 @@ $$ ### transpose - + Return the transpose quantum channel. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.SuperOp.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.SuperOp.mdx index b16f870b19f..c968e146824 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.SuperOp.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.SuperOp.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.SuperOp # SuperOp - + Bases: `QuantumChannel` Superoperator representation of a quantum channel. @@ -87,7 +87,7 @@ $$ ### adjoint - + Return the adjoint quantum channel. @@ -97,7 +97,7 @@ $$ ### compose - + Return the operator composition with another SuperOp. **Parameters** @@ -127,7 +127,7 @@ $$ ### conjugate - + Return the conjugate quantum channel. @@ -137,13 +137,13 @@ $$ ### copy - + Make a deep copy of current operator. ### dot - + Return the right multiplied operator self \* other. **Parameters** @@ -166,7 +166,7 @@ $$ ### expand - + Return the reverse-order tensor product with another SuperOp. **Parameters** @@ -186,13 +186,13 @@ $$ ### input\_dims - + Return tuple of input dimension for specified subsystems. ### is\_cp - + Test if Choi-matrix is completely-positive (CP) **Return type** @@ -202,7 +202,7 @@ $$ ### is\_cptp - + Return True if completely-positive trace-preserving (CPTP). **Return type** @@ -212,7 +212,7 @@ $$ ### is\_tp - + Test if a channel is trace-preserving (TP) **Return type** @@ -222,7 +222,7 @@ $$ ### is\_unitary - + Return True if QuantumChannel is a unitary channel. **Return type** @@ -232,13 +232,13 @@ $$ ### output\_dims - + Return tuple of output dimension for specified subsystems. ### power - + Return the power of the quantum channel. **Parameters** @@ -264,7 +264,7 @@ $$ ### reshape - + Return a shallow copy with reshaped input and output subsystem dimensions. **Parameters** @@ -288,7 +288,7 @@ $$ ### tensor - + Return the tensor product with another SuperOp. **Parameters** @@ -312,7 +312,7 @@ $$ ### to\_instruction - + Convert to a Kraus or UnitaryGate circuit instruction. If the channel is unitary it will be added as a unitary gate, otherwise it will be added as a kraus simulator instruction. @@ -332,7 +332,7 @@ $$ ### to\_operator - + Try to convert channel to a unitary representation Operator. **Return type** @@ -342,7 +342,7 @@ $$ ### transpose - + Return the transpose quantum channel. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Z2Symmetries.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Z2Symmetries.mdx index f99686e2825..90f074a603b 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Z2Symmetries.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Z2Symmetries.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.quantum_info.Z2Symmetries # Z2Symmetries - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") The \$Z\_2\$ symmetry converter identifies symmetries from the problem hamiltonian and uses them to provide a tapered - more efficient - representation of operators as Paulis for this problem. For each identified symmetry, one qubit can be eliminated in the Pauli representation at the cost of having to test two symmetry sectors (for the two possible eigenvalues - tapering values - of the symmetry). In certain problems such as the finding of the main operator’s ground state, one can a priori identify the symmetry sector of the solution and thus effectively reduce the computational overhead. @@ -93,7 +93,7 @@ python_api_name: qiskit.quantum_info.Z2Symmetries ### convert\_clifford - + This method operates the first part of the tapering. It converts the operator by composing it with the clifford unitaries defined in the current symmetry. **Parameters** @@ -111,7 +111,7 @@ python_api_name: qiskit.quantum_info.Z2Symmetries ### find\_z2\_symmetries - + Finds Z2 Pauli-type symmetries of a [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp"). **Returns** @@ -125,7 +125,7 @@ python_api_name: qiskit.quantum_info.Z2Symmetries ### is\_empty - + Check the z2\_symmetries is empty or not. **Returns** @@ -139,7 +139,7 @@ python_api_name: qiskit.quantum_info.Z2Symmetries ### taper - + Taper an operator based on the z2\_symmetries info and sector defined by tapering\_values. Returns operator if the symmetry object is empty. The tapering is a two-step algorithm which first converts the operator into a [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp") with same eigenvalues but where some qubits are only acted upon with the Pauli operators I or X. The number M of these redundant qubits is equal to the number M of identified symmetries. @@ -161,7 +161,7 @@ python_api_name: qiskit.quantum_info.Z2Symmetries ### taper\_clifford - + Operate the second part of the tapering. This function assumes that the input operators have already been transformed using [`convert_clifford()`](#qiskit.quantum_info.Z2Symmetries.convert_clifford "qiskit.quantum_info.Z2Symmetries.convert_clifford"). The redundant qubits due to the symmetries are dropped and replaced by their two possible eigenvalues. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.pauli_basis.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.pauli_basis.mdx index beff067e5b2..2ab5d2d3a33 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.pauli_basis.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.pauli_basis.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.quantum_info.pauli_basis # qiskit.quantum\_info.pauli\_basis - + Return the ordered PauliList for the n-qubit Pauli basis. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.result.BaseReadoutMitigator.mdx b/docs/api/qiskit/dev/qiskit.result.BaseReadoutMitigator.mdx index a82eb442825..b92e6c70b37 100644 --- a/docs/api/qiskit/dev/qiskit.result.BaseReadoutMitigator.mdx +++ b/docs/api/qiskit/dev/qiskit.result.BaseReadoutMitigator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.result.BaseReadoutMitigator # BaseReadoutMitigator - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Base readout error mitigator class. @@ -17,7 +17,7 @@ python_api_name: qiskit.result.BaseReadoutMitigator ### expectation\_value - + Calculate the expectation value of a diagonal Hermitian operator. **Parameters** @@ -39,7 +39,7 @@ python_api_name: qiskit.result.BaseReadoutMitigator ### quasi\_probabilities - + Convert counts to a dictionary of quasi-probabilities **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.result.CorrelatedReadoutMitigator.mdx b/docs/api/qiskit/dev/qiskit.result.CorrelatedReadoutMitigator.mdx index 019a69c3892..667c03d6fd5 100644 --- a/docs/api/qiskit/dev/qiskit.result.CorrelatedReadoutMitigator.mdx +++ b/docs/api/qiskit/dev/qiskit.result.CorrelatedReadoutMitigator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.result.CorrelatedReadoutMitigator # CorrelatedReadoutMitigator - + Bases: [`BaseReadoutMitigator`](qiskit.result.BaseReadoutMitigator "qiskit.result.mitigation.base_readout_mitigator.BaseReadoutMitigator") N-qubit readout error mitigator. @@ -44,7 +44,7 @@ python_api_name: qiskit.result.CorrelatedReadoutMitigator ### assignment\_matrix - + Return the readout assignment matrix for specified qubits. The assignment matrix is the stochastic matrix $A$ which assigns a noisy readout probability distribution to an ideal input readout distribution: $P(i|j) = \langle i | A | j \rangle$. @@ -64,7 +64,7 @@ python_api_name: qiskit.result.CorrelatedReadoutMitigator ### expectation\_value - + Compute the mitigated expectation value of a diagonal observable. This computes the mitigated estimator of $\langle O \rangle = \mbox{Tr}[\rho. O]$ of a diagonal observable $O = \sum_{x\in\{0, 1\}^n} O(x)|x\rangle\!\langle x|$. @@ -92,7 +92,7 @@ python_api_name: qiskit.result.CorrelatedReadoutMitigator ### mitigation\_matrix - + Return the readout mitigation matrix for the specified qubits. The mitigation matrix $A^{-1}$ is defined as the inverse of the [`assignment_matrix()`](#qiskit.result.CorrelatedReadoutMitigator.assignment_matrix "qiskit.result.CorrelatedReadoutMitigator.assignment_matrix") $A$. @@ -112,7 +112,7 @@ python_api_name: qiskit.result.CorrelatedReadoutMitigator ### quasi\_probabilities - + Compute mitigated quasi probabilities value. **Parameters** @@ -135,7 +135,7 @@ python_api_name: qiskit.result.CorrelatedReadoutMitigator ### stddev\_upper\_bound - + Return an upper bound on standard deviation of expval estimator. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.result.Counts.mdx b/docs/api/qiskit/dev/qiskit.result.Counts.mdx index 3e1ee47a961..3fa3539dedf 100644 --- a/docs/api/qiskit/dev/qiskit.result.Counts.mdx +++ b/docs/api/qiskit/dev/qiskit.result.Counts.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.result.Counts # Counts - + Bases: [`dict`](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)") A class to store a counts result from a circuit execution. @@ -67,7 +67,7 @@ python_api_name: qiskit.result.Counts ### hex\_outcomes - + Return a counts dictionary with hexadecimal string keys **Returns** @@ -87,7 +87,7 @@ python_api_name: qiskit.result.Counts ### int\_outcomes - + Build a counts dictionary with integer keys instead of count strings **Returns** @@ -113,7 +113,7 @@ python_api_name: qiskit.result.Counts ### most\_frequent - + Return the most frequent count **Returns** @@ -153,7 +153,7 @@ python_api_name: qiskit.result.Counts ### shots - + Return the number of shots diff --git a/docs/api/qiskit/dev/qiskit.result.LocalReadoutMitigator.mdx b/docs/api/qiskit/dev/qiskit.result.LocalReadoutMitigator.mdx index 12914a208b5..1db7f3eea14 100644 --- a/docs/api/qiskit/dev/qiskit.result.LocalReadoutMitigator.mdx +++ b/docs/api/qiskit/dev/qiskit.result.LocalReadoutMitigator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.result.LocalReadoutMitigator # LocalReadoutMitigator - + Bases: [`BaseReadoutMitigator`](qiskit.result.BaseReadoutMitigator "qiskit.result.mitigation.base_readout_mitigator.BaseReadoutMitigator") 1-qubit tensor product readout error mitigator. @@ -45,7 +45,7 @@ python_api_name: qiskit.result.LocalReadoutMitigator ### assignment\_matrix - + Return the measurement assignment matrix for specified qubits. The assignment matrix is the stochastic matrix $A$ which assigns a noisy measurement probability distribution to an ideal input measurement distribution: $P(i|j) = \langle i | A | j \rangle$. @@ -65,7 +65,7 @@ python_api_name: qiskit.result.LocalReadoutMitigator ### expectation\_value - + Compute the mitigated expectation value of a diagonal observable. This computes the mitigated estimator of $\langle O \rangle = \mbox{Tr}[\rho. O]$ of a diagonal observable $O = \sum_{x\in\{0, 1\}^n} O(x)|x\rangle\!\langle x|$. @@ -93,7 +93,7 @@ python_api_name: qiskit.result.LocalReadoutMitigator ### mitigation\_matrix - + Return the measurement mitigation matrix for the specified qubits. The mitigation matrix $A^{-1}$ is defined as the inverse of the [`assignment_matrix()`](#qiskit.result.LocalReadoutMitigator.assignment_matrix "qiskit.result.LocalReadoutMitigator.assignment_matrix") $A$. @@ -113,7 +113,7 @@ python_api_name: qiskit.result.LocalReadoutMitigator ### quasi\_probabilities - + Compute mitigated quasi probabilities value. **Parameters** @@ -140,7 +140,7 @@ python_api_name: qiskit.result.LocalReadoutMitigator ### stddev\_upper\_bound - + Return an upper bound on standard deviation of expval estimator. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.result.ProbDistribution.mdx b/docs/api/qiskit/dev/qiskit.result.ProbDistribution.mdx index 99e4d5bfc9e..aa25dd726d8 100644 --- a/docs/api/qiskit/dev/qiskit.result.ProbDistribution.mdx +++ b/docs/api/qiskit/dev/qiskit.result.ProbDistribution.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.result.ProbDistribution # ProbDistribution - + Bases: [`dict`](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)") A generic dict-like class for probability distributions. @@ -36,7 +36,7 @@ python_api_name: qiskit.result.ProbDistribution ### binary\_probabilities - + Build a probabilities dictionary with binary string keys **Parameters** @@ -76,7 +76,7 @@ python_api_name: qiskit.result.ProbDistribution ### hex\_probabilities - + Build a probabilities dictionary with hexadecimal string keys **Returns** diff --git a/docs/api/qiskit/dev/qiskit.result.QuasiDistribution.mdx b/docs/api/qiskit/dev/qiskit.result.QuasiDistribution.mdx index 13d6ead50e7..21df045d1f9 100644 --- a/docs/api/qiskit/dev/qiskit.result.QuasiDistribution.mdx +++ b/docs/api/qiskit/dev/qiskit.result.QuasiDistribution.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.result.QuasiDistribution # QuasiDistribution - + Bases: [`dict`](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.12)") A dict-like class for representing quasi-probabilities. @@ -50,7 +50,7 @@ python_api_name: qiskit.result.QuasiDistribution ### binary\_probabilities - + Build a quasi-probabilities dictionary with binary string keys **Parameters** @@ -90,7 +90,7 @@ python_api_name: qiskit.result.QuasiDistribution ### hex\_probabilities - + Build a quasi-probabilities dictionary with hexadecimal string keys **Returns** @@ -114,7 +114,7 @@ python_api_name: qiskit.result.QuasiDistribution ### nearest\_probability\_distribution - + Takes a quasiprobability distribution and maps it to the closest probability distribution as defined by the L2-norm. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.result.Result.mdx b/docs/api/qiskit/dev/qiskit.result.Result.mdx index 733979112b4..17a57a77042 100644 --- a/docs/api/qiskit/dev/qiskit.result.Result.mdx +++ b/docs/api/qiskit/dev/qiskit.result.Result.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.result.Result # Result - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Model for Results. @@ -77,7 +77,7 @@ python_api_name: qiskit.result.Result ### data - + Get the raw data for an experiment. Note this data will be a single classical and quantum register and in a format required by the results schema. We recommend that most users use the get\_xxx method, and the data will be post-processed for the data type. @@ -109,7 +109,7 @@ python_api_name: qiskit.result.Result ### from\_dict - + Create a new ExperimentResultData object from a dictionary. **Parameters** @@ -127,7 +127,7 @@ python_api_name: qiskit.result.Result ### get\_counts - + Get the histogram data of an experiment. **Parameters** @@ -149,7 +149,7 @@ python_api_name: qiskit.result.Result ### get\_memory - + Get the sequence of memory states (readouts) for each shot The data from the experiment is a list of format \[‘00000’, ‘01000’, ‘10100’, ‘10100’, ‘11101’, ‘11100’, ‘00101’, …, ‘01010’] **Parameters** @@ -179,7 +179,7 @@ python_api_name: qiskit.result.Result ### get\_statevector - + Get the final statevector of an experiment. **Parameters** @@ -202,7 +202,7 @@ python_api_name: qiskit.result.Result ### get\_unitary - + Get the final unitary of an experiment. **Parameters** @@ -227,7 +227,7 @@ python_api_name: qiskit.result.Result ### to\_dict - + Return a dictionary format representation of the Result **Returns** diff --git a/docs/api/qiskit/dev/qiskit.result.ResultError.mdx b/docs/api/qiskit/dev/qiskit.result.ResultError.mdx index cf002e8a295..ce78179ff0d 100644 --- a/docs/api/qiskit/dev/qiskit.result.ResultError.mdx +++ b/docs/api/qiskit/dev/qiskit.result.ResultError.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.result.ResultError # qiskit.result.ResultError - + Exceptions raised due to errors in result output. It may be better for the Qiskit API to raise this exception. diff --git a/docs/api/qiskit/dev/qiskit.synthesis.EvolutionSynthesis.mdx b/docs/api/qiskit/dev/qiskit.synthesis.EvolutionSynthesis.mdx index 7878b31c9b5..afaa7680832 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.EvolutionSynthesis.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.EvolutionSynthesis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.EvolutionSynthesis # EvolutionSynthesis - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Interface for evolution synthesis algorithms. @@ -33,7 +33,7 @@ python_api_name: qiskit.synthesis.EvolutionSynthesis ### synthesize - + Synthesize an `qiskit.circuit.library.PauliEvolutionGate`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.LieTrotter.mdx b/docs/api/qiskit/dev/qiskit.synthesis.LieTrotter.mdx index 90b036109b1..9ea78cfdd57 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.LieTrotter.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.LieTrotter.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.LieTrotter # LieTrotter - + Bases: [`ProductFormula`](qiskit.synthesis.ProductFormula "qiskit.synthesis.evolution.product_formula.ProductFormula") The Lie-Trotter product formula. @@ -56,7 +56,7 @@ $$ ### synthesize - + Synthesize an `qiskit.circuit.library.PauliEvolutionGate`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.MatrixExponential.mdx b/docs/api/qiskit/dev/qiskit.synthesis.MatrixExponential.mdx index 8348f72f243..a105988fd6b 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.MatrixExponential.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.MatrixExponential.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.MatrixExponential # MatrixExponential - + Bases: [`EvolutionSynthesis`](qiskit.synthesis.EvolutionSynthesis "qiskit.synthesis.evolution.evolution_synthesis.EvolutionSynthesis") Exact operator evolution via matrix exponentiation and unitary synthesis. @@ -35,7 +35,7 @@ python_api_name: qiskit.synthesis.MatrixExponential ### synthesize - + Synthesize an `qiskit.circuit.library.PauliEvolutionGate`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.OneQubitEulerDecomposer.mdx b/docs/api/qiskit/dev/qiskit.synthesis.OneQubitEulerDecomposer.mdx index c29f1429564..b23a87c159a 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.OneQubitEulerDecomposer.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.OneQubitEulerDecomposer.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.OneQubitEulerDecomposer # OneQubitEulerDecomposer - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A class for decomposing 1-qubit unitaries into Euler angle rotations. @@ -32,7 +32,7 @@ python_api_name: qiskit.synthesis.OneQubitEulerDecomposer ### \_\_call\_\_ - + Decompose single qubit gate into a circuit. **Parameters** @@ -79,7 +79,7 @@ python_api_name: qiskit.synthesis.OneQubitEulerDecomposer ### angles - + Return the Euler angles for input array. **Parameters** @@ -97,7 +97,7 @@ python_api_name: qiskit.synthesis.OneQubitEulerDecomposer ### angles\_and\_phase - + Return the Euler angles and phase for input array. **Parameters** @@ -115,7 +115,7 @@ python_api_name: qiskit.synthesis.OneQubitEulerDecomposer ### build\_circuit - + Return the circuit or dag object from a list of gates. diff --git a/docs/api/qiskit/dev/qiskit.synthesis.ProductFormula.mdx b/docs/api/qiskit/dev/qiskit.synthesis.ProductFormula.mdx index 96ee95b4f7c..23b52bba334 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.ProductFormula.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.ProductFormula.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.ProductFormula # ProductFormula - + Bases: [`EvolutionSynthesis`](qiskit.synthesis.EvolutionSynthesis "qiskit.synthesis.evolution.evolution_synthesis.EvolutionSynthesis") Product formula base class for the decomposition of non-commuting operator exponentials. @@ -43,7 +43,7 @@ python_api_name: qiskit.synthesis.ProductFormula ### synthesize - + Synthesize an `qiskit.circuit.library.PauliEvolutionGate`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.QDrift.mdx b/docs/api/qiskit/dev/qiskit.synthesis.QDrift.mdx index 12b393f4996..32cd18dfc38 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.QDrift.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.QDrift.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.QDrift # QDrift - + Bases: [`ProductFormula`](qiskit.synthesis.ProductFormula "qiskit.synthesis.evolution.product_formula.ProductFormula") The QDrift Trotterization method, which selects each each term in the Trotterization randomly, with a probability proportional to its weight. Based on the work of Earl Campbell in Ref. \[1]. @@ -45,7 +45,7 @@ python_api_name: qiskit.synthesis.QDrift ### synthesize - + Synthesize an `qiskit.circuit.library.PauliEvolutionGate`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.SolovayKitaevDecomposition.mdx b/docs/api/qiskit/dev/qiskit.synthesis.SolovayKitaevDecomposition.mdx index b95058c77b4..383d9cef94e 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.SolovayKitaevDecomposition.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.SolovayKitaevDecomposition.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.SolovayKitaevDecomposition # SolovayKitaevDecomposition - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") The Solovay Kitaev discrete decomposition algorithm. @@ -23,7 +23,7 @@ python_api_name: qiskit.synthesis.SolovayKitaevDecomposition ### find\_basic\_approximation - + Finds gate in `self._basic_approximations` that best represents `sequence`. **Parameters** @@ -41,7 +41,7 @@ python_api_name: qiskit.synthesis.SolovayKitaevDecomposition ### load\_basic\_approximations - + Load basic approximations. **Parameters** @@ -63,7 +63,7 @@ python_api_name: qiskit.synthesis.SolovayKitaevDecomposition ### run - + Run the algorithm. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.SuzukiTrotter.mdx b/docs/api/qiskit/dev/qiskit.synthesis.SuzukiTrotter.mdx index b8ed103517f..cf1e07e2919 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.SuzukiTrotter.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.SuzukiTrotter.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.SuzukiTrotter # SuzukiTrotter - + Bases: [`ProductFormula`](qiskit.synthesis.ProductFormula "qiskit.synthesis.evolution.product_formula.ProductFormula") The (higher order) Suzuki-Trotter product formula. @@ -63,7 +63,7 @@ $$ ### synthesize - + Synthesize an `qiskit.circuit.library.PauliEvolutionGate`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.TwoQubitBasisDecomposer.mdx b/docs/api/qiskit/dev/qiskit.synthesis.TwoQubitBasisDecomposer.mdx index 4955775133c..071dabb7bce 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.TwoQubitBasisDecomposer.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.TwoQubitBasisDecomposer.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.TwoQubitBasisDecomposer # TwoQubitBasisDecomposer - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A class for decomposing 2-qubit unitaries into minimal number of uses of a 2-qubit basis gate. @@ -22,7 +22,7 @@ python_api_name: qiskit.synthesis.TwoQubitBasisDecomposer ### \_\_call\_\_ - + Decompose a two-qubit `unitary` over fixed basis and $SU(2)$ using the best approximation given that each basis application has a finite `basis_fidelity`. **Parameters** @@ -49,7 +49,7 @@ python_api_name: qiskit.synthesis.TwoQubitBasisDecomposer ### decomp0 - + Decompose target $\sim U_d(x, y, z)$ with $0$ uses of the basis gate. Result $U_r$ has trace: $$ @@ -62,7 +62,7 @@ $$ ### decomp1 - + Decompose target $\sim U_d(x, y, z)$ with $1$ use of the basis gate $\sim U_d(a, b, c)$. Result $U_r$ has trace: $$ @@ -75,7 +75,7 @@ $$ ### decomp2\_supercontrolled - + Decompose target $\sim U_d(x, y, z)$ with $2$ uses of the basis gate. For supercontrolled basis $\sim U_d(\pi/4, b, 0)$, all b, result $U_r$ has trace @@ -89,19 +89,19 @@ $$ ### decomp3\_supercontrolled - + Decompose target with $3$ uses of the basis. This is an exact decomposition for supercontrolled basis $\sim U_d(\pi/4, b, 0)$, all b, and any target. No guarantees for non-supercontrolled basis. ### num\_basis\_gates - + Computes the number of basis gates needed in a decomposition of input unitary ### traces - + Give the expected traces $\Big\vert\text{Tr}(U \cdot U_\text{target}^{\dag})\Big\vert$ for a different number of basis gates. diff --git a/docs/api/qiskit/dev/qiskit.synthesis.TwoQubitWeylDecomposition.mdx b/docs/api/qiskit/dev/qiskit.synthesis.TwoQubitWeylDecomposition.mdx index 228716a086c..52014208459 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.TwoQubitWeylDecomposition.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.TwoQubitWeylDecomposition.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.TwoQubitWeylDecomposition # TwoQubitWeylDecomposition - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Two-qubit Weyl decomposition. @@ -32,9 +32,7 @@ $$ \pi /4 \geq a \geq b \geq |c| $$ - This is an abstract factory class that instantiates itself as specialized subclasses based on the fidelity, such that the approximation error from specialization has an average gate fidelity at least as high as requested. The specialized subclasses have unique canonical representations thus avoiding problems of numerical stability. - - Passing non-None fidelity to specializations is treated as an assertion, raising QiskitError if forcing the specialization is more approximate than asserted. + This class avoids some problems of numerical instability near high-symmetry loci within the Weyl chamber. If there is a high-symmetry gate “nearby” (in terms of the requested average gate fidelity), then it return a canonicalized decomposition of that high-symmetry gate. **References** @@ -42,11 +40,6 @@ $$ 2. B. Kraus, J. I. Cirac, *Optimal Creation of Entanglement Using a Two-Qubit Gate*, [arXiv:0011050 \[quant-ph\]](https://arxiv.org/abs/quant-ph/0011050) 3. B. Drury, P. J. Love, *Constructive Quantum Shannon Decomposition from Cartan Involutions*, [arXiv:0806.4015 \[quant-ph\]](https://arxiv.org/abs/0806.4015) - **Parameters** - - * **unitary\_matrix** ([*ndarray*](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray "(in NumPy v1.26)")) – The unitary to decompose. - * **fidelity** – The target fidelity of the decomposed operation. - ## Attributes ### a @@ -97,7 +90,7 @@ $$ ### actual\_fidelity - + Calculates the actual fidelity of the decomposed circuit to the input unitary. **Return type** @@ -107,7 +100,7 @@ $$ ### circuit - + Returns Weyl decomposition in circuit form. **Return type** @@ -117,18 +110,24 @@ $$ ### from\_bytes - + Decode bytes into [`TwoQubitWeylDecomposition`](#qiskit.synthesis.TwoQubitWeylDecomposition "qiskit.synthesis.TwoQubitWeylDecomposition"). **Return type** - [*TwoQubitWeylDecomposition*](#qiskit.synthesis.TwoQubitWeylDecomposition "qiskit.synthesis.two_qubit.two_qubit_decompose.TwoQubitWeylDecomposition") + [TwoQubitWeylDecomposition](#qiskit.synthesis.TwoQubitWeylDecomposition "qiskit.synthesis.TwoQubitWeylDecomposition") ### specialize - - Make changes to the decomposition to comply with any specialization. + + Make changes to the decomposition to comply with any specializations. + + This method will always raise a `NotImplementedError` because there are no specializations to comply with in the current implementation. + + + The method `qiskit.synthesis.two_qubit.two_qubit_decompose.TwoQubitWeylDecomposition.specialize()` is deprecated as of qiskit 1.1.0. It will be removed in the 2.0.0 release. + diff --git a/docs/api/qiskit/dev/qiskit.synthesis.XXDecomposer.mdx b/docs/api/qiskit/dev/qiskit.synthesis.XXDecomposer.mdx index efbc9283293..22412548718 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.XXDecomposer.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.XXDecomposer.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.XXDecomposer # XXDecomposer - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A class for optimal decomposition of 2-qubit unitaries into 2-qubit basis gates of `XX` type (i.e., each locally equivalent to $CAN(\alpha, 0, 0)$ for a possibly varying $alpha$). @@ -26,7 +26,7 @@ python_api_name: qiskit.synthesis.XXDecomposer ### \_\_call\_\_ - + Fashions a circuit which (perhaps approximately) models the special unitary operation `unitary`, using the circuit templates supplied at initialization as `embodiments`. The routine uses `basis_fidelity` to select the optimal circuit template, including when performing exact synthesis; the contents of `basis_fidelity` is a dictionary mapping interaction strengths (scaled so that $CX = RZX(\pi/2)$ corresponds to $\pi/2$) to circuit fidelities. **Parameters** @@ -48,7 +48,7 @@ python_api_name: qiskit.synthesis.XXDecomposer ### num\_basis\_gates - + Counts the number of gates that would be emitted during re-synthesis. diff --git a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.AQC.mdx b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.AQC.mdx index aa997b8453c..bb091c83dc8 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.AQC.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.AQC.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.AQC # AQC - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A generic implementation of the Approximate Quantum Compiler. This implementation is agnostic of the underlying implementation of the approximate circuit, objective, and optimizer. Users may pass corresponding implementations of the abstract classes: @@ -27,7 +27,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.AQC ### compile\_unitary - + Approximately compiles a circuit represented as a unitary matrix by solving an optimization problem defined by `approximating_objective` and using `approximate_circuit` as a template for the approximate circuit. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximateCircuit.mdx b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximateCircuit.mdx index d6eeaf79a85..38a9da90d94 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximateCircuit.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximateCircuit.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximateCircuit # ApproximateCircuit - + Bases: [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit"), [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") A base class that represents an approximate circuit. @@ -91,7 +91,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximateCircuit ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.synthesis.unitary.aqc.ApproximateCircuit.num_input_vars "qiskit.synthesis.unitary.aqc.ApproximateCircuit.num_input_vars") must be zero. @@ -105,7 +105,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximateCircuit ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -113,7 +113,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximateCircuit ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.synthesis.unitary.aqc.ApproximateCircuit.num_captured_vars "qiskit.synthesis.unitary.aqc.ApproximateCircuit.num_captured_vars") must be zero. @@ -133,7 +133,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximateCircuit ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -236,7 +236,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximateCircuit ### build - + **Constructs this circuit out of the parameters(thetas). Parameter values must be set before** constructing the circuit. diff --git a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximatingObjective.mdx b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximatingObjective.mdx index b9023a7e1b1..397da3145c8 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximatingObjective.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximatingObjective.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximatingObjective # ApproximatingObjective - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") A base class for an optimization problem definition. An implementing class must provide at least an implementation of the `objective` method. In such case only gradient free optimizers can be used. Both method, `objective` and `gradient`, preferable to have in an implementation. @@ -31,7 +31,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximatingObjective ### gradient - + Computes a gradient with respect to parameters given a vector of parameter values. **Parameters** @@ -49,7 +49,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximatingObjective ### objective - + Computes a value of the objective function given a vector of parameter values. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.mdx b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.mdx index 7151738d4f5..7376b370078 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.CNOTUnitCircuit # CNOTUnitCircuit - + Bases: [`ApproximateCircuit`](qiskit.synthesis.unitary.aqc.ApproximateCircuit "qiskit.synthesis.unitary.aqc.approximate.ApproximateCircuit") A class that represents an approximate circuit based on CNOT unit blocks. @@ -97,7 +97,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.CNOTUnitCircuit ### num\_captured\_vars - The number of runtime classical variables in the circuit marked as captured from an enclosing scope. + The number of real-time classical variables in the circuit marked as captured from an enclosing scope. This is the length of the `iter_captured_vars()` iterable. If this is non-zero, [`num_input_vars`](#qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.num_input_vars "qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.num_input_vars") must be zero. @@ -111,7 +111,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.CNOTUnitCircuit ### num\_declared\_vars - The number of runtime classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. + The number of real-time classical variables in the circuit that are declared by this circuit scope, excluding inputs or captures. This is the length of the `iter_declared_vars()` iterable. @@ -119,7 +119,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.CNOTUnitCircuit ### num\_input\_vars - The number of runtime classical variables in the circuit marked as circuit inputs. + The number of real-time classical variables in the circuit marked as circuit inputs. This is the length of the `iter_input_vars()` iterable. If this is non-zero, [`num_captured_vars`](#qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.num_captured_vars "qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.num_captured_vars") must be zero. @@ -139,7 +139,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.CNOTUnitCircuit ### num\_vars - The number of runtime classical variables in the circuit. + The number of real-time classical variables in the circuit. This is the length of the `iter_vars()` iterable. @@ -242,7 +242,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.CNOTUnitCircuit ### build - + **Constructs a Qiskit quantum circuit out of the parameters (angles) of this circuit. If a** parameter value is less in absolute value than the specified tolerance then the corresponding rotation gate will be skipped in the circuit. diff --git a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitObjective.mdx b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitObjective.mdx index 172f6118112..f004ca2793b 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitObjective.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitObjective.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.CNOTUnitObjective # CNOTUnitObjective - + Bases: [`ApproximatingObjective`](qiskit.synthesis.unitary.aqc.ApproximatingObjective "qiskit.synthesis.unitary.aqc.approximate.ApproximatingObjective"), [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") A base class for a problem definition based on CNOT unit. This class may have different subclasses for objective and gradient computations. diff --git a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.DefaultCNOTUnitObjective.mdx b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.DefaultCNOTUnitObjective.mdx index 22c02af5990..93c2310f3fa 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.DefaultCNOTUnitObjective.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.DefaultCNOTUnitObjective.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.DefaultCNOTUnitObjective # DefaultCNOTUnitObjective - + Bases: [`CNOTUnitObjective`](qiskit.synthesis.unitary.aqc.CNOTUnitObjective "qiskit.synthesis.unitary.aqc.cnot_unit_objective.CNOTUnitObjective") A naive implementation of the objective function based on CNOT units. @@ -42,7 +42,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.DefaultCNOTUnitObjective ### gradient - + Computes a gradient with respect to parameters given a vector of parameter values. **Parameters** @@ -60,7 +60,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.DefaultCNOTUnitObjective ### objective - + Computes a value of the objective function given a vector of parameter values. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.FastCNOTUnitObjective.mdx b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.FastCNOTUnitObjective.mdx index 075009dcc87..dda7d157286 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.FastCNOTUnitObjective.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.FastCNOTUnitObjective.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.FastCNOTUnitObjective # FastCNOTUnitObjective - + Bases: [`CNOTUnitObjective`](qiskit.synthesis.unitary.aqc.CNOTUnitObjective "qiskit.synthesis.unitary.aqc.cnot_unit_objective.CNOTUnitObjective") Implementation of objective function and gradient calculator, which is similar to `DefaultCNOTUnitObjective` but several times faster. @@ -42,7 +42,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.FastCNOTUnitObjective ### gradient - + Computes the gradient of objective function. See description of the base class method. **Return type** @@ -52,7 +52,7 @@ python_api_name: qiskit.synthesis.unitary.aqc.FastCNOTUnitObjective ### objective - + Computes the objective function and some intermediate data for the subsequent gradient computation. See description of the base class method. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.mdx b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.mdx index b5c63e78ef2..de0e9ea1f72 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.mdx @@ -83,7 +83,7 @@ A basic usage of the AQC algorithm should consist of the following steps: unitary = ... # Define a number of qubits for the algorithm, at least 3 qubits -num_qubits = int(round(np.log2(unitary.shape[0]))) +num_qubits = round(math.log2(unitary.shape[0])) # Choose a layout of the CNOT structure for the approximate circuit, e.g. ``spin`` for # a linear layout. @@ -129,7 +129,7 @@ This uses a helper function, [`make_cnot_network`](#qiskit.synthesis.unitary.aqc ### make\_cnot\_network - + Generates a network consisting of building blocks each containing a CNOT gate and possibly some single-qubit ones. This network models a quantum operator in question. Note, each building block has 2 input and outputs corresponding to a pair of qubits. What we actually return here is a chain of indices of qubit pairs shared by every building block in a row. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.AnalysisPass.mdx b/docs/api/qiskit/dev/qiskit.transpiler.AnalysisPass.mdx index 17546d7751f..16508e0f341 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.AnalysisPass.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.AnalysisPass.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.AnalysisPass # AnalysisPass - + Bases: `BasePass` An analysis pass: change property set, not DAG. @@ -35,7 +35,7 @@ python_api_name: qiskit.transpiler.AnalysisPass ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.AnalysisPass ### name - + Name of the pass. **Return type** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.AnalysisPass ### run - + Run a pass on the DAGCircuit. This is implemented by the pass developer. **Parameters** @@ -79,7 +79,7 @@ python_api_name: qiskit.transpiler.AnalysisPass ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.CouplingMap.mdx b/docs/api/qiskit/dev/qiskit.transpiler.CouplingMap.mdx index 4bffe872d6f..db0c2113e85 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.CouplingMap.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.CouplingMap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.CouplingMap # CouplingMap - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Directed graph specifying fixed coupling. @@ -58,7 +58,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### add\_edge - + Add directed edge to coupling graph. src (int): source physical qubit dst (int): destination physical qubit @@ -66,7 +66,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### add\_physical\_qubit - + Add a physical qubit to the coupling graph as a node. physical\_qubit (int): An integer representing a physical qubit. @@ -78,7 +78,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### compute\_distance\_matrix - + Compute the full distance matrix on pairs of nodes. The distance map self.\_dist\_matrix is computed from the graph using all\_pairs\_shortest\_path\_length. This is normally handled internally by the [`distance_matrix`](#qiskit.transpiler.CouplingMap.distance_matrix "qiskit.transpiler.CouplingMap.distance_matrix") attribute or the [`distance()`](#qiskit.transpiler.CouplingMap.distance "qiskit.transpiler.CouplingMap.distance") method but can be called if you’re accessing the distance matrix outside of those or want to pre-generate it. @@ -86,7 +86,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### connected\_components - + Separate a [`CouplingMap`](#qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap") into subgraph [`CouplingMap`](#qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap") for each connected component. The connected components of a [`CouplingMap`](#qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap") are the subgraphs that are not part of any larger subgraph. For example, if you had a coupling map that looked like: @@ -142,7 +142,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### distance - + Returns the undirected distance between physical\_qubit1 and physical\_qubit2. **Parameters** @@ -165,7 +165,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### draw - + Draws the coupling map. This function calls the [`graphviz_draw()`](https://www.rustworkx.org/apiref/rustworkx.visualization.graphviz_draw.html#rustworkx.visualization.graphviz_draw "(in rustworkx v0.14)") function from the `rustworkx` package to draw the [`CouplingMap`](#qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap") object. @@ -181,7 +181,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### from\_full - + Return a fully connected coupling map on n qubits. **Return type** @@ -191,7 +191,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### from\_grid - + Return a coupling map of qubits connected on a grid of num\_rows x num\_columns. **Return type** @@ -201,7 +201,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### from\_heavy\_hex - + Return a heavy hexagon graph coupling map. A heavy hexagon graph is described in: @@ -224,7 +224,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### from\_heavy\_square - + Return a heavy square graph coupling map. A heavy square graph is described in: @@ -247,7 +247,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### from\_hexagonal\_lattice - + Return a hexagonal lattice graph coupling map. **Parameters** @@ -267,7 +267,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### from\_line - + Return a coupling map of n qubits connected in a line. **Return type** @@ -277,7 +277,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### from\_ring - + Return a coupling map of n qubits connected to each of their neighbors in a ring. **Return type** @@ -287,7 +287,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### get\_edges - + Gets the list of edges in the coupling graph. **Returns** @@ -301,7 +301,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### is\_connected - + Test if the graph is connected. Return True if connected, False otherwise @@ -309,19 +309,19 @@ python_api_name: qiskit.transpiler.CouplingMap ### largest\_connected\_component - + Return a set of qubits in the largest connected component. ### make\_symmetric - + Convert uni-directional edges into bi-directional. ### neighbors - + Return the nearest neighbors of a physical qubit. Directionality matters, i.e. a neighbor must be reachable by going one hop in the direction of an edge. @@ -329,7 +329,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### reduce - + Returns a reduced coupling map that corresponds to the subgraph of qubits selected in the mapping. **Parameters** @@ -352,7 +352,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### shortest\_undirected\_path - + Returns the shortest undirected path between physical\_qubit1 and physical\_qubit2. **Parameters** @@ -375,7 +375,7 @@ python_api_name: qiskit.transpiler.CouplingMap ### size - + Return the number of physical qubits in this graph. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.InstructionDurations.mdx b/docs/api/qiskit/dev/qiskit.transpiler.InstructionDurations.mdx index 1ae4c4bbe05..45aebf0beae 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.InstructionDurations.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.InstructionDurations.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.InstructionDurations # InstructionDurations - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Helper class to provide durations of instructions for scheduling. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.InstructionDurations ### from\_backend - + Construct an [`InstructionDurations`](#qiskit.transpiler.InstructionDurations "qiskit.transpiler.InstructionDurations") object from the backend. **Parameters** @@ -41,7 +41,7 @@ python_api_name: qiskit.transpiler.InstructionDurations ### get - + Get the duration of the instruction with the name, qubits, and parameters. Some instructions may have a parameter dependent duration. @@ -68,7 +68,7 @@ python_api_name: qiskit.transpiler.InstructionDurations ### units\_used - + Get the set of all units used in this instruction durations. **Returns** @@ -82,7 +82,7 @@ python_api_name: qiskit.transpiler.InstructionDurations ### update - + Update self with inst\_durations (inst\_durations overwrite self). **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.InstructionProperties.mdx b/docs/api/qiskit/dev/qiskit.transpiler.InstructionProperties.mdx index c066857cd70..69d0f0ac8dc 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.InstructionProperties.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.InstructionProperties.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.InstructionProperties # InstructionProperties - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") A representation of the properties of a gate implementation. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.Layout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.Layout.mdx index b36fc9ee503..4ea9feb5074 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.Layout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.Layout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.Layout # Layout - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Two-ways dict to represent a Layout. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.Layout ### add - + Adds a map element between bit and physical\_bit. If physical\_bit is not defined, bit will be mapped to a new physical bit. **Parameters** @@ -30,17 +30,17 @@ python_api_name: qiskit.transpiler.Layout ### add\_register - + Adds at the end physical\_qubits that map each bit in reg. **Parameters** - **reg** ([*Register*](qiskit.circuit.Register "qiskit.circuit.Register")) – A (qu)bit Register. For example, QuantumRegister(3, ‘qr’). + **reg** ([*Register*](circuit#qiskit.circuit.Register "qiskit.circuit.Register")) – A (qu)bit Register. For example, QuantumRegister(3, ‘qr’). ### combine\_into\_edge\_map - + Combines self and another\_layout into an “edge map”. For example: @@ -71,15 +71,36 @@ python_api_name: qiskit.transpiler.Layout [**LayoutError**](transpiler#qiskit.transpiler.LayoutError "qiskit.transpiler.LayoutError") – another\_layout can be bigger than self, but not smaller. Otherwise, raises. + ### compose + + + Compose this layout with another layout. + + If this layout represents a mapping from the P-qubits to the positions of the Q-qubits, and the other layout represents a mapping from the Q-qubits to the positions of the R-qubits, then the composed layout represents a mapping from the P-qubits to the positions of the R-qubits. + + **Parameters** + + * **other** ([*Layout*](#qiskit.transpiler.Layout "qiskit.transpiler.layout.Layout")) – The existing [`Layout`](#qiskit.transpiler.Layout "qiskit.transpiler.Layout") to compose this [`Layout`](#qiskit.transpiler.Layout "qiskit.transpiler.Layout") with. + * **qubits** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit")*]*) – A list of [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit") objects over which `other` is defined, used to establish the correspondence between the positions of the `other` qubits and the actual qubits. + + **Returns** + + A new layout object the represents this layout composed with the `other` layout. + + **Return type** + + [*Layout*](#qiskit.transpiler.Layout "qiskit.transpiler.layout.Layout") + + ### copy - + Returns a copy of a Layout instance. ### from\_dict - + Populates a Layout from a dictionary. The dictionary must be a bijective mapping between virtual qubits (tuple) and physical qubits (int). @@ -113,7 +134,7 @@ python_api_name: qiskit.transpiler.Layout ### from\_intlist - + Converts a list of integers to a Layout mapping virtual qubits (index of the list) to physical qubits (the list values). **Parameters** @@ -136,7 +157,7 @@ python_api_name: qiskit.transpiler.Layout ### from\_qubit\_list - + Populates a Layout from a list containing virtual qubits, Qubit or None. **Parameters** @@ -159,7 +180,7 @@ python_api_name: qiskit.transpiler.Layout ### generate\_trivial\_layout - + Creates a trivial (“one-to-one”) Layout with the registers and qubits in regs. **Parameters** @@ -177,38 +198,55 @@ python_api_name: qiskit.transpiler.Layout ### get\_physical\_bits - + Returns the dictionary where the keys are physical (qu)bits and the values are virtual (qu)bits. ### get\_registers - + Returns the registers in the layout \[QuantumRegister(2, ‘qr0’), QuantumRegister(3, ‘qr1’)] :returns: A set of Registers in the layout :rtype: Set ### get\_virtual\_bits - + Returns the dictionary where the keys are virtual (qu)bits and the values are physical (qu)bits. + ### inverse + + + Finds the inverse of this layout. + + This is possible when the layout is a bijective mapping, however the input and the output qubits may be different (in particular, this layout may be the mapping from the extended-with-ancillas virtual qubits to physical qubits). Thus, if this layout represents a mapping from the P-qubits to the positions of the Q-qubits, the inverse layout represents a mapping from the Q-qubits to the positions of the P-qubits. + + **Parameters** + + * **source\_qubits** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit")*]*) – A list of [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit") objects representing the domain of the layout. + * **target\_qubits** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")*\[*[*Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.quantumregister.Qubit")*]*) – A list of [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit") objects representing the image of the layout. + + **Returns** + + A new layout object the represents the inverse of this layout. + + ### order\_based\_on\_type - + decides which one is physical/virtual based on the type. Returns (virtual, physical) ### reorder\_bits - + Given an ordered list of bits, reorder them according to this layout. The list of bits must exactly match the virtual bits in this layout. **Parameters** - **bits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Bit*](qiskit.circuit.Bit "qiskit.circuit.Bit")*]*) – the bits to reorder. + **bits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[*[*Bit*](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit")*]*) – the bits to reorder. **Returns** @@ -221,7 +259,7 @@ python_api_name: qiskit.transpiler.Layout ### swap - + Swaps the map between left and right. **Parameters** @@ -233,5 +271,15 @@ python_api_name: qiskit.transpiler.Layout [**LayoutError**](transpiler#qiskit.transpiler.LayoutError "qiskit.transpiler.LayoutError") – If left and right have not the same type. + + ### to\_permutation + + + Creates a permutation corresponding to this layout. + + This is possible when the layout is a bijective mapping with the same source and target qubits (for instance, a “final\_layout” corresponds to a permutation of the physical circuit qubits). If this layout is a mapping from qubits to their new positions, the resulting permutation describes which qubits occupy the positions 0, 1, 2, etc. after applying the permutation. + + For example, suppose that the list of qubits is `[qr_0, qr_1, qr_2]`, and the layout maps `qr_0` to `2`, `qr_1` to `0`, and `qr_2` to `1`. In terms of positions in `qubits`, this maps `0` to `2`, `1` to `0` and `2` to `1`, with the corresponding permutation being `[1, 2, 0]`. + diff --git a/docs/api/qiskit/dev/qiskit.transpiler.PassManager.mdx b/docs/api/qiskit/dev/qiskit.transpiler.PassManager.mdx index c552f98e24f..d861b79990f 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.PassManager.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.PassManager.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.PassManager # PassManager - + Bases: [`BasePassManager`](qiskit.passmanager.BasePassManager "qiskit.passmanager.passmanager.BasePassManager") Manager for a set of Passes and their scheduling during transpilation. @@ -24,7 +24,7 @@ python_api_name: qiskit.transpiler.PassManager ### append - + Append a Pass Set to the schedule of passes. **Parameters** @@ -38,7 +38,7 @@ python_api_name: qiskit.transpiler.PassManager ### draw - + Draw the pass manager. This function needs [pydot](https://github.com/erocarrera/pydot), which in turn needs [Graphviz](https://www.graphviz.org/) to be installed. @@ -64,7 +64,7 @@ python_api_name: qiskit.transpiler.PassManager ### remove - + Removes a particular pass in the scheduler. **Parameters** @@ -78,7 +78,7 @@ python_api_name: qiskit.transpiler.PassManager ### replace - + Replace a particular pass in the scheduler. **Parameters** @@ -89,7 +89,7 @@ python_api_name: qiskit.transpiler.PassManager ### run - + Run all the passes on the specified `circuits`. **Parameters** @@ -141,7 +141,7 @@ python_api_name: qiskit.transpiler.PassManager ### to\_flow\_controller - + Linearize this manager into a single [`FlowControllerLinear`](qiskit.passmanager.FlowControllerLinear "qiskit.passmanager.FlowControllerLinear"), so that it can be nested inside another pass manager. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.PassManagerConfig.mdx b/docs/api/qiskit/dev/qiskit.transpiler.PassManagerConfig.mdx index a57b4121539..c4e42702456 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.PassManagerConfig.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.PassManagerConfig.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.PassManagerConfig # PassManagerConfig - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Pass Manager Configuration. @@ -40,7 +40,7 @@ python_api_name: qiskit.transpiler.PassManagerConfig ### from\_backend - + Construct a configuration based on a backend and user input. This method automatically gererates a PassManagerConfig object based on the backend’s features. User options can be used to overwrite the configuration. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.StagedPassManager.mdx b/docs/api/qiskit/dev/qiskit.transpiler.StagedPassManager.mdx index e55346679a3..27d93ecbc7c 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.StagedPassManager.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.StagedPassManager.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.StagedPassManager # StagedPassManager - + Bases: [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.passmanager.PassManager") A pass manager pipeline built from individual stages. @@ -64,7 +64,7 @@ python_api_name: qiskit.transpiler.StagedPassManager ### append - + Append a Pass Set to the schedule of passes. **Parameters** @@ -78,13 +78,13 @@ python_api_name: qiskit.transpiler.StagedPassManager ### draw - + Draw the staged pass manager. ### remove - + Removes a particular pass in the scheduler. **Parameters** @@ -98,7 +98,7 @@ python_api_name: qiskit.transpiler.StagedPassManager ### replace - + Replace a particular pass in the scheduler. **Parameters** @@ -109,7 +109,7 @@ python_api_name: qiskit.transpiler.StagedPassManager ### run - + Run all the passes on the specified `circuits`. **Parameters** @@ -161,7 +161,7 @@ python_api_name: qiskit.transpiler.StagedPassManager ### to\_flow\_controller - + Linearize this manager into a single [`FlowControllerLinear`](qiskit.passmanager.FlowControllerLinear "qiskit.passmanager.FlowControllerLinear"), so that it can be nested inside another pass manager. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.Target.mdx b/docs/api/qiskit/dev/qiskit.transpiler.Target.mdx index 4331715b01e..3d132dbacec 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.Target.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.Target.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.Target # Target - + Bases: [`Mapping`](https://docs.python.org/3/library/collections.abc.html#collections.abc.Mapping "(in Python v3.12)") The intent of the `Target` object is to inform Qiskit’s compiler about the constraints of a particular backend so the compiler can compile an input circuit to something that works and is optimized for a device. It currently contains a description of instructions on a backend and their properties as well as some timing information. However, this exact interface may evolve over time as the needs of the compiler change. These changes will be done in a backwards compatible and controlled manner when they are made (either through versioning, subclassing, or mixins) to add on to the set of information exposed by a target. @@ -159,7 +159,7 @@ python_api_name: qiskit.transpiler.Target ### add\_instruction - + Add a new instruction to the [`Target`](#qiskit.transpiler.Target "qiskit.transpiler.Target") As `Target` objects are strictly additive this is the primary method for modifying a `Target`. Typically, you will use this to fully populate a `Target` before using it in [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2"). For example: @@ -198,7 +198,7 @@ python_api_name: qiskit.transpiler.Target ### build\_coupling\_map - + Get a [`CouplingMap`](qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap") from this target. If there is a mix of two qubit operations that have a connectivity constraint and those that are globally defined this will also return `None` because the globally connectivity means there is no constraint on the target. If you wish to see the constraints of the two qubit operations that have constraints you should use the `two_q_gate` argument to limit the output to the gates which have a constraint. @@ -226,7 +226,7 @@ python_api_name: qiskit.transpiler.Target ### durations - + Get an InstructionDurations object from the target **Returns** @@ -242,7 +242,7 @@ python_api_name: qiskit.transpiler.Target ### from\_configuration - + Create a target object from the individual global configuration Prior to the creation of the [`Target`](#qiskit.transpiler.Target "qiskit.transpiler.Target") class, the constraints of a backend were represented by a collection of different objects which combined represent a subset of the information contained in the [`Target`](#qiskit.transpiler.Target "qiskit.transpiler.Target"). This function provides a simple interface to convert those separate objects to a [`Target`](#qiskit.transpiler.Target "qiskit.transpiler.Target"). @@ -283,7 +283,7 @@ python_api_name: qiskit.transpiler.Target ### get\_calibration - + Get calibrated pulse schedule for the instruction. If calibration is templated with parameters, one can also provide those values to build a schedule with assigned parameters. @@ -306,7 +306,7 @@ python_api_name: qiskit.transpiler.Target ### get\_non\_global\_operation\_names - + Return the non-global operation names for the target The non-global operations are those in the target which don’t apply on all qubits (for single qubit operations) or all multi-qubit qargs (for multi-qubit operations). @@ -326,7 +326,7 @@ python_api_name: qiskit.transpiler.Target ### has\_calibration - + Return whether the instruction (operation + qubits) defines a calibration. **Parameters** @@ -345,7 +345,7 @@ python_api_name: qiskit.transpiler.Target ### instruction\_properties - + Get the instruction properties for a specific instruction tuple This method is to be used in conjunction with the [`instructions`](#qiskit.transpiler.Target.instructions "qiskit.transpiler.Target.instructions") attribute of a [`Target`](#qiskit.transpiler.Target "qiskit.transpiler.Target") object. You can use this method to quickly get the instruction properties for an element of [`instructions`](#qiskit.transpiler.Target.instructions "qiskit.transpiler.Target.instructions") by using the index in that list. However, if you’re not working with [`instructions`](#qiskit.transpiler.Target.instructions "qiskit.transpiler.Target.instructions") directly it is likely more efficient to access the target directly via the name and qubits to get the instruction properties. For example, if [`instructions`](#qiskit.transpiler.Target.instructions "qiskit.transpiler.Target.instructions") returned: @@ -383,7 +383,7 @@ python_api_name: qiskit.transpiler.Target ### instruction\_schedule\_map - + Return an [`InstructionScheduleMap`](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") for the instructions in the target with a pulse schedule defined. **Returns** @@ -397,7 +397,7 @@ python_api_name: qiskit.transpiler.Target ### instruction\_supported - + Return whether the instruction (operation + qubits) is supported by the target **Parameters** @@ -436,15 +436,15 @@ python_api_name: qiskit.transpiler.Target ### items - + ### keys - + ### operation\_from\_name - + Get the operation class object for a given name **Parameters** @@ -462,7 +462,7 @@ python_api_name: qiskit.transpiler.Target ### operation\_names\_for\_qargs - + Get the operation names for a specified qargs tuple **Parameters** @@ -484,7 +484,7 @@ python_api_name: qiskit.transpiler.Target ### operations\_for\_qargs - + Get the operation class object for a specified qargs tuple **Parameters** @@ -506,7 +506,7 @@ python_api_name: qiskit.transpiler.Target ### qargs\_for\_operation\_name - + Get the qargs for a given operation name **Parameters** @@ -524,7 +524,7 @@ python_api_name: qiskit.transpiler.Target ### timing\_constraints - + Get an `TimingConstraints` object from the target **Returns** @@ -538,7 +538,7 @@ python_api_name: qiskit.transpiler.Target ### update\_from\_instruction\_schedule\_map - + Update the target from an instruction schedule map. If the input instruction schedule map contains new instructions not in the target they will be added. However, if it contains additional qargs for an existing instruction in the target it will error. @@ -570,7 +570,7 @@ python_api_name: qiskit.transpiler.Target ### update\_instruction\_properties - + Update the property object for an instruction qarg pair already in the Target **Parameters** @@ -586,6 +586,6 @@ python_api_name: qiskit.transpiler.Target ### values - + diff --git a/docs/api/qiskit/dev/qiskit.transpiler.TransformationPass.mdx b/docs/api/qiskit/dev/qiskit.transpiler.TransformationPass.mdx index 7590d4f21a1..e49c248a357 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.TransformationPass.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.TransformationPass.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.TransformationPass # TransformationPass - + Bases: `BasePass` A transformation pass: change DAG, not property set. @@ -35,7 +35,7 @@ python_api_name: qiskit.transpiler.TransformationPass ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.TransformationPass ### name - + Name of the pass. **Return type** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.TransformationPass ### run - + Run a pass on the DAGCircuit. This is implemented by the pass developer. **Parameters** @@ -79,7 +79,7 @@ python_api_name: qiskit.transpiler.TransformationPass ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.TranspileLayout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.TranspileLayout.mdx index 0a02bf76fc7..a0a55b73068 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.TranspileLayout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.TranspileLayout.mdx @@ -8,18 +8,18 @@ python_api_name: qiskit.transpiler.TranspileLayout # TranspileLayout - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") - Layout attributes from output circuit from transpiler. + Layout attributes for the output circuit from transpiler. - The transpiler in general is unitary-perserving up to permutations caused by setting and applying initial layout during the [Layout Stage](transpiler#layout-stage) and [`SwapGate`](qiskit.circuit.library.SwapGate "qiskit.circuit.library.SwapGate") insertion during the [Routing Stage](transpiler#routing-stage). To provide an interface to reason about these permutations caused by the [`transpiler`](transpiler#module-qiskit.transpiler "qiskit.transpiler"). In general the normal interface to access and reason about the layout transformations made by the transpiler is to use the helper methods defined on this class. + The [`transpiler`](transpiler#module-qiskit.transpiler "qiskit.transpiler") is unitary-preserving up to the “initial layout” and “final layout” permutations. The initial layout permutation is caused by setting and applying the initial layout during the [Layout Stage](transpiler#layout-stage). The final layout permutation is caused by [`SwapGate`](qiskit.circuit.library.SwapGate "qiskit.circuit.library.SwapGate") insertion during the [Routing Stage](transpiler#routing-stage). This class provides an interface to reason about these permutations using a variety of helper methods. - For example, looking at the initial layout, the transpiler can potentially remap the order of the qubits in your circuit as it fits the circuit to the target backend. If the input circuit was: + During the layout stage, the transpiler can potentially remap the order of the qubits in the circuit as it fits the circuit to the target backend. For example, let the input circuit be: - Then during the layout stage the transpiler reorders the qubits to be: + Suppose that during the layout stage the transpiler reorders the qubits to be: - then the output of the [`initial_virtual_layout()`](#qiskit.transpiler.TranspileLayout.initial_virtual_layout "qiskit.transpiler.TranspileLayout.initial_virtual_layout") would be equivalent to: + Then the output of the [`initial_virtual_layout()`](#qiskit.transpiler.TranspileLayout.initial_virtual_layout "qiskit.transpiler.TranspileLayout.initial_virtual_layout") method is equivalent to: ```python Layout({ @@ -29,23 +29,23 @@ python_api_name: qiskit.transpiler.TranspileLayout }) ``` - (it is also this attribute in the [`QuantumCircuit.draw()`](qiskit.circuit.QuantumCircuit#draw "qiskit.circuit.QuantumCircuit.draw") and [`circuit_drawer()`](qiskit.visualization.circuit_drawer "qiskit.visualization.circuit_drawer") which is used to display the mapping of qubits to positions in circuit visualizations post-transpilation) + (it is also this attribute in the [`QuantumCircuit.draw()`](qiskit.circuit.QuantumCircuit#draw "qiskit.circuit.QuantumCircuit.draw") and [`circuit_drawer()`](qiskit.visualization.circuit_drawer "qiskit.visualization.circuit_drawer") which is used to display the mapping of qubits to positions in circuit visualizations post-transpilation). - Building on this above example for final layout, if the transpiler needed to insert swap gates during routing so the output circuit became: + Building on the above example, suppose that during the routing stage the transpiler needs to insert swap gates, and the output circuit becomes: - then the output of the [`routing_permutation()`](#qiskit.transpiler.TranspileLayout.routing_permutation "qiskit.transpiler.TranspileLayout.routing_permutation") method would be: + Then the output of the [`routing_permutation()`](#qiskit.transpiler.TranspileLayout.routing_permutation "qiskit.transpiler.TranspileLayout.routing_permutation") method is: ```python [1, 0, 2] ``` - which maps the qubits at each position to their final position after any swap insertions caused by routing. + which maps positions of qubits before routing to their final positions after routing. There are three public attributes associated with the class, however these are mostly provided for backwards compatibility and represent the internal state from the transpiler. They are defined as: - > * [`initial_layout`](#qiskit.transpiler.TranspileLayout.initial_layout "qiskit.transpiler.TranspileLayout.initial_layout") - This attribute is used to model the permutation caused by the [Layout Stage](transpiler#layout-stage) it contains a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object that maps the input [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")s [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit") objects to the position in the output `QuantumCircuit.qubits` list. - > * [`input_qubit_mapping`](#qiskit.transpiler.TranspileLayout.input_qubit_mapping "qiskit.transpiler.TranspileLayout.input_qubit_mapping") - This attribute is used to retain input ordering of the original [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") object. It maps the virtual [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit") object from the original circuit (and [`initial_layout`](#qiskit.transpiler.TranspileLayout.initial_layout "qiskit.transpiler.TranspileLayout.initial_layout")) to its corresponding position in [`QuantumCircuit.qubits`](qiskit.circuit.QuantumCircuit#qubits "qiskit.circuit.QuantumCircuit.qubits") in the original circuit. This is needed when computing the permutation of the `Operator` of the circuit (and used by [`Operator.from_circuit()`](qiskit.quantum_info.Operator#from_circuit "qiskit.quantum_info.Operator.from_circuit")). - > * [`final_layout`](#qiskit.transpiler.TranspileLayout.final_layout "qiskit.transpiler.TranspileLayout.final_layout") - This is a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object used to model the output permutation caused ny any [`SwapGate`](qiskit.circuit.library.SwapGate "qiskit.circuit.library.SwapGate")s inserted into the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") during the [Routing Stage](transpiler#routing-stage). It maps the output circuit’s qubits from `QuantumCircuit.qubits` in the output circuit to the final position after routing. It is **not** a mapping from the original input circuit’s position to the final position at the end of the transpiled circuit. If you need this you can use the [`final_index_layout()`](#qiskit.transpiler.TranspileLayout.final_index_layout "qiskit.transpiler.TranspileLayout.final_index_layout") to generate this. If this is set to `None` this indicates that routing was not run and it can be considered equivalent to a trivial layout with the qubits from the output circuit’s [`qubits`](qiskit.circuit.QuantumCircuit#qubits "qiskit.circuit.QuantumCircuit.qubits") list. + > * [`initial_layout`](#qiskit.transpiler.TranspileLayout.initial_layout "qiskit.transpiler.TranspileLayout.initial_layout") - This attribute is used to model the permutation caused by the [Layout Stage](transpiler#layout-stage). It is a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object that maps the input [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")s [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit") objects to the position in the output `QuantumCircuit.qubits` list. + > * [`input_qubit_mapping`](#qiskit.transpiler.TranspileLayout.input_qubit_mapping "qiskit.transpiler.TranspileLayout.input_qubit_mapping") - This attribute is used to retain input ordering of the original [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") object. It maps the virtual [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit") object from the original circuit (and [`initial_layout`](#qiskit.transpiler.TranspileLayout.initial_layout "qiskit.transpiler.TranspileLayout.initial_layout")) to its corresponding position in [`QuantumCircuit.qubits`](qiskit.circuit.QuantumCircuit#qubits "qiskit.circuit.QuantumCircuit.qubits") in the original circuit. This is needed when computing the permutation of the `Operator` of the circuit (and used by [`Operator.from_circuit()`](qiskit.quantum_info.Operator#from_circuit "qiskit.quantum_info.Operator.from_circuit")). + > * [`final_layout`](#qiskit.transpiler.TranspileLayout.final_layout "qiskit.transpiler.TranspileLayout.final_layout") - This attribute is used to model the permutation caused by the [Routing Stage](transpiler#routing-stage). It is a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object that maps the output circuit’s qubits from `QuantumCircuit.qubits` in the output circuit to their final positions after routing. Importantly, this only represents the permutation caused by inserting [`SwapGate`](qiskit.circuit.library.SwapGate "qiskit.circuit.library.SwapGate")s into the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") during the [Routing Stage](transpiler#routing-stage). It is **not** a mapping from the original input circuit’s position to the final position at the end of the transpiled circuit. If you need this, you can use the [`final_index_layout()`](#qiskit.transpiler.TranspileLayout.final_index_layout "qiskit.transpiler.TranspileLayout.final_index_layout") to generate this. If [`final_layout`](#qiskit.transpiler.TranspileLayout.final_layout "qiskit.transpiler.TranspileLayout.final_layout") is set to `None`, this indicates that routing was not run, and can be considered equivalent to a trivial layout with the qubits from the output circuit’s [`qubits`](qiskit.circuit.QuantumCircuit#qubits "qiskit.circuit.QuantumCircuit.qubits") list. ## Attributes @@ -65,10 +65,10 @@ python_api_name: qiskit.transpiler.TranspileLayout ### final\_index\_layout - - Generate the final layout as an array of integers + + Generate the final layout as an array of integers. - This method will generate an array of final positions for each qubit in the output circuit. For example, if you had an input circuit like: + This method will generate an array of final positions for each qubit in the input circuit. For example, if you had an input circuit like: ```python qc = QuantumCircuit(3) @@ -81,19 +81,19 @@ python_api_name: qiskit.transpiler.TranspileLayout ```python tqc = QuantumCircuit(3) - qc.h(2) - qc.cx(2, 1) - qc.swap(0, 1) - qc.cx(2, 1) + tqc.h(2) + tqc.cx(2, 1) + tqc.swap(0, 1) + tqc.cx(2, 1) ``` - then the return from this function would be a list of: + then the [`final_index_layout()`](#qiskit.transpiler.TranspileLayout.final_index_layout "qiskit.transpiler.TranspileLayout.final_index_layout") method returns: ```python [2, 0, 1] ``` - because qubit 0 in the original circuit’s final state is on qubit 3 in the output circuit, qubit 1 in the original circuit’s final state is on qubit 0, and qubit 2’s final state is on qubit. The output list length will be as wide as the input circuit’s number of qubits, as the output list from this method is for tracking the permutation of qubits in the original circuit caused by the transpiler. + This can be seen as follows. Qubit 0 in the original circuit is mapped to qubit 2 in the output circuit during the layout stage, which is mapped to qubit 2 during the routing stage. Qubit 1 in the original circuit is mapped to qubit 1 in the output circuit during the layout stage, which is mapped to qubit 0 during the routing stage. Qubit 2 in the original circuit is mapped to qubit 0 in the output circuit during the layout stage, which is mapped to qubit 1 during the routing stage. The output list length will be as wide as the input circuit’s number of qubits, as the output list from this method is for tracking the permutation of qubits in the original circuit caused by the transpiler. **Parameters** @@ -101,7 +101,7 @@ python_api_name: qiskit.transpiler.TranspileLayout **Returns** - A list of final positions for each input circuit qubit + A list of final positions for each input circuit qubit. **Return type** @@ -110,10 +110,10 @@ python_api_name: qiskit.transpiler.TranspileLayout ### final\_virtual\_layout - - Generate the final layout as a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object + + Generate the final layout as a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object. - This method will generate an array of final positions for each qubit in the output circuit. For example, if you had an input circuit like: + This method will generate an array of final positions for each qubit in the input circuit. For example, if you had an input circuit like: ```python qc = QuantumCircuit(3) @@ -126,10 +126,10 @@ python_api_name: qiskit.transpiler.TranspileLayout ```python tqc = QuantumCircuit(3) - qc.h(2) - qc.cx(2, 1) - qc.swap(0, 1) - qc.cx(2, 1) + tqc.h(2) + tqc.cx(2, 1) + tqc.swap(0, 1) + tqc.cx(2, 1) ``` then the return from this function would be a layout object: @@ -142,7 +142,7 @@ python_api_name: qiskit.transpiler.TranspileLayout }) ``` - because qubit 0 in the original circuit’s final state is on qubit 3 in the output circuit, qubit 1 in the original circuit’s final state is on qubit 0, and qubit 2’s final state is on qubit. The output list length will be as wide as the input circuit’s number of qubits, as the output list from this method is for tracking the permutation of qubits in the original circuit caused by the transpiler. + This can be seen as follows. Qubit 0 in the original circuit is mapped to qubit 2 in the output circuit during the layout stage, which is mapped to qubit 2 during the routing stage. Qubit 1 in the original circuit is mapped to qubit 1 in the output circuit during the layout stage, which is mapped to qubit 0 during the routing stage. Qubit 2 in the original circuit is mapped to qubit 0 in the output circuit during the layout stage, which is mapped to qubit 1 during the routing stage. The output list length will be as wide as the input circuit’s number of qubits, as the output list from this method is for tracking the permutation of qubits in the original circuit caused by the transpiler. **Parameters** @@ -150,7 +150,7 @@ python_api_name: qiskit.transpiler.TranspileLayout **Returns** - A layout object mapping to the final positions for each qubit + A layout object mapping to the final positions for each qubit. **Return type** @@ -159,8 +159,8 @@ python_api_name: qiskit.transpiler.TranspileLayout ### initial\_index\_layout - - Generate an initial layout as an array of integers + + Generate an initial layout as an array of integers. **Parameters** @@ -177,10 +177,10 @@ python_api_name: qiskit.transpiler.TranspileLayout ### initial\_virtual\_layout - + Return a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object for the initial layout. - This returns a mapping of virtual [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit") objects in the input circuit to the physical qubit selected during layout. This is analogous to the [`initial_layout`](#qiskit.transpiler.TranspileLayout.initial_layout "qiskit.transpiler.TranspileLayout.initial_layout") attribute. + This returns a mapping of virtual [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit") objects in the input circuit to the positions of the physical qubits selected during layout. This is analogous to the [`initial_layout`](#qiskit.transpiler.TranspileLayout.initial_layout "qiskit.transpiler.TranspileLayout.initial_layout") attribute. **Parameters** @@ -188,7 +188,7 @@ python_api_name: qiskit.transpiler.TranspileLayout **Returns** - A layout object mapping the input circuit’s [`Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit") objects to the selected physical qubits. + A layout object mapping the input circuit’s [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit") objects to the positions of the selected physical qubits. **Return type** @@ -197,14 +197,14 @@ python_api_name: qiskit.transpiler.TranspileLayout ### routing\_permutation - - Generate a final layout as an array of integers + + Generate a final layout as an array of integers. - If there is no [`final_layout`](#qiskit.transpiler.TranspileLayout.final_layout "qiskit.transpiler.TranspileLayout.final_layout") attribute present then that indicates there was no output permutation caused by routing or other transpiler transforms. In this case the function will return a list of `[0, 1, 2, .., n]` to indicate this + If there is no [`final_layout`](#qiskit.transpiler.TranspileLayout.final_layout "qiskit.transpiler.TranspileLayout.final_layout") attribute present then that indicates there was no output permutation caused by routing or other transpiler transforms. In this case the function will return a list of `[0, 1, 2, .., n]`. **Returns** - A layout array that maps a position in the array to its new position in the output circuit + A layout array that maps a position in the array to its new position in the output circuit. **Return type** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ALAPSchedule.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ALAPSchedule.mdx index 99850ddb559..91e2a0d2405 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ALAPSchedule.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ALAPSchedule.mdx @@ -8,15 +8,15 @@ python_api_name: qiskit.transpiler.passes.ALAPSchedule # ALAPSchedule - + Bases: `BaseSchedulerTransform` ALAP Scheduling pass, which schedules the **stop** time of instructions as late as possible. See `BaseSchedulerTransform` for the detailed behavior of the control flow operation, i.e. `c_if`. - - The class `qiskit.transpiler.passes.scheduling.alap.ALAPSchedule` is pending deprecation as of qiskit 0.21.0. It will be marked deprecated in a future release, and then removed no earlier than 3 months after the release date. Instead, use [`ALAPScheduleAnalysis`](qiskit.transpiler.passes.ALAPScheduleAnalysis "qiskit.transpiler.passes.ALAPScheduleAnalysis"), which is an analysis pass that requires a padding pass to later modify the circuit. + + The class `qiskit.transpiler.passes.scheduling.alap.ALAPSchedule` is deprecated as of qiskit 1.1.0. It will be removed no earlier than 3 months after the release date. Instead, use [`ALAPScheduleAnalysis`](qiskit.transpiler.passes.ALAPScheduleAnalysis "qiskit.transpiler.passes.ALAPScheduleAnalysis"), which is an analysis pass that requires a padding pass to later modify the circuit. ## Attributes @@ -45,7 +45,7 @@ python_api_name: qiskit.transpiler.passes.ALAPSchedule ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.ALAPSchedule ### name - + Name of the pass. **Return type** @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.ALAPSchedule ### run - + Run the ALAPSchedule pass on dag. **Parameters** @@ -98,7 +98,7 @@ python_api_name: qiskit.transpiler.passes.ALAPSchedule ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ALAPScheduleAnalysis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ALAPScheduleAnalysis.mdx index aa50c833712..534fc9e3636 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ALAPScheduleAnalysis.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ALAPScheduleAnalysis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ALAPScheduleAnalysis # ALAPScheduleAnalysis - + Bases: `BaseScheduler` ALAP Scheduling pass, which schedules the **stop** time of instructions as late as possible. @@ -48,7 +48,7 @@ python_api_name: qiskit.transpiler.passes.ALAPScheduleAnalysis ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -68,7 +68,7 @@ python_api_name: qiskit.transpiler.passes.ALAPScheduleAnalysis ### name - + Name of the pass. **Return type** @@ -78,7 +78,7 @@ python_api_name: qiskit.transpiler.passes.ALAPScheduleAnalysis ### run - + Run the ALAPSchedule pass on dag. **Parameters** @@ -101,7 +101,7 @@ python_api_name: qiskit.transpiler.passes.ALAPScheduleAnalysis ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ASAPSchedule.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ASAPSchedule.mdx index b5b6b3beda3..2aba0aeeab4 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ASAPSchedule.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ASAPSchedule.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ASAPSchedule # ASAPSchedule - + Bases: `BaseSchedulerTransform` ASAP Scheduling pass, which schedules the start time of instructions as early as possible.. @@ -19,8 +19,8 @@ python_api_name: qiskit.transpiler.passes.ASAPSchedule This base class has been superseded by [`ASAPScheduleAnalysis`](qiskit.transpiler.passes.ASAPScheduleAnalysis "qiskit.transpiler.passes.ASAPScheduleAnalysis") and the new scheduling workflow. It will be deprecated and subsequently removed in a future release. - - The class `qiskit.transpiler.passes.scheduling.asap.ASAPSchedule` is pending deprecation as of qiskit 0.21.0. It will be marked deprecated in a future release, and then removed no earlier than 3 months after the release date. Instead, use [`ASAPScheduleAnalysis`](qiskit.transpiler.passes.ASAPScheduleAnalysis "qiskit.transpiler.passes.ASAPScheduleAnalysis"), which is an analysis pass that requires a padding pass to later modify the circuit. + + The class `qiskit.transpiler.passes.scheduling.asap.ASAPSchedule` is deprecated as of qiskit 1.1.0. It will be removed no earlier than 3 months after the release date. Instead, use [`ASAPScheduleAnalysis`](qiskit.transpiler.passes.ASAPScheduleAnalysis "qiskit.transpiler.passes.ASAPScheduleAnalysis"), which is an analysis pass that requires a padding pass to later modify the circuit. ## Attributes @@ -49,7 +49,7 @@ python_api_name: qiskit.transpiler.passes.ASAPSchedule ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -69,7 +69,7 @@ python_api_name: qiskit.transpiler.passes.ASAPSchedule ### name - + Name of the pass. **Return type** @@ -79,7 +79,7 @@ python_api_name: qiskit.transpiler.passes.ASAPSchedule ### run - + Run the ASAPSchedule pass on dag. **Parameters** @@ -102,7 +102,7 @@ python_api_name: qiskit.transpiler.passes.ASAPSchedule ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ASAPScheduleAnalysis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ASAPScheduleAnalysis.mdx index cd46d03be85..ccd137ffe91 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ASAPScheduleAnalysis.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ASAPScheduleAnalysis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ASAPScheduleAnalysis # ASAPScheduleAnalysis - + Bases: `BaseScheduler` ASAP Scheduling pass, which schedules the start time of instructions as early as possible. @@ -48,7 +48,7 @@ python_api_name: qiskit.transpiler.passes.ASAPScheduleAnalysis ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -68,7 +68,7 @@ python_api_name: qiskit.transpiler.passes.ASAPScheduleAnalysis ### name - + Name of the pass. **Return type** @@ -78,7 +78,7 @@ python_api_name: qiskit.transpiler.passes.ASAPScheduleAnalysis ### run - + Run the ASAPSchedule pass on dag. **Parameters** @@ -101,7 +101,7 @@ python_api_name: qiskit.transpiler.passes.ASAPScheduleAnalysis ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.AlignMeasures.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.AlignMeasures.mdx index 1903027e4ca..28b80ca9d0d 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.AlignMeasures.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.AlignMeasures.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.AlignMeasures # AlignMeasures - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Measurement alignment. @@ -53,8 +53,8 @@ python_api_name: qiskit.transpiler.passes.AlignMeasures Create new pass. - - The class `qiskit.transpiler.passes.scheduling.alignments.align_measures.AlignMeasures` is pending deprecation as of qiskit 0.21.0. It will be marked deprecated in a future release, and then removed no earlier than 3 months after the release date. Instead, use [`ConstrainedReschedule`](qiskit.transpiler.passes.ConstrainedReschedule "qiskit.transpiler.passes.ConstrainedReschedule"), which performs the same function but also supports aligning to additional timing constraints. + + The class `qiskit.transpiler.passes.scheduling.alignments.align_measures.AlignMeasures` is deprecated as of qiskit 1.1.0. It will be removed no earlier than 3 months after the release date. Instead, use [`ConstrainedReschedule`](qiskit.transpiler.passes.ConstrainedReschedule "qiskit.transpiler.passes.ConstrainedReschedule"), which performs the same function but also supports aligning to additional timing constraints. **Parameters** @@ -83,7 +83,7 @@ python_api_name: qiskit.transpiler.passes.AlignMeasures ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -103,7 +103,7 @@ python_api_name: qiskit.transpiler.passes.AlignMeasures ### name - + Name of the pass. **Return type** @@ -113,7 +113,7 @@ python_api_name: qiskit.transpiler.passes.AlignMeasures ### run - + Run the measurement alignment pass on dag. **Parameters** @@ -135,7 +135,7 @@ python_api_name: qiskit.transpiler.passes.AlignMeasures ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ApplyLayout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ApplyLayout.mdx index 1b44030b9d3..1c003c88a12 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ApplyLayout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ApplyLayout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ApplyLayout # ApplyLayout - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Transform a circuit with virtual qubits into a circuit with physical qubits. @@ -39,7 +39,7 @@ python_api_name: qiskit.transpiler.passes.ApplyLayout ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -59,7 +59,7 @@ python_api_name: qiskit.transpiler.passes.ApplyLayout ### name - + Name of the pass. **Return type** @@ -69,7 +69,7 @@ python_api_name: qiskit.transpiler.passes.ApplyLayout ### run - + Run the ApplyLayout pass on `dag`. **Parameters** @@ -91,7 +91,7 @@ python_api_name: qiskit.transpiler.passes.ApplyLayout ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.BarrierBeforeFinalMeasurements.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.BarrierBeforeFinalMeasurements.mdx index 868aa15f714..c85a94fcae8 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.BarrierBeforeFinalMeasurements.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.BarrierBeforeFinalMeasurements.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.BarrierBeforeFinalMeasurements # BarrierBeforeFinalMeasurements - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Add a barrier before final measurements. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.BarrierBeforeFinalMeasurements ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.BarrierBeforeFinalMeasurements ### name - + Name of the pass. **Return type** @@ -67,13 +67,13 @@ python_api_name: qiskit.transpiler.passes.BarrierBeforeFinalMeasurements ### run - + Run the BarrierBeforeFinalMeasurements pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.BasicSwap.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.BasicSwap.mdx index 76454e6ce7c..41c3245f4c9 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.BasicSwap.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.BasicSwap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.BasicSwap # BasicSwap - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Map (with minimum effort) a DAGCircuit onto a `coupling_map` adding swap gates. @@ -44,7 +44,7 @@ python_api_name: qiskit.transpiler.passes.BasicSwap ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -64,7 +64,7 @@ python_api_name: qiskit.transpiler.passes.BasicSwap ### name - + Name of the pass. **Return type** @@ -74,7 +74,7 @@ python_api_name: qiskit.transpiler.passes.BasicSwap ### run - + Run the BasicSwap pass on dag. **Parameters** @@ -97,7 +97,7 @@ python_api_name: qiskit.transpiler.passes.BasicSwap ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.BasisTranslator.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.BasisTranslator.mdx index 3d87ce3bc12..8119cd68914 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.BasisTranslator.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.BasisTranslator.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.BasisTranslator # BasisTranslator - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Translates gates to a target basis by searching for a set of translations from a given EquivalenceLibrary. @@ -90,7 +90,7 @@ python_api_name: qiskit.transpiler.passes.BasisTranslator ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -110,7 +110,7 @@ python_api_name: qiskit.transpiler.passes.BasisTranslator ### name - + Name of the pass. **Return type** @@ -120,7 +120,7 @@ python_api_name: qiskit.transpiler.passes.BasisTranslator ### run - + Translate an input DAGCircuit to the target basis. **Parameters** @@ -142,7 +142,7 @@ python_api_name: qiskit.transpiler.passes.BasisTranslator ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CSPLayout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CSPLayout.mdx index 0563d35f4a8..5b30dd8f507 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CSPLayout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CSPLayout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CSPLayout # CSPLayout - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") If possible, chooses a Layout as a CSP, using backtracking. @@ -52,7 +52,7 @@ python_api_name: qiskit.transpiler.passes.CSPLayout ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -72,7 +72,7 @@ python_api_name: qiskit.transpiler.passes.CSPLayout ### name - + Name of the pass. **Return type** @@ -82,13 +82,13 @@ python_api_name: qiskit.transpiler.passes.CSPLayout ### run - + run the layout method ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CXCancellation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CXCancellation.mdx index ccdb3327451..1e066e79ba3 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CXCancellation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CXCancellation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CXCancellation # CXCancellation - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Cancel back-to-back `cx` gates in dag. @@ -39,7 +39,7 @@ python_api_name: qiskit.transpiler.passes.CXCancellation ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -59,7 +59,7 @@ python_api_name: qiskit.transpiler.passes.CXCancellation ### name - + Name of the pass. **Return type** @@ -69,7 +69,7 @@ python_api_name: qiskit.transpiler.passes.CXCancellation ### run - + Run the CXCancellation pass on dag. **Parameters** @@ -87,7 +87,7 @@ python_api_name: qiskit.transpiler.passes.CXCancellation ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CheckGateDirection.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CheckGateDirection.mdx index 11350030b04..b0ae9777d66 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CheckGateDirection.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CheckGateDirection.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CheckGateDirection # CheckGateDirection - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Check if the two-qubit gates follow the right direction with respect to the coupling map. @@ -42,7 +42,7 @@ python_api_name: qiskit.transpiler.passes.CheckGateDirection ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -62,7 +62,7 @@ python_api_name: qiskit.transpiler.passes.CheckGateDirection ### name - + Name of the pass. **Return type** @@ -72,7 +72,7 @@ python_api_name: qiskit.transpiler.passes.CheckGateDirection ### run - + Run the CheckGateDirection pass on dag. If dag is mapped and the direction is correct the property is\_direction\_mapped is set to True (or to False otherwise). @@ -84,7 +84,7 @@ python_api_name: qiskit.transpiler.passes.CheckGateDirection ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CheckMap.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CheckMap.mdx index 6afddd1dc92..fefdc147d4a 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CheckMap.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CheckMap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CheckMap # CheckMap - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Check if a DAG circuit is already mapped to a coupling map. @@ -44,7 +44,7 @@ python_api_name: qiskit.transpiler.passes.CheckMap ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -64,7 +64,7 @@ python_api_name: qiskit.transpiler.passes.CheckMap ### name - + Name of the pass. **Return type** @@ -74,7 +74,7 @@ python_api_name: qiskit.transpiler.passes.CheckMap ### run - + Run the CheckMap pass on dag. If dag is mapped to coupling\_map, the property is\_swap\_mapped is set to True (or to False otherwise). @@ -86,7 +86,7 @@ python_api_name: qiskit.transpiler.passes.CheckMap ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Collect1qRuns.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Collect1qRuns.mdx index 7927b1e63bd..5b04c0ec6f7 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Collect1qRuns.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Collect1qRuns.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Collect1qRuns # Collect1qRuns - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Collect one-qubit subcircuits. @@ -35,7 +35,7 @@ python_api_name: qiskit.transpiler.passes.Collect1qRuns ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.passes.Collect1qRuns ### name - + Name of the pass. **Return type** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.Collect1qRuns ### run - + Run the Collect1qBlocks pass on dag. The blocks contain “op” nodes in topological order such that all gates in a block act on the same qubits and are adjacent in the circuit. @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.Collect1qRuns ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Collect2qBlocks.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Collect2qBlocks.mdx index 48d079f443e..e4a8ac90697 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Collect2qBlocks.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Collect2qBlocks.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Collect2qBlocks # Collect2qBlocks - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Collect two-qubit subcircuits. @@ -35,7 +35,7 @@ python_api_name: qiskit.transpiler.passes.Collect2qBlocks ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.passes.Collect2qBlocks ### name - + Name of the pass. **Return type** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.Collect2qBlocks ### run - + Run the Collect2qBlocks pass on dag. The blocks contain “op” nodes in topological order such that all gates in a block act on the same qubits and are adjacent in the circuit. @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.Collect2qBlocks ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectCliffords.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectCliffords.mdx index 9f2bcb06ddb..66b11bb8bdd 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectCliffords.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectCliffords.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CollectCliffords # CollectCliffords - + Bases: `CollectAndCollapse` Collects blocks of Clifford gates and replaces them by a [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford") object. @@ -45,7 +45,7 @@ python_api_name: qiskit.transpiler.passes.CollectCliffords ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.CollectCliffords ### name - + Name of the pass. **Return type** @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.CollectCliffords ### run - + Run the CollectLinearFunctions pass on dag. :param dag: the DAG to be optimized. :type dag: DAGCircuit **Returns** @@ -89,7 +89,7 @@ python_api_name: qiskit.transpiler.passes.CollectCliffords ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectLinearFunctions.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectLinearFunctions.mdx index 338b2c6a075..5202ac64500 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectLinearFunctions.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectLinearFunctions.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CollectLinearFunctions # CollectLinearFunctions - + Bases: `CollectAndCollapse` Collect blocks of linear gates ([`CXGate`](qiskit.circuit.library.CXGate "qiskit.circuit.library.CXGate") and [`SwapGate`](qiskit.circuit.library.SwapGate "qiskit.circuit.library.SwapGate") gates) and replaces them by linear functions ([`LinearFunction`](qiskit.circuit.library.LinearFunction "qiskit.circuit.library.LinearFunction")). @@ -45,7 +45,7 @@ python_api_name: qiskit.transpiler.passes.CollectLinearFunctions ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.CollectLinearFunctions ### name - + Name of the pass. **Return type** @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.CollectLinearFunctions ### run - + Run the CollectLinearFunctions pass on dag. :param dag: the DAG to be optimized. :type dag: DAGCircuit **Returns** @@ -89,7 +89,7 @@ python_api_name: qiskit.transpiler.passes.CollectLinearFunctions ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectMultiQBlocks.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectMultiQBlocks.mdx index bb40e528c3a..9586ee7a162 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectMultiQBlocks.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CollectMultiQBlocks.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CollectMultiQBlocks # CollectMultiQBlocks - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Collect sequences of uninterrupted gates acting on groups of qubits. `max_block_size` specifies the maximum number of qubits that can be acted upon by any single group of gates @@ -45,7 +45,7 @@ python_api_name: qiskit.transpiler.passes.CollectMultiQBlocks ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -65,13 +65,13 @@ python_api_name: qiskit.transpiler.passes.CollectMultiQBlocks ### find\_set - + DSU function for finding root of set of items If my parent is myself, I am the root. Otherwise we recursively find the root for my parent. After that, we assign my parent to be my root, saving recursion in the future. ### name - + Name of the pass. **Return type** @@ -81,7 +81,7 @@ python_api_name: qiskit.transpiler.passes.CollectMultiQBlocks ### run - + Run the CollectMultiQBlocks pass on dag. The blocks contain “op” nodes in topological sort order such that all gates in a block act on the same set of qubits and are adjacent in the circuit. @@ -93,13 +93,13 @@ python_api_name: qiskit.transpiler.passes.CollectMultiQBlocks ### union\_set - + DSU function for unioning two sets together Find the roots of each set. Then assign one to have the other as its parent, thus liking the sets. Merges smaller set into larger set in order to have better runtime ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutationAnalysis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutationAnalysis.mdx index 3d33caaed88..08791b5484a 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutationAnalysis.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutationAnalysis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CommutationAnalysis # CommutationAnalysis - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Analysis pass to find commutation relations between DAG nodes. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.CommutationAnalysis ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.CommutationAnalysis ### name - + Name of the pass. **Return type** @@ -67,7 +67,7 @@ python_api_name: qiskit.transpiler.passes.CommutationAnalysis ### run - + Run the CommutationAnalysis pass on dag. Run the pass on the DAG, and write the discovered commutation relations into the `property_set`. @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.CommutationAnalysis ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutativeCancellation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutativeCancellation.mdx index b0c201effba..38461b05e3c 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutativeCancellation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutativeCancellation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeCancellation # CommutativeCancellation - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Cancel the redundant (self-adjoint) gates through commutation relations. @@ -48,7 +48,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeCancellation ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -68,7 +68,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeCancellation ### name - + Name of the pass. **Return type** @@ -78,7 +78,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeCancellation ### run - + Run the CommutativeCancellation pass on dag. **Parameters** @@ -100,7 +100,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeCancellation ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutativeInverseCancellation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutativeInverseCancellation.mdx index f8c59c2b4d6..51d208e79a2 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutativeInverseCancellation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CommutativeInverseCancellation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeInverseCancellation # CommutativeInverseCancellation - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Cancel pairs of inverse gates exploiting commutation relations. @@ -40,7 +40,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeInverseCancellation ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -60,7 +60,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeInverseCancellation ### name - + Name of the pass. **Return type** @@ -70,7 +70,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeInverseCancellation ### run - + Run the CommutativeInverseCancellation pass on dag. **Parameters** @@ -88,7 +88,7 @@ python_api_name: qiskit.transpiler.passes.CommutativeInverseCancellation ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Commuting2qGateRouter.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Commuting2qGateRouter.mdx index beb408f3dac..0f1c041bf00 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Commuting2qGateRouter.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Commuting2qGateRouter.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Commuting2qGateRouter # Commuting2qGateRouter - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") A class to swap route one or more commuting gates to the coupling map. @@ -97,7 +97,7 @@ python_api_name: qiskit.transpiler.passes.Commuting2qGateRouter ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -117,7 +117,7 @@ python_api_name: qiskit.transpiler.passes.Commuting2qGateRouter ### name - + Name of the pass. **Return type** @@ -127,7 +127,7 @@ python_api_name: qiskit.transpiler.passes.Commuting2qGateRouter ### run - + Run the pass by decomposing the nodes it applies on. **Parameters** @@ -151,7 +151,7 @@ python_api_name: qiskit.transpiler.passes.Commuting2qGateRouter ### swap\_decompose - + Take an instance of `Commuting2qBlock` and map it to the coupling map. The mapping is done with the swap strategy. @@ -174,7 +174,7 @@ python_api_name: qiskit.transpiler.passes.Commuting2qGateRouter ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ConsolidateBlocks.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ConsolidateBlocks.mdx index 58367c7d131..4bb53d5bd56 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ConsolidateBlocks.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ConsolidateBlocks.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ConsolidateBlocks # ConsolidateBlocks - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Replace each block of consecutive gates by a single Unitary node. @@ -53,7 +53,7 @@ python_api_name: qiskit.transpiler.passes.ConsolidateBlocks ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -73,7 +73,7 @@ python_api_name: qiskit.transpiler.passes.ConsolidateBlocks ### name - + Name of the pass. **Return type** @@ -83,7 +83,7 @@ python_api_name: qiskit.transpiler.passes.ConsolidateBlocks ### run - + Run the ConsolidateBlocks pass on dag. Iterate over each block and replace it with an equivalent Unitary on the same wires. @@ -91,7 +91,7 @@ python_api_name: qiskit.transpiler.passes.ConsolidateBlocks ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ConstrainedReschedule.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ConstrainedReschedule.mdx index 215d1688ca0..50269b83bf0 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ConstrainedReschedule.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ConstrainedReschedule.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ConstrainedReschedule # ConstrainedReschedule - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Rescheduler pass that updates node start times to conform to the hardware alignments. @@ -49,6 +49,7 @@ python_api_name: qiskit.transpiler.passes.ConstrainedReschedule * **acquire\_alignment** – Integer number representing the minimum time resolution to trigger acquisition instruction in units of `dt`. * **pulse\_alignment** – Integer number representing the minimum time resolution to trigger gate instruction in units of `dt`. + * **target** – The [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") representing the target backend, if `target` is specified then this argument will take precedence and `acquire_alignment` and `pulse_alignment` will be ignored. ## Attributes @@ -72,7 +73,7 @@ python_api_name: qiskit.transpiler.passes.ConstrainedReschedule ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -92,7 +93,7 @@ python_api_name: qiskit.transpiler.passes.ConstrainedReschedule ### name - + Name of the pass. **Return type** @@ -102,7 +103,7 @@ python_api_name: qiskit.transpiler.passes.ConstrainedReschedule ### run - + Run rescheduler. This pass should perform rescheduling to satisfy: @@ -145,7 +146,7 @@ python_api_name: qiskit.transpiler.passes.ConstrainedReschedule ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ContainsInstruction.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ContainsInstruction.mdx index 63df37c98a7..df78799a90a 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ContainsInstruction.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ContainsInstruction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ContainsInstruction # ContainsInstruction - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") An analysis pass to detect if the DAG contains a specific instruction. @@ -44,7 +44,7 @@ python_api_name: qiskit.transpiler.passes.ContainsInstruction ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -64,7 +64,7 @@ python_api_name: qiskit.transpiler.passes.ContainsInstruction ### name - + Name of the pass. **Return type** @@ -74,13 +74,13 @@ python_api_name: qiskit.transpiler.passes.ContainsInstruction ### run - + Run the ContainsInstruction pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ConvertConditionsToIfOps.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ConvertConditionsToIfOps.mdx index 25487cd9534..1971ff1a641 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ConvertConditionsToIfOps.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ConvertConditionsToIfOps.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ConvertConditionsToIfOps # ConvertConditionsToIfOps - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Convert instructions whose `condition` attribute is set to a non-`None` value into the equivalent single-statement `IfElseBlock`. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.ConvertConditionsToIfOps ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.ConvertConditionsToIfOps ### name - + Name of the pass. **Return type** @@ -67,7 +67,7 @@ python_api_name: qiskit.transpiler.passes.ConvertConditionsToIfOps ### run - + Run a pass on the DAGCircuit. This is implemented by the pass developer. **Parameters** @@ -81,7 +81,7 @@ python_api_name: qiskit.transpiler.passes.ConvertConditionsToIfOps ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CountOps.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CountOps.mdx index d296b2790d3..2b474b86cbd 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CountOps.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CountOps.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CountOps # CountOps - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Count the operations in a DAG circuit. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.CountOps ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.CountOps ### name - + Name of the pass. **Return type** @@ -67,13 +67,13 @@ python_api_name: qiskit.transpiler.passes.CountOps ### run - + Run the CountOps pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.CountOpsLongestPath.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.CountOpsLongestPath.mdx index 3b0fba47713..bcdd7430f01 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.CountOpsLongestPath.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.CountOpsLongestPath.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.CountOpsLongestPath # CountOpsLongestPath - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Count the operations on the longest path in a [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit"). @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.CountOpsLongestPath ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.CountOpsLongestPath ### name - + Name of the pass. **Return type** @@ -67,13 +67,13 @@ python_api_name: qiskit.transpiler.passes.CountOpsLongestPath ### run - + Run the CountOpsLongestPath pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.DAGFixedPoint.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.DAGFixedPoint.mdx index 673cea2d84c..44ab88fc268 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.DAGFixedPoint.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.DAGFixedPoint.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.DAGFixedPoint # DAGFixedPoint - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Check if the DAG has reached a fixed point. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.DAGFixedPoint ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.DAGFixedPoint ### name - + Name of the pass. **Return type** @@ -67,13 +67,13 @@ python_api_name: qiskit.transpiler.passes.DAGFixedPoint ### run - + Run the DAGFixedPoint pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.DAGLongestPath.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.DAGLongestPath.mdx index f7abb10c6f8..ef2041dc575 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.DAGLongestPath.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.DAGLongestPath.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.DAGLongestPath # DAGLongestPath - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Return the longest path in a [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") as a list of [`DAGOpNode`](qiskit.dagcircuit.DAGOpNode "qiskit.dagcircuit.DAGOpNode")s, [`DAGInNode`](qiskit.dagcircuit.DAGInNode "qiskit.dagcircuit.DAGInNode")s, and [`DAGOutNode`](qiskit.dagcircuit.DAGOutNode "qiskit.dagcircuit.DAGOutNode")s. @@ -35,7 +35,7 @@ python_api_name: qiskit.transpiler.passes.DAGLongestPath ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.passes.DAGLongestPath ### name - + Name of the pass. **Return type** @@ -65,13 +65,13 @@ python_api_name: qiskit.transpiler.passes.DAGLongestPath ### run - + Run the DAGLongestPath pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Decompose.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Decompose.mdx index 0e4e6ad1ccf..cf8457d886b 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Decompose.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Decompose.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Decompose # Decompose - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Expand a gate in a circuit using its decomposition rules. @@ -41,7 +41,7 @@ python_api_name: qiskit.transpiler.passes.Decompose ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -61,7 +61,7 @@ python_api_name: qiskit.transpiler.passes.Decompose ### name - + Name of the pass. **Return type** @@ -71,7 +71,7 @@ python_api_name: qiskit.transpiler.passes.Decompose ### run - + Run the Decompose pass on dag. **Parameters** @@ -89,7 +89,7 @@ python_api_name: qiskit.transpiler.passes.Decompose ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.DenseLayout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.DenseLayout.mdx index 686517b58a9..ff7830468ca 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.DenseLayout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.DenseLayout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.DenseLayout # DenseLayout - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Choose a Layout by finding the most connected subset of qubits. @@ -49,7 +49,7 @@ python_api_name: qiskit.transpiler.passes.DenseLayout ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -69,7 +69,7 @@ python_api_name: qiskit.transpiler.passes.DenseLayout ### name - + Name of the pass. **Return type** @@ -79,7 +79,7 @@ python_api_name: qiskit.transpiler.passes.DenseLayout ### run - + Run the DenseLayout pass on dag. Pick a convenient layout depending on the best matching qubit connectivity, and set the property layout. @@ -95,7 +95,7 @@ python_api_name: qiskit.transpiler.passes.DenseLayout ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Depth.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Depth.mdx index e5aa6720975..6949e1ffb04 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Depth.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Depth.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Depth # Depth - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Calculate the depth of a DAG circuit. @@ -39,7 +39,7 @@ python_api_name: qiskit.transpiler.passes.Depth ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -59,7 +59,7 @@ python_api_name: qiskit.transpiler.passes.Depth ### name - + Name of the pass. **Return type** @@ -69,13 +69,13 @@ python_api_name: qiskit.transpiler.passes.Depth ### run - + Run the Depth pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.DynamicalDecoupling.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.DynamicalDecoupling.mdx index 3c446e94dbf..4450db5921b 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.DynamicalDecoupling.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.DynamicalDecoupling.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.DynamicalDecoupling # DynamicalDecoupling - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Dynamical decoupling insertion pass. @@ -83,8 +83,8 @@ python_api_name: qiskit.transpiler.passes.DynamicalDecoupling Dynamical decoupling initializer. - - The class `qiskit.transpiler.passes.scheduling.dynamical_decoupling.DynamicalDecoupling` is pending deprecation as of qiskit 0.21.0. It will be marked deprecated in a future release, and then removed no earlier than 3 months after the release date. Instead, use [`PadDynamicalDecoupling`](qiskit.transpiler.passes.PadDynamicalDecoupling "qiskit.transpiler.passes.PadDynamicalDecoupling"), which performs the same function but requires scheduling and alignment analysis passes to run prior to it. + + The class `qiskit.transpiler.passes.scheduling.dynamical_decoupling.DynamicalDecoupling` is deprecated as of qiskit 1.1.0. It will be removed no earlier than 3 months after the release date. Instead, use [`PadDynamicalDecoupling`](qiskit.transpiler.passes.PadDynamicalDecoupling "qiskit.transpiler.passes.PadDynamicalDecoupling"), which performs the same function but requires scheduling and alignment analysis passes to run prior to it. **Parameters** @@ -118,7 +118,7 @@ python_api_name: qiskit.transpiler.passes.DynamicalDecoupling ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -138,7 +138,7 @@ python_api_name: qiskit.transpiler.passes.DynamicalDecoupling ### name - + Name of the pass. **Return type** @@ -148,7 +148,7 @@ python_api_name: qiskit.transpiler.passes.DynamicalDecoupling ### run - + Run the DynamicalDecoupling pass on dag. **Parameters** @@ -172,7 +172,7 @@ python_api_name: qiskit.transpiler.passes.DynamicalDecoupling ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.EchoRZXWeylDecomposition.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.EchoRZXWeylDecomposition.mdx index 949b907e2bd..fe7d823ac08 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.EchoRZXWeylDecomposition.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.EchoRZXWeylDecomposition.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.EchoRZXWeylDecomposition # EchoRZXWeylDecomposition - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Rewrite two-qubit gates using the Weyl decomposition. @@ -44,7 +44,7 @@ python_api_name: qiskit.transpiler.passes.EchoRZXWeylDecomposition ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -64,7 +64,7 @@ python_api_name: qiskit.transpiler.passes.EchoRZXWeylDecomposition ### name - + Name of the pass. **Return type** @@ -74,7 +74,7 @@ python_api_name: qiskit.transpiler.passes.EchoRZXWeylDecomposition ### run - + Run the EchoRZXWeylDecomposition pass on dag. Rewrites two-qubit gates in an arbitrary circuit in terms of echoed cross-resonance gates by computing the Weyl decomposition of the corresponding unitary. Modifies the input dag. @@ -98,7 +98,7 @@ python_api_name: qiskit.transpiler.passes.EchoRZXWeylDecomposition ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.EnlargeWithAncilla.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.EnlargeWithAncilla.mdx index 5f4f70d0e98..3c1e69e23e6 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.EnlargeWithAncilla.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.EnlargeWithAncilla.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.EnlargeWithAncilla # EnlargeWithAncilla - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Extend the dag with virtual qubits that are in layout but not in the circuit yet. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.EnlargeWithAncilla ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.EnlargeWithAncilla ### name - + Name of the pass. **Return type** @@ -67,7 +67,7 @@ python_api_name: qiskit.transpiler.passes.EnlargeWithAncilla ### run - + Run the EnlargeWithAncilla pass on dag. **Parameters** @@ -89,7 +89,7 @@ python_api_name: qiskit.transpiler.passes.EnlargeWithAncilla ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.FilterOpNodes.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.FilterOpNodes.mdx index d276ae301a3..e7931d3e230 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.FilterOpNodes.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.FilterOpNodes.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.FilterOpNodes # FilterOpNodes - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Remove all operations that match a filter function @@ -62,7 +62,7 @@ python_api_name: qiskit.transpiler.passes.FilterOpNodes ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -82,7 +82,7 @@ python_api_name: qiskit.transpiler.passes.FilterOpNodes ### name - + Name of the pass. **Return type** @@ -92,7 +92,7 @@ python_api_name: qiskit.transpiler.passes.FilterOpNodes ### run - + Run the RemoveBarriers pass on dag. **Return type** @@ -102,7 +102,7 @@ python_api_name: qiskit.transpiler.passes.FilterOpNodes ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.FixedPoint.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.FixedPoint.mdx index e2762eb1546..db671f2be5a 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.FixedPoint.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.FixedPoint.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.FixedPoint # FixedPoint - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Check if a property reached a fixed point. @@ -43,7 +43,7 @@ python_api_name: qiskit.transpiler.passes.FixedPoint ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -63,7 +63,7 @@ python_api_name: qiskit.transpiler.passes.FixedPoint ### name - + Name of the pass. **Return type** @@ -73,13 +73,13 @@ python_api_name: qiskit.transpiler.passes.FixedPoint ### run - + Run the FixedPoint pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.FullAncillaAllocation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.FullAncillaAllocation.mdx index 4a6ec9e658f..2649b04aa31 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.FullAncillaAllocation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.FullAncillaAllocation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.FullAncillaAllocation # FullAncillaAllocation - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Allocate all idle nodes from the coupling map or target as ancilla on the layout. @@ -47,7 +47,7 @@ python_api_name: qiskit.transpiler.passes.FullAncillaAllocation ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -67,7 +67,7 @@ python_api_name: qiskit.transpiler.passes.FullAncillaAllocation ### name - + Name of the pass. **Return type** @@ -77,7 +77,7 @@ python_api_name: qiskit.transpiler.passes.FullAncillaAllocation ### run - + Run the FullAncillaAllocation pass on dag. Extend the layout with new (physical qubit, virtual qubit) pairs. The dag signals which virtual qubits are already in the circuit. This pass will allocate new virtual qubits such that no collision occurs (i.e. Layout bijectivity is preserved) @@ -103,7 +103,7 @@ python_api_name: qiskit.transpiler.passes.FullAncillaAllocation ### update\_status - + Update workflow status. **Parameters** @@ -122,7 +122,7 @@ python_api_name: qiskit.transpiler.passes.FullAncillaAllocation ### validate\_layout - + Checks if all the qregs in `layout_qregs` already exist in `dag_qregs`. Otherwise, raise. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.GateDirection.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.GateDirection.mdx index 17149aa9e06..8d654ab977e 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.GateDirection.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.GateDirection.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.GateDirection # GateDirection - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Modify asymmetric gates to match the hardware coupling direction. @@ -69,7 +69,7 @@ python_api_name: qiskit.transpiler.passes.GateDirection ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -89,7 +89,7 @@ python_api_name: qiskit.transpiler.passes.GateDirection ### name - + Name of the pass. **Return type** @@ -99,7 +99,7 @@ python_api_name: qiskit.transpiler.passes.GateDirection ### run - + Run the GateDirection pass on dag. Flips the cx nodes to match the directed coupling map. Modifies the input dag. @@ -123,7 +123,7 @@ python_api_name: qiskit.transpiler.passes.GateDirection ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.GatesInBasis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.GatesInBasis.mdx index 82c5015364f..1c6e1c62e36 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.GatesInBasis.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.GatesInBasis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.GatesInBasis # GatesInBasis - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Check if all gates in a DAG are in a given set of gates @@ -42,7 +42,7 @@ python_api_name: qiskit.transpiler.passes.GatesInBasis ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -62,7 +62,7 @@ python_api_name: qiskit.transpiler.passes.GatesInBasis ### name - + Name of the pass. **Return type** @@ -72,13 +72,13 @@ python_api_name: qiskit.transpiler.passes.GatesInBasis ### run - + Run the GatesInBasis pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.HLSConfig.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.HLSConfig.mdx index 9badf9b95c5..70f68345340 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.HLSConfig.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.HLSConfig.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.HLSConfig # HLSConfig - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") The high-level-synthesis config allows to specify a list of “methods” used by [`HighLevelSynthesis`](qiskit.transpiler.passes.HighLevelSynthesis "qiskit.transpiler.passes.HighLevelSynthesis") transformation pass to synthesize different types of higher-level objects. @@ -56,7 +56,7 @@ python_api_name: qiskit.transpiler.passes.HLSConfig ### set\_methods - + Sets the list of synthesis methods for a given higher-level-object. This overwrites the lists of methods if also set previously. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.HighLevelSynthesis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.HighLevelSynthesis.mdx index 0b91710492a..90399d53aae 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.HighLevelSynthesis.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.HighLevelSynthesis.mdx @@ -8,12 +8,12 @@ python_api_name: qiskit.transpiler.passes.HighLevelSynthesis # HighLevelSynthesis - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Synthesize higher-level objects and unroll custom definitions. - The input to this pass is a DAG that may contain higher-level objects, including abstract mathematical objects (e.g., objects of type [`LinearFunction`](qiskit.circuit.library.LinearFunction "qiskit.circuit.library.LinearFunction")), annotated operations (objects of type `AnnotatedOperation`), and custom gates. + The input to this pass is a DAG that may contain higher-level objects, including abstract mathematical objects (e.g., objects of type [`LinearFunction`](qiskit.circuit.library.LinearFunction "qiskit.circuit.library.LinearFunction")), annotated operations (objects of type [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation")), and custom gates. In the most common use-case when either `basis_gates` or `target` is specified, all higher-level objects are synthesized, so the output is a [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") without such objects. More precisely, every gate in the output DAG is either directly supported by the target, or is in `equivalence_library`. @@ -69,7 +69,7 @@ python_api_name: qiskit.transpiler.passes.HighLevelSynthesis ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -89,7 +89,7 @@ python_api_name: qiskit.transpiler.passes.HighLevelSynthesis ### name - + Name of the pass. **Return type** @@ -99,7 +99,7 @@ python_api_name: qiskit.transpiler.passes.HighLevelSynthesis ### run - + Run the HighLevelSynthesis pass on dag. **Parameters** @@ -122,7 +122,7 @@ python_api_name: qiskit.transpiler.passes.HighLevelSynthesis ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.HoareOptimizer.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.HoareOptimizer.mdx index 24b5561959e..df310cae2b6 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.HoareOptimizer.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.HoareOptimizer.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.HoareOptimizer # HoareOptimizer - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") This is a transpiler pass using Hoare logic circuit optimization. The inner workings of this are detailed in: [https://arxiv.org/abs/1810.00375](https://arxiv.org/abs/1810.00375) @@ -43,7 +43,7 @@ python_api_name: qiskit.transpiler.passes.HoareOptimizer ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -63,7 +63,7 @@ python_api_name: qiskit.transpiler.passes.HoareOptimizer ### name - + Name of the pass. **Return type** @@ -73,7 +73,7 @@ python_api_name: qiskit.transpiler.passes.HoareOptimizer ### run - + **Parameters** **dag** ([*DAGCircuit*](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit")) – the directed acyclic graph to run on. @@ -89,7 +89,7 @@ python_api_name: qiskit.transpiler.passes.HoareOptimizer ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.InstructionDurationCheck.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.InstructionDurationCheck.mdx index 238686ab858..d5065ed1d90 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.InstructionDurationCheck.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.InstructionDurationCheck.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.InstructionDurationCheck # InstructionDurationCheck - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Duration validation pass for reschedule. @@ -25,6 +25,7 @@ python_api_name: qiskit.transpiler.passes.InstructionDurationCheck * **acquire\_alignment** – Integer number representing the minimum time resolution to trigger acquisition instruction in units of `dt`. * **pulse\_alignment** – Integer number representing the minimum time resolution to trigger gate instruction in units of `dt`. + * **target** – The [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") representing the target backend, if `target` is specified then this argument will take precedence and `acquire_alignment` and `pulse_alignment` will be ignored. ## Attributes @@ -48,7 +49,7 @@ python_api_name: qiskit.transpiler.passes.InstructionDurationCheck ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -68,7 +69,7 @@ python_api_name: qiskit.transpiler.passes.InstructionDurationCheck ### name - + Name of the pass. **Return type** @@ -78,7 +79,7 @@ python_api_name: qiskit.transpiler.passes.InstructionDurationCheck ### run - + Run duration validation passes. **Parameters** @@ -88,7 +89,7 @@ python_api_name: qiskit.transpiler.passes.InstructionDurationCheck ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.InverseCancellation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.InverseCancellation.mdx index df63d10e620..2030f491af3 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.InverseCancellation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.InverseCancellation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.InverseCancellation # InverseCancellation - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Cancel specific Gates which are inverses of each other when they occur back-to- back. @@ -45,7 +45,7 @@ python_api_name: qiskit.transpiler.passes.InverseCancellation ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.InverseCancellation ### name - + Name of the pass. **Return type** @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.InverseCancellation ### run - + Run the InverseCancellation pass on dag. **Parameters** @@ -93,7 +93,7 @@ python_api_name: qiskit.transpiler.passes.InverseCancellation ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Layout2qDistance.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Layout2qDistance.mdx index 79d7fd78581..c6030f1806e 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Layout2qDistance.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Layout2qDistance.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Layout2qDistance # Layout2qDistance - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Evaluate how good the layout selection was. @@ -44,7 +44,7 @@ python_api_name: qiskit.transpiler.passes.Layout2qDistance ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -64,7 +64,7 @@ python_api_name: qiskit.transpiler.passes.Layout2qDistance ### name - + Name of the pass. **Return type** @@ -74,13 +74,13 @@ python_api_name: qiskit.transpiler.passes.Layout2qDistance ### run - + Run the Layout2qDistance pass on dag. :param dag: DAG to evaluate. :type dag: DAGCircuit ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.LinearFunctionsToPermutations.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.LinearFunctionsToPermutations.mdx index 925db839e93..b3145fbd484 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.LinearFunctionsToPermutations.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.LinearFunctionsToPermutations.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.LinearFunctionsToPermutations # LinearFunctionsToPermutations - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Promotes linear functions to permutations when possible. @@ -35,7 +35,7 @@ python_api_name: qiskit.transpiler.passes.LinearFunctionsToPermutations ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.passes.LinearFunctionsToPermutations ### name - + Name of the pass. **Return type** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.LinearFunctionsToPermutations ### run - + Run the LinearFunctionsToPermutations pass on dag. :param dag: input dag. **Returns** @@ -79,7 +79,7 @@ python_api_name: qiskit.transpiler.passes.LinearFunctionsToPermutations ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.LookaheadSwap.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.LookaheadSwap.mdx index 170a61347b5..302ea28c051 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.LookaheadSwap.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.LookaheadSwap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.LookaheadSwap # LookaheadSwap - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Map input circuit onto a backend topology via insertion of SWAPs. @@ -60,7 +60,7 @@ python_api_name: qiskit.transpiler.passes.LookaheadSwap ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -80,7 +80,7 @@ python_api_name: qiskit.transpiler.passes.LookaheadSwap ### name - + Name of the pass. **Return type** @@ -90,7 +90,7 @@ python_api_name: qiskit.transpiler.passes.LookaheadSwap ### run - + Run the LookaheadSwap pass on dag. **Parameters** @@ -115,7 +115,7 @@ python_api_name: qiskit.transpiler.passes.LookaheadSwap ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.MergeAdjacentBarriers.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.MergeAdjacentBarriers.mdx index e61893300ef..ac46682ef78 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.MergeAdjacentBarriers.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.MergeAdjacentBarriers.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.MergeAdjacentBarriers # MergeAdjacentBarriers - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Return a circuit with any adjacent barriers merged together. @@ -72,7 +72,7 @@ python_api_name: qiskit.transpiler.passes.MergeAdjacentBarriers ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -92,7 +92,7 @@ python_api_name: qiskit.transpiler.passes.MergeAdjacentBarriers ### name - + Name of the pass. **Return type** @@ -102,13 +102,13 @@ python_api_name: qiskit.transpiler.passes.MergeAdjacentBarriers ### run - + Run the MergeAdjacentBarriers pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.MinimumPoint.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.MinimumPoint.mdx index d9312595c39..377cd0a6422 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.MinimumPoint.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.MinimumPoint.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.MinimumPoint # MinimumPoint - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Check if the DAG has reached a relative semi-stable point over previous runs @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.passes.MinimumPoint ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.MinimumPoint ### name - + Name of the pass. **Return type** @@ -85,13 +85,13 @@ python_api_name: qiskit.transpiler.passes.MinimumPoint ### run - + Run the MinimumPoint pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.NormalizeRXAngle.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.NormalizeRXAngle.mdx index a8366fdb45a..d836f9e3e76 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.NormalizeRXAngle.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.NormalizeRXAngle.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.NormalizeRXAngle # NormalizeRXAngle - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Normalize theta parameter of RXGate instruction. @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.NormalizeRXAngle ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -77,7 +77,7 @@ python_api_name: qiskit.transpiler.passes.NormalizeRXAngle ### name - + Name of the pass. **Return type** @@ -87,12 +87,12 @@ python_api_name: qiskit.transpiler.passes.NormalizeRXAngle ### quantize\_angles - + Quantize the RX rotation angles by assigning the same value for the angles that differ within a resolution provided by the user. **Parameters** - * **qubit** ([*qiskit.circuit.Qubit*](qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – This will be the dict key to access the list of quantized rotation angles. + * **qubit** ([*qiskit.circuit.Qubit*](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit")) – This will be the dict key to access the list of quantized rotation angles. * **original\_angle** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – Original rotation angle, before quantization. **Returns** @@ -106,7 +106,7 @@ python_api_name: qiskit.transpiler.passes.NormalizeRXAngle ### run - + Run the NormalizeRXAngle pass on `dag`. **Parameters** @@ -124,7 +124,7 @@ python_api_name: qiskit.transpiler.passes.NormalizeRXAngle ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.NumTensorFactors.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.NumTensorFactors.mdx index 6f82e916ca6..59d98a37a90 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.NumTensorFactors.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.NumTensorFactors.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.NumTensorFactors # NumTensorFactors - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Calculate the number of tensor factors of a DAG circuit. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.NumTensorFactors ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.NumTensorFactors ### name - + Name of the pass. **Return type** @@ -67,13 +67,13 @@ python_api_name: qiskit.transpiler.passes.NumTensorFactors ### run - + Run the NumTensorFactors pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGates.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGates.mdx index 721a6ac6232..150c9b8a9b8 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGates.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGates.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGates # Optimize1qGates - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Optimize chains of single-qubit u1, u2, u3 gates by combining them into a single gate. @@ -43,7 +43,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGates ### compose\_u3 - + Return a triple theta, phi, lambda for the product. **u3(theta, phi, lambda)** @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGates ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGates ### name - + Name of the pass. **Return type** @@ -85,7 +85,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGates ### run - + Run the Optimize1qGates pass on dag. **Parameters** @@ -107,7 +107,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGates ### update\_status - + Update workflow status. **Parameters** @@ -126,7 +126,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGates ### yzy\_to\_zyz - + Express a Y.Z.Y single qubit gate as a Z.Y.Z gate. Solve the equation diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGatesDecomposition.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGatesDecomposition.mdx index 2f1e61f4d8c..be6dc407382 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGatesDecomposition.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGatesDecomposition.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesDecomposition # Optimize1qGatesDecomposition - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Optimize chains of single-qubit gates by combining them into a single gate. @@ -51,7 +51,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesDecomposition ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -71,7 +71,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesDecomposition ### name - + Name of the pass. **Return type** @@ -81,7 +81,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesDecomposition ### run - + Run the Optimize1qGatesDecomposition pass on dag. **Parameters** @@ -99,7 +99,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesDecomposition ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation.mdx index 37a0ac6c185..8868a67d380 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation # Optimize1qGatesSimpleCommutation - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Optimizes 1Q gate strings interrupted by 2Q gates by commuting the components and resynthesizing the results. The commutation rules are stored in `commutation_table`. @@ -47,7 +47,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -67,7 +67,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation ### name - + Name of the pass. **Return type** @@ -77,7 +77,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation ### run - + **Parameters** **dag** ([*DAGCircuit*](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit")) – the DAG to be optimized. @@ -93,7 +93,7 @@ python_api_name: qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.OptimizeAnnotated.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.OptimizeAnnotated.mdx index 4b7e1d14496..8ef4fb10d03 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.OptimizeAnnotated.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.OptimizeAnnotated.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeAnnotated # OptimizeAnnotated - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Optimization pass on circuits with annotated operations. @@ -50,7 +50,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeAnnotated ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -70,7 +70,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeAnnotated ### name - + Name of the pass. **Return type** @@ -80,7 +80,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeAnnotated ### run - + Run the OptimizeAnnotated pass on dag. **Parameters** @@ -98,7 +98,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeAnnotated ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.OptimizeCliffords.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.OptimizeCliffords.mdx index dfc8e7ea1ad..0a6094d260a 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.OptimizeCliffords.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.OptimizeCliffords.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeCliffords # OptimizeCliffords - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Combine consecutive Cliffords over the same qubits. This serves as an example of extra capabilities enabled by storing Cliffords natively on the circuit. @@ -35,7 +35,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeCliffords ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeCliffords ### name - + Name of the pass. **Return type** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeCliffords ### run - + Run the OptimizeCliffords pass on dag. **Parameters** @@ -83,7 +83,7 @@ python_api_name: qiskit.transpiler.passes.OptimizeCliffords ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDelay.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDelay.mdx index 4283bca5fb2..5ca45f5fef2 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDelay.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDelay.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.PadDelay # PadDelay - + Bases: `BasePadding` Padding idle time with Delay instructions. @@ -67,7 +67,7 @@ python_api_name: qiskit.transpiler.passes.PadDelay ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -87,7 +87,7 @@ python_api_name: qiskit.transpiler.passes.PadDelay ### name - + Name of the pass. **Return type** @@ -97,7 +97,7 @@ python_api_name: qiskit.transpiler.passes.PadDelay ### run - + Run the padding pass on `dag`. **Parameters** @@ -119,7 +119,7 @@ python_api_name: qiskit.transpiler.passes.PadDelay ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDynamicalDecoupling.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDynamicalDecoupling.mdx index 0ae7e4386be..651f98c7e1c 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDynamicalDecoupling.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDynamicalDecoupling.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.PadDynamicalDecoupling # PadDynamicalDecoupling - + Bases: `BasePadding` Dynamical decoupling insertion pass. @@ -125,7 +125,7 @@ python_api_name: qiskit.transpiler.passes.PadDynamicalDecoupling ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -145,7 +145,7 @@ python_api_name: qiskit.transpiler.passes.PadDynamicalDecoupling ### name - + Name of the pass. **Return type** @@ -155,7 +155,7 @@ python_api_name: qiskit.transpiler.passes.PadDynamicalDecoupling ### run - + Run the padding pass on `dag`. **Parameters** @@ -177,7 +177,7 @@ python_api_name: qiskit.transpiler.passes.PadDynamicalDecoupling ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.PulseGates.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.PulseGates.mdx index 0a825974a62..dac54689da3 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.PulseGates.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.PulseGates.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.PulseGates # PulseGates - + Bases: `CalibrationBuilder` Pulse gate adding pass. @@ -54,7 +54,7 @@ python_api_name: qiskit.transpiler.passes.PulseGates ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -74,7 +74,7 @@ python_api_name: qiskit.transpiler.passes.PulseGates ### get\_calibration - + Gets the calibrated schedule for the given instruction and qubits. **Parameters** @@ -97,7 +97,7 @@ python_api_name: qiskit.transpiler.passes.PulseGates ### name - + Name of the pass. **Return type** @@ -107,7 +107,7 @@ python_api_name: qiskit.transpiler.passes.PulseGates ### run - + Run the calibration adder pass on dag. **Parameters** @@ -125,7 +125,7 @@ python_api_name: qiskit.transpiler.passes.PulseGates ### supported - + Determine if a given node supports the calibration. **Parameters** @@ -144,7 +144,7 @@ python_api_name: qiskit.transpiler.passes.PulseGates ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RXCalibrationBuilder.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RXCalibrationBuilder.mdx index 5ca528793bf..b8fe10c804f 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.RXCalibrationBuilder.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RXCalibrationBuilder.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.RXCalibrationBuilder # RXCalibrationBuilder - + Bases: `CalibrationBuilder` Add single-pulse RX calibrations that are bootstrapped from the SX calibration. @@ -85,7 +85,7 @@ python_api_name: qiskit.transpiler.passes.RXCalibrationBuilder ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -105,7 +105,7 @@ python_api_name: qiskit.transpiler.passes.RXCalibrationBuilder ### get\_calibration - + Generate RX calibration for the rotation angle specified in node\_op. **Return type** @@ -115,7 +115,7 @@ python_api_name: qiskit.transpiler.passes.RXCalibrationBuilder ### name - + Name of the pass. **Return type** @@ -125,7 +125,7 @@ python_api_name: qiskit.transpiler.passes.RXCalibrationBuilder ### run - + Run the calibration adder pass on dag. **Parameters** @@ -143,7 +143,7 @@ python_api_name: qiskit.transpiler.passes.RXCalibrationBuilder ### supported - + Check if the calibration for SX gate exists and it’s a single DRAG pulse. **Return type** @@ -153,7 +153,7 @@ python_api_name: qiskit.transpiler.passes.RXCalibrationBuilder ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilder.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilder.mdx index 02456ec7a64..2e35ce9c0a3 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilder.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilder.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder # RZXCalibrationBuilder - + Bases: `CalibrationBuilder` Creates calibrations for RZXGate(theta) by stretching and compressing Gaussian square pulses in the CX gate. This is done by retrieving (for a given pair of qubits) the CX schedule in the instruction schedule map of the backend defaults. The CX schedule must be an echoed cross-resonance gate optionally with rotary tones. The cross-resonance drive tones and rotary pulses must be Gaussian square pulses. The width of the Gaussian square pulse is adjusted so as to match the desired rotation angle. If the rotation angle is small such that the width disappears then the amplitude of the zero width Gaussian square pulse (i.e. a Gaussian) is reduced to reach the target rotation angle. Additional details can be found in [https://arxiv.org/abs/2012.11660](https://arxiv.org/abs/2012.11660). @@ -47,7 +47,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -67,7 +67,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### get\_calibration - + Builds the calibration schedule for the RZXGate(theta) with echos. **Parameters** @@ -92,7 +92,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### name - + Name of the pass. **Return type** @@ -102,7 +102,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### rescale\_cr\_inst - + A builder macro to play stretched pulse. **Parameters** @@ -126,7 +126,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### run - + Run the calibration adder pass on dag. **Parameters** @@ -144,7 +144,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### supported - + Determine if a given node supports the calibration. **Parameters** @@ -163,7 +163,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho.mdx index 5276d99d8e7..5f5c9f928b5 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho # RZXCalibrationBuilderNoEcho - + Bases: [`RZXCalibrationBuilder`](qiskit.transpiler.passes.RZXCalibrationBuilder "qiskit.transpiler.passes.calibration.rzx_builder.RZXCalibrationBuilder") Creates calibrations for RZXGate(theta) by stretching and compressing Gaussian square pulses in the CX gate. @@ -49,7 +49,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -69,7 +69,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### get\_calibration - + Builds the calibration schedule for the RZXGate(theta) without echos. **Parameters** @@ -94,7 +94,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### name - + Name of the pass. **Return type** @@ -104,7 +104,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### rescale\_cr\_inst - + A builder macro to play stretched pulse. **Parameters** @@ -128,7 +128,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### run - + Run the calibration adder pass on dag. **Parameters** @@ -146,7 +146,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### supported - + Determine if a given node supports the calibration. **Parameters** @@ -165,7 +165,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveBarriers.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveBarriers.mdx index 90c280c6924..c2b2df8bde8 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveBarriers.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveBarriers.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.RemoveBarriers # RemoveBarriers - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Return a circuit with any barrier removed. @@ -54,7 +54,7 @@ python_api_name: qiskit.transpiler.passes.RemoveBarriers ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -74,7 +74,7 @@ python_api_name: qiskit.transpiler.passes.RemoveBarriers ### name - + Name of the pass. **Return type** @@ -84,7 +84,7 @@ python_api_name: qiskit.transpiler.passes.RemoveBarriers ### run - + Run the RemoveBarriers pass on dag. **Return type** @@ -94,7 +94,7 @@ python_api_name: qiskit.transpiler.passes.RemoveBarriers ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure.mdx index 13c8b9467ec..f3764b51889 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure # RemoveDiagonalGatesBeforeMeasure - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Remove diagonal gates (including diagonal 2Q gates) before a measurement. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure ### name - + Name of the pass. **Return type** @@ -67,7 +67,7 @@ python_api_name: qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure ### run - + Run the RemoveDiagonalGatesBeforeMeasure pass on dag. **Parameters** @@ -85,7 +85,7 @@ python_api_name: qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalMeasurements.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalMeasurements.mdx index 0147bd46764..9554b6e0110 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalMeasurements.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalMeasurements.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.RemoveFinalMeasurements # RemoveFinalMeasurements - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Remove final measurements and barriers at the end of a circuit. @@ -39,7 +39,7 @@ python_api_name: qiskit.transpiler.passes.RemoveFinalMeasurements ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -59,7 +59,7 @@ python_api_name: qiskit.transpiler.passes.RemoveFinalMeasurements ### name - + Name of the pass. **Return type** @@ -69,7 +69,7 @@ python_api_name: qiskit.transpiler.passes.RemoveFinalMeasurements ### run - + Run the RemoveFinalMeasurements pass on dag. **Parameters** @@ -87,7 +87,7 @@ python_api_name: qiskit.transpiler.passes.RemoveFinalMeasurements ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalReset.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalReset.mdx new file mode 100644 index 00000000000..aa8b5c5dc7d --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalReset.mdx @@ -0,0 +1,103 @@ +--- +title: RemoveFinalReset +description: API reference for qiskit.transpiler.passes.RemoveFinalReset +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.transpiler.passes.RemoveFinalReset +--- + +# RemoveFinalReset + + + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") + + Remove reset when it is the final instruction on a qubit wire. + + ## Attributes + + ### is\_analysis\_pass + + + Check if the pass is an analysis pass. + + If the pass is an AnalysisPass, that means that the pass can analyze the DAG and write the results of that analysis in the property set. Modifications on the DAG are not allowed by this kind of pass. + + + ### is\_transformation\_pass + + + Check if the pass is a transformation pass. + + If the pass is a TransformationPass, that means that the pass can manipulate the DAG, but cannot modify the property set (but it can be read). + + + ## Methods + + ### execute + + + Execute optimization task for input Qiskit IR. + + **Parameters** + + * **passmanager\_ir** ([*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")) – Qiskit IR to optimize. + * **state** ([*PassManagerState*](qiskit.passmanager.PassManagerState "qiskit.passmanager.compilation_status.PassManagerState")) – State associated with workflow execution by the pass manager itself. + * **callback** ([*Callable*](https://docs.python.org/3/library/collections.abc.html#collections.abc.Callable "(in Python v3.12)") *| None*) – A callback function which is caller per execution of optimization task. + + **Returns** + + Optimized Qiskit IR and state of the workflow. + + **Return type** + + [tuple](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")\[[*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)"), [qiskit.passmanager.compilation\_status.PassManagerState](qiskit.passmanager.PassManagerState "qiskit.passmanager.compilation_status.PassManagerState")] + + + ### name + + + Name of the pass. + + **Return type** + + [str](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") + + + ### run + + + Run the RemoveFinalReset pass on dag. + + **Parameters** + + **dag** ([*DAGCircuit*](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit")) – the DAG to be optimized. + + **Returns** + + the optimized DAG. + + **Return type** + + [DAGCircuit](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") + + + ### update\_status + + + Update workflow status. + + **Parameters** + + * **state** ([*PassManagerState*](qiskit.passmanager.PassManagerState "qiskit.passmanager.compilation_status.PassManagerState")) – Pass manager state to update. + * **run\_state** (*RunState*) – Completion status of current task. + + **Returns** + + Updated pass manager state. + + **Return type** + + [*PassManagerState*](qiskit.passmanager.PassManagerState "qiskit.passmanager.compilation_status.PassManagerState") + + + diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveResetInZeroState.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveResetInZeroState.mdx index 31a6bad2488..de8b4374e1d 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveResetInZeroState.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveResetInZeroState.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.RemoveResetInZeroState # RemoveResetInZeroState - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Remove reset gate when the qubit is in zero state. @@ -35,7 +35,7 @@ python_api_name: qiskit.transpiler.passes.RemoveResetInZeroState ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -55,7 +55,7 @@ python_api_name: qiskit.transpiler.passes.RemoveResetInZeroState ### name - + Name of the pass. **Return type** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.RemoveResetInZeroState ### run - + Run the RemoveResetInZeroState pass on dag. **Parameters** @@ -83,7 +83,7 @@ python_api_name: qiskit.transpiler.passes.RemoveResetInZeroState ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ResetAfterMeasureSimplification.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ResetAfterMeasureSimplification.mdx index 8eb556b237a..e340ffe9696 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ResetAfterMeasureSimplification.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ResetAfterMeasureSimplification.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ResetAfterMeasureSimplification # ResetAfterMeasureSimplification - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") This pass replaces reset after measure with a conditional X gate. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.ResetAfterMeasureSimplification ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.ResetAfterMeasureSimplification ### name - + Name of the pass. **Return type** @@ -67,13 +67,13 @@ python_api_name: qiskit.transpiler.passes.ResetAfterMeasureSimplification ### run - + Run the pass on a dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.SabreLayout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.SabreLayout.mdx index c27c2d065ba..7495bf2783a 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.SabreLayout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.SabreLayout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.SabreLayout # SabreLayout - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Choose a Layout via iterative bidirectional routing of the input circuit. @@ -129,7 +129,7 @@ python_api_name: qiskit.transpiler.passes.SabreLayout ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -149,7 +149,7 @@ python_api_name: qiskit.transpiler.passes.SabreLayout ### name - + Name of the pass. **Return type** @@ -159,7 +159,7 @@ python_api_name: qiskit.transpiler.passes.SabreLayout ### run - + Run the SabreLayout pass on dag. **Parameters** @@ -183,7 +183,7 @@ python_api_name: qiskit.transpiler.passes.SabreLayout ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.SabrePreLayout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.SabrePreLayout.mdx index 58a5c6a5786..5f2f2e51ae5 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.SabrePreLayout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.SabrePreLayout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.SabrePreLayout # SabrePreLayout - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Choose a starting layout to use for additional Sabre layout trials. @@ -99,7 +99,7 @@ python_api_name: qiskit.transpiler.passes.SabrePreLayout ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -119,7 +119,7 @@ python_api_name: qiskit.transpiler.passes.SabrePreLayout ### name - + Name of the pass. **Return type** @@ -129,7 +129,7 @@ python_api_name: qiskit.transpiler.passes.SabrePreLayout ### run - + Run the SabrePreLayout pass on dag. The discovered starting layout is written to the property set value `sabre_starting_layouts`. @@ -141,7 +141,7 @@ python_api_name: qiskit.transpiler.passes.SabrePreLayout ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.SabreSwap.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.SabreSwap.mdx index 9a36050025e..e68a3da97f0 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.SabreSwap.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.SabreSwap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.SabreSwap # SabreSwap - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Map input circuit onto a backend topology via insertion of SWAPs. @@ -95,7 +95,7 @@ python_api_name: qiskit.transpiler.passes.SabreSwap ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -115,7 +115,7 @@ python_api_name: qiskit.transpiler.passes.SabreSwap ### name - + Name of the pass. **Return type** @@ -125,7 +125,7 @@ python_api_name: qiskit.transpiler.passes.SabreSwap ### run - + Run the SabreSwap pass on dag. **Parameters** @@ -148,7 +148,7 @@ python_api_name: qiskit.transpiler.passes.SabreSwap ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.SetIOLatency.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.SetIOLatency.mdx index b2c4f892823..8655ce56fd0 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.SetIOLatency.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.SetIOLatency.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.SetIOLatency # SetIOLatency - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Set IOLatency information to the input circuit. @@ -46,7 +46,7 @@ python_api_name: qiskit.transpiler.passes.SetIOLatency ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -66,7 +66,7 @@ python_api_name: qiskit.transpiler.passes.SetIOLatency ### name - + Name of the pass. **Return type** @@ -76,7 +76,7 @@ python_api_name: qiskit.transpiler.passes.SetIOLatency ### run - + Add IO latency information. **Parameters** @@ -86,7 +86,7 @@ python_api_name: qiskit.transpiler.passes.SetIOLatency ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.SetLayout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.SetLayout.mdx index 423ea46fa70..806b9271d88 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.SetLayout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.SetLayout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.SetLayout # SetLayout - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Set the `layout` property to the given layout. @@ -48,7 +48,7 @@ python_api_name: qiskit.transpiler.passes.SetLayout ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -68,7 +68,7 @@ python_api_name: qiskit.transpiler.passes.SetLayout ### name - + Name of the pass. **Return type** @@ -78,7 +78,7 @@ python_api_name: qiskit.transpiler.passes.SetLayout ### run - + Run the SetLayout pass on `dag`. **Parameters** @@ -96,7 +96,7 @@ python_api_name: qiskit.transpiler.passes.SetLayout ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Size.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Size.mdx index a08545e09a6..23e76c18db1 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Size.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Size.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Size # Size - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Calculate the size of a DAG circuit. @@ -41,7 +41,7 @@ python_api_name: qiskit.transpiler.passes.Size ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -61,7 +61,7 @@ python_api_name: qiskit.transpiler.passes.Size ### name - + Name of the pass. **Return type** @@ -71,13 +71,13 @@ python_api_name: qiskit.transpiler.passes.Size ### run - + Run the Size pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.SolovayKitaev.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.SolovayKitaev.mdx index 47762b9880c..296c16adcdd 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.SolovayKitaev.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.SolovayKitaev.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.SolovayKitaev # SolovayKitaev - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Approximately decompose 1q gates to a discrete basis using the Solovay-Kitaev algorithm. @@ -124,7 +124,7 @@ python_api_name: qiskit.transpiler.passes.SolovayKitaev ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -144,7 +144,7 @@ python_api_name: qiskit.transpiler.passes.SolovayKitaev ### name - + Name of the pass. **Return type** @@ -154,7 +154,7 @@ python_api_name: qiskit.transpiler.passes.SolovayKitaev ### run - + Run the `SolovayKitaev` pass on dag. **Parameters** @@ -176,7 +176,7 @@ python_api_name: qiskit.transpiler.passes.SolovayKitaev ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.StochasticSwap.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.StochasticSwap.mdx index f0cc3565c3b..ba4c0430045 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.StochasticSwap.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.StochasticSwap.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.StochasticSwap # StochasticSwap - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Map a DAGCircuit onto a coupling\_map adding swap gates. @@ -56,7 +56,7 @@ python_api_name: qiskit.transpiler.passes.StochasticSwap ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -76,7 +76,7 @@ python_api_name: qiskit.transpiler.passes.StochasticSwap ### name - + Name of the pass. **Return type** @@ -86,7 +86,7 @@ python_api_name: qiskit.transpiler.passes.StochasticSwap ### run - + Run the StochasticSwap pass on dag. **Parameters** @@ -109,7 +109,7 @@ python_api_name: qiskit.transpiler.passes.StochasticSwap ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.TemplateOptimization.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.TemplateOptimization.mdx index 8fbc88f7c28..883b0251b88 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.TemplateOptimization.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.TemplateOptimization.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.TemplateOptimization # TemplateOptimization - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Class for the template optimization pass. @@ -42,7 +42,7 @@ python_api_name: qiskit.transpiler.passes.TemplateOptimization ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -62,7 +62,7 @@ python_api_name: qiskit.transpiler.passes.TemplateOptimization ### name - + Name of the pass. **Return type** @@ -72,7 +72,7 @@ python_api_name: qiskit.transpiler.passes.TemplateOptimization ### run - + **Parameters** **dag** ([*DAGCircuit*](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit")) – DAG circuit. @@ -92,7 +92,7 @@ python_api_name: qiskit.transpiler.passes.TemplateOptimization ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.TimeUnitConversion.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.TimeUnitConversion.mdx index a25550f8845..63706b4231a 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.TimeUnitConversion.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.TimeUnitConversion.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.TimeUnitConversion # TimeUnitConversion - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Choose a time unit to be used in the following time-aware passes, and make all circuit time units consistent with that. @@ -50,7 +50,7 @@ python_api_name: qiskit.transpiler.passes.TimeUnitConversion ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -70,7 +70,7 @@ python_api_name: qiskit.transpiler.passes.TimeUnitConversion ### name - + Name of the pass. **Return type** @@ -80,7 +80,7 @@ python_api_name: qiskit.transpiler.passes.TimeUnitConversion ### run - + Run the TimeUnitAnalysis pass on dag. **Parameters** @@ -102,7 +102,7 @@ python_api_name: qiskit.transpiler.passes.TimeUnitConversion ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.TranslateParameterizedGates.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.TranslateParameterizedGates.mdx index f311ed28ea9..9c65cf758f3 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.TranslateParameterizedGates.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.TranslateParameterizedGates.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.TranslateParameterizedGates # TranslateParameterizedGates - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Translate parameterized gates to a supported basis set. @@ -92,7 +92,7 @@ python_api_name: qiskit.transpiler.passes.TranslateParameterizedGates ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -112,7 +112,7 @@ python_api_name: qiskit.transpiler.passes.TranslateParameterizedGates ### name - + Name of the pass. **Return type** @@ -122,7 +122,7 @@ python_api_name: qiskit.transpiler.passes.TranslateParameterizedGates ### run - + Run the transpiler pass. **Parameters** @@ -144,7 +144,7 @@ python_api_name: qiskit.transpiler.passes.TranslateParameterizedGates ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.TrivialLayout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.TrivialLayout.mdx index 4e1ee4ccdfa..4eeeadebd43 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.TrivialLayout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.TrivialLayout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.TrivialLayout # TrivialLayout - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Choose a Layout by assigning `n` circuit qubits to device qubits `0, .., n-1`. @@ -51,7 +51,7 @@ python_api_name: qiskit.transpiler.passes.TrivialLayout ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -71,7 +71,7 @@ python_api_name: qiskit.transpiler.passes.TrivialLayout ### name - + Name of the pass. **Return type** @@ -81,7 +81,7 @@ python_api_name: qiskit.transpiler.passes.TrivialLayout ### run - + Run the TrivialLayout pass on dag. **Parameters** @@ -95,7 +95,7 @@ python_api_name: qiskit.transpiler.passes.TrivialLayout ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.UnitarySynthesis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.UnitarySynthesis.mdx index acdc530e067..7339f70ba52 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.UnitarySynthesis.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.UnitarySynthesis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.UnitarySynthesis # UnitarySynthesis - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Synthesize gates according to their basis gates. @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.UnitarySynthesis ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -77,7 +77,7 @@ python_api_name: qiskit.transpiler.passes.UnitarySynthesis ### name - + Name of the pass. **Return type** @@ -87,7 +87,7 @@ python_api_name: qiskit.transpiler.passes.UnitarySynthesis ### run - + Run the UnitarySynthesis pass on `dag`. **Parameters** @@ -105,7 +105,7 @@ python_api_name: qiskit.transpiler.passes.UnitarySynthesis ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Unroll3qOrMore.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Unroll3qOrMore.mdx index ec82e06e798..2b2ae9c731a 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Unroll3qOrMore.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Unroll3qOrMore.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Unroll3qOrMore # Unroll3qOrMore - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Recursively expands 3q+ gates until the circuit only contains 2q or 1q gates. @@ -42,7 +42,7 @@ python_api_name: qiskit.transpiler.passes.Unroll3qOrMore ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -62,7 +62,7 @@ python_api_name: qiskit.transpiler.passes.Unroll3qOrMore ### name - + Name of the pass. **Return type** @@ -72,7 +72,7 @@ python_api_name: qiskit.transpiler.passes.Unroll3qOrMore ### run - + Run the Unroll3qOrMore pass on dag. **Parameters** @@ -94,7 +94,7 @@ python_api_name: qiskit.transpiler.passes.Unroll3qOrMore ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.UnrollCustomDefinitions.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.UnrollCustomDefinitions.mdx index 82654508141..e65579184c9 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.UnrollCustomDefinitions.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.UnrollCustomDefinitions.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.UnrollCustomDefinitions # UnrollCustomDefinitions - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") Unrolls instructions with custom definitions. @@ -53,7 +53,7 @@ python_api_name: qiskit.transpiler.passes.UnrollCustomDefinitions ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -73,7 +73,7 @@ python_api_name: qiskit.transpiler.passes.UnrollCustomDefinitions ### name - + Name of the pass. **Return type** @@ -83,7 +83,7 @@ python_api_name: qiskit.transpiler.passes.UnrollCustomDefinitions ### run - + Run the UnrollCustomDefinitions pass on dag. **Parameters** @@ -106,7 +106,7 @@ python_api_name: qiskit.transpiler.passes.UnrollCustomDefinitions ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.UnrollForLoops.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.UnrollForLoops.mdx index d4900f11f95..362081348fe 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.UnrollForLoops.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.UnrollForLoops.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.UnrollForLoops # UnrollForLoops - + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") `UnrollForLoops` transpilation pass unrolls for-loops when possible. @@ -45,7 +45,7 @@ python_api_name: qiskit.transpiler.passes.UnrollForLoops ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -65,7 +65,7 @@ python_api_name: qiskit.transpiler.passes.UnrollForLoops ### name - + Name of the pass. **Return type** @@ -75,7 +75,7 @@ python_api_name: qiskit.transpiler.passes.UnrollForLoops ### run - + Run the UnrollForLoops pass on `dag`. **Parameters** @@ -93,7 +93,7 @@ python_api_name: qiskit.transpiler.passes.UnrollForLoops ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.VF2Layout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.VF2Layout.mdx index 88f3226fc11..e5e3c94ac2d 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.VF2Layout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.VF2Layout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.VF2Layout # VF2Layout - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") A pass for choosing a Layout of a circuit onto a Coupling graph, as a subgraph isomorphism problem, solved by VF2++. @@ -71,7 +71,7 @@ python_api_name: qiskit.transpiler.passes.VF2Layout ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -91,7 +91,7 @@ python_api_name: qiskit.transpiler.passes.VF2Layout ### name - + Name of the pass. **Return type** @@ -101,13 +101,13 @@ python_api_name: qiskit.transpiler.passes.VF2Layout ### run - + run the layout method ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.VF2PostLayout.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.VF2PostLayout.mdx index 5f3a3fe60d6..1887ea20b96 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.VF2PostLayout.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.VF2PostLayout.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.VF2PostLayout # VF2PostLayout - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") A pass for improving an existing Layout after transpilation of a circuit onto a Coupling graph, as a subgraph isomorphism problem, solved by VF2++. @@ -74,7 +74,7 @@ python_api_name: qiskit.transpiler.passes.VF2PostLayout ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -94,7 +94,7 @@ python_api_name: qiskit.transpiler.passes.VF2PostLayout ### name - + Name of the pass. **Return type** @@ -104,13 +104,13 @@ python_api_name: qiskit.transpiler.passes.VF2PostLayout ### run - + run the layout method ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ValidatePulseGates.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ValidatePulseGates.mdx index bd35ab3e36c..580919b3f76 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ValidatePulseGates.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ValidatePulseGates.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.ValidatePulseGates # ValidatePulseGates - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Check custom gate length. @@ -27,6 +27,7 @@ python_api_name: qiskit.transpiler.passes.ValidatePulseGates * **granularity** – Integer number representing the minimum time resolution to define the pulse gate length in units of `dt`. This value depends on the control electronics of your quantum processor. * **min\_length** – Integer number representing the minimum data point length to define the pulse gate in units of `dt`. This value depends on the control electronics of your quantum processor. + * **target** – The [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") representing the target backend, if `target` is specified then this argument will take precedence and `granularity` and `min_length` will be ignored. ## Attributes @@ -50,7 +51,7 @@ python_api_name: qiskit.transpiler.passes.ValidatePulseGates ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -70,7 +71,7 @@ python_api_name: qiskit.transpiler.passes.ValidatePulseGates ### name - + Name of the pass. **Return type** @@ -80,7 +81,7 @@ python_api_name: qiskit.transpiler.passes.ValidatePulseGates ### run - + Run the pulse gate validation attached to `dag`. **Parameters** @@ -102,7 +103,7 @@ python_api_name: qiskit.transpiler.passes.ValidatePulseGates ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.Width.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.Width.mdx index 72cbb136441..201f69ac5c1 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.Width.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.Width.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.Width # Width - + Bases: [`AnalysisPass`](qiskit.transpiler.AnalysisPass "qiskit.transpiler.basepasses.AnalysisPass") Calculate the width of a DAG circuit. @@ -37,7 +37,7 @@ python_api_name: qiskit.transpiler.passes.Width ### execute - + Execute optimization task for input Qiskit IR. **Parameters** @@ -57,7 +57,7 @@ python_api_name: qiskit.transpiler.passes.Width ### name - + Name of the pass. **Return type** @@ -67,13 +67,13 @@ python_api_name: qiskit.transpiler.passes.Width ### run - + Run the Width pass on dag. ### update\_status - + Update workflow status. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.aqc_plugin.AQCSynthesisPlugin.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.aqc_plugin.AQCSynthesisPlugin.mdx index 2c73a8b513b..21ad30ae6d2 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.aqc_plugin.AQCSynthesisPlugin.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.aqc_plugin.AQCSynthesisPlugin.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.aqc_plugin.AQCSynthesisPlugi # AQCSynthesisPlugin - + Bases: [`UnitarySynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin") An AQC-based Qiskit unitary synthesis plugin. @@ -157,7 +157,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.aqc_plugin.AQCSynthesisPlugi ### run - + Run synthesis for the given unitary matrix **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.ACGSynthesisPermutation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.ACGSynthesisPermutation.mdx index 3d05b0c0383..b5038621baf 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.ACGSynthesisPermutation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.ACGSynthesisPermutation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.ACGSynt # ACGSynthesisPermutation - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") The permutation synthesis plugin based on the Alon, Chung, Graham method. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.ACGSynt ### run - + Run synthesis for the given Permutation. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.AGSynthesisClifford.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.AGSynthesisClifford.mdx index 00255429fe6..5e03891cb8e 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.AGSynthesisClifford.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.AGSynthesisClifford.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.AGSynth # AGSynthesisClifford - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") Clifford synthesis plugin based on the Aaronson-Gottesman method. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.AGSynth ### run - + Run synthesis for the given Clifford. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.BMSynthesisClifford.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.BMSynthesisClifford.mdx index 626755bd906..a99464ad6d7 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.BMSynthesisClifford.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.BMSynthesisClifford.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.BMSynth # BMSynthesisClifford - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") Clifford synthesis plugin based on the Bravyi-Maslov method. @@ -21,7 +21,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.BMSynth ### run - + Run synthesis for the given Clifford. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.BasicSynthesisPermutation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.BasicSynthesisPermutation.mdx index 35b08e4bcec..9d1abbdb43e 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.BasicSynthesisPermutation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.BasicSynthesisPermutation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.BasicSy # BasicSynthesisPermutation - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") The permutation synthesis plugin based on sorting. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.BasicSy ### run - + Run synthesis for the given Permutation. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.DefaultSynthesisClifford.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.DefaultSynthesisClifford.mdx index ee101ce09a7..68604a56ff6 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.DefaultSynthesisClifford.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.DefaultSynthesisClifford.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.Default # DefaultSynthesisClifford - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") The default clifford synthesis plugin. @@ -21,7 +21,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.Default ### run - + Run synthesis for the given Clifford. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.DefaultSynthesisLinearFunction.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.DefaultSynthesisLinearFunction.mdx index aa411f6a8c1..8b073c24318 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.DefaultSynthesisLinearFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.DefaultSynthesisLinearFunction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.Default # DefaultSynthesisLinearFunction - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") The default linear function synthesis plugin. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.Default ### run - + Run synthesis for the given LinearFunction. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.GreedySynthesisClifford.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.GreedySynthesisClifford.mdx index f4167d20215..59c9f39a427 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.GreedySynthesisClifford.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.GreedySynthesisClifford.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.GreedyS # GreedySynthesisClifford - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") Clifford synthesis plugin based on the greedy synthesis Bravyi-Hu-Maslov-Shaydulin method. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.GreedyS ### run - + Run synthesis for the given Clifford. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynthesisLinearFunction.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynthesisLinearFunction.mdx index 0723d94fa78..a1b4ba56e9f 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynthesisLinearFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynthesisLinearFunction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynt # KMSSynthesisLinearFunction - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") Linear function synthesis plugin based on the Kutin-Moulton-Smithline method. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynt ### run - + Run synthesis for the given LinearFunction. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynthesisPermutation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynthesisPermutation.mdx index cd82401e35c..e568c8c176e 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynthesisPermutation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynthesisPermutation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynt # KMSSynthesisPermutation - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") The permutation synthesis plugin based on the Kutin, Moulton, Smithline method. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.KMSSynt ### run - + Run synthesis for the given Permutation. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerLnnSynthesisClifford.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerLnnSynthesisClifford.mdx index 6ccce669dec..7d24e9b4577 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerLnnSynthesisClifford.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerLnnSynthesisClifford.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerLn # LayerLnnSynthesisClifford - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") Clifford synthesis plugin based on the Bravyi-Maslov method to synthesize Cliffords into layers, with each layer synthesized adhering to LNN connectivity. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerLn ### run - + Run synthesis for the given Clifford. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerSynthesisClifford.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerSynthesisClifford.mdx index 88ff1b561c9..25c6435e921 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerSynthesisClifford.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerSynthesisClifford.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerSy # LayerSynthesisClifford - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") Clifford synthesis plugin based on the Bravyi-Maslov method to synthesize Cliffords into layers. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.LayerSy ### run - + Run synthesis for the given Clifford. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.PMHSynthesisLinearFunction.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.PMHSynthesisLinearFunction.mdx index cdfeaeda4ab..47adb5680ad 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.PMHSynthesisLinearFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.PMHSynthesisLinearFunction.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.PMHSynt # PMHSynthesisLinearFunction - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") Linear function synthesis plugin based on the Patel-Markov-Hayes method. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.PMHSynt ### run - + Run synthesis for the given LinearFunction. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.TokenSwapperSynthesisPermutation.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.TokenSwapperSynthesisPermutation.mdx index 6ff1bde1fb9..4ea2da04445 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.TokenSwapperSynthesisPermutation.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.high_level_synthesis.TokenSwapperSynthesisPermutation.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.TokenSw # TokenSwapperSynthesisPermutation - + Bases: [`HighLevelSynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin") The permutation synthesis plugin based on the token swapper algorithm. @@ -33,7 +33,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.high_level_synthesis.TokenSw ### run - + Run synthesis for the given Permutation. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin.mdx index 897a652f0ec..e0b684b7285 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlugin.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlu # HighLevelSynthesisPlugin - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Abstract high-level synthesis plugin class. @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlu ### run - + Run synthesis for the given Operation. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPluginManager.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPluginManager.mdx index a48d492f39e..419f74629d1 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPluginManager.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPluginManager.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlu # HighLevelSynthesisPluginManager - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Class tracking the installed high-level-synthesis plugins. @@ -17,13 +17,13 @@ python_api_name: qiskit.transpiler.passes.synthesis.plugin.HighLevelSynthesisPlu ### method - + Returns the plugin for `op_name` and `method_name`. ### method\_names - + Returns plugin methods for op\_name. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin.mdx index f5052fcb5a2..b3d795923db 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugi # UnitarySynthesisPlugin - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") Abstract unitary synthesis plugin class @@ -176,7 +176,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugi ### run - + Run synthesis for the given unitary matrix **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPluginManager.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPluginManager.mdx index 5d3fa8037c8..6faf38d2005 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPluginManager.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPluginManager.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugi # UnitarySynthesisPluginManager - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Unitary Synthesis plugin manager class diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.high_level_synthesis_plugin_names.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.high_level_synthesis_plugin_names.mdx index 15912d286c2..c8acdd2caa2 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.high_level_synthesis_plugin_names.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.high_level_synthesis_plugin_names.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.plugin.high_level_synthesis_ # qiskit.transpiler.passes.synthesis.plugin.high\_level\_synthesis\_plugin\_names - + Return a list of plugin names installed for a given high level object name **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.unitary_synthesis_plugin_names.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.unitary_synthesis_plugin_names.mdx index 41ccd71b59d..e8805ebfb15 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.unitary_synthesis_plugin_names.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.plugin.unitary_synthesis_plugin_names.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.plugin.unitary_synthesis_plu # qiskit.transpiler.passes.synthesis.plugin.unitary\_synthesis\_plugin\_names - + Return a list of installed unitary synthesis plugin names **Returns** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.solovay_kitaev_synthesis.SolovayKitaevSynthesis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.solovay_kitaev_synthesis.SolovayKitaevSynthesis.mdx index fdddf1865f9..587763e9537 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.solovay_kitaev_synthesis.SolovayKitaevSynthesis.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.solovay_kitaev_synthesis.SolovayKitaevSynthesis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.solovay_kitaev_synthesis.Sol # SolovayKitaevSynthesis - + Bases: [`UnitarySynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin") A Solovay-Kitaev Qiskit unitary synthesis plugin. @@ -149,7 +149,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.solovay_kitaev_synthesis.Sol ### run - + Run synthesis for the given unitary matrix **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.unitary_synthesis.DefaultUnitarySynthesis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.unitary_synthesis.DefaultUnitarySynthesis.mdx index bc4b5a1d941..5e51afc3f2e 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.unitary_synthesis.DefaultUnitarySynthesis.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.synthesis.unitary_synthesis.DefaultUnitarySynthesis.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.unitary_synthesis.DefaultUni # DefaultUnitarySynthesis - + Bases: [`UnitarySynthesisPlugin`](qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin "qiskit.transpiler.passes.synthesis.plugin.UnitarySynthesisPlugin") The default unitary synthesis plugin. @@ -67,7 +67,7 @@ python_api_name: qiskit.transpiler.passes.synthesis.unitary_synthesis.DefaultUni ### run - + Run synthesis for the given unitary matrix **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePlugin.mdx b/docs/api/qiskit/dev/qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePlugin.mdx index 791dc52de80..47cdf805efd 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePlugin.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePlugin.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePl # PassManagerStagePlugin - + Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.12)") A `PassManagerStagePlugin` is a plugin interface object for using custom stages in [`transpile()`](compiler#qiskit.compiler.transpile "qiskit.compiler.transpile"). @@ -19,7 +19,7 @@ python_api_name: qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePl ### pass\_manager - + This method is designed to return a [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") for the stage this implements **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePluginManager.mdx b/docs/api/qiskit/dev/qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePluginManager.mdx index 86ae70e6898..49a2c06ed55 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePluginManager.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePluginManager.mdx @@ -8,7 +8,7 @@ python_api_name: qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePl # PassManagerStagePluginManager - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.12)") Manager class for preset pass manager stage plugins. @@ -17,7 +17,7 @@ python_api_name: qiskit.transpiler.preset_passmanagers.plugin.PassManagerStagePl ### get\_passmanager\_stage - + Get a stage **Return type** diff --git a/docs/api/qiskit/dev/qiskit.visualization.array_to_latex.mdx b/docs/api/qiskit/dev/qiskit.visualization.array_to_latex.mdx index caedaecc30a..bdb24acbdfa 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.array_to_latex.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.array_to_latex.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.array_to_latex # qiskit.visualization.array\_to\_latex - + Latex representation of a complex numpy array (with dimension 1 or 2) **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.visualization.circuit_drawer.mdx b/docs/api/qiskit/dev/qiskit.visualization.circuit_drawer.mdx index a34635da504..90aa76e9574 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.circuit_drawer.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.circuit_drawer.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.circuit_drawer # qiskit.visualization.circuit\_drawer - + Draw the quantum circuit. Use the output parameter to choose the drawing format: **text**: ASCII art TextDrawing that can be printed in the console. diff --git a/docs/api/qiskit/dev/qiskit.visualization.dag_drawer.mdx b/docs/api/qiskit/dev/qiskit.visualization.dag_drawer.mdx index 3faac515c15..0eb11cb87ce 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.dag_drawer.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.dag_drawer.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.dag_drawer # qiskit.visualization.dag\_drawer - + Plot the directed acyclic graph (dag) to represent operation dependencies in a quantum circuit. This function calls the [`graphviz_draw()`](https://www.rustworkx.org/apiref/rustworkx.visualization.graphviz_draw.html#rustworkx.visualization.graphviz_draw "(in rustworkx v0.14)") function from the `rustworkx` package to draw the DAG. diff --git a/docs/api/qiskit/dev/qiskit.visualization.pass_manager_drawer.mdx b/docs/api/qiskit/dev/qiskit.visualization.pass_manager_drawer.mdx index 313e22e7bbb..55efc4dde20 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.pass_manager_drawer.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.pass_manager_drawer.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.pass_manager_drawer # qiskit.visualization.pass\_manager\_drawer - + Draws the pass manager. This function needs [pydot](https://github.com/pydot/pydot), which in turn needs [Graphviz](https://www.graphviz.org/) to be installed. diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_bloch_multivector.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_bloch_multivector.mdx index 56f017068c3..cebfc8586ec 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_bloch_multivector.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_bloch_multivector.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_bloch_multivector # qiskit.visualization.plot\_bloch\_multivector - + Plot a Bloch sphere for each qubit. Each component $(x,y,z)$ of the Bloch sphere labeled as ‘qubit i’ represents the expected value of the corresponding Pauli operator acting only on that qubit, that is, the expected value of $I_{N-1} \otimes\dotsb\otimes I_{i+1}\otimes P_i \otimes I_{i-1}\otimes\dotsb\otimes I_0$, where $N$ is the number of qubits, $P\in \{X,Y,Z\}$ and $I$ is the identity operator. @@ -31,7 +31,7 @@ python_api_name: qiskit.visualization.plot_bloch_multivector **Return type** - [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.3)") + [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.4)") **Raises** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_bloch_vector.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_bloch_vector.mdx index 44466e8069b..c8c66c9acf7 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_bloch_vector.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_bloch_vector.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_bloch_vector # qiskit.visualization.plot\_bloch\_vector - + Plot the Bloch sphere. Plot a Bloch sphere with the specified coordinates, that can be given in both cartesian and spherical systems. @@ -19,7 +19,7 @@ python_api_name: qiskit.visualization.plot_bloch_vector * **bloch** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")*\[double]*) – array of three elements where \[\, \, \] (Cartesian) or \[\, \, \] (spherical in radians) \ is inclination angle from +z direction \ is azimuth from +x direction * **title** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – a string that represents the plot title - * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.3)")) – An Axes to use for rendering the bloch sphere + * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.4)")) – An Axes to use for rendering the bloch sphere * **figsize** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")) – Figure size in inches. Has no effect is passing `ax`. * **coord\_type** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – a string that specifies coordinate type for bloch (Cartesian or spherical), default is Cartesian * **font\_size** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – Font size. @@ -30,7 +30,7 @@ python_api_name: qiskit.visualization.plot_bloch_vector **Return type** - [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.3)") + [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.4)") **Raises** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_circuit_layout.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_circuit_layout.mdx index d5f6ade50ca..a1b1a5a01c2 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_circuit_layout.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_circuit_layout.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_circuit_layout # qiskit.visualization.plot\_circuit\_layout - + Plot the layout of a circuit transpiled for a given target backend. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_coupling_map.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_coupling_map.mdx index 4253a1d7d20..822b462e2e8 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_coupling_map.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_coupling_map.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_coupling_map # qiskit.visualization.plot\_coupling\_map - + Plots an arbitrary coupling map of qubits (embedded in a plane). **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_distribution.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_distribution.mdx index 4d5edcec034..c4faa73b73b 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_distribution.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_distribution.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_distribution # qiskit.visualization.plot\_distribution - + Plot a distribution from input sampled data. **Parameters** @@ -24,7 +24,7 @@ python_api_name: qiskit.visualization.plot_distribution * **legend** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")) – A list of strings to use for labels of the data. The number of entries must match the length of data (if data is a list or 1 if it’s a dict) * **bar\_labels** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – Label each bar in histogram with probability value. * **title** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – A string to use for the plot title - * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.3)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. Additionally, if specified there will be no returned Figure since it is redundant. + * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.4)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. Additionally, if specified there will be no returned Figure since it is redundant. * **filename** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – file path to save image to. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_error_map.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_error_map.mdx index e34f08c611a..4e6cbd26fc7 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_error_map.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_error_map.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_error_map # qiskit.visualization.plot\_error\_map - + Plots the error map of a given backend. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_gate_map.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_gate_map.mdx index b6bdc4e9b49..f6fb6614e8b 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_gate_map.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_gate_map.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_gate_map # qiskit.visualization.plot\_gate\_map - + Plots the gate map of a device. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_histogram.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_histogram.mdx index 04265acad91..54048a47c4b 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_histogram.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_histogram.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_histogram # qiskit.visualization.plot\_histogram - + Plot a histogram of input counts data. **Parameters** @@ -24,7 +24,7 @@ python_api_name: qiskit.visualization.plot_histogram * **legend** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")) – A list of strings to use for labels of the data. The number of entries must match the length of data (if data is a list or 1 if it’s a dict) * **bar\_labels** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – Label each bar in histogram with counts value. * **title** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – A string to use for the plot title - * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.3)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. Additionally, if specified there will be no returned Figure since it is redundant. + * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.4)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. Additionally, if specified there will be no returned Figure since it is redundant. * **filename** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – file path to save image to. **Returns** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_state_city.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_state_city.mdx index b2ee0620d56..94b6dcfcb84 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_state_city.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_state_city.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_state_city # qiskit.visualization.plot\_state\_city - + Plot the cityscape of quantum state. Plot two 3d bar graphs (two dimensional) of the real and imaginary part of the density matrix rho. @@ -22,8 +22,8 @@ python_api_name: qiskit.visualization.plot_state_city * **figsize** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")) – Figure size in inches. * **color** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)")) – A list of len=2 giving colors for real and imaginary components of matrix elements. * **alpha** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – Transparency value for bars - * **ax\_real** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.3)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_imag only the real component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant. - * **ax\_imag** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.3)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_real only the imaginary component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant. + * **ax\_real** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.4)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_imag only the real component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant. + * **ax\_imag** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.4)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_real only the imaginary component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant. **Returns** @@ -31,7 +31,7 @@ python_api_name: qiskit.visualization.plot_state_city **Return type** - [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.3)") + [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.4)") **Raises** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_state_hinton.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_state_hinton.mdx index c18f82bc42c..df55cdb1943 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_state_hinton.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_state_hinton.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_state_hinton # qiskit.visualization.plot\_state\_hinton - + Plot a hinton diagram for the density matrix of a quantum state. The hinton diagram represents the values of a matrix using squares, whose size indicate the magnitude of their corresponding value and their color, its sign. A white square means the value is positive and a black one means negative. @@ -21,8 +21,8 @@ python_api_name: qiskit.visualization.plot_state_hinton * **title** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – a string that represents the plot title * **figsize** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")) – Figure size in inches. * **filename** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – file path to save image to. - * **ax\_real** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.3)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_imag only the real component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant. - * **ax\_imag** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.3)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_imag only the real component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant. + * **ax\_real** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.4)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_imag only the real component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant. + * **ax\_imag** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.4)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_imag only the real component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant. **Returns** @@ -30,7 +30,7 @@ python_api_name: qiskit.visualization.plot_state_hinton **Return type** - [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.3)") + [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.4)") **Raises** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_state_paulivec.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_state_paulivec.mdx index 0613272f0ec..554c66dd802 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_state_paulivec.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_state_paulivec.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.plot_state_paulivec # qiskit.visualization.plot\_state\_paulivec - + Plot the Pauli-vector representation of a quantum state as bar graph. The Pauli-vector of a density matrix $\rho$ is defined by the expectation of each possible tensor product of single-qubit Pauli operators (including the identity), that is @@ -28,7 +28,7 @@ $$ * **title** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – a string that represents the plot title * **figsize** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")) – Figure size in inches. * **color** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.12)") *or*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – Color of the coefficient value bars. - * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.3)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. Additionally, if specified there will be no returned Figure since it is redundant. + * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.4)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. Additionally, if specified there will be no returned Figure since it is redundant. **Returns** @@ -36,7 +36,7 @@ $$ **Return type** - [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.3)") + [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.4)") **Raises** diff --git a/docs/api/qiskit/dev/qiskit.visualization.plot_state_qsphere.mdx b/docs/api/qiskit/dev/qiskit.visualization.plot_state_qsphere.mdx index 72d7d98d958..cd71ecf3537 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.plot_state_qsphere.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.plot_state_qsphere.mdx @@ -10,14 +10,14 @@ python_api_name: qiskit.visualization.plot_state_qsphere # qiskit.visualization.plot\_state\_qsphere - + Plot the qsphere representation of a quantum state. Here, the size of the points is proportional to the probability of the corresponding term in the state and the color represents the phase. **Parameters** * **state** ([*Statevector*](qiskit.quantum_info.Statevector "qiskit.quantum_info.Statevector") *or*[*DensityMatrix*](qiskit.quantum_info.DensityMatrix "qiskit.quantum_info.DensityMatrix") *or ndarray*) – an N-qubit quantum state. * **figsize** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")) – Figure size in inches. - * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.3)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. Additionally, if specified there will be no returned Figure since it is redundant. + * **ax** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.8.4)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. Additionally, if specified there will be no returned Figure since it is redundant. * **show\_state\_labels** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – An optional boolean indicating whether to show labels for each basis state. * **show\_state\_phases** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – An optional boolean indicating whether to show the phase for each basis state. * **use\_degrees** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")) – An optional boolean indicating whether to use radians or degrees for the phase values in the plot. @@ -28,7 +28,7 @@ python_api_name: qiskit.visualization.plot_state_qsphere **Return type** - [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.3)") + [`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/figure_api.html#matplotlib.figure.Figure "(in Matplotlib v3.8.4)") **Raises** diff --git a/docs/api/qiskit/dev/qiskit.visualization.timeline_drawer.mdx b/docs/api/qiskit/dev/qiskit.visualization.timeline_drawer.mdx index c614ab6cb17..4f7a9d26bd8 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.timeline_drawer.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.timeline_drawer.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.timeline_drawer # qiskit.visualization.timeline\_drawer - + Generate visualization data for scheduled circuit programs. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.visualization.visualize_transition.mdx b/docs/api/qiskit/dev/qiskit.visualization.visualize_transition.mdx index 80038bee320..e1e2a5b49c5 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.visualize_transition.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.visualize_transition.mdx @@ -10,7 +10,7 @@ python_api_name: qiskit.visualization.visualize_transition # qiskit.visualization.visualize\_transition - + Creates animation showing transitions between states of a single qubit by applying quantum gates. **Parameters** diff --git a/docs/api/qiskit/dev/qpy.mdx b/docs/api/qiskit/dev/qpy.mdx index c892834e7bf..d77cb82915c 100644 --- a/docs/api/qiskit/dev/qpy.mdx +++ b/docs/api/qiskit/dev/qpy.mdx @@ -57,7 +57,7 @@ and then loading that file will return a list with all the circuits ### load - + Load a QPY binary file This function is used to load a serialized QPY Qiskit program file and create [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") objects or [`ScheduleBlock`](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock") objects from its contents. For example: @@ -102,7 +102,7 @@ and then loading that file will return a list with all the circuits ### dump - + Write QPY binary data to a file This function is used to save a circuit to a file for later use or transfer between machines. The QPY format is backwards compatible and can be loaded with future versions of Qiskit. @@ -166,7 +166,7 @@ These functions will raise a custom subclass of [`QiskitError`](exceptions#qiski ### QpyError - + Errors raised by the qpy module. Set the error message. @@ -202,7 +202,7 @@ If a feature being loaded is deprecated in the corresponding qiskit release, QPY ### QPYLoadingDeprecatedFeatureWarning - + Visible deprecation warning for QPY loading functions without a stable point in the call stack. @@ -249,7 +249,7 @@ There is a circuit payload for each circuit (where the total number is dictated ### Version 11 -Version 11 is identical to Version 10 except for the following. First, the names in the CUSTOM\_INSTRUCTION blocks have a suffix of the form `"_{uuid_hex}"` where `uuid_hex` is a uuid hexadecimal string such as returned by `UUID.hex`. For example: `"b3ecab5b4d6a4eb6bc2b2dbf18d83e1e"`. Second, it adds support for `AnnotatedOperation` objects. The base operation of an annotated operation is stored using the INSTRUCTION block, and an additional `type` value `'a'``is added to indicate that the custom instruction is an annotated operation. The list of modifiers are stored as instruction parameters using INSTRUCTION_PARAM, with an additional value ``'m'` is added to indicate that the parameter is of type `Modifier`. Each modifier is stored using the MODIFIER struct. +Version 11 is identical to Version 10 except for the following. First, the names in the CUSTOM\_INSTRUCTION blocks have a suffix of the form `"_{uuid_hex}"` where `uuid_hex` is a uuid hexadecimal string such as returned by `UUID.hex`. For example: `"b3ecab5b4d6a4eb6bc2b2dbf18d83e1e"`. Second, it adds support for [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation") objects. The base operation of an annotated operation is stored using the INSTRUCTION block, and an additional `type` value `'a'``is added to indicate that the custom instruction is an annotated operation. The list of modifiers are stored as instruction parameters using INSTRUCTION_PARAM, with an additional value ``'m'` is added to indicate that the parameter is of type `Modifier`. Each modifier is stored using the MODIFIER struct. @@ -266,7 +266,7 @@ struct { } ``` -This is sufficient to store different types of modifiers required for serializing objects of type `AnnotatedOperation`. The field `type` is either `'i'`, `'c'` or `'p'`, representing whether the modifier is respectively an inverse modifier, a control modifier or a power modifier. In the second case, the fields `num_ctrl_qubits` and `ctrl_state` specify the control logic of the base operation, and in the third case the field `power` represents the power of the base operation. +This is sufficient to store different types of modifiers required for serializing objects of type [`AnnotatedOperation`](qiskit.circuit.AnnotatedOperation "qiskit.circuit.AnnotatedOperation"). The field `type` is either `'i'`, `'c'` or `'p'`, representing whether the modifier is respectively an inverse modifier, a control modifier or a power modifier. In the second case, the fields `num_ctrl_qubits` and `ctrl_state` specify the control logic of the base operation, and in the third case the field `power` represents the power of the base operation. @@ -352,10 +352,10 @@ A [`Type`](circuit_classical#qiskit.circuit.classical.types.Type "qiskit.circuit This represents a runtime variable of a [`Var`](circuit_classical#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node. These are a type code, followed by a type-code-specific payload: -| Python class | Type code | Payload | -| ------------------------------------------------------------------------------------------ | --------- | ------------------------------------------------------------------------------------------------------------------------------- | -| [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") | `C` | One `uint32_t index` that is the index of the [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") in the containing circuit. | -| [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") | `R` | One `uint16_t reg_name_size`, followed by that many bytes of UTF-8 string data of the register name. | +| Python class | Type code | Payload | +| -------------------------------------------------------------------------------------------------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------- | +| [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") | `C` | One `uint32_t index` that is the index of the [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") in the containing circuit. | +| [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") | `R` | One `uint16_t reg_name_size`, followed by that many bytes of UTF-8 string data of the register name. | @@ -392,7 +392,7 @@ where the only change is that a `uint8_t conditional_key` entry has replaced `_B | Value | Effects | | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 0 | The instruction has its `.condition` field set to `None`. The `conditional_reg_name_size` and `conditional_value` fields should be ignored. | -| 1 | The instruction has its `.condition` field set to a 2-tuple of either a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or a [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"), and a integer of value `conditional_value`. The INSTRUCTION payload, including its trailing data is parsed exactly as it would be in QPY versions less than 8. | +| 1 | The instruction has its `.condition` field set to a 2-tuple of either a [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") or a [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister"), and a integer of value `conditional_value`. The INSTRUCTION payload, including its trailing data is parsed exactly as it would be in QPY versions less than 8. | | 2 | The instruction has its `.condition` field set to a [`Expr`](circuit_classical#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") node. The `conditional_reg_name_size` and `conditional_value` fields should be ignored. The data following the struct is followed (as in QPY versions less than 8) by `name_size` bytes of UTF-8 string data for the class name and `label_size` bytes of UTF-8 string data for the label (if any). Then, there is one INSTRUCTION\_PARAM, which will contain an EXPRESSION. After that, parsing continues with the INSTRUCTION\_ARG structs, as in previous versions of QPY. | @@ -473,7 +473,7 @@ New type key character is added to the [SCHEDULE\_BLOCK\_OPERANDS](#qpy-schedule Note that this is the same encoding with the built-in Python string, however, the standard value encoding in QPY uses `s` type character for string data, which conflicts with the [`SymbolicPulse`](qiskit.pulse.library.SymbolicPulse "qiskit.pulse.library.SymbolicPulse") in the scope of pulse instruction operands. A special type character `o` is reserved for the string data that appears in the pulse instruction operands. -In addition, version 7 adds two new type keys to the INSTRUCTION\_PARM struct. `"d"` is followed by no data and represents the literal value [`CASE_DEFAULT`](circuit#qiskit.circuit.CASE_DEFAULT "qiskit.circuit.CASE_DEFAULT") for switch-statement support. `"R"` represents a [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") or [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit"), and is followed by the same format as the description of register or classical bit as used in the first element of [the condition of an INSTRUCTION field](#qpy-instructions). +In addition, version 7 adds two new type keys to the INSTRUCTION\_PARM struct. `"d"` is followed by no data and represents the literal value [`CASE_DEFAULT`](circuit#qiskit.circuit.CASE_DEFAULT "qiskit.circuit.CASE_DEFAULT") for switch-statement support. `"R"` represents a [`ClassicalRegister`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") or [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit"), and is followed by the same format as the description of register or classical bit as used in the first element of [the condition of an INSTRUCTION field](#qpy-instructions). diff --git a/docs/api/qiskit/dev/quantum_info.mdx b/docs/api/qiskit/dev/quantum_info.mdx index 533dc6d225d..4d1d98b1eb1 100644 --- a/docs/api/qiskit/dev/quantum_info.mdx +++ b/docs/api/qiskit/dev/quantum_info.mdx @@ -58,7 +58,7 @@ python_api_name: qiskit.quantum_info ### average\_gate\_fidelity - + Return the average gate fidelity of a noisy quantum channel. The average gate fidelity $F_{\text{ave}}$ is given by @@ -98,7 +98,7 @@ $$ ### process\_fidelity - + Return the process fidelity of a noisy quantum channel. The process fidelity $F_{\text{pro}}(\mathcal{E}, \mathcal{F})$ between two quantum channels $\mathcal{E}, \mathcal{F}$ is given by @@ -145,7 +145,7 @@ $$ ### gate\_error - + Return the gate error of a noisy quantum channel. The gate error $E$ is given by the average gate infidelity @@ -180,7 +180,7 @@ $$ ### diamond\_norm - + Return the diamond norm of the input quantum channel object. This function computes the completely-bounded trace-norm (often referred to as the diamond-norm) of the input quantum channel object using the semidefinite-program from reference \[1]. @@ -218,7 +218,7 @@ $$ ### state\_fidelity - + Return the state fidelity between two quantum states. The state fidelity $F$ for density matrix input states $\rho_1, \rho_2$ is given by @@ -252,7 +252,7 @@ $$ ### purity - + Calculate the purity of a quantum state. The purity of a density matrix $\rho$ is @@ -281,7 +281,7 @@ $$ ### concurrence - + Calculate the concurrence of a quantum state. The concurrence of a bipartite [`Statevector`](qiskit.quantum_info.Statevector "qiskit.quantum_info.Statevector") $|\psi\rangle$ is given by @@ -321,7 +321,7 @@ $$ ### entropy - + Calculate the von-Neumann entropy of a quantum state. The entropy $S$ is given by @@ -350,7 +350,7 @@ $$ ### entanglement\_of\_formation - + Calculate the entanglement of formation of quantum state. The input quantum state must be either a bipartite state vector, or a 2-qubit density matrix. @@ -376,7 +376,7 @@ $$ ### mutual\_information - + Calculate the mutual information of a bipartite state. The mutual information $I$ is given by: @@ -414,7 +414,7 @@ $$ ### partial\_trace - + Return reduced density matrix by tracing out part of quantum state. If all subsystems are traced over this returns the [`trace()`](qiskit.quantum_info.DensityMatrix#trace "qiskit.quantum_info.DensityMatrix.trace") of the input state. @@ -439,7 +439,7 @@ $$ ### schmidt\_decomposition - + Return the Schmidt Decomposition of a pure quantum state. For an arbitrary bipartite state: @@ -487,7 +487,7 @@ $$ ### shannon\_entropy - + Compute the Shannon entropy of a probability vector. The shannon entropy of a probability vector $\vec{p} = [p_0, ..., p_{n-1}]$ is defined as @@ -514,7 +514,7 @@ $$ ### commutator - + Compute commutator of a and b. $$ @@ -537,7 +537,7 @@ $$ ### anti\_commutator - + Compute anti-commutator of a and b. $$ @@ -560,7 +560,7 @@ $$ ### double\_commutator - + Compute symmetric double commutator of a, b and c. See also Equation (13.6.18) in \[1]. @@ -607,7 +607,7 @@ $$ ### random\_statevector - + Generator a random Statevector. The statevector is sampled from the uniform distribution. This is the measure induced by the Haar measure on unitary matrices. @@ -632,7 +632,7 @@ $$ ### random\_density\_matrix - + Generator a random DensityMatrix. **Parameters** @@ -657,7 +657,7 @@ $$ ### random\_unitary - + Return a random unitary Operator. The operator is sampled from the unitary Haar measure. @@ -678,7 +678,7 @@ $$ ### random\_hermitian - + Return a random hermitian Operator. The operator is sampled from Gaussian Unitary Ensemble. @@ -700,7 +700,7 @@ $$ ### random\_pauli - + Return a random Pauli. **Parameters** @@ -720,7 +720,7 @@ $$ ### random\_clifford - + Return a random Clifford operator. The Clifford is sampled using the method of Reference \[1]. @@ -745,7 +745,7 @@ $$ ### random\_quantum\_channel - + Return a random CPTP quantum channel. This constructs the Stinespring operator for the quantum channel by sampling a random isometry from the unitary Haar measure. @@ -772,7 +772,7 @@ $$ ### random\_cnotdihedral - + Return a random CNOTDihedral element. **Parameters** @@ -791,7 +791,7 @@ $$ ### random\_pauli\_list - + Return a random PauliList. **Parameters** @@ -814,7 +814,7 @@ $$ ### hellinger\_distance - + Computes the Hellinger distance between two counts distributions. **Parameters** @@ -837,7 +837,7 @@ $$ ### hellinger\_fidelity - + Computes the Hellinger fidelity between two counts distributions. The fidelity is defined as $\left(1-H^{2}\right)^{2}$ where H is the Hellinger distance. This value is bounded in the range \[0, 1]. diff --git a/docs/api/qiskit/dev/result.mdx b/docs/api/qiskit/dev/result.mdx index ad8ceef0dc4..60d65177a1c 100644 --- a/docs/api/qiskit/dev/result.mdx +++ b/docs/api/qiskit/dev/result.mdx @@ -26,7 +26,7 @@ python_api_name: qiskit.result ### marginal\_counts - + Marginalize counts from an experiment over some indices of interest. **Parameters** @@ -54,7 +54,7 @@ python_api_name: qiskit.result ### marginal\_distribution - + Marginalize counts from an experiment over some indices of interest. Unlike [`marginal_counts()`](#qiskit.result.marginal_counts "qiskit.result.marginal_counts") this function respects the order of the input `indices`. If the input `indices` list is specified then the order the bit indices are specified will be the output order of the bitstrings in the marginalized output. @@ -81,7 +81,7 @@ python_api_name: qiskit.result ### marginal\_memory - + Marginalize shot memory This function is multithreaded and will launch a thread pool with threads equal to the number of CPUs by default. You can tune the number of threads with the `RAYON_NUM_THREADS` environment variable. For example, setting `RAYON_NUM_THREADS=4` would limit the thread pool to 4 threads. @@ -119,7 +119,7 @@ python_api_name: qiskit.result ### sampled\_expectation\_value - + Computes expectation value from a sampled distribution Note that passing a raw dict requires bit-string keys. diff --git a/docs/api/qiskit/dev/scheduler.mdx b/docs/api/qiskit/dev/scheduler.mdx index c650e87b87f..b66ad7d1d15 100644 --- a/docs/api/qiskit/dev/scheduler.mdx +++ b/docs/api/qiskit/dev/scheduler.mdx @@ -20,7 +20,7 @@ python_api_name: qiskit.scheduler A circuit scheduler compiles a circuit program to a pulse program. - + Configuration for pulse scheduling. Container for information needed to schedule a QuantumCircuit into a pulse Schedule. @@ -34,7 +34,7 @@ A circuit scheduler compiles a circuit program to a pulse program. ### schedule\_circuit - + Basic scheduling pass from a circuit to a pulse Schedule, using the backend. If no method is specified, then a basic, as late as possible scheduling pass is performed, i.e. pulses are scheduled to occur as late as possible. Supported methods: @@ -68,7 +68,7 @@ Pulse scheduling methods. ### as\_soon\_as\_possible - + Return the pulse Schedule which implements the input circuit using an “as soon as possible” (asap) scheduling policy. Circuit instructions are first each mapped to equivalent pulse Schedules according to the command definition given by the schedule\_config. Then, this circuit instruction-equivalent Schedule is appended at the earliest time at which all qubits involved in the instruction are available. @@ -90,7 +90,7 @@ Pulse scheduling methods. ### as\_late\_as\_possible - + Return the pulse Schedule which implements the input circuit using an “as late as possible” (alap) scheduling policy. Circuit instructions are first each mapped to equivalent pulse Schedules according to the command definition given by the schedule\_config. Then, this circuit instruction-equivalent Schedule is appended at the latest time that it can be without allowing unnecessary time between instructions or allowing instructions with common qubits to overlap. diff --git a/docs/api/qiskit/dev/synthesis.mdx b/docs/api/qiskit/dev/synthesis.mdx index 1b8f08d887b..16a6ec5cdb1 100644 --- a/docs/api/qiskit/dev/synthesis.mdx +++ b/docs/api/qiskit/dev/synthesis.mdx @@ -35,7 +35,7 @@ python_api_name: qiskit.synthesis ### synth\_cnot\_count\_full\_pmh - + Synthesize linear reversible circuits for all-to-all architecture using Patel, Markov and Hayes method. This function is an implementation of the Patel, Markov and Hayes algorithm from \[1] for optimal synthesis of linear reversible circuits for all-to-all architecture, as specified by an $n \times n$ matrix. @@ -64,7 +64,7 @@ python_api_name: qiskit.synthesis ### synth\_cnot\_depth\_line\_kms - + Synthesize linear reversible circuit for linear nearest-neighbor architectures using Kutin, Moulton, Smithline method. Synthesis algorithm for linear reversible circuits from \[1], section 7. This algorithm synthesizes any linear reversible circuit of $n$ qubits over a linear nearest-neighbor architecture using CX gates with depth at most $5n$. @@ -94,7 +94,7 @@ python_api_name: qiskit.synthesis ### synth\_cz\_depth\_line\_mr - + Synthesis of a CZ circuit for linear nearest neighbour (LNN) connectivity, based on Maslov and Roetteler. Note that this method *reverts* the order of qubits in the circuit, and returns a circuit containing [`CXGate`](qiskit.circuit.library.CXGate "qiskit.circuit.library.CXGate")s and phase gates ([`SGate`](qiskit.circuit.library.SGate "qiskit.circuit.library.SGate"), [`SdgGate`](qiskit.circuit.library.SdgGate "qiskit.circuit.library.SdgGate") or [`ZGate`](qiskit.circuit.library.ZGate "qiskit.circuit.library.ZGate")). @@ -118,7 +118,7 @@ python_api_name: qiskit.synthesis ### synth\_cx\_cz\_depth\_line\_my - + Joint synthesis of a -CZ-CX- circuit for linear nearest neighbour (LNN) connectivity, with 2-qubit depth at most 5n, based on Maslov and Yang. This method computes the CZ circuit inside the CX circuit via phase gate insertions. **Parameters** @@ -142,7 +142,7 @@ python_api_name: qiskit.synthesis ### synth\_cnot\_phase\_aam - + This function is an implementation of the GraySynth algorithm of Amy, Azimadeh and Mosca. GraySynth is a heuristic algorithm from \[1] for synthesizing small parity networks. It is inspired by Gray codes. Given a set of binary strings $S$ (called `cnots` bellow), the algorithm synthesizes a parity network for $S$ by repeatedly choosing an index $i$ to expand and then effectively recursing on the co-factors $S_0$ and $S_1$, consisting of the strings $y \in S$, with $y_i = 0$ or $1$ respectively. As a subset $S$ is recursively expanded, `cx` gates are applied so that a designated target bit contains the (partial) parity $\chi_y(x)$ where $y_i = 1$ if and only if $y'_i = 1$ for all $y' \in S$. If $S$ contains a single element $\{y'\}$, then $y = y'$, and the target bit contains the value $\chi_{y'}(x)$ as desired. @@ -195,7 +195,7 @@ python_api_name: qiskit.synthesis ### synth\_permutation\_depth\_lnn\_kms - + Synthesize a permutation circuit for a linear nearest-neighbor architecture using the Kutin, Moulton, Smithline method. This is the permutation synthesis algorithm from \[1], section 6. It synthesizes any permutation of n qubits over linear nearest-neighbor architecture using SWAP gates with depth at most $n$ and size at most $n(n-1)/2$ (where both depth and size are measured with respect to SWAPs). @@ -219,7 +219,7 @@ python_api_name: qiskit.synthesis ### synth\_permutation\_basic - + Synthesize a permutation circuit for a fully-connected architecture using sorting. More precisely, if the input permutation is a cycle of length `m`, then this creates a quantum circuit with `m-1` SWAPs (and of depth `m-1`); if the input permutation consists of several disjoint cycles, then each cycle is essentially treated independently. @@ -239,7 +239,7 @@ python_api_name: qiskit.synthesis ### synth\_permutation\_acg - + Synthesize a permutation circuit for a fully-connected architecture using the Alon, Chung, Graham method. This produces a quantum circuit of depth 2 (measured in the number of SWAPs). @@ -268,7 +268,7 @@ python_api_name: qiskit.synthesis ### synth\_clifford\_full - + Decompose a [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford") operator into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). For $N \leq 3$ qubits this is based on optimal CX-cost decomposition from reference \[1]. For $N > 3$ qubits this is done using the general non-optimal greedy compilation routine from reference \[3], which typically yields better CX cost compared to the AG method in \[2]. @@ -295,7 +295,7 @@ python_api_name: qiskit.synthesis ### synth\_clifford\_ag - + Decompose a [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford") operator into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") based on Aaronson-Gottesman method \[1]. **Parameters** @@ -317,7 +317,7 @@ python_api_name: qiskit.synthesis ### synth\_clifford\_bm - + Optimal CX-cost decomposition of a [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford") operator on 2 qubits or 3 qubits into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") based on the Bravyi-Maslov method \[1]. **Parameters** @@ -343,7 +343,7 @@ python_api_name: qiskit.synthesis ### synth\_clifford\_greedy - + Decompose a [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford") operator into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") based on the greedy Clifford compiler that is described in Appendix A of Bravyi, Hu, Maslov and Shaydulin \[1]. This method typically yields better CX cost compared to the Aaronson-Gottesman method. @@ -373,7 +373,7 @@ python_api_name: qiskit.synthesis ### synth\_clifford\_layers - + Synthesis of a [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford") into layers, it provides a similar decomposition to the synthesis described in Lemma 8 of Bravyi and Maslov \[1]. For example, a 5-qubit Clifford circuit is decomposed into the following layers: @@ -418,7 +418,7 @@ python_api_name: qiskit.synthesis ### synth\_clifford\_depth\_lnn - + Synthesis of a [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford") into layers for linear-nearest neighbour connectivity. The depth of the synthesized n-qubit circuit is bounded by $7n+2$, which is not optimal. It should be replaced by a better algorithm that provides depth bounded by $7n-4$ \[3]. @@ -446,7 +446,7 @@ python_api_name: qiskit.synthesis ### synth\_cnotdihedral\_full - + Decompose a [`CNOTDihedral`](qiskit.quantum_info.CNOTDihedral "qiskit.quantum_info.CNOTDihedral") element into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). For $N \leq 2$ qubits this is based on optimal CX-cost decomposition from reference \[1]. For $N > 2$ qubits this is done using the general non-optimal compilation routine from reference \[2]. @@ -471,7 +471,7 @@ python_api_name: qiskit.synthesis ### synth\_cnotdihedral\_two\_qubits - + Decompose a [`CNOTDihedral`](qiskit.quantum_info.CNOTDihedral "qiskit.quantum_info.CNOTDihedral") element on a single qubit and two qubits into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). This decomposition has an optimal number of [`CXGate`](qiskit.circuit.library.CXGate "qiskit.circuit.library.CXGate")s. **Parameters** @@ -497,7 +497,7 @@ python_api_name: qiskit.synthesis ### synth\_cnotdihedral\_general - + Decompose a [`CNOTDihedral`](qiskit.quantum_info.CNOTDihedral "qiskit.quantum_info.CNOTDihedral") element into a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). Decompose a general [`CNOTDihedral`](qiskit.quantum_info.CNOTDihedral "qiskit.quantum_info.CNOTDihedral") elements. The number of CX gates is not necessarily optimal. For a decomposition of a 1-qubit or 2-qubit element, call [`synth_cnotdihedral_two_qubits()`](#qiskit.synthesis.synth_cnotdihedral_two_qubits "qiskit.synthesis.synth_cnotdihedral_two_qubits"). @@ -527,7 +527,7 @@ python_api_name: qiskit.synthesis ### synth\_stabilizer\_layers - + Synthesis of a stabilizer state into layers. It provides a similar decomposition to the synthesis described in Lemma 8 of reference \[1], without the initial Hadamard-free sub-circuit which do not affect the stabilizer state. @@ -574,7 +574,7 @@ python_api_name: qiskit.synthesis ### synth\_stabilizer\_depth\_lnn - + Synthesis of an n-qubit stabilizer state for linear-nearest neighbour connectivity, in 2-qubit depth $2n+2$ and two distinct CX layers, using [`CXGate`](qiskit.circuit.library.CXGate "qiskit.circuit.library.CXGate")s and phase gates ([`SGate`](qiskit.circuit.library.SGate "qiskit.circuit.library.SGate"), [`SdgGate`](qiskit.circuit.library.SdgGate "qiskit.circuit.library.SdgGate") or [`ZGate`](qiskit.circuit.library.ZGate "qiskit.circuit.library.ZGate")). **Parameters** @@ -597,7 +597,7 @@ python_api_name: qiskit.synthesis ### synth\_circuit\_from\_stabilizers - + Synthesis of a circuit that generates a state stabilized by the stabilizers using Gaussian elimination with Clifford gates. If the stabilizers are underconstrained, and `allow_underconstrained` is `True`, the circuit will output one of the states stabilized by the stabilizers. Based on stim implementation. **Parameters** @@ -633,7 +633,7 @@ python_api_name: qiskit.synthesis ### generate\_basic\_approximations - + Generates a list of `GateSequence`s with the gates in `basis_gates`. **Parameters** @@ -659,7 +659,7 @@ python_api_name: qiskit.synthesis ### synth\_qft\_line - + Synthesis of a QFT circuit for a linear nearest neighbor connectivity. Based on Fig 2.b in Fowler et al. \[1]. Note that this method *reverts* the order of qubits in the circuit, compared to the original [`QFT`](qiskit.circuit.library.QFT "qiskit.circuit.library.QFT") code. Hence, the default value of the `do_swaps` parameter is `True` since it produces a circuit with fewer CX gates. @@ -689,7 +689,7 @@ Decomposition of general $2^n \times 2^n$ unitary matrices for any number of qub ### qs\_decomposition - + Decomposes a unitary matrix into one and two qubit gates using Quantum Shannon Decomposition, This decomposition is described in Shende et al. \[1]. @@ -755,11 +755,11 @@ The Approximate Quantum Compiler is available here: ## Two-Qubit Synthesis -| | | -| ------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [`TwoQubitBasisDecomposer`](qiskit.synthesis.TwoQubitBasisDecomposer "qiskit.synthesis.TwoQubitBasisDecomposer")(gate\[, ...]) | A class for decomposing 2-qubit unitaries into minimal number of uses of a 2-qubit basis gate. | -| [`XXDecomposer`](qiskit.synthesis.XXDecomposer "qiskit.synthesis.XXDecomposer")(\[basis\_fidelity, euler\_basis, ...]) | A class for optimal decomposition of 2-qubit unitaries into 2-qubit basis gates of `XX` type (i.e., each locally equivalent to $CAN(\alpha, 0, 0)$ for a possibly varying $alpha$). | -| [`TwoQubitWeylDecomposition`](qiskit.synthesis.TwoQubitWeylDecomposition "qiskit.synthesis.TwoQubitWeylDecomposition")(unitary\_matrix, \*) | Two-qubit Weyl decomposition. | +| | | +| ----------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [`TwoQubitBasisDecomposer`](qiskit.synthesis.TwoQubitBasisDecomposer "qiskit.synthesis.TwoQubitBasisDecomposer")(gate\[, ...]) | A class for decomposing 2-qubit unitaries into minimal number of uses of a 2-qubit basis gate. | +| [`XXDecomposer`](qiskit.synthesis.XXDecomposer "qiskit.synthesis.XXDecomposer")(\[basis\_fidelity, euler\_basis, ...]) | A class for optimal decomposition of 2-qubit unitaries into 2-qubit basis gates of `XX` type (i.e., each locally equivalent to $CAN(\alpha, 0, 0)$ for a possibly varying $alpha$). | +| [`TwoQubitWeylDecomposition`](qiskit.synthesis.TwoQubitWeylDecomposition "qiskit.synthesis.TwoQubitWeylDecomposition")(unitary\_matrix\[, ...]) | Two-qubit Weyl decomposition. | ### two\_qubit\_cnot\_decompose diff --git a/docs/api/qiskit/dev/transpiler.mdx b/docs/api/qiskit/dev/transpiler.mdx index 8219a33893a..d3da0f0c720 100644 --- a/docs/api/qiskit/dev/transpiler.mdx +++ b/docs/api/qiskit/dev/transpiler.mdx @@ -242,7 +242,7 @@ Instructions: Error Rate: 0.2 ``` -This [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") represents a 3 qubit backend that supports [`CXGate`](qiskit.circuit.library.CXGate "qiskit.circuit.library.CXGate") between qubits 0 and 1, [`UGate`](qiskit.circuit.library.UGate "qiskit.circuit.library.UGate") on qubits 0 and 1, [`RZGate`](qiskit.circuit.library.RZGate "qiskit.circuit.library.RZGate"), [`RXGate`](qiskit.circuit.library.RXGate "qiskit.circuit.library.RXGate"), and [`RYGate`](qiskit.circuit.library.RYGate "qiskit.circuit.library.RYGate") on qubits 1 and 2, [`CZGate`](qiskit.circuit.library.CZGate "qiskit.circuit.library.CZGate") between qubits 1 and 2, and qubits 2 and 0, and [`Measure`](qiskit.circuit.library.Measure "qiskit.circuit.library.Measure") on all qubits. +This [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") represents a 3 qubit backend that supports [`CXGate`](qiskit.circuit.library.CXGate "qiskit.circuit.library.CXGate") between qubits 0 and 1, [`UGate`](qiskit.circuit.library.UGate "qiskit.circuit.library.UGate") on qubits 0 and 1, [`RZGate`](qiskit.circuit.library.RZGate "qiskit.circuit.library.RZGate"), [`RXGate`](qiskit.circuit.library.RXGate "qiskit.circuit.library.RXGate"), and [`RYGate`](qiskit.circuit.library.RYGate "qiskit.circuit.library.RYGate") on qubits 1 and 2, [`CZGate`](qiskit.circuit.library.CZGate "qiskit.circuit.library.CZGate") between qubits 1 and 2, and qubits 2 and 0, and [`Measure`](circuit#qiskit.circuit.Measure "qiskit.circuit.Measure") on all qubits. There are also specific data structures to represent a specific subset of information from the [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target"). For example, the [`CouplingMap`](qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap") class is used to solely represent the connectivity constraints of a backend as a directed graph. A coupling map can be generated from a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") using the [`Target.build_coupling_map()`](qiskit.transpiler.Target#build_coupling_map "qiskit.transpiler.Target.build_coupling_map") method. These data structures typically pre-date the [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") class but are still used by some transpiler passes that do not work natively with a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") instance yet or when dealing with backends that aren’t using the latest [`BackendV2`](qiskit.providers.BackendV2 "qiskit.providers.BackendV2") interface. @@ -628,7 +628,7 @@ In order to implement a 2-qubit gate between qubits in a quantum circuit that ar However, as with many important things in life, finding the optimal swap mapping is hard. In fact it is in a class of problems called NP-hard, and is thus prohibitively expensive to compute for all but the smallest quantum devices and input circuits. To get around this, by default Qiskit uses a stochastic heuristic algorithm called [`SabreSwap`](qiskit.transpiler.passes.SabreSwap "qiskit.transpiler.passes.SabreSwap") to compute a good, but not necessarily optimal swap mapping. The use of a stochastic method means the circuits generated by [`transpile()`](compiler#qiskit.compiler.transpile "qiskit.compiler.transpile") are not guaranteed to be the same over repeated runs. Indeed, running the same circuit repeatedly will in general result in a distribution of circuit depths and gate counts at the output. -In order to highlight this, we run a GHZ circuit 100 times, using a “bad” (disconnected) initial\_layout: +In order to highlight this, we run a GHZ circuit 100 times, using a “bad” (disconnected) `initial_layout` in a heavy hex coupling map: ![../\_images/transpiler-11.png](/images/api/qiskit/dev/transpiler-11.png) @@ -636,18 +636,22 @@ In order to highlight this, we run a GHZ circuit 100 times, using a “bad” (d import matplotlib.pyplot as plt from qiskit import QuantumCircuit, transpile from qiskit.providers.fake_provider import GenericBackendV2 -backend = GenericBackendV2(16) +from qiskit.transpiler import CouplingMap + +coupling_map = CouplingMap.from_heavy_hex(3) +backend = GenericBackendV2(coupling_map.size(), coupling_map=coupling_map) ghz = QuantumCircuit(15) ghz.h(0) ghz.cx(0, range(1, 15)) depths = [] -for _ in range(100): +for i in range(100): depths.append( transpile( ghz, backend, + seed_transpiler=i, layout_method='trivial' # Fixed layout mapped in circuit order ).depth() ) @@ -738,7 +742,7 @@ circ.draw(output='mpl') ![../\_images/transpiler-16.png](/images/api/qiskit/dev/transpiler-16.png) -You can see here that the transpiler inserted [`Delay`](qiskit.circuit.Delay "qiskit.circuit.Delay") instructions to account for idle time on each qubit. To get a better idea of the timing of the circuit we can also look at it with the `timeline.draw()` function: +You can see here that the transpiler inserted [`Delay`](circuit#qiskit.circuit.Delay "qiskit.circuit.Delay") instructions to account for idle time on each qubit. To get a better idea of the timing of the circuit we can also look at it with the `timeline.draw()` function: ![../\_images/transpiler-17.png](/images/api/qiskit/dev/transpiler-17.png) @@ -785,7 +789,7 @@ D ░░░░░░░░░░▒▒▒▒▒▒░░░ C ░░░░░░░░░░░░░░░░▒▒░ ``` -However, the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") representation is not accurate enough to represent this model. In the circuit representation, the corresponding [`circuit.Qubit`](qiskit.circuit.Qubit "qiskit.circuit.Qubit") is occupied by the stimulus microwave signal during the first half of the interval, and the [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") is only occupied at the very end of the interval. +However, the [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") representation is not accurate enough to represent this model. In the circuit representation, the corresponding [`circuit.Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit") is occupied by the stimulus microwave signal during the first half of the interval, and the [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") is only occupied at the very end of the interval. The lack of precision representing the physical model may induce edge cases in the scheduling: @@ -799,7 +803,7 @@ c: 1/╡ c_0=0x1 ╞═╩═ └─────────┘ 0 ``` -In this example, a user may intend to measure the state of `q_1` after the [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.library.XGate") is applied to `q_0`. This is the correct interpretation from the viewpoint of topological node ordering, i.e. The [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.library.XGate") node comes in front of the [`Measure`](qiskit.circuit.library.Measure "qiskit.circuit.library.Measure") node. However, according to the measurement model above, the data in the register is unchanged during the application of the stimulus, so two nodes are simultaneously operated. If one tries to alap-schedule this circuit, it may return following circuit: +In this example, a user may intend to measure the state of `q_1` after the [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.library.XGate") is applied to `q_0`. This is the correct interpretation from the viewpoint of topological node ordering, i.e. The [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.library.XGate") node comes in front of the [`Measure`](circuit#qiskit.circuit.Measure "qiskit.circuit.Measure") node. However, according to the measurement model above, the data in the register is unchanged during the application of the stimulus, so two nodes are simultaneously operated. If one tries to alap-schedule this circuit, it may return following circuit: ```python ┌────────────────┐ ┌───┐ @@ -910,11 +914,11 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor ### Layout and Topology -| | | -| ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------ | -| [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout")(\[input\_dict]) | Two-ways dict to represent a Layout. | -| [`CouplingMap`](qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap")(\[couplinglist, description]) | Directed graph specifying fixed coupling. | -| [`TranspileLayout`](qiskit.transpiler.TranspileLayout "qiskit.transpiler.TranspileLayout")(initial\_layout, ...\[, ...]) | Layout attributes from output circuit from transpiler. | +| | | +| ------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------- | +| [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout")(\[input\_dict]) | Two-ways dict to represent a Layout. | +| [`CouplingMap`](qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap")(\[couplinglist, description]) | Directed graph specifying fixed coupling. | +| [`TranspileLayout`](qiskit.transpiler.TranspileLayout "qiskit.transpiler.TranspileLayout")(initial\_layout, ...\[, ...]) | Layout attributes for the output circuit from transpiler. | ### Scheduling @@ -933,7 +937,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor ### TranspilerError - + Exceptions raised during transpilation. Set the error message. @@ -941,7 +945,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor ### TranspilerAccessError - + DEPRECATED: Exception of access error in the transpiler passes. Set the error message. @@ -949,7 +953,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor ### CouplingError - + Base class for errors raised by the coupling graph object. Set the error message. @@ -957,7 +961,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor ### LayoutError - + Errors raised by the layout object. Set the error message. @@ -965,7 +969,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor ### CircuitTooWideForTarget - + Error raised if the circuit is too wide for the target. Set the error message. @@ -973,7 +977,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor ### InvalidLayoutError - + Error raised when a user provided layout is invalid. Set the error message. diff --git a/docs/api/qiskit/dev/transpiler_passes.mdx b/docs/api/qiskit/dev/transpiler_passes.mdx index a772afc30f3..7954af5e7c6 100644 --- a/docs/api/qiskit/dev/transpiler_passes.mdx +++ b/docs/api/qiskit/dev/transpiler_passes.mdx @@ -74,6 +74,7 @@ python_api_name: qiskit.transpiler.passes | [`Optimize1qGatesSimpleCommutation`](qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation "qiskit.transpiler.passes.Optimize1qGatesSimpleCommutation")(\*args, \*\*kwargs) | Optimizes 1Q gate strings interrupted by 2Q gates by commuting the components and resynthesizing the results. | | [`RemoveDiagonalGatesBeforeMeasure`](qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure "qiskit.transpiler.passes.RemoveDiagonalGatesBeforeMeasure")(\*args, \*\*kwargs) | Remove diagonal gates (including diagonal 2Q gates) before a measurement. | | [`RemoveResetInZeroState`](qiskit.transpiler.passes.RemoveResetInZeroState "qiskit.transpiler.passes.RemoveResetInZeroState")(\*args, \*\*kwargs) | Remove reset gate when the qubit is in zero state. | +| [`RemoveFinalReset`](qiskit.transpiler.passes.RemoveFinalReset "qiskit.transpiler.passes.RemoveFinalReset")(\*args, \*\*kwargs) | Remove reset when it is the final instruction on a qubit wire. | | [`HoareOptimizer`](qiskit.transpiler.passes.HoareOptimizer "qiskit.transpiler.passes.HoareOptimizer")(\*args, \*\*kwargs) | This is a transpiler pass using Hoare logic circuit optimization. | | [`TemplateOptimization`](qiskit.transpiler.passes.TemplateOptimization "qiskit.transpiler.passes.TemplateOptimization")(\*args, \*\*kwargs) | Class for the template optimization pass. | | [`EchoRZXWeylDecomposition`](qiskit.transpiler.passes.EchoRZXWeylDecomposition "qiskit.transpiler.passes.EchoRZXWeylDecomposition")(\*args, \*\*kwargs) | Rewrite two-qubit gates using the Weyl decomposition. | @@ -93,7 +94,7 @@ python_api_name: qiskit.transpiler.passes ### rzx\_templates - + Convenience function to get the cost\_dict and templates for template matching. **Parameters** diff --git a/docs/api/qiskit/dev/transpiler_plugins.mdx b/docs/api/qiskit/dev/transpiler_plugins.mdx index 88cac39288e..450cd288904 100644 --- a/docs/api/qiskit/dev/transpiler_plugins.mdx +++ b/docs/api/qiskit/dev/transpiler_plugins.mdx @@ -30,14 +30,14 @@ For details on how to instead write plugins for transpiler synthesis methods, se Currently, there are 6 stages in the preset pass managers, all of which actively load external plugins via corresponding entry points. -| Stage Name | Entry Point | Reserved Names | Description and expectations | -| -------------- | -------------------------------- | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `init` | `qiskit.transpiler.init` | `default` | This stage runs first and is typically used for any initial logical optimization. Because most layout and routing algorithms are only designed to work with 1 and 2 qubit gates, this stage is also used to translate any gates that operate on more than 2 qubits into gates that only operate on 1 or 2 qubits. | -| `layout` | `qiskit.transpiler.layout` | `trivial`, `dense`, `sabre`, `default` | The output from this stage is expected to have the `layout` property set field set with a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object. Additionally, the circuit is typically expected to be embedded so that it is expanded to include all qubits and the [`ApplyLayout`](qiskit.transpiler.passes.ApplyLayout "qiskit.transpiler.passes.ApplyLayout") pass is expected to be run to apply the layout. The embedding of the [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") can be generated with [`generate_embed_passmanager()`](transpiler_preset#qiskit.transpiler.preset_passmanagers.common.generate_embed_passmanager "qiskit.transpiler.preset_passmanagers.common.generate_embed_passmanager"). | -| `routing` | `qiskit.transpiler.routing` | `basic`, `stochastic`, `lookahead`, `sabre` | The output from this stage is expected to have the circuit match the connectivity constraints of the target backend. This does not necessarily need to match the directionality of the edges in the target as a later stage typically will adjust directional gates to match that constraint (but there is no penalty for doing that in the `routing` stage). | -| `translation` | `qiskit.transpiler.translation` | `translator`, `synthesis`, `unroller` | **The output of this stage is expected to have every operation be a native**instruction on the target backend. | -| `optimization` | `qiskit.transpiler.optimization` | `default` | This stage is expected to perform optimization and simplification. The constraints from earlier stages still apply to the output of this stage. After the `optimization` stage is run we expect the circuit to still be executable on the target. | -| `scheduling` | `qiskit.transpiler.scheduling` | `alap`, `asap`, `default` | This is the last stage run and it is expected to output a scheduled circuit such that all idle periods in the circuit are marked by explicit [`Delay`](qiskit.circuit.Delay "qiskit.circuit.Delay") instructions. | +| Stage Name | Entry Point | Reserved Names | Description and expectations | +| -------------- | -------------------------------- | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `init` | `qiskit.transpiler.init` | `default` | This stage runs first and is typically used for any initial logical optimization. Because most layout and routing algorithms are only designed to work with 1 and 2 qubit gates, this stage is also used to translate any gates that operate on more than 2 qubits into gates that only operate on 1 or 2 qubits. | +| `layout` | `qiskit.transpiler.layout` | `trivial`, `dense`, `sabre`, `default` | The output from this stage is expected to have the `layout` property set field set with a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object. Additionally, the circuit is typically expected to be embedded so that it is expanded to include all qubits and the [`ApplyLayout`](qiskit.transpiler.passes.ApplyLayout "qiskit.transpiler.passes.ApplyLayout") pass is expected to be run to apply the layout. The embedding of the [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") can be generated with [`generate_embed_passmanager()`](transpiler_preset#qiskit.transpiler.preset_passmanagers.common.generate_embed_passmanager "qiskit.transpiler.preset_passmanagers.common.generate_embed_passmanager"). | +| `routing` | `qiskit.transpiler.routing` | `basic`, `stochastic`, `lookahead`, `sabre` | The output from this stage is expected to have the circuit match the connectivity constraints of the target backend. This does not necessarily need to match the directionality of the edges in the target as a later stage typically will adjust directional gates to match that constraint (but there is no penalty for doing that in the `routing` stage). The output of this stage is also expected to have the `final_layout` property set field set with a [`Layout`](qiskit.transpiler.Layout "qiskit.transpiler.Layout") object that maps the [`Qubit`](circuit#qiskit.circuit.Qubit "qiskit.circuit.Qubit") to the output final position of that qubit in the circuit. If there is an existing `final_layout` entry in the property set (such as might be set by an optimization pass that introduces a permutation) it is expected that the final layout will be the composition of the two layouts (this can be computed using [`DAGCircuit.compose()`](qiskit.dagcircuit.DAGCircuit#compose "qiskit.dagcircuit.DAGCircuit.compose"), for example: `second_final_layout.compose(first_final_layout, dag.qubits)`). | +| `translation` | `qiskit.transpiler.translation` | `translator`, `synthesis`, `unroller` | **The output of this stage is expected to have every operation be a native**instruction on the target backend. | +| `optimization` | `qiskit.transpiler.optimization` | `default` | This stage is expected to perform optimization and simplification. The constraints from earlier stages still apply to the output of this stage. After the `optimization` stage is run we expect the circuit to still be executable on the target. | +| `scheduling` | `qiskit.transpiler.scheduling` | `alap`, `asap`, `default` | This is the last stage run and it is expected to output a scheduled circuit such that all idle periods in the circuit are marked by explicit [`Delay`](circuit#qiskit.circuit.Delay "qiskit.circuit.Delay") instructions. | ## Writing Plugins @@ -97,7 +97,7 @@ There isn’t a limit to the number of plugins a single package can include as l ### list\_stage\_plugins - + Get a list of installed plugins for a stage. **Parameters** @@ -119,7 +119,7 @@ There isn’t a limit to the number of plugins a single package can include as l ### passmanager\_stage\_plugins - + Return a dict with, for each stage name, the class type of the plugin. This function is useful for getting more information about a plugin: diff --git a/docs/api/qiskit/dev/transpiler_preset.mdx b/docs/api/qiskit/dev/transpiler_preset.mdx index 960d7c01a97..76c0e4dd927 100644 --- a/docs/api/qiskit/dev/transpiler_preset.mdx +++ b/docs/api/qiskit/dev/transpiler_preset.mdx @@ -26,7 +26,7 @@ This module contains functions for generating the preset pass managers for the t ### generate\_preset\_pass\_manager - + Generate a preset [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") This function is used to quickly generate a preset pass manager. A preset pass manager are the default pass managers used by the [`transpile()`](compiler#qiskit.compiler.transpile "qiskit.compiler.transpile") function. This function provides a convenient and simple method to construct a standalone [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") object that mirrors what the transpile @@ -42,7 +42,7 @@ This module contains functions for generating the preset pass managers for the t > * 2: heavy optimization > * 3: even heavier optimization - * **backend** ([*Backend*](qiskit.providers.Backend "qiskit.providers.Backend")) – An optional backend object which can be used as the source of the default values for the `basis_gates`, `inst_map`, `couplig_map`, `backend_properties`, `instruction_durations`, `timing_constraints`, and `target`. If any of those other arguments are specified in addition to `backend` they will take precedence over the value contained in the backend. + * **backend** ([*Backend*](qiskit.providers.Backend "qiskit.providers.Backend")) – An optional backend object which can be used as the source of the default values for the `basis_gates`, `inst_map`, `coupling_map`, `backend_properties`, `instruction_durations`, `timing_constraints`, and `target`. If any of those other arguments are specified in addition to `backend` they will take precedence over the value contained in the backend. * **target** ([*Target*](qiskit.transpiler.Target "qiskit.transpiler.Target")) – The [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") representing a backend compilation target. The following attributes will be inferred from this argument if they are not set: `coupling_map`, `basis_gates`, `instruction_durations`, `inst_map`, `timing_constraints` and `backend_properties`. @@ -58,7 +58,7 @@ This module contains functions for generating the preset pass managers for the t * **initial\_layout** ([*Layout*](qiskit.transpiler.Layout "qiskit.transpiler.Layout")) – Initial position of virtual qubits on physical qubits. - * **layout\_method** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – The `Pass` to use for choosing initial qubit placement. Valid choices are `'trivial'`, `'dense'`, and `'sabre'`, representing [`TrivialLayout`](qiskit.transpiler.passes.TrivialLayout "qiskit.transpiler.passes.TrivialLayout"), `DenseLayout` and [`SabreLayout`](qiskit.transpiler.passes.SabreLayout "qiskit.transpiler.passes.SabreLayout") respectively. This can also be the external plugin name to use for the `layout` stage of the output [`StagedPassManager`](qiskit.transpiler.StagedPassManager "qiskit.transpiler.StagedPassManager"). You can see a list of installed plugins by using [`list_stage_plugins()`](transpiler_plugins#qiskit.transpiler.preset_passmanagers.plugin.list_stage_plugins "qiskit.transpiler.preset_passmanagers.plugin.list_stage_plugins") with `"layout"` for the `stage_name` argument. + * **layout\_method** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – The `Pass` to use for choosing initial qubit placement. Valid choices are `'trivial'`, `'dense'`, and `'sabre'`, representing [`TrivialLayout`](qiskit.transpiler.passes.TrivialLayout "qiskit.transpiler.passes.TrivialLayout"), [`DenseLayout`](qiskit.transpiler.passes.DenseLayout "qiskit.transpiler.passes.DenseLayout") and [`SabreLayout`](qiskit.transpiler.passes.SabreLayout "qiskit.transpiler.passes.SabreLayout") respectively. This can also be the external plugin name to use for the `layout` stage of the output [`StagedPassManager`](qiskit.transpiler.StagedPassManager "qiskit.transpiler.StagedPassManager"). You can see a list of installed plugins by using [`list_stage_plugins()`](transpiler_plugins#qiskit.transpiler.preset_passmanagers.plugin.list_stage_plugins "qiskit.transpiler.preset_passmanagers.plugin.list_stage_plugins") with `"layout"` for the `stage_name` argument. * **routing\_method** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – The pass to use for routing qubits on the architecture. Valid choices are `'basic'`, `'lookahead'`, `'stochastic'`, `'sabre'`, and `'none'` representing [`BasicSwap`](qiskit.transpiler.passes.BasicSwap "qiskit.transpiler.passes.BasicSwap"), [`LookaheadSwap`](qiskit.transpiler.passes.LookaheadSwap "qiskit.transpiler.passes.LookaheadSwap"), [`StochasticSwap`](qiskit.transpiler.passes.StochasticSwap "qiskit.transpiler.passes.StochasticSwap"), [`SabreSwap`](qiskit.transpiler.passes.SabreSwap "qiskit.transpiler.passes.SabreSwap"), and erroring if routing is required respectively. This can also be the external plugin name to use for the `routing` stage of the output [`StagedPassManager`](qiskit.transpiler.StagedPassManager "qiskit.transpiler.StagedPassManager"). You can see a list of installed plugins by using [`list_stage_plugins()`](transpiler_plugins#qiskit.transpiler.preset_passmanagers.plugin.list_stage_plugins "qiskit.transpiler.preset_passmanagers.plugin.list_stage_plugins") with `"routing"` for the `stage_name` argument. @@ -97,7 +97,7 @@ This module contains functions for generating the preset pass managers for the t ### level\_0\_pass\_manager - + Level 0 pass manager: no explicit optimization other than mapping to backend. This pass manager applies the user-given initial layout. If none is given, a trivial layout consisting of mapping the i-th virtual qubit to the i-th physical qubit is used. Any unused physical qubit is allocated as ancilla space. @@ -123,7 +123,7 @@ This module contains functions for generating the preset pass managers for the t ### level\_1\_pass\_manager - + Level 1 pass manager: light optimization by simple adjacent gate collapsing. This pass manager applies the user-given initial layout. If none is given, and a trivial layout (i-th virtual -> i-th physical) makes the circuit fit the coupling map, that is used. Otherwise, the circuit is mapped to the most densely connected coupling subgraph, and swaps are inserted to map. Any unused physical qubit is allocated as ancilla space. The pass manager then unrolls the circuit to the desired basis, and transforms the circuit to match the coupling map. Finally, optimizations in the form of adjacent gate collapse and redundant reset removal are performed. @@ -147,7 +147,7 @@ This module contains functions for generating the preset pass managers for the t ### level\_2\_pass\_manager - + Level 2 pass manager: medium optimization by initial layout selection and gate cancellation using commutativity rules. This pass manager applies the user-given initial layout. If none is given, a search for a perfect layout (i.e. one that satisfies all 2-qubit interactions) is conducted. If no such layout is found, qubits are laid out on the most densely connected subset which also exhibits the best gate fidelities. @@ -173,7 +173,7 @@ This module contains functions for generating the preset pass managers for the t ### level\_3\_pass\_manager - + Level 3 pass manager: heavy optimization by noise adaptive qubit mapping and gate cancellation using commutativity rules and unitary synthesis. This pass manager applies the user-given initial layout. If none is given, a search for a perfect layout (i.e. one that satisfies all 2-qubit interactions) is conducted. If no such layout is found, and device calibration information is available, the circuit is mapped to the qubits with best readouts and to CX gates with highest fidelity. @@ -203,7 +203,7 @@ This module contains functions for generating the preset pass managers for the t ### generate\_control\_flow\_options\_check - + Generate a pass manager that, when run on a DAG that contains control flow, fails with an error message explaining the invalid options, and what could be used instead. **Returns** @@ -217,13 +217,13 @@ This module contains functions for generating the preset pass managers for the t ### generate\_error\_on\_control\_flow - + Get a pass manager that always raises an error if control flow is present in a given circuit. ### generate\_unroll\_3q - + Generate an unroll >3q [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") **Parameters** @@ -246,7 +246,7 @@ This module contains functions for generating the preset pass managers for the t ### generate\_embed\_passmanager - + Generate a layout embedding [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") This is used to generate a [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") object that can be used to expand and apply an initial layout to a circuit @@ -268,7 +268,7 @@ This module contains functions for generating the preset pass managers for the t ### generate\_routing\_passmanager - + Generate a routing [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") **Parameters** @@ -294,7 +294,7 @@ This module contains functions for generating the preset pass managers for the t ### generate\_pre\_op\_passmanager - + Generate a pre-optimization loop [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") This pass manager will check to ensure that directionality from the coupling map is respected @@ -316,7 +316,7 @@ This module contains functions for generating the preset pass managers for the t ### generate\_translation\_passmanager - + Generate a basis translation [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") **Parameters** @@ -346,7 +346,7 @@ This module contains functions for generating the preset pass managers for the t ### generate\_scheduling - + Generate a post optimization scheduling [`PassManager`](qiskit.transpiler.PassManager "qiskit.transpiler.PassManager") **Parameters** diff --git a/docs/api/qiskit/dev/utils.mdx b/docs/api/qiskit/dev/utils.mdx index fe377c74859..0c0675ea377 100644 --- a/docs/api/qiskit/dev/utils.mdx +++ b/docs/api/qiskit/dev/utils.mdx @@ -22,7 +22,7 @@ python_api_name: qiskit.utils ### add\_deprecation\_to\_docstring - + Dynamically insert the deprecation message into `func`’s docstring. **Parameters** @@ -35,7 +35,7 @@ python_api_name: qiskit.utils ### deprecate\_arg - + Decorator to indicate an argument has been deprecated in some way. This decorator may be used multiple times on the same function, once per deprecated argument. It should be placed beneath other decorators like `@staticmethod` and property decorators. @@ -63,7 +63,7 @@ python_api_name: qiskit.utils ### deprecate\_arguments - + Deprecated. Instead, use @deprecate\_arg. **Parameters** @@ -83,7 +83,7 @@ python_api_name: qiskit.utils ### deprecate\_func - + Decorator to indicate a function has been deprecated. It should be placed beneath other decorators like @staticmethod and property decorators. @@ -110,7 +110,7 @@ python_api_name: qiskit.utils ### deprecate\_function - + Deprecated. Instead, use @deprecate\_func. **Parameters** @@ -133,7 +133,7 @@ python_api_name: qiskit.utils ### apply\_prefix - + Given a SI unit prefix and value, apply the prefix to convert to standard SI unit. **Parameters** @@ -164,7 +164,7 @@ python_api_name: qiskit.utils ### detach\_prefix - + Given a SI unit value, find the most suitable prefix to scale the value. For example, the `value = 1.3e8` will be converted into a tuple of `(130.0, "M")`, which represents a scaled value and auxiliary unit that may be used to display the value. In above example, that value might be displayed as `130 MHz` (unit is arbitrary here). @@ -208,7 +208,7 @@ python_api_name: qiskit.utils ### wrap\_method - + Wrap the functionality the instance- or class method `cls.name` with additional behaviour `before` and `after`. This mutates `cls`, replacing the attribute `name` with the new functionality. This is useful when creating class decorators. The method is allowed to be defined on any parent class instead. @@ -231,7 +231,7 @@ python_api_name: qiskit.utils ### local\_hardware\_info - + Basic hardware information about the local machine. Gives actual number of CPU’s in the machine, even when hyperthreading is turned on. CPU count defaults to 1 when true count can’t be determined. @@ -247,7 +247,7 @@ python_api_name: qiskit.utils ### is\_main\_process - + Checks whether the current process is the main one @@ -255,7 +255,7 @@ A helper function for calling a custom function with python [`ProcessPoolExecuto ### parallel\_map - + Parallel execution of a mapping of values to the function task. This is functionally equivalent to: ```python @@ -363,7 +363,7 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut from qiskit.utils import LazyImportTester ``` - + A mananger for some optional features that are expensive to import, or to verify the existence of. These objects can be used as Booleans, such as `if x`, and will evaluate `True` if the dependency they test for is available, and `False` if not. The presence of the dependency will only be tested when the Boolean is evaluated, so it can be used as a runtime test in functions and methods without requiring an import-time test. @@ -403,7 +403,7 @@ from qiskit.utils import LazyImportTester ### \_is\_available - + Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once. **Return type** @@ -419,7 +419,7 @@ from qiskit.utils import LazyImportTester ### require\_in\_call - + Create a decorator for callables that requires that the dependency is available when the decorated function or method is called. **Parameters** @@ -437,7 +437,7 @@ from qiskit.utils import LazyImportTester ### require\_in\_instance - + A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method. **Parameters** @@ -455,7 +455,7 @@ from qiskit.utils import LazyImportTester ### require\_now - + Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported. **Parameters** @@ -468,7 +468,7 @@ from qiskit.utils import LazyImportTester - + A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value. **Parameters** @@ -480,7 +480,7 @@ from qiskit.utils import LazyImportTester [**ValueError**](https://docs.python.org/3/library/exceptions.html#ValueError "(in Python v3.12)") – if no modules are given. - + A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value. **Parameters** diff --git a/docs/api/qiskit/dev/visualization.mdx b/docs/api/qiskit/dev/visualization.mdx index ec80c5ba0ea..de57ac4d8ee 100644 --- a/docs/api/qiskit/dev/visualization.mdx +++ b/docs/api/qiskit/dev/visualization.mdx @@ -225,7 +225,7 @@ You can find code examples for each visualization functions on the individual fu ### VisualizationError - + For visualization specific errors. Set the error message. diff --git a/public/api/qiskit-ibm-runtime/dev/objects.inv b/public/api/qiskit-ibm-runtime/dev/objects.inv index b8adde286ab37f6e4190f53706ab9df470fb1b57..a0a77487cf0e87f722d1f19b648936bbc7ebb991 100644 GIT binary patch delta 60327 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≪@HXXWvzSh^*85DFjX9tTsAK4gF?Pe{)qA3iATxmTMiz(J;zr7#y1@xg+)M<5s)-ZlB>sbp9ewY72^VU_Q?MumMqH*^G!S$zl72SF5 b7Lx%TBm|t_<26&P{)M002M%&7X6gMOZ~bo@ delta 59844 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 V6>5WezI^wZvoXp&0!vp8{vYGCVCw(? diff --git a/public/api/qiskit/dev/objects.inv b/public/api/qiskit/dev/objects.inv index 0857046abf0034b5fb115f376d438f746bc3dd76..d0e37b9708ab244246a141200a260345e28404ad 100644 GIT binary patch delta 69173 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

Kzy# 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 delta 69965 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 E)J%sM-T(jq diff --git a/public/images/api/qiskit-ibm-runtime/dev/fake_provider-1_00.png b/public/images/api/qiskit-ibm-runtime/dev/fake_provider-1_00.png index 69d83403d080abef394f770fff26c806b4ade973..119c30485d037803baeae1b9f102dd97aa08b5f8 100644 GIT binary patch delta 41 wcmZ3Nwk~aghn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Dl00RT<(5U&6L diff --git a/public/images/api/qiskit-ibm-runtime/dev/fake_provider-1_01.png b/public/images/api/qiskit-ibm-runtime/dev/fake_provider-1_01.png index ac2dad8b727e66aac4f0dcd77063c24e4d9c3c7c..d46e09211bb06c3ded3ca30fa27bab65e0e6b0db 100644 GIT binary patch delta 43 ycmeyfhVjoD#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36A#KHh{xDU_( delta 43 zcmeyfhVjoD#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek56AJ?Xf3Xou diff --git a/public/images/api/qiskit-ibm-runtime/dev/fake_provider-1_02.png b/public/images/api/qiskit-ibm-runtime/dev/fake_provider-1_02.png index e10229d6b7e96a553b05abc67294ea9174e7acee..536a2eb84b452dc55b50851e2e4210347f655ca7 100644 GIT binary patch literal 14559 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 literal 14150 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 delta 43 zcmex*nEC5r<_R8h#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5>wgFUhRzam diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_10_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_10_0.png index 0db7b6b93f0f5e876e1c99e5099cdbcd9e3b0cfa..7116587fde9f3a9c4203f5e476d4956bd16643c7 100644 GIT binary patch delta 41 wcmccaecgM4hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x;M1& delta 41 wcmccaecgM4hn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`BC^0a4EoX8-^I diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_11_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_11_0.png index 47ff556d048c28452bf24fd7ccf033674b0d717c..b7c34798baf8f371501a43c76812f6bec3637f4d 100644 GIT binary patch delta 41 wcmca(cE@ajhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Hi?0RT<-5WxTd diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_12_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_12_0.png index 5fbd33ac650450d60a325d3bff8b9ea8f335e558..e817838751db92ff4c3b3a06eabbebe59b9fb8a1 100644 GIT binary patch delta 41 wcmX?acHV4)hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?xOV delta 41 xcmX?acHV4)hn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`EA&0RTzP5Sjo0 diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_13_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_13_0.png index 118ec8d280dc50c4bd0ed02b057ed7b774ea10b9..ea70adfae4e3f3111fcb6498682aaf2424f77e59 100644 GIT binary patch delta 41 wcmX?San53bhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`EA$0{}`H5S#!2 diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_14_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_14_0.png index 677d65078bf3fa2c8f5683a758dbe02711cee439..85294414e7ee3f09d71f23866b83976fb4e08988 100644 GIT binary patch delta 43 ycmey_$N004ae{}OiH<@>Nl8JmmA-y%Vo52PG*u`eo?x2PG*u`eo?yq@n;di8`HG)06^#u!TH6}j%B36APJRUda-H5c?MFek5JNXp=eVr1A diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_2_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_2_0.png index 6669b990a37aee86d4bffb56f2857fedc1c7691a..d2793280fa4694bc80aaf8ecc7603ccace31ab7d 100644 GIT binary patch delta 41 wcmaDW{Z@K{hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Ii(0ZJnfF#rGn diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_3_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_3_0.png index 0b66792a672f878aed86fad0b4ef9afbbfc0dfac..9ecb9b01f0a7784027393a7a57778bf022d78819 100644 GIT binary patch delta 43 ycmcbxl<~q+#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36AvVs6);Sah1 delta 43 zcmcbxl<~q+#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5%L)PjZ`u(x diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_4_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_4_0.png index 0b66792a672f878aed86fad0b4ef9afbbfc0dfac..9ecb9b01f0a7784027393a7a57778bf022d78819 100644 GIT binary patch delta 43 ycmcbxl<~q+#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36AvVs6);Sah1 delta 43 zcmcbxl<~q+#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5%L)PjZ`u(x diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_5_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_5_0.png index 4b07ea377c81f38b52309b02816e71da5cb4ef72..82fbabcaaf1b044e8326699cb0b9fdcc269c3217 100644 GIT binary patch delta 41 wcmX>Rej2PG*u`eo?xRej2PG*u`eo?yq@n;di8`F}s0Z^|HSO5S3 diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_6_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_6_0.png index bc63d5d05e5ba09c871ecb9de74846714645c8df..51d82866fef24bbeff6925c93d09bfbf8691ff1e 100644 GIT binary patch delta 41 wcmZ2yz0P`qhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`C^w0YAkL!~g&Q diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_7_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_7_0.png index 38e621e254a24439a89d18b8cc958e43bef81d30..02f9be7364397880060db51c890741ad3d7ac029 100644 GIT binary patch delta 41 wcmX@^aNJ>nhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x06$g_AOHXW delta 41 xcmX@^aNJ>nhn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`B=j0{}`-5Ssu1 diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_8_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_8_0.png index b015c55388689cef4215f2125ef85d3336e6eb2f..1aacb47a844dc5423496f4ba30624f85de5b2819 100644 GIT binary patch delta 41 wcmcbfd_8%Bhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`BC60a+^$qW}N^ diff --git a/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_9_0.png b/public/images/api/qiskit-ibm-runtime/dev/qiskit_ibm_runtime.transpiler.passes.scheduling_9_0.png index 5c8b49fcadcc1589937408d7ee61b779b2f07b03..4b43228aee3bda4b0eb153804aa9b41d79a852b6 100644 GIT binary patch delta 41 wcmX@)amZtWhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x(^b delta 41 xcmX@)amZtWhn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`JJ60{}}Y5TF16 diff --git a/public/images/api/qiskit/dev/circuit-1.png b/public/images/api/qiskit/dev/circuit-1.png index a39174d80db24c2b46bb957f484c08ddf10b6a98..068280ce0425fb72e95f3e74a841f4f2b21eb920 100644 GIT binary patch delta 41 wcmeyX`B!s-hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x<{9 delta 41 xcmeyX`B!s-hn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`GwX002{t5QG2# diff --git a/public/images/api/qiskit/dev/circuit-2.png b/public/images/api/qiskit/dev/circuit-2.png index d579a7b5081547e3c19a643e7415bea98e32dc2a..ac283c80de22b9e0841d0bbce3bc9643044d19bc 100644 GIT binary patch literal 29666 zcmeFZXINADx;GqUkeNYb+>Qki7zY#;2?7FAV;Kt~pwgrSR0O1#&_jsI2o?kd0ja?P zNbd8;}UjHf3$q(h~?WGPs20wcErvHao;An0=>MNv*f`7n}sXiOP!+~F_p#S~& zvmNyC{Z=^iaQ9nqE?~D#{wfY0j_-X3{X*ssV;jN4#e4tzYyW#n{`V?@9e9;Z6@8PP z$(5#=%0FX@TG!Gv1qCi?tr2Xxo{ z=eJwt=L@Nt%8o5D#zMh*Z?OY0T3QSK=+UDY3c))DAz1ZGBDA8z1#$f8lqlBShs@4u zL^T4Ns;LVK0M!ZnZPC7`wXmB;W;rIEwWI8!xvKG))@R z>{?@FLhXBrr7<3}HM;4cALE2K($gVUSgn~PNkJ$|j8<<>@T{^*gtxn>)afQ6IXCUC zhs*qUR^iLB(YtB_;KJFrQU?CVrIfyb!88+nZa+|U=}L>1Lm0@PiT+SX7){C0NAEW@ z(OY~!SI1hC{Df4td;Mc)r?U2nx*3ZY)L-l?T#wbmeN+^}gN%2_Z$*E*3!J}vRpmPm zeBX-hyfIoAl6=&)r|s%q!!-^Qw^ja(!dCdx_5?Fo2ltZ43Rwy&%C23lQ&gu1-~jwj zoPl3dEvlxcM9b>yoQm9RJuVm?9`5V!-)ESTnu=FFJ2zWE7*nGHB=5x^F0q z)oB}0OsCV2YG_o};0sfe0#meXQLLU0x0}-?yoB>vcK-bp=1w8^N>;|>W@1V05?Y9- z>l|v?%Qg{M=C<7Yd?RCH7jA2^#B=iNZ;g$OleJOK&9QRC;fBP-#0xkB{l+LshwAw{ zR#*ExftE4To0D@kR#tm$`Xy?>+QsSf`}>6rv`=p%Y>_mPDA_0aYb)OD#bWl<)Rc2O z&4GAns;Jd5RzLBY^hNYFjrF+aGh`Ph-|l?< z?ZX|)=i|&REDG`7ZBGv->!Vi=nf(kW@|VJR6k68`#T%!gg8`FC&p7 zdo>6H4YnT1xY%PpmGfxoN|c&;`PRJ93g#l{4MX37myHmUGzka@SO9Ot0#ACTDxZT3 z4~?@T+de~J!)F-`tM8=GMDKbcD!yYP*(Ia3sCJ=dl-J+ipVbgP@BVGw=zxPTu;*BQ ze+$u)G&@`OJc#y4C&)N*vsBz#KHR&UQAm2x)EUz2OUMebW(-_@_T_FbtJJZ9(q*v$ z)-6@|toZ_2-Y)a!<>`;|is}BB_Zz1?Ep=>h?s%q}TU<2AH*p9wQZF zGc&Uthp#+N^={C9dFD~uDM|gO^((_lBQ?s{YVXpf9a4J1KC;1|ZYNBQVukC_T^~5? znzQty!`KS8S2KB;{c#2#>3^*$n;>)K2!j9agp8dO4A#Bl!o$oLoj3$SLPA1H-MQls z1+nxbc7o3$k)}Vs?5#(0!r1u^ovn&E>dX#Q-SyQC?jxMG+E~V$^AB_vM{1o2GHX*W z91NZ^yfFLQ1>O>oNHKP&BBI2_V5MQC_a%C2O(+S2Rm6ZBT@$mmtYGc5*sQ?)yp#B> z8a3ri(&tt#>{P2HmUrl(DFj7+LvotNW4442aKvfC{!-AnMM?ZNUFC*iT*_x4&a4{gp1TXJ&&fb)6nQ)!-kvQ8k2AsD6hF@tfHWLCEbN8$Nd+c zJq8t@-lkOC@#L&*@?G(r&Vwb_CgG+124O<|94}m>fRLf2Vl~cg^9L6eh<&O1BPGPaDF?;l06zPe2W$G??c6`jC z#fhpYcRq;CRaS0Q#$ws6Ts>xp$$H(m1t#VC7< zR*Ot2Dm-NL`P!z;M_k*42Y&yscV48rPOUptf_`ebxh9?XDPd2@tehFGqQp@=!eq{j zwnlM#dor%zncKWrl1E?Om#ff6a%gFHA13V&Vb=?7$kb)?F8-*# zjP0(Fys@S_M#bcF(~d$q@FgMxgVU;?ZzXXySuxY z6@gEv^>+Rs5@U_CT3}9HPBsgAl@rDEWPFF`F4>=IpLavjQMtduSY2R zwn;Lgrpxhs*5ro9ePq3!6BeFz_l4`E!(q80kL2te7-xy$3aBaNnP)G~#qmE8<+|=9 zB^D99!~N!oYCLX}jMTBrqtmOXgZf7!O*CUj} z`nB59TvgZ6y6Aq7XAg_R)!J>Uj|^rJLyqB&Wouek&{xV_YbS_0)?Zvq=zK}CXCcyiUUw<&$5H|NL zeVB0IY6R3?vzuG`ip~{ZQr)3!^Hjl||C5$e+tUtk7bYCs8YLGV95)du?KSub4O*bn zmrrjC4FtDO#eR^*@VviZ;%?BC@g1bId#Z+4^u2hEXOPU&7TNX^iP!bWK9A(h^+yc- z-U!4LI$3SDq{uXi)@YtF7T%Z+vc;@cPYDl9g)hwp9=?~5$J>vt5G0Axsy?-Fn{x!UGU6LG&tNc^ zO%l7!7t{v7eJ6UT8Q>u^Br;u>S%*rP2c7K0Ob#yNm3tAPySzrndwPUGbt*ZT8zK_x zFkldH+^Xz3GeQD`3sAs{`P+k=pa5#NvihMDui{PGUKz%#19Fa{XrXTHci%0L&xbfj}pF=>1wfoJqS_QGR3cYV?rbf}A zB9W7KsB%}PmRiMgiaAwz3TWnlijc?4p%4#DPk7aps|o|&Mlke?@(xMWplHDTOyk<&21-o5*KB#2!QiaR2fYz&l@R{W-NM;aoV~wuOc*O@ zn0VxBM8OrgM@47B&69l0_j*kbGvlCH_5?s4?XNGrR0~;}NJB4FhkU-TI8f6)9+{V$ zJCr$QW8_{#XvI)Y8XI$#BsKCw0;*VVYHlNEhgNc;<(?IKqx-?u9Mj<( zzOeZDw$%^5BCN`G+4i&$qk;8?gZprTPovUD=L_~2aNpLW*0@;Yl&XbAYanI0t+i#d zsqrIrxo%qyqAJK_o$fFYa>2slG9iG(pDG1sUYRSM@SrEh6lWJYlLhXZwmYKYeymO{ zm%i7RLZ+Wbm4SOc3*1Q|4~7cP284%orN%2T)|zH1TXsF;$W^+FS%{|F#xC@84V6Z< zyoU&IMVWeAF^kGY1AfL{?VC7Hat$%hjXRx%OJh09+3OBsV<^gElEp|yI7Xy9oL_jp zDHY(+-Me>Nrv9naW2o$~b(w-u65Ke~ye)2@(b7_Ty8BqYQl#8tTggzyZchEu!nj}0 zr*z$_pW`Ml%t38(7_V^Xg?FsR0%GA_I%@oVBfvcYVpf~d$>=SVgG6o@rOb)gIZ!1W zBru=SkV`Qh120)b?@%xMc$#qfUNnZW#hpqF5O%6@dETVjE!M2?VG=#He&HdYRq}zY9k!+)I0l^Acs+qTzguqw!R#zn39}95%<7q4%Pc>(@+DoJH89RvFSp0g z(saUa3N$7M`77wCEYqE#v}GnmUdt{lShitoFpQ6>Ev6bQvgCVx7~dJxC0-&L=zl%z zMy)-mrh5o(w2rjUlg+czw*moB`wW2EG44dX*`WkWE~`VG8QZv>*=J@7eO@1)$hRYbc6a>rpZ-Tu1jL00e}s5@F7-4Y z2f*J~l=u3`JJD&F#chrw|wC0klh~jaD%1e>2>7 z;aEP^3H<%-K&q3;>^r8E>wO?d$}sM7H6+g+igDcv9{vX^-JzZe*IuX&E;DI}^)+^T zmG5}Z;NY_c43EA#9;*@*(tWTKy*SCA7(Tm{bstO83J=9Dg!=@3g?$@gnc}Yx25smb z$Tmq&394rxhkRRP)UUn!b$M<`-O4`1DMoMU!(qFsBaM*~Nbj{d(==y z;mlCEOWef!ZKfSvx+=mSMibtN-t=xytemJKjU*lzTNq$GJFwXTA*>|T-@cjq{O3B zi2c8b3hqu58@ErUxEHko3Z)KOgT_K}VWBY+iL?*rPNo4~maG%t2EoPKB4YIAUQ-fi zRik;lqgq-yxw*Oh0iGju6}@#sDXB@$mZwgAZ7LJ}#i_gF>7DIYj8&2K$~0lqZwiBE z*5#${Z7ek|J<9J*hHap^t9eP0pdqCGyu0bXk6PVqAZ27_XP5IQIwHH>&7-rkvjO2% zA8(0u@N@voE87&8G1eHRXf3-1Jadws>fHseor@Eb3p;XlkMA#T?(Qh6Z%gH@J>c?Q z0iKe3LVsDArV!bWLLMOy2rXNIU=8Brvgo(%M$+Df7By({dYa0?ci3xMZ3sE z0Xu;gB_W;oGS)x`D`4Slx5NEkVF-h22sz(RZWK<{yrk3X$Ok=zXL+)cus8cpfkL?p zaO1rEeAHBWP*EACIa*37N4LPU{%)3065SNLW@f;tCV{sIqza%5cn5geV%I5#;{}#- zLL2@3d{*QrMr)R;0f6Ya+2WeI&LV>9?kRZd21R9N4tk+pQAEst zo$WS+#CJ(uYsF#wdYbE0-r$e^lbp^Ja~t%b`wh2?a*B$IsQXHu{9BNtNW<>fd_`{$ zU|MPZJ%)ufR>sDin# zHb+}K@e~o7fpI_vy|N{+55EU>S=f>S{+OAmz6Jnv@@HcX2OR|8-ER1wxh}tJ&Tdyd z&riZX3qj*jhC0;oyIbMM#a<`-SXLW>SHG#1eHuLc-?wotn=Nd-YSztv6^g5>e1pt}KK-1ovm=-~cytLfsCY~$2Kpzvj5g@PG! zu|xAC>7?f7=H+=ncjd5Q)$JlW=W@-@qfkcG?cgwi!H3iZvkq{GWnv#6R*v@O)$OhVw5+-GT%WBl5B@EJ`*dOzV}pQfiKq6 z({pxqHclZYBh+n^q-)(!F+E-ktc(m zCB5#lgwh;hjJ@2weD#7?%l(4q0%pX7vijlUTzmsv{W25n#?cT#ubfZ$O+bR zkE$pYLd+`3o_Ee*F{8$xVc9RZTbfeD*RhTNLl^untheE!twsN=+>Y!E$#DQ16szsK z9;?4{g&P1a4}#ao5`Z^^S$l9?kgS^Tj{ejwUv`!z08F@YW#oE0KkWVOd{5dq9^ui) z{wKZflA)(zO&}UCjJ=Wnk)dDk^v39&tRdeit^LXmDMYv>Il;lj{j%$PuEN@;nl!*F zH}5|B8t~MuK$X3|Syt~DVC&VaE?ui315oeM!q;XDEgihaY-wwjYs)k7o`ez2-fXB0 zug`4B!?Qyzt)?XEc||K?!Rb9^EBdmqTa{{lw;z0bc{Ud69l#g43~6|(j?J$c8Vr(< zf!3hGs{^pq|L$%%$w1cyhY6GonRvnnVt?D4+akc{sHv&xBa;ch=O7B^U-=G19?cm6 znv4S53TZ#E`}aO5d3&Lnld*YEcR*CGL2^uo=K8CtkceT&7uAr!fRyUxtGGJZ~R z*ug41z0feLGAC|YdOFmyAodI-(!aQnc1(4oHi-1}pqU@Vli&o%AEcXi>2s*S3fkt5 zoc5jWem(?_&<`+JI`AYMm>3|kXx^+E=t)^9G{D#Q_xY;`FP5jARwC}XqID!B10Yp(x2jf4BR9fpmXH{G^*7KjtO244RLMUF>7M$*4z zql8N0L=qgC(jtp45Xl!E?s3-7W4%<7d8%MdzV+*=mHc+G=DFb$z=!bI4KwMB_bm1ENERLZxc4a%ryZC@&?z0p(V1TG%xQEkw2+Y-VU#Q zf0+BgZErnTP`c1u39SV}%AOgE+pAGCZ zc-5yn9jRI>@%xQ!qz)?>0z3o!Hb{gD#`Yc&;%O1E#}Wo?%L`foZJKM5|2(my&)$e_Sl61CRpN8G)k8}hvUgv#`_iCetkdA8zEQXv z{z9bvGX?FdLXkLn$Yf#8z4LBHm#yb#+B|a?(&v1A^Cht~Y({EFO_7Yan%SCwi~a<+3m&^GWe^rTx|B$mh|ygb{KV_;>+|ULDa_Is(OQ+A2fP~1 zjY{c1Y{Q)dnyHjIxi-4#M|05g59RA4>y&}TVieA|yL{!q|h4XJW!Y+QLmH&=yEaZ}~T?N+VYCxjc zyz9tMAUx9f;`Bqct8Z>m1IS1xFVQ!Cy!mS5@W6#>f7??vCD(gXqdZe_;gg@X6m5oG z4FGrOM>+|Ii;Ro}Qn~Xa9ugqEu{?@ZxDYUP4Mkj-ALL1U0BSaQ099DDEBuYkSN&9{ zm_8b_BH0`M=c>oBl%`F&8Lb zB?n&vYxZ*W!&QWZhM-^y=VDgd5qTA6u?w31n7}&0`z8y@1@ef8E@VwfN%Y%&h}%KT8JFUV9Lx7`MZdCulW?qsc)2_9RMRO}h5{rwh04R|Yj@qEJU zY+j{o&_Whx>JCnSP}T{2AfD%{U=_(u?KXZrNegXrSQYCj-vE)&?6JgcJwEN< z(p$o3#5j`~GpOOR3*dA=0{rP51iJ@I9easb;WC4)GT!{i$kEYpZDl@nJQmSFowO)` zOkDwOy?l5%MOis3EvyR};xtpHSr2sS?m$q3(je7i;=_}W<&S3}RWvPVG{p7h%@2Px z!GEp?oUn`d0+W42Z>f)O7u2pk@8=1Q;#lm9S1&q})fIu12MLmXj6y=T3u*Gyg6VJ3 zsV>8x?QSY+Q8gXY8HaylLq7SonBmHiA`r*$(EFzh@+6w;sT+HE75D)?M>$!6^{7_cn0X(_J0xH;2IhR*@34+A3Z3&`SFDUC?NfAyx(acVd&{SAdrFvR%Kjd zvDIx&@f5MPEqi-xsvQnpEK6vfkJv)gQFkfSk@!s6Y0^PJ1dW_Y8v2_~>;!+EdEU+R zx8?*9)wbWH*h#>nT)Hz)Ou{1`bytUrek=M9IwfFufE!!jhu!iw%jg`X@#$Krum$N(t%;?3)59f1g_f(PK>3t33hsQYMwNr@L(bD1qx>|5tHO&vM!RA(s!9^MM#}>c_27w;yO>1$-bC72rqT6=T;Kbs*9O2vEqEw_+^l z$eCywug&a+=xR55fWJz@`|)*y44L*L6t*nz7Mi!hFD`yF zG~viWpdKYlRl_QBS%^vp0r!0!e^Eu99D1Rb+9c(_+OI^kPaV~FSDXAyaA7Fx>421x zj=KELTbljAGdDR$V8*Q%G>y-jeBg5Nb(5$2yo6(RP&T*>u}ng!W%ytB+ z2o_Yi+KbRfQFLYNmc`cE(Xvw@obx=SMl38fma7t^oFY$Juvd_eb!;U+FR$KAT=wT`=OOCI(0zTGTuU;GYe_&9*NjVDvnANh&YTxpoFeYpmVv>a&v^J5S4~BM})ctse@Y5 zpe^P0z&aNj@uwISQnV43&HCFld-6E5^&ni9WTuvz8Hz0t(|D5XG%8RwZzWK6t zbu3#>?ny*sf8dR3M!*|;%0!}3tcS(dpIA-F4d<>o8+)xSZsk&nN9%`=k{rTVkM%;w z(Y^UOCzu7cQ{i_TH$78#F#(BgD1AO5;4w)c-kjWPqN@z0>w(ak3Iq(B$-6+9Pf5*i zBQR7vy;@1$6)PKI?gJ^eo|lV>D^={jI{p3Ici$I&x2xtl@SPQLD62r3J{1SS;Fkmn zMEAaC{BEmIpCs+jN-EWY+^`3LEQ7U5#MDE%Aw{TWMleFB z6t`_@v%)UL^4D=F=-Rkds%#$pcTiz**D3x8Gdu~^rL7oiuyzwd#_CK0nmk$~?C!3}Dt)GuH5s(PvFu)eq+vYb0q%@9nfqgLXUXROm5 z!aRcmca>C_33#ia6whS-5<`CJw#rBnC?Fjt6ir$wD{_xPgwHu{0{N2R_tw?>fD!Ge z3bN+o)Tj?7n$K@;VYRa)TT$f>ZOe-ENn0zuE3XqJ=1GvI-naT}c)JBaZ~)RpbQJ=h zR77k`hYNx?6vnBgA)O#|e$$pc&wx2Um7VH!K8_0J4!9&CpTq~@=?{CO_QWOGhaQCD zKBLRoT9vcmP=Xt{6{&;>lk2sT3bw?61Y-($#fEEs?@?*9qTvPMmADm|y`^uz3P)9Z z#@Vh5DN_lAjGzAqlnt|%jY-J3bVR&4asT@aY|v%w>A1wQgi7DMxVLg9_+8xDY$u~Q z7x;Pm(6TTm&w>nHMP2Ml00!lK8Ef4(pjC@e9ts=Bo&Q+tV(dH`dQy||QMop@9DGby9K?dd(}@|j9Q znQYOWD*+hr6-XWzZrL&Tjk$%@00uTayaSO?_vKAKjZl|%)Yyb94t%hRx)moCV$DpG zD^eXqGnz~lRj9&Qj&iYrF*(P5rPEJwPo+C_NE-bkYHm2scH|c1y~X|JzrKwS%c-f+ z0W@st5XGhA*^^#Vgnny2L;0{x#R1MJ+8fHN%mHC0ScE$O^WF5fv-RnF`zH!kJ|`L>I&hI&VFq_9sClS&@)>z~M` zlN1ED^XJZy&>P*h@V3gGdmg`anoR{s!zsO$xfdYEL4J!teM}ak&pi}o6s~zD8Z`u8 zT&O8NNa_rCT~{oA3uvDj8!y32=2ikF&F0@z(l+meY)TMmWE9oHwMP8S@E}zX26_Lg zEqmgz{BgO$&pIMjb5&F;mKA<1y(zZpNMY zi0I7)($7u=)VE)`aN=(&z{WMYG@>5c4;m27euU-G`?(JLZoPW_fqeORAg0}XBr*i= zdu^4>%T}TQICLb`6ln}$wZEE;&F(csz z8LK@B>3HU9L+;Ed=4BV4qirfA#8GU>)j+sl5&@E@2|*1Z7mN67wo5UwBNZPjSCd0} zui1RF-4TrIXiq*h^W%&JO+~ABeE>`>y)|CZrFI@~RBT^w310@Wz$M}Yf}Lynl?8xr z`hkmZ^0t`lk=?fyTEo$sU*AK+x-08fa(_50SJT)wPt+4W4lu|rQx9D?+gr3of3C!N zgl5DT4)C9~bfDxrh4=^fwCp|JWNgI|@YYHl$Pv@FI_CnURMEB$C+MhNx{ z$3wd1Pte|}D&aS9X?_d1-eXh!m!8Fvf>m+61$}K{JkJT_0G}2gulWY3be>>r21q4W zoK#yBxT`IQjE5=>$3TS0y6lEwm-bZJ9FS3mu0_cVgzeQlsG%_eQ3-DXgX}e;&eZm3 z39L1MAt{WAyZK$Z3L5?Sf^%98o5&(rs&g`E%E=v7zlL zA!{PxS63+!<-M5quP$WhI96hyk${;yu=9B<3IfR{8CU`LLb6)ZYf;NfTA5aG z9n{2{B=xv_q*uDS$#8yWvG{Sa)u9A6VUtx{0piM)vC0jNpOaF{S0|lhF1h6&4hgZ| zL9Fwr2T-F}au?r*jP)g}wBVf>rE>gbu(vZ$cpfXt>5N>BLSp zZalD^xsXRPUJCK+;C+)xbQZY1JjqCXQ(7QGq(RNCq<(IRSL(*si2_i)Dg zmzsAUF!;_+M2O28Xa31Z(C7=yLn`c4;4DtJ=-43=u|(nJiggeGB@b?mz5W=n1j0r0 zN8N9L7n;07n!{c5rs_c8FrVjq`b{?>D9C-s#YHfc?0(6@BEbQ}cpS~^>-oxKgD<$t zUP?YJxg(s@7&KvA>)AixwDIBz09^rB_8$Di0>UOG@O5_8UR}0n4>qDJw`c)>NhmpN z3;xz9!kH{#z`RwDca3t(WGyn(Zv_m7m8U?|i`B|umVP7;I+B(B$gfl(>L_gq=9AK+ zd^TLw5A`qZYI2EfOGoG);?>|UggU2`4l?bgjIHVjlGaDkDu>%-GSQ(yA=cU(*v2_OxZJvK*wt>rvuvi zmwD~?P=xi?_oa-?@JaZ!tS)o$c~eL{xVYDg|8{H=e%tuz|09hW%G?4;ybGFWQIxhn z93=H$Snk(%3x;R^%5q^P_y6uxQz?DpoBajmhbCjt(x`D661^d6ivG4`s*oD=Au2pc zgfqO~Th=}mN{-{_2-Z?cS^25D-i87|f9NW`&XWsbQw7upaw*vbr{$G^;p}?s>ph|> z7W>*5To6)9qA<-!@Bwc#Ka{ZaP#X7v5U!~#3|+gcAZE8$pf8n+(3bo*ss zrVy`^5=12nuf~dWJ6zJ%$<^x#@>T!4*U-W z+JXXU~~0AdMP zdwWKU9S%oZUELjVS0iNlen^OLDCh&HdgTDa&BL9|D}UK*6&&yt>=7EnF`C=Y^$N&tGE4`2^Ry~55ba;7NpvL3N&xiAOr zN5oP(&eVY+7-;Bn)*~E=!Yp$_yjEVU9M}fCdFq|$E#u=xMhAteV?{^1tT{(mH5>GM zff5ff>pqDqoZ;^s(t;hJl(B81p=j0kXmi+lkJvy+M`T@BhNs=r*f2KfOdIUDq9U*& zjsL|+w3y5SH2PJ$;O^Gzj<0y?x1=3Z84A}=U}iOSa=Vj+eRT4ABTjmWB`xR8Vr+zY zg6WE;e~X1aKcx&Da~2#o04EE`y($wmwi&KT?!9dOY>?^1OtSd!*OUw%?hBun#i-c=5Az=fni(K~9$e<* z)6eeU6L~I$LCRu>XyE0S-Vg;NMV!^nPE!JdtrY;xwY_xUp&C}7U?7OCUR4wnt~Qn# z##R)5pb51J)X5Fqtx~ize{agmDoFuEFiD4aP*@t$zaAh&JQH-Fg*wv>1pw@E?}?QHw4_p?%Z$%5Z~=D0l`vt z>FNNXa4QPArzZ~l4VTp~R#BmFyDFaq$CXhu(^6$+@GCLJBlk!SHyRnGu)qXcQCVS4 zja#A8vSe82%58V;Y}bX)hi&n*R8H*zMyD}w-Y#Mc#GpdhjO^xDAuKgZGdmY=5>9B~ zSn27GF07;nBo+v4cvIV0OC8ZJW@hu1czCB#(heP=*-pN)y0`vbif6A9;749B$u&3a zYmNdQch~J;UOC%%>tEpQ%;v9If^kPTt5@XLP(B*FB@`ssNEdLwlcj-!TRBvesciV_ zSX$UpD~Jh$xBqDflw1`e|*Exyn8F1;=MfcH|z=$bQlO%iLW6!**XEyeb~Z{O#@Cw_p1Q>?Ieu^R8&78gNTw z*uAg{q9kVe6qJOEF<6`an+Y!{_8zOZbS{vF;aGH8SKPb=&24`r+`#O!4Up^odHPVI zCgBFh(W_Ibvshq3Y;fJG6dqqE{7&nY@51N)80+4Od&L=LXaha37Q9lO1fVc+A|^Jn znxm|Tr=Wo_+3evViuz)TB5F(}&^XoOj=q=X~@;k5140y7)x=r>Cttx&9Hu7HsQ#L zI<~YQq4Xh0B7lpi>&?Gszi7ahS5s;H{q>>jwr8r2HW*w=%I?O>X|P5`;Wfw}?Bi2yt;72ml< z*Z(F#$aP``kY> zVeuckt1W-Ia|en)8mZJD1rbf_lB*}Y8o2c6-5Q4^^_MTM47(TmGw^Fhf~9s95|-bB zJ$Ekmiaci&k1VFWL=!esFbrU6rqjaFTh0Xp@L~=e^C|WOQdnx)f2AN+Ar*7u>h>K| z4QSIY;Y7F;7&@9%`r($z*U_ur2F3=eM&AL?Ed@&3alb?%sEc<`h;d1!wUrEZtnT%x z<(W!f;=wFGkNPG$7!_W@>~TdC6SbVMXrI8E*k>R+Y=xa|F)doR3YGc7f(+gmmCd){ z(98lD?h1|5P@xAmZMV7sHW&4~T6A&#NVQ|;r63PH{=DV*C0 z&Aw^YFYH99b=1hhx?8Q^Zn?V6SCF&P-e}rIG8PtJD{ML1iA*~YEvCI;wwT0f{Z#?TscssQM#^9{N*Oj?U@h!$+-f;e+46J(qgw_Y&gVh<6j$rDX8QT8I&aYFx zn!k2d9XJ;OdvJR~zGU*ri|C0D5n@?+`j(Neex5&4Vk%gT5282gW^~4eub=Z0w08u^ zI%s9Om}m!b!mjfdK<*$vBJUg6@Er(XRbo7uX`I~kr3BN>q!G!kE(}45-1PTuKDWkJgClJ>q^TB`KkY z5X70Qrz8#q#ct5PTI?BZ4!Z?E5BS7=3Yf7REu+1ub0XfJgx~$10E81rJW&Tg;c4xU zz{mqm5y0txvr7P=ZrE{A2(bGlJ$}XN+i<)ESaLA)$I@7zU@&}eb=wUauy5rrwB!HY zb}4AZ0BqVO28_Gw4Sl%|4H!U>=QlPZ0@Dluxzwu>(2r!p{lcL^0G+LXg#B@?)giF) z`Fc&vE6J=yva?olXs?EbS|Bhsf3kyR8rjyp(spQ=kmHV8NM>baRdhKTWlana z^^}v0|iH$I1k0Yt>F@ZnDRAX?Pq%n`2+RtmV(3~4@Uu1EIv5#&x0)tgk z`3xM^J$X3H)ip+s9n09f158GhVLXc=%nl4RM%`$2(kL!pFtvz>Z-ZTp-wO`Aoy$MX zq31@5GW0-%hjf(ccXGFv_FfQ_DdMEy_ye>h>fC8hi=V-~)#-mHwR&J$aF$L7v-ht$ zi*>PYm9!Zz&`|Y(rEUaR%?Tt{p&YR+X8GfVXGiveu`PQro$EL86j z_iJMso^po^eCFkF@QO$gMo@2T><3ynd!au&5BNDz6Cb5%srLHHVxlnQlfT(Bw9cX7 z)Jb~kz;w5P#uGuTT+)a0Bye_11l*7C_P#nUiA|T%;jI+0;*BbHw~FQ) zqHv_o``U-uve>n=X0`TMGxEP-vA{~6MC-r0ZinjBkOHy-*nU&iyk1#Z39S)|15O>i zqSvH7J!mu;2sR+-KNW@GUjuXTeR*gNXr8cD?1$-_X2P`&HwyTm2db`)zae`_SH+0R zq|)JCz*kM6(OBJcAjt5eQiTjaD@(Iv<41-7{O4zd%=Da`qWuFaqv~Vj(^{gA8LcGm z{A}uP(NoZ-{Wn2lbh(SFl}dSsfW5(%+msH9t{LQIkiu8Wp)_f28?@+X^PXczz@j6P zvDU~_g%A>YG#>0!;&ZUVAaJ0pkFnvv@$YB_lVj98p2pFmH^3$W&(SSc_3>zI8Jl7` zQ~@qpa3#Jw(7K{)PL&ORb8m22Q;ShPPr2#M>nShlr3gsPZLhi0E7n zXrX53MJ$wmr#toyWj`AbthWu`9BWKjzKeb;a~+5efniAv`ML` zW;U;mH^TH{uS0ym!GX5FQlyYmi4!O#(T+GKcmn3-0!~J8;M|)H`Y2}qc$~uT*&Xh| zAB>AB_7(|x>^?_u2zFfbICY=)r&p8MmJt+FU+P$9SfiIDZxzQHEPtrE#z%^AI#0XE zJ}Xxdpz*T=YdH7wiE2heHbk!2I6ky2tF@2P#^d<@x0BX&wdtsHjV!p8pF?}AW?sds zx%Rw*Oy)m^lbpc}EC|;C)a?VV44hMbA^toNS-x^H)BES*zJkxp&0DB0AKk{@forut zN2AVUoZ7_DcfPB&(1*~SuWCF)9`tgvUq6B<@w&RHpAC07I8y7qTn$PYcaj@LSCQ=K zY9jJoz%{khr6t*x;D9w6T`W!2%u6g2VyO4mBFVY08vcMU!<9uup>dR)G{5su5I4=Y zSqhqrR0k^*JP0F!GyVDGw!5;nHa1Hu1fo6|lya~KRuDAG403?&V8$^eOLXT!kzsNJ z+GAt`XIJ+EXYeV8>)6POe7g>54Ew;iE#}L^poz?D6uOxlwY;N$15DZol+J0eR|HnZ&d;4mjIC!r0#y?Nh%K@WX0=GH8HXU|lEb@an5-Aj?8bw3s`M~!;ijJC(1XIR z!H!=8Qo}G<m_Cb)0r!GVl zYu4`v!)ot7fIpg>laT_-icelT{TkxZTx2lr+(TRpdI`RGH#;j zZt*MME+bca%kxn3;x#@9ytg*HeIVNdLeCeUtg&aFgkz#j0Gj%C;163sp;cENkHMlZ zrJ(PW0c#Tyx?IS*OSYK#O1B=pF zZ&kfNkWDFCkQzLAT?>o_9~7?h6j6dncV?=h^p1(vNKr0Ww2(}~Ff+nFy+*Rwy(`8e zx9nwX4})+zfT)@A!9XXi<1O3zecs8mV?>e3wvZBByYLYTOfNA&mV~xZ>l(E82oljH z!>={2(U%x|GJ4`9m3lm@#9@DA*vGZaL+CbxcSx3jX% zKTTSD#qCbnFI1-%)F_TXNliq=`4UTJ_1Lw~T{UbOD*KO2+^wGyZQ34quu1 zKkc1)R8!}=#<33ABGTb1bpVbQML?SJSQ(TMf4=zrpTDaFYHv5L*hQCWE zI9)|k96SB(kFgd#0cLri9UON+4mIFL@jpsjA?;eQXV@Mx>JC}hg zSSZZGKPH}yEXNfvHJwWHw&00bRmgkK5X6cvG|<6xH&sX77zZ9Jx|W;MN88nbw*mn| z7!+scIM3UEmJtAL{_luo(#83Jp&OpEY7+6;#)@0FUiMouyk}8Z;K?=_sJf)KAO=~P zbZ5R7H_LbNytR#7o%y$C<|X+beCn#UT{0^9qMcb0tJRhmQg`g=Z-QF~Thj|$!pFHR z3W7aC;}@vPVu)^#n2TuK)kIpQtJOs$hGyalDZ-h(8}`Vnlo#nQU!~{C5<^KJxp2vC ziB?qbj&~C^;s=18(Ne)(m>@7`JG1lio0Y3xe@mm$0#7p@Y@L{trgA2PWt05^mem$< zxV(hYZb&%js?LYAESf| z(6US>!`Kx?HEXd0(^RP>Z1QJQ6LIOi5hqB3c zT-mQke7w#xHEuG3XOcUX0?FE#y+hX{0HD!IubRy_mAtM-^+l0i|D(iq4HQs~827<9 zw%Zj_;_|^_hdlAP?j?lHh{feXYseh;3BLm&2?KHbTTeW5A}%T5tnJN$-eI4!@j3JA z;SrQXoAIZH0YvNd6y_854{P4#J7SWoN#=SZon&xls@kSAjI5Q(k8HNg+GrfXeJFbR#d)P6h+@=33N9V`5;TZ_;7HQl_> zN1cu{9J+RjyJwikiw6e57N<)-bHIGDFO5^+=g@8xY`xmZOQfqZA*$H~ zH93E^W8t+@$*`f_pu{>>!&Q4NyDWRXpf-P+4%1Ufm6>?R7lxl1pL0MOrtNFaofiLU$j|uTOyhEkl+xW!PWMAz zan;fjJ~LmeGv&~XCaHcDFvQ*+1A**@cCY1{Hp91oQbhX$x0@H7a}j`Akri&8zPG(< z*zhfs=(FNppK|xP2`rs& zriBR?f_#kGzpBHKU<~Ocn!XGnnmu#fVfZHW^FODy2g4M!P3K;mM;22A1%}FZ090}h zl-s_Rb-*oQhI%U4hs|dRU#Ec=HkQP+x?{{pn;*IkCD_^p129`!dfqQ}JGp$xQu`I~ z!j}cL!65P)Y3&GtDF&SYgq#aXDp!xr)40UP7Uz1}(3_XT`yR_{ zuJ+-Ki?d?bhJ^K<%G>k);uckaBx&%4yoRebYqgL@Ag&)YEV}T-YJL&)AakOEYVsEh z#+TB2id%Jjwd#{dwHU+YT(ehEf&5NE8mbkWu!4M_Y5qRX08Vdfi53_|W|vgI@$6Og zY5jtYNM64Wcsn)UC3{bIeZqZ~$?ge@Zk|Hn_Z-229R{1Apz<{rs`+vZv9oZJ#(iNA z9z+cNXog(_-qOu(&wcA68IoN2@Ip)Fmry1i@!*lYS(52`5o1KEpEr9wlM$^q{5sb$ zl4$^-u$F=7zI0#uL|AM9|GTQl?kY6Y7A;V(2%CpeFg$Ve>O)W?`MPQZ?uXVwVVHhX`H~KIMr4KT`W;8etGngo+tB~dt;~R z;WB707$a6zr)isnzL{3SQ5PYzdJ1lg3x8MsNJ=ERoTp@Ay!ql7?|ufs87gH1E%gt# zTe4r_6rh>{Slj6-Avayk&S)DsEQtGJI@UDgh-&%7^~#!yYyZE~(7i-S*fS)sSZ zL(n|HT~&h~fNcmOpRBe6#kQd?cEinG#C54?sdb55ICaB>Sa00A_hrU7f{lg>Z<$4||qE(=E-l~-!n!iqFscL28V$_3*<{Q>EDp(}}T4tz6Yq zSsVi4s2?RKy^TZg)5t=n#ZMbmRtPkM87bGmR2KlUeXFCzuFWu_5HwVsxOXO$yDDcK z{^Q%+gvnVpOmE+_ya*ctSZb8Ob?pt5es!TecpqwDHq9&2F1#lvQ3H7t{{8RRF2K!f zh&AUQW5F+lHP`Qa%X~{>yWYr!y6$YPVN*nAgW#d31C*du024!%-~{>1*`HoxtzoSd z5N$yE=5b8osser*J+`N6Y0kG(u>RyMBtJ!R*-2!z8Z1tfV>mt0{A z90ouoVyZ}^muAL$&E6K0lKI(~w>2HI1g-80cC)(nfjclX4*gTcge7u!E#(z+n{6!2 z|BhKw4Nm-104YQa!;!vTD_yM=ua5%P{U`ji$y6|}gHNX!oLOnqxmOKQ{VZ0{uvXp5 zwa@KC6WiTo&NQ&dLLiN{8yvXEFbGUskXL~NUC54gGn#1PI84mfm&C%aoL9aSo@Ecusy&%8T#TYc@#=E1%P1gMh=YVk&_%j51pNz{ZU>j z{*X>Rpv(GloZQMtk1O(iacGa|mwyB6{kxcHg*~N%NmyCI3?XX&CtoV(lUh(B zfkR}OL2+OQyeNMNck=RzThMxp#kB&X)UfJvIJMla-Rr_m#t%d-C>;O~HY4Lb@L(tY zz%Hn_rCR6UKM_>=;TQcz?1~%jG&VRoDm(nP7%~og9}EC?-{j`xIB@ zDGz^)2tXh&_Q18|5~#aQ?YFg9m{HHi6HkKg5(sJd!8yn^oCbLcRa`}2>n#wj{~4aP zAZJ_C@x1sm9xZzrOrZ}>C2-Bth>K(Q)vY17zP-_-tG_KeV4N;!6>tPDtzCKb zSG-yR%^oc;|MP%;sj-U_41VKJNADRzOpR2-{;I@sA&ex51i|HV+?Nsk5nC+?Dv=3WF_hSlUl$nG(&98k2T3 z0+s>u zd)XiBwB50R4G8K-qxZT7bzl%U5zq%^$Yg|m?whMMEa;Ke=tk}$hBji0Ah$WBNDTSn z!fKV9F#X8*?2tTQAH8hu-TOM~D;t=)==l2fKLSZI^;kBofr`=}gNsnbA$b)|N)&V} zuWA>RZ8i&cexfWF)d2&8JuPI-dhvOg>2$jjZI8m*9pjgd-6G_GECDc1l=AigKitE~ zvaQy~DAR9n;`bHc;VQ@h%b&8Lc^nw~_+gMG7xQT+MmV|QeKd~4xRc5?s?|~OJ?2@# z`*iWt*x3yceNe%0Zml1V_*c1O|3j8K88QbF?YH1Y6t;WtE^s^s!29UYeOv0vnDkW> zk!2Zvnw_t$k$*Db2@z%ZkA(hmUmw)Myha2bE?#A0R{qD^@@xv5ePn@Be%5$OcYZj@ z^4l8yJv$m+1iK`tXR}0e=<79fMb5z;jdpRJc|2vv*Bx%2(<2fw5LrSvM0Zd}%xZDT zxfJPX6UUYJywFs*ZHw8PvFN?8ml_ViNfMrkq>=rDmC`X2{}!dm=!cbZHAvSR_D6=v zYIE^?Q^?tV=UC);5tJ~|tkNDe)n!D<%vY%t5lyfy;I?G?a_EK#NZm#6o~%iRk2R_j zZCTWI2fhgrbJ~=K;_sv1B_q8L&>S%FJ7AL-Monav zS>1r!EZ1g>5cq6eCJXeSx$l$%nr-Y#8cVRZ5&a2S2)QOC+xXcPs|pp@B4rxZ`_1z# zuap=qWw$kGNN(`sf8g}EnEwcvp0||Li%y^uCh{|-?5m!g_mQm-fNy(4$F7np7R7;+ zeLGmj(l+&aP@#4J>2-N&zOr4y45w}NjxWZN1 zcX7z0Hb4Oeqx|B{ZXx3asQ5ZrurXupe&7#ufJE@K*LyefXNJkEkDe_9;XkF^N*8?1U|9-QK~WH=D$YK>=r z{{#30J>V2|2uf(Q)8Hrq+6&Bgv1b|XFxa3q-PG4s#sxm{=H(HkGb4yjeZ3Q{yz0(&>M@O10tT!QnPvieyD$PYd}=Fmjx!Ehp%P%$TO(OiSC z^tjzf2=9Orn&vJCj({<&*y2ll-kCOsr^hiPKUjArQDfF2UAV6NxL}oC6&DbvQh)s8Qz-um%C7 z-*vKoA6zq_|4jy50UHG#9+@Hnu>@_p{!eD1+E);qV)*~~Xi=l*Dku()CYfG}oGQN| z%HT60neKZ<=Prs(1q+y=LyY92(AbNnk1E5= z9r|-J`YCL#O!bg!aGQfM3Jg{XC6Qf4PrcjMcOr|QgG#bGaYKpE3dQco+dc$sJ7Ye}xhK3etM4Tu@*4u+<&N#IEL!GvgpQQ{mRMuGxuL`Q6`6nt|1?1TB>&ST4p&U>-nv?q!_ORF(+;c8e(B+Btv#12c zgD{J}U}(m*HzdTj0w?{XPSKa{L$5_ak!7naJ)sk61Tn%7rs7%lTKQ8v2)}xvUkVVn ztdj=-YKNK)?pa0OZX<{|yQSdiC2+RTUI}JbC}`(tx|IzU>Y3!YL}6rni?B?zeaz)z z7KMlaGccl??{@tqX6?%RItDv49!Ie?-^zh4KWz9tM<4{RYekt#auLna^YolT^6$Vl z2`DEEOPI&YuFsBRIs^|D9*EzrF$gO?DVoU#Nnw3w*x{fc%;<`l!$p#~gvO+NQC%O9 z0eC{du%kFODLY8!>YnH|Bt)G9j3^XP%M>iTWJiims_aP>Qpr|Z?b09@GR&z6--@3R zY&0keSf(I{ON8z5qI7a$ZO&qm_n=hMiMgjw6^(`CU@{xTn;D_bIxT1E^FZ0rrqH}3 z9&eG_SV#e8;f@o$`)F4ZTNR5v5Mi=vUn$p(Hr$K4@@7iA5l#OFk-Ox4?1G7cvaXFy z5FMI!S$F}Q1}V4|FsZvCx5f$uJLLYY=wxFXihxwc{Qs7H{|X-+ZsC6od+EQ=42L@P e|GOtCl4?|0$@@h(FySu9S$}E!*Mfa+U;hJb0}4J*%0HOvV6tNI4RU!dIP(ek?0gQAZ^iZXPcn~yz2uL{sMh=Ef z=y;?f9VCSiq#LEz(7D5(@85U-+&_1oXU(3OwP&xr_j=d+&cxj{M)PorZ~_3pW1x?^ z54JO)<(y;#&udnNonV9Xxn=HSigob8*?HLmckFyTo?(5SIX{u~v-k3L#=5I0s4A$) zOFH@ZczCNRD!Tn&2L-H`qhkB4xhXgZhll=SZvfynJ~BusF8(|K@V+rX>6rPyUtk2? zO~N&{ukcA(2^2|lMsVLeyBX#qdrWTO^0!Y;rLmE{9S@0_#`!nU?SHhAe{yWOr#g*U}S6`qAgxvtH_$e)oAj?~xL(`)I!jFQy* zlCW%Jvz@xDEjoA^4wMXc8j)R6+B6=ouk^ocUY2~?x}qJOk>9D$=9I^kn)z16i{qU| zA3S)#oSzpX#I?0C7~))l@+BKWx=)giC5dD}d?ShNVOM$SV23DUf@mz_&hycb3j*A^ zGXIa|85A}&h(n=Jk_4t@YZk&K#LYH8)*!meT0&b}i+{Y65p&IzEGZ|)tx zN!kiuaLIy#WS!NKLpKNTn2VWBASR^gBO7iDEvI-ZVB2$`s5^0p_! z(DwEhYHMrRtUneN@usAtY%y~aPl<~DSy6E{Dk=)t!o5Zy5KJah8-qC?5fO25RVtn% zSFA1ncIxt2(30Ko-w)sl3fKRD2?#`hGsyY$>7*;AsB$7|HmlyBcY|RK5ArCbx%D2h zw6-jL#I7HYrrMTGWNHKn!h)B>R}cZcy}d8u<55mdaBvgY(u`s7I+D$oE>I5(NbX`bI`5cXtH~3yYk)@YiW+0VXFnr~%18LRjK{i=%NbUvlc>qw?}( z=IK>@c6N691_nC!?(u6LY+=CXM9Zr5&lzvtgm-rviD?F#SHqWX;br~;r+eYT1;D+* zSsj7kiHnQ#z~Nv%nc?9Ot7;EOYisML;^OvFO#596i9Ner%ohm>Y=GILN4gi2q%<|ho`yVn^azDU=hoJa zunn1LW(TjvDR%^{%}Sj=4;>pD!&##hQqOB@N+>HUs|K#ajkDC_z;GQ;uhg#(-ex_0 z9hRv_8yR`IzV6e~(vtJ}GdE}SF<_aBNffq89Zk4jINU^`oKsLxaG-N=bGM|aIQCO0 z?2e8~z1JAl&DOHl3j7vFFA8BX=}eqFen zTyxy%OQ&G4#FCN{9Y<%OiK!J9E4$=;wV$v(m^wjub0sDpH?X(2H@>vQ2i(1!;^gcs z>{FAKB{6m7Ef`&7KqnS^?!x(|=B~+^rK^2GoSHAUlV}_KGX%YQqRsQ|69X7^^VLl{ zmT!mJ)z#&>zvEk7T|NGbkS$>fLMZK>M$q*l>$;f2N5zvvCR(k9#f@srDT6zA#0U0V zDn(Qrd&LISa_w>Ls~PF(IRj2g*fI5TIyW2C#lUm&QoB-?$ZHu8k9gaj`djm{$wpw*R@qg1L> z3XRygm?eunWORXOnkV7$0u>b%?@+?$&c*g=9g6+z%~U}~qfAWr8uvFX<*lmwCwDhl ztXK;o$$z_m77zvypd4IWk+sWM%t%`_*SUTM!_CXu%?**Bfz@cdaQm%!J@K!Idbh>V znq?LXZEAYD_dPOlxbRWNXPBVi^$*!lU@B_}RZ<6!jEER#GGBcAW|%Yw9;E?m4uDeJ z6%7sXnwpx9zP=lAtN(;U`{y>ytK2hNS%}mwbOqOUMO>NxV^@4vW?TK-LsL_X;0!o6 zWOOIGYCZLNwIoFQV$uYN!lS@0uC6_#iRr7G?U*}$=km+TRjxmyhJk34x_0fXtgP(a z!eLd9@uQrB+imnA{^iRikQhoF`y@VFRC4lZ?Uk&EYk-BiCpshaeRvoG+|<=YSd8H% zv2_hSbe5-LX&oGrlam7&8ymxAWpx4qkOBe%9`jV?r}p*}-%{ip*uz%W)|6ez^7V%Y zyQ-d($Ad#cj@AkKIkpAsBKcbQ0xW-=cfII=uiIUy`Y}E^8Bt(L;H{h2k2ns%U@%oA zQU~8QRbg|wOQ-f6frQV=kvz`EHaSl#CrO+D`oH|TCDrQ?o0H}-vfKOay65lj1US1wG@Qg?l==GbYhLgz; zM{z$wND}RT3(YKnkOSUHOiPve2L?6`4Gobo=9&JAFP=r+!^1&$R?s36Bs#FF>49g; zy#JHr2BQ=I5p&pj)l~&gOlju+qKw6SQW@lFw^hp7pkx4H&YD%dO&&jI27)DRE6R<| zG)iSg`I%DU4##k3fRcThB`m3Ktt^#54S&Ukvxz(24F7NJM42l^0fj<=AOZQfgFI!V z21<^3V=yw=@WO0wrd)Sb;eKfReM#@x?yrlCI)0eeI_vfzQ)8`L1=PaUjXBE7YL_Br z*GNrVTpW%-w1TA$YRB@{RAO^;GxY4)vm}Wg zP_*lE?iY+NEbwT33C%t(fB7 z+oD?bEC56|ozPMF$XC--RHRV8L|R{8M}eH{|4PGM=mH1G=((RN#CF_=C_$lG_mrn+ z+8Lbf7q_9u7vJE4={eq)~O(c^B&Rg?5x9- zuh!l&R9aeEPlHgYWEj5AV&xJD>}-)=rw`y3 z4oNGEjD(W&9wUkgt#}Z>wb5hRR2iR=ieU z`BxOVJ-4`7HDFc7(9m$XiA!-j6E_9{o{d)XgF5QZV&GQ3o0?2~WrtPlh~Z@>*8X<+ zBx3+z_(8Jkfmm%3Mky&+ltJFJ5uBpHWQYs4=;x z+Bsuh?xididKg2TZc*L3vsSudM#fYX%kJ*%yng>4xk8&vII8|SkgL_{@VY_#d4F^=T?CVI153;i8; zuT^!Fn(t|e{XQ90RaGNqNL`)Wt3$YX2173`H8s|aPO{tGTe}(ER((DT|=&{t25 zK8a?me6hEYdg7-fcu8I9gRk=*Joz-vw#PlU!c1EmxGK_?i!!F?bTiV(z zyp76q{dSFN+!<>1tKZ~0Iy-gz{79W{cp2fuMU5S1uBzAcNs#kjg%Xa3?d=6m`N_{L z7PV|TQYf|I{3%7;R_w*MnKp;cMgLKTM<#5<~y_dxneX z1(ShyCivoTw~$@x2M{=bAl=LqXBrR{3#tttcn0+WqXUaY>$aT#+FlaP8t?XbrYcgH&cyENyQLr|) z7AHo_VNZYJfXq*t()@uu7b+AwcysrVMd29++OYr9=?&&u=7{LJB>!NuNY1h7dfzv_ zQc^iNxkoe&ljwv*M4GoeUC~idXx)S?jEuw&WHY0pUT8qw85tR+dH?6Y|2rj53b}&2 zl0@9GaVGGz(#AOaA}&@AgN9NXp^>5kZ@I^}Q!_K61!Jt?r_^L9d( zNYXFViD_Tc8lfM6#p_0Xs(4mb*2G4r!`e)i8n_y)5h6rHNx2lu;L?OzMv)K^VaG81 z?*rI&GiT?#<_LDga7IcCURE#EVKy`>>d}vXTe9MGR!&Y>BbtL{^9(LgQZg$ycW*ks zo!jBE{O6*g0yvz4FCA)FMwXYCw=v(qFXp=kZD`)QOEazL&6khmahVs9IO<~})=}3o zj}lK$W>L4?n{Rlbq!fy9=w9l0SLL&7xZx$%)zf3SJyoWa#u{fKPS!485TR1oRhu)i z+}A{HUTg4~E4Dc1=Enc#pp#&x-j)97__)+L8JrK`)pR*+ette7DJiM*tl7rGerRnJC_$c{SXwpGY$ayyG<3|dL_~$1( zzqGfA!#{`w@(%V81MRtZt_;?4LB_ME$z8g&G^l#&3K$nJpxkH8X2zzM>o&6cb2#G=+Pqx{8>q?gn@d={ct zT$ypQuD26H0qtM)6N8@Ovgo@cSBh=E3?SQq7 zjm7>#%ZnE;f;-IHn_nLo{P7Zdbi1@;9b6hhHDt}(C^E*#OxMUAPY|MBXzThd;({KGCil6$_}z60;wAwy>A8~EIIzw zJpg9#+3uXxa#yrLwKcYw*9HLaq^r1jdRhh7gL#Fe%6nT6jPYkh6T0GyBO?TNcXt3A zW?S>!)%L;RVMu+waCXq$>yIj5zHsPkt>4vRmOssoGB{@Qf9nts+T7B*9$i(rX{KylHVv{AQ+)^+3dJWOu2{+4CA&F{#wj280n8>xbUU0t62jP#s z?LR1~sC2akTmyi+ySv{?yl^hUf!1`vp>~#5TsU2Ym5a;eK&=0=N*swz0mZPkwYA)t zsnT5o7v%Hj&$;>)rgiqQWSl?lZm*L*d_W;5Cy%2MC3bDQ6`K0?a%J@F=fHpk&*bgG zsIBMgtTcNlI(hYh$)L)~r%OBNoi&DWfP}>$JR;VNnQ3)}R(Dqa<4?EM>w*oQ?*!EZ zcWlz#y6Ho!qubpLwd*a-=TA!8WZK*5D2}>mjAy;E$m>}awQ2L4U2JO_W;aDeMK4Y! z)FA*WCVm(Hhy-f7%G$vjSNg6m2#4RhyYcM$<>tGywFZq|CC-&|S+!9|je;0KK|!pr zA^yEj>ovqGnwms_&b9PHts{B4Nt5j~tkt3u!~f!UBo-DH01W0x(HAHr^!$Xe=V`Dy zAhSEni}ma0Fk8p4G(=nLM?W5EozC3PS5vK*N+210HSX$W;ik7yozu(OoSNOa`c7-Uj_GM~5*D>@ zzQK!P808wQ2gBm~?dCiW85kf{RaLsF%BrgJ#>VrKlJrS7*47Vscr>>7sL-1xvYu&Z z5I(>`$EOi77rs4O9q>Cv=tFMYB_z1H2`DKkee&q&=-&VMAp>SXVa@L0k?sN7v7DC3 zq-b^?K6msOJmG`6HA$^BgyqX2Qkc{L`=fF>!|?F%i_M~+{Ewa|(Bb)>e?=8=)G`Ui zL`TmHxIT+|{~iO_K{k=6l1WVEGB0PtN!;AsJHoI@29uCMCRns z^YQaL=LKvFq|9Nq&0pP4HP2pLUo$Z=6%2dR(bb^Ir)@3ZafdVBdi#s-(3T7oC#e<5 z_M}l4a&=k^A1%b5G}1~1(l9eK`%Jv25k;x_1&x2MU4&ab`CzGDPF~*Pd=JS(0Tl_l z^M_Rlie;6X=3K5VPx0z(oNrW9_{U1p zhU(4`e4Y1(1Xx(lY;A388OpUv!d@ebU1qZO9tlw4O_dp8zUv4EXMN{a4d(6jd2fk! z(P){G@SF`+kQlxjg2zAAb~yQA?!Q;dUV) zRQs0ddBFS0!WUap_7={w-%DzpO;Bin**a(3_QOtxNeK}JdP-e(W@hwfh}h=APlCA9 z6=uEf2%ciac83<_1X3xdalvwB7{A7@4x|-)`vwIAsJ5=feFY;XCWfY!*vQF=Bfp^F zbw7eEf?==A0mr>iD_YQTO2psP&kE=5nR}QdKZRZ?dgS8Egl13uoi#_X@7)FTs_%>o zyI}hX%O_H85sxeJ=&pOID^t>Bzi2G=4W7bZpYgr9Iko>zJ&Fe`QEnw@2Q7xzmQ zfr0xZ^B1Rk$OOJZ6m>d-@b4oeNk{crXWnSF-NAwrkXTYu8(SK`O{Nsm2TaSZ6&*G2 z=)vy|J6}P_?*ekKVA`?yW3Omj<_Z)D20!wmK7INWKZ|(l_wV1MQkav?;Cjq_x1Zo~ zo)!2Tv9a|S=c+WJ`<8Yc{4)f%X(}B-&)Zz5*YbX?xceWH{h?9ruB=$-UEP15%epP* z(>sLmP47Z#mK16B76;SRG&-5R{#SXCq~%B?{KjM`O_8%9J3-QlJb(Wt+PBR8{&+y+ zL$cl5d9HlwpE$8eC(AhB_edl5D(YHVgF?F%xl(19H^vGgCz%tIS9smO)(f?Wb-HZ` zd|M@Dg(srx({sA@hO;;SKuPrEAO&*OMey4K&pQn*Ac1X^(XmBT4R+(ZsfSbO`5bLn z-4XLt^(Gca`X9VeL%DP=3Yc_ zM~lNvxjdQBW z{r6a><2Q`(x~~#=!|NS{Cq{hebh}3Szex5jihAALdlSx$&BkNdH9i?(ITxK#G`nN? z;NP&vUD2>2%Ki9W3#QPy%v=xtXeuw*{+=XKb0_Y1ajhf12tIax{a{bPO1}A%iuV45 zo&7E+8K+nRC7M-_;7*hu?P5Y^ zyn@u%OSf<%NA3$Ryq4|LDf&0AH1D~upiLNU(c1Sj;R`j{wL`e^Zy&TGWex|%%g%3% zqoTfc5*ED~5Y5H_S48$pVkdtWePILoSqa`lDcyuANpVyFg`S`nkuxH*ccg%s*pN#> z%4}2D>wN7aZTe|pF9+fqMBn$v`(9hup3QZ0YpXQ8G2Yjvc)*(HmTs@`Qoio`1H0t> zl1H!PPb1_a#HH0x&h<3`ff{Yduocr-;3#b`tE*AY=9`eRqP*K&I;`ts^G9uG?y%{w zsN%dz@vN;fj*+PEoY7IgstCa}ps;`h0IaATY;spTuH6fwUb27)1^s4dx>iWs{SA2! z`}ETNEBzCHN9Z?FvOa4*nyj||y5aZg@=MG5XC|8oWdW$ykGZOFeZos|67Ji4f0yBg zrEwAJ``pK+wC#SIpBQe&@64N^XbgDDrec%G4iga*rmHk`2RDJlS%NUnPU(4`PSbK) zVGb%FqktDYKGf|Z;P2ysQ=QB{LbxGeOE~G=k_7W2-V$2yTPpl5a@J9F;f)YFxj!iU zxt^c0G8*R%1VNBBR*1l-KGl$szua&mamwyROp9;3q{t`E6u?Op9ywb>3f zV$u#*wu2lecTY@2C|UHK6*l8TpCgAk7aE_%iB*18tV0lf_S-LI8s9#Uq;I|T>($vs+=uPQ`=~MLY=ILJ(WxVabg2_*m|2*3-8^lmSwt}&! zQvC`L*-*H+xDL+GK|-4|N$VdR39<|UCcuB#!D#NnT z?NjhG)ACmM&G}w@e=q3uHC0 ze34jMTAB+`jn&wxmneHFk=N08mDHN8tZjPDeRs98U2ct*9lb>q<$C$T%0=?YepptS z_r9mS*eb2i(A0zgSh%>da&l;5-dkb0xetqV*iuqbmO%aa0u-uRTEx{gHSRkzyqTh& z7zNMcf9xTfoFPx`hH22y(G_n7GpS|g761JCV-B(fh`$OlGAJPE0_Hathgf)c=s<*@ z;N5=E)9#YCT{P>n31wHZ6C0`Z(*BUrgX4lSvSV&*?no`5%6IzEL&(w;8{N$s`W2gXtGqJU4**%MFge!QmY ze|NbKv;!5W@6~*XLG9B$lp#z+Pw$HB1{@q6$@uw+01+2i<86}0luLklS*z-BmClXC zTdQP*+}Z!dNPX3egP+{za|9uY@H!Wy1MY!EXN1LAzB~fsBI}Qb=+(*QJK;rt5~Wr8 z>l9vIUZ@);Z&y|qs1%8ah#*;N`nQc|EaMg>}Lj+CJkJOEWZ21w?r28EuY$8C#x zzfdcNyLT}y8nYKK&^1Z_V=!Fs!3yj0I@@{ae>@}%1kcPEsAP(aaV0t?r>95T45a2Y zH_zA2Pn!kBgEC!MsbvTcL>?%1=X+ikw z25D%!x#j4{g92)~=sIf+k9NGj9m=aC^F&v3x`c$NOV0M`ielD~;BB$P6T|l{ZS$uG zrK}EE_?Na;u)*4Ae8WchgnmD%&>6vmnk9wwAIPY{p-f z(fh)0^Iskx4sEYfRWYs~hPVo#=opp^RQ4+)tnNJrK69;<|Ao08#iu0MhOR0ZwGV*N zdUZ3P@~yE!B8#HQKq_bHQOngphoJgQaGSNp>6-bI?^WfgVh5PH`uLSKz4|p)a)qcV4-#(Y@?7@k z9@Q%D9(-hmRp5%M6iqO!D6dlh_8eRtUua?Py58TNvjQ`cQ*h;ptiYQK_mq^IF@%|( zUIf40FaUtyM{7EQM4>6(Ns5b$>$1xUhycwry_cp%6Nt;}?f;a_{*l-4{YnW6wSI9l zrpB1kgfQ_>PtS7kd=>t2b@nPWCi9(AcY?P`iO%qGdLK8>Y@qA<;;@UU_`T1;xWlK$ zN5C^Br5KYavj&fDpQjfA=g9R@F>pH?xdbfQ*x40){@k?}M+;M071)RIoBK8Kx zsCS`-VxWS#xyo*Y?qq+FzDO-grrrg)<@K$ka5O$v=HMU@M&Ll9yh1cXmEeD&H9;yr zDKk%HJk{v!2yfDFA#2Z~!E*z!@bNJ;eyya!U-^Vx$(`< z)qSW`%3teWT%_03)I2yj`Bq!@%c*C%JC?SUI3pv28Uv3C4W@)1|NK)nrsiK*1b1%m z*LSl*t_yKsMVO;2ML2-DpGi`(1-sM}-=h$vWg!p)X&OL$)n%sf!IOlIKya2|2jVLg zA*^Y&IbMj{=(V}5VFa@CdQK1>wUAT$U^+jon7HlMWXZXqWo$d4uccu4#b?E29{cgn zU%30CpCHPy8W6Q=J`Wtop|>7%&7COj7g_h+g(gzE_7lfLyc;(vkHB;}bG>sv^F<1D zroLy*7W~kO$XPIsUH(Sxi%eB1X-~$~W7s{G`#j(HX~DTsl|I~u2+5$&=H|b-4);09 zlpR2t+V%C_@tANwdnwI(rfOK5M%x72Zuogf#=y$qhuJwk2H3-6Ba z)nx9OwVfu!pxf_awD<%4Jh=RueC77fdl)WZ2w&t>z)FE*bBaUzk}2rARoU%?igEfD zCDS{Xp3xHlZl{NGY0;gP=f4QdIV&nv)o(c*#FSzwH4DQbG}(Z#CB6b`YZk* zDHsfq&hW1VfKH>rbO{r!;hvA3@LtdK7=PkHn*0WzJ;it0UG)x+^Yak9N_yfR?w-TK zoVimD;8|avf=0?~+U{Qs_|6G^zrapPv0?gkpmaw!2XyZ4DGJ89%-*j7!8&ipUG$vt zyuPOwj`7Y)u2e}4_j0R^=l7v{1Zd*l=d-o}0Q6(i6ssRk5w$*j@~lkL@rzv$<8qnLqMUd8L!51PYjH@JQJR4X@k+ZB(ncuWoNCcb@UFx zgkL%kwX90Qudkn#Yc2PbDEBE{t;85bbQb-dD@fk8>nPlzN*hp93(2UctIoI=VpI41 zh#Sk0JTO+LPHz0`wg%}B;>HHQFADICWCp|LHLQsCN`fMEVLx8>$3=HB4@~f4Tka8Q zgoq|C&#O+OgI%haBTEv)$jIMq$3hGbt67Yj1>xUU6gGO~!Er(kwrGMuQ6qokNZ)D6 zrSRvf9;DD`nrq%SHw!F4@Tewgu9s)WFLj@}sT@%M?ELvz^W-l^dKq%1z5LlwY|y($S!f);JI@ar zkwIwGOIV78zcP-Z%0liC4E!$O665l;wEiG@bca!4>{;BI({_bAp7%Y4HfWj zmQ2df#{yohtmsxyiysc0y#{}MfPQ&LkckN)&yL7`!3Y2;wBbiX>WFBxFW7i;v{rHa6##_;v^ z_1c{!Rd`R6)cE-g*t?*k^IL*|lEMkusJrEni6NW$73^&(fCAS2Pan~rwKdDGC?X0$ zhm=VhB28LVP<Qlw~+KN}vf=40UE z!tabE==B_tWbqc28=5-QE_tCmjSBo6T&>$QW1*{dJojE^fETm1)m?k-hrXwsorbFs z5D+{dBb!xaXJrk3USMBbU24O|*(r=2Xe z@ZW1g8Spo!U(1wlCrh;beutA&ecRiDH#FwL(pZQC#q?}Ux0qZ0UTY4nIR-s=vt0Td z@rlm{2dw_fD=Q4i{h$AF5x?TY$;w_Dhf*Cj9w8xOoNi=WD`-&vWi}3DIN{@DY%mg@ zOG`t*N_S7gQDCpd4he$bC*)Fi7D3mwezQ+?U!R z-yIM*AWVQC5T&)!o=-YSQjmp4HX`*Mn?8mR6gY3|;g@-Wy^FqX#D5umAW4+bwsf0zXH>P z1FR8?kr72nd7x4(P~77fw=`=}R0J4_4?yvde$$IjFBNa{Ht4HQHncrOilA-VJ>VKSjXF#$bu|@Ek+%? zbo~meu|=uwe*X1BuJGbt*mw?+y>xq;Hdnz1!#m)e{um8ikUnF27_53zUt0Y+u(v=kf&8bNJbW+nEcoR-piyeV3lHMXlXC2U1p4uCpcPGw z6OGlsO%C#XC9tO_$4p8s@BPEedvLyb=*CDa>$#`qnmzKBQdwD9HjT^V(~XaR#C8L? z?_|lT`T!P258`7u7KZM7^xrY6VeINaMsxg7e0on2N( z=fQ{MWL~cg4Jaianv08zNWhgq;PtNXqeqVfHqQ7eOnZAXT7SH2B#aC4c=4`0BPwbS zPo0+}E;beyv^U<7vg?_HMD|h8k!*f`{_o0wB3St1Y&g3O3i#cOE#S4fFfuj@&yy4x zuFm(#Qk%J!3_N7a7ysvbAP9+s6VODe1^(w9kpIGKF_ZV0w--M~*ocLDz_)w=MR_&3 JavAf`{{`E)bzcAg literal 5607 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 T!miSRp(~`Stff?{U>fjma>I0e diff --git a/public/images/api/qiskit/dev/circuit-4.png b/public/images/api/qiskit/dev/circuit-4.png deleted file mode 100644 index 40057e4762a42f6b2179490b93911189e51ac8bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29666 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 diff --git a/public/images/api/qiskit/dev/circuit-5.png b/public/images/api/qiskit/dev/circuit-5.png index 558583ca11a19c0af9ab37684b8b083958715b04..bc13896f0b3e4c4a6bd7b31e22f3de15f9906970 100644 GIT binary patch literal 13896 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 W`SiVB58!X7P-uBoxjdP>5B?8ymf&;% literal 6734 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 diff --git a/public/images/api/qiskit/dev/circuit_library-1.png b/public/images/api/qiskit/dev/circuit_library-1.png index 8c06ea7a57c59fc835e8b6e6195f2e90e9f88688..0bac395ed940f9b02ac4908f191f11437866c3f3 100644 GIT binary patch delta 41 wcmbPeIMHx|hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`HEU05fV2Q~&?~ diff --git a/public/images/api/qiskit/dev/converters-1.png b/public/images/api/qiskit/dev/converters-1.png index 6c013dffb909ba1f0d968bef678eb8d8a94aa1dc..a791a9bb8fadec8abfe52df5ee25fde4255bc095 100644 GIT binary patch delta 41 wcmZp0Y;c_5A!nkakWo@nP;8~IpPN`xkdt4MlbNKKUzDyduc}cs#xyAf05aeYNdN!< diff --git a/public/images/api/qiskit/dev/providers_fake_provider-1_00.png b/public/images/api/qiskit/dev/providers_fake_provider-1_00.png index 69d83403d080abef394f770fff26c806b4ade973..119c30485d037803baeae1b9f102dd97aa08b5f8 100644 GIT binary patch delta 41 wcmZ3Nwk~aghn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Dl00RT<(5U&6L diff --git a/public/images/api/qiskit/dev/providers_fake_provider-1_01.png b/public/images/api/qiskit/dev/providers_fake_provider-1_01.png index c90ab5576c145014fe55e5e51ea1f14659db93d2..d4cd387a6eb2767d1731d046f3dfcddd949f210f 100644 GIT binary patch delta 43 zcmX@Lf$`J^#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36Ao`eGcXJZgU delta 43 zcmX@Lf$`J^#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5dlC)+a$FI< diff --git a/public/images/api/qiskit/dev/providers_fake_provider-1_02.png b/public/images/api/qiskit/dev/providers_fake_provider-1_02.png index 85e6ddb575fecea8f17c6fec647e014329543dd9..f674e1c93417effe9cf0ff4dede4f0ecfa4afbfc 100644 GIT binary patch literal 10941 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 eRL8lwR-H6}j%B36AUR44Be+Ll% delta 43 zcmccch4I1{#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5dsPVliU1ON diff --git a/public/images/api/qiskit/dev/pulse-2.png b/public/images/api/qiskit/dev/pulse-2.png index 3c19c58ad096dcdbb06c4b879aeb15455129e7fa..9b0675ba5a5973190501ceeb68c96bbbec4f7530 100644 GIT binary patch literal 10716 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�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 RSRTT9XnD1}xI6zo{~vXsy88eC literal 10974 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

h4knTk zyhsL;YFBeEPBWjV1_zwnPYt9_&&cSylu9w5EueLq9vpRpGQ7-sCBDRy;2Q)W+46*| ztCy5rh$3&)u$LFL%lD}zx4zRS24%O#s_ozYZq+Q#PoPv$v{$|18Y&1=M=hhDcu)Wy zmk*RWCv$F(pU;9(FO#1k>PYsfD}v*`p;=G@?l)*fJN)h#*Yy2Sz1(Cdj4@9=yp{Y~m}_b3wwe>dK4y@sCrHI{pq z^)2P#<#PO4&e2cWaBRK1{<#aI7Z!$f}*bIvoJhIo79- z+HY3pr*sz{n(FdOoD9u|%8sF53>Xmi3W&@2%HRCyXP9s<`FX+_66^6(wW!nn{C~gb nspl_pl>7gS`X9~iC)_IvmW?Hr-2RaVr~307ujyXh`1k(;D;Dn9 diff --git a/public/images/api/qiskit/dev/pulse-4.png b/public/images/api/qiskit/dev/pulse-4.png index c0c11f36af538e16b6eb2ce3fd35de69f42880dd..277e557c24566b18b564d2b234b0f2c12b98d258 100644 GIT binary patch literal 18989 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 XBIj`A*zHe*G)YTcK9?eS{jdK5<7D$= literal 16415 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 bt3?Qo#Fg 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 A`~Uy| diff --git a/public/images/api/qiskit/dev/pulse-7.png b/public/images/api/qiskit/dev/pulse-7.png index b0b8edfbfb37ca76246a9125b0795b4228536211..97aa7ad75c6a1eab3e78a8eff7d16ba9a70be3c5 100644 GIT binary patch literal 13921 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%0AgR$-GbN$y5*)2Rz&dan z*8ccGoM+-50I+JbqeY@VCeI|PK<|7Mw;ug5JQAsMY;5mNfb*;AwJ?#MTLC5bUc3Oz zq})uD*jn~u$N_aD7mAo>z7^AC^UGsMPJX^j%tb86ydiC?j9XZICQXuk0$E9_?@)7N z)OigO5)xtQ&Q9~oFc}0aWocVaDPIERD*VL@TsZs``Or5oGi|}Z(U$cPf#C&cu(s+U zh8u2fWT$MYhTLNEUMn62HtMGC zSYAu(u1sAVN|+k#s;R*?o||v$ZON8dxOZ)*r{lX{n6<0VbubUOA8eZhT=^PtG|wd@ zs%Ofosj-OI?~#H_wSOdvP~xk~uRjcb(!x+Fw*$V+$v-4EBVe(j-OZT4*r+n82R~j# zPput4BKB12fwW#)%KGoDtBe}XA2v%8ST5j6BL2l@g~L;5nzEN0Igd(~>N z(ypDCwDq6!O)WC*AWFZ!8cGqegg|6-&6m#+Y}h!(}+MACVVs2JcAlK$cE zfSE7PBhMiV5Sx>*0?c4942AwldXk7j%L-akyUzdzw0!tmd#0WCnb0mc}BwZ34; zsp{>e28R$BNuv4<+KA?WPXi?t55^Z1BZAs$2;>{$QCuvPq4wTY4;Yb1VQ1CnkZafD zMa}@I_61=U+^$Dv_QgKSN?EW9jEs-tK=*WXbktuOu10%dV+;U#PzjSC4}50VF1!HS zhuVKH-1~eQ24Oo+*+AR59$pljg9x2dP~ZbrbilAd5b1H_<=`a+CG3Q#s3`a<^#MeH ziWsUW0ls)Bd9}5*$3UFO(5sXXupHE(?qc$Bezn>J1rJ)aDL6JD9aSJ%QO|Sw%|w9) zAaR0F&lYNc2Ald3S!b4ZvN=n*laX+}-%M|$x3X{>-U@G8cWWoK0zCa+h3hq^Ob>hxzP>?6A z=X)<7*>*wKMCUei!j^3Q0d|2Y3*Cr`G%y+H$>M{>QV+vk9uLrnsE`Yb!&;O3V{!(AheEISjSiKY+O?W~= zC{PK>V0qMpF%&fzdJMhfX1SV*0Y3>D^5xlaqSSnl1y#zOp8y>}M8%v!(FUEyJ2EnI zx+^mV{A)K0vMMVpb6_3-M*G}px^jPj{IZ6I$sh^?Bp^Tx;mKutH@23?usve=Oq7$H z;MyFB!fvw0ci@&}A$e7LC%(s^c1?I?qcTds@C!aFQ-fPAEg#IlSd!q}kyE;+pn#zc zk#pS|@l$D zDzq@;cSaBhegbf0fK%wIQXjY@AQo^nG&DHoA;#pvi?sw`QppTh7(eyQIy?qf#LmU#?-ITx}cHS*&u+2;G`NxUqN{RdmaE?8+9{+DOk?gS!B)G zE#Rl8t{5;h86c!54O#9rs|nbH$_H;1q`*($qy&{V*Vm7S^YMpfWY{kb61%v#fYJ06 zka528@pQn4^1=xKTRd4h0N{ZXN&xUKF^2hTmp+3v_3=i`xKOzJ82Q$Cxgy*~^RaH+ymg6JEPOGf&ZDR0&MwV4nRDd<+#USuI zweY$C==Z!0F}uQK`pyaBu3H!gNz^5dI{D28OHdm$+nMmyc%pH;{GF{WFd&l)2nbAf zXEOlDqf~woOw{z^Qh?E6szQ;n0Z?mBPbpSJSL>=TV-$FSSqEdX#q)%?4RG&A*(hRv^qdn(MdBoQEF33T!RpKh{VGdYxq^`beVqwjc<=)7I}B^$7si|E0*X!uk_8t5#-$A+6iQGH3qvKJ d9_=As>;Ba|x!kZ=c-;$8lvS4bD5d}G{{iGZmAU`` literal 14140 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 ACIA2c diff --git a/public/images/api/qiskit/dev/qasm3-1.png b/public/images/api/qiskit/dev/qasm3-1.png index cfd725bed9b488e6f1e4e8eb217217d67bbe6960..3cd3c36847d30a4cfdc9037a0a0c53df5f8fce02 100644 GIT binary patch delta 43 ycmbPuoN?lD#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36Aw37i^$q!Nh delta 43 zcmbPuoN?lD#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5(@q8eWx^26 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-ControlledGate-1.png b/public/images/api/qiskit/dev/qiskit-circuit-ControlledGate-1.png index fc6eb695ba38c21e2c31c3d522d433016bbbe365..a9e8e25fe53579ae6569e293f430da312a86d7e6 100644 GIT binary patch delta 41 wcmaE){789%hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x@~ delta 41 wcmaE){789%hn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`Ek80Z9=MBme*a diff --git a/public/images/api/qiskit/dev/qiskit-circuit-ControlledGate-2.png b/public/images/api/qiskit/dev/qiskit-circuit-ControlledGate-2.png index a531e84b8103e4988c24f7b206e375299c43b85b..61bbccd0c066d3e23cb9cdbdd996dc1f79ffb9af 100644 GIT binary patch literal 7178 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 SsKB`#$mo`-Ud2s^=l=_1DbXMR literal 7344 zcmeI1S5#9`yRIXMs5FtLNKufY(veO;5J75CdT#Zm;c3SV~_p+XYY%Ban8jW86#O^t;{vQ@0s&`R*bHW8qHPKs~`}FM*XSE za}ekPKXC9~z65+TOhe-Ye8~7bG4|1eI{5h8c-e!rZG1djp+2rowzvK4y}X^E?&3ny zLgE6qU;6lXc*_b4yZw(7grHuI!iaTaJ>Vi&Jf50(gFw_ee~$|=|99LV5F5L?ijsan z7J43Lo_at$$0EYXW6y9>YDUrmX=p&5Ri-tL|*m#qMWhRVBw zM={aWjQsSXAOHVJ|L!Ajyz}5e-0JF!?w+12R8)3zjh>8*jMrFM2lCaEL%^1qhJmX$ zX3x)rc8WSWJ20@stXczo_R_rrV;tBd6#PgtF+IJ1bNFk_`}Yp(ztS&KP*lI@zkZ#8 z;hwNCpODbdBzL{~?u==@Jdtr#*Nc+46!(3(T^WUC=c()xe{B-ev)acXmK2%pQY zh+^sHdq14Iw?1O%Z_4M%VOdA!LOeZ1ot&IDCJFtzFK!RU%Kr>|hiuEP@l+c1or_fs9*C0PSzZ#i!c8w@BPi zA&{b~swxz2R~U9ol^~D1oS2yCvojHI0(ba38P3kmLSsMN-i|MC91KEBzn{xPxHlpy z@-nO&X0Zf<<9xI4LH)-1x|rL{!^M_U2oDdBG~4^2uGoZxqO!7g#8bj(19X8G=?I_p zkY?L(B~7@FW+R`~*h7;MCIZYAT4$o~i!9qfdUdo#?j}bWWaE*YosW1SIa;Qsto{A{ zcX@c0Jfw|V14QZR=~p*4f?w+!8eV#Yc+U<_P&~kX3)QYREmt)+ZMet>J(bCI4IC=9 z6DE$on<{+_Q80mk$BiyKx|wbmM|Im!5cjl##hQWR5h2qlHn&dVKp zXgCR3C`st4t6vEW45Z09_d&4x?~Um}JogrrVq;@JNw_fU6>2@p8cMFRlNY&NkxutrGW9=HI_jjDm|D28M<%u_`Fx6V*7D_Lh2j`}&@nnf*M%uB0o% z+Ua;*Zww$cUXqJ4{vCv~xVkAOG*bA~Vp+hX>b28ZoV{#_Ise)We~cv zGLk~h54O*3uI8uPkJ~v`$^ekOdT2Er#>dlw2Z}pU=Z%J`q#*WR2Kt!EkAVR$8JYCG zJ&*40?i*6>Y!nm}k#FCMIgQ-4O5hvW-h}yLpF244epO50m6gp%7k9kQ$k?02qxn=z zE5EfhtFckqDq)lUIQg^r;oe}R72EfiZd)(Qz+84%*yN;LOqK-20M(NxPxABguW@oh zR8=o2DJg;Gf_BRHcjs?)etP8FR4Y6wbj&Wt+=gf#bKGK`OeoE1kIP6l_@foPFu4+w z#UzMr6@igLfHG6p)Wr8*xh*fBb#xTanf2&9N+yGQmVjMLuGBm6RR}gJ?(N+^fOJ^@n~-;GBWaasZk}Bw0-uj5%p~t zdLn2RH|fqJUGw11vw5K-d9H;h02dyz*+B0lCnb$oTe-OjPESu$v&)Xb%k_$Mw6bMW zA4kz*ixi1lWk@3ni}=y4c^CO6^KqJb3SZ2RnC_&YSsg~^Np#$%N}%Pi3G%LB?oR`4 z%N&C6pxyr@USn+RRgeI)W<==L))pf(^Mo17!hhZu)Cx53plt5wRn6BzGrpg3GU�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 TK&%084?*frbW|#otzZ8esFO15 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-InstructionSet-1.png b/public/images/api/qiskit/dev/qiskit-circuit-InstructionSet-1.png deleted file mode 100644 index 05a9da72ab1c496f61a8b0c15ad68524bc7722f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8936 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 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-Parameter-1_00.png b/public/images/api/qiskit/dev/qiskit-circuit-Parameter-1_00.png index 0a0c10376ae2fcabf7be01a3c16ecce5db1649c8..feed10a1f8f9d90cbdbcf9404d287efa935c1df4 100644 GIT binary patch delta 41 wcmbQqJCk>Uhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?xUhn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`F&004neg5&!@I diff --git a/public/images/api/qiskit/dev/qiskit-circuit-Parameter-1_01.png b/public/images/api/qiskit/dev/qiskit-circuit-Parameter-1_01.png index 7e52b6b0b6a42e3289dd5fb71559a0e38365622d..310467d8c73c4dc76d4572fce7ab770131a1ec0c 100644 GIT binary patch delta 41 wcmeyR`Ac(xhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x00000 delta 41 xcmeyR`Ac(xhn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`GwU002^$5PJXs diff --git a/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-1.png b/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-1.png index 04f28dcf5871fdab95058c330ff86ceb798396a6..8d30ef8c737a34d1be47f47143b3ae5f74d85d8e 100644 GIT binary patch delta 41 wcmaEA`qXrShn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`J8g08fk%S^xk5 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-2.png b/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-2.png index 7e15aedacae225fe82988f360037a617afd228df..a96b151a2d3ccb675717001bc4756d241b95ab92 100644 GIT binary patch delta 43 ycmZ44$hfkRae{}OiH<@>Nl8JmmA-y%Vo5rb5>@8hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?xrb5>@8hn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`GZi0suiV5K{mE diff --git a/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-3_01.png b/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-3_01.png index 402e8d5424e0306908f1bbf552d781166b04ff45..8900cb9a3283786409c98813e5f577b297e9fdd8 100644 GIT binary patch delta 41 wcmdlivsq?>hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?xhn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`IA60suJO5Cs4L diff --git a/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-4_00.png b/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-4_00.png index d91c9542336e989117c81dc3fde1cda11ba24e6a..5b2a4cace602efa3ae7d6c85fe47e1c22d21192c 100644 GIT binary patch delta 41 wcmZpaX_T4ZA!nkakWo@nP;8~IpPN`xkdt4MlbNKKUzDyduc}N+403F~B^Z)<= delta 41 wcmZpaX_T4ZA!n?kkWo@nP;8~IpPN`xkdt4MlbNKKUzDzY{8>cs#pcT#SGhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?xpcT#SGhn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`B>10RTXT5KI67 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-5.png b/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-5.png index 23e024238994e819502a71bb5fd573fa6f134f1e..980a76485e09b3334b9f7e72b8e65fb6cab505c6 100644 GIT binary patch delta 41 wcmeB^?30|}A!nkakWo@nP;8~IpPN`xkdt4MlbNKKUzDyduc}cs#xxBc04o>|4*&oF diff --git a/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-6.png b/public/images/api/qiskit/dev/qiskit-circuit-QuantumCircuit-6.png index 952145ccc457f73c807dc36fb2d797c6f69736d6..6dc0f458e3f2d28ac5ca7221f576e7d81ba5421a 100644 GIT binary patch delta 41 wcmZ3WxIl4&hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`G==05ebzSpWb4 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-AND-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-AND-1.png index 3765c59d712c9ad917a4f49b55bf303310ee3c3f..b88d48db18ad076ab7f8ab7c042add0b064658e2 100644 GIT binary patch delta 43 ycmcc9%y_4nae{}OiH<@>Nl8JmmA-y%Vo5Nl8JmmA-y%Vo5>n-J^( diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-FourierChecking-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-FourierChecking-1.png index 281ae00895b7563f16dbba17265e3da4bbaa624f..880f4138db4238b5c517d6fdd93f71009cac7597 100644 GIT binary patch delta 41 wcmZ1#xhiskhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`E5L07tM80{{R3 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-GMS-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-GMS-1.png index e511b836f035ebb50b8f383ff3fe0c7070b9659e..d0c3c7dee05eaf6b76cdc485ea7b32e0f76d2de4 100644 GIT binary patch delta 41 wcmZq4Xvvu1A!nkakWo@nP;8~IpPN`xkdt4MlbNKKUzDyduc}RhP05&8Jy8r+H delta 41 wcmZq4Xvvu1A!n?kkWo@nP;8~IpPN`xkdt4MlbNKKUzDzY{8>cs#Nl8JmmA-y%Vo5Nl8JmmA-y%Vo5Nl8JmmA-y%Vo52PG*u`eo?x2PG*u`eo?yq@n;di8`Ey+0RT{-5X%4n diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-GraphState-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-GraphState-1.png index 113e473400b40c3bdd58236a3cb62851fd9925a5..a670d12b20358b3c491ebd8e1b16bfae38e96817 100644 GIT binary patch delta 41 wcmdm2wXbS|hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Eys003Dw5fK0Y diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-HiddenLinearFunction-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-HiddenLinearFunction-1.png index 4a0c48c90047035c3976e98ae754965973bc2d43..b9ab8640d3d24d83d66f5f23ebcd1bb3068134d9 100644 GIT binary patch delta 41 wcmbP|HYII>hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?xhn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`IVq0RTmy5MclS diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-IQP-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-IQP-1.png index 98a957ea72f78faa3f3c5dd694b06e37ffd40937..df9b31b9bbf5581ecda492c9d8842df128e77844 100644 GIT binary patch delta 41 wcmX?VeAIY?hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`I(?0YtA4^#A|> diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-IQP-2.png b/public/images/api/qiskit/dev/qiskit-circuit-library-IQP-2.png index d39fa1267ef920477ef3a80ddb876531e609aa27..c47b161c41274070478e647cb9dc487c8e2bb5ca 100644 GIT binary patch delta 41 wcmaD{_PA_2PG*u`eo?x2PG*u`eo?yq@n;di8`J(;0RUsx5q1Co diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-InnerProduct-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-InnerProduct-1.png index ada2e966ddf38d13b9d3148929e28d41c5e665a6..ed06485760d606f37369f23229976ab20bf8c226 100644 GIT binary patch delta 41 wcmbQ0KP!KNhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Dh80ZC5~3IG5A diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-MCMTVChain-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-MCMTVChain-1.png index 424e79afa9ea72ae716f37ce7916c14e03b92b82..959beaa369421f7e179c1efacaefdac079a0e41e 100644 GIT binary patch delta 41 wcmdm7yt#OShn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`FF(0aA+)UjP6A diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-OR-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-OR-1.png index da6c20bdb3985e793dbeeaafe8435fd205570773..8fa60729e715c7af61e99e644ed4a4a65cc91bb8 100644 GIT binary patch delta 43 zcmaF3fbro1#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36Ae)|IeY3>kU delta 43 zcmaF3fbro1#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5`|S?^bmtM< diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-OR-2.png b/public/images/api/qiskit/dev/qiskit-circuit-library-OR-2.png index 0dd49d07acc41554741d21e928da912405ad5659..8e4cc31c2efa07005618d40d4945100dc1fedcb2 100644 GIT binary patch delta 43 ycmaDck@3Yu#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36Anmhnzdk@e6 delta 43 zcmaDck@3Yu#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5Yw`d9adZ(& diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-PauliTwoDesign-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-PauliTwoDesign-1.png index 5eee719cdff17e0959ad7562d0cec66a256bda93..1959dc1561e1d70e6119ead7efc9958fe90f9662 100644 GIT binary patch delta 41 wcmZ1#v?^$Vhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`F+x002gc5ODwi diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-Permutation-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-Permutation-1.png index 20e1ce83d137c4842c446235ed61c4254d3646e1..8d919899dafd1a97aed7cbcfcacdfbea64a162d9 100644 GIT binary patch delta 41 wcmX@+cFb*phn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`B;r0RT(X5T^hD diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-Permutation-2.png b/public/images/api/qiskit/dev/qiskit-circuit-library-Permutation-2.png index 05032eaf687120f795b12e6b16830cd1fe76f27d..1793ba666739d349fe12c5f7ab22520168afc4d5 100644 GIT binary patch delta 43 ycmdnd$hf1Cae{}OiH<@>Nl8JmmA-y%Vo52PG*u`eo?x2PG*u`eo?yq@n;di8`Gj>0Y!-q`Tzg` diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-PermutationGate-2.png b/public/images/api/qiskit/dev/qiskit-circuit-library-PermutationGate-2.png index aa5f8acfd7e55505717dc4e55d9aa21c31f18c30..85e09b265841683eb49c8dd6b01c09734581fc64 100644 GIT binary patch literal 16028 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 yu3Jc+WRt9=yHZ^;LYYs z-ATojl?r-#^hhd<(QE;sgjIv_8axEN!a(KB7Y3h0z#Qry7;yCy#X*5NXKrUlHajyj zgp@bxPEAdLcM@4$U5zc`x;f44x;l)9U{VDdV%4szv`DJ+Qa8*`;Ua^d4e34`RD9iA z9U<9uS{dYSX>Cn&m}v;!sFF>SadWHOKX88b?D|LHC+WUYw{9`NxuVtWcj=z8ZB1m#_GLYx5!=DYY5a7(MEVbs%A%}l=dZ_5>Ls2Ny6?+N)GaqPmn{~Yx z6kk_RP#7(Lat<;ExrlpNH8C_(CEntA_csy%lRgE;wY1;k`P;2hd_w>)=0-~_t%vex zF2fLsL&Fh12_0Wc*8K!Z8k%5e1JW}vn4cc+y%%$02VL@D?erqM*Xx!R`Q6nK3W(j{ z+FA)=MzYs$-jLY3|L*5xy7>$j+RA#hZr5PnLNE>$e1(#-GLIvr&ui$773h^C5j*vtWqr{mhHt>JuK@xJ+}^wY9gOnS-ouVJ^2d5Zb{;< z{gosai#@h2FogQ%&6`TF83_pq`<@prTv#{#2-w=()`k!9fQ>-xn6*bUBLOIsOrn&p zL9HG5yfteCRNr{T#OU4J+#KEA2@tM0<-sD;MwFXF-FC>n%<;))qvhYj?Qyl`BcY1L zxyc%5`dePYm9}Fq3@U7XOVXV?7dT?#O$HvPc*-Oe+qG+C(xkk2d&9 z6dKjM059Bftn?B6^@oJf%n~8KC;M~oE4@lv{pTY|(*7)y=pGSy)&&o*uh` z^@ojYOxH)io94QcB;E^{V@F0sIUQ^muU|z$5cNS7vN*k(7yhgk9|hY8Ew+~Tf|li4 z8nT486P0AJ4&L)m0ZpRfO}vQE2ma`6yYJF?W|o$LFb{%w4hYw}Z}OE>2nh*&`t<31 z{xD`2AjRKH`!`fxG4H2HY6-83<&_QHu0u&mbNby z6;0cZA7t_Trfu+OSU-~{y3t8mZy^ZT+1O-GyszK9$xu^MW8IgIXFpk;cA8WRAH#l< zqm>=KzXypR2dMY;>(_DubZ97{hqw0v1XVk4QC<4ZxP<#gs`tSLrkC0g%R#d4zt|av zr`mITa`LoYBUc;qk{00p12tI{cT2ABPbcpk6Wry6g}}FO&%^xUS151Y-QD9_wNR;Bek6#NJp4wz?wqe%G~955 zhld!3{2&86&K+dyC*|r zg@A~^E+kabZ^YR)goK6ueACEi=CqOhrbs&*fkY2?bp#qk4!|7@sZE7Au8j&-*Vb}y zaVdE>hi)&l!=hcl#P_>vhQzzuTXS;I`6oC!M^k3i(+104Av(8l2P~X?4HJk=k{7%9RI}DcFd28gWK`$4R8JLjAC#6U2%)r{JX%u3m0`59GJIkr7 zQ^Mj*>Flh5jUgbJKpb`@Rslg02iet@Yr}%w^iP`cp>?2IW5(fXyfegXh+AQ~P zKo?5EGHROun=8*B!$!e^_hsF`&`k5mD)X4p?C$&b?^9Lc`3NZ}6!UdHBgi$w$`$~_ zUZ5e^`MeeOQ;ZNQA;2A=jNnWudDGn}7f%@I4^bc(1A&P;a@lC~0YR zR-{rmjmTbwDoH~;Y|p)9wdhH{1-Xk4Xmi7M)NHwQH*0ber})u#+I3lJ;H)pJsziYq z2SOo!m)8hv07&*z%<%#Z&-YTk;^&F+_>8~c2Fs?^-<~Qd31qB7MUA;;QaVqqO_^I?kAf04 zpAjP^3nAYIxr#tQO3TFW=n>+nTjeYw!_Lm5 z20Q?Bf&qd82MLXiR&a3^Slj2HxR%1ahK7b`e&xr$8ZGj4nEnec zAcGa7E{;!|BjyQ?;1wH%S?q_f6l7$r7{LMh186WS*d0K+25W{KHNbp`f^AxzG|J)m zC!>$IL4sSrL5z;hPFV~lShNy@*n^M}U38-|JNr|2M6jBDZR7$iZ3svo3%r0UH{Caw zy!O|^;2BcYQlyXoP$)h?E?d1$foTaq72>%72YhnYKyL_u;KIlhU?E~&yIipO(K|~$ za3ZEY7m@*J4+|(?$7j!EH>c~JpwMCv5lRptG4YGCGNHB@Rtkh(%0~#l;OkpXw4`Y^iZxk_T2KfA3x-_zmz=c=9c8ur?q%D?HXKMqErT(9va|qJip# zx=(v%%cR7Vft3RA zj+MbK35Ti>zPsykF^CcXbsh+;8dDYfYo}OIYH(q>3d2 z{@Pp+&nO&Z5Z9)5EZTJT^F?*55iDID7*{|48_I8T-)zi zeRrvVV!niS(%Mul9c_TLKI3pGlQJ27Fd|pdF+zZk&kiLNJPvF`(rcFxDkbog zz|WtrO?xbmVFoCnzF7Bvx*N920cRz$f#QsQapjddJG8_kF~~kJ7jPn@co)~5m0MH2 z|9ql312o5np>P;A%D`xD09`@oOJwhlLBRv8Oa;b=1O$`NVIyD-#U>?1f%)^#jD_#9 zu!+z1oy1$-wEXqEnz5%u7mHzxvm7!7<$Ogg8J_tH#)_%_^2GvH9aN&fO%znsBTp}{ zufT?oS06qQsi>#`ywL+x=k`8DByZiqBnLap63I-Y!(MBu+MhiJ3IUNs1jel#)jDlN%Y?xI2i`IQM{-K#Dpp{Nc_N* zl$8BF_@L@%i^MFF9sxj-n&8w*itj$d7nk2JfL^`bAdr)nk5fI18bW3x_#0%Z?5C1* z@s@dn5wP(X!8wqJ5{Y5m;7-lIWc5Q37w}X7(jcF{0t@devr>bZ&Zh2eRc{RwC&+5d z0E)`HtG8hRFvo?|)YLG-0{B9Za^_cnk-6pNP>fRooJ+h2z12*y-N{>I&5vzV=OGBg zRe&#~SFT*ad<%$0MP+4T;B*Ky+TfQDt*k76cElc^#liu<=Us_6&w(g;0aX&T)bluA zUB)k$>hs>_V`=_&`oFLaNE#3Azo-A4L{L_wm@@I20$!1S08_z;O#Ruv&>3eVBEz=% zO9FGI2P~xucQqTRZVhM0PhHl>D}?3f@<2Xfz#3{_c9qnQJ{&F)5Gd{~x;PD#5Tlsk zse+)C$q-_Rii&n6h*FR-3VT>I!ZglvkXS%QGe^8?FeJuLay1|8-N~H*SjV18_bXVK z;sX&y4e{m#Gte;Hgi%$XX{sD%{8m;+3iJazIy#7R-ol(DkG}}2;_1jdlyJRj$BTe= z_P|^6fPBDjwp-~;;lt`t&Q4BF;|aepUhI;+KbR)(Z#rLwn+pPBX9-jLt&E#@eSt)z zVvu2o5C3!h0t0$iZzEBhb728V-Tt>Ao>7e&Ox(8(?r zlG8IWT?N5Oyw<#M`QCdrA0MCOYBZb~1SBN9_(w;;b}%OvR+>w_j8fKivRWgOSwaV@ z9mc{1vbwduPb*6Z*>FiUQ4CO$T~t)ps^V)qCfd?V7ipz+|54QeRcp@Er!t1@L${gFefiy5aBI z1S@YgUFV58%?NG>75I0sTTO$5<)bInz)`R26(ii-+=oBksBM8;&mk_(*!+@05ws>; z9sB-$=<@QiY|jZmD8~4=9w}r-mJ42u)_c3x9ZY-E3tLmdd|kM&;lqD7A?FH&2{^i= zTG`vIrp(0(QHBfT|IXjol6pH3L7)~W0+OczfNpKKvszA8 zJK-f8g5$?$RE-fikxVzK;ZfSb2~4gw1q8hTd8+of>-}>eme#u1xB>B|e)_fa>M%`T z=`a(mYvQ>Wc8Xz*z;l7I1hf2&SQ+TGU$@rb;P-F}WP8q*~5pI zfW`@W{&|Q&Ho*O>IvAAq!rUWl>g>Wo#tzQj!GR*2<^%s51M$DJQ_>+SA2DXv+`gvLyCem)7BJ7fQ6*^{2_un z#|XOuU`3$V_y&4_FD6IlW1SJ`;uQS-S6N|RLD`f1dyrar?;28gUDtE5h_Dr7V6bE! zC7Grp>Yoin^b8ErpA2MivV`)ef_rtu0u8dZ{{GTYx>6j@Izq~T{in{_o==27Qhz1{ zdHKK;9?4}RWk;Bk908H8y|-=2{{Q8yHkv|6VsAp&V1FMDq9b?jsLB`0n!Wfx0H}wE Ao&W#< diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-PhaseEstimation-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-PhaseEstimation-1.png index c5289057f405f54bd0817e7ba1da5738630b933c..cef1dcc8f4589c3019b507d5e07f0720a81a00ad 100644 GIT binary patch literal 12189 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 literal 12202 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 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-PiecewiseChebyshev-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-PiecewiseChebyshev-1.png index c841bbdb1309823ed6e37b67cba68090b43d2ec7..3873e237d0faf3de981596252823e4676eb421e7 100644 GIT binary patch delta 41 wcmca&eZ_i$hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`JV+0ZZ`^HUIzs diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-QFT-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-QFT-1.png index ae29298d4f18ce05ea22148f08b8bac9d514441b..050a27d162c70fa8c19926f30e9bd3f9b398a490 100644 GIT binary patch delta 41 wcmdlJvnOVPhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`G}o0sv265WoNc diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-QFT-2.png b/public/images/api/qiskit/dev/qiskit-circuit-library-QFT-2.png index e767a72c734e8c17eda8c7921a51086c8a154032..397c4f63faab098ca5e65229a1e1b5515a70df75 100644 GIT binary patch delta 41 wcmaDD`!IHbhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`G-w09uF;vH$=8 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-QFT-3.png b/public/images/api/qiskit/dev/qiskit-circuit-library-QFT-3.png index 167e1ce73037d6bbb0701e9dd52633caa8b23076..abfb0096369c251cb53a238d6103ac6723659be8 100644 GIT binary patch delta 41 wcmX>ScO-6thn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?xScO-6thn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`JLT0RU2r5ZwR( diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-QuantumVolume-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-QuantumVolume-1.png index 604f6320c966ba3ec02d3d4ebf80222233857320..d7113cf41a77d324a30d88792dc2ff01a239e7b0 100644 GIT binary patch delta 41 wcmZ4Mxz=-nhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?xo064`CX#fBK delta 41 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 diff --git a/public/images/api/qiskit/dev/qiskit-circuit-library-XOR-1.png b/public/images/api/qiskit/dev/qiskit-circuit-library-XOR-1.png index e190744dbbda605e85e58a876271e09bee48b851..cda3332d6dd36d399eb8f82e108b9605aba3cb5b 100644 GIT binary patch delta 41 wcmaDH|2Tevhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Em_0b9usy#N3J diff --git a/public/images/api/qiskit/dev/qiskit-primitives-StatevectorEstimator-1.png b/public/images/api/qiskit/dev/qiskit-primitives-StatevectorEstimator-1.png index 7455151eefd274a504918f6aaff1820c42ba8e69..bfb253827890d6548813d4cbcbe40ae485081f3d 100644 GIT binary patch delta 43 ycmeCY&(wLJX@ZBGiH<@>Nl8JmmA-y%Vo5(^b delta 41 wcmeB-?2Me?A!n?kkWo@nP;8~IpPN`xkdt4MlbNKKUzDzY{8>cs#x!Le06iWLpa1{> diff --git a/public/images/api/qiskit/dev/qiskit-quantum_info-Statevector-1.png b/public/images/api/qiskit/dev/qiskit-quantum_info-Statevector-1.png index b479a528f4cad11103a132bea039a2e1cde95583..11c02a2f4984c6b8dab13684943d70a9a244ab63 100644 GIT binary patch delta 41 wcmZp(ZnK`?A!nkakWo@nP;8~IpPN`xkdt4MlbNKKUzDyduc}cs#xw<405bItOaK4? diff --git a/public/images/api/qiskit/dev/qiskit-transpiler-passes-DynamicalDecoupling-1_00.png b/public/images/api/qiskit/dev/qiskit-transpiler-passes-DynamicalDecoupling-1_00.png index ebd67d791f9d27e6a202aa8f72c9659c1c9c8c6a..712692edad408b537b01f4d21052631931e484b8 100644 GIT binary patch delta 43 zcmbQdiE;8K#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36A)H5c?MFek5TN?oYV7w6? diff --git a/public/images/api/qiskit/dev/qiskit-transpiler-passes-DynamicalDecoupling-1_01.png b/public/images/api/qiskit/dev/qiskit-transpiler-passes-DynamicalDecoupling-1_01.png index d157ddf998be7d502e5c617108e7a80cbb473c6b..fc0b9bbefeaefec6532335e8507b18d073236970 100644 GIT binary patch delta 43 zcmbQggK_>2#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36Ac18mLTc{7# delta 43 zcmbQggK_>2#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5+Zhc2W}y*L diff --git a/public/images/api/qiskit/dev/qiskit-transpiler-passes-FilterOpNodes-1.png b/public/images/api/qiskit/dev/qiskit-transpiler-passes-FilterOpNodes-1.png index 647001be4896db54013c137621a2839d18a94025..fe7adbf1c23c6b72afb40553d1f73443f09ef20e 100644 GIT binary patch delta 41 wcmaFL^OR?Thn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`J)?0suq#5OV+k diff --git a/public/images/api/qiskit/dev/qiskit-transpiler-passes-PadDynamicalDecoupling-1_00.png b/public/images/api/qiskit/dev/qiskit-transpiler-passes-PadDynamicalDecoupling-1_00.png index ebd67d791f9d27e6a202aa8f72c9659c1c9c8c6a..712692edad408b537b01f4d21052631931e484b8 100644 GIT binary patch delta 43 zcmbQdiE;8K#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36A)H5c?MFek5TN?oYV7w6? diff --git a/public/images/api/qiskit/dev/qiskit-transpiler-passes-PadDynamicalDecoupling-1_01.png b/public/images/api/qiskit/dev/qiskit-transpiler-passes-PadDynamicalDecoupling-1_01.png index d157ddf998be7d502e5c617108e7a80cbb473c6b..fc0b9bbefeaefec6532335e8507b18d073236970 100644 GIT binary patch delta 43 zcmbQggK_>2#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36Ac18mLTc{7# delta 43 zcmbQggK_>2#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5+Zhc2W}y*L diff --git a/public/images/api/qiskit/dev/qiskit-transpiler-passes-RemoveBarriers-1.png b/public/images/api/qiskit/dev/qiskit-transpiler-passes-RemoveBarriers-1.png index 8b71e9bb02d90708675618738f92c4e5eaaed31e..7eeb5f033674eed2773097020eb455b9076cbf3e 100644 GIT binary patch delta 41 wcmdnVvy*3nhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Cbc0suAP5AOf~ diff --git a/public/images/api/qiskit/dev/qiskit-visualization-circuit_drawer-1.png b/public/images/api/qiskit/dev/qiskit-visualization-circuit_drawer-1.png index 23e024238994e819502a71bb5fd573fa6f134f1e..980a76485e09b3334b9f7e72b8e65fb6cab505c6 100644 GIT binary patch delta 41 wcmeB^?30|}A!nkakWo@nP;8~IpPN`xkdt4MlbNKKUzDyduc}cs#xxBc04o>|4*&oF diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_bloch_multivector-1.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_bloch_multivector-1.png index ff2783365c95641d97b4b10f2a58a2aea4befee6..2fc807af53f9c8db8f6dcfae539df0cd20814847 100644 GIT binary patch delta 46 zcmZ2~m3949)(IYRCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B78IThkalvjCg0 B5W@ff delta 46 zcmZ2~m3949)(IYR#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFcmdZB1kJ%mM(b C8WKJL diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_bloch_multivector-2.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_bloch_multivector-2.png index 40310e3ce1d09abe155cf1641978ba8225501cb5..67e0f13443b1d8663f57040349ec04716bb75b4f 100644 GIT binary patch delta 46 zcmezTiuLm=)(IYRCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B78IThkbMO98qH B5kvq0 delta 46 zcmezTiuLm=)(IYR#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFcmdZB1k3Ed>C{ CbP~S+ diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_bloch_vector-1.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_bloch_vector-1.png index 52f176633f84d4d81ea1ed5d58ab4e806a583181..398d11f43e6c494efc02ca6077438c9a4aace8aa 100644 GIT binary patch delta 46 zcmaE{m*vG?mI)qmCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B78IThkbuH5c?MFcmdZB1irk^=y? CloD$I diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_bloch_vector-2.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_bloch_vector-2.png index d7293d2a224541bb0dceca47e3744ece2a849344..867931776e2a3c55f07b0e7424052a81573022c4 100644 GIT binary patch delta 46 zcmdmWjAhp`mI)qmCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B78IThkb?C;H5c?MFcmdZB1jmq67e{ CO%iti diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_circuit_layout-1.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_circuit_layout-1.png index 03bd56e5a48b6251029b9e90f9700934a21865e8..a325f67735b7c0e611eee720e15c132e42ba201d 100644 GIT binary patch literal 10056 zcmbuFRZv`A(5?q3xLa@rclQK$55e8tVQ^+}x4;Jp8Z^7!9tJ>?jGFE&bc@j z=jyNet4407)?RydukN>>x8t-l6tOWVFhC#>wz86(4)C1u2lb?da~t&n3boz(MQaGJrr#P0Di8y8gMxApt%_w!cqLtJlQye6FbwM@eWA zke6-}(b-z-SPrP96uHEb?Q{EFha*N#y(c|R$DeZh$aixzZGDJz@us1)g@s2Qc(j&d zGKgTz!Kc?m4`qm0 z7zl#)f=UrBj;`|;^Ag?EsV5N$Zc~0El63rxA+6JuM6bc(&^ex(oP&8f_9+_;|>KQ`jTKld9kuXaCsObT#E1> z6U3l2yr$KvX&2i*avT%oC(y1C9IBBoJmn43={zhY#%Wy zqWGGTzitejho7M85AOLQAd7k=a~g1jSl7*Q6HH{6g^jI$rdaWOR`c!W!a`7HW+t9I zeqa}MMMZ^@rsl}rOtI&bc?}?wEPQ$EM+kIJBSfpHCISmpB(-^g!oY;nwsSyRZm|YLPF_Zv;ewK~dND^M_t+O0R&CSJ%=mT}ECOa?ISdJu9`S0dI zv~+cmmD8u^<|5y|+)c5tvi4QJuX1CDwa2#o5>g}4(f8vO8R2F_bBd5sbBE_z-<+)8 z9=nGnsAh4A{?SxZ8@xT=^gLM+DppA9&lUCd_`9dgVcJd%*9jv&I@`d*_zpH_*0VpLjP50;4c=?+hLillbi$U+44vA@v{vG=Y@c zYNkkDB=9eb+>CD)rKlIOr>AE&zdg>I$1_=%Ki#W$A1CYvqOo7|cx@?lp7mq4451!e zq>nh^*4TK&Qrc#cWKY-`aF7^O>-{?R6QRUWN{^KK7?}=Ur+K+W(RozkqB)DoQlC3fsHMTQ4 zHr7|Bo&)!|B_nWG@bcml+5J*`bHbS`4#7EGtQ`R!kz3o}{fjNj!a2lnn@bO_&-cT` zy80Q#ohv~cQpGd05)zbYX=$;su~IfR;6w!m;ALfHg@=#74mLC~q1@Qq%nQQ|2Pvm} zz^P>yj(==p~H7hSf&!NJ>L72yA??Y?KD4tw-;S#2i{dpb1l zqBcgg#u`bX!A&b?#4@5~r5I&@HF^GFqxfv$6YhH5M@znsz(STnIWs^cS5~rR{P$nc z*RNRH+uJOhoI_WKi`r&p|1!sno_nMEL2`Ckr7$*29AXF$tPHjTln%VEo$73k)18vB)g5z*l#7cT^`M zqKdMz5d}TrFMGiA#v)6VnTOhQBf)%>HW^^+PqA{9}q73S-ln7_izEnG$3YRJyQfD3Q_aT9k_qMUD~S#1t?}@d;J=eD#t<(lkJJC z%{t;(CCMi$MNbO2C9VUFy)7fAeIu2q7RS`^_4CGwiC;3EcLjljbuW}2a7tNuQvy^? zgXsQCG+HqUhWvD}FB^0(8375^;$)>wi_QJ1^hj?DVXuEtP#d9BjjSpCxAVA={$@eN zosom?)_cydR4avWsfX1dVdXmaWJJNFMps`X;zi+XSjET2+PAy*%?NFby$cMzR}|@Q zK(dd}7#^EBlU(uUC1;5*4LoF62F)(y(YQ3B#!i9lQ~@CPh9ErN_+}7F1aCuAju$YD z#X1ZF@7pvZB-zntOqq58fHZY$v80|^+yCeX&3@0ZYNI|&π#&j5dRch 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 diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_coupling_map-1.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_coupling_map-1.png index fde22abbadb5c232eeae67fbb67f670c7a98e264..53b02c610762f98c65b8326ab5a9d6fff706062c 100644 GIT binary patch delta 41 wcmX?Zcie7*hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`B=j0RTy|5S9P{ diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_distribution-1_00.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_distribution-1_00.png index 48051dad53cb84211bcbe5a68274a6c2d66c2f2b..767d2b6f879e38f0ce096d20954d8ad0572b8c04 100644 GIT binary patch literal 14124 zcmdUWc{tT;-|x~q$!<`H>}pBKP@*CwDeu(K5x z*(0)R`=91cPWI=dL`7|We?Y{}@vJB>-xgz+{yz2XDemjKTJXej~aZ8Vjxi-MP%+FM$>vr>p zswWL+wg%{Shn><5_P<%i->6z{szlZL+rHxu)4d&XGtNvOmUF#QuRgi8+U>U8o&3Wy ze4^hY*I6X&QN0<5&nB#9dAwHj8vL1gasda0Vzl>v(9f0XiCV&Ze0+PI%BOyOO+1-u zHeUJt`}e+%f`UU<$7;GOLNxIK_Vw$fFIrRX%6qd2KEKN&U22wUG1gZf9WXK6VTg}s zn69MJXfK+q6EqV8a&vPvVvqA2Ida5e;KOq%htG%O^Vf^$ohZJ`lOo++%y|Z}i@5Q|46GLq`Z{OB9dep~4V)^pr${RL#r>`>dRuGYuHNX>1f0dha zt&m-~a3PoU`KOov`b!gwYIEuEXih!r8A=h`h>wj7cSQ5MbpcG-hz+m_v% z-e{2Xcq%hHJ3&9^yzcYUS1lW!#yfPrZECTW49RBHK%wn=#hLf|M`%7C|P6?lS zS%+;(cl}|;$|I$*ckf=Z36}K<(b&+I#&9X;gysypl!p>lmQ62AyEZ0eIdBQ1mJ_&P2wt|WgzuJ{6TtWm;i_M)&s?gs-oaq-l0w>NLzxb-JxtX;Qm ztDT))x<&0#tA?in>SudvqL(dS{va?gFx#p3Nu<1QdsV>}?+zczd<{nl%etx-yMm-f z19xRtSJ$p_PAR9j^8+6q-`TLcZ}NL*Ut3Pb?6+%jJ>|jTBj3NPhDh3sVkyVy4axe6 zRaGY#Uxl=j&1++n-9BDgY-?$-apT6Dw{F#DbaR zynD9+Cz*cc-D*B6^~0g6vD-Y-TFmJ&^>A5_fw8|XUoIVW|N6*fbSP)oviivpDc6xG z1Gip2nbE34&3W!F!C3>XS?WzqO{JBUjUS$y*qLvncy5@t!iYu2eOv=iQ_AeTF!F`w zG4hVzZH_s?&cU%wTU%S^N4faO_;>@tY7>n-+Q6l*5WD>9IMqnMkdVZI0c)G47e}yp zC!Cx{l`Dm|Z9B%V61F`f$!)Ap>ij^En!37aYE#|Qlj0HPuDPDQ){rvq?OT@g79PL$q*J?{hgwfsH73{NuoB-tl1|i3 z51ErHDKD?%acNbxZ6RTC@7^CWBPClB3=8rXt>B0V_nMu`HfcXrGBqr#{BW15mR7?Z z<>^JHrltaW_GH$*z{gF^%mQ>9A`Z-F3`=I@f)h$uB2oh{z0}zIpw+#4NSJQ+^+K7yR2R=mv+}!9Fd~1qO!8^gwq=D7GKJIos!o#)}(vQc_!)S zG~_>3jXc`dlo}i6Ic>q?O1$#yr6)(+;27 zY5#G59&@}!;rMYaRn_|e+fP18$)8r3zj$SC^xpaQ+Y#WKTv{Ejz4hfa?4A-@zHWOJ zYFd(res)P&nPSC5iP~$tp4*DV20S)i_{j1|#=T*q*5%8WNw!|SawQIhtTAb@vvZ56 zsOZ%6wB@&te=lQWYi!SRPstj>PxcKPgz(nF#f!^|i{C)oj*m8?aG;)q)^JS)cA`?z!B)4DaWW}ND*)*qR#b?bEyH+t-X}5>8 z)sIV705)*X`!_!uZ-$Yk>#?Hf*_;k1OE(uz;4$)4b95J8<}3E)ZR{!w91K@fQ1A;3 zj1@ooUPm_f*n%Ld1nrbCrp!(XMW;eErE&5IS_o=(%-cH~$|@?7E}M1jAssv+lTKgF zzIN@lUAyXL71$CxHye-_4Ucm+S-)HscBAtTqlA0dA}s?0g9L-TY|qpg!V!h? zXeua~pL+SE;|5%}Pq)nfS3G3Dee( zogsFa!=K;Ws>dzW%G^eKRBbz+JlV_;5W8Ebv1;*3?kXJUE}Q0Ew3<_PdC|zxq*EC~ zKE+E`u59@Bsi>>7Q$3~vfe;oJMvp?(?SGZ z&G%rm+uuRAEh#EG5e(3;XEbH>TG8#_I2wL zA|m$J)Sv1mN70>o+Q=vZ`%R@)S662b=QC{kc0Hg@F&K&3DF(W^7oH#L#sQ?0L$3R3 zS{5L%Y11W&x@MYr^}+V`cDL@}vsBs^`MZ8NS}B(yy#zx?#}_wm-lWn1FPgKR6Ni9A z`tKIlwn^bp6tmq}%dzL|t5<*im_(s`Y{p0Z9zINvv}s0+(yuOGZ~6W68xo^tk;}ciyA6+ToJ))*_;;t_}RPYTS9DXY^Waz#~(>ekCcfDnH^%;ljrBRHr=knz}VQBH1|vM7nhFG6cp$< zOXl=Vtt4Il?D^*!o}OIB%BpE^|7;N}SJbOl2We_x;ot9@a)S7kl@Zl@K5X-knN;Z^~l!#dpG&u&^ApwM|x4Q#(D=tKzjYMmYqK-#B!iYt4sT z*VONC)*I@b^AMV>EHFWdfBW}ei|=3qmxbOpaageE-mWtxf3R-cr*n;sw*mNKEibQE zMLy~Qp58v*w8N8;)LkANiCpUY`1fDgX!C>ed5FZQ`&;Du`cn!TW|<5Lqe2RnR9;@e zl8~00yKk^LU6IK^e+48I5E4?9zssHVX-9yFe!@l>w~~$yLzJCE*H+d8YVpw!^P1OI z@@S-*DXVw075`aS*xObf_z4G-=GdihXQNDZ-AJDML;}7rGBQG^IuEzEd4^2kw(P4` zJ@)pdxVIoooB*Q4cQ227f&bS2@rRLDL~w z6gTVnUd*eFY$gvkH94sfy!+L>j22*%_|{fE29Ljw@iuYs+S%*Z4eOHiPa!4g$+8DO zKQG=`+g+i}>%hBqtwx{M=9=2tvZubKcYZzNhTXPxU@@`iBZ=5kByK3zZri7w#lDJk zA2!}(5DE*%_+a0M=aGQRnmOlfXxhAgX4c`j0ew4Hm{S8Tc`ZAiimi2-R)ml7MYu$r)s^6E0*}LtY zHq8Vd!NzTqkjQ{t%5sts3MgWjvcE4^P;|+l{D$?%je#>F}bAV7{DAsY+PbS-cgAvE|0{FFArsX z-AEvYL7p4e&NJ7e5*hZWf!O!xzZSCziiw>td3!rPi1kgnW{=DXe~t`Q=|F4}=Z+ma zj+&dtIZU*=Dz_Lnh-&-XfY6;9M<*Wg(T3ky@*NZY0t(GHFJE}WY-ZF+lU>6+VU z%q5m8t-cuC^okBZ$#(PLKZ-o3l1wzgIWgiC_4ZvFZV zva+&oy}WE(2Ak`#%{=j`$iZGTl%M^D#1y(k*SH55&S1)fa5M~{TPyu6UhO5vW<@!&@%%$VQ`v>GNihb3Am%=G4Z7i!`4o1e$}kyx<^j4AHC{K}a^%~$ z6ON9K@t#vtQ$#W7t_)A<78bK0lc7?VEj8W~Mm+$9TWoY^_jA?q(Mkm$Ba3 z;u}lmbX5`{yO(m9k|0KQA6-* zM!TD$yzfSTr!l`q6JME_cMtfj0O^}w+7KER|47=UuP$DlT&mq!v?!thf^7BnPCtIET9FD4VJWRjRT!BuZg082?ZwWWjz7-^UF?W&P@G~ zy6`Omm6@>3yM>hfN6f3AT+PkP8!H#DJVpnX6u@SJ>t$&aq@Jxzh>QElGcp|_sUVrh zPzI4QZP96IyLhC}E7jCzRODo3H5J`*8XHyZe0xVxMv^y9Y4)qvto$LL71abkpiV;V zLB++1Xd?o~!|`RA@2}U4k1Y|SoH(#fL@y2xo`|G=xWmM!`~4#!8lYJdtG<26y?YU4 zzd)`K6;%UGsS@tv*6!|roiA8T8>_#(a5*78;3#(}=Y;RB6a(0G{-E=I>*Qqj&9HeCo%eSZ za0qp-UHz{ZhGwg%N=A}GVBW}|(ggG4z}~gB=_7bFp-^;ncWYIvPgh`1DA#uMztlTx zA8BWwuZcKQGcX84S4ez)pM$WL;}IlFCMLA;EmIDku0tzW7Wr?SlXvMapOurMG?=6| z4K%*i;avZH9)(i2sStGLU;O+eLZwWK=E}_OwzpER7WaPef8a&`jxYURydJ8+LvpY# z-@_dpTR=)m7w|vR%&r#i#^A%zk#PotUgz~4U_&?GC{K;{@km$hrx zMwOSBt1%&jp(y@|##Q>}O?3I5^`ZtEPEKhA&q9HOfY}i+HJ?KHq0y&)Z1?F`SC+bc zxi4Rr>v}FaHa5_5`I0472u*C z8U!RQC8gUhZCYZGcnWmHFp6yyiu;E~i^k+fBR_rs2+PvYYeP_#(p`oP>K#XY=I@RG zlm>!VpwaH52w9?Tq#+xG3#16WW; zE>ZV>d&a-ji-ud z-TJxn3Z$lobxhSQR5qd82nY%){OGQDKm{LEx^(GM^s8G`oA%t3oSd8rDk_awi3Z>m zjy4guEG;Wb*hP4E$#m zylH@UP!{T+o5-ULDcR+X1)$@UZ(B&Agx(Wi>CXBZR*U!3o%^+jcJ4Nq-sl8Xw(q|D z#%hp*GaNpgrYsci2V!HJ+e!SO&uV}%#i)cQqfp39e*6of%zda;DM0$cCpS_k8mbvx zB2j2^<_LdM?uk^6R08|7SO!G_klwa974{zJL^=OXEaKo2( z5BwiIhy+v?1OX!aUQsmfOvBG_bXmTQ@Rb=4(n{77AY$+M2NObA30qe4*tc)rE>wt$ zN79YA1t=76!E!&!xt^*`%8#T-Rfmk;D8ayu%z?zslvuD*^iYH4Uh zg@$qi5TIr$5-`H4j=j|k5@;+0k3I|)LmydX+CElVwnGwOTscp z6@j;B>9t1(NoyY;?y#H71&1dks1KAX;>fLa@xX6)1(%cUFPc}5z8SN0&DLXdm=6Z7 zUH*;?u$3Ob%kvs15yDrv*BONYD8DH#E)!cJVbiREDAz`=D~`nj;Lb3a5UaU0$xSz1 zTgU;RHK5}C}I8E#E3e3=s; zK=jzOWox3L<~^=Gj4pdukQJ-Eja8!CvvYG>&pqnb!@iy*i@NZ6DPtH7;4T+#91t};UQ37^yPp6X)C z7tE~uxqyX1NAGa?Gtkz(Blm7E^y3FXf}pO3pq)2wUR{jx1_|5N59M@xb!pIQBb0K9 zi<9;ss0DS38}#+`NSjg)m(_<}V&(^1^LU|OOB^99!Y5xGw#%Q2*|~G4296RcQ{MNt z8;I6JPDs2IkHc?Vx+;iIF`#Fx(NL6KV<`8>@jDzl4$?=Ptx^Pb?5Mt7^YgBb3*JH~ zhcYIZkpvYa*AYiFvlX$3TGk6$LO6qH8g9_fDz=e8xpFA{HRBc#lT~Y`gJnm4-sjJs zzo3)hNJ$$8YN>|+&hsk_WN%Cq@W{Anw7j$tN}Y+14O6>#F*j0y)Pv3{egZ^VSH|qS zu^vlNijlpcO^1UJ3n^=78N#7l1jm@LO?{pc;PBStp>c%wz)k8JpQ_{^CEs14ZX4-I ze4F>u!#$`T4~#j8|7PGZrU_L!5z##jYv9+y1z5}=uXD+H=HgKJXl|3Au1OfbTEMgK z!U?z#)hcq#Ge=3BQ&Gx51;L5ww{G16jdva&I7y=?CMFW%hpJtC`vulZ!+`<9M7rsAvA1-J2>q1%AGZ4bfIW8%LpoGb|TYi3hLr_E{0KIzk>eU4K{5mTI zZ%!GvG#n?D=EZ2~@Cyit2{iOPiO9D^kB5?G{Ogj^^J>wrY4nVY46Ua+kCB4?BVA?i z4_|WfAw1XYU>-P6cbc7n4d)t<2hE6t4<7efDeJm6UDEnP1llm(c?ZEAN^)OoRw|uN zFBe=&P8J)~p6g0pJ032ZL~hS}@!KWf5>prz3TUYfz`5oBhyr{Tu!i`0*waYpFBVYu zAwYzZe`aRxVGi1P{O*!-(PI9nL`{WPo4y(xtG{qzabjM7YX1O9DFjy z4r=A*EnB+!`-M6j47-jHE|XF}frmRyZ!&*CuT48Y zs7uohH(djUhUjhT=wHjt{WK!tPn!?V{?0#+`sEiMZs+BE`F{bN(@7hawqn`y;L>gb zm7;&?>LRqtinLugbJTd+gRP`dHKZ8Y8K&T}#6g4_@n>(JdpX3bp9jXzFHa}H2bxck zVL`j6&B+TFGWW^I5ZubpA#NGma5!#!d(FIvKT3^1@Yf<@DZw3wUPq;Y#@~Zp0O#45 zR|r-T(pW)J5nA}7PPscPt<|(=U`aVD z9FK$_^<8D9imIwA1uPYX3JczQ=Sz2Y3^C2&ZjW18BSz~UA6k5e zSI%Ipzp?Q)r?~BO2~c6&MJ4xpkEonJk0F0qAoGX}U^{N4@^6u-LQQ><%`Y6Pn_-&- z*53X%25CS@8LWJ@3bw+jB! zSoQc&#kSrPp$8N8?V)<~@44z^^}*1N2l%yfZB50FF8yP$qH4q|_eDZf?t$p}prD`t zQy($d-`?KXa4n2}5Q+YwD!~RU>hsEh$%t^oc#~StQyc5+vyvwPX|?8O{}u1z3WDTC zgH71=62-I0ZVr7SlRahuhoPY%O` zN3tHeaFD9=CfXArQHd*%-u(F+MIC%fMMZ^h3OJsBTmlH*6Ivwt*%_J_wxG4Om0JcS z#GCqH=%5?s3dk5r>u4fcC&l&(Fkog*juj*_%l6zXG9ZF;3UpIXuQ01Exxb}i8$nCn zfYgY`^f}MTZ=ZG!5}WbcDHJ3H1%+}BAf^3uT4NzD7xd0=ix{1VeIR32n4BTj6zsjz zr%#W5F!6ndeSAtf-qIk)1zRN~G$HnAqm83pM?%0(I+=RZS8g_wc#PQkcfXsX598c6>j(se<>^bbksoH$g~1SYfwY!UM@ZoRwn zAOD~fUCqYd?(doR6KkersLs85^X3RD6=A?l(YV+HF&S`0HPVM_Q5GPKA%<$+*>8(!YEa|Bc7A_q zE0y|sHZ%}%C@d7(E8;aUWzpiVTk5M%=Z_CLeo^9_C? zatvZ@2UdSIV$aU*$B!Si=(py-!p?ntjmJb=EUd7Ua>t?lNXr8Mc+qpYm<#iq?&T+n zwuM#8%cNky{{8G`3f@_ODFk+4Dj_a2GqY8;Q5P`ZUM8mXDv^C~F_&pL!O-4ND`PO- z){B0l{a~wdn%kJ=@1>p0c8Z^!ZY)TE?n6%w6S?W@+lb_4=i#v_c!L`EQ41*wS&GO- zMEgRwCml3z5a&}xyu;sF1LKC+K2!nB4Yg$0Wn`e&Ktrzjm4S|{>|n^HVZ4X=-PcP4 zz5s##ygV%zlC9iqC>I0iaKHE#R$2(QAUu)1sF=UwNjR$M3i=n4Yj)u|Fc{w zc$4OdL!-tMT^2JlF~=WS9tFewctt5|5hx09Jolv=ckblbhNBaO{IhB+p^SqbDhNwE z_xS-B#7Ylk9{Tj@lbIiuaQu}YkQQ z(q&Nc1iN1vzCIOslocaGZ9^zc5zBUTt%V$F5NwL^y=ve>3A1tzj9NVWXX(COP~a7O z>jEG2W>|*DFv=npiNv*E4RqO*dNy#W7=)_qAMd514NGI&f01W!kGWYUF#&O_cV?;a z#zj5^yh3L%KDrlAeTJLM2qrSbG%E8)_*`9YZLDHCu5pT#L_mDZX>B477*Wl(#A3HY zy+Ju4RLzdY%2~iDBLS zWAqOX_i7_9473|H{QEy?HKxsk^)kO@Gl}Acf5`ij!!0pp>25k3UJs9foC?6_Vv}w};0A>wT?D|Xxlb^;tn2OW%sKp)by=p*? z&whQUYH?HE>~uewd)S4-L)sBE6MAy~(FkB3GXDea)mK7CXfEA5qd5;aP!n#RCfeN^ z{^Q5!7d<>&=T;#UIMmy(QfU}IAaiObe`;3U&u(3)xQEh*h!xttT?tN+6a>3qSxktL zgM&ZvbB@IZo)___619>BQtxb|Imwvtzt%z_EX%H}JD!+hx< z_L|GVHk}yaz#Nr2CN7v?1J~0~g!&WGShj+?kUojn<0Dw6w6wGaM!mvVB1V`1;Ub`h zX}#Wsy0kD3pN2F=R3qm+x8S?K?Q%QI(7HMeSVTlv2M^k9l7M)X6d&B&Uiv2#O-wTq zY5Dy5muM~`=yPL3Z8=IE0_rj5U<2coFso{@P(B(AX);}iC~+c0SPkP8K>BIMMT;0x z2w-*e3~UcS4Ru`I+WILOL(?_0-Db~(1PE|qSCY4B7gDn}2_@HxlIVVjGRgu(Z z0`v0?pblt4#o+avJV5`_*OveeXVsDKfiK@DV=O{Dcd9|D)&^>z3P4`Q=udOLM~=r+ zG;jfNadk|^(YaIQi19?P!>HfYYuBvWvYkPO=u}8-B`{N@&ksEF#k^S}>>Q}jH2TGh z7h$$bdtg{o%4;^4DzIyp1}oRDD%k1lBO!BLmriw-Fyj+aIem;ZMyaLH>tZpMNO*8^ za`Mg>z|&bsBsU;Y~VZ1JNK9DS+1Sn-u~@4I2P$oiMaXOncG%$tRFubgI=C*gsfN zbg#lJvBx6f=AVTTY7a5xqLpHh#4e=uArK>?7JxHEDIvpSA3uIv7P`rMF3pqa79AB8 z=RPrH`Qh2)1kKLXib1#LUY!si_z9F*AiW$K2%2;qPDl*P`0whJq?P1*MJy)+N5Fruh5Ir{lUQay4NPwSs@DAdu zK+qC(ahbRowv|GI0apJHD4zu7hcN<${^)SQTs~pSFjb#dzIwbwEY1ldpNaUr0dr)D zC58(LafaAPW?W#1s9IZZciGJ1?`O=ly(`a zgQp^K_B}Tf8igAO5BZ$}0-Zp~aCvGj#lHk2$QVa1C5u4Iq{UsDd-cd}rPIgBAoF^{o& zZFjN5g2l`4N>>g>(E6 z5lFWp!{21e4T>{8s$ix|l%SN@aL{wE&vBdFPHM zjuyKAm78H)-g8Lz2n=9hC?vIRg#7jjj!6^x2o|o%gYk(5QC}W8_wlFD^bPyQl_>tc zI2P#lFat<#f(lqbI%1a*)=-7K;#~v=MrPSDR-MojA8~VYAu_S-6Pe}yfAx!6b8LBU W)4UeZF7x2l6xxyFhm#K)UH%V1akOIq literal 16020 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

9fAsCeUIdAae8)eayuF=tOKmj%g1N8Lt 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 diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_distribution-1_02.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_distribution-1_02.png index 227e44113985682d4a9f4e137b1665227b344ffd..9a4633aa2a73e36af412a5742ba6a513e7b16db6 100644 GIT binary patch literal 16681 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 diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_error_map-1.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_error_map-1.png index e68b33536d1c8b35879662ab3a4c4141e17583dc..c09c8b7cfd8fe86643122a0ca998000831b0fc73 100644 GIT binary patch literal 49643 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 ar(G*uxuLY4=m#E^0S{EQRZ5hs!u|>7GYwe) diff --git a/public/images/api/qiskit/dev/release_notes-2.png b/public/images/api/qiskit/dev/release_notes-2.png index 47a562c805e29613b2b4fdcfbaafdfc845389d2d..4f273eeed4a5c70f76a8bc07e2c5c9bcb03241ca 100644 GIT binary patch literal 7530 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 OLiDtaw1`)42mK#g$6@XO literal 1266648 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π(uFPO*#fI44#G8$P3lK?)NG+{v z0~aZSm2>3Cl@Qu<#^ui1g^wF|G2SVJvD5MqMA0yq4x|28V+YDceA86v(l|7DR_6Ta zoaB30T|LM%kdpc}wUkv{=0-+khP?zFhp2zDym~0P;}FGoe{y7o@IG%BQ`|bHZXdJz ztg7FN_h(Zf-mufZauCGBoTZJNOFBOa6U#cg8O)!LcTNAB48-w|VLGS;PMn_qG_m6i z+qrFSo!M?a8;Y=>3@AW5Q;i{GkCP>dyVgMsh+l{j*~h+XO!o#)()~rCUu%Xrm}N_q ztSxRcO+^{!2xfc*YUrrUpkCVgl`Q09PUHhk_A)81NP-sI(Vsl7bZw_w7Ro|5VkSy& zsu02d(q#1juU_VN<0{Qx5M9LcdsNvkq(FZ5wW140ZFQNi(2w31M9h!Lfv9b)W2IYD zIj9$EU}i?-H!pZOsaU{PY^>0jlxgLEZbPF2RfbpoJ#;z5%!F^p=IFimriZucd!df5 zPb)|-*}>a=_3{CbGF;kn!KBy%fDGdz5B;Y4t&4I5lviG{3I1;R)Xt3?v{2Eci90BC z&<_SP-WeOqio;sCB{F!PcW69r(^kI^w3GI4_HNE5MYw@ad7fz9M2Mv+3p4HUAW7?4IW2@I+Iqrm0;B8$Vo19V&0H5G!(K!C<0bd)WvwJ-D9|ajfE{_|W5(`qH^+^|TfqI~UJFMG zS}*YW!7n>9nOaNavmVYA$59spu1=uqhnWVuoR@zrEO0%wC_=;!n7Jv~7@e#w?<-WT zIx&G6!Yos7Y<3vB}|8QNXvL0Q5$MYC3(R3G__^hsyUIqW34c?E zNDS=DOQPg+fPKFjp!^guueQNtM7(Gc zAJXso_z^r75UrEo4%>6C+nBPGG+$iPpuN3FmxDLgx;62%5pI=9Dgv%RViaaMScQ!{ zy#k3FJJI-N7_i>{;OA1*fFanp_qG-{4QG4}RX+@Lys+A;Q7HGd83Arq`TV`;Q%;OA zKMKprn!uEnB0q48v~;Ma^9Xj>ebZ4^nB2#0X2OI!Q&RjsubC^n;z1*_ey=6Ds6^|;|1>$yu-TPjc(dI z!c8ETz4kuW;$7~B#V+;-=C5mJN{gj^WS@%u;xxFY@XLC4mNU8L@F&y7>bgaaA6|d+ zUW&^6bxIiw7Y=+`z8Sh?cgg~5w19;Qy z3kJ}Eqf7%Y;J4r`^`lHM@;dX_BViRn5V`|R=4JuYQ{>~9LBLke6LoJmB?#WIz3Yvf zd5)(4rIP5O^-LRb?H}8TsLKs^ z+E4oDs!mfau4ElGGzahQ zQIpqY-{tC>FH6auSu){RGZjgxcT5*k=b^7i)>2AYCu$BaXVgw(Hk3Z71LM`edGoOe zSFsVEG%IV!ixakLerc&ZMGB+L!@|nBTZMv@7$h?&$s&t@o;FrAEpJOV77N zlc^n2N5LH^fzRRmR#mN^1f~Baea*H#FaX_-{{1s%hgw!YR~H7O~kU> z(66m3u?23E)nd=MSZ#K?!A|X*y1jh3FQoSVk*34I9a*_609wY+Y!}=m%q!h1#F&0= zUB}OqP5Uc83XKh;3_9c6I#gWO^bwH)zqxN&MZtEvy%k7S+-QHUX0BWD>jeiWfhQ$;f1{8YNLL@6s&uR04!z-0_QD-WQ|8O}8D}3TI>_Rov3*br_X2}mQ zR>9#)A{czN6dW1%(`Iry&hD|(t(x2H9~>tZlp&LialXy!nc+e8ufnMe=qEvk!k3I6MhT;vD&Yq=GH96bM)u($Q`qV;~y#c z#NpqfA%0AIGiEhKZbMruD*-}9loou5=Q~fgT*1BSW}ceBA!XXkNtKXnNnB~*511As zeOo?-RCxxBdVE95FJH2YMFl$kYPDdHPc+s`K9cp z6>`yWBe$YY74y!N?taR2^CcE& z4~Vl=V}F(B>HDgxKMN zb-xZ9NVMg5#*|dqkPuP)C7b$4Iw*pIzGZ4V(nXi$CUksLSQ-A0tuv2?`fuaDCF|Hq zhO9|NWv%R6sI*wx?TjU4?7IeoX;KN5itJLTEMu7&`x;Uh*%@nM6k{+kmNA}>-+e#N zInVuT{^_XB=``Qvb6xN2{eE4?s$8EwyqQd41ks%P56hjnh1-g3{ehXzj?X%e(Go91 z-#*T_kg@Q9WN`aK{6dID%ZF3AI#re|uZk57q~TIRE5Px1d}_$vckTigX#1domuPU> zlwPpsZgpE$xy|TwF7G;}ylrl&^e?Q+FcE)^^*s!B2Utq+-E8{zs*}j5dbweENATQ7 zZ1nM`5)@H5K&E2tp!OUP&z)Z!2;DQrM#^1j${FSCz5IjLx&F=Bde8%uo2k_iS3@%0ym}iV z4^B8ZPv4JfgKh-Mq}Mx9ZM>4=n~0b96@j9=M^nR(>*Q5(LsRp zvungqT1lPoF|=~f`QLM+Cc=rth^7$jol-%b#@-K@&?^*%CjsTSGo_x`)PS7)Fk8u` zXUoAB7F_fdE8u;UdvYmiTz04R=_+;V{e@tqRIVX!uqgyJHFOGe>`kp6MEgD_N(mPI z5zL3qCHyT+`#kmn^6eh4o&Tp((2(nQy}QtuZ?{)8JavA?`T(4)3ilK08JT%MrF4{F zva~1_A1{@vS<w>{~#4AjFMIE{^r z1vWO0ArV<1H!C%&q~6wn0?RP&AErmXVk>GIL_PWp>yw5QPoA)h&?aB64DOrT~h0J_>cMR-^UMWH9wTI5}*&(0|e+1U1)4veHVk|&k8K<&{U^JnlAuc zY0MxOuL79v1WO6Vjc;z3o1S&${Q+O!qFQO}`{de^zVb%sBHupPpTiJB2xI31j*C$y zx}H^s*R=VIigRBP#rSy*{6R0sOlAdhr80*x^GV&SQzL{#`NiAa6n}ri9mQ5Fc!hh~g6g>}%$;!64 z8z01P@a(x;(hc@Pd`&M-1k+!$@UsyBlgCmb1!1q@-Ff|Xm@Qw zA|x474W-#m7cTqLe13uyptN=i4KKJ1Teoc3uLX_Om6eKgFUVt_u;Se|-`1~Dma?~G z`j&s!-g&JkhB?&b0Dbzg11>!h#|4U}wXR5;5Uoe&9m#qd_Yx;Xr1-1^X`uS`TI~Y+ zF`IrHAGiFrfJ#syd8#}Bv;DB6b@@m(9lcYUyKbgViZ#AF$#JolXz8dtwT-|ew2dGT zz2M(oh(%F8oMSr9hnm#&CS7jEYT3xm4Wk!*H0$rchbRlcjCY-tELl{ce79z;5v=Ud z>P_(a@6_C9vgJEffUxSk7tQ*g&no6_sOLFwlioP?eJ-SQbn=b}PT4~7O085Z!Ri?= z*b#zJutAmQE7=@A?Ff6Xx|{bRfYH9D1z7!t8oM)M8zdh`5GImOXhj~9=Z%HY1%S(g zzQVPkL;yY-`NbOoxO08Ympe|CC@My|k*uC+TL8brQlF|u;GY=mV|^ar)7$Ec_nl8~ z(ADR^(-m{)0B>S$--0odPCLni;XNGncduiSIvxGEo< z&G$y$AUE@BgmoZw{9)@4yD}Cy!vgm$0+Y;nBAYzy+pB8 z1(>dzEoFD{A#@{@bx~(2mH>{1$C?lfY>8=dg|ZR4%XY@>90*BPuqbQ?4@f z`|l-^ZlQbA%kPZShDKG7Id;NA?_PFQe-17@W|t?u{>2z6zEuIE>&(ORE3LNm_~!&G zU^p}850Pg~VYWYpid)M7tA4Ej&jLIy3sfY8?>#J1Mfklss;j*IeGX~U>Q4$pW9j4ulm*Ys+`@@yxVE1?9_suOkTPA`6 z@OG7xu=g{&N}3MW;@hD6SZq3fgX2vq>wyYuIce=LXx(=&{$p)%Ua3?)4EUEbMkIO< zSK~X!5n}I{piROCZw|mHWWfybJp0EyqQ9Jvwl@&DsPpr1VnDE-eIf4JcE>m09|z82 zCpHl*p#HM-4ft~olF3JLlYX5kcM{X+cA2?w9Eps_L|mChgO$qR1f;jx2~L}W@F73Q z)eAEi%Gplw@fwP;Gf>M8;Uw1Z=ok=^RekQdV96V*T*)1|EfS951M(`G*~t%Lv%Ae7 zY?goWQAp7s3(!&MUPfEZV&8IfAgPybg5^rk>Z5u-kJinf+PF~DwzCrv!ayE~OYanSrb&T=jWS6zlz}CJ;wv-Y_az{7e%90o z0Q(EwX(BKRt^av&(WM}amb6IJuiWg2L*bR({FV+y=!U|FlRBxo%nOy}ex(V2QnZpt#)6<@Vz6gBkC`2!`rk_YCES-@&geZ~0V-fHJhZ4g zHOkz!>`v=>XP=02w4g4b`8evMKfZPKV%_9fuAT-E>*=OnyZTm0OEeb1PCo;)QE_yd zX>hH?;Ab678I5)fia)nBkT!TSY^qT8@{sDb!e~a=u%`7brWy8@#nRx+^%K#}bcDX1 z|ksrK`z|mPH;VGv7SyYy&jrE!+z(ZGD0{E;)r-&f2 zh-uK>bB9lT(EKI%dchPl6>X;>_q;V=&LfVze~?@IBWWpYE0T9Eb!kEnkyS!wK^_)h z+S1DLaJ`GZdFGY3TJxsZII`o z0&?mP>Dl@~tV|?}edoyi>Md?*i+Zw-=g?hOh3?^|fP7r2(jysdt~OfFn%>}@Gd8K4 zxfypDOq8_X3O|qzjbBh< zAkcpCy6_g7XNau*=so^$ZJyr&BymyCzSx{@B+5ZAu+(}TIOA< zSg6+CNF-a^x zW@@cnZ0h@=LA~$>gT!wA{0{>xX0Zg&e;_C}L<+qwItpEz&x0RamX63Vzem}3L9nFc z>Av<1aQggM}eY{c>yr3A<@Cbmf$(d9zhV4Y^ zONj!0BZdB0RJP-pW#yDvvvgyVj9|8d=AsVYO=D~Km5ui``baNl+O*d%5P7(t!FK`AYjEUT_bi%&70%d*l5Yzj{e+|Jx66oIqECGZg3LT~7NG%sT*V zNTKT|&>by~qjCremAW`7d8g+yHT&&nz4Y>kpzh{@m4xj35#L%ylAlgDZR8AcS`Y0% zsO1aI1RH}dZ}A>GP>%cU6S5J07Uw5pV@Lh+2ZarCV42 zw>&G1^2p2=un4_5*#>OiAp#I%fSxJ=D)WqE2wJuCRwQG$u5_SyVCPif2(DB}(ZYt4 zdc~ARkg7`DX8rY5vnGFIfne8?yK_qZ&zO?c^mYEc#C`a&=9I@#Yrq$qJg^+w?)aGr zeTJ49ql6zFW=czjnnw%uku#5sv$5hzayl;zK76F3{E z;5+rSp{|hA-iBR<-a%8CI7hM@4Yek9PyxKL**GHn0dCLVqDA7@bm z+$&ZpxT$TM=Z@_8x6568awnsX-MpW#S&7$_U#yu`E*#-VrU;ykYt4~~HA0N>ui4i! zw{Tb2^EGHOtf)d$QS^tSuM|U#e`_CKToN%$XB%4Ui)wgy1cmL zmMqj%5Iu;~yf45*8Pb;S*`5xA+KS$q^$FnnxZr7W_iEZUYBlNwi-`JX>-r|qX{E7^ zyEhkh9<{+{q&Hk^q+YUu8r0s(DVlCO=SW>GR8ez_sP0IeZej^@@G9@wrb0YDkM&i- zmq#uZz*hn8)k*(Tg>setsbn-&Ywojl=X>(?VI+HALe!pyfL4(yTv`9~3Oshl?T7jv zw?KtAh-w=C6O;BgIF%I3;I?JO_avv-U~}#@`UoF|vw`v+ek<(sAO-r8pU8~?a-Rzp zqVDOK(`E+AF%f4cbbd>}5Ceu=Dz8n;w}%?MXu?)t%#r$a((?78cmmLMS1W!!8+Su> zX@Z9S>31CFy5fosVh18i6k(j*pV>azF=^)oIn7giB@yu#w&-({oX}WsFfu{wK^c38 za@kDgF1&_KEcO_Is<%s|0lKGtZ3-9I#WbF!;1ZTt z^;_|GYLS)FcexCW^=>Ozo-Q}m6ti1_-Yy<6G>T)p=q;<{Zd#Me4k#bWk;*THjQk>v zQ#5%AMZos&lIds!Bye|nnKJm$~ zj&+RedJ1q_&LA#u(SLD3tdENt4K1SAId$-j(6g0&Dwiv;?KA6Dq>;A=@Cl|Q&q8D^ zbMe3?5&VBXUG)SvK~O^QWQ zN2{+G4W>6UyupN5!XT+Va^(20`{^@$37L4`(5p3GRGk!k=GW$U#3$QXX0RPox6gu@ z{b2x?Rq4`DPT#r?uQwn1TUYzS+kb;_0E`~qm4j^(_dj9Bk6i`J4`mn&C8uR?{frjqU507M1DU%R-z6T-LUOd z65NQ(U0%7L)_34I5B5&GErf6VyfSQNF)I`JJz8=Cp!BDoVLQw=^3wyy8hAWgXVlsq zK1MGD4W1u|mM+_emBtSNhx&e=VHR$XIPbAF1WAdY6HmpnXI^-=Y_BaLwEUw+KT#~s zvTG-TF&+KF1>m7M&34BGuhMS=@;5q%ScXG=yvw6jn#ysNUn!EPNTE6!wa?UMU;U^@ z9OT$i#Mij#+15AON@1B;FMZXa1TtRRQ!laAaa(0Obtw5gDFzA#H1NT)4EOys9q`I) zMPGX+t?;9+mFgL3so6I=uRrO+{HGGtLfU)RO_r1`?7>R@_cLbq@N+tN0lrh$Q!dez^}q_dsm&nhP* z&3-k7qvTHj2d2WgH21Hy8L&o{j-=R@chfx$V=PCed3gGMvgLg2=eMvJlFi?*2Yhfm zzgbyN(tU%#Q?=}tP>)}E;ch;G6xEv?Q?=B6_m!mPgG|?VcNq zp}k`}Cs>4I0?qX}vyI%eN0C&_LZPxJ{6qb9i}Q8KZ!{>Zf>$hJ3k019%=UCK7N|&+*7zNtYomxv#M#Ve2y?)wO1% z?3_dO!z>mabn?#E=}k7Z{P*AL^KLltC}ns+WFqi_*4m==ptC~9+uOK8(&u-8zy5ze zzcT-6i4744aZ;2F*KynI|ej=cbZ(?%rB;lIL6CAN7k2D^-X} z;u}2@OddhDIn3w3W16sZr9FHTZayrw8iVn`?a)4XsXd$l{d^g1H6)Q3bKx&lo4?yX z!~o7A4+Z6+496YVL@4AdS<7*{-5_EyaYJcnY;#+D@SMe@XHmef!uPz9!>{NMr%`U8 zu}{%FUPVab={5k%RC?AQ&U+a~Y=$ZOM`7P2F7nH8{ zT&MYX{joHX!F6Vx?MJGXK3e^yQ>J6qHF2xJpN!iuKY8ITW<_AnYqBSOgTh+JFrbSZ zc<EJg$h4%0L;Bre@-ozdErM{>4L4o$I^zMgqf0UIoyR1Nkys1Zq|`HS;AJdN5UI ztiD0PpF}D0!Lj#Qjx{qe6Zo$LMlOayFRpo0HwGz}f%|UwLS?_{HTvH8%e8^6w^!w` z|5CM7WNii*Td0D~BVv5kJ^llpkf7Rzw)$N&9YS;Hg-vL1hAR7UzVeHmZ^Jp+lju&p z4@e_UESrw{XUD`ychm~x9;%=U>qMu*jfsBB?lY&StSohvTzKO%+OLg`G_z5PN;OaB zIB3?^9cbe!c)y1S1!!l3+!{aLXQb>0r@(OM1Rg3ePy(+_U zGh0XgR-OMt(RRvhxOO;RFgWXv@R*!p6bah+Ip;%KesdU9&O5O=H9}(Aq|i%GJjOu* zvp(hd#yA57PCuB0ZQ(kezaVNT`L2&mh~qG{i>W5reBUqR1e}_J+UXD9kHzf#PoGZi`R{h z7`Wx{jaO|4nF3wZ%CkiM%%?iC#OT&)&oY z8hxnAYDwIO8zMO0q5#bO#CR$QeGG;!_Z~@$EjI`d3$Gtpay)SI>J;|w$avdQ7!K2V z>guBSnE&wH%(@&M^KB_UD>W^3CY(`iM_ovzdkMz2P$A^8&OzrF@&MFEeiOF72?`2& z+Yby?W1lWa#n&~Y@e^72gCrpD1MA;qwK2L{pm}d}CFkOYY?c1~vK;x(j`K|f$}WT@ z6YWWqffkQO^fm`Ovl|^9+@V#QHBGL|oekQZ4G~(FKMUmRo%x|ZB`xn!{1i`|D)S98Md_NIttFkhwiVKCwL$kNitqcp8IBEbZ|E?j z#}ZodjG$3AT0#%k%GbYBGxm}N;8m7#`UtHX??Tl9QlYy;nv&F6%M5`K=wh03e?n4B zKwXPwjTul5tj7gsrXyJfB_$v)U_%{=>R>XF|Oq&0j=u*a&opX zbd-e)VZPnInXen{vpR25BO56Kuu?TjTb|`z*SURx1s}i+5Te? zNB$AQUx>ZnxDyGv-l9N>tpRw;d2fm{*qXKFESwEC?rNa6Ek*KVqrX{xw6}b6`=AX> z0eEdZek-IXs=1okm)-f(XK^38<#`WZQs>(e<4ew%%Y2e>ryKaYIZyH{ik6>4jH8Ml z`NfSMuL*v7$g}I+i|{TlH5^WYY&mt*8>08XC|F|Qo~52X|3$v2s{=hfPQ>7>3JMaz zcI)-}=+!TwAfOrty;wp%`w$G{g@uFa^xmOf7{YzKAzSi ztj6BK)X+S=VnMN~S>u62cOz^9(i9kAqSH|H zcAveqXFx(sEv;C2a_+V77Z&Q{)>Je5dK$?iZrB!CDmr274Y~Z61fYx9KW4ZGy$KJ; zmkfJr%twuz)rklOy%nu|A7(74>CyD_Qa@w9L3ebG`WY#8Ja&>kCczIeLdSr3uy7eB zH6Volt%h5PwiUUg;~?j7sb9!29>(N$x~ca&m#= zdhmg+=`1gtrlR9Hw%SUOk6&-#;2}T5aF<%Ckeqt9^(-9OYyXBHew0Q~w z9mFbWv3+6&r+H&&u|gYAO)!yR`_HPiJcr=wbh*J~`z?zYEeA#cdxt!uc~XEyW&hIWBe+k6d?;w`7uA(Kt{pV2bF^ zJT>u)G`17~7+Ag`O-tWVQyo=3gWfqGo&Xn(aJL<0G#jBUDZtGnA)OiJCdMiu%~m2) z_%nz>A8ZfY@@Yhh^H_2o7cVhoAk!-^l=jbG2Lz#DHblrbT!ZV zSw$t&MP9H=!%IA~(!Hp^i@Y8*+p7Fl-$caKVCrqSc6TD747Qe7Lmt+I0f+@sNwH$k z8NKv0U~qNkJG+Ko$K*u*L3@YS3{p5?3t*e=+jGi;v-+XYCAg6l`_u13Q1}jDhBgJe zNT?ZeWjPU`E$+!bddA+^XWqt}cTlPjl$ncl9$v8o^^pi_@4dPJ)A&|$=IVBaT7Fc9 z`M3O$s#kDF+QhXKeh?XHGaB3et%~=1-v)iML3ZxJ%ZIc-{maFc`p?DwdINGUt0tJV z{$pE+r?FBRI(&cl0Q2ulh43@MZ%@=vaa*n%_wa1*DL;SS-Pnzo*01-?m8tAuZDQ&a zWp$1nCOuBP*3*0?=QA!rIdEza2?-95Xm6NB%cn^2=vaPf0&q~?L5XD}#SXQ|OJ=U0 zm__>A6K-~ngjv}67+}v8*GmsK?{n}*!-G1)>O;p;g#tDd$U=O;PQgDvVdf}eZ|P$2 z+soL?Ok7(8sH3}^U3Qt1O)GI=o_r%jJ73eyYrw$=dqL%ZYdo4HS;};FcrDlGO+=@} zP&rAlGd6#2H0Vd{_0iuaKLOQyuW#~CQ)}l65F;0a(-Tq+t#LcZUWv|Bh_;yP5pHXl0L7r zuV>i9V3dx*j?11|Tog~QXL0btvT+{BOQ>j#<8JBLwyG*D?tl(I3JKV$7v|HrKT)hi z=)AhCY4UGj_Feuz!tDM%gvoxK#IO3QO;E74)UI?ybZ1^Ut4HEEtj}NlEkqsL9DQay z_LJ0k1CcrN2fuRflQt>IB&&d#0%l)&?|1{l{uQ)oKDq-rVWN`V%b%km|6o+IlqxN( z$$>C$dLGbW_r;NRIYnRkOibLHX3c_o%V|SC+p5D2!n4Gomln|#4ou8UOqb6a+!7x7 z!QbVjyM1VYcRfPOm0xiQwtEkva2znFl^x{(EaU47Oygz8dhBO)oHaa1$6G&SCsM8( zpB)})?=3|L6~~D`4BGZ`6vnik-BZ<~U`l71Y3%$UiSDBqi`?vnS~JyHY&pfLW)sAd z>J?h}9<{<|48VOjnVH4$X%5WHPY|&cNgCZqD=)8gCIzoSm<0DQ3r{qM?H3L$(ebqD z8D8M*n$*ia01&c5$N1OjPU+>Fn-`7zv(%S7rSsnREn5Gj!h6Bn`^Vf7^Z`E|#dJC6 zo?i8qJGr+sC;Ov(7-7Wb$!bxZcK_9;{N`|xH+c$=kD-GXTQ1uNw^PCNdEVhojblyy zUFh7Ef_w9$a%pgDqT`yReqc%`$*!E=TBajn!ZrjSfPK%)SkoT%8x#GMpHPu)f1xyE zJ4Ent@Z?hk-5GIlJr1eDa?Rt8i!iVh9xEVw^)hp9tq9b#tVenHtvvA7Q9`WY0mV;R zy;dF(@aJsWZ4dr8J^L(K8YqV6%U38;u_`EeU*5qd+f7=-K}W*6Dld~@gcI;0Gh1O6 zN%=JH#O_Oz*FsN*W@1Bk=e`%mO^<2sG}=TC?p~&pw3N(cQ4WG)p%wAa9%mWpfmpsbmHh5VR06oex{b`tPQrKB-S9@%k1G zPTJpQ2VG81L{d#9nq&~B0<4qAd1-jO@pSt*X5|_BX@Hlw7Keqm^``*4q=tx}Orfsz z3R5p0$2~n7gD+76!X#rol^u8{#T#Bmwr^3|odSlORe+^kg@e2KO_==sn?E!faGj~| z1VQky+!UM=btR9TGd9LFZLUqb=Gvi321Zr0sST)zuF)On7jw^V1e7dk)bIPsrOZ?6 z(-+6dyI!4#H+D|iFtNe5Xw!FJF|~21@cj&o*byo;8{qWs>xUngV#(N)=?`b$A}rLKgPs3 zI$m-t$&e!A!bo)j}v6xP||<)6`Sf4M$k?*E;lLH5B$;dy5_r{nr zE-%h8Wv1{NE9rz*>HvoQv6~98wC?GT=L2W~iH*rNQt~hfJ}c+7)qB78YtRx}%U4$X#LH4L^_tFVN-2Eb{P!XQ_m1hud{b!aaX5!BFg ze$1fHE8(hn47i#yTeQMgw%#Sct6}XkRQTWri;bLfFJ_`{E;N%(&cV*3eS7!!!DDoUSK4~U7 zTdqMyBO=x}2yrlV^gjpV|No3UU(D9OyZ3}B>hQZJqLHE8c~7J0l8UWAnAySxHMaT9 zn}?9~?&488Up z#i?zjHes;WjCi0Zt13^yDJOI3fsu0MS8JG&f%`p_4~`f%kaY3)lHmn^3j2EW$KHuB zZ~mILFLeRkZEg8tMZ9{YFaSxG?$w-;>}Fw=R4(AJt!hq<7NpvO@M78i^-SCa{xYkh z-0<~goD6Q5Y1l8+U(H17l^x{iK9<3Y^tLC(;2Zx~)I@h$8y6t;P5E;XvN=)X=0d`Nfj6GTM}|)h^*F^j$BQ#z<3l17DpBt0`bPh*N{%MY6Rz$Z zl)?a+uPeY<2v}avRffy|QJ|vs<0Hw9SHR9M#>%~o7D44o0=Yp=5ZGVN9s<#m)=mC( z9cT6?A4#;{`!|AzxkzA2z3h;Qg;^T#v-UPc)lJ|ntTk+M4mntrvRNHae6JDp`ef7X`}FVGzM_FpU_**jP{iOqyU=-l9U`C@vx82fVn$&(1I53lPii{2WSlGtWg-uV7jwmR!zB%{u@wVVE8?ck-zei*Yy6 z`0nHQtTRJPbn)nOuJR&(A!@?1X4Rr;+DzNM?pTXf4?=3oVE6>R!_`Qje)0RpNNm9sko z1VOfq1c!>j=_oe}x~19VF>L(D3FV-pe@@-hc5$;ePAMql6t(dp4vZqSv&t^mFE26U z=hQ%qBEyLFWZ~t~cLE?nBG5DbfOCtTxG>HbsL4AR@`rEB(^?ztvN>;mPD}WZru=!st6GZ>aXE9e2$oAX z#KwJoM4&D@f90%62IvEY-^+)aHbcjtr~;oWquyT?bO_K~u6>I;^#iS9%lT6Dc2!;s zrDAu(he%d=o0<_vOwQe`KhFfY1yZc?Ol6o_vukjND0^g?x%^$l_o<>DX})-oO`oTHRzW?3z7KKzqwm6=-37C;(e3cryAVA6Lw83122VaTg?dreDHb>O08@rUklWAzdWeIN%n_;4MqujeR5 z=*9=nF@&J$e1YMnk&>MvY(9liyR%l7D&x4jM(#(y!|dcJ)UEh=xaIKIV3O)PVkU=M2hHy`2H1J6kqED%QAmUv--1p3k z3s(wGqAgwzvz)5(x94ER_#V(XLvVn#GXuZ6bJ)0%yPP*T74R+JAq?CTCow_P*3a(J zc?FR8XOZpTyd!H{1g@BTic*I zKSLYDItRQ(8X~B3Mv5_gd1KNZcL#W48*Rp#YPm2jW!ROwh!kMlV5UBR2XS`<%8Hj= zoIO9U4vqb!4v0)30P$3+7tz(ba}s9RuqcJ(zj~B=f#32{S!t_bk|h5+1NsvrKFQzU zw0jftCrDF2g}@YM%<~VPUkb+Cw9`9Z4T3;_t}k!-LwaS?tM+QMJd%rQw!UY#l@WEw zX1YfciMS_SixIfUZ!%v0{z_z~f*iFoyhfd=Ms^fA+C2pFa@rH$MLcyl#rU?SC+UEq zNbGJ3JS6z$qXJ8f**Uv_y*3Tj?pIJu7^^y*@d^quuQ<*dWx!ni=X(dz{@-8G^IQMP zg)coO893%Q-hv;kiVp_s-z$26PeH`;9#I@>`1JFQYB>LGId|SBt~FC={YxTM2cmyG zMsY=)$D(}(T5Ma+-&`lK!4-;QGHiJAQ$Iw}!wc`c_MP3`a}5uCmLtwZ$LRJCSdTcU`CyEd=Hfi%w> zF-(H?Mi_sg{(Kfb=P&>(LM<=jXO=M!s8gkHmNz_Y&M`06jRrMC-Q3;H7%Rb+jXU3p z)EuG}7|UPITWaQp#JsP{!|mtGqGXg>PmTpevs{)0F}kGciF{cjIro{`cZaJ8e+gH- zxbh!4TX#iAUxyX?GL8h(D6S}2n8_RLdc}w2XzX8wCq(?#`?z_pWpshC`mE zI8F-dC;9joB~*LQh$@`smGcl7QRU||7ut^;N=JdLgFSI)2;4qm-@Norp1`Q=nwuL{ zatv*>a9hw)L80ouRHyWyH{(02W4A`U!oP2;4#mp}sz55cgoBKY+Ky-LNPj1uXgFp& z-s4FzQY^FuN!yQ|qbG?nI5Is5GVq1GRx&^O&Wh-gGxMTZJMwB9JkB!o_qH8i(@g#m z4S6P2L6ticVC<+@TgmzHD}{mWt(&{E;Vm0pQ@-%_5SY{v6Pu^>poOXW%&t#yGu69K z*(7Xa1mdhPWrz84ssRYs7t^PD!x) zgMS4b-PQ=YwWV|%_=Qj95s%1EdgIYTKllL1ggQ0w{@V3)hGShNDwi~!6c6R*Kv3L( zSOy(kI0%9SRh7CdfR~Z2wTDtUECR?Ir6pm{TFB|DmB{M--S$*G{{jbS2@pwv`dO!2 z->23%~WcDPxNManw8w9>i_@eK^=!yYJb??*IVz{D`ye3=46CzXGH z)6YF~{+W%B0q$#znW?+ibB^8I9g|zne4?MZcS@?`T<$8>pSyYXYxLqOF{J z_1#mKQi<}ncKViVVg`(+i-aOEqV$EvchiGVvB#q{yfHcD;Outv@9u}|C=dz*&_4_9 z(It4=R1z;#G*kIj0OzoVhkL2(M6NKM3?^j2boQDVNH5m}?wFLLEhC5T4s}+Rx2^hq zvG(x^DSihb0oDgNR);)x$f!?%_|7%G9NXHG@GAh~sR-aW3IC8phy54>;a_TIchS|v zx|=_Cf`$Vk@T`29YrA!aJ=>jtw>J(PJvdr<%}l_0>iFazrP$sh+IqS>8HYu&Y{FN{ z7xm=q7InFR2UB_U`&xCR(gA}_i279S+H$+BrwVJl>c7AA|CTmibT=MX6hS4&eS6we zhIP~dm8_nJ{mz8urP;7SC#fX^Lh?(LRc7!076iQTxfN*1_>n|*8@_F4 zIq?`-65xox5iB$V&Qv!Nai_VO6^cn{D;(F*=eM_XrwRQE9uo{0-G&#v*UhONHk?L% z>h;OGsZhG{b>Z8h&IICX_w?W+^a7-1dEP`jE2F&R1H6n)v)e8HSRR@F?3J<=cSNph_!a(>@bC& z-$;kgSaDdjuD-Rn2EBnN^sQ(=I30^IzGb|{F%kJ> zYTg}4oy%2Xh&($7q3O4-?@ziC>+P29rYDD#-O?4VFhPqE5pS@EN=D!Yg_*bpQcy*k zu@hh>ur1G-e@URNIs#&HZo??I7~e*KWn($!2k{i}#rq@k097UjYPOS@kn zPy{B3<1Y)qg_J>*ANFcQ?Hh{^S!eT6dDZO$GRiE6z$_4(LvKrf?i>Gf-u zlD+`mUywfIk$^~ipTpCCEX`_ahKIBid#$cB#!EWb!jwaF(i`~liyP++)M8D=UE3=@ ztaVR{@w}T%Ap~}h7z#)gVi6`76^#m|!c?HU0FlDCYAd;+{AinlqevS+`cN)8liYa7 z26kj+yZghbJ*p}YHE#V)AMW^%yn_HcyMpAs4W8IuwcuclymYW|yez+|$Mf1Vj#tMR zGnZ~n|E@V?2|Oy2SXYt>KPWD)jl*(&1C(q5(dv3VI@7`=*5G!7r>1--9x0|iY#5xz zXXIS2Ff0(qDnT(Jnnm}6uo-ed)tNnJTxif^ z35pEK3vsmuYo1l>IsJRz&(sorrUw?+WIQIPKf<+{)C5WfZ&je8?>U`4y;BsSBJyAXd#w+~ ztQ!T?=a#j>cb4{JpOkb@X>h3jChHOdn)y#ZWKs5s!Cn!brFp}?wiu4BXzV50=A;@p zDaE*`wQO;2OKrF48FRHj-e=t+&eDI%-gY9DbO>#v5({ffpWQ>+jH3M;{&98|$!2JP z2v~B{@!nqFbS0`|!hS!0td@^n+kN}z5y@(KmH*R}Lp@qB*~|W(Cwg2qawMIYQCTkF z?!*bA)UKXgv^qD~`!4OrZ9iOAG1(k#K|`Yy82!&GarV+{>|Yn9J#mBYX>QzZ)!F0C1=Bv|Fv z;M{NABURtI7tF6D9Jx83r?7d>91?{td1bme(qFJZj-k-8&VHBt5|%TM#!Q39I7Az; z3AAb2pH8A=U2TYtVSWS_br4w2j8T3nsLnFIKBMZ zZbPI`bk*n0WZ?(1eTAjf`OzCLTwp!*QON!fd(4lc7CFF298Y?C|H@O3+pgDkRbmoerEik^)T7K8zdiD|%U zfio2V&zPxc@l|1pe{N~G@MdzUi`A&*=9SN>4f~5Q+SQ>j@A-ZmK&l1Qqn9QR45ThD zcq+pjmk#CbG&;j;u)FqkBis7=eHt9XpQZ_)ria<|_W=^;_C~K0{Gi!|(6dS|IYs$% zTLzd)REDgU=!5dm?+-s=!Hc@G=R_wlzdtp@nD5JkatXpG%5L4=s`#pM6}^h1My6sp}z)&_O-(hd55UmstPV$w2mg8uOhs z39*!X&`LYvW3l?kQ7HZbJIH$$^}^x^oe~`81ndIh^eh_I8W?&%b9bz}ss5{4NQ z@Nd)Gi_QNYd9Q_kk3M*Pg84f*Y~WVBf%}ZauTA!n@h%zXnAih7ZWnoVE(!cZamUJ= zqzJ^>2nJUBcaJ&~>`}-az6l#vz}VOYUTu4q_?F$}cdE7zU-Um4z6q-5PI@tKim_r<-~63whZ;yE#E_upBJDkBrH6UI8jXdpBk59cE$g|RYHKOHl05XD1%_}*d)u7 zq=#<1Kr1Kjx5Vpj#+8f}0P^k&;o;W~Cr|8kJJ1CefcA*wG#N~}59=Ng-`sRXdWH=n zh-pKAK4Z5^tr%FXB~OE=iR$wcSO0ydosRp@oksBHwIDg!_#Ls$82TVoTz?{HJBd4! z!)R+O5uR4Kc{Aq;5yGDRu>$^y+WH%8BM3=HEd)VtFm}T|a^8TX!w(h^ngCDf^kdCy zRxeVsUy=YmZTW|xSRzb13j_&Um>VM0l3T(0`qOlR&vd_#{v*p2e)BFANqeFukh6N0 z)KnrFJ=;fzo16tIY)i6Dj_M0t>eYxd;T6p50C4^4ASfRk0kyDWHs)Mo>L(;Ebf{Ge z#DmQBEkl(V0-}ZLQV*pf$Z{W6G7dt5g~IQyL3CCaW-PXrV*=IHsKLh$o5JU zW?^%#&~?Axr^U5s%W1#LyIMVL{>*(fMG}`8%Wd5A785l?e`1t%&H%Q;x>(^1A6Vx= z8yZ~oc_3r>6q0!8-(sC@-a&}#Z z|Kt;L?d5s#Czm<84G{g!{kvNd;dKKnR4y>~Vs8XvhN0x9o_d_Zt0r3l>Vphe;{oxA z$%q5eMN+cA_SB3xaPlK}4t0lkNGS2NBn1>=wVwT$8G1vq^4)#2sSGb{&^>^iBWBTt z;a`6mrHVLDdd3344fTuw2F(pri-jxI;z_YhRM<}@_~MeyoKM4beyKuyKqbDdG{E<# z4&6(;;sTv~rhRzh%ePYJ=bqh7j58tnk)Yd8I|UoPWTQL-&TSB&um~bu;kEtLMGmV6 zF(v08Lk9=tKLr+>1@45x)Ngnl3BPH*UY$uYrC#-uix9}`~CgS`F;D`|J>so#~ttYYdoKi=LJ#ozwQs- zTj>AJf*_b`MMb3<`^su59HO%NJfUge^4`mWrN&U2hHB{$jTPGd0jE{W4+PwaA2=@*EKLIS`(y(kRA6Lfi8UB$GU6ZsZm%)W*3*AG)d{Ni~D-w5KvJ7w71_+vGU90 z%H!(d!i@(w3xeA0w4P+U`{zUH>zR?br&VmM~fF&ZMsHU3GzBTFi8A1B2rMVU?Ubj`*_X%{&SYFT;YY486ku+rz1xi@$9*hUVAOX*C5L$Ej(!R!!p$% zcj1UJpt-`(e1{`rb$dW1l;;i`Z4Lufe+?xKU2+*dV#w~$c?>Q;)RZ)I9$I0sk%kUR zWJRNZGzZ(y2u~s9KLrB}qaBbEo;Kd_{v7n43)m4T4ei2EoXnRd$^%8?McV+X7yk`H z5z2m5WMM>-bHBH?@3kTMSN||FYBU-gH-_NQyWP*bK>$TmV|LQSZx-+ej@M#2uXFiO z8CskK!iTHIQ-X>jNfAnU9NreWHr z_2mmE5S*>}mhyg?PtWNpkP&F<#WfA*-#JLzY0NoER;F#;KwtRaX)r09I|*!n3<7`9 z(Qj^p!Mv)?^Ubdb2U#rs$ir0?ya--AFiBvw#j%l995&6IdEqrZK@{DtP`8_H27ljw zKXtjkLcr6fhMJDEdmTJffwi-Z_#J%q`;t&r)K$;ImYPcNRqXvarqFxFltm44=ych& z^iOPE$?eeSW?g23-OI}0QXDD#J^6y6`|>qO5Rx#!~6)QH6Q@&q>>w%Qj2oCB>ELFQ23vf zWFX+~KjnNpRo+68d$g*r&8>?uInZgHGT%1X@ZetcY&SuW)`;A2aCK3if1p)R_pL`Qk}8hKYwx`DIi)MjL#*bZXX1tu^`-cGwlsW#5Eg0 zUhV{;hob$8Tf{bQY$)4dPtZ0Tt9LyLK${SWM(azKTk`wXrH$vSzX~AakRUnFGId?w zwxEmLHAlAkc<_2@WWw(q0dJ@g-6H~*{*Kg`yt2ITOzPVmGTk>-W?~h8J3#@jxk$cG zbwBc~qFIA5`FC6P=4tE|^gnX9KPO}d%d1qyDqh>)516Bz5jfavI*zgDOeE^}X(gX! z@zn!3655B`O9sZwE{cZfzb%=!4@c(D^EAwALv81z`2)|Kw4C7- z)I3!hRLQYr3Gq#-I@l&Vj0Msuq9RZ?L89!eeJ(Cq5ICsz{scXfYsH~MpTKIPf6c;8 z+{gOp?z}gMD09XQu>(WtmR)E1y1#R`;mIXQ;hL}@(1PaP$)8j(-Bf?1)-(IfnIj6yI6jBv4l7&V>cvai{HPb;$CaK5?&p1%2ICbU|Sr8TA8fCR9cf<+U0 zTBlgM@^e6J;xZ$Yo0EmS(KZFB7m1J=O4!4d&8J@StN`g*PfQ{wbsH+L00pj}aB^*b z`40ubz~lawE$dOpDT~>#B(-$iGhnz1IzH)F(;@)1LJlvKZtv`+rYIjf{5=20WM5=& z@2@@My@S-QOgT%qEry4QK~UuYoyxpBzljZGYKT;&Zi-94R?bsoW>{ZiC@cKMU;`e0mIIX8}_@Dt_svWqhlxl zm^buxL38;a>-=1v%Osp=e|MxzZ!xE%uFoiGe^)La6_b&{0)Q_OF{h#)8S(<3*>y>G zh6uNBLIqRq!tpYqTx*za-~|jB*C+_|+Q;^>jv128HyajDqG?j=GQhPr8bvZp+5$*V zoIl$Q*}-CGhYDXMelSjS8u>REQ?UHbnkOia+L?Vb3dm6f;6y^G@!W>c+I}RkuzQ4K zSk4@_900?UNiw60)waP?uIe$Tbz{TWE|s0i`*vMbdz2KGY(T|~SOsypR9#)e-={^s z@9M?=BlMa!k^0T9qY6+35F^`;t@q0H!rV>SN!6^m;B#$!&SJN>ll!qG&|c-4n=(H7 zNT-15QLvX=hH70@t|yok-u*=?*dcc8`=KdD7yXkr6nlc*#PSlIJ@t#G_UhcYv0~5B z^wwb)AdOnyzSpJ+tx!Rd++kw*WV&ah;DH|5&bk&$F(}x>p$1Tt5E$u{fUjq3$#tK7HB@)wO7=A_K(s-<+n!xd?9p#z*e7w%7TjHYa&7t7iJG=s zZEIrysv$TA=bpjCqiF(a6}`jPN{@#m z9a^^dVUwWQh&By(>-lr;z4(X+_i!eDcxTJj{tk$Xi)AGW8QNV3RLz+(Af7Ck$pc$<<={ZKJvirhXDv*YXVg{yg0Ck5Ga1->}-G zm~=V!Ld&-bU4g+(gw^1q-OUTeI)cM6u9{RfYt|w47b7@0r=nQM0BRwTF@WkjB#&N6 zw&{R0@s&=l7}9%Qv;fe*G4pW(^j!5L)Yk$s>fScw*EFf|PQ-$0LO0=1PpR)lMYOl{ zsh`Dlz*DqFj2>Fj`MZ2PkrUU7j@rjy{`tNpeJYM>y;a#Udg!WQ@t($2tE!`C3(kT~ zS$9L-7r=x2nEUot$!3NjlAG4TFICSX_r`ing-n@Lwx;{hFU7O?AM?FqSL zFqtyoHe)--gpce3REqe`M6Lc~l#SnPemSmPXXPwC^WaShf?)-BvQ5NnB<7byCdQQ7)y z26W6nuiximo#T5C#;V2~#=4k4hVIh*Z^|2Fs}61!u`u=G^v^x9&Moh2C$lh`CMnJ* z$^70)CjnNbP@Z#0k76T^c7W}kxBnQ(`TDSnQ|F5AUJz_EEcn2jYCfp&0!6K5iMKi` zxZvI`B!eR|XfDoG7qt}8my>S55>J#W%L%bJ)UH73=N6uFi`N|hP0MAoFSC=tu~^2Y zD2`oWhtf@e2K8>&D?O8HkMrRXCzO=~c=6)P(Xs1MSK;0Z6VvM17?xbj!_!MDo{^qz z+XtW3=ge0MY4V%FsmqHzT33Ah#H5p_d!pUhgt;3wVHpZ-P}i4jmg8rrmIj1|oskuQ zNn?M~Yo#3C@@&k6J6JVx0A#V+Fo~#=Fm3;)25l+j;A`6o9dtWHA5UxGsewgZ+4p?pkvDN5 z9V-60zsI?06$fRYd1#uk=t=<7h;BZL@28s~cQi+B@(1!oBaE2U66E;le;fqyvM}LX zSAp(eflCwbw*uJZ#4rG9m6Dc$ZP(lrkE5{XjoP(I@VCn$nzspMMVMfVKhzq{>r?xX#_`(N!pS;rRkp5r{LgbU7}S=g@p*rml- z#c#p_yf1rdheH!tVY2+s=FYC9K8zbwiSemjIcAbmjGO_6d>^!N!+~lvPfDp9<^8$k zK9@n%FprnS`k7FHKFc4|1rZF>V7p=485%qJ^~s>`2$rDKtOT>Tx`z=yRb$>gR7`Ws zEhi&2x~DKk_5qi#ZR4WA@ZYm0XCUz#-%@+MzFrLI&Hq#%y6O6|#gf1Qc`V7evo9yz zA0E|OxBxxZKanBsk*8Ebyz8Kp)DjgXew{_n2zTxRd{f*>MMcK3U>Pj{Yxo4EJ}Wit zli(Z}tUl6h=(%i{G^v%{auAqyKVHk>$VZ9sPa9ez0aaFIW_*0Nh!{WuVlL>*cDyw? zSu|Q#X}i%eke6xVV~gIy*Hwk1`}kHL|D%AfXs-7e%d26+Qd2_3`3uTl7wrCDgB{#X8o>uApIS9$0lMgF)xG zGK5b(*KRP*2?(E=N1V<>e6YW-$WuC6E?4Ut*$~>2xR4_S1Vg>GE`fva@rXD@<1Fi* zTWI53$JKC$K1JOe-ARD^%tp>2WlJ~T;(Yp!80RtgZasw%>@pKsg(b5Kw~5>F#>af& zxK2$R6GM#zef9#iVkx6~3~OG+0kHDB+1VET2X<8d{(u8i^Z$G06LY7yjZU5!O?eA) zb~4TMbJbm3)`Fv}n%2^@8iY={Dh^|Fl{_!m1V|POI%(Q+y#g6%_2qpknu5b4tN_0g zH*;El^2bqArVq}%gYKMoa>cQz`SoY1cF&13ePBcZNqG6kn7cKzBE&^E*mubcC z|LmA4lr`L#mtjt{zsBtYg3uI*umq^CYiSoQ7U?>xK%ecnxXb^xu2kuQ%<3-o>_oG2$2Dg*A}EMxhsd7Yg`@ zDi++WevN7Z#>$3F+-c9~uCL);D5{r*0>Ptl$XrJVxh?ziR# zf|Na~`VVQ6$s+AaE$BLPJu6k?tS23d((jCWXqx!vD{gAdR>TSl=WaIXqS7W5q=aYvv-RmdEn`cVe9p5d*y2@o?;WTh&dz%HO7Qdt)pxPLzUoTrGj{yG#s zTzqu+$fvBL@-<{~@bGo2&y;NNKxwOyPeq;YkwvolH z^IyyVVAXaKF9gR_6IHrY5FhCdN=_;Zt~{8DVnh68k%LXO9N39(KOk<6&(bL<2DC(NqhRL{Au(hnox=^# zKft1CJg1b(1X4!;(z5nFOrwsn8K7dF-Yh`QFb1+)3`C(DbD zpUHx4M_dP|(9gavw#i5R{T5AI>Q(M{{srpB5kB(_V@re(#{q#Kr(KemqL19D|{zGzkP6uprNZ2hmDdAX`z zjlxa%B4yW-ZcL8XWAsHmot*iA@=fOL1BQPY58rJ?iv~=n833c?y@p}`P4T>YAQj&Gdupy{(J<5Xbxegp6Y<5bI>+-2+8x zf+T6Vs-3F@3k9IWh30kltVQeo@|*ERY69|vToQE`KM(d776BBvFd~KcJK8KzSJB8v zdBD?0)x8@kMt!PJxCWvj%PqXF-SX=;NVU7NWe`97frA5deeJBuPrDZ*FK)nLY#=4Z z8&*AbvRjZV*Y=9Cta|jF5+5-gaV`+Z3~4!aD)D#WNax7Eq0ioH|MywQhCmdi9cWl+*Aig# zc;{6QJFv=OYbaflIRrs=g4Q<@vru?9+9C zQ^T`S0T8bih|O?wF>_LS`DhR(9x?HYYsb}#MsB8ne-upi-A7!BGW$%chM@2OV!piFt63;mj^jvqE(Ss3(gTMMYNcr}7!vYVLVqVFs+=-+_f#O6tKawc5 z&|h7<$zNN6hiZN+-zg%3x@f=%w*1i%z0(k-;&J)fOJp8Kji;3}%)BtB3$@ZTmIk|Nr<| zGBLTJCd3y+f1 zKO7rZTv^w4sjVUNlEv4+f+;<}^M?XeraJQiPdNVdqIE`y?XR_J0B5r}{4Vf4Z8s}STsOSJ2*baIakb=0RV7u=wT2}2NF8xseg}-ZqD|m1po=gH-8RhX^YW*$7o`v zW5K;j<2$z4FH*&&$vO=ef$A1FWH(9hNbrN`TCi+DG(2tS zx(*zsyM34R%+{C3tVz-nz^%K_21rcQ2Fi_K(3*P<(Jjye9gxOhe*hEYFPiOYvpWYLHD+W;TDoWYCxrx1d7rfw z%|9I93NANg$^@{s$Qe^(Ol%I|$mxQ2uLnim7K~`dXX=@-;}TuhY|opWBW5mFI71b6 zI}Ln~gR`hpFvSp3>H~b&&@!4^olFP=bQX=~s;xSFo$Kb_)Iu^XYI%~iW=!(!5o4cc za9lsx_$-SW7}RU*d7LZ55>Z|goL@zDC*4ueKWYE^nzpBFX7AfUp7vE;QHXCII2~%* z5k8;v01G?w$dIuGoW^lT%>%KBg0T>Y(jwjKaOg4@M_))sJ0L~GoR0l_AN z0J8p^XRd)YTY_?#HyRlr22!t#^0coIp^=S=b@&ie#Y#%#a3*D&u()=_mjmN;;Z2MF zF+m+NeUzss*wA`%<0Htkch&S47&9DI=ueAEF5RgBw?Mrm@>o?!Rj$#WeesyAqQS|v;88bI@a%u7UfFfA2it7Uz z)Ftsx(IvAhVB z)l<5nYRy?&R5Wj;K`Jn;-22|OUZ(_d+*|T*>^7hpO06%VOl%dxH(7g1qi@(Xe1Csv z@oDO!CRdtkQ0wfv`o6dBe;zUKJ$8FGL76rk;JaH=r5Y2wUpU{sl6~m1zx5pD^t;0h zl~-SUQD9V>^C)##^tijp@YAd{~o?>2Gn=b7=gY^O6>72AnHiql62XkPtl4#!O61g zQ7NqfyI%0+B3v$KzFhGr5GMlw(6rQMD}ysH0yFmX8x9Gi9+%cE+WB#}wk@U3g((3% zG3-Kg1=e^O)m1-Y4}2%eUM-0M^NCJLY_G(Dt^fBhH8}^c01};?drpVaDS+r#sM)+x z4elh-Yt}`7hSMn403v0>#yzcf-~?Ft^6Dn0pHA&dL7-WrwW)~z)Ff~q&f7W_?= zIUaZa9#-3t^MU(N2R_QVyuj6c>|&gNMcaAL=kG6+G>mwZ_LJ^!-5o__G3hQRp#;9jjdrg>niA}lvazd|-gvGNPTC%alhsTt$z?J%F` z0&;D(ncQ|yh*VijW!HYyO7dQlBVP6dkOSO7p8$r3{6s}IupZM~y6ZCUAk7MkGOV#D z#dT?X1R`r6o1mb9cCZUlhM;uE>W zaASDQCJ;gN*|vhnd&#%6swF5MHiHkA-=_kDDFAhV@U`pfn?14B5)e^w<=DEmnhX|= z;RE~W$Y*a)Y&?^uN85MMU=7;TZJIv2Yj;k|**K0<|$JLpDp!EVryvOIW zUG-Bj(kzxButoY0|9%V`Ie_XIVG41PTwK_Unthyue7~KF zCV<5zZvj%x=l7YuY0{N|>~vr4Qkpwjjxfe9{np6nw-W6!K^rLbR%T;BY;EVrnNHrw zD|dtaMd~bwW5&ca(vtq|MXoZ;u?a&@s=lX87Bq6GO}ECF9P9gyAj?M4-?bFKHt z5s#iM&mM$GvX(PHesIkS`a1fQFT?AboQmRMe==#8>rbV5DjEb7bu*HI!0^ar>v@{G zc|)*8Z_{TG?H9^v8~Hr2)ifF;AgHj37i@yg0BFr>v7J#}do5$;no4m?^Qj~hM`uDO zc)Sm-NkFWrY^D+~@cj@Sy>LmLca4YhTHE@1ojh5|~Vxd17d0v}}3@w*D-wVA{90P>^24I%dj7avfZ)@mi*{3fpCK zE*b9BU>WL%xj}?n$ExSV%r)fQ`5cC^1v#|~9jz~xki-oIp6NqM@$Sh6)~`?|6>Q^DII zNokUBVJJOxfmqWscU|lNEW5P`5db8U?@hZ%(XSeHpP+7tc>n+J?-)m?uNK5 zD>y^W;d9(m_ZdZ#nm&p( z$gI;7?GmrpU)=(ZFxaD!x91m*it zz`%0SV2tmWaLK2MENG~>)3{sP_AF`AuQfm5WcmXBcIvh}{imR??!aY7Ru&W^@R_+! z>?f~c9OvMEQd>Qu}%EKR@LpSc3VV4))&mTGnN0^m>kh_2vjK_0+ z`Qk&UNxsmpFz?Yg^D5`AbP#_rwY|%w>?Kezz9Rh8v((Z}9C9yG)M>JQ#0k}Xvy;)y z+yx=ZD*Cf6XkaQ#N-phen=CPljpr8wut4vwKt*W2I8i29=|FKxL*z@gJr^%^lX@=w z>zDOlaycSM8ui)!pqXv9q^Zd1teVnz;%z07GVD*7w=-ifYGww0XW{K6@XIO)?#)P| zabpD~OMAOnEO|`B(VOq=f6*$^oKceNXM!{fu)S8Qrtypnf|uCoWvuk=Qt_gCL*DUm z-G*iQC<+bRS2!S#$SV>r_5`=YPW~B!mfXwsk2zaq2sNUp)pSb;MG?fy+^0fW@+CuV zm$%wd11dl;+T{MXOH+LIRo5$jfT#pB2XGt`>$dA|9>t>u0vl*|82F~E=QCja++s*?PyH~#ib%Rq=WwCLUo6+~Xg)$rN5kc8l* zcTjoqEhFrMajA;dZ?OgwzhpEgcy;bGt-P+6`&`kak~8g#e?S{iqq>e8zG$=Ldb?B* zjF^EIxeUEzS7ePdXr5ftOLl$!XGUMTsES-!4##pn-jofkINaz+?s*GxZ-4BBy6}}W z;jL-_XU7Xr>dO6x#42+09$iWRKD66A3JT4eDCzVB_Q#l@BKr@aze=<~I13=FbWIaF zWJJtOU3XwGr~GBw9p|6X0jH6vz`U7zXM)B>*QhsSNOKC)EO^fFQB{0t=2vX%v#QZF zH%24*6>gm#=UHDlB*?-L)EH)eSB~A?7NsiJYPCpVH8rN0!sc$yCTI7(#F#(U}6Zww`O$D*d}nZKd#i|SVZ-ZMqtw*AF!2JL@JNbqCK`~NJ$+v2=kE34nU(lG$- z`L|-8Sr}V!Lg?#@Z%BsP_K(>UPhb}u4T-qE(W};a#ys&I7W4NZj|lRE0j_66g3?O^ zElO-c^EQgSEmu?Z7iE9g?yj34WRcyBPHnPV&vUS=YLCkCSk&%`S7MxY1>3Rbec%(@ z;09K`s~xU>?bNVpZ-6EU#;M7+HCEpIeH!Ayz&}$lYC^W$DbHWVs#Slog)QO5*Cq4V zne$9{fur(alCrBuiS!7}BajR-kGi`8?Qnd{Mrqby8!YM&y;V`J7y#R!77%5Z#Zw;) zE}BJlLG#8uhjI8P7@1C0@8r-MeUIeWOIrsu0$fv43b}=2_sDkCXkBfGE1SdP-9uLo ziMzU}b9}9ATpm6w)jePBHGlh>ucEt_Co^|y=}Ni^K(H6D1+I|9H<~EVy<+ft`>_OoT5LW?CL{$eue1*Yax!K>9!bRPe+w0)z ztZd-=<|uO_<-0n;oCaeBrs08*1*RQ^qr)a-U;H8X;E6#`^1UAA^U0+XGuy$-x|&UB z`e9^RP>ol9Ft7}~5;~yU0|vh_!oQ9x9Dv>{Ye>&BlVUGzgXg;Ie>IX5pMfJ+ih+J_ zXX$H(oX3G(XkW)f`JYv^S!E$5#m(xST-{6LgD@+y=J<7gPil+ zO;~Gs`FW8bfj*0&{&gTMVP;Z{)70D}?Cdm0j=G`^`Wx(wCsv)&hG{1d6wwh$&%$&2 zBR^nn?dPShZc9)Dz!W`knD&g$`V1@ZWq$X`6ss}J!_sATG2UjSmb#$=QuIVe<1etG zdIqVKq8;YH&!0c<`;+#+0?{&pMThkLGyTWkuof>Cq+hddQo&^?@(D~Ep(avlD746f zFRmZ&s=LY0om?9BHEIEOQ|+zkYY6Rj-f4HZIZM8(wiNp$CPdSko7+54c&4}4$(mqh zXIUABDKmo|gLR~tXsb#Hl`8&l^&YN20Mq@%i7|+yHV)dbvpUtfylf!Aq^~X{D~#EO zPLSV0r@L)_d?o|m8G7^>z2Ax5D>GaJ;P)=J6#N-qaH_*;U!jt3LtH+Uex=RC6DQXd z(7u)hDdH#Dz$N`LR-qPiqR#M!Bl1JiMX8X0X(dZM=&zFPh&4 z+>NYbzUXtYrwax!-IB7LrwP#zpI#h4z=l5V z{1Lo6)v)FS+qEoLuuiRB^|3s}^V{H{t90qC;~%x`g6-qAQ7^B{Bv;xW=6qCC-RC2= ze!gU_B!8_igX4UBx!GgW@p{~k+(TM^cB7VWq!!ejyMD-Mlc(5-%0|g)yK55XICVQi zS|zCNg)I3%p6S~ZG|(e^({J3vMIgDF3sC7GNTI1cXnxY zJ6SAq=7v^RW}XfVIuWu=C21U*9;FkZEI=ALD*M72Q{S?TQCJ@HtJ(7yOrWjpm3zD|vSq4y693CYyH4nOFzyL?r8O!~KpE$dm2lDv;S%~2S8ewRldy(?9DAAq@T zIZJ$$X~>$=l6c;Rn&24EY$Rqy+rrJ2eJop)u(n`_Gj-_tjMCNgYf$AcdyQpOP07U` z7puRcRiv6x-yW6ka8jR-|DE}o8q7P0;l;Jsz1_)UoKj>nuKGVx(ESvPHD_?*WU|6v zD?K7b9N9}7xFq9KHS>8~9=DOe@**wOI%7mf)jTB_;EW^w^Q)j)t+p!?azeAILEwaz z;KXoR-F(*Fw`&U~Ny<{AW@(;9Q?P zQalnoOM?O6g4rHl3bT&ioiViZaY-E&|3q}}PZ`Y%@g&6V)p83jeP0|_uc5sEpVA$C zOlSYI;}SEL8#77K8^785Dc4xhAUISi=_Iu1n|!z;$)cC>@()21*^0{!svg~1j}1D& zDL?2bKdt$b2LW%r7NB%%YmFq3{P{R(PS?~-OH zW5m~Vm4hVLhDH4%DOMMw>#6k-2_CgN%m(efcpwg1*yfOV*w))jrLAq;uI|;G%uB5 zl5-2Kn;d-Z3I13>-H5qHnQU#j2&>oHvSkNNG@@}flj5q+959SHK9g-*QI8`#{t#Ty zWHKi&OFrXZwOCZ9cBuh{%nQ2hq0D{V^GCNS!XyxLYVsmXG?wi=yDz1#lJpN{;1C|dT_9lo*+=X7}p zPugi1bE8GoiJ$8%z4h{Yt}|||r|Wj*eV2chF#mH{w~HKIUD>y3-U{ti?;7yBdo(HE zWx#|BoSGRCI-CYf>*ugjCwU9%4J|FppF$Ex@oi3lXX4?vH_4&pc%kI>ikN+tGwJ8hHso> z__#c~+Rv8Dr`8h`D=UkgZ+PyBb$KK8tfHf-5+Z4Py`j2Z*@xk))V$o|0lq&sUYTQj+oE@zE-X<(viXW*KBLx>)X>B z>y2;Bzik{)^IhT)mF7r{yUVNW(J0|p=|NmHo);olva>FT2*5$Pvt9p%Fq&YMcvOumnj`d*4{ zf1jC=(XJ)-BOz2<>k1;h^I+qsDnvB3)(YpH$rv!i<0`#r3_YzdCp6g%ZA>| zBG+sx!eOh)#bBrYtge(iUiY+P_y=Sy2K)UdD-WbpT*Hn}=+qs{R0Sc;IU9&oaxer~ zp}C+oI=>C9rbZI3q=B;QaayFB04d?4rwy+ z@qJ^;hDr<)@p%#+`kN=U!nt?Q$=XNChOk$lhD!;C4JdA1?trd*Rry%~ztT%#X9h99 z)X}rlcyZ?k!XWc?lh7PnYT0u}8O`Llcq!+$ylsBl%mC75LCwK(tWQS5az!oa07+?0 zdgNUDjL1X0Rq(2M+cSCAntNIf&;8M)g1fJOh!kI_t8Wj`aLyXFRw9h=EMWJ(=U$>X z=ly-kwf<*t2TnPA%gm54+nqp^#6cfu);(rLp~PK@8l8SHQuuW^Beup%&y-L;IhW`M zsTZp{fV!ty`L5EnIMfX=UK*TEz~6Nqh$R^c;_{*WAJlxT;#j^cwhEhir-rnjly1np z{K!$+F81Vz&rNovLxC@ilzpIczuJDbpTmdH<+|>p0zz|Px~6>7vv4`Zql6rAnO-uu zyBdA&$KmY?^9hglxZ1J4S(c_(%ExrYf?Cce_-}=n1g=MJ0tDkGJjl(sb&2lvnj2qpCgKNQD`1+*Y z>~C64!KitSiTliqa+WVrh~ln6B{kSxKb6{=0@~(6F*P9PGZv-X!zA)bl(SH_Yvk6u z2QosaT7-A!6=nO))#rgJ20StCOT>Svdfxrxqg)*fVt^!^R<@gbJF-w-aUpW^Tb#pG+O(IxwA7oxwomX5#4d9#W`#>O2`H9r(gWB5- zAX%=xi568FCr0tS#ZAhKTyF-HSrHE{XxZWmivuOvZkcLhs^d(-*qrI)yXTkNZ7YAC zfSbN$la(&wI92W8bcfjmsJxf*f^%2A@^Ub`6~kEx;~A{i?FoBt?Q|l0 zD&BJDscN(zl{AS|sEmU?9XjiElt;?t zhZeEdhM`MGF)KPWsG*7bQ91P2+^dOO+Og#y#Om0Mqld@q&8JN7i*e4|Js$)c3;83< zKP5$CMZ@e!O~rTgpgdp1>koh^#l-if)sE^$^4rU8A=>!MqTyQ^X!rG6GFxfhcws#o*y;$Qd~&p zTe;lY?#iDZuR-*yUwZjS{Z0hS8biToal^*AI!h+&Q?jbW9eGycDER9Nm4NZXoDBd$ z*;(7kE&^t9^N7gaJ<27M+9w^Z21CW$*^(ANi@Ix+>|Zv>?l`}?6*Ag<+{aN-Ix&kw zRP_XZ2-xEFD@P|Oj0u0D@-G#Ab4X{S#A=gH&3+`$|w(=-rybj*ZH zt|)$Qyz4%s|MYMcpE)4Kvq)?v2k|I20E=e*7{kl}j=P7SWPFm8mKwOXXb4wr(TZuj zyv>};cN=2a#fejqhX#AGNw2?KaF&udx4S%b493ZHdlGrtq|zbw_WJptVA6!ks5U*2 zu+jBfJ;f6b-)p?C3Fmqp&(zZy3U*6OyP3&LAZ_FAWWWJ16$ZTgbVBlEtV5XrD8h>c z?qS&<+hHdEsK}uinS=jaVnwAYFypHEZyV_dd1f+djM+S|TkKXz3YjLF=1U4ED0d3Q zKs@{G&{>J3A)9kxA{ua-zWP##Y9Fg$_VJ_UzyI?*>uxy3Xm4) zf4+rAvE&+88?%9F!6%zrDQ}p>p6x2#Sg12N<+xK>JXD`tN*m$#bt@8D@MYV;Z~aZz zjB)7C|4-LCVJLOB(Q*>6^XRE=Wp#1RT4G|~-A=>6p|yp|Z(Pl(v2JyoFCoCW1W|;} z8hu-LuXq!obie@LP~3sn@h)vj%w6izv%%ySBk}MA&2Ie3b8qQ8ZA`PTf~VqTDk0E^ zd+xHe#d#YlQlcbZMTe{RQx#G*Z(fUJLGT@xA(OX-;fIW4WG_f8sB)OQRM6f6i>Rv% z=4d9ExB~`%5z(Vx!qVOmd*HFv2sg&*)o)W~&$h{X(b=7;&hjm}Y1YT8lV31C-C9=_;ZOS%6=M~q>7p~OGI2~7P1 z&3Mqsf8C}p)}{YDzg+t@Id{2X`04RxunNn^6*?3Jx=K8eP7W@qDcZ|ZkY)7gZt5nv z4jVL-9=mWJ^ILzUs3^gW6)V$E81Pt?o z<`A|<>4l%huxs>7`17g=9lx-{HKij?g7_oc6}$zDFPhYT8zd)^x}WaT2{}QtFM3Zz z&oQzr_68gx4flEahac=53*H&>x%(=}-#9K(CPzs(Q#^WAYV7lZ2*}=*=v8)asdu$6 znQ%r5+D1`~XIlupHpkb&5g#rKMhFU`_|Dr)w@!c?jc_A#dGh+_Xx(Iw=@ZO~&EojW zx9H7jk}1k;gvG&mhoJ?H&q^R1f^q8o*+WG;EF>`NQfv=nIzJWyzUt%ZZ>kT?zPm`2 z6d0hF@X{tXo*-X&#qY#DMSkpD6pkI$8XM$HiUt@L#S55I=6i<|Km8f~?zhgBdt;y4@UV!|Sv zX@U0j*YmhUzd`?l_smv|kKTcZi8#4+Yqs7q2?L_#rn{fN?0DUjm@o|VYLx=U9icy~ zp4Hy=Rtv`v-FM4Q8xV|leuZS{z3wZY$M;R!Hh*KlUl+aOaR9R5V{kyJD!KH6-P#*- zwp`SarlrRK+6>e!jcd|3)oXG7>aR#c${WKEe7r@IYb-kubCYZNirqRQ!*y+mHn&51 z&?6AzC633ksm!|F_m(WYwB!z~wKk8cQjzg2XBxEv%$+guM}|Uon`Ojn53DQ(jpyq{jX?0JK1L%1s$RKq@3&1+x*1#w|`ORkn&;C(f!LCl)l)`OOSD z{UgeCV~)>G{FEW$H~E&O1xNdxtbrBBJp9wN8++nOo_bkjbhE_oZ`17@56-|q##JCl ziDk^SIrF`A^Pu7Agwel9INCq{L&AG{^ImOLqR(>r`QW77HBaLTAA@npbt2zstw;da z<*5-@Uv{hD#)@M)o-FS?lB+e}O>oRmVI+K?oPL5@D2HwGR7^iwmo&P7u9X&Tt2`*YjjgTCO3nlew=BZ zo7!l=BX|L13$kXiNw|tEs|ni$;DqRZ*o31S7*TszD7~)~+P%avb?=74jR{O$5i*UY zG?-9pbFj9up}TkyT#%10Eex-Xp08PKNiKJ1Q}gjHW_jE9-V@nH^SLBaGd-RO{vvEO z%d$G|6th}QbVFmdvCQkmz+jS74Gk%5c$BN#Xfoj)(Gbr*52b zWcdBnf4lBFSJ`}vc|cIfSsyDX=K|Lb7*f)S@0N$4H9R$G_Wa!@`jx7WfP6=sCA)C= z>e=>$U5Wi{WW}72zt15XF@LAWpb}C&1zTWq7kN)KNwL@L>ROGbp*+1<2a%lhs8`?< z)!8@$&=#za`;tZ=dme$M+w<*CZQ=!eKQ0iSzpQmac+s03sTezHCzE8?$YAx;Z>N2s z(?*Idu6|w(_)P5Gi(mnDnv`C36fa(u?&2IH83C9hh*t_Zn{TH|a#h$iBA1)RsJ=My zJXXQso+h_;FyRI{qJOL>+ca9}tFVFPAGRs6;VY;$Uh0$m-%8LBN=@Sl^&Op81Md>b z;4a9n)dDThh-RC)o$Au&?2GajOPW)Kc8|YlWtCnB8nGCXVS2!oT1)l*UuK)VzEqDI z1tU#+wB(|-QNZZZg)Uwgl9EaZ9+*4^h((_w7tBaEt0P(`Y-fVe0kest`q!*`bH7RG zf!)_zXhZ((q}t3gs}tkVs+DG`)9>OQmo&>Ei$=%2-;#z-NxxH|&=peJ{$+7>i%Y=( zY=CcKY%s?Y*aN<5ySzUO#$~R~Y8ED@OKea4&hDokQjwDVUPY4xl}fk1pnjY&OT3Gb zFlFW<;$xlC`fGt8jcao5g3?KjjZ+J5J=`Y%%iAJIAxccmuEXU~qb%D**9>%Vsl8D1 z-G>VhDjG)|*5+gQl5S^7w@L0`LNzBE1}K}UO8jWr*|?W9k@4ixYUS}|yoX>v%!?F4 zYMh>2Zhep>_~AoqTv`qHQa%QUKD-^5HS3yPbG2wYDJ5V+eWI}pFmWFsX2=B|B@}Zgg1@W<$nL>TO51bn(KydnKY@Ty-{-J8&nvVeUQh?mKe`i!?ZE7j!2k z0!<~QnQ6aHfGrV?oJ_0z#NareQG&1MVaq7%P3&6p+zt0RaevTfkaElFXM)=yd}mqs z!=GfqxkZ!C#V+DW!6JWxhyz;N<5%LToJl}7vE;ide?vx)R=H{WoLVK|RkU`BIT##m zQk?_7`_{Ps{}FR*eZ_FU{CsV$U|{D~sVc%_Ao-B6u?sExE<|N;xG(o`goQs^XOJ&Xx@2#u-$ko}^tb_hS0fSsm zyp8wrvU=$KwJ) zd$Z*ZBqqQ%{1o-FTbix|_7j`bQirF0i@W)^6MT%mp02`_|UYUVU zKSSn=FihCaCA%%xhMwg62i*_24vk6PgyybQiV__AR**;6Jah?Z46`yr+D65;Pb7zq z;zqb@?rl#wH3U1H1me*Y@re`|x8vL-5qhP)`AE728{mz54$E0zQ1Zk1A5)|MSiR1+7MR`By)0a%!RUj(?#pKkYokIXWqHxBp zsd(tV@6htP2n4^VW=RMFk{VGgbo8Z=vgd$N?oyjdrRfuMjBLY%83iVj^tO$AmFRhT zt2WS?X#8$-&(}G4^v<7Nm<2J*7I{cFx<0?9N+eX~25n8vm~Zl5t_kLU z(z3F&JxYu)n8Xtlh7C8?u_vG{eQ^6TVqN$I>Vti4d9g~&F3BYd9&7vfTTnm99s#n2 z&NVd_F;ELCvH+BButdCTb2Sa`m=aDJ&vfe!>Id{r0t_u$HfPG*@u_JwC*a&K^d93g z9E3X=AsU9b6Tl7b0GUr+_g^pw^AJ7hwyBi9scKV@(F&qJX-^stNT*m4%aw7Sgtj%O zS|f!~MxXJ8GFpn@NhSs#XO3xG??pc^MUqoYP_&{URoxO$iG1) zvtmW{#%yU$C28JX`+g}j)7aL>4UMB?JOLHo6a6mH{I;clMrhzPwhQdaY2>240$0C5 z*Bv3DDS}H+YXMwZgQ0P?6H&dS1IRkR2UOFE5By_I3;BeSWNcF078!8yhuDV|%wyVA zk}9WTyWD=);?y+R%*<@=E`j_9-OBp_=Q&Jsa}G8Q*1iJij}|#F6?VCh5#5RM3cvfk zWGX}*t6~)ky=IM+&7k=F)jq#T)fFcJs|P4$>m^M@BaIqV`Lu&K6#*nqd{Opy23Lsp z{KT((jHb)(A;=YzGr`%m#Ny(O&k7D2H|1G@;&1LKUTh>=N?qu3AJEo~ABM!5)jN|+ z3VZ_EOa3s z0Z6#=wp}mG8tB)Nf}f&_dV7lMp%Y-g5CDy61nAlcGx_!a^PMmLfc`bJJoH!@e*!ML zoYzhZWx-$kKWv?4K$C6%{s{qLz(jN)ts({>C{og3E8(rujpXRb$k8FU0t!lphzd%L z8ZjCLsSP9sj0PE9gN^2Y;_v_Fd3^Q?_QKe%>%6{k9G_$8G~hsDKmb)Wql{n?Y6*=R z!=BK^molICnLGetfWx79jD9;@J>#5$OE`5QsgOuEH<$22UEb?~x@I-Tk9`ftmm9uu zdCnEpf*afc%iZPDfs6YOfl62A%jS1f?1OaMI9Y%K{pPSADa9k`d5+)K>el00>0#(n zCh0y{Hv+jXu{m-#2zW-xCb1W1#X@`3tUelzf>#-LqIxW0oi)%ljodlvyKx zVtrB^{-D~(Rt1kQLXKvl#1rEZpHF_i-T$(JRJz{@R^#s2s59hd(TW}cT*GIhRoqSD za->NDCq|Y0q+~ySt>7IekXZ%3YKXUjF~XzkslJXXg-L^C5y41#NK$QG1C$HwQ;Lw& zkLi6W*OtBeZ-UT?RYI9-$*=gaZ=rSjbOHKo=NShQN0P3nSTy~7-V&Fb*Pc5?5MD}n2WHuRUjptg6kRcBW-n&GAS|DpY|(T! z<;@p)%XW1&aJ;0aI&lsTYg-n_G3`~n|D_I=)(TMIxS~n}|NfFQudJTdN@d)~zt6Vg zIfqA&q?^K`#~NTu1>HF)Ze>meI#{ja_V(_4)m5XkccOJfB-u=o2Fypdd0{#)f6&;{ z5-5%d|ISB5luMahIv$>xw!I+c*o}HQY^czxDE8&-+`SNZofGfLrjB23=4; zTjkrtv8(a+Kz{gy(*hAOW=G`glP%*v+0kC4J6f&_d>E1+deyUm-VrA7rO4oHR>Ybj zm|?)QizO8XDEsyj@1EK3$~!9FL^2-`sjKa@3eKGFjcA9Pdrc*hh!+m@5vW)B*O0C* z0S4Y>3=&3+;h)R&S+$HY<{s^<&i?Gx==$UjJw=~uEV}T`Id8k-+MWgVLM=mNkMC? zy`*XN`y+kHvt^zx6g}Ofo)l9bs77UzvWo04%rhgys4MgzL79(-+=v3wal|R08amTx73^ zRVUjO`zPw4mq=WkERDY|OIFv_E&dW8c)^`4CC3_TmwVtWyO-cHzPQ=1Ih)1Un2}K` z^xR&JbfYqQ7779kYcCuWzbYSZigGPcr(N*9o#i@BxA*&Eg-?s1EDJ*1yv*iH*qxro z=khlD-Qjn%FBJl-lhJscLUwLi2=UqKfe+B?o0%rUNxh5Ll1}Go9cKj8D+Of;!YK)u zlggZ)nWhbq6=%$+EC7cqV-{SCgHJ(L)bp@kSrau1qID1;Cpp~VL7?}K4d;Urv8|A8 zo=v+mNGG;Ar%^FcNoG4}>Cq_=hsslpt=;s^0n;OD?vlUwX{$ugsmTQx(pxcYyQqM> zA+A%#;Pz8a!M~4)4Y@O0Znoe=zmG8v%RMx4#t8Pis%pxzf@iE*QQ{JQ-9gS3raVFi zIt4h*LAy5k&~aDYQj-I6E=YP~w7_A^=M+gp=PWv6U2*o=G3}0Z5X;8xsK8EWyDouF zkwfB5%BMD3lw>Zes_PzyX@;t((3Ujo%hgCVhNs(_0q0KpE5mZ}j2auZsLiOP@;U)w zo|0=bAyNHXDL|n}beZ^$BYMVwU5}0+gqJE#Nl4IZvNdu%8M<5nR*6-2up(geVEbKz z)(a`n!8>Ld`wpaS97Csw4e}|M#>q}H0vCMi6vWeHb&$op4x8P%2ind2%h_weN~VHR_}9mM4}Wrg{xsMX zzg?Elo|q3v$XJSK3#QG9&|8qyOd;s<&C`y!f72Kjxm>(h|FMkv=%Nqdws=o5GDVYI^z7!`< z@;GT9mJ|Jbu>#k+jwe5NJBsGh#tcaFO%lQ$!(=jbj`|Fm*A-c zFhE`P)K*{l_`J{qPeMmN9W}6BQ921E1D?469gC}6_66G?NC5TJo=3jsr}4lx9&EUR zEmcTO^Vw0Z<$u0@ou9SBgSUQJh&T0h>k}K^reEQ4X&XVc1@i(GQJ%yYhB6%M2Si6A ztYH@RCqKQCuP}n2t!pnA-|);D4(^lQT=I=ptv3vg>m-Z4N&JlML$iGAj zPXoM;p?}Xr;=|AStXD^aSC9=85Tuq!Xb8;N7bI*`us%j0dCL6U)4m2OcE1$@D)AH3 zWb)a>%+5MZjsbwr8R`bA_CipMviICY?jQI*jci`mgEg52gby(q`2(q6)u6g@4GR{@ zPt5&#rgoIsS8KOn9;8@kM!fGio#%X+JM^NB0q@#O7Oe5LyaFELK0a6}<9xBH?>d-_ zGI((^QZQBp*6^wqk2(f7%km|ik=%3xHRCz7Xru~QV}KM0cz4tCTNk~dvAL_9_g-8C z>hNy_LC5ap<%V}0NH%5vRzZTmcY5~{r`UM^3#(1eM$2g50zAgB-QDv{PtT7LLwJNT zs?SXKjTKdcGaR|R{pPrST^Zfz_K%EHpR0#N&_CIUH$BRI|0*pxIJTux8wN*Jj2Lxv zW`3r?C;g@w~j7ptl{%dpO|oo6!So=l*JLbDXV9bAxfMh8P;&T-r`yFM8F zwL5W%%obt(Jb=3^*Vb8^Bo>MVj_u;H#<0kyZt{mx8hgj*?d^WbUJr-fan zh!*)~yM^Q%R2Qrr)b;%H%27OO4NGIug+9pVIytE{P= z-HDpRCs_yZh!XQjN&Oqlj2O9cP#sabX?(SfPHdHZ?ynMqg5?Nd|2sD`#eeFnJlgdi zLg_6gI-uj;^FO^uj_Lo#=2}8GY61;Y|(CJs&TB zzvs37uU?t@FXv(3a^PNDQz=f zzhHxzf?hiFsv#^z#=ar_$UGs2mV>`$NR0SAR|NWk1THlz&P5e?=ErcGE%ylNAsqjh zbmqqb9in-|`U-Wc!6a~Ee;gb>w+=UkBVx{R2YOG58}I&*fxMF+uQyOI9W%7({5_ZR z^^E^8WWn%8ZFn$PsaBVE1-q`p(`~8ufMRpse>F9Yq{*>mlN~0_rBw?5)|Bkw@@%NA z>|=8@2b5U*g8>%5Y-AZ%Cdc%wY;_JMhw3~`xv&jJm6|%SSD?gCpl;)Hup+FrOCoMO z5^&}m8veF=QFr#|*qghYugd=ks3^LP=HXW09yMjY4UW_fJ}0xjP2{0pIgYO1;Or&w z(#U|5R%xU``K@U&`1wP(!l)=9ev`8xZHT_g6w++jc+q_-A!%cabG=N_*Y4N{+esSGTcd*Ky;^wWIVW}^zL^kw|yKtl|U<)upqA={f^}y zKo23a7E4FWc$=eHOqP^4s5-naLUOds)Gk-`F01o1ckyzHG_mEJ(wiLnsJQFH4MH?F zIZGD({SmL=1JP4QdH`Gz!q{rM@b*VASk4*3o`E7OXr4uWL z_<|%bM%*8=JpUOy3(}19lDiLtp5Cx&sQz~IQXM40+33>3Fk6mGX<%bhzbH3a$M&(n zhB#(*608+r{49ov_2eNg*vnh_Y_9Fy5fK%FU-UAiziaYmerTKm0#six6%+?<;kI`i zt5j`u3k5ojxej@SQP92Y;!D|cfsM(Y8+eEeHHf~fp3>l4r;gQ@n_D;5o309GELVyz zN6w5$V45ga2SxMV{d+sReO=i(wzZUSkuATJv@A^yqxjRsUvSwZ!}{y|rpPDX)q@3H zC>P;i>0>XqHxf6ek!RTeSlx}PiM)oFf=J^p$o zbRww|w!sSLsd@KOe!%Pas8L2TiHaWIBZ@vD?KWC3-12N)%y*6I#{LBaMz0h~oU0C5w5!dhHZ0f@`G$3FvA2y$oj^fyI%aAUO zcI?LatRQ6Xiu-x5eUV-r$wR;CPs746&N0JYqMI)dBy(gpB#Hv>+pD$kTn(Xxl*rs@ z80}et+f*k+gl(9bI%Ym#I3MF z8@06t+mZ~0Tu97B0Z=lz{%mf1CWSpHYq5m+@A^a>ZQi5?qMtG33PzCzukC~MW|Apz zu3_FDUsT>))$s^!8XDC$DO&J!1EDKiAT_J!RG!uaD4bp5rxX8i%^5*%l^YEBl%UiQ zAZGE))l`3{6YCPk6UFnUdQG(3?jU6wX+lH{#e*ECgAXGa;GX5Ix9ccHAt*QfF!`I_ zH$K+YK<~BqRs`BMtbhy25z;F&v^wY9C# zwoPGN!_pP7c%pM_{l|b_WjRQtps3zNBhIO*ji&C zz0Ai~$13O?sG?#YRGTiu;p0os57V5f+x zJ6jIf44X62_TypH)!zUaD|G-rm0;_}sMrhX1tXdPbcm$Llli_DG$#JfdL1BLTQN!OnIJY);-v zLFQ{$$f+6NKwGM#rU7N>WxBEDVrvknr{pDqz>O09D!N7feE>!;pcv!q{FLhoTGisi z1Fw=1Jq4!h!uq;>N2+}d#KY;dA2Wo zbI8nVE68He%Qk(So|XWn{F|2zz%E3QdA&sNK;Pa7#kp6(g-mmBi(+n=PeOaS&o}qp zQrORZ=)@o0OuzL<>OgDxK+J_P~M(RxtTIMjXRmBDvjz zs9IU@SYuoVQ)Ju1T`QAIc7@xr4@Y8lw=c%fzNT*zK9;3oTfS-TO+(rf`$a%L*+qL@xnUTf%` z4Q-Pw_b;wE5uYJHZW%sDRFuK>GrIWM)cbxrrv?)b%FPy)2P~*nW-Dmwv67a}JnG%0 ziPVt@|JqJmO6VRRcw|4~{)NKam9vZ6k+bETxN&bzfzR40@I{_96)r zsSFQKR&O0XB{Z1%ucz!cszLPg(g#t7@3A2>$Nj3$$ndRGTR&N>k}l?pOO8bIqCJ$| z8-|AQV~!}TX_Eduht7`lZe5g0WZ*yquSGitL@y+b%jIghkh>>D2iy>#*+v(6 zkE~Urst2Kj!?oT1iOuIglN~@6e$Ah^|IPt7C_P{2&!h>hyyzGMq~8im>FK$<8PP9) zm@izzA~Dr^W^&yHY2Jfr3XgxhzwQ+PLc?byBwEYIH&fk`JktB6>syS>cdrG+ej66^ ztt);0fLeWU*9ul};9aNk7$nXN7p)EzZ`8E>&DZ6~NX`Yd+VorS|HzXfnD47W+Mhjb z34jGW(xiX)tf5v4mde{LXcGcT+e8zpdDcCw*#k8i*ew!@`i;Y^&E zuM(*@Kz{+}@FKKn*QlaE@9f5v;%4k}@&3t$?GKv((Z#?y{@ogK=>`brOp{k+tjRdh7a?R}j!P&{CF4pUnPdk(0g~7?`4DVeoo~PgHYi9GjTB3R2DKDxudgXnkfWg z2@1t9GzOmbGYIzNbN!DhR$iACU{0f#&FBEcOXovzKZcN;1o~In$_S?t+4zRix3KT* z4EyyK+H7VwWSS0lA&}i*hSOjHnrrjo@C*6HNksqE!)_5sQAn7`A+&JtS_*sec~?pm zLl(}IN-sxKIVkBXcC-hgp&xm^H+zYcH$q7>8{e`%Dqpvn9N#d zEIoq_FOCijkbHAcm{kH?T(gRMMEt>KBmEs{@ZnaeX6f5Sr{Aezm4|aoa-Jg@mp)5! z`D0JoM9(P`7GDtf!VY&Mz{8Iiv+&GL9P7EPE@_wFE4`_MEMFSqm8Lm}NVutTFZuEx z0j*<-;3+mnp;N*4K5cp|SSSJ`DM(d4tO=?a7fdhGDQNyqL9lBX2T}XW()lbG&3T&` zsmoPMb9|{)4s88;D_iYMn;4lTW({A;zBA&Oj6irHQWcdY4q>q9zU5_opDLJpa)nc6 z%%MPIwsK3s_b4p3d=Z=OSOS+~`v=bRrB|{)-ZklP4Xfo?J?7GUI z?HSoDb^-;M2+B|}>yT9do5WS%GRsDd4{@Y2Gm5K@77ozmc`htgK4cj>P=a#H9@|M! zH;tAiGx~VVN{T+8Xj}AxxOFr%YdFdJwP!)RB&|xryiQ($TP%(Cv&EP+$n$FZ%hMcg z)r7qP$dP&cZ_P$4ImfBQUiWe#QuK zfeMUVEkrN_K0T4OO4IaoYU|v*Po)W`QM%FozY}E_Oaz}&6(QbrwH>(Mp>WUftSHy* zvz+2DY;mCZSlxF9Qg@jGCD}UL&}b$6XcPD+fs`j-9(3eC002WUB@9py|J4tHU+)o^ zJvLd6e%L{E}?gOrc`aql-$_uFdrn1}IhI6v(cp~BKCG_j4*EaJE>aqivn70w zktKeoWB$yrI&_^|{=-6l{^vj@&WNG1l{62~`S>t_aYLP%HD~L_Clo&dX-4&aWko!~ zbrKTP?^~qQjV?`F6Xi}sH5SBCc2dqC^)33O&Nmvq*(ML4078$MsUgN))qvYksF6zeVZ5G(6Uv>avhr-~qx||%8f9P0 zABnef^L_fmyMNqkCRy6~jum?9*rPMd^bfE;OFrx%tbwq{3<@wKT@#n6#VjVZ$EKwG zR|urPGjI)Zl(LQmm)%g2Z>O^xoJc<{=ffueyAj~QT#dad5X}^AQmiv5NYM9EHo0{U zJ$Kv>+tV+d84y|Ksm1>_l2bs0FSt)?$%oRT46z4*ul>ZZ3W468xl{(nl=GOVl1A8k z_1H|Uk?mQWQue;J!C3&BIY8F;R3pgjaO_KT4m6Z zs(Ov-?$yS-DHEQeJ#a^DS3*Bjr(U^^ln|X!)Ey{C))%7}dO61=3-E-!RQu^h#bD0SrXlVxp!* zvo)NNdWB#AzF$i}{VD%Tfd-AqML9LqTv}gdcH`MV08Ce_q`sl4|Lj`fD-|`wspY2{ z+a>_M(lEE~06EXj6>NbYpJHsE%T`-GtamTv-T58MW+6{lDq#j@p~z*l9yRLz_j$PWP<+Q;;# z>otLRHwG93na_c_=7a&dnF`c+R+f59-DxF~-Cvr(%9}TUa|hN$6t&npu|%M(Djqji zBLN-0PY0b5`+(mu7WbvpPL@GrVNMW;f{p$6n;~|YK~X`3aU+;nV==Xjok%9gg1L#g z%PVt_Bgn}B*`X=2%F-fB?I}3759xM9;T&3IS#$y?-tkP6Z5Dku)1aGglkc z6}W0(L37{helSq_U=sc@m9DX2PK4!>`@uBqX(g?;rutnwF8BOSM!q!J1?lB0;=#0D zKI|PlDd|@Fk~C6xi75Oo@7{-lBsi#~wtC_)cr3XV$=(JR+wjltFf)yX7K(>uD&=Kj zFW^hA?f(7&_Czm6F?WR-RhGhZj_YdTJE%T?KOyHH{INRQKe-|BE;sM~GFj%f`3P;I zEIZ3oRAnUegRBgQ;@%q*$#L4C?=8>$kk=O6+sOg(Qy?Ag=A7(Imp6FBi5WLAjSi#P zff-?k0!_OL2h=sq978sl;;Jqmpp-;n&>xIN+L)W3lmK_E*MdWDGhym&Bf(_8D8xOgQkI!eb!Pz8X1KRJy!lXH=|~pD@KD4Pbx#h2UI9}Ug$VT( z3*|z94DK`ye8*Ci6Dd{GagD63j~&YhZ6urD69n}S_uI*-Twuif>B7-F`no022^H9n8|$CYC{#6pJz=HQ?H5h zmHG-n;VoJ>`dpMPNqeFX^NLLOuB}EWA(tLL+Ix38_@YhYx;;jz=b79wz!Rw4>thc% z8Jm?bUgH63*V!k%N`>zuBb7(D&j77s0@v>baDGo;8CmmC0^KDw2FSR(%lf}9qp8Ja zj%8MewdoF2-T#m!J8!sM1=C{tCkCfev2UyU=Y2DLff|MGS+8N>u5%iyuUErkuZ}m_ zpC9JSw=EBIydsXSGl+E&+yb($00{YmB%yYhz&^+Kh!-q5iB%V#jGg3`tw80!Q+i8k zm{kLnxb#|Z8SjcbgEnsY*RusTkRT(^$evzaFEH?&0azV)!MZ8|BsXrlZ+WXM%1xAC z4GC-g@*2Ibh;;SAXnui6jNYntuVP39g4N%e94Q-_a%2Aer<2dGj$8$UMHf>B5Uw<8 z9KSQ}uMIHGQ9kyWCZ6nO=--`>;ZB{M!T-)<3g1TREJwL-*_~&dXCt)z$wra40y-oX z*Dr?lwA0pVeH!Y&Iv)$o2M9(guV&_-`b}Ir$4}x*tz`tDG2iacOw@Rkbt^xpNvn%r6d+zY6?!{v(Qvyjdg~K6 zZW$=YAT!8vvK)udfe#a3-J%4(J)ATH1n@}+=(smUfZX{TXyD|$f5gk)b=n2nXtZ8P z*n2=`QFBw z`fx)aN>zz3)Vyn`9<1WDi^?K4#e-^Z!_u`BudcZWbsa!=eFXqb_{rTZwvVkRSPV7D zZHQ$- zvDmQfsw~%^A{>Jr*QN0)&aTws311XQ#k{lLAb zV5Q=FL0QBz0d9*pRy*dzIV&u(e4N3e^O3&dkLKD(litV`azD$FT`E%6TaVC`ZRF(J zaVDEN?C<8V$}k*Nt$EZPh9O+B#U7Bkeef-t;@FLZK1kvlF9B6~m5S+m~uTV_VsqdJtmzH4|@4@LAVV>MwJn z?@PE7-Rk=Kcv38Ynk%5*6f&T+8{4|t%ZI(#dMlkN#FrS#dbkr;<9Q4ag}?zVldSw; z<$n-@s{RT0|9j<$` z-^GvooPU5nOU}Uh78QH>1p3P=XTpAcOPRuIACkDNx1t|dQqNe*#K~Q`Yxf($2f5WHpJGgCcXC|32MmGokRRRx@&CMg2M8Y0^&&-b z{+BE9N~MJinjSbMWzydLD_4hC6S$@U6Bz57$ub(f$#*s-ii&x_Wm!!#6{? zCTYtav4nq)MZjuz7x1n?yQb_cxo6?wketPtKP~7|Oupfk7aAJNyl6gHT?Q1!s7u^rm69E0A?X)D?uy?@TM&n#zEMXMgZF^77iVzDC~#i?K5S z2BsJWFD`A&g03y#=f5`+B7X-XAb@l)I%N~HFuXZ;CDMG;EFc&mPPYPNXL#+#0kx6C zL{I&Sn{JC2hB7!i`{6c2-~X8tnQ@GL8L%_z!pW3)gZ1Fx@(5GubgBvV5NNudzdOhur)dqAjvF~CFdqIk+O6LTDuGqy!9(-!64`Y_${wrK(WIwA z5G_qPK|1eT&KBx)1)Bw_E(Ch$ktdyqK=uzJ2;XtU^r!PjGo3g@v)q9`${@VI+IUv~ zI)l5>vHKW)xY?^J#j3fiNm}C%%A^16qvsMnUW51U0e?8)6r`VfEa$^aX>R`NjcrBr1i;(q4Ju9>^uFFUkiMTpc%=y z=}|_?IMUAj*K6+HpBmm<=m=jibht%c3;f+Gie3l;zkyE#Gvesc?O)TVt97B;i(%nDMVPc_y|_ z*qd5|3E2zE^9a70V~2YoVHv>63cvPfT7!-jG6ZCiAaSv)P~RfuDR_KRxKnb@i8{7h zUIT5RGSPB(+aHW`P@sSg&_@F^k{9G)$yToaqk;0#M`wtxDixA1yl)713|Gn)Tv2q2 z3*q$~-;h46e&6fHjvFhL92qg(tvzpL*;V3O#(R2oNlSrny36+kXjYxM9F-R{tTKi2 z5*f8|nEP&3!4W1J0p%==nB)2hBV|^gH|1^e{k9_lSrNENs>7wC8FFo-ikK69SnwgE zw^xbpDgNiKT?NV~u;?ec+4=treU|pwI(MfJ#_7+x$l#I>@BHAS%35@s&Ohd~ z4XI*8v&|?Ot&zOIc^}?f05HNWK5?|D{Y3|9xhUsI7e$pVbw1I_(jbM%Pg2yLGH4sl zFIhSiGB}H6+!V*ytexj_%!uY?ZMnKlNH<#(Vg#G#hawuPhfuW#CRqBFLKhVK@8@cg zG}4 zH{cL=qf>BfGxHDfB1`ksTTtw9=Dp@0_E_lS2Us0z;c8e3DmC%t;+-&tyu-a?tP6yl zborBE3Z4_l_i0>jFFm(ab2}0}P&2Fk$D+nt@&D8sif;fX{2%TvUYzN}12U5$h%w&A z6Q4DzagUDG@{LcPO;fE8KE8`HM6-Zh3*1WJqvRyLCLf4dG?Y9s?jz5q$VBgBuzLUI z%$-VxgM~Orx8NrAstemEn2jWS6viPs>Xr09%hXgYIuJ^&vfRDG zgFPf4Q-o;6@Un`2Y5LOCKfi#!f8Bq`c51cpew7xOC9o)H50puE1EZDWxdbklDl&Ob z#Rk;Z>>zKWVaz`q6mI@=@zVN-7Evm?)MJ2StqfMA+az^K^SI@_q`{IHCwxiKF6f0M zRDcm2Q~iw{Ol#txngSLrw`>u(W!~CB=8FYe?PSEbEZL&%CC)5+`6vCCsL-7stJ^X; zc}2hVRtC2BC=URZS|s777ds`j*xUn^rOC*FK-MM1v4M)()V}q(Z@?**jZ`<)zv}c) zQeHTDROp{I4uA!MW`z*as2l_DrP<0bZGEj{D(qkZuD@Mc%thM<_`}V!TTE`ap{IxK z1Q-Y-SUSMFsAhaDFezUy_5uRIR8BgF#%3Ckmn+lsaBMiGJ zZBAgxz_=OA79lwLFG%J(T!+3%h%0>-4=YG85}j*>1%3a6`byJi2uw==48NeQTVm2| zGV*lk40G$n7Wd2&Z_+ihmXfQ!_2V|D686YdLM_2bh~~`>Pl;I5)Koq)Yl-DUBmLu=Ry@&i9w$bC1CiqPFfM?8rOXZ+QXf4%kHKI@E z>s_#E0W0dVxWo1siVGlsh0R@LTiAQ!tr5piEi16zl9Kmk1d^9p;2U&zA{DiyY#lT| z4;u0=iaAgnMVL{Qpze*5p4FO2sho03$lrai@8|o_81VL|TySrx5Tn%wMFdD(w`w18bFX)Jm{xiV%z1>f<0EwMVB+u4h`vz1WL79K?dt(y-Sq zXY$yYCX&2?iC!>}-KU>h#Yd=D)_@*m29eu>C8&ZPJN$RgqO#f$p1cUh$zcgQKG>*T^PqXKmYq6mlC!PDZc7@AhXC38K*Pb< zUynJCw@eGu>418|F&7QMp=3xbL2}7k63*Je7bh>cLkWCLFD{k}xP5$;iF<)??brmi zS0ZW_1$B-j<_g_WkA>b5d8X_FRd3$73&-ds^8{H}T+Y_Jo?v_jgn=>>jUgGs>ZUO# zC*Mz#6^VL)cz!LrpvXgK=`q-2Q#my}#w?F=(!;Lkk9Ze19VmOf8NCh5b8y5kUq0~2 z2gysOep_TFx}l8L8NT6yV8FMVARnw(J9=5rie>m5s#;nGhaP;EVTUf*9;RiG7kowV zA!kwJG4Q<4ikX0(TYxtWNmM7-xzDozDGWus@#R7PfudZeky(j4`b9CnhP;Il41vT2 zRJ8KsW2aD`5y)zPbi;BC=N-1d@_5^sPvSu|kGL(>=1s%?lnaG$@lf7{P!xYuL;TTb z>(CU4mVd+n+(DAmW8Evq6!ow5iR887i&prTpt|MLN01?qE0RfuqK^2r|MmLteA%SOf(=iee$VxPbuK+aJCN$nXWX4MnH~xE*MSXuY|sYXZ%13JW3ap}1J< zpCHVCvtlpa1L-m5n?|CJCtruIJ9q`0H?HneYQlVVFJo06J}xV|Z;kpl@2nR9&$^lM zup1byww*c9=X=#q5VzW?W#{wS+(r+JY@s}CulGGX>1B0>^#Qrw_X-1Dzxv)zaX;+> z@9BO!)HZS+ztY4tzL2Iv9G6H@92Ob9@}MW4y4*-!^fSGF2Gn2H{399VS0;Kok+1*j z;{?CnBW|qOgR9v-VNncB-NiBvwrCg3tAmyR)%bbqttWQ@0p@W3t0+wP@#ZcYQV+yJLW7=W|Pms8XaFDV0)sM1Bb=nno547!6{IJ8ITOBueE3wh+%Fd;^wY+@ zLB=cdw`Gi6J%}md;)tFw9gE_7B;-y-@Zs7pS(0iva0wF6@ z{rW0}MR$_e?7|mJ$YxZlxAI?y!Q1o)f*C;P@)o&< z7HScFm3Q0uo}f{`X;@{y-#%5lB|uiA$=iES(k1l}Wi8Hkli;z?V*+U4U{yK>th`Ql zv5p>9Wp=FJ7KZ#g0BmTi7F_<5n&}|_dG*)1*(bx4mFA(fy;wtbIahX^@k6kqkZGz4 z>3=DfmMg^7%&OIi@TE<>@u;(}^&fBnIs%H4lj5=COyc_c9jViRe;P~+o`^tc=u~W; zSp%kOBOWaJdcFGSoh@sX7siQj+R>yeED2@r9M9m)^=S3t2m9!O?>um-XAI-Qybov` zYR3gLw&hpbEEBsmsSmG!*+f9KQ$jGGQT*}Wpq0T&Xw7Ud@qvg7LFeEUagmNQzkqgv zj`5wyii>p>*k*Wfx4~nnsqAt{j%eebi*85BEC2bLw)p=Spe()wN|i`rJ)F4gu;?~Ch=ydyr4^sj2?@9PlwmAszHV)cIGhe{yr#zHoWjCD*)oJeFFfBdElCRjo^T5&pW=c9 zo~0qK#JryyYr7o1d%;=}%jNG7&9K0!WfF!jS9|8_;z(v#J}Cl^bLLC)$Yx6 zNvR>czg^ee*E6tRXxUBBYkyaEx0WS(`$UC6Z#<$cc|2sd{$b7d*FjjR0;1E9V<9C^ zsk=#C3;_3M?CmgP?Jqz-=K}n(L0*Z|$oJB(It7TIbL0CJp(3nBt6c?gn7ogSGDk@u zJ5f>Vu0b@Q@Rr z#|nZ$HpoxpgbguH38>>Ld12KAZ-TcX6qK?kTd_+iViQ6g{I;}k>)!$y2p!^)Y!v9| zRpD}AuUJop7)GQ$xqJ%DFr4^nhnz`>8#X~Jt|v^*Y&z?cfHXC1A7pgMO)zPfG{N#r zW%`ckOZ>i1pXgQcLH=z&kIv8|+es8;(T@Q>=cDE3bJF*k6QnD?>zN}SF2 z9`HAo>WTghO5oi*yN&`jnmQxqFz>np6Oz!$u$fEWEh*r6^1Ma6{X;1jCt5}I0m6Cv zt97s|k#w`8s@VRDY#No&BOLD7f~?(H7pjT1XQs=wQzYVUM)8%|C(q+R$BCwnQ4zC> z)o2>`;^jlc-)G08>^~1PMHsm5XSk*t-*HghkEfQ6h|rlI<|pa~sC~vFNU*YQ*b%O&0+4pXMTz^=>NUwvF@_sMqN2x9EEAKROe!KXA2M(2G*wb$ z$HIbPL+=X^K)mGinHFjj9n?@WvBzfjT0e1VkFCNdd&yOLz$!V52d@BVvU25;csjiz zefM_y&OfXPSNG7X)JvpX?E{iz4Uml~&{VoCt#V1xVu?eY=NZvkhBkF=qb5^ffFX zkBQgLO)Bt8LcoMC=gtpp&ax14b8a{YUy*6r}SxCvDn z%g1tl0<~jo9#Q^%&2#%BToGcQD11@j3Q!D$+tjZCt8|VCL z`3wQ>$3|JgCso;3%fwedz7u zdoE`6Gg${^7mk*(<8$&Xy4eqIFh*&rD&X2p!@$IG@utO;p;mm@R2qDjn!6BJhWW42 zDfm?><_|78_GD0C*v7wx$6jd}Q;g=nH|kA%*e^%)!?KrpWbh%GD2uk^0S1~%j`H8o zq!2kK%}!w50=SsfZjlOC^4SSu%PE$|*jCu^`vT76r8Q8V=7XGos!W+=eYm{lK`~|g>7ll zo>Td9pkN*aO`Zh<>QHjk)-51w=q$c7ez|F%jFAWEwwi3BbLC33B|F%>6A13V0zn-3wYhr%%-Qa+qpi@T^=AHA!v%-3ZBG#U0o78QN#^xs%DP>tS01zMC|nEvg4D!o1O=UTqrw4*j=35lQ`{u)e{HE--HFe!X- zEl2h>ucf#@4Iq?Kk`$}q1ksV-HcgZF!I~J1BLl~4r9gZ6dbaR{+QUANe#45jH~Ylv zeiLXNn_~4jT3`+?vofsGT~UYVDP3}$nw)4l&$U!%h2zoWv>--Y7GE{GenA?rP_KBo z(DT)dC;Y<*NOyGA)!Zy(vFA10$3Zk;OrgupCITFHjqI1gK0mQo6!HoP(VXQ#^xrzz zmVxwiW|-4DdP|b>*0vMqSN8={@@O1cQ)Nz$8d}hfzL)@U+mwFyEu&ub1oO@YL8oHZ znb+M)Q$xV$nn?!8QmhJ%uSpgYh)mE}0TZM;9B}y-aT_tO>`jh|np86cn84%gH$>;E zQR&BZ>q>A3nzLq>yViDN>27--Vc)k7ny;taBQ=WWO8_1G=Yr}&tnQ~Y(hmRbCoL*M3vUu|d z$|$1F1r)XM=Uo?n74mi~K|vE7RFl_TCI4%!j+o7@+lij~e{7w3Jk)Lb{%u1UOTtk0 zyP`t4W#7`KjdYhi46=klY3xh3M4?hqwv<%XVHmrygoGi>SjHHWWnwHN%V382UGC@i z&-3)1znWgXN^{NUy3Xr7kK=vV8fTVhR0rz&4Ya!)?6}U)phM zJNJwEf!P!gE_3EawldYu8&Us6zU5y^;Z1~bF}w)}%%+-eI#7)p1|$BbPmdlI6_DU; z9B0=V1^Ff|tAZ~^#OzX$ORA=nj5_c# zr3{c|=1wN}Vp_67-#&MA^c=2xKu`e@USQ%_c{s9?xS`P$mjP5(8C>twlPv%+nFU5U z8@2zkwruaD8rN9BTl#P;QIBleb=lup zEvQLSmxa@jVElKzzxQr>_iz1w6sYU70S2o zQUgN?`}c!1#o?}@)oqEV3UjPHj#MNBcVOw7-GZqq#ZUB^GuSGph zp598Iq12M+X)d{yw*aZ6T?tbBLIoBxU^NN4-yaFe(T{CVZt}pWj2q=agbM1(pj)41 zAh2no+ejc&*Wq4&L@J3jR*tq3)c`uqI!mf95jc8^cAX^#E7GgM6AP996pA{`Oi%^B zfsc^g--@oVBJ7PHNa{v)CVIao=&z*tY;}c-wg8aQgGX9N;$u)@C-v0^+PP6)8_lZ$ zN~GeeM3Rrkqve2BK!4V1#*;gBK<^R+p8jJ4tuq_jFw2(^MbS^6f8dz*_g>tl$S05f zvJ*#gC)Jjh{~QJX9cB3aIQYO%hzc}K3+>W})+0a^T;Z?!l?@f^OB_7W6SPDMusac8IVAA=OnS$urT}JX%Ip+`F*i_WOwen6XOp2OV*K25kBjwVC;)&!%}M+ zZO|gfJuBQpGC?bDzjO3v zC%;|Dxc0v8>3(7o1wg)4@1;YEQ-N_aKc&BBFGJwJU;VJ~?pt8<_~+z-hx^Yd%f3d@ zD@bq!JP3}+0UfGBzeTg*;_HDRf!gPB99=jn_WR+H`&@62*w?sy5lgapHd`n~V==#S zT$>r%?d8mdz;m)WS*uhS7zu{4p1q+M2f(@yL0O-MCl^HlRyPg;y|3JNXrHxtRp9eV zSZO*pYf6z88OF~|U&*1`>eN?F*ou5y)p4gZRn<+R5uHYY;9@eQE^2uVGrJFD=7L$V zMx6Yql(-sLScIqMbnH#x3I4B~tH9)?8H&P2&elR2md8zZNee!EATVCTk$n~`Wj%Xx zb8KjTd(+avA~TwPx)v_EH2QYr7I_s9x4$ufq~aZLHhnugNq(Erk&bV2T!a(5C34>G z-(P#A7p=(<69c8#Zmc1=8U-6Mt9cH;5J&kWH{pae$yeT+>WDuabpa?p%&8ap@hT(Q z$Wk~kSfJ?Q(gA{6?n={lM%7gBeI^c6YJ}N0^1E7mvGG-_u|eI}T{{)A=>jaAO4bI! zLG(JqKWm%^`9}la?EQAd>|SCl=x5hRU>2^tfnWwBJVBR6=kTfV3Y7Uxu8pjym2B^3!PbMl zAiF}a|J4&#FHmB7D*}cSPvJRZFYV>enW(tmzx{Q0Z~uJK=3UPUv!h<#pSZd(ZhN{@ z@N9k}#fELUCKw})Ou{h7k(G3G2w2Im7s0qCD-46i$35DAJ4yW1fQ@3|?yvfx_KqUQ40NQB}xwd1e8vDOC==XxiE%n}w zt;Wp&e*wG{s#Ef{X(eLhdAPK{-$FU0P$FYz2Ivv0^(=%h+&O8&+-c>Ea7gC?;J?t) zhwg}_G#^649UskW5_hqYSigXug0~x7gpDtI24$P#)k49knwGi$8?Qg8-9vN!4`eua z$ZWuBUHZO$s$6g*CnY{!;w|~tg48g{6(OonE^d49K1r)BZM|8C2 zS477G1K3H{kMr3GG)vzPyWj#_ARu`)r7I4&b;&-BkCXY7RBk!P-td$CO9wMl#|G9d zJyx~Y0nrDPy|Hs3NT4T8&7FV+7>vx~*}hv>uYL2QNdkFgGVA=Qjwf2_6gPvT`s)YC z?+hr{8SrT~ar||cz`ucF4wniF6Qe#p&EP%q$4fHo;UZr)&l3f^rj0@=bD5l5Aje0q z*U{0l>gd2PY>;K=(tM8h{;0G2bZSjOI-)P8hF# z$d9+L*#mMao~^u_00YBL^BbIXW*`I&uNj2RpMT?06!n1lY_Mv4LQ%Zpb)UoxYU!QK z#?HOcxO(^GA8MIbD*0i5kB8+U&uB@;9{NCzg9KayMnHMlpqDV}8CmIaf6V~U`V-Uy zJlN*R3EocRdBFThlc85k_;QBY+*})co>doapdww7<=HVvuTu^aO9B-PK4P26?5=SG zk5p-sNe0Mo{P$MYz;TiPmrh3{&?M_X4`(pd^bc059aDg2XXH4f-Z^~%zUuTZ!CZjb z`^76U*x1Nk{izw%O1--1usSVj=Roq{pWUhf*QWD-`TgVts*NdRx4+VHR%KUJo1edot`^^Z1 zp*aN{J)~MXyQ17@t$!I9bzpW1pExbRp+_e^qslfX-bI|%p14%&oft5UOnO85!i!#=jPB_Vrkb6`KeLq-x=JcPmA16m6)y`fDTt%!iK_|#Spo7U zS=k_vBFNW(c{fR3`%f4^jZAM1Pk7#5Z0ynC%oqR{W#>ZyKdF-ji1`r=Q8<0NnYDh- zYnRiDcPHh#9nF~V8G!@ca2ji8ti^z>;mM?tKE$O~_4DTE%qQ`0e>#0sACA~bulI&p zsN{H>4&}l_>J2I0{ju1RN>!7VO*#DAVZay0qZK^7F>Z|Bs+KGme{QyWQf;rwLqN|E zc{MVd5Eu^H-K|n}T!3M;knq*}8cx9Ya#WW3O_MWsb9ZoF(hH99z{fL?w8=rlvFX}_@U1y@A;hX~Z)ir%KbyxcHSvs9e30Kk4U&CL*Y ze;Zz)&E8Mf{ND1^;JLr~4HskV`KH6~WO*EJb6x%PU@;=4-TQYkcGr6fHX^R&vyT}b zRvuqs7+5PoSml@%aSWxy8*rdo6$+3RVRyu z8XMInq-DwzR6;~;yqL`W0DFofW+^OeX9XEe17-DCgrs%B&R(hh->?1`|9aE&2Ec)8 znl8Yg(Z49F`qqb^xm^?-1k?<-?d{#=zOBR*tNkP0y$U~XDDn?t6h2*cV`Jv01bluWvABjb`pAjKv5P{q}5vW)dzOxLcN-}w2`7fZ=aitN}dt` z`Wl7E33u}Nd*Q6x(|D$T#XqrJxrN&gY01jP_p_Y+ZT=vj+@w*O`xXIjGWo0`v?-Fb%wX(9$%RV?E>44NV{$xk!|<38kd7=$NB%gv zk4sh&z6|}8gi@<1z~Rc$(H*mtk&(0D493^;)&>^K2~`AKS*`DN z0S#k6Gvn-19Aa6$!?YBVT~n_0~%YSz{2knxlY8oR1p0!RD<>+y5yV=ajUpw`^ z9Miu+w1O9Gr<7#7danzP1TDCZoqI`1WsCbCa&wrcLwBz3l+{!;$^TVNAK~R8ciNyr z@*#l-sc7&$K~y>tW;0DUfH%e~+RVEY-gLNy)j9x5;B83YRjBtrv6ow!F7Iol4JY^* zW-(8Yi`&O;Doso>RE(NF+U@=Zxqn_CH7eu(hTq@U8v}Youb=)}j;DY;)*i;M3mKB1 z)OC2oe47F2L+d1S2AshJ#^c?&V1orseQ|a1*Vizce!I+BR^ z0MKUHZr3lciGKu`!w*!uf>r{ zA6cj?oli}iYF$+-S{?LG*P9@f{t#!@%V4As#IH)l7K2Uk5(pXj=r2(ZlPs|I`;TqS z1v>zL^^&8VXYtzpnIRy^(+>Oq0Qg`yYxioe4<2;gW&H^harVhAh}gglXDmQP%R62= zUIzt~uqRr2D(MtSP@hwJ7q3JH1N8c-_zlxu|4(-J%q{m5QtW=IAM&wmQDLOg!+ygZ z>TN=Tu+v6?fD98)u>QQNr1SQOX6JVm9wuELSo9`W#yK*&FXIBtpS zf?4ssn6rp;9jr%xOtdate`YKrw5L-jc`b$ULk848@6yrsvvlfueIKp#?OCcTNsp(_ z?D)HW2OBwXjR_Im?h?p}U)AdW@Uch7!}F2>%Dv<7SSIS z_O|jH$KJa%98txa2vj3hT}4ql z7cb1y>-=HA0Aa~q9bkVz*sJE!$JLqvd+j1)x|{3$96AkRDlljRh(P~jEYMnI7{|BM zM%Eqpr#pp`_U!#b0-sYz^w6e3A=>vB)A1wz<#6DVG9Z%T0kqJ7QwH(q?eioxyc$v+#BtdS#t_>pfNFnstD z5@(bN~*KVD?yA^iQ4XK=RZh?z_4H5v)Q{GQU^XKc>an;(FwdP`=;f z7KA3)+mwn{{x%yNai(7H_fMx4idcougrPrw#5lET`76VpEBlC}fSI^+cnue{PFH~w_o=rl~m7ZX7IS^y*_38Sb7yj(;0E3!a3WHVAf6JZoS zB+vWB)L2!e%oi|egoTgZiC^5-_B~724eWp84_HnyB^}LYsIwdJCf_Dgrcz&fW3~N$ ztL38z&AKY$7l$tmE*aGhjASQ+^t4rUaX|4k@d+6R`xmuJu=OrtcPw`@u5{*IRP8V~o87MTtpZX?gDdJHcQ zzaFEq>$#=e2BzjSuBP;nWt?%a1{0B`kb;bbnTHN}lk{`KDO z?xSf^2GIHp>p2YwWn^+GePv851vy(%QKb*A9rfg2Go{zSczz8^k0CKQ74`_Hlgv$1*6SO(AD`%85CwU^A1@KE~^ZXXccHnXmo^TYT z3fMNO%7KiQ+g!e<(D+{uw9WR659RVxubs#McAu(j{=+mH)A>T1zW1SPfu)oy$W(&n zmt^`F4=pK)$8HH18EXsmCF+bs;yKECp07=SH8G8;ERr!Ct}P3hc>ufs?ap_V51=%c zEd~&FQHZV`_eI;`zQGkNSrS}0Ta8D;Mg%QGvmqQgfVqmxYuy~aIjCXFwhew=p{#tvrWy+gOF3ufd|+Tt`Xf5&QB zcPQv@13uO);4J>n>&^?G-5+})XLHHCtMKsyUM}3w`iX*vFTJgz_-mr`c6vr}by zOtDEZL>s^e%(HnwSkl@L*kGa#R0yH%(ep$a_A{}K^C$o@wzuSV7;(F(L4~BWp;SR* z8w={Yv+s3$`c;9r6O33#NK~`(R$9iExdkN$OesKA@bT~Q&$Gl;FKZ>7AxEKUqj-Go z^h0-YMjEVnq&Y?UXBa#$qqcZuHGU`-g+3TmJI+dZZ<= zpd1IC=m^I0y_q}B^M^24Vg5DXgD~<*!m}bbc310?l!$bFEc?TWgqOz?eourh+h3V8 z{ix;I`^6vE5Kicx&yFyNJkwjWluaN8`sC_xZ!x>1l!2!Pq~x( zKJp!7=Q^`%=ymU-_|azg!ec23iP=mEb6 z)}PPZAv6@0jkX&ctX%J`<$RU{?Y%~i0ppCiW8QIpIa2|x7B?_zW5j=@<7@)rJ#G3A=x+IlpOP>=WKlA9a|q5@%GBE_s(EdNj*{FzW=G+P0#99h3v{-Hxz%Z zbaH>b+rR>$!1MfA2hR(JmP;78Z}hvt!UbXSYToIQ6g5UhVa|}Ck6x%x~ULlVo2?6te->!GcbqYo;9O#zt zis}F=PhClUsH1PCthp=y>C-krM^z+h#m-%LBSmi{5@fjU3lw+)yXA;qQ>`FrbW%k{ zLY^+;Au6egfKvCw)bg}!zKL4Bu8chYT-b1! zB}`wdwLNsz$q3#Ml9NOiP90EuH-jqMaz+z{otx*u|KJd3Z*K(+HJ%Yqifbql!pNZ4 z?X)?JmH2xf|R78 zyZv)QfQ-yIG@@|?j}EUTXgv7+cV;8UurEW7y6{Z2ZvLhlwIBRL6RkR%TL*)DH8LCA zN^LCM*{KiRFJ$Y6HorU%{MOMrJiXh5`{-ixuWLeI6g4M<&0q2?D`C`beO zaB}QgZRDSZ;G?P1X$L`7FF=93i>!$|;R5(E*_AwX{^kGF`Of9lb3Fp21TAKA2E*(e zR(hUo#38({H7^%-dtDz|zKa@&<_Z+%wfz=yEz=vh+>kQj3C-WT2)cFlJ92z$w(o`kwYA=elI8OYyVJxhmkr6>zi{~Qaeh9x_e zKXkr!nO!NvxsCmAa%LxQOXd$t)MR`XY&=mH@T_%Hjf_6{2i#3T&Ju(6HI5yWDLSQG zLF-SCf*CG&>o1Il-FppTY-E+Qxw@z;k(}7a-hAk%I1G(*I3nVd<9C*d!7cAFM5Vib zY|05tg0A`(5#|~P0;EpIk?R&=MIi6I*ktm`vC|VDKde-q1hQj{R2gHj`*}d=&U`ZP zmm1>N8;U-E*ex$n5UJQ=I23p;*536fU*Dc@fYsLDhx!cJTta`*+1*8c8ehQa@Z`S$ z9vbejYFwh&*Oy{;#;FkoOa>wV_Eehf!!}{3;27Tx?`!wZYMN9vXn`<@d5Et{G%1`% z%gdXwPS{{1{#I@xjxJFWerAg1Y=%fI7|!{Ed}W1CP2E4fU{yl0dkRZcP+Qy9Uha#) zscB7dwfph>*7B$SIV8ZK#)Otx=a_RC92C!|Kl{d#RI1I7ajvYpsE&9mcQo6*PTH0*ka zL|q$wqvIZTaF-T?Jej;x3I#Ixod^AWgN_4Wy1=wABd8P!@wPmDPQ(2Lm2vxye0|D! zYL_wNw^onn>aFxcf{xUodIK={u!=vTDRVIkc`d@dO!ViEk)zlB#V73V5-F*2iXQ&t zp9zOM&ff!BXAg~vAEK>x77Y@~R#%nJXFYZSoTItrlJe+%YTzA-}mx8ysA#C28|$6_5oh)}ynO!)6tp88E0Ua%~e z6Y3?Qy531Y3dVPC&fQhL_ZZvorR{8S zUGgdz-Rt_}bZd4|U4~=ag^YmsDzU&MxJCu+{c%(@8)xV?!ApXSHpRa&d^P;wCX`tX z#V^u_#emIGFfPsQlU1K`>eu$2$}Ny5kNli+F}Hl191VP0eO<2tWPUj~8&j<)C#;D= z<j z5NbNnX4osGMMv>KnGaUfA+bS=2I6zzb9cUVnw5HiB&N|R02DT!#h)bnkAQ+j@>QmkJHwK#@anfeo zsJ6WN|8$K5Ms!Faq)0F)hPAE1bkbSSUkbG6rsDKa3e1p0OuC9qQ1x-6hO;7bN5LQ} zi+ze`tK&1Kxn;q<6p3px8*Kj4MXOte&-i$F7)0v7tLQtM=&SO`;p3a|i3f@m?{Mkt zyY+zMm-U^VIWOsNWeP;Ls1x5SX zYDDY@OqFS^X3!=r4EH3b^fhTWi0T!nI>YuVsLa^bpy(phC6}%#$coRf@loeet%|cQ z144Up{&KU*PV)(V?sYSqSD*%{oek=%xCOFSODpRo?ToHTI4vJKctWJY`NXo)qZa*0 z#+)MUlMLC@f^xgmAo0>*^bpD03w>%Iu#32(5t;qZDK=409aUl)4Va6sG-wkbuPGmF zzke*j`K1g0y7Di-F?3xqE`n-JhP;v<^zB+LdV(m`?3kN8RBe$_ZvTBBrNpLVemlP- zviSAmxC$0k3*T0ZNV5f0yLGQs+jB!7ib8$!ky2)HFT$u5Bc-P4Q}fE3-XG$0bqDnO z2083fnwA^mk5Hy!PPT5h80qhSB5(VvUOiKb$UC{drCM$Jc_|>rirc=XCS;RQpd;lRJztIFGXKb*$sZ-yRIJ6YTMi#;Kd_>gC{eKg!u+7T=(=FmpY z3iybA z>a@x2Y7RPn;?gqheC-NIuNNro zUaxc01v6?YQw)0Et=#%k=XI?X9xt+6C987bS=J|`uPFYC7ZHOoxWZht^0n#P zxbHgK#jagG+6rSyt`ce-op*PRX=pAEnJ3!%Hxip z$g*K*qTn3Jzm(eNtAu)&0i0HoUyqI4(=W?1z3%WxIbPj2`P(gN+Sfb4XNekKTWHjb zF#qX*R`l{Li#E1P*_0bDl2yv~h_i{_zhoW$$^3v@(j$u7$QWc{TR#kk*F+}S(?gOj zlKT#AdJ7L~j%W&s4|XkS5ue|n1<^T9ghZbD?-3Aqmt~<461(S7`uoQ( z_6XELc<+gQg?g5mMY7i<`L=2{f(J+MUAYrfjRtg*oOofeRNBvC;%CM0lXG8aMp%I^ z`E$Vu5TzM11oYUObQv?Q1dPXEOJO1XtpDb&Q4a1eAzd;(nXayGkRmC+V%`aR2qAgXxF602dy4i+L9p6Oz{U7WEBRHh z`N(WGa+;&Q>TrQ)Dua<>3*TW^^yupg>1m73#@_av8az~5bqiz}`*?XrOja4b^y9)v zM%i69wEFtB7LOBuRsEL?u%-nniA>ASuGf~gyKUY}D^9Sr9X_8c3xrU;y|Lp($tUKY zOO?yg(dx3L>*02THVTU)Oi+Q5;v#u^t>XTFWPrU^D;tHR4 z_R8OAvdTi*0nN4VNY|Utf~YCN#%k#OzB-ZJxw}D5uaUuP`jB;LD_J)6i!I%n%_V+Z z5##(ky|zILsoL(jt;HtfUd2i4jCWXyjaF-p3PAOlSyBum^?RdrjWYNlh(wRfT5t03 z7~ih|0JUr(IeJlCuBpOZHh(H1i?M*F{8R|#%{%SJAP8oomkKNSI}g#pXDAg{TD2{A z9>t(gS93GkPvn-6FvxE^K_d+s0V4!tXU|2N?;KRLw5 zIs^%);}_+^4XUJ66eQe|ejAk{Vs}2N*P(s?29xTQt8`ZO&oICNh+}Q)ug!BqJ6a<{ znhlpN{a880UJrl!z&xIR?d*+8bF&K^O$UK+e#LQ(f5-Xb8)z|=_|BD(46{do%N!}m z{6ul;ZYmjA)E5B+wWVKXOK{R%2~utQ;1X#^o5#Jhc^MlY6wy5}HItmiyX9Zcd(i{Fb zV{K3Jyx{Ohx+HiQZ;V8U7!pJx`4spbX^G|Me~ynQcI4#T9e&`gJl=npgXNtHnb!mO zweQM`@BC*Aunk4~BDT2rmeWS*89+EE;APMYas)U5G|q?#hq#NN{*PsN|3trE1#B&I zC&eE+iNZ>_LaiCUAReA(ixD3s09E;0i-;Pd_l)U|LBzW!o}N)%AeUNN5Ly84mr^Ce z3o%AY@l#^t03xS@kvEZWv`k-+_r7w`SZO?V=b}a!M(Cv1KUKbqGk_q?5oycrMQ@8Y z=}J`6-)-kOuKazWujj))E;vp+$oU15%B|<1m(ohtD>{C*HbGZ$5R{uR-KR5;%h8ja zUqGR+=Uz8vjY*@7mW6np?3SJi{FtH*wJsfXCnAJFCLvK_GL;`DkaTDqI^n=&P09^@)?(eLGT)7ScdtheLD z-{1k3CPBR^dX0L)T@<5d<;gC_`uV#uPC_6tukH++Jbzr;to4n8^e4ssk2vsuZ0-Fv z{|QJxp;f_gg?Fd7)N=G3;b3VVTe~258VV|(z1W=3csIjNtoJ&sgrWxHHKgF(Y}x@U z%~Asfy~%Y)vne*H?Km6rF*id%qHD2PH=UE1_V9kR&ZCqUxfUJww5cUFCZrjw&-p}t zv-xMqaYYcvZTn3ZR)I)pdfR{sDc#YtKM$fkC7G^}Ozf<$N_UKydvo~-nEXqguFi6= zkoHSPe)xk?%T;yo6sUXxJ(Zj@AJ9UX?vf<6k`Roe1kGS?T0HV#Fk**%c?|lp^hc4yqID zE-T`t)bC~gGE}fTh|o2_YIn8k&2Cv z-i_b-$2;S#D8}}}3tn07)VGsp(*RbETL0N#fHLx+PP+U|p$t?e)m z?=Mhc8&)ayzX^729Z}d*>TRGb(E)orWNOiN*BLDp^BH~i zY^2S8Pyo&xoAY=0v(K%s^q-5_47iyHM7^q0HWyB4N$3Jbj;_n=6CVY8W11UstxkY5 znNVV3a{$rJW-uZE+uRCO>EOGRWmO38z5MH@8+%{k-DBkwlE8H1W=UOqFUj|vxLuzFL_);9Y`%ZM&^*R})wl5fp5 z)@fv0>Pab}Vn3j7Ao|+$(HV}jsBCv?UXDss{*2#r7hqVNN_!@#+~iB37|F^c0drRc%V-bgJ^z; zL`J#_Ob7g?7nC_4zHV08izWDUfDDVQ4g`Vlr1y2wVBI?G=Q-GkQ8d-k2^b&;~krVZ{sOMpTmzXTU{+4iHaVg13~`>afcjV`^PRm!_6jC za(8926e%BO-7sAHtcu@~ekx82)>3V(nayiuB;AWn?l0{@(_B^IQ{xkGq#gNj4`-03 zChN~${Io?)MZSX>4gfL(*Vk7Yt%WMg_pj(1 ziR)KaVHC2BtERZUg_-&U{7Phh<3ibPzBr9Tb3-D*pvSz$CNk%cH znyo*eE97tIe?Lq(C$cerDLm9#yAYvOe}n>>YALX9VYhHL>8oFlZDO%e{5;A>VFL{s zx7N19pyHh|fCIV&DOGuxO=K>LmDmLibiL}#8ITN+4##pfj`bhLBQ)N9g3NRX{_|P) zxjy_7aA)wM^fA@XRnfl_`Ug2k-tm=; zMF(!narmw^ls0?k*lu7*HnElDz_ru0v#3=_-l_Cs{xfV-HSxsXGH(WLilWA14M3J< z20Oar4lZ-g(82sPWp4wBcOVQ*ec8bNG;ci4=11CmNF?Lg1P%XJsL|^aQ>n*C<@B_~ zOi}bDc*or-<4tGipw`C#)}I|B>DT}1V8DQ4{iWSI`Pps_sMDo-P*V%WXIc-d^4JL& zIb2e{IjGefrH*&nFp6|C9yU-=UOV8k!!S_Mi7Eo5*uV7~>UaV)vw1%7G@*e79DFx0 zM_>oN_6K%HoUUqm8&2~j*~lv4qtwJ7{@5YsWJhgH$*O#!LJ-m>vTQCqHVRYk@z3&G z&o0OmS8?!m{*)XXY)!LMy1heBe%aK=yV>(MQug}mt6IvBMH7zBt^;55Pky7*C#8;P z@ytHG%ryA1TEsxGr1wXVPZg9MvRo`n!GO8vk>XV!W1rtkc2W4UF!vi_LP-);WTJ)N z_LX4)Ypr;41_Cwr4EsosyGW1rGXZv|Cr_h|)Dfz-c5=PS3g6^t)tvC;jW8-%S8-%* z!V}um0fq|Lpq9k>JN+X^6DgyaD?gRe_1bY(C_0=9K#|)ewrKEL>`i1c6j$cXTRpi%bZ4x4$^;?w5NCBP3YQH19 z3Azax0Jpf-O6A6`6I}>gG_M;DkbbrpAFQ|YWP^h)2tYfOZb3uFZxpe7-rY2 z;MPVEz0|)X%e<=ccbiEJ)zX^v$B?2*hhN&#s>o`jf?3|UxAouq%TxPIYYOk~x08#R z(c7W&e&y@* z^aJ7L9D3_FB{(XIn0fW0^n8>-% zQcRoBW;7MtcV?xVEPR;~&A!=n(ylJ5c#c)UvAcCw@%yu6x(#L0QaKox^X zVs!a@gs2K=PJSvOQ+fbDpM3kRA82NL`V9bx&`8mfM4Y1M9EbgRmRYr z&O0ZL16>U4%0L7P`JtlRiD0xLc{WMp0 zjt~}S6h4}mK3=qR*kws_L7SVj9NX>|$w-f)wOl*Cbd)aJi;g}93WN7x8t^d#FSPx= zcum5W;=Q}|;9MB0R$Im)9dcwlAi3#huu!Z<#DT8@rbl@d16m)&XtMGM+JBCz zD?Z|e_Ks6a;6@u{8;KY+#6B1>to_HNZeyOr`DhIT7jA0HfT2z;&l*i;FJ+>6mO;w# z)h%FqA#(#o0;*hD5SmI~aFbfe7l`ja`wjQIH67?7<@p}HJEL(q>NhE>k97DI6?Dw3(Yzmb`wsp`%BYNQr}AsN3Bv`6QcnxeeGDXl!w$r7q6W7 zQ+TV;GC|)J!pM&-7Hz@**j(xD?Duh-6 zVq7o_{m@dILt7$s+*`3<%?XthSj7RoZX$KN&ei^(6#KPSL(oZ;gn(j*4co2}d^m$V zUYUbiL;!gVb#*a>;i-80OKfLrQFWV@oeXo^y~Ot2^%sf<<5JU#>Zm>V63|%x^yr8n zD+K6}!|jiF8}LDNEC-KjDfr{n=UUi9uQ$hgO+gRwQC-?RPJaJKt2bD>TM8<~2dH{G^wGwxIkC&3}EI!G~AP;4;|Tg_h7I& z7Y!;+?Rz@AlsYlHKHv6B-|%{$^AeE8VNS2(P#c*Qi|eMe9?Qq)CqpzAbb#VxdH1je zKdgWhCeBTd)^UN)@1uI}kZm*kozG>Yx*B8C+$w#|o_7q4J2!7K<}5w3&I#sJ_1S}B zGyostXe3#NYG@hi6h-SRrA0vD~q(jx52Xs%xcdMRWxleHII@%%9 zhNJKcx1G5+Vzpo+8hxYq^lW#?wb`d-TP(CG#>cdD$A>~eU{`5X^OEq2 z7eF+5XT5{3Hw0&AVSSYzw##eZZ^mey28tM270@BZ_{+8H0F%j2t0CmZu97&)3tP{1 zMfWmK;D7h>_gXcPA=fNG1=4Rul7{uySi0uO=(`9`QD*Y)m-Y`#PQXMO{8|l-!lZpH z32N80%1#Ycc{+8dQ75cyT%sQ7LG+=P{0nz;pMv{;sL&l(gWFTD)A`fOOCmP=(No#zzSP>}_}P0TXbYx~Hi+Mn!21o|W`OlcvI z%zc~aO-ymj@+CKBbtrM&FT}HU;Z3#SjjCO{g?^?TAcfwne+UUKijb`N!^Qshu5RvT zrMP4QQD9N(R^tF{z9DQt(9|`4vhxH0UoI(29g}Qegpn)}F+}X6^~y8hIZLpE{M-vi z4mQwxFTOVqPw8to`pDmJmY0dpxLy3aDo_zve84eVU*O0PT*zjmUi`u$}GZ#hyT}uzxM`6x^b1Ca-Qw|vg58t zbfA?@6&!V-J#tm@n)r*cohv5f$H-lVPo0c*m}dcU_i7r?k0UoipY1MKK+U9dd;r*&qj5t(7e~C1eDOGw^YcZEqXc17Nqck#9Cjt%(wtqnCuj{b|gBcbx zogHW%@HQIu$p|Zu;;7033b2Sy4t&b*{Pxy%e`^`&R)v8I^nUTc1XNwl$i!vhM<#ly zYPlrVf7sjZ^!HW^E03ArXTs6>s0N=K()v0>y8m$NCm~E~93ZT&4s#386gV_8P#deM zX=gRva{HHsXPX9?%cUtU@1V2Yr?$uHW0z~;!=!|(0lxM3yGRa}ckG`l@K>rm-ch+m z-Urx-V!qa8nX@QSjpNGYp`onbn z8oZx5zh8XRXlJ&@nle^eWy_vno%_@W2xBKRDr?=f%~{FKGU8vpA}=7E}NhIWG$&g48S-Ith|Y z-s6!$Ot`^h1enHN+&~M!Es&VSJ{@aY_uL=19vdi;4o0b4Ey`_Mr`H@~4lL6jGH;6; z?US$KF6g>?&U^HvT{xIm+S4)^Vz7JBG&O%Zi_CViyWz znPC=#lK|Z-Qa&Q|u3Wt~6u=9bu{Hyf+UR2~M<9jGvw5?qxI7Rfb`K=E z7QZtyfpP&hW5Lp@0q7!T-^6RIt%*|4F9zeAw&{gG?=i`{v_#{-}>%WdFx}RWTK;>iH1j z<2yXci3fFuSeJC$mx;PH^}PSb*1N|u{r~^}D2Ggxa>y|qy+V{6=MX9#Ny_;!XT==S z=6tqvLT8mTmC81A+Az!^r(_g13?nfNbI2UW_u=(^|NeOY`s}~G{-{f@=bn$p{cyWo zZ#-+S)<>p5l?2oGIdkq1h5Pg#oL@|9#KA!w<~d~bH{BO-U3ZuA*DdD67oleZV-d4y zngek{jjOU-of{cBQ+Pgham-A!G&(O(8&rjL!%iSXn!4-j`@C@+!pAUj6?Aw9g@LCi zm$FzGty5({D)XtVC;T%CmZjX`X6v#iDuO$Y>|+q1pDg zK*fFw0;U~#5*uf48(}f0L=l7T??7~=%WFp#lWm{4esRCmEJ{)Q4w)Hqy#yGHw%m7g zYpl_Z3l+fvE*UK>=cr5nl#ZI;8G)l<;{$fynUbF=JK;0@_}X=Q5p#2bvCdx)=g`Ak z({J0}ewAAaxI=5xVLk|-l@emUD5t(+ zx3=Nurh$&{FL>j#2v6$qy);O<^UgX{*@r=IpXAG}iNq>D;nteU)P710c z^;#_Y2;Wpj{9y^ONu->IdR|uzLCC#KJ;DkO76YSOH18JJ0K-i)1!|7E!-T2%+`HAk*`nC0fOV=pev%TjbIs~}n z3}D^6)uD=ZxU?Q&?v#sYNv4oj9lsO~#SI<@#V%8s(!J2d65&&pQU8>R=#snPvfls0 z@r(R6Qw#?Lghzwo^|zKwlO+%ovFgf`MTN|mG!4oJjlqsK>@ZT+*T8o) z19a)QF*Tuy&$B(U+hMCc;|=q%_;UyPn*|dux@rT@C+Is@6ufX|4TWTa>;Be>Lo=b8 zuR$YV$no}p#6YMj0i2EwoB0f^o;j5NR@q$ZgK)Z6A$Ae z_}%$k>VQS&_?m7o5Q)U4P}hSXXGwCJj6YT*?-M@5ajTQaI0`cf!;1y5|C&J}TmNsS zt>|$RxoZI1_6+O&ovWp7-q0|FJv%ap{SIEt9ZWW@XqTz4y*7{!CrA1_<{`M9OGGva z=CB?=CLhHK+`8r51hL}UP%uYStui_&tbUN#Ra|%bZ*^AuIuv=_p1r%%JP4_sIo^V$o(#~jcPjQ6>0D$5H(!tp3ZJC{Tf_}tF z^`@$v12uGRrtsNvjqQY=(9z+^NkJeM%oJ+~iR8X2IqhHQAE!#FzrUmP0PC^V2uDLR z_3O*jT6>6#H}6A|4#MKcCrpo9#>Bp{Cb$hzzD3?gkn*NETNB$l{X0qBXgm>p#wbD z)Gr%;5pZ6;2`d3m{=Rgf*rLm8@m|V6kQw(jPx-4Hf=$@M?ORJN2)8qZA{xof>yx%T zkS6<<+hcN2`QyU)T%O~q^mT@my>fs$;teY2h(>xz=vGw47a;4``+==fx5g}vT`8IA z-)Otc3IpyRrs{*hnyF=~-AeIbceQ2WJn-YQr-R_;`%$vno&0wH5u;Yk^51+H|Qs&=iz?1qr6i= zvEQha`d^PG)FG_YeEZQ@MF~Hd@^>uECF|DC7~HOd6deRFJpTS3`68md8_0n2mThv% z^r=I1JZ9aE9DahhU1R5wQNY>{xw)*G_|Qc8-1Ag;#&Kwa2}@4gD(ucXL=`mZ2j01g zo9>GWer=H49DiG^D zzjUJNxj+$YNj@5v%X^9!!~IpqO}T|;VQi%IazrKq|AV3oeyo?`xS1ddh8np3;!aY# z)qbyb1Cq9pqQK)O`#Jp=@ja(9`AybqRkMJ)q^Ls5m$L-4(|ut9g@5dWz?PothgaIP z93S354k|EY`@67kEI$lUG9Tr?JH6bSusIdB;+^5h>M|YR^fn5fZN#ErbF+=<=_T2l zi9Vb-N7%>=cs%bF4mj;Rv3u}Kk|71|fr8nfsteIyP);B4R-~}DD6D^Q3poy=HS2VB zGE6MJ#`Ry->;FEvXU!j4Vz#Sg%vo?@7MmfqE8`X&?{vP3jDu$vw82cM*^$Cov;hAg zmAwD~2Nb2xAF^TVn_U5OX#FZVC_8uoH~&^m@&cO>26S&$PHPF zN^poXQ~V#Izemo7sA>?P9l29aJugU1LLfw~(y;0@m8S=Ract{wK&4RY{Il*C=l(gc=-n;2 zw`{jnJVwMhD<8H5!jJyUxX89`;RXctVyfj=eP2|I$n?;+HpkV#eayg`cxaqK!LcB9 zuh>=6j(bN~{{XkFI>mpWPabTN zS;*e_Efo;r1qJDUbv4)kp&K(%jsc3k8))$sr=f>yL`}T%)yv!d zy_!nyvFO3$({xj^i65RfB|o`jD!0LIr0 z__`Sey_Em-f*mA`rQbK)638!Hqr#kotIiNLzP_#>l@hGC?3&IbdS%TXPH(+NzLJkgmbxAQWx$B8AuRHj=mtWps-(A)k{>oW zCL=>~cf|YmtkL*iZqJ*7ZKsw`fta;w#`@U4Ifhuk*lRe+7T(OBId65r;=;Znv+#jQK=DUTlsfL=AAV-vlnrqA!ZaV<7}SNw2KD5aWMBFKj>32;-709ME$m*o{8 z;-x*FVVU>n({zZQL-u0wXslvDHSGchC9D-fTVW$ z%1*l}jCb?rHmi+KHLa@O!OP|_|GS%P|5QQtCY3;nxn^|os*Ec${^CwS$h1K;iN{rB zaqaJ}XSr*ayuKKy^vIs|Fq@jZr5xrbeH&-$&hw$4hf2E3@3!%bKNLqGBT7ufZ3KB$ zN>4|=NA;Zeru@CPC;rf&Ao|MqXC-!kp-nT8|Bm!cA_tCyhP||LLA690O8^T6G2}aW zbS9ef(>TfH%NV1yaQzR)&ae{+MufecoAhVGvgSbJiS}+zWTFF1X|SaPg}EsQ=E;5n z^vN{;dPgnWjWU0l^6ckG;&4!jN{j|vTWH#Yx*A?Ea@FTe%|~u9fQ_wq#yL|1vY`+$ zko<{XdDVlTlIsjToq->%;zDc6{ zz<{)qGc1D+C8GCymvwX7?6HC#v*2GhqgDT!X~g@@Oq@y)JGv60?@%-5&$95%S&psN z?Fj9C=8Do9vJn6d?I~&aEGb||{YWCDyJ<*$+}$KpOR45`=qIrx#g=On=Yt~8#Y#i< zplwZ`{DUW)g(a{w?G$Nu2H2*}a-=Ft|L%Y+{yQq57A7L1q0xf|hM@;e6cGJ7gXy;+ z`vB^tZ~la8Y+4T+w+3ds+E4`VJG)s<$uohMV)prjRuh-+XCca=PEF8;FwV?cjJE-B?st!{v|vS`QTV8^DhuR;vD$T&3;0a(um6*D*xyrC1&C z*wzrYp1=!l$CzsxTZw;{?9+)0e)dU>Zx#4eBVo~7ID@&xM$Ni7+3&!?N zQ>vw)rA6veh|etp#{AOb0hihLg;@Bbe_Bw$6CzbvkaX?zPCbyHl&lwqtHi7wE4S+l zWL&bgwrGkxK60_!z%_Qt#xx9=HzZQ9I{bg>tS;VF)Z7kMxve@}_i6KK>Zm^rp?6Az z=Jl>g{1d!axW>7e;3@?RV3V>{Y${2Oj&j`zo)n1Wp6 z$cJMxH+$-v;>Gcon*Pzn37jG?&;W{k-2(hW|a&rHQsBaE9tsrRyjR&GQ9-%3)r6KR##w4&o9mW-oGAv z%t0RX8DaJ?Qq@;_RE4O414P2_y&qlfRZzg}JKnE_0}F)I)Y>$NOMnCj`*j2qySX(U zrk^~-S~GEkHbZIDmANzof7v^|9jy(*f+L3xY*=rMs^GW5cy>KR8JKiPifMDpuq#<9^`l(REp(hR{1hDv+}tj>(A$j zqoaa9piJEE7Nhf+U0n)LB>=eC6Jwh0(oRfO|>M89M&=iFWQ(M06ru_eVR zDHq24_qP(KZ~5WHid!$uMbZ~x(`P68uCZ?Yh3q_X%J}mTH|X4+v4LCS4;S+?wc9mg zQaCIAZQeBZEcu%b(D{Rz_>p^m;yCM3Quf0{cnl+ve{%`CwIuic{aNnJMBtNxwU1qv zmXA@oB|Z@zzIXpv{$1AT7eSPaFzT+ADE@&jNn2rlnop)g8dq_vxb|HsC&as@erPSm zp)#&%^FWgur~sV>kG3}xPYA8be#Nkb6%_ZARS^=`(zh!G!pR?6UpO;ISLZgazA>zE zi%YZxsM^-JS9Cu@&~Z@|f`2-by^v0>b}E+#f7v`Zlx-E5CpI^f1$a*{R?Y!YA{=dK zVYeoVuNZU3nIeThS%5cJ-KbuJ1CtRNL`f5yzaMlV6IZ$d06SDi61PVQB3$2of$b z#e1tPVBxgTES&eIaC*ghc;?0ZWQU?S=|;P(<4OEirS6=++b_Nt;-F6i7Y2K1d-C+Z zpCfz!Xg>#cocqoWaJneh?t$EJs_`%yjndaO{iMJiuGj$#bNV$d*BKca&7#J6noW%8*kcTtA#24yBu9%(o6 z&#~VAXXQDq_3V+B22#{P*hu+Daiy?MOsB5=ug{AkqXA?;bzrw?W{y4vgz9>wMOgn_ zGBGPe?zelxz85*gO^=GcR^}8M!p;LNgZugYl|MCRWo~K#NfL}DTQ{{j3QRd~rO|ve zRyJ^nfq0Sz#HL>0?<&rqzv^W=7dl9j5m_ad?EHrSW{(hcmv7fG3bV)X?664g4a6&i z5-!NIzYg9WK zk0~{1YsB1#>{*F zJMsYEE*<=j*57Ua@A@~~K!Xt(H6xx*^cCU+8uEJ z+*>+4)rVP3=z)USpT<%%=S8NddDO;f9YU zb3LzD&PLciL)kWqm|e?BuJT>!lYyGzWy`kk3ESj}Lr!Okd=Q^O`M7LNTM~miY9++s z+z;t#m6XA*94{9(27GXeV0r|xx~y}T_-03IF?kFXI=Mv9h2*$;^#|1mU?9UKC|1n(>DPiUsHTs^Xq72tG&Hv`5?BVC&KOcDNv|~2 zTv|BJTS)!x!O^9or_xJ`Y>0Gh87w=Ji4TA1*udXWyT(xqe^P1vm!|8Y>x9J-@Ss~2 z_a&|jDmH)sdhU-Y->dl1ZW(qRPH;}SFj#sY{2k@^QD6D{ULhOm?70O!$G2u8&DLTsKh(({;4AwQa8N!b;B##T%v#?;l^7c@tgK zH@<-9d)ZL1h+gzob|`ljeKH{eWK*%~0V9>X5p`r#??4}h>;5t-aEHsU>uJ`}Th)eM zP8GcJn0UGYFXtQdm+DMJuEn;{y#haTv5(lT+nOx<<{hA6MZM$ zm*5lL^a=Z{pzuq)s@4_|{sp6X3l@tliO~;V%f_MhWf$?*(EXx=jtHiS*uz#|RZQ+f z2a~ZG9a?oYU7H)PUhuYktc{x&v?72tJ&zL54vo6Mb#x4oxp1#l$)>H4n)@Q=S>m4Ewz4(p`lzPH7_5WmabIUaOt!w>|qsjY_!> zT&O`;pw5Oo&yf3nJu|hYyE7*_`7^o@SdhIXwD}VzU0EOzeiE?TR0+KU+FnoOEB~@G z?hUAqZGFt8ghE_3&xhZb(y~$@IdUUN*qMr*WtH)wWB~qE@O9Zc%>sd1D*D z3LbH&ygkxCDxthbV&7c0y@GO@khYEj$EHTTazi zY(6^MG1V}wD@>)V*I)(;cOg(EdNmXtGH}`7vHOr{f2(z82(Qa`u8`1^e`e$i$3gHF zeeGo(5D+~gS$WhEfTt%{|1!EH)FKmsW$Q`)lpb;rU}5lPk6?^uekQu1SoaknD+t-) zSjPXFReDGPw&+}V0|><>yP=4>DSX)e25HEQT=>+ZnQ#z8h;Jn)1@7Pomt|OhZg~5c0YonY5qpvKfIX9d^+V*qvNYk2RGf&fPv)g zW?J=CpCWLBDNW2x=>g-MpURuN<6j~Ts#K@-_+FJEPY(PeS{82Nk%ZVozt{3eN0zuJ zI{J%ZN%#eM;6pmGzbe|B-FE=k0|p;|VS<)9+;FLt4=U0mT&mHOLYxVo-7j=+w!#q1 zF_$Zyw=+aJ6)MAZ8-ds9-n`~_q*=~ag{BSkKc!Y{agao@?!ewR(UoPNy;k;^n-+?_}>Kd4Sa)(Y1-LHCWbL0o;N9x$ar&;MX{ZR3(*`;0@9As{M3s z7FbmSk6UCo*b%CIA@K^*`1ApWq@fHq^9Hde(gC<*P?7LV9{!Xz9f)N#jw~_{z(0nD zZZ3O@-0pGkh#Y!AElWn$@+qXt)CP8pa*5*-7qC3D8P&`zO;9L(Q+D zWO&j0zUfG_ZiTxvVpn+fhU(0HJ!hla$n#u8YLT4`7WpR!BSkmyx|Mc_ZdsT z=12>#(EzH3P_0QHFDI`AH-8;}Yp&Upn7SCG{ATs*`)(u->yt1BRo*yYf7~4fBYP`N z|LAKzZkt|mmSf648qT-@-$im6h5!Wn)EA)wY?nS@7vM30- zdfepvfsL*%BeF|^1gqa{>$mXCf`F_K=+ugRSe{DzU@4E<;8@sqInzf7oXiCc2^9`=`^F&0Zsl`jOpn zPsw%TCINYZQg#QAyAS&D|4GO^y64XBPe-6T_Ci+A+e48VmA-?YJDkd}!Gx(<**G?i z|J#)Xmp^AEdql!gZTTs2;X8#OL7-U;nALTtnKbm?RMhL>@w{^EALZu)nfzU*^*C7Vs^zatxC-+wP!){fiIIXzRhR$pXoIe{u(ONwMj zXjOzk44g!^HkALIyhh?g-7E@R^OW}0pYj*sgHaTjHiKeuK-tj9JNMHUtgcPTG&abC zjUo;v=I=Id4-_y(bG5yT+|=7Y2b;oS)eSC<)|KuRM{oHNdGq9t+U&-A0)Xgqo|X<& zDx-b^z(bNd^LB!nBJ#Nt$)0=v*zw6mBF=li6$@1cr-1)!mWd4|U2ym|=%Rio-E+o0RapRRy5#$yhF)O-wui(Nx_+OKcmOM+woqwXK zx2ozZf0muw@VjN@t9Fd~oW zJ|A9*l_oZa?{CN+QgadbGvk-@4#wqedT>BTJAC($<1PuT$?v^Zh)n*&>tH6;Uo%nn z=W77D^3~R)sq|r7P|#*b2m*_kn7Lzj$Vvb(#3)APa2#b3ZNENHB!2H?%Mu}YCj(6z zVx`(oXo-J4(Sib(wj19UrJ>PB=ipHrzIpAhiY8BhpNNzAy8{CSWs(;}o2zw%l!C#e zE2pRrj{^78{D(fx@pt^AI$n+Z1~hlx!>+u0h=lkF0T zmWI=3C#$z+0LX{hyS8IfPh6n3>eSq~DmEg4bv3QAkA9kcd3rcBWEPbtyB+{IoXztFpO7)@bua;1gMIA8y{e&*_CO z=y2W7R&d;>NgqA+4p2|IKvm~V=jWkBu4%Q2suOfT1`RDDs_YwmC{GeF37$+BmR0`m z&I)|f)BA57t_|?cHqEpy>tE2JApqR>vtDd&s48N2F69{v3?h4OI{G_)Hg^Kzo)4Fq z$szQ}T{bP@HoTy9Tkpw-{vOv0^P2et!pxVUFvff$i!1>-P^IY{n|Urs7%7uzsJu+H z93Qhuq#ig-B+nzsJkdVO_NlA*Sb>=9dp@Sb0GDv(#an9iI>cnUU>-9+5G=Ep}d4>f?i2E7av&kT$_98ujqd$cH2AG*`rELOrZRwCq&PKA0U zuts1}8OMLI;=4?1m4dnqZDjW)_eL&M_fY=X=Su>|Uj6Sx6U} zYuO#YgHw=J-!tSSq`yy_0K(Jel&eU5Sc0uNd&Xt4f-?2jJZAy--$^?o9U65uqWq5SAJZR*r#}0HD8u-Jg!B<$q`F1b>Wdmw>P#0aRf7YLHlay4&S}us z9;p~85)JiQFJ`>wwJE&S#|X9`}#%2ucdaNN1cY`iB*L{;2m6n#VHo8~I3ec?p2qStuCUZ_c z6Sd$cIA|aQ(yE26rsJ0Q;c`i>ZTF8KtNZ!S=Shkk9TZIuSzpuBJO&FS%wo{jn`g~+ z?+Tx^wmbd}FFRNgrxy7hvH88U)=!&9+8)Xe$X2TQA|H1HAeqsK30CCid2o{zHO^|N zV3yf{D-1^E4ELyjjX-eY25z!gzaVduRvoPQ3$p&^g(>pZM7coB9}ayYs;U zWysNMo*~D?J@xMnv6nr|P$9V%0;p^-z)RdcwOd-acJ{@lLA#VkhRR~l3qrKxvxYc_ zt<4=WL~oiNtp6fpL2T?p0OPr$RN2YS0ybD#8CLsUfna*;>UXhO_XJ<*cp3d9p-Ypi zPmS{1TUQn5zMQeU0N@-$+Y{bR_4!7*uvEL8$G00)xZXXQ4?cU#$8;PBp@su2YETx8 zCzl*0mhKJXjCZgw#kq%0mfh~{FKdh6L$~2`$axEfNXGR`%-h0P>uWkFhcSh6x&Ap`|Fb@CiGPmHsTR;;8(hZWBIlxxXjn@9$S_#NN=v}*)2rOdP zR_E7NUGXZ9(qXTE-rA!4iGExd#5oRV-jswfF>SC2F-@Q*VV zJ2bUtRmW;Nx6&X=WmS`!dSN>K`$P zbXJwS(PJX7lIz`)98+MuMY%-62F^k{n{;uW_3;DG6eG$SD;+Q7;xW-W8!3hEep)~8 zjmt!oh}8^@%d>LzR#;963SyrJ3FiXHai-0xbs|tqco@w`aky_)BN!d&&fB%F8+i5% zkKuG&A-uV$p8;4TT~gg`b$|U z;#pe8&%y9)V6XM#SEi425Hh`FN9cCmj=j(Z?W1|j?xo8X|5D637=aUCdj;ei!__@(&Xwb|UY4HU z`HWdM=_Pxb4?x$&AEo}T4B5BI;nxo8X;K!A{1b!7UgFpuaYaRL&i^BQ#W5Nz5rE`z zb0)mpVbY)FBt(k*HY6R~U6iB?@Z5qn-I^=3#HCng0~g+&GvvQs)4PU`c7jsoV!xm% zj2c*e<5jK15;}bNi@tcac5r*WBwW6wCT;pD@2Lw*C0pznKap{-%fW5HRrE%qU-w>C z#U0wo!Gvr4E`2u<$Se0(M=_A;x)L_nmPS;IMU^NAnFJJNw_)s70=1^KJqL$q-`eg2 zpI2STgyXvdMz=%+_%OtoB^m_Y$K*Z|V!*oAMr**I zupZQt6J&L7e2Et$OQLOjk2lT;CX0~!))pF|m6dG8`_>F4n+)YwJyG0gP>n=*gv7Pd zjt(ajVtuB%X+}4V#m_D#6Xl|ElJH;dCoo&MLl<+sy+3!dNUDD&V9oSEChs2N~EKGy?O(uLu2zdemyG7a_-! z1(n^!r+3C)?kEXZ$$dDtc?a_NTrQvp3Nd{$22XSRuO0`z)#}`|PhHuq# z15ds)6QF4 zXm)LWbboM8#eH!|N;~u)g8>QwTBX)jS?~E_Qb%qM7UGlI5WPOc3JYUPZQSPFXjAXZ zdmog7I3fskH~G?N8{@0Da~yZ5n|@%e=%45)A+azh5a4F2YU5o9R3bw#ZrUZ2E>+mS z5}mq*jLw0|`#?1cq*Yn|gC=8}cZ-1!1gV_Lih2EjR~v+^6;|s}9~o@I=DlS~Govxzq(Xv^%8-614m@4}IwCbh$Q?mNk3_WOjoNrs&A#yd zPw_jvFy7?CR3idUJMr(=I5=Z^-W&9jlUK0=+oDO%60BA(U6sXW+R;!(W5a@hio2@D zTAK%LiLkYZDA!e`Ro)Pp=8X@l&mN+9s13&5dMG-lEK|wU22>mx_(PV~bD~qoJvnD& zLonQA4@>0)sU*8MK7&z`{nAZd*N0DtqV}auJM;x^*9;gqNM=h0B1H6=F$KNa$dFC7J41^2!B=lLC)tke05E$Zjfgp zY`V64XVdJ*q63uacpw1c9QK?(3pKs+7?9iE9s})-dCAi7{dlC_VGA%Td&JZ`wTn!T zsXmS=SQ@)*Zw(;PUPT(7F55^=H&91(Yu2y(Y+#8+tk6&_#uhp%^W17SD8lPW>H5!A zX29e}-a#Oh(Dj^j|MZzK4~>`|lEobjy(2xcm?VBb86dgA`eVpOX>Pvl1KVkAPDg3# z#w{<_n4a>@LChX7EpORGb_j>yLY}uz8cr9pz%d;yXwY89EKcL0%-pbr*DbqAaNw&t zU=K;e-_Rid-26pnIsh8lJ_R@ha|1hmU@`kYu#Xkc|8%49j0#r~BVu^MdlRFHE>IJc z92}T4pvab&?!n%wtMFNlf{QQ{00=E=5Deudf40eeQ~ge$&I)!odnFFPy$$q#@?U6y zGGO$d{Z!7_Tp3VsL77gO?{lfcs%kdGWQs3bp}NgF_*hfJY^o(R<%*funWeXByq5Rv zVHhwc&Ld}|TjCCEAJPwilCzmPB4KV5Jbq7>;2ub>9LGYr=qwx=dkW0ZH2TM1&o;hQ zPvzsW%FfH#1x5r$R*d1=11o3T-7>OXOjTb+kE{7=bJ2alY!{f+jTRr8==$Syn-;;f zJkA5LalTXCW;=))Ty%Fct70`VNF^5>g?B}TTDQ2+YnOnd@&XDsie(+MlMRVSrvfk zkdZ#U$b8f%|DIk_i3w7bXdUzE;~!rufXigb+J4&ZQLA9x&r7&~2xegOtZ5|C zBz7SRhVTGn7Oql${JD=l8Jcbs7BVUJfBPHnPFl&NdxsY z&uuFD#K$Y6XqCU>5Z+s1N>!&-BOB5Hw4U)2kpPW8yxA|rH{EZqd!R|kTg9vs#5RcV zE#C)tBBBy}y7rN1M3r1r(fdWDMvXK>*R$uT`Kp>|S*^8&T$MI)F##v_4t*Vn8b*l+msJTTTN>6s`q6dm4#KD_s;RZ|QFDd! zN`zr^Lr`k&=7hbUjqtluRJ7*0Xb!d7as`z1mQo)TSs*t1OGTSqk58;)Jh%`;Y?u zfGNZ}CwZhOd%CM@TDS5AqmQFYl-(-8Gy2N)4cnZedz{w&uk57ElxQ#?m;4OoWZc<( zZEj2)6kT+2!TNoc!=G;(?k>p(NSSc7gs1Tl*X8fyxIuM-Z2Wbfr%o*RU-$NV75$-Y zM%e8FxI{bg_QT#C3ra|P!qk*5M6O56HouPl_8mM7lz%yM_d?Y4#EMPS!iD~v1d<<; zUry`A-$RB#P_l>~9V-4OO7X~)a#aPZyBd1zV_ZYM2cxh7NN@ZLMh2EZ7jY>TF}AUE zgVbr{MSQI{?Jw0M0>~46@HhkDaGQ8vF}B%wPgA=+JP={BXJ+{ei2ad276C?S!`CcAVxsMp z)wvP7Tg@rNAWCG=Xx&P3576M$GZ)3sQ4X12u~XLL^&mr_osJDJ2Sh6i2EU<%c`26o zR!`pZxgW}E;)v~uN)s2S1t(I$!*+krf!~jh!b!o#y+iJv_&s)HynkK~a@$aShv$<& z&~zw_6J=9Dd-TP9p;{lfk?Sujv3u8!ACtr_{dn;LV;`d14$t&jU;cCEjlOQwZURRU zbl6R{|J&t&Z$~ctr_q5o$~~w_{S^^%=fwUo;PAfgzy+8SX7_+jcgu^mxaN3?b%P1~ z0P9lB(O?m)D`VzVJSu~*x;p&0UG0-~M5q3(Tr!WRy|6uZ{JZ-r zotK=F5!WIE#s4T5kv^9|cEb7tz^wvc1sJ3BnPy*uFu(hVb|#v7<;qSVQ6X{cUXk?o zCp_Z}&z!$L)Gngp0SckT^$$9l5`MbwR1-@`1aXkZu81r2*cYGDI4-8h*F=QrQan`x zG@axyVZ)2Qe#sX`;t|(rx-1Z95pBPNWGgOTWrh#fNtulY?(~R#>d1qDST{T9h(L>C z)H*1J1e!%U!w48+#*!y|cun8C?bLgtBM2(cPTxZwi6E;Jp=I{c1{c=o2dTm*z{9s8 zzYFQVWtjC2fE(1FW-m-D>zBbt0+3NfU-0D1L9w!Pz7ekp2eM-LgPLlul)y7yCT}{a zxn=UQwdC)wqzh z7RvMw%KMo%k0lFT`~dAJIomfEwTUkvOe@?&1YSvoalO8Vs;lMzzKBZsS~hm36-=Nq zU(7X+iLYR>DTbiOFFrU^n28H;R%_R#9<{U*7*C4l9o^UysLcaxsfL^>w zhec5u>%+~Cot-cHBY`{ce?QOuWCxUiUhzF9O8>d^&6^LDowj+EjmG?^fDq@|VuqI5 zyUYKYOs_c6+-jCz@=oI@CIHC4ot#tcu=A>`O2>xo z9%Iy&sKXZ246hD!`sUE|^M9q-egt`ilv;3RF)`Qa$DZ7{!ByCiDB)>jYr)Wyc(gcD zwhES+Bn);hU@onj*;CuD4%;h1aTNuf>Fxi#n$g(0>xkzG5gRqR*Vpi7V=$Lm zj43)iH1fHLt;$}ATvSb~h+LS>@!tdqdke^=bbzHVQi?V5?l4Gpj@jWQN>_np`==1VJV3_9Adc{W z84D@OCw2>8*HBkIBA<0N;(^K_aN60@ZFg=bS19?QA1^o&J6Fp_EvELUKFsy(}0hUkGTVP+*zhR?B{jI;D=x)sV$u4heLRMe^3L| z;rNo*`RT z#~*I%L%kr~rfgY1seL(m_y7K+!MDkQ|F2sPrQGs$C;hI9+PXX8_}W(FL2$zK9_4pj zAK;ZuvLtVj{^0vKZ(T5=i+0$kaJt0^-eu+)(4`|y1u@$6XfWwD_5e}ZA`^Y>^~XtJ zJOHHObAfuzhcSOB#KSM*0rNr`>OS_?hv*457(ZP9fzR949Cdqa`NYQX&P1;!@V4!U zB}W^8!VD3GaN4k;e?b8@d7sZDltQlSu@~QI7(%AYft-yZy^tXr7$d9cMA0D&?FhO0>+6`doLQ`K*IF_tkpr?)8@$rcHrKC$9miUP zJ-^22~^3v~K+b4t%Zs?^I9N>`_u zNb#|w;>RGoGmGPD%Jf}YJ~xQY8MdH!JOec-51r2CO?bx=U3r9ZmOnnX7XkV-l*v}1 zs>{~oikkCn1?9IwTOHOeWJ$%7E#I%7KOLGWc4zzO9{Nc8Rl%HNyb37MT{PAyIyvs_ z9~*4ln8*Xvi6E;c&7-r>l&UMQCjuOT#yiH2ZnC?qhdCMnA5Py2NBaLzOeYDG)Gg8cH2zt!jmBwEybD_r`iM6hRn@XdW z?nD#F^2LQ0{vWah#~1$rP2#~JC!7!%FS=gK$p$z1dxZQ;Vw&Fm3#F6qBTA&KW-0NE z)?eE}-O6u&^Ox4|?G0(E7q$TQc)-F$lx_xO@IC;uleXYmz@zlQRvQh0p1~`^RSAVapdL_0hYd@Cn>bCq-84}nCaK?jPK2o63Px-Y5XWp&aNQOn*Du4_e zJ*|C$ich6w1^^`P)EocpvErWRm^WFk14OBt#XsvePXRgkSN9MTS3dAx}pI2ysc`d{`O}%gG|?i zSbYtv)*E#1<*!5lBEGWv)`uOsb(dL19K)f6sk0?MXf-M}pLp9hw*UTjrP61&??|H+ zTgaoEMQo73gATbCPCOKD^Yo8b&?rcJXt$d4WLmt$M(vdFuQg?kLU!L%El%!<56?$N zEdrx71mH>ZiK{gKo?6gZuQZaQIZocPSxSTrIJj7QR@Ff2Qu!9Jt~ZAUDF}U@BWRV? zdI9@V=eooH|L}W;W$axeZ11)2rGs>(^A6=Mj!1dN2vTIi$~*SQuZ@Hm*ZggF5h(c~ zR7}C)TJk| z7h|XOFGuyC@8TX&ODA#D{ZNM`enD^X+wDjIB$a;}x__`;K&}Nm0d>fbwiEbZztN() z<61z3M4#>Fp|ysLec1FbG)YQ zB0WyNd|%!ce#A9{wN=IAS30@pUDggjBv>7l!@K~)it1itTNWm^D-~{r!4l>i)wuHb zZE6==LVF`5u~vQQ(rMTonUO$n_C|ByQ8P#tDuf&Q4XXQ0ap+pOe0lWi-=HTm4R`0y z!Pbqh`Jn){7i=72f8ZMxH_3et{oSsN$9|t%fAspIyeRUe;RkFOlND~5r{|o6ugZd? ziaN?+t8+(W9+EnMFd`|U|DsZ^#SJdY#5z)>NItfAnR3QPK;4l4*zQ=E8X`LABM@Px zkkE09aKXs^W57fRyGi<^h#Yf?r2%we^Hc#wVbtdqdlfJULg-||N#yprQH1g}#r$^8 zVDyD0W<+#Q)@fVHFwj8(SLKs=J{6aiOPwLjCed({YUn;M?pnOyUFGYg?xHte;%i>>t>mB%i&xoIQ$?7l zIPr2vZG*@ily;Zx7{qLA{A5kKY}`YWkue?dL)|(fKD!#eRL?aYi$?Fr^v-C2_9m{vf(u89H0EEL@Z;pyg-( zOeiMKftl-Y1D4g?)T%?w+^X!??Pxy9oIO9+WDK!ka=upUcx61@s{AInv+?ErTAxMO zTFW1$UQxuhq=9&PQ?9>|e`CCrY&{K*ww11w`BBT4UQ}}T$fTCRcHW)n+Oj+*#{TLh zgN?AaVunA;wt*`D^ZBXqpT+qB1*x*(HsHTJ>=oYd@f46Mh?oOJw>a`8yTW1D7Bl~P zk5u`0!Ftuqn7%wQ(aWzd?guJ-Rn4u^D~NDVoX5?BCPe@>+-bYwnZ_$n57)iNrw5tW zH{5rD9X}w08kbKDidrTD&_=d35Rd!iCtWPezKq_-0Kk<>fA0m-YuVzbo4~YI`eSL+ z5{MR8k3o?|exGd>LXefb|CAWZh7aUgK$fFQhbo7fU;b`T0#umD|Hsyu$3xkMZ$D(o zFe(|!mL$qrvTvdFDN8BFJ|au@W$asoBD7L5mdX-?v5no>DGZVsj5W)YVeAHDc`wiJ z{o{Rpz4w2UkCgkquj@L`^EkdolB%(mBJor`eU-iPfiux(zPjF-_KV)pjXlHnpgh#0 z^b^OJ)rg8(boS@`3UtOTbmSjY;Je{dC0K^S`)2P!$eWIYMvZClhwrB#=f@VpEFsJ; z>f}V?u0r2OGbwmoa87qSg7WcebHV$2PLosCx_yMBvp^0m({^!2Y$?&8v6tO4$8Rdt zQa)_6akg`?99U2iI!bTkEbdC2idtwdXt+;$cok@?dXld!{^$~39SmG|cSevs!-9O- ztWXY%BC2%yBl5&j06)3YH8yKarrcxeH-lpO!Fv0j>n1t--@?j{gDkaEF?kxCdU*@! zg1U?6CbTi@jY}D<`wMY$d13AI&JM?(H_d4*4V}}vOep2wNtD%1e0`s4N(Q5zGy4Dz zl^R%vK;CJH9J0;$dU6Amz_r_|Y9Y(#K5q0rWlQ^&&oKykr&z)8gwb18T*#?5j+==G zy_*Fsk|X^jBq9jzzqIv14#{^og8eX{RTEq{^Sd$BaA6F-I~q*YOTGzm3waMB>$fmb zbrjOm>CW4r5h3UMQb*_ciTEbaq1+uQq(!0<&rF!Yl?2MEx$d$hI&%Ki8>%|CrOXaA zls=x43~O>vYJC3$P>u@os#>d~!s@@J2Wj+B&D~}7UG9SP1i-gl3Ytm6)%krzz85Ck zuyiAN;n@v90H!Z$EplK>1&f7W>I(}?0`3}>P}0RsJKf;o*PtnaYBfGADoF53JcHHW zb<}WiH)4~JCAB&9U6ss!_cd(18PNZ%BXH8sa35FGim26b*r+kgOwbygwSLjyd_OmdHu zISQ95M$y>QHr|7aW#^wyhQAAvnqF51+6PR_tS;=33qMHBwb{P8+5HCN6I*>;{3BW0 zvmUv}-`hWK)qg16Eqs-@I5t`)3Y1O1L6V8syw((}^PvN;LXsJ|Cj;Q(X99e80qDOC zdqiJRu^9};`Rz*DRbh(gjLveXXty@Gin4qYRi)?- zV5UVyA{0IqQ$-VT$$8Uz2<1>t0n6o%qhZOaBNXP4SY?e~fTfP!m%cIG$prqAc7 zH}alcsM01oYxhXO_TdwRWiWq}3#+Y5r(RfusB=Zrik)kMUg7FWSTx}d*LW^@{yob4 zviq~j47B1d8A~Dh1h5`a-UVDOtn=ENDFXoI49GbPbTBVVzHRg4W#MYC{~2Xgx(yIPvBUGf0xUU78tGjE|3*OdWODt8I!fDfS!8 zx(0JgQ*NQ&{H0lFJ`r#Z65$VXZk*HSK;KRyMrFR)gRA2u7|Qn@ol%* zMNO&=NAWN1Z}H8Y;--W2sJBXCUvt0TOyXHMVn{s}&Chh9kFJ z)y{NIIk`kA(07)ue|jov_!8tn$Ly~$-Z{xqHN<}8ta(G^t6i!4Chwg|0v^-q!Pp~n z$JOy%zXX8wKvvN-ryJ1T4@l7Gz|bSmXW3)$^OE}SyBr|Z?vQ?0!70eNP|f>Pd<-DU zZrN|zm;_@29fcvrT=QQMNTB|#03?O_7Fg4>s|yN655%YnSs}oQ@Ff$Z34RKONI%xs zdjSHlg!Y{GPE~eqxZZw2xUDYw2~<-_onAIMj@#* zgyq&lV418Fukn3(_AbCUZvyT2A-79X0!0Zeg59f9&(^y*AZ6|I8b`*=MK@2HLl#uys*IU|;PbW;w-N!b{jZIJAiNZ3 z(GoF$3ua_l`&piL=Z5THD#}sG8HBOa*k?`or;Un|3OxY|{ZO2ETaorm-?dK|`r+Wf z8{if&*B1Ax8v8v3s=^mf9dgV?#4##cODdE=bK;-^v2~ISJ!UH$h7%8f!9#44nEm9} z)7}F2^UAO1ihBqK3P^~_@AlQqroWH*jJ1LnlXR9Qitbu}WNzI8?K7W=0Asr;2k&2r z?N!d$gc^U*-S)rx_Cjg@7NtMFB4wkiY0#yt1;K;H>4TCM(T{2r6J}{L6~EIjpP1X zQ*Dl0Y0@{OERr23*#v41mB&91bFIRem-~i@{Tf~lAIp;alwR0+_1Sfsai()FbM@SXYRuN8Wz8#6*iKR*udx&K)h&7h}9pP+KQUj*p2r=;pE*8 zq`|=dj8$=;0Rj5Y-W%?ONyy6o`Kd^YE8ERlaJannvEzMmve_EJ)kH%iBSI zxvh*BKH_8k1{l;Acq8u^AGJ@6wpM2VnZug)flKEt537R&C{+qYH)71b3+B^v#MzS9-ch)0h!~`KJoK($ZnF4kf;W2t}*?Hjm3d8`^$w zDUbK4TG<Ah(jFzolb$&bTJ?N?F)mYfWKk)nr92iB{NlT-? zYSx#NfGSJ!p~t3raEWI9?<Z$kVa)K7mC2VI&|DG^Njwh+ydMB zAwssTf?OWR0qbGRLrtbl1LPrCFcYmiqeQ{{%UDW$v=B)Kkye}b&O7V!xx9eE{!h96 zv#Efi98Fz!jnzd6D4~hLYnwizBWQh`=U@J^S2uY7Z=%9k^J^!&PI0EYm&9aJQV{(j zAlfT-WzBG_S>k*+$OZy^V3Alb4+3sMAJBCOT)bp*mR-r2y01~!Ddpj}aRE#~Xl2{y z*rMifG;XBFI$;-gjy$Vyb+4670))u8t)Q_UO+ujisP~GlP>SOev?g-h}I) z_~@LO2LlP*8se^QA%Ul+$?%x2X7X-22rOg!T^<0NCHS8k2Ymk{YgRhi{H6Q@Fhq?< zbK6&Ize-=p`rgLT`vgsY{p1#pg3)L#t3|)FNcgJ=^ihj~z{;bRp$YL}mY=&xtoVj; zWAom6d7nkSC{gl6QN9#fsK26y=M5i03EBR0b-sQNaDagO)!lYXAbKE3 zSVB{pjXA(E7V=NgD3>h@$ZlAm3wF=Rq}@wn&AJBEsFjvnIYomTDGH$2khB10vTMx) zh`6k&L}?yaM5Kb*L8O2ORO}5fW4}yxCO5ls=A*=20N1Te~Ov&%pc3ai-|vn2<> za)rzoO0N&8uC^;$y7;A+9i=+2N;~Giw4^ILFrOQ<<`+iGNJbEOH;E<}0@9eBtlvL+ zvMt!|Is&9YmRlD-3Q@4Ep)b`C%k-a7))kUW0s^w$^+E4RnmhYKzavnYq~ z$N(+2DrA(E32Q97XivNzpj3eSYXbBm{?|dG5e|+c{`H3~mQcOZ8rp*p{^c{Y$+!CP)I5P<#2I z5Qna>m5!5uD|h+U3Se?!3JVzs^Gvld5aWsm{fNoBD~CQEleAm@c^|Gg5Rvl3Q$Str z8!*jOSIeLnqXIx1xIh;`P7~oufq(p=6nMz*)b1M3#yK5-hl?+S?Y!qGs{qzP9|OUZ z|72O`0yxoY5Hm<*$KQWD#HUnV=36pqJ0+0Nklk!7Fx6^m=8e4}1>bEv1-Z}$TB0wv zfA9U_;gIf#GMP2qyadC#LYw{6q@GqeHboNsKeVVQ2Mk3l9xxq3zN0_8h=WN~m?uH}S52;vTc~nhF4A__D=un)A$lzuz?1{u{`S{I1CB_4 zB4!FsS546bNAFf{G=I()tIOcmj$Pl4x)iXmE04sqm%gBk$iz8ebh zF6UgDwQt_>Tw1#?@ts&c)F) zo?03)tA_<}jwF_~GW}^{9(8}4foqRUM8JhDi@r^ycH3&`bh%(F%-2<^a5JZ!SstI-iOhj@$6T3mRTjYxs9wCai;dIEI(XbUbm{G^z2uk zN=T)VV}S@Gpb%NI`1>NTcBlB6Y%TgRRP&l+0-Gj)w-0p1qVjR$3|iE(Gwg^c?sHsE zyon2Djy*p{S5M1=*uHY4g{e4o>91hw*XMth9-LsR5BHR^cII%b3;Vb~Kj6tk8&-XY z;RYr&Ps6^^ao>%P$dQ5KVE@KLYZvtNF{e)d*4|$^TUV)GcI6P5e~=x_CS;QG9oe-; z*16-&+FNMGAWm(feH0i1n$-Ot$<)em$3jj_+>EMbfz*nhfpZc#FN$|YRG4PA)Ml%v zmONzBmtheS03qooH7axJ9 zEez7G;v0dUArx=1T)~UA(z0doEm%GXtO3ZpgIrtNbXIk9+@j_Yli`!-Xaba6V2L?s ze&Q%0rT_c=xcT^hIM9~Y56+Zk&lF|{nFqtnxD>SxZnbaq_>+srqd=RrHRbDQ(VhO| zSk_f{qAB^89f zY=U=s_jP6i49(bpm&TR_ev~T%hz*7is}Y6c{`jFvkPM!XMyueRX$GBJ!tXV%=s>{I zbVKE_(l$WQ82sf*!%%w-G3Rx2tS*omnO8II%;7OHh#NIps zO^wzna$E>RWv)j2^?P;bWfl(MK7a|JPxHd`o-LlO+&g_4JF-un&Qb5t(Vb%5vWcj^ z4lm|Eb^K>mxx6!i9#wIo<5oO4q|>d=L`BHu@}7{eKzRU&RtyE?2^Q-& zPqFTn*{)B4ELWF>XBy~4TwO6Uz-oHyX8T>z|6*Rgw9Ep++pQrW5(LyCpi9=TWx)xC z+hBss_F1@V!c&bE3f~P`jqEuHEUX#@k#Qs~=*q8HM~+x!k*+XaYc6 zHNnZP_J=??tXu){9z(t@JA?k>fX!rRr4Z8p_p&S*5E2q<7@Y zlxoW*G!Y@|Fkm~;xBiBv2>?EMpXwmdK6u4j3a;URCY(Zy{<*OhWvzb9y6d->SZ&R5 zytTnt`PiTfGe1^vxyH_c+2)TOT+vi8pSxA1(u$d%OIz3bp_Tj`$X};-d{NQ<-@nf< z@_nKQg7qI+{z5*IV8S5X#R97}E#-0}0_@nOS7gv=hu~TOBQ(~MkYy13iVfHY0lRa5 z!H9C-*mR0jq=E5jNR2qvkA=y%kZUpJq@Zw3Y;I&T0H(IK;HcjuVI@gF)q;3FHqrKg z;04IL0Xi4Nj7_lnI~)TDPwfI$m6h-b?AaKyshko)Pw7>WnuFBZtqF~cd~YzhuRyG4 zrR;6&YXya!6u5ycq}T7GFI*f>a{U0V%nw!KMdce-^tA3{;`sR0g)y$=sTK`2{AlI5 zHJ916ZdZG7CAk*oJs#mI^2+*t+UVW=*J;*IYYN`pzcAAwpz`BY4;?FuIdkGOJxjAg zXl1^7FD0NiD+IH9T_w0|guv{of(WT$ueV?#B^;)U$TRlnm;KT>`N}>dC{g-E$r%oJ z{68F|w5o?wV@v*b94anMQr5w_pw~%5l+hqQa_F;EW&V2BktmnCU8=xuLp~RrKa(ch z-Z{dK)lo8UGN&818L!A@Y#{9B9M{DWZ&0$y+@f!BlS(06w;7;L!^{s@692hg#pL`u zk0?{ge2Ki^!iT8#5cE}KgLZuWpm?HM>G!XIl}j$FxiS`b)7 zXZyo#oZ(^qr^Zr0RLTk`leKA3LY0i#>NjhH*EurmK?XWV%N1+-wlpPrn9x(_<57%W zHZ;1$3(>fg*o`1!MOdzWy_5Nvj*dP;;Pw4Yhh33j zgzF2m{b0@=EzQU*H6W?N=sxlky2Hn|zaa+NoD}BBYV#Z2X(*w6hae%lYf^`f#^s!2 zJDpgR2irio?Kpc~Dxl1CX!aI&FmBeVH8)V>{W_5iRPN`3eOUo-O%yfvuTA+D%J4xh zIy8RV-w~V;Ds0dRc<^H^PyH-;Vp!Tg?7WMHOVn|lv1a5c_d93pv`Ha3QVn7Tps|5i z-uuyV=CD{4LA(0As`2=Ffs(DA0#hstb4rnc#Z#`N;q46Rg5>Y{lN8{CwtjeHddqh5 z!*dwgjq@O$x&-4I8Zt<*X(zW!x@g|Ip@3X!J_j#`d|LOur)<|a$9wLpqk-+ECb`fI z9?y=RVpqIr@-|N9N#`S)Ch_ydN>dx}#w>nVOJQ!kp98&G0zCv7cYiu(Mw$(f!{T;F znt+w^&B7W_W#B4x0SLxahj&wOJ*Ag2OvKe3*u59LIcq+QfBiIE$ZS^g7klY)-A!-Y zzp%Pl@UVR1TAODRml?tuB})%pw)J1FuSn`xWU1fHWmap9m~*CSlYL)~Hq~%xa?pDA zi{*$Qi5_f*64bXSCz1T~x`-<#9o3>=E@i0IsBY<}>$(Rh5HyLPt1? zdN76t&ccyNV9J||1~;zBMgkwBndKXbyntQW{dSuR>XlaaSOmo}x}cEHI&)TD^ks@u zWA2Us-$?T;b5CT+%DI5J6}HsU22!%KP0w>gum;!g3`t?}Zsc975IHsKyz-_S)AXaE z^~)bDi%G{#taB&g6bL5=lhbX9P1*DC5b>T;@13Yyz9F(jIB06+Ve5h@C3~Hi2!aL` zZz|{0XFTX}dO7uj>fy9gtW~Dnw7u8etLW3;zcd;jog&3=(3u33U4?NMnb^I4*pBQj zn^tvJpP^4p1;F@1eHo|AJ}uvRXSlm}p(sLFQTIW-tCrUoe%+6J7)(x#2Y1QKaac|C z*U|{4$)nRVSIB1|Waykt`#mYQR*le+6Nkq^RTOTLJ+$=(+J4X3d-i)>Bvpuz72M_l z=_R&i+z#>&1WmT4*nnxW&bSQbvC@6Q2z|ZBx}wPt~buv@*Z!#OuNThK4rj=JNv+JTxBJ6)Y1Jx zlOMmdou#F73;?1lhR$%YjqCOvGrA{hC5+zde5l5?d$IdPL)S4mcMd=+lJqkdA7({; zes#1=HheNf>IJf-zN0hVYcp8E&K^z<47j|kETC>nUus%M1l0uldmFF%pzGg|8-HfP zUheot79^*ZPKgUdR5+OD^b!IsR3S=Dn`| zogxsU`b!ELjD)`T-L_ipoH`RCAULv&N(vb2rtg`(?s_)rpvpS#TJq_}vhuvD+tkjF z6Lfl>hDXhJ%`n+C)_j^y1=P3TNDR88eIakcnT3X_`uqj6m6%DG^BSrvTJUrrqD0n- z^YeEkUwi(E-W_G2&`1h(5{rA2bNNcbwZ2FHvvq+FucnP^b-*EH82u8UMYZ<}2^Tpg zzU#rm4#8d&yA=a07FVFp(?88Ne|&=mN4Wad7Ka0wP8L^2O<{%0<>m{%*Wk`+v0kS| zeT&R=H|g+yR%izjw7N`1ZSI5xdF;1b3)-wNX=7A9c?>e;BNY*9iO#q5jn?SG+0|%# z5sn`kzfEdv(N-<&*LEFcDjf(HR8si>t9;R3(76>}i1A8{@>pzFp@fQe=R4Estob4D z6rO9Re560kr%ng-)=f>}lmh%c9lUpV^If4Ej~w9em8e^==rpBa_U9l{G^WRl_d9<@ z?bL3k zG5;!DfUp?Zg+U79@h0p8L7Uf=%jp~UH06+wCtBxVF&wZ-f{W42M_k^H%q+a&V- z(pfgnL*Vep4~18r{`t>Fj<+w`LZ%cNR%39*bZZoqS9+;{d%MgA7Tpo>qW6V~a7T(V zTN`ICm+=j07k+kAxVX3^TfB;c2rggAhVtsPBfZ%k@_}=%aH_iMk-hqT%}D$;SQ%KW zuIP>5gAACA=R{WZtfFl{T`m$5bQQRF+{aH2W6o}6a=Zn_oTp`BFLK^m|D2S71F`(Y zws-fc%P0ncwq$iT(S8uW+X!wSU_FW9JE61lV_8ev9Gfohc>EbE@3UB=pZLvQNj%;? z#C6=yV@*A{`ocvxDxK3Ee&NNWVU>Byv zDC$)nE)=%%%VIr|Zh{EB1f}*5E5T&3m^x6WT0S2#$NH|vqS&wtEBf5hA!Gr9aFl(o z_)|48x>kI@PNPStRyO#G!;PNOqJT#qku7Szjachy2J50ooH<(-yUpc%Xq5W>>h0dD ziA8bQ#-Q8tB%z-}GE*W6+_x@r{ljkK!6jM$(nai=V$MHv;9=T75nOWV;$g5aYJXJ` zb*-=ScH^n(*T&?`&Y2Hthjv|YjXY#}w%$3Vx0wjGC6*luU6l0VuJ`3Xz!s&JFYKcP| zZAps@?573v8~OhdUcb7YH7S~X@W$y$9>*paom}U-+%AY7a<&wo>Dzj;UZ2&7jZ>0( zArP-HP7k!eGh6QBEuI*dGzo_l+fL&_&KO|2vxLFf7Q3*Bf0Tc&WwQ2^7W&E>lvC&H zxp^mJ^k8m*hF47P<>)>UluW!p6>=M?e)rRF@QwYH4MX*0U4fC)r6@4BBQic`zn>Ki zP@99JKmZ`%Z*#m$0Gb)|p0vBPUZ*p-zoRhtK4IQgyDGZ96G)r8RV5^esUfm>)5+&O zCgLpl-X%ZO;0vp|$vp-o8O34GT7F^tgD`H7zuGQhCNbm5NZBSTFEYj-IJBIr-^>MKt8ufS$GV^G{sVudWJiyYH9n$b~rNR zWqBT~e$-I7%=O6>6@%E^-d*Yr%*~a(&b@+O>T)M*xBtQlj!5Gp{T!N~jbW`%^U;9J z@^Z@eOg|_z?TLYL!%PVxhzM0AuFG&T?yuNA^n}-Q>s#NVIv0|-ZuC%wdrxe?)p7HE zY^5g87^12a(jNHNulH`{fm#T3ahLvlY1Gd6rUFPHsxqCQSJi(HoIJ-_a^NH%yJntQ zTM{r%YL0CMxTj4o>7C?7>52PR@AwcB-^(*balx=qHR0-H;J^HH9L64lXgc&>{t_GY zXDi4*8w@<0m7j9!tjlCcm)tD_nR40iMvWh2K9~H*bBJX{2#@iAj`3?o!YjEu0(O&1 z@t!LK;M;^Yy*TgRXC;A0iBu}Rb4vd%g19OLSFly?66QW}^I5yis`jR5DKoA$wenDU z;T;ZR-f4Kn=rWU;@slGxkqOse7%EY0(8}tOcSjnxw4C}M1pU}1DNvGQf?~-IUOAZp z*AVEcy2N>`=OPI)0?v&U{5E9Id)4}Ce%;me>CV0Db(Wg7D%>o-#Lct)Gndp7KNnBe zQ_Ibb!*xgVjbz393#GsIRtc_A^1Su`TE11vGTQYH237akSJ5QrW{>79e!`5>5LZ(L z&xdu9V*S=eEFk%mr4@=C!WpeE#}PPJ6LAf5;GB11^W#g_fFW4ko{}sf=HWm66}tBJ zEM5FeqI4Fn1(W;c4lUfg<_JVS^J-#|bPV7|PWy>+Mj`A#vaDoApE^i#X}3m4TVsc- zjEx*@-y{QwyZaqwyY{YnBiPR$RVg6C!Xw}hbTicUAzzvI#T|Ri7jxVvzTV72Z>t2g zJ!4^Tc0jrCx<<|oV>LEB9Z+UkRt#kRr#b)>c|x@?Y}+bP_>1kaS`A2`9~3)U__T;H z93X7aU*3;;=m~%YW3=vAL{Rd^QhrtM=g)Xvn_? zf76ryqu0GBD-ZJ8hW8trL?|1L11YX*9cz{9JrQSCud|B8e^iCMv#Ne&MgIxl@q)^n z!qPGO3%B98@g`}`afe&Sx&%4*mwEjC5|Cv4_nZ4K4c%b1nu07ooTtRbD>>5(A|S+m zXDKsD@zK3%kzaGzSqPF6~p7M&D zJ~_U>ZOR|jO0xNuuqJKz`Z2!oRq0aWCFKyY!7-U})i?vb!Lq5hE}%?T8(REPcXlvz znI*X7c!Jf30(_c(LmET3StNhpD&vd8Y*V3m-y=hjh)t5x&0-nVO#6neAT=u4GI|<-!IvJR4g|slp&Qc6=G`2t$WXa#1v-``Q6o zeroQ3aX}B(v)qo6?*9-L8j3q+OvO?M>c>!&I7gqy+uq+-GeFK*%HiffW|H$9;*W32 zjbE-VASs|fd9rlixnREcrOAOma@ep=s4-ogYdfilBA-#&xW4UmGPwL)9psZTE9mei zJG<`AJ6j)e?=E|pTWCO=O{DY7A168i?r?JaiyCi5-j*rOy-IqRYXDDh9X{4)^NfwZ z+rwRzpAiJC^fmP~We0`nRGuqyM(qAr%@=L+W9OAR+w2W#tY}_~x$1|v8&vpXA}nfT z??hu9$QGBA>R10_G2V10tK_u%9V}eIcvHuPIx&y@AK3EFn6Uj=-u^kD(^EzQOn`N(9|ZG{$RpeOPe>HHu-rpW*>38?n@7ad z^SX0!M#}IqPMCY--1d}&KnXNfRBD0nZQw}Xv= zaxbhv+c3b;kK!^~pc{x$i*g2w}u-{1Bsb>UQY_wiz{ z>ln>@Jh8u$8Q)juBU`MM0yWisXN9uy@Pk)36BtG5@Vj|!?2o%nIR@@ zj21X^EH}S2LMc&ndZ(k*~O+UduB|NKkn_A?Q4g$%VTC@Rf zX#FX0vR$W@p2n}BVEE^1{Bih&d73LkyDr<1H`1~lvFxktd2!i$=!2Z!TV`9e6HN_n zu;}f8IONyh!Hnx2k-vf=)J;J@u-!DN^Jy(LqF&8>Q_lFrojiNoR~4|B`Wz{228^hOPJk@R-0x9h_RN|w|Wzy zv4wv&A9BtsKc*jd3BJDZgqW=mh8Ygi5{rU;2`yp=tbqk3$q9GVV5M)%c4;91tqZ0W~TvhRb)muSu<}U{)D^*ljK}Pk_S{qEYWj*qt&|ty3 z@aJ#GS3t4lA8;YK`bXh01m&5mar5G=uHMgT;-ZF=V1ey&%Pz%lZ~^XOvvWQ&^ERvG zp^}B0M}Kg}Aolp)E9lUazD{F)o#zr2WkkifstZ55GbgmNKC@i8%_wYL$f>geGAOy- zjMaztxMDIwp6t>iaBd?(KL{SUkG81dzqZCNe||5k95i>-fWBt_6|AnUgc*@|)#kMN10-!@DJ<57?;&SYhFrVO zSNUl33fv113jbmko4UeS6N5PyNi!GyWKj`*6LEz|ps6Wk`Hw`v;;^Pm zk65QZv^=t_KM5Kg>U`U8o1%ANJ4NVX+YNn@9(>Lxi}&)wZItF2kDZA4N2XEC7?&*S`R8fSx(qZD$kQ}sJ14Vw`tT(m& z@rY^0c4QW|ZDr;Wsp@h`Q7l&dLfDA&+(hSquk5dIQL+oP^1%_M?~$L5B38|GJsn!j zWRe@H+{Vg}$G=Skow0#DkmXB(AG-Rwr+H%;w9d46f$7!B_+^%iJ!*{ACyG1S#d3M} z4$1g|t#dQIF4WEVLRchLnmRv1cX?MJ7%Uh!xnR1nm8CY(^(YrzUOrT3=b)pVu*={4 zeh*{MB?Xv6bhv=8Kq(zx;Xv}w?mTs{#Q*2|Qofp6vwBSZVAFoyI@uG4@Q!31BFAH6 zM$B!)zn)iS?esOv=;reCk%`{l%!~4nNj6=o&Larj@A-}?e1VFU4&GE|a3M>jdM&+( zpGmOw^GjUCuuivg0@sVB+8~y&V_4%2>)I;PI*c-82=sj#wqDDuGTjFb_T;-1f=Tg8uaullT~ zR83jTcvoboB=K|`(4eO9Lk|7WXSIN94{ z9!PXF`%l9y-#ZKDi$fo)wFl}6q6eA5p-mMPtt;nrv{t3FP!{Ykkh-uE#)Ql7AqNyP zCpjlf#DKvkna9jeLI>@fr(R%OgHpp<)-i5XJOfALo7Zd_gT=o-Fk;;YM0Net*syS} zm=ooM~`GToW1Ume>jok1gCBaDtIWk~Kc%lFFQkT2?lheN`g9`-#$b5Q0~ zoD4~nA65@+MMz?55jp~|Fg)}APO-an=iA3rB=Xq^K6^pmzhm4Axmii;|D@e{AiY!4 zszVqk*Vc}2KL*wI1P`DaGkfgHYntZF-ouNVZlXJ7VhTmV(8m4kB%Z;S(+61FaIWN` zQ>5f%&P9ANb;S>6;f=@l=b6=5#i)05g^%2!4@Y~KHB*Cdq(k{M7QrIWcJ86Ky~s`{ z{_g7 zhP0XW8n$mm4iHQ+^YnO+6|bXmOp;K!Y}`WUC-sKgmH_1dv8=B+dvQdgl65Ck+andg zKJfTg<@5=1w_)Gu!H+4-r8k=7xuxKPC+I_5@csTCk2x<)on?JIEkkIIkMuHsaeJrr z@j+>m_U4H94OUy?@s=qNCm&p|s!Y^Cz}+Fiql?>v_kbAnuBIh(4!;1YHDGDwJ|%i2 zi9Pf3eN!guqA0-Kld&gV67}s44Giw@(Mm^ygI(kqZcsz7rK#ww8kB${z$Yf2{^oFg zNOiJPAilBQXsO+LZZYIF`o@h->#^|pu4$aF`HX-?rJMIiV`<~YCw0jy3O1*ozVQ(B z!c&d3Opl~M%`S>zw!Ep1l3j0;QDfJv|NF9mPiCqb)Ppv>m+;UBg5X72lBRD%eLrmD zZotQOV!>H|!;xhVn^*oJj)6n^n~qh;lC}1R#dGGobnF*ORdOShUU~0>M2eCd*Al19@p=G|8%1wH6FMRB~@BJKf znI8Jvp7U`McER0+S{Du=zmu(n6H+4$OwO_7%Qq>yLE6hxLA*?@Mz*jz>GV-*I8)97 zUjf>w%68EYy*HnLK>B7g=ZkYZt^x8o9cYhUMBi?NYx!NtbEUr4{k5#*316|`a)M6G zUS`re8wwcloE^UJKS7 zlJslrgBU(|v#Bw8)JLK$X3_x~^DCG{FlHL?10Ak0zDnQD>dZD2(skeMGxH5rUoN2y zUbTeJ7b&ovnNxJ!xDyo3O?{>bdn<9i?6jTH^QSg#a+K`d-RqFi)?dH?#yoEIAsZhJ z8oLuC4>o-xd0d{gy4H}jlYN({7QcyE0gUM)Tr56O*4+eQNLo5ufAqPqgjMwv;&`ePWdqedx7d16J=bLS2=|x7HvDfj-m|i^ zbK;^0sj{Wa+1EQCQ zxr??=*cdy|J1Bu&1q`uPSu}M;g1Fqf$~+Pl=O1j^iCJ85t|7atL%~70{1Ye@ay46i z-UEN{&BL%4QKq6&BkUV$?&=8d`^e)=!FrQFL7XlSJ)Urp>;Pp7$YFgM)*Tw8$T250 z?JDU!;Z8xcUsQv>?p6WkOY4FoO<{;9xT??67Nf6wa(sMh@DWq?gj$snpHsHrK8mt_kod9|uaRZoL ziL3lCu60EEZV^;Ah0~)P#C4K4=H@m|qe!OD3IMm>_tz)ne8Jb!CPvqH-oEwem26?A zE~tl{7b1Ebu1oFE{0vC@DK#|~XE_WKE1=n-S43ekVkC4NviVBoNVf__s1l@4R0`-@ zAJOE6HiFJRrK-2?tOlbVz>?F=o;)2vBj}l>OY3G3NVyo^RGiGoDs^^X$wIoTyb#CD zg55ct8`G`OqmNOD4U5l@Yy3WHY?vvQO2H4U@4R`p5oYasuJ#h=Iq2gp+jpSLhKif) zHtj73ZMHfAAUV5%7gxGW!Kf_P#A9YWFngeU+m@>tbA0i7aYq5@XU5Vc@fA(lpSN}N zv%8u0S4{av!SuXreNnBHo9M&&&O{t`>E%x^d@Rhe>O(3rGG>&XTI-1F;CUT(3DAzg zp>DqZhpf;ssOj=EQ_*`kEKOalX#D*Lxbo*}0waM!ql^pvwbb2f^wv*A{9D(9fXoMb z%e+AnLQ?1@*|e`=n<|`5$UoErB7&^PriGU^aW&$Kw({Xo)rR+ba>!hb3~J_bz=>sL z7uCaHc7|br8~QcEAyhjD#YMU^6iP9!a}$;twLz(cgf_TR9Vrp~(5#+iAkD7}4*SZZ zxb(=O$$fSp=Hi3Ll(g^ph#`G=iAJ#z!ln=fDZOFVan7=BnAZ>E5)&1f$6veXq&r!D zlE7Rkog3d2i(2Z3L2hq>vmw!;0b^A_8T5nZJ)YbZ!%X@2mMhCMx_5BIb9vrI@-0{_1TU?oLuWp`g5mqvF9Ot4v zx{COYkTiaI>=tedqp<1Av{SjY*ErOuF>h8zSDqLOkax|sWSx6R7})IMsfnq2!}@|B zLAzAoqQ}f z?>FdhZKG~ad}BOmiQMWtKA*mCdU9#@PK}JcqW3ZJgHr4Ny~!^yhHPzXkccLP zNTfoLO?z=WV{NypM#CIxl>i z%Zv=Sio52qrVpQcH5?8?v zjt)KA6G;^_R?pP6!R!LH{6htcN}<%%gl(1aA!HqTgmH*m*c9&tao$dM&y``1t7rt( z!V~-vkOX<2-8kpRKuUbi&|bg-X0_hohO$Q+Rgc}iMU&^`T8Xclo>1O zMNl0o6!Kl4?-274SJ>WD_20%1N5Aj7gFSFGRFcIgKj_De+0=q{UiXUK->mrz=b&J2 zZ|+!ko~+yx>C3z{i*8vD(nF2LxoCWX5)OvC|GB=s&EAbWcsgB zu%G2@ULuQ<=y7cm4NefGV)kj);TdzbOqs{pnZv4;f%(geo!_2@?R$k}sK%?ZR@?{Y z!mRBdoRIr!4(&V1&KX7**Q8x{>4Pe{xzQlDB?aLp!`#;N-%$!&9(eEfM5$8@(@;*f3e`ofI178qWR$JV;w^eLy?&30FtcKpT6&0n zqjU0i6#{fxnTzydZbiD*CM`U*B^P*@%m`jHJY&<*gT0uh-V(dL$*cgFg3iI9!h9T_ z(>A1fg*+3v#cZ0iQ0BH+ewQQ!9TK1oU#>Z)z}gcDqC0A~mU6BsrZbJ8F%*0IXw+)8 z{$IRc^(y0S_<`5_<_c0O;=FDI>!4(wbc;fU##zR}+J;-wJda5N`g6~3T{{l@#;j|L`qN}MC3n;qV=Soc? z7eo#^u+(uB2`CMM0OC#s^h{4wK42y#3|_Q6*wJ;gW$p+*^mcQ;XT_}L3gCy_YO2tA z7WbZLH$k(o!LHSeFGt7Hm=|SBPfNoQi~aA6@7P?aXlqW=n*nE2yGOm>c%(cwzn^%I zMy!iMqCi~+dMm-D_%;Elm$dFczA=cRV1y_+0y^NAmy139d$yS%jhs75ajct8K&*Gv z`)b_9sIFhSMBT6Q=pcLtnFP=C9xs@U)s$L}yFbuLzbAq@Q$E3UT z%4|H<0H87V;B1tU;Ec-BGneBk#9($O2Z&7|3L7ZwYPT8LaUUVVG7$E&4+st9{CQ0m zAFY(XO%2n_0r*i$@jnO4cGVki*!`{kGn6^V#>*XCC^JUS(qKWgr6y32p;&gW7~MXe*h~p zq5$To%Ake9mmDN<;s3C8)?rQeeft*?ri?J?6bqCz$Pof61_}zoU^F7R5o5qeX%$Ho zkVaIbd!u0>B`L^8jZ_AV5+q0bK3wK&r&{ju^k zlo3dWdFzjK4WB#QrU}ewO~k28ny=I7(1Av3ip?gBR4`VS<}#t>{02CCVnVXlZ(ngs z9Yfq;1o!SOavGm<4^zo5S=~1Nj>D8Ef20WzRGPLO2pby=`YZN#d;W?h{+|{5@SDCT zbEg!+(~AlFh2^}@D|hzz=cfaW0I_sD&O0}P(S(gpHv#I@S+q1^p3&2&^s+Ka2C#Y{G;?^iOAc+4KtL&2QmSy?`w=v7ghPfUaA2JpVAi8s zRCRe>@}UWsefZvpyZ1XeUqr=>1s2Ib8d}hT%Xh#2I|_cBJ1Rtj^9^eVuPRBAy%C0X zjF|T~yj{*=058R3jHh*lc}p8j%<>;F>$A$}k7^GCxXyjhv8m|hq?`;t4)m?mB-?<{y3Y|F zC$&8M%x$L5LN~V<&LsyeYUUw4kY&hDE5D*0@auK7vCMeU=e|M|ry7y_s#UyF8N|(! zSji6p7k>|MepU4<_#KHyyOXzEBQT8XAxa6-Cl7DR8tJJJ4R53PpP|(Ey79<`!g2fI zVvlZha$0`q8Lps3KM_*9#sWBcD)r11nx;tj#50==H$Bjm$Q#%1$)4%W{HAy+Oa0EV z9k<6g#Sh7)=Y&)p10}+c5zM%;M3qjWX}kE@No;TBAd~L;EVpCf*H9t3rfw^VP2RLC z-GqSt6*6N5IsNOS&C?@MDX;s{;3hpw9wMRz!UGpcPKfA(;C+EZ1MmNN{VL9uiUu22 z+xhuX*5_|t2+0~1{dMQa8)c!dVi54V7|m0xDudZPNE`+_{4V!QM8LcvytqH`Cb%{aT2tn9ryV={uNucP7t4bpMj+Rni4T;%FMn*Ws-YU4 z{s01IeTq{+O5BaH?jhQNxuK=S+c(EM1?jZ4du8Yr zxKpov+vqWH$k)gk&lj99K<8ig&e;~oRYh1&{}yX2R&Z}w`8Fl6`U|+Ed_~@py8iAU zD?F7&ubq3CDGIjApmkcTS=;lQaC4LLNydTljTLWkl)t}D(Xhere*0MFXc|QgL>lE4im#6Wv~AHNeVfiN?BSq8X(h`H zWP!jj-W0U{2>R8Z+`%ACfKK+Ov#aFfdIcR}BT*4vMK3D|tjKZpE)Zb2hdcln%(L(K zPK+e)gJr+O4oLuU)P0luX^ST5MeyHmwx=E;1J#uruWF1E-u7qJ53}gL3#D?-eDS!M zlkI7GaseStd@XX*w_ztCex;T zXFq*%ys+m*R^KyDTWr&ZjJb*S5^_LJpJ)>`}o2IwT)@6ydcYxKw%ba!&ZQrxz-bhe>Pu? z3L}h&7YMjLBCeCxZBIS)?>VUgmfx#@#z6iAIo|zsDDhN5zS|REk;FeIfc+Gg#6cW# zI>;tokAMHP!N6f+ghl^&1F877nrX$f&IWQGPbR9$daVB||HHIRV& zeo{NB0-ORL7_W!URi!Y=V2UWWT&wkIzy;?ezuo%!Mz>k+h0-+_$`sK=>C5GTpM)Ip z%39n+4HU?RQTb9#u8B)kAi_{6wrkJohI01zIy7?iE$JdUs+KGiAX!pPkOvZO3sfC* z!n_(;7ww;DKPj!n`;64T%Rd4*qP08JCk%Q28W0KIhWZ5G1yA79HmDZ5f-^5X==8B> zaa3UbJ%FSHJg4NHF|w9%R5<3p!?0g6*oZT5Vl?CO$Ued4CK`OI7NOr-9QS?gEPDyc zuJn%V@!4kayqYz*m*8f%nxVojAYRop9`#oNS0{l<52(0#Qao~G`2NlQwZmwU)t4?C zV9}lID3?%8p5zCt=d}Fba+>gP`jMMZdtrF zY3)OH0#v;BX`tuEcLXjnC~)SbDtuggGYJyVVrN%IZ*h-E4I2EB2SZ4cJYdCqQ;U{; z1pe`9umST}c>2X+^7M-oWl-;$))AZg#`Ti=H$Pd$EFQ#v8Qea@q&EI!tJP-m!=DWo zt3v-pl|rd@14F9}as*^yxAVB_z87h2!LL~XWM1?ai$7kUlO4xjD6SyWz$kAPzDO73 zeFHf3V8CwOcV;ZX!og@9ERsX^RQqv#z>7;NR6$sqr1)+R=|6k!Sr}K1S}EF8aXG0Z zC+w1^Z5k{^8Z@fQe{*tmWZ+~44QG#MH_Pqj*JtySdz5tV)ZccV7t0B0n z9gJiVAG-nnkfLDL# zYXNd>lcZzvvt_xqndsY3k`x;IKwqk9IH4o>$fAHlm%Cr8Sh^EWwP*^c?pd!AHLhjI zk|e~SWm|=+k8l-gG%GW;%iE+hA5^ikra^HO8(_P#ARce)ygOGo_=TKTbmVVsa>a3) z_6R?mtNfgNs?C9@=hW$4%&RUI0qF9<4giELy5AqG8YQSo#V-Tm=#PX5Qo5j8)^OPS zw{{_VyKn2jpmh8=$a>v`3!0d)%LVkV=^EP2a zH-4h_BC);lVgXe!1Qf9QIi28F7TT@b9^&*#ldr(AZ@&z76!_c6UOmo;=vh>-BUj0o z{p-l91Q+vs_n%K8sE7Y+v4UUc)Op!#(ToBs^6~s~&i$Y{%z8$1O6%l=9hJ$w(B?0? zbYXHo#@9l}!#iDhfe&aA&&x#k8(=z5?y!`_M#^jNLZKoxzw!N>-P6;Lsp>{r_C z6eicIL>-lx$B|{`U!{H#$}HR$a8kB)o1{@t80Nm#+OT*ZUQ5D}n)5&xQ~^U_QgyiZ zjpvkQ556F))9D%k4476nTZPtVRe&+5bG%Rsq$nszZ39$eR<8KV#g3N^=(mpfKY1G+=kmS)a`@6-Wko6a zJE=$)dx7~3{k>%`;dYnd{BtwxCnK6YsM*W67Q;H&RMmY7KOV zxd+E8rHodQ4sL%@XJyWfcCb8xJA}2{*oC zl-d^N=@sO@OSBdHsTx;V1O&p?_`$uWf_H2rP;ZgRF^Mun73X&%q^;8y0}eF(uWuM# zyuDH6X@NTJr-lXjI+K&*sVoP-z5j{UNHxT-XRy=<8R@!qAN?5CV`$K#8-F@zx6)AB zPP&tiMIaoZU2%@*oCP;YD92vhQ&-nud~Yc@Vs4}qdGPr`_{nGH1w+vER0MQOK z-qdRCUe3G;?Z>Gh)IxH}x}jerGB={}_cf}K$rD@QT1{Wydy&IC1ykX8L=1gV`S)No z+>%6hsmw~z7>-lbd073O^>5j*FeS0*AN5e?xf5hXxEg;?DRnDLET10S6f5?;1SSk8 zZsaMf2TZwCbL~8{wwz1_dzai=I^y1raniMO?ozzrLy84Cek!WK{t17+j4x-%6Oi@y ztzrU3DvbEx?q;WF!u1@CX?UYBVmgo`E~lUr?K5&JiEAwN{a~~4zs^2KQ_)^Go`668 zb??wk1=p;w^^Hc`YEvgh3PM!dj7^}LJ&3I8l-7wSL$&piavfE=Y|AX?X*c$dcvzP+ zXzDNd{bhX#r2ECY+@^_+YVAaJCR@8H7qCCo8J%&fW)7PeI#J}D%y1*=iJ^k{I79B{ zh0rD?wyOAsz~Xhfk2?Kzg>j!`nN*QDg|6inyeAN6_l920@fEp)I=THa9$Ee}tA2wg zwi#tt_hdFaT;Y%%V31mxR*S}oa+xO4y@kl_@gtr>#oQaU5rM34%qPo11`!XMh`R|O zU$g(D!kOHnAl1R7_j5Fh_Gd3x2|6EV0HK&ZiZjWwVaB6Kv0gN7g6f{n@>0J*xcSU+ zz7Y(~94<9G+O59IF~Iq)){jq?zv5tvYX-;%O>K4Ad&Arh$x>LNpi_n8i1~3Mb$ijlK7N?3H~%X(_P+3SC&oV$~d#NC#3VJMX?w z_H)Az(HPmI^~+#Fo0ArTLg*SyBi^qpdQo>k*H-B@alO4hc0>>EIp#4qd~n#jYzbV{ z4INah_!^_|uZQ_5-#%pT9~)g_9EI>n81#l1*I0~1nikz${X~$+g%zMTq`jU-FdPRe z+eFu5PIWa$sJc#qm2lFlpwrdUGMD5=)DuCdzG)l;|C%Nup6+1)5IP|n%A z)X(7M?x>vcBJL7<;2-*lRTg+jli;tY!@YvatZWzU`!MIW73b+)yKu}e2X4`q!Hdc& z%5?WfE*sO%f>3P+$b?WP;G-Lqd1cOqM3~}U<7F3+urQpM`__DRbPn5#|9MmE`Qzl8ALYW8UZ!K5*OSnbIywMgmoa1OXOzdmyDV({l`}3W;gRrM2P*qf5 z1SH5DND%#D1l{T3mL1j8xGDVsOwn^~XXSC%!IrJ&b~cZ~f8ne8;=ZE)5%W*W+o*ku zGB}p;(llj4wZ@Xnj|faWXh zP`sJ^qC;-d{j)MZxER`rtF~5|vn{a#J!~_{e7SuB12$k_SlnRn(y6JGx0&7|T`XF6 zwxo>sZzp3uJRInihsb?DG`w5qVrtg0@E86|+zIl%MbjR6?X)^=O zxk3XGsqHybsXuoyAq>i*;%22uYKDVcPV93s=xpxMHG%iBw z+idI}oyp{Q-7}MR(9%gYUkA2lIdRtOC2YH1g6x!wPD^W~@vxpD|YR?MBD`2mRL*zd0DiFNj#_KWh)&Iw4v z57)l%e-ox5jS;Pp=^z$Ltb2It71W&^+T^p?F8F52ay<;31@n48{GUVf;WymM^M_k& z?1d&T;K$v%O#{9!quBv@b5u8a_HJko+8~U1GC20^T!ykBcZ?f_P@$+MWaG?l_nmc37jR8gY zvMO@Kff}TM9U?v~RoKi$%WCHhSp_7PtWKZ}d8Do6fsI;ye@_135PiFJaizs=tK&3q z72(Wk=*$WN{5^*QJ+cSmyVa~C7=GdTA2A z2kuDHay=aC4>xxZ>8g~yV^i2*lY1s;0JIl>*Av_S`D8=)f~7#RLuQdZzN;UoUI)M$ znc4pGQ^DCMSLAIn{s2<@jiqs+U?uL6aYY&YXP|;FC%$C>G#=XTt}w^ig=7wGAjd5c z^D_{Y|NRW_Ui+VqVC=UPjNh*7!`@SQPM3FcDd{F^fEfZC0AU`F73RDlU~z&|YG7QU z;CN)uM}&T13v=J@qD6Ztq1bx-%e(y`2g>{5Hs-g|e!AACM+MpEI7p9_yq-V{_GYJqXaXJ& zKLaH7C0bT)*X~rZV{cc52Hoynzy7lfg^fbA{!5EL?n&sqZO**eCiEF(-FF@QswSsL z(efwE$9h8^MlN5b;P;v_UsgaxExVY1`%ur|+zXc+7~NO}h^^9Vykp1d%nN zP}ggd{(b^p?)Rs{ziU)JVLV8an!K}3U;j6T{a53`&LubTM@v+k^$+emGGsij^yry7 zVdaU%AwWa2r_^}@pLa+PX;5i_Z?MbHZ!;FBys2mtum*;OjgR*E4c~$32G~#*j0V5} z#^DRd9=8Ok3BLiBs;B_UrJ-H&lb^RO1_WVYyGMmnAyzvCSZRi6d-DmS(+7TYPSpGt zL8`{yM#B5@YF|FRk=j<&WiES;5)7 zU^pH%3ey2sF##scjeyBo3B43awybyqLr7&8B9&@}9$0!rmFx^>R`p>dNP7jTQSuY<`9(|0CnTG`XfR-B;wt*Uxhn z`Fkn-T}u8wUV?P#o+;gogSWMjGBZPv-tLY&m6K0E0E^K*?XD7I73Kxd1pd5bT|++L zh#-6k0#>1lr`Di$?#@Q22L)an{p?L8c+8V)1F~{kYuF2pw|PvHP!`*6l^bPuAlgj_ zTSHZdOCx!wR;bu^e-pc8^hy&To?G=cuiv}fxYFqpw&ot#ZgR#+kdAmY| ziCxA{epnDjPd}7H#7Mq-KXqyTBTj$YM@Da8SeA{uuRoH!VW&TsS2>y!9Az+wT?!AL z1YSTVtqyL7|CXI&^j_cCe67l?rq5LhQ?x4)UMgG+hiGtoA?%E|J$vz%eRS!d|qvshaX4sH{u3tBMz6$i)B z^A<0I)2o)o#{FmWFbPuMA9T^;X;gB1OJSAly+RVmNaHLoul};U3N81mmHo3zB{6_Z z>*vM9rP^DKI8<&yh!lyjwKL;7(A2$E=k&}$zQQJ@rrwwy(gUoUCHV~vzl6Is$6^UU zfLbq~bN3y`iqG2CdRBJ{pfyK|V+w$r=+3^66TS*p{tBs4=#MnK%Ag<%_%R&%;V>HQ zBl6^{hJ{nnr|b}vihr%L8vjwgFT_CJ%(Lxn5MtJFi{EY!`mxVMmPG9}l%6kVDKN}w>Lw|ehcp|utFljJiq_wt5sDEeEhK+)dasjJDSikIel-r$#h zN7uC?A8@h~X6s~~d@DL%%g93@^GyczAL4h8SeyK;TJo)BMZJTJTt6p`Eedf-%6xI# z;r*%N?xx=Z`l1*+2zES7S16PxV4e+=$DoUl@6=xlZ8p7%t zo^f0z^Z3bdRmI=f8|7j(eEfMB-0ur>%BP=Gu6j#3b=f0Gq!L$fsX~f+)>NFT zO8YM?F<>7=njQ`s`WqV%8}L-*Nb=)3fiM4pQ{21wKWnqNNRv8KRw2BBNBoUmGPo2p zHG>@bnY=U4DDKi96Yc8WhSZ_NKAZ2TKHRw*~TTQi!iF;Ck zj1*W*l+Y#2e|h}WDr3m|6-?}TZ|yggrD4L+0ZO4-PbBB}91uL4^2?z*)6dNM;Ex-^f^S^o}I(3|2I@du<$y{`?X@)WPkb)IrxbdXT$A@+bd zlJ-aan{(iI2HB)Yg)+!QP1^DGzz%1R^8>BqPH3;+GV5kd(v`1khPeJ|&Sr{?Q z3#JQz{WeWAr7fG1*cNU6dquaC_y=Zw>RyRXTh$y2W=U33p1A)3V;I@I%z8egX{CeH zdluVmOB?%GqX|_c-C4BZS9B2m_Q0C>YT?lkPj9vWGu2x7^^_8{r|cW#(|HSO4)%}Y zf}+Jp0U3nf8k}Yj@da^P-sNuHgv#6^%Pi%FgHPYTBl-6rwCj!16%ZxZkE);LU(z2` zLBqt&*~1OFGiB}7;s?CXo-SGXG4!FGh6O_d1|K{@v0u}QKvCpCaJ8SHmq-w6r&wfE z8DtsCbv%SD?);{sZj9iMr{z1ICfA_^wmM z6&ycb2Is%LZ|c5Q-=mlPHMEdKXrWhoe5HP+Rd-tA8F?5a>yd2rh$H^H%}h6rfbf|* z3y%diSxUK}tD7)cy7I$SY-x(BZ)q}4%Pu0)zsCic^#t`85D3?0rQRD5xEvOERgv7m zd<#v9iq&knUvXe0PwY}E+#fbewpk0^sQ&K-z3f^3$`5JqMu?e-Por0c84fCNhS~C0 zXot1JJNLo(oUO!3)t(H8V4QX>tSJj>v*#(|Ma9c{z8>S=$81Wjo9nP~let3w25&G( z9H`l<9{Ia_K_1gAxX(C3>F_XulsZEX1P~u>nZX?7>OD@1_^3fN^m-Vg!64;zQYyue z@*Qg>{t53D#c=)ORd{j7%=@9tz}^(J{;$c^hhjbxVJ_&>3=KLrN!--w%_;umT6^*n z4?*o@QdK;ht4odCpPOmv@XOr12D|>)!x)@s&RIgljjH z8xhEdRth6(DHu2}GOgT`BIdj>fuHsRl^Lgr%>@!r_cchBJ?f7+xjC zJOs#Wm?|QLJ8ubo%&9w&jtux*;SBEqKN~TB>^q0xECpUEOSTJNsR$?b6wnW1fJL`-vILR`tq>P za{k3XH9InY#XX&_f;P^Pj$GjFN1}xK$B9ec+Kv0V&Z{LH!(Z)+mO9=H?hcf`1%kp? zmFTyh9sUI^F4F=sZa#ODA0>cW=*jXqY1E4@Usx0&u1QvP;5HSe?M*y! z^>nEFHgLvX1ZD`kq*L9mP`x^;D{43q9%=(CRN3bKL8H06xOxYPcwVr zUCn@}0PGCA~Br_S#7M$XhGQvODxC4SyfWwdoWN;*eomtJUM`qvhpP6#vTh6)L}= z_NvL9wo=HxS=tZ9>PxsA-G=hZnZJvc^@?icg}~*=L}Wt0IY@)Yul3uul||zbkX(Ei zHbG-~Wl`7p5)PzgoaaA09#Twi8d?tYvR z-U1??e?j7{V7x9?eQR9_k)`3aq)J)f-QCXl_5$Fvl;loz3=W$NlX0--6ii?B(-Vu(Cu{q^C&7qc zJdl(%V*EP{<@B^+zLxDkvD6ubGy3G=KniB{8Pn zYIHw;_5RLEN4aweFkDJOff#4C^LbO@UH9%DG3)1Rmm2)H?nPVi*|GhvsHcRF$cn!(@Hk>qt?77cX;3KHP{=8qdC+A_y22QSMpFwiTRYx#Rxh33m48n-^(A00~E zZL-$C*-9!8;?T2w9k~w7*P0!RzFXAqfcJ{MqQ%D;BkNV4uVl%mDJHw zd=(fPm$v^U7WJhFq7RR+_l_PWKL0ayp@?HJ^` z8v4+UX0dU%?d!N%H{rDj2rivG9`m!(WP2jgrdS?;3D5?M0s9H1OD`iBO8Dyho}L!m zjsInDW=^OR0mt+%k7D>q=7n(%AO{56BFk-Wq0tQ)rR^t1M;{m}@YjFcu2k>@!EMIR zi?Ij8F+~iyZrzs*M#1%X26VVI=e6^=E`>q#>3tlbpi40- zh!*e$g-doyJ)j_J7?^s@$0sQ9@_$b8MdT}62a9+mBXU9giaQ)VtcbnF_nyMUBT|# z&Xo&t!?zpoZD@1mZ77J}9L&tbX!7?yTtlE;Ssxh(4-eD)AGQU7=+41k zrA`5)T95zU(cO`FM}9tCQx==TOY0IH=iAx?L#AWBBSG53h+K_cHPv-ARq|pTGfVXB zW~Ve!ubY35{u#zndd*^=8xgj1+yCR$LD#mU#B4Y{{zCVmO5vyKauqnyY{=2AY@oRH z!8EqF^eqQ$&Y0h^-V3T?WFe40{pY#2chrR?K!w`!$`83u@T(_~C&|E1#0d&IU7{KC zpss<7U`VbxCnoo{bjhKua%W=StGaN*+8W#`9V22+-CJctHvJ<-{`?G>Z@-iDN44`sC!_)xHgz#KK1=-`$V9Cuz{>{IZ^kN4_6C8C^%OWRG@db^tWy>dlH3yXdP$1^ zf?2V)11uAw--Y5JLF;eJOcI?vUwU zU%P7$Xz3viCm%iG(qR)jdfhjH!R4X?z-G8|j+w>5Uw)DXV_uX)``t4b*RJm`fEvtA z6V|M6Ymq{v=ftQp=aZZHR$P1s2h*;jO97xn8hiKTU8h&-sT>_!1IDv`DuaG|I0j@? zDt^LM5zXo@7z8MAm@ZQF^%@xf4VtaX5oUuu&td_PO|?gR$xF!*04soGNzel5^1VB7 zycFCZR9(M!GTS9OpL+kvQ@y6py>?ZP6i|FRVH6w1cDPpj?^leT&W*#OgbODMMuX=e zZX5jlLc<&lpZRo#1-&r1D2SW)3U$07uy`*&Gf{BYzo>6xW#QY|<3|8Yz)?ANe=;gg zTxulHAR;?E$ciga`uF=Jw(&|?IVz!0>S3z_C^Wy4`}Sa%FRKlPf4k!bfZ$zi5?$5NM#8c5VrD<$zyzPYD?;kZh6 ztXbZWmyt(`d>qF`F|_sAeeuPN>$wel&~^7k`jI;(>~YH_==yw)62OHp4U^IranI}S z3gi+&Y>qpNfu1eUgGkPUdOS8Q+S`@ca{Ig(mUojd_LeiR?kSH?!2{Y^xWuL$ zl3PhxJ!AfIZGUTEKb>3(R zl3#^8m(Gu+g$JK$S{UNlD5eah<-KWv-qF(o#Gg3@k^f#-Uf%f0B)EKd#If@up=9>A z-y8>RatW9D1I4UQMyR)*^Da72t4w%p|5aaSE&~e>TbXMLy7>Sjv0KIynL-L0%kC>~ z6RgvIAKUotX4H*BP%iybR=?=1$Qht0)qQq1<)jb*b-!F=dd(EczLDnVTx8Iv;SMGr zIO)m7`=V{dR8!-OxiURdq;OLj?pTP0F@KetXU&l$2tagu7L+goCcMLjnh76t=n_JS z6~t`77_$;YL)^DlmiQAC%dqOzz%Nrep2z?QigZ*kPDarK0)9EtcBxK}5mbUJi!3j} zmC?7T$MtEA7TjYaif}GcVJpA$%#~g1Vu36>e2aV0@;eUEioW!>sLj(`>oq&;ub2$T zpswLLNOK3-TpAoF%+NrBZ|$l6u}%vAXa(}NEK#V)yU>Z)#Kvc_j)G}RlJAN)>hOi6 z;TxuqYJWaEAOFHux+W@B-R?)01yOeFi7QK|3O1C$^?ZL?40lPiE#P2|VQYZDn#9-F zRG=oMb)R`uPEQy3LLmZe|8jlyJ^fTU{sKI`yAC>BEJryuPkU^f#8&&v0_gE_n2>DK zJK>G(uy*0H&*|Uaf{Y-oONd3YyRp3kw>QPIg%#Tk&l;eU06h;GWg5N}mlz7iv$8>=c!X@L?Zao0`$uxj^_fIZsQ0j&BT@ffKCK>s8j;rz7g z$^uYOZlYRI=rQnHKUHU(1fUq*c-GOq>MyM{EssC^_x-KRNa zQKiRRpj^>><1V!Q=bcH9wMDx1&#>6F>%UNoOcU!oE841v^fTt;_eLl^TD?tU?NiCh zO8&cnn9K*aixfr9+}VUG&fHt8cJBx*i*OmNGh zo>E{m0U+?KpJXsN)GJsu>bcEu8iAZ|u1;dz82*ufNroWCeJY7{evbYO+(Ng(vGPyh zgNgZkb8ngt;EueRix;E;=P%c#JNW^ zu~7E1TOW9Uf0$M+R2124u`VbUir&b{XW?`IT&If>01a*dql=mu-kN+_^E>A(|LHKn zKW8BSxVZh%E)s#>f z-=9|JcYw&1z?XJb_~yc~ChsiGbSpa*h}f{HGe2UC-*8JO;@BWp$ql;D7WAw6`I zNYf^HNcsl@e*S)KV3>)<*au{@q7lI@hInqWrKc+wpC{(~FoolmqVsT-4lsaGdVXK~ zniDYcbkjc~Pb-P{iqEol1Zz%YziH*(5Z-C+uH<^Bl6$RktGJ}EP% zV6Zfk%wR1i6nOAgj{3-R?heRAzE~2l*nRQK4fPjLB0<6lTsC8Weed#fp77l~vDGt9 zFyk~#_xgw6B z7E1j0$6vUL>Zxv^^GYiL_5+09VT{JHOa(Wxz|F6jcd$tH_}k~f76f_E=SQF610n}l zu&I09AkCwGCuZlY^$kXc&0)prk5zMHQD__ya9{Y9&N%k;6mO%Z&Wi1y*KS!`7{2+^pt(!3e{Non0BRR996&chH2U z(R}IfM)JR3pRAw!&--3UT#NUfn#ZMs$#uONcf=%C=ZP&LzGlIk7MaO;`q6#S^!MoQ zMl&!kyt@QYD80T-d3pd-FUSC-(p|4qjB}??V0sK>VxkR8jlMMZ*+k`;>a8CT%_*1F zqV1}WO4J1Lu0maxRgGR>#il_&rpKROqn&rp`IH@fWX6iKu^t@V{d+8_^lk0I-iviH zU5SKcmmnflsYVW%*FTws_KscfOx zgY`--pyMBU>G0&aritug{WcMDt0;$3&(TB>zh5a4BDyssDi`_0hg{WF-so1tzUSDp z-QaRQtSvHFOcoBexf1Fxo+ws znfmWH@dfhSsY7uo=E59_;m*dreGM9@l`?P)p-X+kRl?eKUGo^57Z|8ZAtqN8l-tG= z;QR%nWewl`cNlT}B>*M7pmlh@+k3Fm!aO@nz$wcS6jAPrE4HdV^sd(yrC8-XIL6GF z44mwe`|bgc^@~UEyPG*B-_1<&>ya9(d_nf?Yxt!sK4tiEfNg8*dDu<8_YpqYSmnRV z6KQswiT9Tc0=`-KDtoyI_9e}Pjko(0L>uv9>-)p5-*s?)P=UC~i4f5-qaCFlQE_qZ zFgm~rLkH_r&L1biZ0e`OIwp4(0l7D7I!&XRYSA@z7M^k{R3USs`Lh1kbcr=3zGXma z2@W7!MVLTTk)gj~8Io~TY0Jr&AA8R(E+`6iVii6BNgP2_y;m$$Inom3JagaGtTczX z)L}m#ORI8q+N)M?o%&hh{#cNC@qHrc-@f@v|1-L7Sj)?$EX1_4@ZrQ>WVMP&^%CQ- zH=iGyi3(NuOxWnKUYUOW^=oC19M0vv45%^M?e8h_gpC$3sf!67dPHXTmoCqeIIf*j z3+w7+rp|7KF-SXHV5g8gGEui43wCnT^*jpx$Vlh_+@cW{=iF%S_MfafzNCPS$2 ze97^?ca-E~KktazwTwvF94IGX_b!|h2HcvsCT9c%-3KsUn-_d4I+>nqtpWsByR`Sa z6oYK$1uwziCTWY4N~-MzP;*jbt;nPk^$gUl?CBpc0uT`s=bm?nX9Ea}AA5P+TH#Cv zR?FDNo788?DRv_QoLdK8DVQ4MJ^M_+#(`IJePlV>s2d7W5(}gD_pIJs@oU%tfa#AO zMPmRuLXjx4sOOlw8v>5x1~?&>#^sok;@l1)O1lboV*wseR)Bd45<55g6fk%hq{Kbi zzrWyV(!K5fTcMau82L6(Rt$l7QN{K=IB9e5Gd*QtOBvJN_+C@$CNfCUH5Jl~mA1C^RSPga zPR??COHnKA?)^*;00(L%ponl(25R#nq_C@FDAqfZtf`r5sYF!_376McbMHw^yL?*}fOZ*C(qIv(ke zjN{dcfXRDus+d}&)PT+u(Cdg(Wh=N7+oHtwoE3l7tW2U}%n4@MeBCr9Zr^Izxc8n1 zI7J#C!Kv_o(0`&m`s0Nw-9d8Chj}f=FIPX(8!!q;2Ak~MB8LY}pwL;#;FPSZf%5^j@$cZgXN86;3bL|~jqTip8>sYS$t9WWR2?Br1{@^MB zY`1{34bo5Be?KXuYlD4f2; zLJVrp?k!|b<#i&E0S#Xvp9~>C$Q!Xl_$8=vhOHR@6CgB4Z{U)jiX61%Z&+n!y0@nH z%YC)huR=Ks#*Y5aqnQ0TM+Hj$m^sZji;9IckBCq3L;ziuNawv|3)B8Iw>?P{(3J2o z19eujljGKGKgh)e&s}AhzD>HM)C8C_yk@lO%Qy*qRhhKm)`zuGz#inE z7qKaYKnenve3z-WRN+G>Z-IF$7kN)m>B&Umb8|tNnOn(x5t=BUbzE2Vs5F!BZt?k{ z|FUJ#!wlb3FfOJ2a2Z?oPeK9{W+r|47vY!i$|}29;02F0B?Pq=#nP_;#tuHx@w<7I6CY`YdHnM0w9yl6DyBQ>#vou-unldj zUV-|pONKnUja;^HR{d1+oXt`G2&M31sI`XRUx^Sfy_f$Z9}ouHwEIP8(x}Wf6M;k9 z_NzgSzX^yBp;AtXFyA-b)WFL7#kT>umZOHV zuG4hTNig$iF%vWae4a)jSx`U&NjD)H}QOzTT?(~{yA z?=tIq!((2?XAQcDZBnqZ2lZE*s!G$q%pLf5sO6k51b>VaoY_}?qJ*OD%uB#bEnT3N z9^%2f#?>mG>;B25JyK)O*Y29+?Ng3gK^jWW2+LI~_^lCp6e?W!EQ^(A*y+|xQS#+>TEA_=ndCB4SV1%2*@qAUd|p#4?1!eyd5%S zwaa?&&WH<+%{;ryzIHhru7f^pN8f-x&?@?pQu8HI46m==QyEh`B=7^+*=1DzOzwz}TWwfQFTOGT>t+_xKv zr)Z0Y(OCskm!En^6%1_l;n|0|hP^VZ9#7Sf5)zGGD%+I{+P(8v-ZAGfuC^XICoI|) z@;c|6%zlt(YS-Gp`n3L2P`z139eOhvo&Ep$z!%@}@_7tC@t-g!up4K$!N+1=hkDFw zKT)~C*bpjwR%ArccvH0ak*UK*L#)8Y-qUilb|wF4xvt0K{_uN6O3EW_Q(fzHdQOKCFa^2%Pe5ddCS&R{WYO{U!@S}X z2TyL)by|QdMs6kG$m(tDc&0r7x?t1MRlfQo$saOZZ(1kb210;Husg!h8<;kqo??4?-qp1d+9TK znf9%0`v7-a_{NEzv)nU#>00t3ALz5z{E4c+bsi?2i;O)CTm``Gw#Rhs` zp5Y*oXIh}_Ndo8ymcSN<*MOAg3b37olq9{Kpz*ueiS=lj91tv|D)B>Ht9Ea`$~%5e zQ7I)plR0g;<(p4>WiLH3KVg{!6$t+PB}|V?Zt0QX_Rt*gVi-Pua#yPt)5U#%bsbY& zJllQC8hZ{zEjR1ooP!QNWEY7|$f1;d%=(azHatG8A34-%vLPhCgF}ja!nj5QMPjc9(PILc|dw=kbaowze;r{a0Gtf;jm91ts>KP#xT|Btz; z)a)P0_Qyj&y*IIvuy3FW+%5+C6r8UxJ@}j4k{pe1TBjS(3NQ$x0UD_ zSrnbGc`J2EGB49tV1MDB z(b~k-ay||mLiVnhZDvwhkm{shhxqOWt<6QRgfPwx2gh2G5XLfGdOx6!VT8^^S55@P@QfHxs#@F0&f!CrJ7`je;!27Ml#udZK~{rT=Lq^VxUz`&sYlN_24Jj4fpHy-t%AjZO1>5%RZeEQ zGThg=ceEgB>SmHGn5N5sO$ws8kt%&voaZkmfDERIVQnp&Q$1DuU2Z)gFSa)VV-DuE zLo55X>hc1&%;iG`^Q*#(2yYk2jW`1G*hZ_w#?C^C=T{ccwSow9UqVRqGKj@Nt$|$5 zBu1QoX{VFZ4&m5kbZ_sD&B6eEt7xKrNL){u#V3*jE^Z)GIkTIb7wdTynALp1g?I3Y z%wp{8ps2Y=PGa*BOI7Lu=W@~GQkz;@__;qn;$t1ID@pPH@=3TGIQ&6t`w7WzXS1b+ zz;<|)^OSU}cud1&3t+FlOf8ON<{#{Np{Zu{pYBcdKY3yA!kzoWcb4Q*Dutck;7wrp zhIQ*-FRqTb^|~I^ggb~W?^*mRo3CVJ-@<$4x;4vn1Eky7<`(L0`dbh@+f%fFi3oT6 zs#?Ucl#+Ws0K|Ts8sch&k%Fo3ornqJNj(`OCmvB^1W-LaRu`fCnh6OUmvnoJA0}cq zN582~*H=1A_?MjDZyd4P%p6R%5i9(&wtCmg^MQ(YQ+>IS3kUV2Ric_eTKdzyiP`>3AK6i>Gsg`-O*O)>o_4koJ-xLB=E6cXxwW`yzAf}9=x{7dk zvRY;*y}E2Roi+F_Fg^Uqgn`j+Cui?kS?>f4Nd(qAWcwdx-OI+8+KK%dG_c-&0mXTbL8%v=WfS$d z!nJ*SM%BUmIZ+H?`MhMq$+mTnSOc;)g()kfWwXCkY#`$UzGQ{jVhE{s@RvxXRR?Yb zuDbd>!BMo*Et0rr7qNkSfO;|Tqau?izaQ8&`7HDCSMI|l&>()2nIkhRy1a5jWnU~O z346)Z0w)}Da9ZY%?AW+Ey0K!vWo7rp=0PA<2ckuUXM_&qD}H&`I7uVs&BoOCBQ^kt zWjr}sbv`u|kU=V=UXFI*L&H3e=HDy)A`JA_6-Lr`V9t$F_beQf(AV!MSqqJwQth1E zJGy?gGK4EIcQ=b(x7^$yCT(|QM*1^qRi81|fd)x)YeZWeI)GuAgtg7zXrJ`|H<#?~ z(*G|l73K~@^k0Fjuk*ubg2Jq25H_Hv9!Pa?V=;V|B7lNpNaUW?5c>> z4FN=*q#G3dV?V&r^jvqH>dcl*cje>YP{X&ZxZWkcR@%MinIeD#c`$!0qhFi)%2Gt$tmOJj80VaR z^vPSP5pBRT4L@@Gx6g=Gk*f9c_Ufl@?c6u~OZ&M?R_QklId^rcuL<~T=bq~T3k9H7 zd)Ob0uYJThFCPX%%_CL*yD9|#X^H-RbT8ZU{kgL|1VC|4y#asN`T3KBB|^I)TsxgT z$ErJR3`4yWW(>N{&#NgDmA&{x`yErFTv28z?xvc+HH!J2mo(mpsy2HXg)?ZqRu0| zElx$Uv(iIeO@ZZb>Sd7cnCp>B4j+IU&4hq-O$GNapkF$7 zV7K+ZO4hYnyQkuQUSq`%WaBdbgMI&X$h1ZAjQ6_N2Yxd%NLZ zq=C?MOA~fLhnl_7y)Xy#>tM!!m}?5XZ)9mtVrGC72WIc?LT>I|GL2|Uz?Ny6EFDjVt1FE1KFdUN9dU8s< zMOmrO0U89)`D`fqI%9%I=vU4%xOH8xH#8n@{9*Wa@8O1J;<;Eaxfn1cRu##~BZkb1 zaSsiYch(}OjU_%|DQ8k@+~+%vj+1Kr4girlnkLV7xln8A@BW=tQ6R(+pwl)scGi~V zb0(@=2C^>5u<%Y?kGf$dE7nEZ`XJzLl+hsdxv+bE>lUE5DuXb}w}^oBL*acVLH5BT zN!A;?l?<2GyH!T&e%;(}Q!2CngW`ERF|L|(!+5um_B##@mD=!EbW#(7iE890c*e^8 zL;`+Qa(CBmE;H9wfQDLqt9lCRZH6!Ni=!Uq8#*^ zLm{^N>?QNYQRtZ+$AZ+nntC&D3|p&sw{OgbeQPxJab@Ve>C88teg4i*o_LLV9Et)x zaKrC)wVcm5@`5h$bFSR%K+6rRhB*aNoJd!2#px;vW%0CfiP83u75wt>M(g*j%JSyX zU6@)3086mW&!X;$X1U!?!X9Ppti#+ik@i=NWX8TS6FH_K?y~zTo(Mkbsqd0>9j-W< zQkDR8Ht8VJ?5m~rRCf<4oSo5_obmU%u8tkO<=o zgX*?+rgms?#m1x%I~$9cFG*7%UCdYXu83`rJ{O3Hcr}D~=&_<|3A(&*P@YEl`*}V* z-at>;>I>{*b&P)=d1l+ZtNkP8+6=3}uosr?{Vry8(4X|qWSJ>?!-fg&5;qCIo?07h5YQgX*u-5fn{ zp3ksWlb!P{Zlm+!N$9pr(N}ytnh-=3FD?!W2yf#BfpmK}?lt^E6KGpk>})v&fY$z@ z&@T~gX1>gMW3JT>@+r=|NcZ8WV+x-uo6g3KEH`EeZ@_wc3G%o%OHuA{Dwwn|dTO_6 zcVwNLqdpn}=WDd_LTtF?ltt?7x<~G=RV?fLw(ppQPFiZtr5luTqDMsa`Cj9q-1PZ$ ztUcAkS+feDeM$$|7~6CF5&1)1B}cGDodBluLi4@_N(|pJO$T>rke~|ESMF2pS@V*+x_Dida&VQxj0l^ooVmdW_qL>PZ+N-mmgz)BARz9+(c zk`Ho!@R;F`wyzOn!Pn26PqW0SKSQTLqr|5hWkQ_<6gYHPex;sqikMCL!8D=EfN_DN zY+jJd39UwBQUdV=%~Owd$MN#&@yId z0#Kei+41Se1bYIU`~0us3WEy(!WqU1M_a`{$}Pl?u!*pwF(mZLf}Zs2Va(PBh>fX*`s;15iR4&Sdv4vtivVlE7GrQPus$AZI4M=^>zu8`u7?(U9U^FQF296gT>rV=?Q(G!CQ`Sw$0sJu3Z=02rWpv^FZ#ITUbMtTJYa z@3JQRg7`;#I)QvyQ%nN!lbsga-^9Wkr9YV~J8?9Kl?c%^ByWo=kdjlqHkWNKF9*z*p6 z8oquH#LEo22FN;37lZNSq5Sh9MB93VXMUiQNfM*}luY8+NyHW&#-|=*vhYmCM*Bw3 zMs5@(eO%pY#{u4<2-42!@cThG^#OuOr#G}JADAHJfMJ-K1Imbk6^Ctpi_N7V|9Jo%K6Nri8NF<(H7V;RHEg{kU;S_irW>0F2ng zf-HD$v~y4+R>EuH_Iqm|Y3`Zh;sG&&_xqCapbr^=L-^x43eCt z539Iq_73Lus)?>l|Hg>-t~9*hx(63p?i$b7D2fPc0e9%(shQUJV#}-xkoF*4YsfJK zy$&4j7v^?427|5><7PL~XkL2}Ql}rP(o@jw564qRqv>gXhy$}M`wc$7UU}AEX<~px z|8Nr;Qz(iVKNaWR4*urp+pVX9CnL0aOrGD)V%vN8cu@KU$2`ZkAy@9^mrIqBUABJ* zXxg5j%ffcLb^TCTFSCKN8(fl8!xYMlSQaN!LL-%BJEKh-EIBVcqMlRq$Mn z2Hh2x^wGH6+u;|3Ol--xd#7Ei4`;2|e+d){^C3t!e?o=&Dq=QV0AydmlJEkMj<@4Jg!dcM# zZHxg&>bN)9Omh&}tO-s(oBrW1s(49umiDl2?}E%HvuN4)SITw^>_N zjG$|;T!b)q|B8#&KIWJ&!WG9f!&$1=t#Q-)Hkav^oOv|!eb!v1w1wNJJ4)J~3?}lQ z+%Wxo>FED@oD^8%}i7Y0{K(7XHR1FBm&p;_DTSIzSbT~XM2HsPB6Ong4%$N!_3;aF5<^EZ%1x{G0H+2 zSa3sIafG*KN=37~r{Mqlobvk{|Idp#%uSm4rGR@-H}hL>)hB0QkNo7YPmgE??g36i zIMj0^U+)r>*hy*%WelHN)u+`5tqN~9C^H7#krNdU`HB+<&J1?7jqq)(&pIN%Y>(=L zcr5o9>Y`t<6G0n7RTrrt5orlN${j>#M=02U8cljIlj?qLlmHh)!mJ1@HIzx7sa|a` z{G1D^i5Gd+ENz0M2ha7b)hy6S*N+^Re$u?l^B>MZK@Cy-fQjPub0X0?%9L_d5?LH% zy?1FUC1BJ~d0TaB$_zqX|Cu+$^mJW($V&awZgOy{8HMw=TihU68c~lwL4cqbu%vuC zs|74lt>^7%1&*susVKGI53MC)8q#7JlgVRIq7`uzKeV?*l+l;RU3KM1FWUEs2hVlx zn+oKQf3$giRVm$5_IAf;%nTQY&!o=`>!&Il?*En3S&4Ep%kONJ5?MIUK!XO%nKC7M zN7pe2qK&$G*8^y|GnG9#2A4VEF?Gt=cgi&39xjU{Ypk=)l;V$_&0^Q80y-KUQZ%dK zV72g5IEwi1ZS-S0J;m8zw|@SRYBzz8N+js`WL=k)W~()IdRD<2G)uXMUuGoO;I@oi zOT1z(LUQNSQNv~SU2MNKJ4)`~x+kQ&9I9%a|5i?(o)9yi!m*!~PN*CBB+@f74vENc zF-lbKX;PDZSFYS<7ve3dBtgJXr>@nhjFIvm^q86SHifA0ea?%h&KY9jd%jH72EZ~b zmA!qF@gS_l$2zB>9p6DFO;u}St56AM2G9n(+&j;x2<7NKf=>LeNq7l zDkj!T-Eh(Z*hVGNLp05QZ}@^ST>kcS#}B&M%0p`Y6JrSuj6p#SNhwz~aRjptBA{!1 zbgla14dMJj7M$wQQbn=YJQa!UNe8UDqFuIbKPmSPqeH76uggRw@G+)OD^$7o($(oh zo1Uu;F@*AvqSEi0^U+g96Klqz1hL|HdK2~x?<}h50U=*9rDS@Vh_&jAMre%rD1dzh zU#Bzj@15_&WY*uP-L^se0!*m?2#Dpv$r;1D7gKwl$W6v3u^e+tb$#s zqQ6ap9<$)AKuB(bto>BFjGLWR(__DP@WHRC==&zTG^cQW!@6Z%(v<6dDZXbk80Qf# zyC9sftgQF}xUv6YC&J*RcmG5^FBhd}bv>ozVB2CUW0ErV#_rbMDuq8Gl(#9Q>OK5Gbs90<(} z5;lEL1#Rpun^o7x?zoElUdo#rA60j0chzd}P|uEgq=m(Et4{%*ms}$fHR^`++TK_P zKa<)*5;9(n9=hYR{_?DXp9kYuqiU~bt0wtTPw5=`zo$;UVaNZKr1x0%J5nZ*#UQs4 zbXX~|r!_$18}sZsKztmG(%!ntsUm|Mrl&IKpL%M5>?zKD6|qY^Ly%vNT>vNIU|{5h z!PI#xWIR^x*GnQ7QM2Si8-+L@F% zR$$HH$#j#9)i_lEQV4S)nf|P$*kg}<8!cGlF=%m7-$tDFCn~Dm|C1N1c(h#vgeVYX z$4IN%jGty_&hL+w*rmNq6ECf#VE78-8zSj?YO&o;LN0Ch^_Gs_$_9Ljch6!Sz zxq%n3Ws*t{5e(xem?9r&a6aHYYQ7VRI{ETtDBQUQfb8>?t19=a#qDdBr#)XW?9D!h zasc7JBYdp1kQhU0motBAMXK-$YxA66Z)q2z4qmq7xpp|6oaJUr?C4pFB3J!qx#S8s z%t{~M{WvE3oE0CPvRTz#xWDcit@u;l(bFWMrjki#8AN0M%@f4 zunGPP8I@c8pf(SzMANk$4pkNJ`7$;1*GJvrF(kdP7&CfdE7W${X*>m$u`tfr>!p_H z2Sd2Zdk3UNdBMf#>VQFp-goUoPror4QS>9)nl%{YXXVaNGcYT+L1k>{b2RISw~DcM z+%4II?Z?tjHwAud3rH_2DUMO^MgOMA(<~B2tDK|lc`y<{5u*dsk=a+iT62(jCtL}S4#L3YB%dItlX(o)aN%fI9FqiX(4C z^16;>nPc;i^O`mMAF`l<6wcH;8OR%{F>Sw8j00GXu2p3qsR)&R-E@7KHw3+%WbI%mz_+ zCj~-GJ~+)Vg%$DhYJ4;lLGS)1$o{D(|4QU2mO(nrRXyeaTlMeg#-KHem(s#{TIN{M z{5ca_>@l9%f$jG4c#ld7TaTB4fgSx$gpLSVMj0imyM$i=ya!%}Tg{Yg(ClZ#v z6yjNZsEABSTP8ZSafdSzyzQNI@Ac^_f!b&lyZ?I*q2F7MFeqtN5H%u`t`y zp&xO!!PKRO2@~q$w@8Yua%)=4gO=5JdoObly;e5)a<{9%^TICGg&K zjV1_lUE4ZJcpECO)m%@yBc-kFJgrgd6esdbTAEtBQ`V+K*zWa{^mfY*=oojWB0%pN zNhtbE$bj~i{~_in-jA7q1XT1^oP`oISbj1YUzAoa`C&pV<)4u>sPn4ihmKPjUs-dO zd7q07r@i}otaFO4Xs2!Y0amLQ$N|>xzk>>Jx3~CB$0+*OK$XOKdSueLV#9l-9)R0j z@tqZZy>QrHQ|?htlRDpJaq4l&IRyE@i~L~ngto)m_Kt{QoYdc1*^=_#bmIOF@qzWW z&bPQ~%Mm_JQ=9p-Tp;@;X!D2ChpB;2v(ex^gE)j)IwAl9%@4FY^m^(BM$Q#G zE#Kpc8-KC2>B-AzF!Ynx)a)yy{ddRB_y-&SWx^l^no0+@86P-8K!e+Te-m#h?moQw zSJkJ+QJ}Ez>iNWS6UjPwHu&t-f-rxNAPCRxDIcH}x5}*4lEcSe#VPzS5|K-J`$PLN zUG^Zsw@5LK);Fd4F+nknf96oB8bNw{wdOLlUU_>OJt^f+;2SitXWC>(yI8mP`PV#A z2H75Rl{F##*Uor7v8}a)htN$vFTVT%B~ZLOqm{1#r7yDF-`{;2rd)fAxq6*im+1y9 zjy(Ez4>a8uPoryFjF^>~>=ofN?mZ8UQ1o;9^DYDiu}v*^8g;WPcX(WYdgS(3HlJ!o zriG0TyFY2S2P^fhJ;)8Iuvwk%lk$OPiT{z95^?$^+y@+_Dfh}UwD9i5VI!LhV zBw~;3{qb!9L>N|fwBc;WNE*X+$EbTij9w*1+4)3!%djeBfol6T+hIIKu`H;jz3_1j5Se1yg>6RT4(x(zLw-80`WoQY>XY&qlctbk zUbDTd2|M~wzalc_ob(B}H zRFHOdtS|Yj@{?y*cjQ}qJ--eOzOjH##4S<1xVKwY2$|ngfm)F$sQow!rF7ByBkCiL z{=9AN(hY5&PpD+~BFxkX+iKh4LBFbli zSovh4#JR25s)`gZLgHvf4^VVxtF!{7`-wN{*7S6GU%3elfy`3e2vPi1TR3jpM=?#t zd|(^2w4!5o){2h{rlr}6=#AMTycLB(+*mA`k;Zj$y>4DS;`d0aUwh0?)s4-y?b|AW zl4VkH&_3JS1`$-hnu5(Luf>KPiK6fU=}vw^H$dR_&#uWo>uwoUbUVbr1!2!kC_9SC4Uk;NXn)sPp52)3bT*_aA#ipT= z3%G?;HPJ8Aa{dN1#Ix5L(sD1h*Q;6wJw~SFAg^cD-uCBHYOx%@by)^=OlLKLIwX45 zzb}X~F*~J(ENgvPS9%DVhB{DO7S^q4c7QAsG73zxi=x;dcZyY|zZ#%zPg*2$Joa>5 zm3`j8s?eG-3;`FJepexPpiS;8;TbgD-?09XzSc5ubfQmppBKc)vTX0pcF9mJf6A@x zb;5_0piQ7yKI=4ye(#r;|4ibr$n$R^9Cp+*zE__7NfC3R0NqB+L>-YagcinIFY zYe|IgL67e`#O(=H4j;zYQzRn3Ql_X>@poD*sW@f7Y|_*8vnP-FM!kA&)h<+71Ik9A zCm&yGXpA9MEdw1vIHXd8X$i~*KnZK`{Uc8B8>P$m47zqgG^5GC5-O@@*E}segw<2B zY!$UZKl}G({`&{VQR49Kr=|R9TpH@65H}KUQ*oK1pI9Y>vG?RHXbgO)n2N67^@%0IvaaVg2M2*ur1%`mnsC4R>Lzd7a`Uh zg7EwvIvg;xqJPGCK%k?9S8mXFPe27{Gl132PY-`D&q%tI3fL@|eVS%*V0)4YH=@_` zaOC~TGB^Oc)D~i==-H-TYkfhaIdCBVY@qRcmxjKNf>@-}-9Mj>^H*T*(ng7P_+_ZC zIbL1WSi?rB>M}KinLFgeGL~qa%R*(_iCJH(`#6JWn6Gt?K_38lA!)EjU3!|FNPlSa|46KdG>> zVT01djY#jS8Qh2EpM?Df5H;a≧cPSAiNn*ec91%Ei&_{HTry&$!s)a?u5F3HrZO z?5xBYQFym<&co02s3N=aV+OUlj2>G*Q*clXTVqf}h5l&SmlhP3C;*g3fe28KQiX=o zgK%#i+UPOxzfX8Op4%KXQ22afgWDMPy8lI3o}m8z5FKz9?&Z~z5^lM49d?L&oh~t3 zP1hGJ2YH^t+ieDfXW>m14rz8+_@?iHC8PkZ#>63WxxqoRX!-+gcuy6P4G1-(y=1~H z<-(IrUeYR!FA&bcVbY^K&*>}`muc8W)DwOMC!=mh%Jrv36MXoE`u`*spT>ins7g7U zM?_l$!deBq0eqcO(#`QT5S98Z$S)J6GFoftI9bTV z^&_%n@Hf~sbQ;ZLd+8C9;#^hSOE}4x6fWD^lTN+Z-NsGLupuuXKD^m9LpoY2v^V8x z0B7YNjzRN%p?)0AE=CQ&ZaaGFzu{$L5AY>ax7`LMh2Z*~;w?g45L4$D;kPxsgCx9c zme|am1yy(K^!JVuEa_^R;;BLT`+`wididWLVIaiVB84MBM0volUT}K2J}O?zC8gxb z@A#_>;`qxqULWY4Igw#6(vrD-Ob!M+=vj>P`}x1(sPqRfpx;Ka*SN})u1lA#D_=Y4 zU&?)+#!~~m)k>Fd`+B9iX`KX^6M2?cJ5)qX%Q&OYw9Mnuvh`d#ahgR+5RvVrPaATB z9{vS(Se3GE3 zyMfN9_hsvYf2L=^qiQ0J>pI}?iwgbv+((e)q`Ba61wCXXsct;u4+cy2AAXa{uYa$Y zDF<(dbd(^cMq{0hB;Qn7rSyDYY$;I{&SEupl$?*!g49&R4^Vww=j^|~eA*%O>0PZ) zI}(i=<+Vgr2iQ^rvX;q9|E?GXOK+-1MP0veN@K~uLM?bc42&@w>< zu^L54W>nIrbq6;zd|Q=f7Vnfd5#c;A`

x*wYjL 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%0AOlEt&SaTNe`ecgq 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

vND?t;x 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 diff --git a/public/images/api/qiskit/dev/release_notes-3.png b/public/images/api/qiskit/dev/release_notes-3.png new file mode 100644 index 0000000000000000000000000000000000000000..67243561a6c014010ae5d293ac96ddf9f735dfe5 GIT binary patch literal 7069 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 ZUMpF-skolt3m%mL4^_03ixn+H{|S^~3*G<# literal 0 HcmV?d00001 diff --git a/public/images/api/qiskit/dev/transpiler-10.png b/public/images/api/qiskit/dev/transpiler-10.png index fd127e4324b75ee31b25d6e605499d3d3b269d44..6ca7419a60f99f328465991486be4df1c9a37ad7 100644 GIT binary patch delta 41 wcmdmQvEO2Xhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Ew|0{}%!5N`kg diff --git a/public/images/api/qiskit/dev/transpiler-11.png b/public/images/api/qiskit/dev/transpiler-11.png index f9a5e874408e9c3e2a974f37bacf56a20aa4729a..3107c25ea81f021658f17dacb0e277f068c250f7 100644 GIT binary patch delta 43 zcmdlri)q&^rU@Q$COQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36AuJix^TcHph delta 43 zcmdlri)q&^rU@Q$#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5yV3&yW||S1 diff --git a/public/images/api/qiskit/dev/transpiler-12.png b/public/images/api/qiskit/dev/transpiler-12.png index 9e5a002881ecc832496d442e98ae284ab0f57cce..2d80ab28ad42c6247a8207c1e27f50d321ca7359 100644 GIT binary patch literal 8913 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 literal 9016 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 delta 43 zcmdlri)q&^rU@Q$#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5yV3&yW||S1 diff --git a/public/images/api/qiskit/dev/transpiler-14.png b/public/images/api/qiskit/dev/transpiler-14.png index 439b5033095840016175e162978ed6a00991265c..5d0a60038f7f762c89a42457b6976e39c6fb0af6 100644 GIT binary patch delta 43 zcmcaLkMY(##t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36AzW4zEX7~_B delta 43 zcmcaLkMY(##t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5`{D-xaq$ts diff --git a/public/images/api/qiskit/dev/transpiler-15.png b/public/images/api/qiskit/dev/transpiler-15.png index 5c65515ce89f1df3fbc296856edf35183a71e44c..309b84dda450f1b986b7850d0adae635b4309d42 100644 GIT binary patch delta 41 wcmaFt{n&eghn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`El40ad3EivR!s diff --git a/public/images/api/qiskit/dev/transpiler-16.png b/public/images/api/qiskit/dev/transpiler-16.png index 538899a41834c3556ff24e45922fc7385c09c01b..f456e76897a5625ca5f6947351a223d1bb376abe 100644 GIT binary patch literal 24996 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 literal 24539 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 diff --git a/public/images/api/qiskit/dev/transpiler-17.png b/public/images/api/qiskit/dev/transpiler-17.png index 80f06b241a1d013edf1973d44b6f185c4b7b1148..ca96b6a807430f1808661228399458eecbd7d5f6 100644 GIT binary patch literal 18958 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 literal 19001 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 S7X}bsfR>cMn{(UX`Tqio1Gz~6 diff --git a/public/images/api/qiskit/dev/transpiler-4.png b/public/images/api/qiskit/dev/transpiler-4.png index fd2148a3bcafec4f4bcd75b2bdd925324f0fa5d5..63022a7d06b65189c70f1cd01a8ffd552c6afdda 100644 GIT binary patch delta 41 wcmbPeIMHx|hn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`HEU05fV2Q~&?~ diff --git a/public/images/api/qiskit/dev/transpiler-5.png b/public/images/api/qiskit/dev/transpiler-5.png index 6ddf41c71a51a20122475e8532c8d2eb132d5559..fc887d9899c7e30b54842d43f0cf35c123a40ac9 100644 GIT binary patch delta 43 ycmaDpm+|>r#t9yBCOQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B36A8vOui_z&v< delta 43 zcmaDpm+|>r#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5YxDyEbny{p diff --git a/public/images/api/qiskit/dev/transpiler-6.png b/public/images/api/qiskit/dev/transpiler-6.png index 7b5d2343788e4f3275b1bd19769fc2bdf25d2614..b5ef1043e7e11218a303c1ba9c78c81d51414a59 100644 GIT binary patch delta 41 wcmaDE_%d*Uhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`GLK09k4ftN;K2 diff --git a/public/images/api/qiskit/dev/transpiler-7.png b/public/images/api/qiskit/dev/transpiler-7.png index a23a55d8c9062bd2537b8fa0debbcfbc642dd76c..8b4a3165e01c09c838c4071b23e9d045e23813d9 100644 GIT binary patch delta 41 wcmewn_aknChn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x{{R30 delta 41 wcmewn_aknChn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`FgJ0bw-|dH?_b diff --git a/public/images/api/qiskit/dev/transpiler-8.png b/public/images/api/qiskit/dev/transpiler-8.png index 14e6b007d0975a662e4a71213e86abf04e2e7cb3..df01cace192445ca1a0ed5874c7a594202fb9791 100644 GIT binary patch delta 41 wcmZ2$v({#Uhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`F-<0suh45JLa} diff --git a/public/images/api/qiskit/dev/transpiler-9.png b/public/images/api/qiskit/dev/transpiler-9.png index da85495e467ae4897e78f69362ba33414b1a028a..7aa2a841a5c011e2b52fcd31ed3b12ed3409036c 100644 GIT binary patch delta 41 wcmaE7{my!Vhn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x<{9 delta 41 wcmaE7{my!Vhn%sFLPkkRL9vy-er{q(K~8>2PG*u`eo?yq@n;di8`C;u0aQg0ga7~l diff --git a/public/images/api/qiskit/dev/visualization-1.png b/public/images/api/qiskit/dev/visualization-1.png index 03ed0f43616796fb11b73e7170217e4960d8d0b3..183477077c4b2fdedf3778cddbe44a7ffcb5d82e 100644 GIT binary patch literal 8219 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 CD;(PZ literal 10426 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 diff --git a/public/images/api/qiskit/dev/visualization-2.png b/public/images/api/qiskit/dev/visualization-2.png index 617c4034c1b8f1cdeb64cff07873ed3b8fb04d94..793c8cdcb4ba2dc9cdbfbd2672e83a964dda1cb0 100644 GIT binary patch literal 15392 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 y`rOY?^`d8eEdBC%fBkw(Oh#;)<*gLm0 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 literal 10033 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 bJ;t@S$1lp>x(b#a3WZV9xK*HF`RIQD30wGI diff --git a/public/images/api/qiskit/dev/visualization-4.png b/public/images/api/qiskit/dev/visualization-4.png index 1cad6080d6fd0a0f0f25723f651c11744a79247d..7a5e24c28bbb1c26708c2b4f3707f08208cf2e4a 100644 GIT binary patch delta 46 zcmca|k?qPwwh10`COQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B78IThkcxRsaB~ C4iRbq delta 46 zcmca|k?qPwwh10`#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFcmdZB1j$TLA#K CcoO9R diff --git a/public/images/api/qiskit/dev/visualization-5.png b/public/images/api/qiskit/dev/visualization-5.png index 151b51c87c6d48f0e3b231529a67bf4b20e86b17..2ee0bbcab206a1ad8898da2bab9b8953bea7c50f 100644 GIT binary patch delta 46 zcmdn}nQixHwh10`COQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B78IThkarcLD&a C$`Nz` delta 46 zcmdn}nQixHwh10`#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFcmdZB1hg-3b7? CG!pLs diff --git a/public/images/api/qiskit/dev/visualization-6.png b/public/images/api/qiskit/dev/visualization-6.png index 151b51c87c6d48f0e3b231529a67bf4b20e86b17..2ee0bbcab206a1ad8898da2bab9b8953bea7c50f 100644 GIT binary patch delta 46 zcmdn}nQixHwh10`COQfkB_##LR{Hw6i6sR&`6W4-NqYH3>H6}j%B78IThkarcLD&a C$`Nz` delta 46 zcmdn}nQixHwh10`#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFcmdZB1hg-3b7? CG!pLs diff --git a/scripts/lib/links/ignores.ts b/scripts/lib/links/ignores.ts index a30d4c01aa1..1d39700c851 100644 --- a/scripts/lib/links/ignores.ts +++ b/scripts/lib/links/ignores.ts @@ -85,6 +85,10 @@ const FILES_TO_IGNORES__SHOULD_FIX: FilesToIgnores = { ], "docs/api/qiskit/qpy.mdx": _QPY_IGNORES, "docs/api/qiskit/dev/qpy.mdx": _QPY_IGNORES, + "docs/api/qiskit/dev/circuit.mdx": [ + "#qiskit.circuit.SessionEquivalenceLibrary", + "#qiskit.circuit.StandardEquivalenceLibrary", + ], // Runtime "docs/api/qiskit-ibm-runtime/release-notes.mdx": [ "/api/qiskit-ibm-runtime/qiskit_ibm_runtime.QiskitRuntimeService#runtime", @@ -187,6 +191,8 @@ const FILES_TO_IGNORES__SHOULD_FIX: FilesToIgnores = { "/api/qiskit/dev/qiskit.pulse.library.SymbolicPulse#symbolic-pulse-eval-condition", "/api/qiskit/dev/qiskit.pulse.library.SymbolicPulse#symbolic-pulse-serialize", "/api/qiskit/dev/qiskit.pulse.library.SymbolicPulse#symbolic-pulse-validation", + "/api/qiskit/dev/circuit#qiskit.circuit.SessionEquivalenceLibrary", + "/api/qiskit/dev/circuit#qiskit.circuit.StandardEquivalenceLibrary", ], };

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 z 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�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 diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_gate_map-1.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_gate_map-1.png index 2bd41f9c94604be6059921eeb88c08ff268ac6b0..60f4679ed305ccc0251412e42225eabfc117c991 100644 GIT binary patch delta 41 wcmbR2JlT1Ihn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`E?Z0XdTohX4Qo diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_histogram-1_00.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_histogram-1_00.png index d52842397d627631b065d47af70229afeb5c1216..8b835880ee409a3d7130a96b91f16f88ae9f48e5 100644 GIT binary patch literal 10255 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 O2=2PlwTvrwfB#>})_iLK literal 12434 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 L`DE5_7q0#fTiQMq literal 16199 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 DvGrYn diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_histogram-1_02.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_histogram-1_02.png index cf5addcc342e8f65369ef9b82ed6e2ed86ecba76..fed5fcd214f2aac57eb75c6a853f17c4c5b51d10 100644 GIT binary patch literal 12639 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 literal 16249 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 C@ez9f delta 46 zcmX>zh5gJF_6Z(x#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFcmdZB1i*b`k)g CTN3sF diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_state_city-2.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_state_city-2.png index 02edff2c6790d59da2ab9a9ec131af327fded2e1..44dee9744305b12e36d06a3dc191acf43f256f1c 100644 GIT binary patch delta 49 zcmZpE$l3gmbApGQiH<@>Nl8JmmA-y%Vo5s E0K};gQUCw| delta 49 zcmZpE$l3gmbApGQv5rDUNl8JmmA-y%Vo5V!Z diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_state_hinton-1.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_state_hinton-1.png index a6472b5965732ddd85881fb26917fa10684a8d03..4f9ab2ea07aa8b5a1b7d5ca41e3cc913bcb97692 100644 GIT binary patch delta 41 wcmaD8_9kqChn$IyLPkkRL9vy-er{q(K~8>2PG*u`eo?x2PG*u`eo?yq@n;di8`Idd0b1!0LI3~& diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_state_paulivec-1.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_state_paulivec-1.png index 289a8195e6da3fa700e93c3b019a3c0e3820b5fa..aaf83e40d954c090a9a90c575fba60c1da4d92b4 100644 GIT binary patch delta 43 ycmdnl&bYIkae{}OiH<@>Nl8JmmA-y%Vo5H6}j%B36AzPJMbVuKJP delta 43 zcmcaLf$`P^#t9yB#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5`{E7&ZF~`) diff --git a/public/images/api/qiskit/dev/qiskit-visualization-plot_state_qsphere-1.png b/public/images/api/qiskit/dev/qiskit-visualization-plot_state_qsphere-1.png index b46214f03ba0c6160ec777778efc992674809179..a43e19d8c18fec42fcec5ca52922134aa0ac8317 100644 GIT binary patch delta 43 ycmX@w!F05PX@ZBGiH<@>Nl8JmmA-y%Vo5H6}j%B36A+@=8lTnG=O delta 43 zcmZ3pmTAperU@Q$#yScaB_##LR{Hw6i6sR&`6W4-NqYH3>H5c?MFek5bDIVLX8{o( diff --git a/public/images/api/qiskit/dev/qiskit-visualization-timeline_drawer-1.png b/public/images/api/qiskit/dev/qiskit-visualization-timeline_drawer-1.png index 0b22a51d35f5b01950d6c3b3c4e87e36a4bb5205..081394cf38204649f49f14f3f4de837d0f0c5cfc 100644 GIT binary patch literal 15891 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 literal 16073 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 diff --git a/public/images/api/qiskit/dev/qiskit-visualization-timeline_drawer-2.png b/public/images/api/qiskit/dev/qiskit-visualization-timeline_drawer-2.png index a15c4687adabfbfb9c576a794e3795abd91210bc..a2c04afa36ac5865b27b79542c407e2f57cba53f 100644 GIT binary patch literal 8470 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 literal 8383 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 literal 26824 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 diff --git a/public/images/api/qiskit/dev/release_notes-1.png b/public/images/api/qiskit/dev/release_notes-1.png index f7e742b6f2c38ed001d112c4f3c1856b622f5095..0e1fe4cafc2c2e5c52c2002d136b430631f34900 100644 GIT binary patch literal 8695 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