From 04bd249d5a31981bc0aeae522768692e1d5b14b8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 1 Nov 2024 01:36:30 +0000 Subject: [PATCH] Sync latest dev docs --- docs/api/qiskit/dev/_toc.json | 24 + docs/api/qiskit/dev/assembler.mdx | 6 +- docs/api/qiskit/dev/circuit.mdx | 16 +- docs/api/qiskit/dev/circuit_library.mdx | 97 ++- docs/api/qiskit/dev/circuit_singleton.mdx | 8 +- docs/api/qiskit/dev/compiler.mdx | 32 +- docs/api/qiskit/dev/converters.mdx | 4 +- .../qiskit/dev/providers_fake_provider.mdx | 2 +- docs/api/qiskit/dev/pulse.mdx | 228 +++++- docs/api/qiskit/dev/qasm3.mdx | 6 +- .../qiskit/dev/qiskit.circuit.BreakLoopOp.mdx | 34 +- .../dev/qiskit.circuit.ContinueLoopOp.mdx | 34 +- .../dev/qiskit.circuit.ControlFlowOp.mdx | 34 +- .../dev/qiskit.circuit.ControlledGate.mdx | 28 +- .../qiskit/dev/qiskit.circuit.ForLoopOp.mdx | 34 +- docs/api/qiskit/dev/qiskit.circuit.Gate.mdx | 30 +- .../qiskit/dev/qiskit.circuit.IfElseOp.mdx | 38 +- .../qiskit/dev/qiskit.circuit.Instruction.mdx | 36 +- .../dev/qiskit.circuit.InstructionSet.mdx | 12 +- .../dev/qiskit.circuit.QuantumCircuit.mdx | 258 +++--- .../dev/qiskit.circuit.SwitchCaseOp.mdx | 32 +- .../qiskit/dev/qiskit.circuit.WhileLoopOp.mdx | 38 +- ...it.classicalfunction.BooleanExpression.mdx | 30 +- ...it.classicalfunction.ClassicalFunction.mdx | 30 +- .../qiskit/dev/qiskit.circuit.library.AND.mdx | 14 +- .../dev/qiskit.circuit.library.AndGate.mdx | 164 ++++ .../qiskit.circuit.library.BitwiseXorGate.mdx | 166 ++++ .../dev/qiskit.circuit.library.C3SXGate.mdx | 8 + .../dev/qiskit.circuit.library.C3XGate.mdx | 8 + .../dev/qiskit.circuit.library.C4XGate.mdx | 8 + .../dev/qiskit.circuit.library.CCXGate.mdx | 8 + .../dev/qiskit.circuit.library.CCZGate.mdx | 8 + ...t.circuit.library.CDKMRippleCarryAdder.mdx | 6 +- .../dev/qiskit.circuit.library.CHGate.mdx | 8 + .../dev/qiskit.circuit.library.CPhaseGate.mdx | 12 +- .../dev/qiskit.circuit.library.CRXGate.mdx | 8 + .../dev/qiskit.circuit.library.CRYGate.mdx | 8 + .../dev/qiskit.circuit.library.CRZGate.mdx | 26 +- .../dev/qiskit.circuit.library.CSGate.mdx | 8 + .../dev/qiskit.circuit.library.CSXGate.mdx | 8 + .../dev/qiskit.circuit.library.CSdgGate.mdx | 8 + .../dev/qiskit.circuit.library.CSwapGate.mdx | 8 + .../dev/qiskit.circuit.library.CU1Gate.mdx | 14 +- .../dev/qiskit.circuit.library.CU3Gate.mdx | 8 + .../dev/qiskit.circuit.library.CUGate.mdx | 8 + .../dev/qiskit.circuit.library.CXGate.mdx | 8 + .../dev/qiskit.circuit.library.CYGate.mdx | 8 + .../dev/qiskit.circuit.library.CZGate.mdx | 8 + .../dev/qiskit.circuit.library.DCXGate.mdx | 8 + .../dev/qiskit.circuit.library.Diagonal.mdx | 4 + .../qiskit.circuit.library.DiagonalGate.mdx | 8 + .../qiskit.circuit.library.DraperQFTAdder.mdx | 4 + .../dev/qiskit.circuit.library.ECRGate.mdx | 8 + .../qiskit.circuit.library.EfficientSU2.mdx | 4 + ....circuit.library.EvolvedOperatorAnsatz.mdx | 4 + ...qiskit.circuit.library.ExactReciprocal.mdx | 4 + ...t.circuit.library.ExcitationPreserving.mdx | 4 + ...qiskit.circuit.library.FourierChecking.mdx | 4 + ...rcuit.library.FunctionalPauliRotations.mdx | 4 + .../qiskit/dev/qiskit.circuit.library.GMS.mdx | 4 + .../qiskit/dev/qiskit.circuit.library.GR.mdx | 4 + .../qiskit/dev/qiskit.circuit.library.GRX.mdx | 4 + .../qiskit/dev/qiskit.circuit.library.GRY.mdx | 4 + .../qiskit/dev/qiskit.circuit.library.GRZ.mdx | 4 + ...qiskit.circuit.library.GlobalPhaseGate.mdx | 8 + .../dev/qiskit.circuit.library.GraphState.mdx | 4 + .../qiskit.circuit.library.GroverOperator.mdx | 4 + .../dev/qiskit.circuit.library.HGate.mdx | 8 + ...ircuit.library.HRSCumulativeMultiplier.mdx | 4 + ...qiskit.circuit.library.HamiltonianGate.mdx | 8 + ...t.circuit.library.HiddenLinearFunction.mdx | 4 + .../dev/qiskit.circuit.library.IGate.mdx | 8 + .../qiskit/dev/qiskit.circuit.library.IQP.mdx | 12 +- .../dev/qiskit.circuit.library.Initialize.mdx | 8 + .../qiskit.circuit.library.InnerProduct.mdx | 12 +- ...iskit.circuit.library.InnerProductGate.mdx | 164 ++++ ...skit.circuit.library.IntegerComparator.mdx | 6 +- .../dev/qiskit.circuit.library.Isometry.mdx | 8 + ...ircuit.library.LinearAmplitudeFunction.mdx | 6 +- .../qiskit.circuit.library.LinearFunction.mdx | 8 + ...t.circuit.library.LinearPauliRotations.mdx | 6 +- .../dev/qiskit.circuit.library.MCMT.mdx | 6 +- .../dev/qiskit.circuit.library.MCMTGate.mdx | 8 + .../dev/qiskit.circuit.library.MCMTVChain.mdx | 6 +- .../qiskit.circuit.library.MCPhaseGate.mdx | 8 + .../dev/qiskit.circuit.library.MCXGate.mdx | 8 + .../qiskit.circuit.library.MCXGrayCode.mdx | 8 + .../qiskit.circuit.library.MCXRecursive.mdx | 8 + .../dev/qiskit.circuit.library.MCXVChain.mdx | 8 + .../dev/qiskit.circuit.library.MSGate.mdx | 8 + .../dev/qiskit.circuit.library.NLocal.mdx | 6 +- .../qiskit/dev/qiskit.circuit.library.OR.mdx | 12 +- .../dev/qiskit.circuit.library.OrGate.mdx | 164 ++++ ...kit.circuit.library.PauliEvolutionGate.mdx | 8 + ...qiskit.circuit.library.PauliFeatureMap.mdx | 6 +- .../dev/qiskit.circuit.library.PauliGate.mdx | 8 + .../qiskit.circuit.library.PauliTwoDesign.mdx | 6 +- .../qiskit.circuit.library.Permutation.mdx | 6 +- ...qiskit.circuit.library.PermutationGate.mdx | 8 + ...qiskit.circuit.library.PhaseEstimation.mdx | 6 +- .../dev/qiskit.circuit.library.PhaseGate.mdx | 22 +- .../qiskit.circuit.library.PhaseOracle.mdx | 6 +- ...kit.circuit.library.PiecewiseChebyshev.mdx | 6 +- ....library.PiecewiseLinearPauliRotations.mdx | 6 +- ...rary.PiecewisePolynomialPauliRotations.mdx | 6 +- ...rcuit.library.PolynomialPauliRotations.mdx | 6 +- .../dev/qiskit.circuit.library.QAOAAnsatz.mdx | 6 +- .../qiskit/dev/qiskit.circuit.library.QFT.mdx | 6 +- .../dev/qiskit.circuit.library.QFTGate.mdx | 8 + .../qiskit.circuit.library.QuadraticForm.mdx | 6 +- .../qiskit.circuit.library.QuantumVolume.mdx | 6 +- .../dev/qiskit.circuit.library.RC3XGate.mdx | 8 + .../dev/qiskit.circuit.library.RCCXGate.mdx | 8 + ...qiskit.circuit.library.RGQFTMultiplier.mdx | 6 +- .../dev/qiskit.circuit.library.RGate.mdx | 8 + .../dev/qiskit.circuit.library.RVGate.mdx | 8 + .../dev/qiskit.circuit.library.RXGate.mdx | 8 + .../dev/qiskit.circuit.library.RXXGate.mdx | 8 + .../dev/qiskit.circuit.library.RYGate.mdx | 8 + .../dev/qiskit.circuit.library.RYYGate.mdx | 8 + .../dev/qiskit.circuit.library.RZGate.mdx | 8 + .../dev/qiskit.circuit.library.RZXGate.mdx | 8 + .../dev/qiskit.circuit.library.RZZGate.mdx | 8 + .../qiskit.circuit.library.RealAmplitudes.mdx | 6 +- .../dev/qiskit.circuit.library.SGate.mdx | 8 + .../dev/qiskit.circuit.library.SXGate.mdx | 8 + .../dev/qiskit.circuit.library.SXdgGate.mdx | 8 + .../dev/qiskit.circuit.library.SdgGate.mdx | 8 + ...iskit.circuit.library.StatePreparation.mdx | 8 + .../dev/qiskit.circuit.library.SwapGate.mdx | 8 + .../dev/qiskit.circuit.library.TGate.mdx | 8 + .../dev/qiskit.circuit.library.TdgGate.mdx | 8 + .../dev/qiskit.circuit.library.TwoLocal.mdx | 6 +- .../dev/qiskit.circuit.library.U1Gate.mdx | 24 +- .../dev/qiskit.circuit.library.U2Gate.mdx | 8 + .../dev/qiskit.circuit.library.U3Gate.mdx | 8 + .../dev/qiskit.circuit.library.UCGate.mdx | 8 + .../qiskit.circuit.library.UCPauliRotGate.mdx | 8 + .../dev/qiskit.circuit.library.UCRXGate.mdx | 8 + .../dev/qiskit.circuit.library.UCRYGate.mdx | 8 + .../dev/qiskit.circuit.library.UCRZGate.mdx | 8 + .../dev/qiskit.circuit.library.UGate.mdx | 8 + .../qiskit.circuit.library.UnitaryGate.mdx | 8 + .../qiskit.circuit.library.UnitaryOverlap.mdx | 4 + ...it.circuit.library.VBERippleCarryAdder.mdx | 4 + .../qiskit.circuit.library.WeightedAdder.mdx | 4 + .../dev/qiskit.circuit.library.XGate.mdx | 8 + .../qiskit/dev/qiskit.circuit.library.XOR.mdx | 10 +- .../qiskit.circuit.library.XXMinusYYGate.mdx | 8 + .../qiskit.circuit.library.XXPlusYYGate.mdx | 8 + .../dev/qiskit.circuit.library.YGate.mdx | 8 + .../qiskit.circuit.library.ZFeatureMap.mdx | 4 + .../dev/qiskit.circuit.library.ZGate.mdx | 8 + .../qiskit.circuit.library.ZZFeatureMap.mdx | 4 + .../dev/qiskit.circuit.library.iSwapGate.mdx | 8 + .../dev/qiskit.dagcircuit.DAGCircuit.mdx | 4 + .../dev/qiskit.dagcircuit.DAGDependency.mdx | 50 +- .../qiskit/dev/qiskit.providers.Backend.mdx | 2 +- .../qiskit/dev/qiskit.providers.BackendV1.mdx | 18 +- .../qiskit/dev/qiskit.providers.BackendV2.mdx | 38 +- .../qiskit.providers.BackendV2Converter.mdx | 98 +-- .../dev/qiskit.providers.QubitProperties.mdx | 2 +- ...roviders.basic_provider.BasicSimulator.mdx | 44 +- .../qiskit.providers.convert_to_target.mdx | 10 +- ...roviders.fake_provider.Fake127QPulseV1.mdx | 12 +- .../qiskit.providers.fake_provider.Fake1Q.mdx | 10 +- ...skit.providers.fake_provider.Fake20QV1.mdx | 10 +- ...providers.fake_provider.Fake27QPulseV1.mdx | 12 +- ...iskit.providers.fake_provider.Fake5QV1.mdx | 10 +- ....providers.fake_provider.Fake7QPulseV1.mdx | 12 +- ...roviders.fake_provider.FakeOpenPulse2Q.mdx | 10 +- ...roviders.fake_provider.FakeOpenPulse3Q.mdx | 10 +- ...oviders.fake_provider.GenericBackendV2.mdx | 110 +-- .../dev/qiskit.providers.models.Command.mdx | 6 +- .../qiskit.providers.models.PulseDefaults.mdx | 10 +- .../qiskit.pulse.InstructionScheduleMap.mdx | 26 +- docs/api/qiskit/dev/qiskit.pulse.Schedule.mdx | 34 +- .../qiskit/dev/qiskit.pulse.ScheduleBlock.mdx | 32 +- .../qiskit.pulse.channels.AcquireChannel.mdx | 8 +- .../qiskit.pulse.channels.ControlChannel.mdx | 8 +- .../qiskit.pulse.channels.DriveChannel.mdx | 8 +- .../qiskit.pulse.channels.MeasureChannel.mdx | 8 +- .../dev/qiskit.pulse.channels.MemorySlot.mdx | 8 +- .../qiskit.pulse.channels.RegisterSlot.mdx | 8 +- .../qiskit.pulse.channels.SnapshotChannel.mdx | 4 +- .../dev/qiskit.pulse.instructions.Acquire.mdx | 20 +- .../dev/qiskit.pulse.instructions.Delay.mdx | 20 +- .../dev/qiskit.pulse.instructions.Play.mdx | 20 +- .../qiskit.pulse.instructions.Reference.mdx | 20 +- ...kit.pulse.instructions.RelativeBarrier.mdx | 20 +- ...qiskit.pulse.instructions.SetFrequency.mdx | 20 +- .../qiskit.pulse.instructions.SetPhase.mdx | 20 +- ...skit.pulse.instructions.ShiftFrequency.mdx | 20 +- .../qiskit.pulse.instructions.ShiftPhase.mdx | 20 +- .../qiskit.pulse.instructions.Snapshot.mdx | 20 +- ...qiskit.pulse.instructions.TimeBlockade.mdx | 20 +- .../dev/qiskit.pulse.library.Constant.mdx | 16 +- .../qiskit/dev/qiskit.pulse.library.Cos.mdx | 6 +- .../qiskit/dev/qiskit.pulse.library.Drag.mdx | 18 +- .../dev/qiskit.pulse.library.Gaussian.mdx | 17 +- .../qiskit.pulse.library.GaussianDeriv.mdx | 6 +- .../qiskit.pulse.library.GaussianSquare.mdx | 23 +- ...iskit.pulse.library.GaussianSquareDrag.mdx | 6 +- .../dev/qiskit.pulse.library.Sawtooth.mdx | 6 +- .../qiskit/dev/qiskit.pulse.library.Sech.mdx | 6 +- .../dev/qiskit.pulse.library.SechDeriv.mdx | 6 +- .../qiskit/dev/qiskit.pulse.library.Sin.mdx | 6 +- .../dev/qiskit.pulse.library.Square.mdx | 6 +- .../qiskit.pulse.library.SymbolicPulse.mdx | 14 +- .../dev/qiskit.pulse.library.Triangle.mdx | 6 +- .../dev/qiskit.pulse.library.Waveform.mdx | 10 +- ...kit.pulse.library.gaussian_square_echo.mdx | 6 +- .../dev/qiskit.quantum_info.Operator.mdx | 50 +- .../qiskit/dev/qiskit.quantum_info.Pauli.mdx | 2 +- .../dev/qiskit.quantum_info.PauliList.mdx | 2 +- .../qiskit.quantum_info.SparseObservable.mdx | 762 ++++++++++++++++++ .../qiskit.result.BaseReadoutMitigator.mdx | 2 +- ...skit.result.CorrelatedReadoutMitigator.mdx | 18 +- .../qiskit.result.LocalReadoutMitigator.mdx | 18 +- ...nthesis.unitary.aqc.ApproximateCircuit.mdx | 4 + ....synthesis.unitary.aqc.CNOTUnitCircuit.mdx | 4 + ...iskit.transpiler.InstructionProperties.mdx | 12 +- .../qiskit/dev/qiskit.transpiler.Target.mdx | 56 +- ...skit.transpiler.passes.BasisTranslator.mdx | 4 +- ...spiler.passes.ConvertConditionsToIfOps.mdx | 8 +- ....transpiler.passes.DynamicalDecoupling.mdx | 4 +- ...spiler.passes.EchoRZXWeylDecomposition.mdx | 8 +- ...t.transpiler.passes.HighLevelSynthesis.mdx | 4 +- ...anspiler.passes.PadDynamicalDecoupling.mdx | 2 +- .../qiskit.transpiler.passes.PulseGates.mdx | 10 +- ...transpiler.passes.RXCalibrationBuilder.mdx | 10 +- ...ranspiler.passes.RZXCalibrationBuilder.mdx | 12 +- ...ler.passes.RZXCalibrationBuilderNoEcho.mdx | 12 +- ...spiler.passes.RemoveIdentityEquivalent.mdx | 122 +++ ...t.transpiler.passes.TimeUnitConversion.mdx | 4 +- ...kit.transpiler.passes.UnitarySynthesis.mdx | 4 +- ...t.transpiler.passes.ValidatePulseGates.mdx | 8 +- ...tary_synthesis.DefaultUnitarySynthesis.mdx | 4 +- .../dev/qiskit.visualization.dag_drawer.mdx | 2 +- docs/api/qiskit/dev/qpy.mdx | 10 +- docs/api/qiskit/dev/quantum_info.mdx | 21 +- docs/api/qiskit/dev/result.mdx | 10 +- docs/api/qiskit/dev/scheduler.mdx | 24 +- docs/api/qiskit/dev/transpiler_passes.mdx | 1 + docs/api/qiskit/dev/transpiler_preset.mdx | 42 +- public/api/qiskit/dev/objects.inv | Bin 73783 -> 74978 bytes .../dev/fake_provider-1_02.png | Bin 11721 -> 11771 bytes public/images/api/qiskit/dev/circuit-2.png | Bin 7538 -> 8941 bytes .../api/qiskit/dev/circuit_library-2.png | Bin 0 -> 9282 bytes .../api/qiskit/dev/circuit_library-3.png | Bin 0 -> 15203 bytes .../api/qiskit/dev/circuit_library-4.png | Bin 0 -> 8323 bytes .../dev/providers_fake_provider-1_01.png | Bin 22304 -> 22603 bytes .../dev/providers_fake_provider-1_02.png | Bin 10815 -> 10953 bytes public/images/api/qiskit/dev/pulse-2.png | Bin 10558 -> 10597 bytes public/images/api/qiskit/dev/pulse-3.png | Bin 59510 -> 59338 bytes public/images/api/qiskit/dev/pulse-4.png | Bin 18900 -> 19114 bytes public/images/api/qiskit/dev/pulse-5.png | Bin 16226 -> 16357 bytes public/images/api/qiskit/dev/pulse-6.png | Bin 11254 -> 11332 bytes public/images/api/qiskit/dev/pulse-7.png | Bin 13972 -> 13655 bytes .../dev/qiskit-circuit-ControlledGate-2.png | Bin 6891 -> 7028 bytes .../dev/qiskit-circuit-library-AndGate-1.png | Bin 0 -> 13136 bytes .../dev/qiskit-circuit-library-AndGate-2.png | Bin 0 -> 15197 bytes ...iskit-circuit-library-BitwiseXorGate-1.png | Bin 0 -> 14297 bytes ...kit-circuit-library-InnerProductGate-1.png | Bin 0 -> 14304 bytes .../dev/qiskit-circuit-library-OrGate-1.png | Bin 0 -> 18708 bytes .../dev/qiskit-circuit-library-OrGate-2.png | Bin 0 -> 16530 bytes ...skit-circuit-library-PermutationGate-2.png | Bin 15965 -> 15998 bytes ...skit-circuit-library-PhaseEstimation-1.png | Bin 12161 -> 12170 bytes ...it-visualization-plot_circuit_layout-1.png | Bin 10166 -> 10346 bytes .../qiskit-visualization-plot_error_map-1.png | Bin 49399 -> 49525 bytes ...qiskit-visualization-timeline_drawer-1.png | Bin 16040 -> 15297 bytes ...qiskit-visualization-timeline_drawer-2.png | Bin 8323 -> 7929 bytes ...qiskit-visualization-timeline_drawer-3.png | Bin 26706 -> 26319 bytes .../images/api/qiskit/dev/release_notes-1.png | Bin 6507 -> 2801 bytes .../images/api/qiskit/dev/release_notes-2.png | Bin 13722 -> 1454 bytes .../images/api/qiskit/dev/release_notes-3.png | Bin 11731 -> 4971 bytes .../images/api/qiskit/dev/release_notes-4.png | Bin 8695 -> 13722 bytes .../images/api/qiskit/dev/release_notes-5.png | Bin 7530 -> 11731 bytes .../images/api/qiskit/dev/release_notes-6.png | Bin 7069 -> 8695 bytes .../images/api/qiskit/dev/release_notes-7.png | Bin 0 -> 7530 bytes .../images/api/qiskit/dev/release_notes-8.png | Bin 0 -> 7069 bytes .../images/api/qiskit/dev/transpiler-16.png | Bin 24838 -> 24671 bytes .../images/api/qiskit/dev/transpiler-17.png | Bin 18840 -> 19543 bytes public/images/api/qiskit/dev/transpiler-5.png | Bin 19724 -> 19726 bytes scripts/config/api-html-artifacts.json | 4 +- .../config/historical-pages-to-latest.json | 6 + 286 files changed, 3989 insertions(+), 986 deletions(-) create mode 100644 docs/api/qiskit/dev/qiskit.circuit.library.AndGate.mdx create mode 100644 docs/api/qiskit/dev/qiskit.circuit.library.BitwiseXorGate.mdx create mode 100644 docs/api/qiskit/dev/qiskit.circuit.library.InnerProductGate.mdx create mode 100644 docs/api/qiskit/dev/qiskit.circuit.library.OrGate.mdx create mode 100644 docs/api/qiskit/dev/qiskit.quantum_info.SparseObservable.mdx create mode 100644 docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveIdentityEquivalent.mdx create mode 100644 public/images/api/qiskit/dev/circuit_library-2.png create mode 100644 public/images/api/qiskit/dev/circuit_library-3.png create mode 100644 public/images/api/qiskit/dev/circuit_library-4.png create mode 100644 public/images/api/qiskit/dev/qiskit-circuit-library-AndGate-1.png create mode 100644 public/images/api/qiskit/dev/qiskit-circuit-library-AndGate-2.png create mode 100644 public/images/api/qiskit/dev/qiskit-circuit-library-BitwiseXorGate-1.png create mode 100644 public/images/api/qiskit/dev/qiskit-circuit-library-InnerProductGate-1.png create mode 100644 public/images/api/qiskit/dev/qiskit-circuit-library-OrGate-1.png create mode 100644 public/images/api/qiskit/dev/qiskit-circuit-library-OrGate-2.png create mode 100644 public/images/api/qiskit/dev/release_notes-7.png create mode 100644 public/images/api/qiskit/dev/release_notes-8.png diff --git a/docs/api/qiskit/dev/_toc.json b/docs/api/qiskit/dev/_toc.json index c36b11a4dd6..3c7b8a968b4 100644 --- a/docs/api/qiskit/dev/_toc.json +++ b/docs/api/qiskit/dev/_toc.json @@ -137,6 +137,14 @@ "title": "AND", "url": "/api/qiskit/dev/qiskit.circuit.library.AND" }, + { + "title": "AndGate", + "url": "/api/qiskit/dev/qiskit.circuit.library.AndGate" + }, + { + "title": "BitwiseXorGate", + "url": "/api/qiskit/dev/qiskit.circuit.library.BitwiseXorGate" + }, { "title": "C3SXGate", "url": "/api/qiskit/dev/qiskit.circuit.library.C3SXGate" @@ -325,6 +333,10 @@ "title": "InnerProduct", "url": "/api/qiskit/dev/qiskit.circuit.library.InnerProduct" }, + { + "title": "InnerProductGate", + "url": "/api/qiskit/dev/qiskit.circuit.library.InnerProductGate" + }, { "title": "IntegerComparator", "url": "/api/qiskit/dev/qiskit.circuit.library.IntegerComparator" @@ -397,6 +409,10 @@ "title": "OR", "url": "/api/qiskit/dev/qiskit.circuit.library.OR" }, + { + "title": "OrGate", + "url": "/api/qiskit/dev/qiskit.circuit.library.OrGate" + }, { "title": "PauliEvolutionGate", "url": "/api/qiskit/dev/qiskit.circuit.library.PauliEvolutionGate" @@ -712,6 +728,10 @@ "title": "ScalarOp", "url": "/api/qiskit/dev/qiskit.quantum_info.ScalarOp" }, + { + "title": "SparseObservable", + "url": "/api/qiskit/dev/qiskit.quantum_info.SparseObservable" + }, { "title": "SparsePauliOp", "url": "/api/qiskit/dev/qiskit.quantum_info.SparsePauliOp" @@ -1345,6 +1365,10 @@ "title": "RemoveFinalReset", "url": "/api/qiskit/dev/qiskit.transpiler.passes.RemoveFinalReset" }, + { + "title": "RemoveIdentityEquivalent", + "url": "/api/qiskit/dev/qiskit.transpiler.passes.RemoveIdentityEquivalent" + }, { "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 b0497f22cb3..71196f719ef 100644 --- a/docs/api/qiskit/dev/assembler.mdx +++ b/docs/api/qiskit/dev/assembler.mdx @@ -65,9 +65,13 @@ python_api_name: qiskit.assembler ### assemble\_schedules - + Assembles a list of schedules into a qobj that can be run on the backend. + + The function `qiskit.assembler.assemble_schedules.assemble_schedules()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.assembler.assemble_schedules.assemble_schedules()` will have no alternative in Qiskit. + + **Parameters** * **schedules** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock") *|*[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule") *|*[*Instruction*](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction") *|*[*Tuple*](https://docs.python.org/3/library/typing.html#typing.Tuple "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*,* [*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule") *|*[*Instruction*](pulse#qiskit.pulse.instructions.Instruction "qiskit.pulse.instructions.instruction.Instruction")*]]*) – Schedules to assemble. diff --git a/docs/api/qiskit/dev/circuit.mdx b/docs/api/qiskit/dev/circuit.mdx index f699b2afb59..124b54a071f 100644 --- a/docs/api/qiskit/dev/circuit.mdx +++ b/docs/api/qiskit/dev/circuit.mdx @@ -485,7 +485,7 @@ Hardware can be instructed to apply a real-time idle period on a given qubit. A #### Delay - + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") Do nothing and just delay/wait/idle for a specified duration. @@ -511,7 +511,7 @@ it is forbidden for the optimizer to cancel out the two $X$ instructions. #### Barrier - + 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. @@ -537,7 +537,7 @@ qc.store(creg[0], parity) #### Store - + Bases: [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.instruction.Instruction") A manual storage of some classical value to a classical memory location. @@ -549,6 +549,14 @@ qc.store(creg[0], parity) * **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. + ##### c\_if + + + + The method `qiskit.circuit.store.Store.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + + ##### lvalue @@ -714,7 +722,7 @@ Subclasses of [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruc #### \_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. diff --git a/docs/api/qiskit/dev/circuit_library.mdx b/docs/api/qiskit/dev/circuit_library.mdx index 9525b9f9554..f9041779139 100644 --- a/docs/api/qiskit/dev/circuit_library.mdx +++ b/docs/api/qiskit/dev/circuit_library.mdx @@ -182,12 +182,31 @@ print(diagonal.num_qubits) These are [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") subclasses that implement boolean logic operations, such as the logical or of a set of qubit states. -| | | -| ------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------- | -| [`AND`](qiskit.circuit.library.AND "qiskit.circuit.library.AND")(num\_variable\_qubits\[, flags, mcx\_mode]) | A circuit implementing the logical AND operation on a number of qubits. | -| [`OR`](qiskit.circuit.library.OR "qiskit.circuit.library.OR")(num\_variable\_qubits\[, flags, mcx\_mode]) | A circuit implementing the logical OR operation on a number of qubits. | -| [`XOR`](qiskit.circuit.library.XOR "qiskit.circuit.library.XOR")(num\_qubits\[, amount, seed]) | An n\_qubit circuit for bitwise xor-ing the input with some integer `amount`. | -| [`InnerProduct`](qiskit.circuit.library.InnerProduct "qiskit.circuit.library.InnerProduct")(num\_qubits) | A 2n-qubit Boolean function that computes the inner product of two n-qubit vectors over $F_2$. | +| | | +| ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| [`AND`](qiskit.circuit.library.AND "qiskit.circuit.library.AND")(num\_variable\_qubits\[, flags, mcx\_mode]) | A circuit implementing the logical AND operation on a number of qubits. | +| [`AndGate`](qiskit.circuit.library.AndGate "qiskit.circuit.library.AndGate")(num\_variable\_qubits\[, flags]) | A gate representing the logical AND operation on a number of qubits. | +| [`OR`](qiskit.circuit.library.OR "qiskit.circuit.library.OR")(num\_variable\_qubits\[, flags, mcx\_mode]) | A circuit implementing the logical OR operation on a number of qubits. | +| [`OrGate`](qiskit.circuit.library.OrGate "qiskit.circuit.library.OrGate")(num\_variable\_qubits\[, flags]) | A gate representing the logical OR operation on a number of qubits. | +| [`XOR`](qiskit.circuit.library.XOR "qiskit.circuit.library.XOR")(num\_qubits\[, amount, seed]) | An n\_qubit circuit for bitwise xor-ing the input with some integer `amount`. | +| [`BitwiseXorGate`](qiskit.circuit.library.BitwiseXorGate "qiskit.circuit.library.BitwiseXorGate")(num\_qubits, amount) | An n-qubit gate for bitwise xor-ing the input with some integer `amount`. | +| [`InnerProduct`](qiskit.circuit.library.InnerProduct "qiskit.circuit.library.InnerProduct")(num\_qubits) | A 2n-qubit Boolean function that computes the inner product of two n-qubit vectors over $F_2$. | +| [`InnerProductGate`](qiskit.circuit.library.InnerProductGate "qiskit.circuit.library.InnerProductGate")(num\_qubits) | A 2n-qubit Boolean function that computes the inner product of two n-qubit vectors over $F_2$. | + +### random\_bitwise\_xor + + + Create a random BitwiseXorGate. + + **Parameters** + + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – the width of circuit. + * **seed** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – random seed in case a random xor is requested. + + **Return type** + + [*BitwiseXorGate*](qiskit.circuit.library.BitwiseXorGate "qiskit.circuit.library.boolean_logic.quantum_xor.BitwiseXorGate") + ## Basis Change Circuits @@ -270,6 +289,72 @@ These [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCi | [`HamiltonianGate`](qiskit.circuit.library.HamiltonianGate "qiskit.circuit.library.HamiltonianGate")(data, time\[, label]) | Class for representing evolution by a Hamiltonian operator as a gate. | | [`UnitaryOverlap`](qiskit.circuit.library.UnitaryOverlap "qiskit.circuit.library.UnitaryOverlap")(unitary1, unitary2\[, ...]) | Circuit that returns the overlap between two unitaries $U_2^{\dag} U_1$. | +### iqp + + + Instantaneous quantum polynomial time (IQP) circuit. + + The circuit consists of a column of Hadamard gates, a column of powers of T gates, a sequence of powers of CS gates (up to $\frac{n^2-n}{2}$ of them), and a final column of Hadamard gates, as introduced in \[1]. + + The circuit is parameterized by an $n \times n$ interactions matrix. The powers of each T gate are given by the diagonal elements of the interactions matrix. The powers of the CS gates are given by the upper triangle of the interactions matrix. + + **Reference Circuit:** + + ![../\_images/circuit\_library-2.png](/images/api/qiskit/dev/circuit_library-2.png) + + **Expanded Circuit:** + + > ![../\_images/circuit\_library-3.png](/images/api/qiskit/dev/circuit_library-3.png) + + **References:** + + \[1] M. J. Bremner et al. Average-case complexity versus approximate simulation of commuting quantum computations, Phys. Rev. Lett. 117, 080501 (2016). [arXiv:1504.07999](https://arxiv.org/abs/1504.07999) + + **Parameters** + + **interactions** ([*Sequence*](https://docs.python.org/3/library/collections.abc.html#collections.abc.Sequence "(in Python v3.13)")*\[*[*Sequence*](https://docs.python.org/3/library/collections.abc.html#collections.abc.Sequence "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*]]*) – The interactions as symmetric square matrix. If `None`, then the `num_qubits` argument must be set and a random IQP circuit will be generated. + + **Returns** + + An IQP circuit. + + **Return type** + + [*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") + + +### random\_iqp + + + A random instantaneous quantum polynomial time (IQP) circuit. + + See [`iqp()`](#qiskit.circuit.library.iqp "qiskit.circuit.library.iqp") for more details on the IQP circuit. + + Example: + + ```python + from qiskit.circuit.library import random_iqp + + circuit = random_iqp(3) + circuit.draw("mpl") + ``` + + ![../\_images/circuit\_library-4.png](/images/api/qiskit/dev/circuit_library-4.png) + + **Parameters** + + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – The number of qubits in the circuit. + * **seed** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| None*) – A seed for the random number generator, in case the interactions matrix is randomly generated. + + **Returns** + + An IQP circuit. + + **Return type** + + [QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") + + ## N-local circuits These `BlueprintCircuit` subclasses are used as parameterized models (a.k.a. ansatzes or variational forms) in variational algorithms. They are heavily used in near-term algorithms in e.g. Chemistry, Physics or Optimization. diff --git a/docs/api/qiskit/dev/circuit_singleton.mdx b/docs/api/qiskit/dev/circuit_singleton.mdx index 5cfe5062dce..0bcebeff629 100644 --- a/docs/api/qiskit/dev/circuit_singleton.mdx +++ b/docs/api/qiskit/dev/circuit_singleton.mdx @@ -44,7 +44,7 @@ The public classes correspond to the standard classes [`Instruction`](qiskit.cir ### SingletonInstruction - + 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`](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. @@ -54,7 +54,7 @@ The public classes correspond to the standard classes [`Instruction`](qiskit.cir ### SingletonGate - + 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. @@ -62,7 +62,7 @@ The public classes correspond to the standard classes [`Instruction`](qiskit.cir ### SingletonControlledGate - + 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. @@ -124,7 +124,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 d1def25cbd3..e7c506305d2 100644 --- a/docs/api/qiskit/dev/compiler.mdx +++ b/docs/api/qiskit/dev/compiler.mdx @@ -105,9 +105,13 @@ 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`. + + The function `qiskit.compiler.scheduler.schedule()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that `qiskit.compiler.scheduler.schedule()` will be moved as well. + + **Parameters** * **circuits** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") *|*[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit")*]*) – The quantum circuit or circuits to translate @@ -132,7 +136,7 @@ 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. @@ -149,6 +153,22 @@ python_api_name: qiskit.compiler | **timing\_constraints** | target | timing\_constraints | timing\_constraints | | **backend\_properties** | target | backend\_properties | backend\_properties | + + `qiskit.compiler.transpiler.transpile()`’s argument `inst_map` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and this argument uses a dependency on the package. + + + + `qiskit.compiler.transpiler.transpile()`’s argument `backend_properties` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The target parameter should be used instead. You can build a Target instance with defined properties with Target.from\_configuration(…, backend\_properties=…) + + + + `qiskit.compiler.transpiler.transpile()`’s argument `timing_constraints` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The target parameter should be used instead. You can build a Target instance with defined timing constraints with Target.from\_configuration(…, timing\_constraints=…) + + + + `qiskit.compiler.transpiler.transpile()`’s argument `instruction_durations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The target parameter should be used instead. You can build a Target instance with defined instruction durations with Target.from\_configuration(…, instruction\_durations=…) + + **Parameters** * **circuits** (*\_CircuitT*) – Circuit(s) to transpile @@ -157,7 +177,7 @@ python_api_name: qiskit.compiler * **basis\_gates** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")*] | None*) – List of basis gate names to unroll to (e.g: `['u1', 'u2', 'u3', 'cx']`). If `None`, do not unroll. - * **inst\_map** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.instruction_schedule_map.InstructionScheduleMap")*] | None*) – Mapping of unrolled gates to pulse schedules. If this is not provided, transpiler tries to get from the backend. If any user defined calibration is found in the map and this is used in a circuit, transpiler attaches the custom gate definition to the circuit. This enables one to flexibly override the low-level instruction implementation. This feature is available iff the backend supports the pulse gate experiment. + * **inst\_map** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.instruction_schedule_map.InstructionScheduleMap")*] | None*) – DEPRECATED. Mapping of unrolled gates to pulse schedules. If this is not provided, transpiler tries to get from the backend. If any user defined calibration is found in the map and this is used in a circuit, transpiler attaches the custom gate definition to the circuit. This enables one to flexibly override the low-level instruction implementation. This feature is available iff the backend supports the pulse gate experiment. * **coupling\_map** ([*CouplingMap*](qiskit.transpiler.CouplingMap "qiskit.transpiler.coupling.CouplingMap") *|*[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*]] | None*) – @@ -294,9 +314,13 @@ python_api_name: qiskit.compiler ### sequence - + Schedule a scheduled circuit to a pulse `Schedule`, using the backend. + + The function `qiskit.compiler.sequencer.sequence()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that `qiskit.compiler.sequencer.sequence()` will be moved as well. + + **Parameters** * **scheduled\_circuits** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") *|*[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit")*]*) – Scheduled circuit(s) to be translated diff --git a/docs/api/qiskit/dev/converters.mdx b/docs/api/qiskit/dev/converters.mdx index 20e67af4bec..ee3f4516273 100644 --- a/docs/api/qiskit/dev/converters.mdx +++ b/docs/api/qiskit/dev/converters.mdx @@ -184,7 +184,7 @@ python_api_name: qiskit.converters ### dagdependency\_to\_circuit - + Build a `QuantumCircuit` object from a `DAGDependency`. **Parameters** @@ -244,7 +244,7 @@ python_api_name: qiskit.converters ### dagdependency\_to\_dag - + Build a `DAGCircuit` object from a `DAGDependency`. **Parameters** diff --git a/docs/api/qiskit/dev/providers_fake_provider.mdx b/docs/api/qiskit/dev/providers_fake_provider.mdx index b4b28c45d58..13a581747a2 100644 --- a/docs/api/qiskit/dev/providers_fake_provider.mdx +++ b/docs/api/qiskit/dev/providers_fake_provider.mdx @@ -115,7 +115,7 @@ The V1 fake backends are based on a set of base classes: ### FakePulseBackend - + A fake pulse backend. FakeBackend initializer. diff --git a/docs/api/qiskit/dev/pulse.mdx b/docs/api/qiskit/dev/pulse.mdx index 3075b754ce6..90199c0abed 100644 --- a/docs/api/qiskit/dev/pulse.mdx +++ b/docs/api/qiskit/dev/pulse.mdx @@ -68,11 +68,15 @@ These are all instances of the same base class: ### Instruction - + The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels. Instruction initializer. + + The class `qiskit.pulse.instructions.instruction.Instruction` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **operands** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.13)")) – The argument list. @@ -157,7 +161,7 @@ All channels are children of the same abstract base class: ### Channel - + 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. @@ -166,6 +170,10 @@ All channels are children of the same abstract base class: Channel class. + + The class `qiskit.pulse.channels.Channel` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** **index** – Index of channel. @@ -754,7 +762,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: @@ -777,6 +785,10 @@ The above is just a small taste of what is possible with the builder. See the re backend.run(transpile(pulse_prog, backend)) ``` + + The function `qiskit.pulse.builder.build()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **backend** ([*Backend*](qiskit.providers.Backend "qiskit.providers.Backend")) – A Qiskit backend. If not supplied certain builder functionality will be unavailable. @@ -814,9 +826,13 @@ DriveChannel(0) #### acquire\_channel - + Return `AcquireChannel` for `qubit` on the active builder backend. + + The function `qiskit.pulse.builder.acquire_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -840,11 +856,15 @@ 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. + + The function `qiskit.pulse.builder.control_channels()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -875,9 +895,13 @@ DriveChannel(0) #### drive\_channel - + Return `DriveChannel` for `qubit` on the active builder backend. + + The function `qiskit.pulse.builder.drive_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -901,9 +925,13 @@ DriveChannel(0) #### measure\_channel - + Return `MeasureChannel` for `qubit` on the active builder backend. + + The function `qiskit.pulse.builder.measure_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -960,9 +988,13 @@ drive_sched.draw() #### acquire - + Acquire for a `duration` on a `channel` and store the result in a `register`. + + The function `qiskit.pulse.builder.acquire()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -997,7 +1029,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: @@ -1060,6 +1092,10 @@ drive_sched.draw() Requires the active builder context to have a backend set if qubits are barriered on. + + The function `qiskit.pulse.builder.barrier()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **channels\_or\_qubits** (*chans.Channel |* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – Channels or qubits to barrier. @@ -1068,13 +1104,17 @@ drive_sched.draw() #### call - + Call the subroutine within the currently active builder context with arbitrary parameters which will be assigned to the target program. If the `target` program is a [`ScheduleBlock`](qiskit.pulse.ScheduleBlock "qiskit.pulse.ScheduleBlock"), then a [`Reference`](qiskit.pulse.instructions.Reference "qiskit.pulse.instructions.Reference") instruction will be created and appended to the current context. The `target` program will be immediately assigned to the current scope as a subroutine. If the `target` program is [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule"), it will be wrapped by the `Call` instruction and appended to the current context to avoid a mixed representation of [`ScheduleBlock`](qiskit.pulse.ScheduleBlock "qiskit.pulse.ScheduleBlock") and [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule"). If the `target` program is a [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") it will be scheduled and the new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") will be added as a `Call` instruction. + + The function `qiskit.pulse.builder.call()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Examples** 1. Calling a schedule block (recommended) @@ -1237,9 +1277,13 @@ drive_sched.draw() #### delay - + Delay on a `channel` for a `duration`. + + The function `qiskit.pulse.builder.delay()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1260,9 +1304,13 @@ drive_sched.draw() #### play - + Play a `pulse` on a `channel`. + + The function `qiskit.pulse.builder.play()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1283,7 +1331,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. @@ -1300,6 +1348,10 @@ drive_sched.draw() main_prog.assign_references(subroutine_dict={("x_gate", "q0"): subroutine}) ``` + + The function `qiskit.pulse.builder.reference()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – Name of subroutine. @@ -1308,9 +1360,13 @@ drive_sched.draw() #### set\_frequency - + Set the `frequency` of a pulse `channel`. + + The function `qiskit.pulse.builder.set_frequency()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1331,9 +1387,13 @@ drive_sched.draw() #### set\_phase - + Set the `phase` of a pulse `channel`. + + The function `qiskit.pulse.builder.set_phase()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1356,9 +1416,13 @@ drive_sched.draw() #### shift\_frequency - + Shift the `frequency` of a pulse `channel`. + + The function `qiskit.pulse.builder.shift_frequency()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1379,9 +1443,13 @@ drive_sched.draw() #### shift\_phase - + Shift the `phase` of a pulse `channel`. + + The function `qiskit.pulse.builder.shift_phase()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1404,9 +1472,13 @@ drive_sched.draw() #### snapshot - + Simulator snapshot. + + The function `qiskit.pulse.builder.snapshot()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1446,13 +1518,17 @@ 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. This context is convenient to write a schedule for periodical dynamic decoupling or the Hahn echo sequence. + + The function `qiskit.pulse.builder.align_equispaced()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1492,13 +1568,17 @@ 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. This context may be convenient to write a schedule of arbitrary dynamical decoupling sequences such as Uhrig dynamical decoupling. + + The function `qiskit.pulse.builder.align_func()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1544,11 +1624,15 @@ 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. + + The function `qiskit.pulse.builder.align_left()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1579,11 +1663,15 @@ 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. + + The function `qiskit.pulse.builder.align_right()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1614,11 +1702,15 @@ 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. + + The function `qiskit.pulse.builder.align_sequential()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1649,9 +1741,13 @@ pulse_prog.draw() #### frequency\_offset - + Shift the frequency of inputs channels on entry into context and undo on exit. + + The function `qiskit.pulse.builder.frequency_offset()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1695,9 +1791,13 @@ pulse_prog.draw() #### phase\_offset - + Shift the phase of input channels on entry into context and undo on exit. + + The function `qiskit.pulse.builder.phase_offset()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1749,7 +1849,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"). @@ -1788,6 +1888,10 @@ MemorySlot(0) Requires the active builder context to have a backend set. + + The function `qiskit.pulse.builder.measure()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **qubits** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*] |* [*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – Physical qubit to measure. @@ -1804,11 +1908,15 @@ 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. + + The function `qiskit.pulse.builder.measure_all()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1837,9 +1945,13 @@ MemorySlot(0) #### delay\_qubits - + Insert delays on all the `channels.Channel`s that correspond to the input `qubits` at the same time. + + The function `qiskit.pulse.builder.delay_qubits()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1894,9 +2006,13 @@ There are 1e-06 seconds in 4500 samples. #### active\_backend - + Get the backend of the currently active builder context. + + The function `qiskit.pulse.builder.active_backend()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Returns** **The active backend in the currently active** @@ -1914,9 +2030,13 @@ There are 1e-06 seconds in 4500 samples. #### num\_qubits - + Return number of qubits in the currently active backend. + + The function `qiskit.pulse.builder.num_qubits()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1944,9 +2064,13 @@ There are 1e-06 seconds in 4500 samples. #### qubit\_channels - + Returns the set of channels associated with a qubit. + + The function `qiskit.pulse.builder.qubit_channels()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + Examples: ```python @@ -1978,9 +2102,13 @@ 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. + + The function `qiskit.pulse.builder.samples_to_seconds()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** **samples** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| np.ndarray*) – Number of samples to convert to time in seconds. @@ -1996,11 +2124,15 @@ 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. + + The function `qiskit.pulse.builder.seconds_to_samples()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** **seconds** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.13)") *| np.ndarray*) – Time in seconds to convert to samples. @@ -2024,41 +2156,61 @@ There are 1e-06 seconds in 4500 samples. ### PulseError - + Errors raised by the pulse module. Set the error message. + + + The class `qiskit.pulse.exceptions.PulseError` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + ### BackendNotSet - + Raised if the builder context does not have a backend. Set the error message. + + + The class `qiskit.pulse.exceptions.PulseError` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + ### NoActiveBuilder - + Raised if no builder context is active. Set the error message. + + + The class `qiskit.pulse.exceptions.PulseError` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + ### UnassignedDurationError - + Raised if instruction duration is unassigned. Set the error message. + + + The class `qiskit.pulse.exceptions.PulseError` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + ### UnassignedReferenceError - + Raised if subroutine is unassigned. Set the error message. + + + The class `qiskit.pulse.exceptions.PulseError` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + diff --git a/docs/api/qiskit/dev/qasm3.mdx b/docs/api/qiskit/dev/qasm3.mdx index 67b7a26891f..dc90ccc4aa1 100644 --- a/docs/api/qiskit/dev/qasm3.mdx +++ b/docs/api/qiskit/dev/qasm3.mdx @@ -57,7 +57,7 @@ Both of these exporter functions are single-use wrappers around the main [`Expor ### Exporter - + QASM3 exporter main class. **Parameters** @@ -96,13 +96,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. diff --git a/docs/api/qiskit/dev/qiskit.circuit.BreakLoopOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.BreakLoopOp.mdx index 46daa11ec1d..dbe4f97d28c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.BreakLoopOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.BreakLoopOp.mdx @@ -46,12 +46,20 @@ python_api_name: qiskit.circuit.BreakLoopOp The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -128,13 +136,13 @@ python_api_name: qiskit.circuit.BreakLoopOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -144,7 +152,7 @@ python_api_name: qiskit.circuit.BreakLoopOp ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -163,17 +171,21 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### copy - + Copy of the instruction. **Parameters** @@ -191,7 +203,7 @@ 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. @@ -215,13 +227,13 @@ python_api_name: qiskit.circuit.BreakLoopOp ### is\_parameterized - + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - + 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. @@ -245,7 +257,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. @@ -263,7 +275,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** @@ -289,7 +301,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.ContinueLoopOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.ContinueLoopOp.mdx index 29de201f7b2..52cdf8bf4ad 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ContinueLoopOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ContinueLoopOp.mdx @@ -46,12 +46,20 @@ python_api_name: qiskit.circuit.ContinueLoopOp The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -128,13 +136,13 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -144,7 +152,7 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -163,17 +171,21 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### copy - + Copy of the instruction. **Parameters** @@ -191,7 +203,7 @@ 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. @@ -215,13 +227,13 @@ python_api_name: qiskit.circuit.ContinueLoopOp ### is\_parameterized - + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - + 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. @@ -245,7 +257,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. @@ -263,7 +275,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** @@ -289,7 +301,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 ea3ed488584..adb8f0af389 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ControlFlowOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ControlFlowOp.mdx @@ -65,12 +65,20 @@ python_api_name: qiskit.circuit.ControlFlowOp The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -147,13 +155,13 @@ python_api_name: qiskit.circuit.ControlFlowOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -163,7 +171,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -182,17 +190,21 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### copy - + Copy of the instruction. **Parameters** @@ -210,7 +222,7 @@ 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. @@ -234,7 +246,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### is\_parameterized - + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). @@ -250,7 +262,7 @@ python_api_name: qiskit.circuit.ControlFlowOp ### repeat - + 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. @@ -309,7 +321,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. @@ -327,7 +339,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** @@ -353,7 +365,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 c091d78d748..bd92c51f96b 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ControlledGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ControlledGate.mdx @@ -93,12 +93,20 @@ python_api_name: qiskit.circuit.ControlledGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state @@ -211,13 +219,13 @@ python_api_name: qiskit.circuit.ControlledGate ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -280,12 +288,16 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### control @@ -313,7 +325,7 @@ python_api_name: qiskit.circuit.ControlledGate ### copy - + Copy of the instruction. **Parameters** @@ -341,7 +353,7 @@ python_api_name: qiskit.circuit.ControlledGate ### is\_parameterized - + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). @@ -368,7 +380,7 @@ python_api_name: qiskit.circuit.ControlledGate ### repeat - + 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. @@ -392,7 +404,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. @@ -410,7 +422,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** diff --git a/docs/api/qiskit/dev/qiskit.circuit.ForLoopOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.ForLoopOp.mdx index 5993f0a1635..c1f551b9c9f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.ForLoopOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.ForLoopOp.mdx @@ -51,12 +51,20 @@ python_api_name: qiskit.circuit.ForLoopOp The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -131,13 +139,13 @@ python_api_name: qiskit.circuit.ForLoopOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -147,7 +155,7 @@ python_api_name: qiskit.circuit.ForLoopOp ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -166,17 +174,21 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### copy - + Copy of the instruction. **Parameters** @@ -194,7 +206,7 @@ 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. @@ -218,7 +230,7 @@ python_api_name: qiskit.circuit.ForLoopOp ### is\_parameterized - + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). @@ -234,7 +246,7 @@ python_api_name: qiskit.circuit.ForLoopOp ### repeat - + 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. @@ -289,7 +301,7 @@ python_api_name: qiskit.circuit.ForLoopOp ### 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. @@ -307,7 +319,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** @@ -333,7 +345,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 9201826c1aa..ceefb11ac31 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.Gate.mdx @@ -49,12 +49,20 @@ python_api_name: qiskit.circuit.Gate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -131,13 +139,13 @@ python_api_name: qiskit.circuit.Gate ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -200,12 +208,16 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### control @@ -233,7 +245,7 @@ python_api_name: qiskit.circuit.Gate ### copy - + Copy of the instruction. **Parameters** @@ -251,7 +263,7 @@ 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. @@ -275,7 +287,7 @@ python_api_name: qiskit.circuit.Gate ### is\_parameterized - + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). @@ -302,7 +314,7 @@ python_api_name: qiskit.circuit.Gate ### repeat - + 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. @@ -326,7 +338,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. @@ -344,7 +356,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** diff --git a/docs/api/qiskit/dev/qiskit.circuit.IfElseOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.IfElseOp.mdx index 5cd5e69a46a..89c69ab9d5c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.IfElseOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.IfElseOp.mdx @@ -8,7 +8,7 @@ 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. @@ -53,14 +53,16 @@ python_api_name: qiskit.circuit.IfElseOp ### condition - - The classical condition on the instruction. - + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -135,13 +137,13 @@ python_api_name: qiskit.circuit.IfElseOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -151,7 +153,7 @@ python_api_name: qiskit.circuit.IfElseOp ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -170,17 +172,21 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### copy - + Copy of the instruction. **Parameters** @@ -198,7 +204,7 @@ 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. @@ -222,7 +228,7 @@ python_api_name: qiskit.circuit.IfElseOp ### is\_parameterized - + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). @@ -238,7 +244,7 @@ python_api_name: qiskit.circuit.IfElseOp ### repeat - + 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. @@ -262,7 +268,7 @@ python_api_name: qiskit.circuit.IfElseOp ### replace\_blocks - + Replace blocks and return new instruction. **Parameters** @@ -280,7 +286,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. @@ -298,7 +304,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** @@ -324,7 +330,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 91024014594..878e376d475 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. @@ -57,12 +57,20 @@ python_api_name: qiskit.circuit.Instruction The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -139,13 +147,13 @@ python_api_name: qiskit.circuit.Instruction ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -155,7 +163,7 @@ python_api_name: qiskit.circuit.Instruction ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -174,17 +182,21 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### copy - + Copy of the instruction. **Parameters** @@ -202,7 +214,7 @@ 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. @@ -226,13 +238,13 @@ python_api_name: qiskit.circuit.Instruction ### is\_parameterized - + Return whether the [`Instruction`](#qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). ### repeat - + 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. @@ -256,7 +268,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. @@ -274,7 +286,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** @@ -300,7 +312,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 6bd0dd5a584..cc7d04bd57f 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.13)") Instruction collection, and their contexts. @@ -51,13 +51,13 @@ 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`](circuit#qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") or [`Clbit`](circuit#qiskit.circuit.Clbit "qiskit.circuit.Clbit") `classical` and value `val`. @@ -68,6 +68,10 @@ python_api_name: qiskit.circuit.InstructionSet 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. + + The method `qiskit.circuit.instructionset.InstructionSet.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + **Parameters** * **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.13)")) – 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. @@ -88,7 +92,7 @@ python_api_name: qiskit.circuit.InstructionSet ### inverse - + Invert all instructions. diff --git a/docs/api/qiskit/dev/qiskit.circuit.QuantumCircuit.mdx b/docs/api/qiskit/dev/qiskit.circuit.QuantumCircuit.mdx index 155d1b958bd..3b3228f39d3 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.QuantumCircuit.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.QuantumCircuit.mdx @@ -12,7 +12,7 @@ python_api_name: qiskit.circuit.QuantumCircuit # [`QuantumCircuit`](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") class - + Core Qiskit representation of a quantum circuit. @@ -196,6 +196,10 @@ python_api_name: qiskit.circuit.QuantumCircuit Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + If you have transpiled your circuit, so you have a physical circuit, you can inspect the [`layout`](#qiskit.circuit.QuantumCircuit.layout "qiskit.circuit.QuantumCircuit.layout") attribute for information stored by the transpiler about how the virtual qubits of the source circuit map to the hardware qubits of your physical circuit, both at the start and end of the circuit. @@ -321,7 +325,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### \_\_init\_\_ - + Default constructor of [`QuantumCircuit`](#qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit"). **Parameters** @@ -373,7 +377,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### copy - + Copy the circuit. **Parameters** @@ -393,7 +397,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### copy\_empty\_like - + Return a copy of self with the same structure but empty. That structure includes: @@ -440,7 +444,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### from\_instructions - + Construct a circuit from an iterable of [`CircuitInstruction`](qiskit.circuit.CircuitInstruction "qiskit.circuit.CircuitInstruction")s. **Parameters** @@ -465,7 +469,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** @@ -487,7 +491,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** @@ -528,7 +532,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### add\_bits - + Add Bits to the circuit. @@ -536,7 +540,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### add\_register - + Add registers. @@ -544,7 +548,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. @@ -614,7 +618,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### add\_input - + Register a variable as an input to the circuit. **Parameters** @@ -635,7 +639,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### 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. @@ -653,7 +657,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. @@ -675,7 +679,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### find\_bit - + Find locations in the circuit which can be used to reference a given [`Bit`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit"). In particular, this function can find the integer index of a qubit, which corresponds to its hardware index for a transpiled circuit. @@ -734,7 +738,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### has\_register - + Test if this circuit has the register r. **Parameters** @@ -764,7 +768,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. @@ -840,7 +844,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### has\_parameter - + Check whether a parameter object exists in this circuit. **Parameters** @@ -868,7 +872,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### get\_parameter - + Retrieve a compile-time parameter that is accessible in this circuit scope by name. **Parameters** @@ -940,7 +944,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### get\_var - + Retrieve a variable that is accessible in this circuit scope by name. **Parameters** @@ -990,7 +994,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### has\_var - + Check whether a variable is accessible in this scope. **Parameters** @@ -1020,7 +1024,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### iter\_vars - + 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"). @@ -1032,7 +1036,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### iter\_input\_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** @@ -1042,7 +1046,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### iter\_captured\_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** @@ -1052,7 +1056,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### iter\_declared\_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** @@ -1095,7 +1099,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### 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`](circuit#qiskit.circuit.Bit "qiskit.circuit.Bit") specifiers (such as integer indices) will be resolved into the relevant instances. @@ -1126,7 +1130,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### \_append - + Append an instruction to the end of the circuit, modifying the circuit in place. @@ -1168,7 +1172,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### compose - + Apply the instructions from one circuit onto specified qubits and/or clbits on another. @@ -1250,7 +1254,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](/guides/construct-circuits) for more information. @@ -1394,7 +1398,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### barrier - + Apply `Barrier`. If `qargs` is empty, applies to all qubits in the circuit. **Parameters** @@ -1413,7 +1417,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. @@ -1436,7 +1440,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. @@ -1460,7 +1464,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. @@ -1483,7 +1487,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. @@ -1507,7 +1511,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. @@ -1531,7 +1535,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. @@ -1555,7 +1559,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. @@ -1579,7 +1583,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. @@ -1602,7 +1606,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. @@ -1625,7 +1629,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. @@ -1649,7 +1653,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. @@ -1672,7 +1676,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. @@ -1699,7 +1703,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. @@ -1722,7 +1726,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. @@ -1745,7 +1749,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. @@ -1768,7 +1772,7 @@ 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. @@ -1789,7 +1793,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### delay - + 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** @@ -1813,7 +1817,7 @@ 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. @@ -1834,7 +1838,7 @@ 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. @@ -1854,7 +1858,7 @@ 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. @@ -1874,7 +1878,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. @@ -1963,7 +1967,7 @@ 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. @@ -1984,7 +1988,7 @@ 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. @@ -2063,7 +2067,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: @@ -2099,7 +2103,7 @@ 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. @@ -2175,7 +2179,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. @@ -2196,7 +2200,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. @@ -2217,7 +2221,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### pauli - + Apply [`PauliGate`](qiskit.circuit.library.PauliGate "qiskit.circuit.library.PauliGate"). **Parameters** @@ -2236,7 +2240,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. @@ -2331,7 +2335,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. @@ -2353,7 +2357,7 @@ 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. @@ -2376,7 +2380,7 @@ 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. @@ -2398,7 +2402,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### reset - + Reset the quantum bit(s) to their default state. **Parameters** @@ -2416,7 +2420,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. @@ -2441,7 +2445,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. @@ -2463,7 +2467,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. @@ -2485,7 +2489,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. @@ -2507,7 +2511,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. @@ -2529,7 +2533,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. @@ -2550,7 +2554,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. @@ -2572,7 +2576,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. @@ -2594,7 +2598,7 @@ 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. @@ -2614,7 +2618,7 @@ 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. @@ -2634,7 +2638,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### store - + 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. @@ -2661,7 +2665,7 @@ 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. @@ -2682,7 +2686,7 @@ 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. @@ -2702,7 +2706,7 @@ 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. @@ -2722,7 +2726,7 @@ 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. @@ -2742,7 +2746,7 @@ 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. @@ -2762,7 +2766,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. @@ -2785,7 +2789,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### unitary - + Apply unitary gate specified by `obj` to `qubits`. **Parameters** @@ -2819,7 +2823,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. @@ -2840,7 +2844,7 @@ 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. @@ -2860,7 +2864,7 @@ 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. @@ -2904,7 +2908,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### break\_loop - + Apply [`BreakLoopOp`](qiskit.circuit.BreakLoopOp "qiskit.circuit.BreakLoopOp"). @@ -2926,7 +2930,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### continue\_loop - + Apply [`ContinueLoopOp`](qiskit.circuit.ContinueLoopOp "qiskit.circuit.ContinueLoopOp"). @@ -2948,7 +2952,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. @@ -2999,7 +3003,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### if\_else - + Apply [`IfElseOp`](qiskit.circuit.IfElseOp "qiskit.circuit.IfElseOp"). @@ -3043,7 +3047,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. @@ -3097,7 +3101,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. @@ -3144,7 +3148,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. @@ -3189,7 +3193,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### to\_instruction - + Create an [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") out of this circuit. @@ -3216,7 +3220,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### to\_gate - + Create a [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") out of this circuit. The circuit must act only qubits and contain only unitary operations. @@ -3245,7 +3249,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. @@ -3265,7 +3269,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### measure\_all - + Adds measurement to all qubits. 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`. @@ -3294,7 +3298,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### clear - + Clear all instructions in self. Clearing the circuits will keep the metadata and calibrations. @@ -3308,7 +3312,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.) @@ -3358,9 +3362,13 @@ python_api_name: qiskit.circuit.QuantumCircuit #### add\_calibration - + Register a low-level, custom pulse definition for the given gate. + + The method `qiskit.circuit.quantumcircuit.QuantumCircuit.add_calibration()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.add_calibration()` will have no alternative in Qiskit. + + **Parameters** * **gate** (*Union\[*[*Gate*](qiskit.circuit.Gate "qiskit.circuit.Gate")*,* [*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")*]*) – Gate information. @@ -3375,8 +3383,12 @@ 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. + + + The method `qiskit.circuit.quantumcircuit.QuantumCircuit.has_calibration_for()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.has_calibration_for()` will have no alternative in Qiskit. + ## Circuit properties @@ -3454,7 +3466,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### count\_ops - + Count each operation kind in the circuit. **Returns** @@ -3468,7 +3480,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### depth - + Return circuit depth (i.e., length of critical path). @@ -3510,7 +3522,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### get\_instructions - + Get instructions matching name. **Parameters** @@ -3528,7 +3540,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### num\_connected\_components - + How many non-entangled subcircuits can the circuit be factored to. **Parameters** @@ -3546,7 +3558,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. @@ -3558,7 +3570,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** @@ -3572,7 +3584,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** @@ -3582,7 +3594,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### size - + Returns total number of instructions in circuit. **Parameters** @@ -3600,7 +3612,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### width - + Return number of qubits plus clbits in circuit. **Returns** @@ -3618,7 +3630,7 @@ python_api_name: qiskit.circuit.QuantumCircuit #### 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** @@ -3636,7 +3648,7 @@ 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 @@ -3661,7 +3673,7 @@ 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 @@ -3690,7 +3702,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### control - + Control this circuit on `num_ctrl_qubits` qubits. **Parameters** @@ -3715,7 +3727,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### inverse - + Invert (take adjoint of) this circuit. This is done by recursively inverting all gates. @@ -3761,7 +3773,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### power - + Raise this circuit to the power of `power`. If `power` is a positive integer and both `matrix_power` and `annotated` are `False`, this implementation defaults to calling `repeat`. Otherwise, the circuit is converted into a gate, and a new circuit, containing this gate raised to the given power, is returned. The gate raised to the given power is implemented either as a unitary gate if `annotated` is `False` or as an annotated operation if `annotated` is `True`. @@ -3787,7 +3799,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### repeat - + Repeat this circuit `reps` times. **Parameters** @@ -3806,7 +3818,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. @@ -3854,7 +3866,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. @@ -3954,7 +3966,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### decompose - + Call a decomposition pass on this circuit, to decompose one level (shallow decompose). **Parameters** @@ -3973,7 +3985,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. @@ -4029,7 +4041,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cast - + Best effort to cast value to type. Otherwise, returns the value. @@ -4043,7 +4055,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. @@ -4065,7 +4077,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cls\_instances - + Return the current number of instances of this class, useful for auto naming. @@ -4079,7 +4091,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### cls\_prefix - + Return the prefix to use for auto naming. @@ -4093,7 +4105,7 @@ python_api_name: qiskit.circuit.QuantumCircuit ### qbit\_argument\_conversion - + Converts several qubit representations (such as indexes, range, etc.) into a list of qubits. diff --git a/docs/api/qiskit/dev/qiskit.circuit.SwitchCaseOp.mdx b/docs/api/qiskit/dev/qiskit.circuit.SwitchCaseOp.mdx index 6e5edfea48d..7781808f95c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.SwitchCaseOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.SwitchCaseOp.mdx @@ -49,12 +49,20 @@ python_api_name: qiskit.circuit.SwitchCaseOp The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -131,13 +139,13 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -147,7 +155,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -172,6 +180,10 @@ python_api_name: qiskit.circuit.SwitchCaseOp This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### cases @@ -206,7 +218,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### copy - + Copy of the instruction. **Parameters** @@ -224,7 +236,7 @@ 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. @@ -248,7 +260,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### is\_parameterized - + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). @@ -264,7 +276,7 @@ python_api_name: qiskit.circuit.SwitchCaseOp ### repeat - + 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. @@ -323,7 +335,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. @@ -341,7 +353,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** @@ -367,7 +379,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 a00b24b7cb1..e594a59e323 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.WhileLoopOp.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.WhileLoopOp.mdx @@ -8,7 +8,7 @@ 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. @@ -50,14 +50,16 @@ python_api_name: qiskit.circuit.WhileLoopOp ### condition - - The classical condition on the instruction. - + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -132,13 +134,13 @@ python_api_name: qiskit.circuit.WhileLoopOp ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -148,7 +150,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### broadcast\_arguments - + Validation of the arguments. **Parameters** @@ -167,17 +169,21 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### copy - + Copy of the instruction. **Parameters** @@ -195,7 +201,7 @@ 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. @@ -219,7 +225,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### is\_parameterized - + Return whether the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") contains [compile-time parameters](circuit#circuit-compile-time-parameters). @@ -235,7 +241,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### repeat - + 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. @@ -259,7 +265,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### replace\_blocks - + 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: @@ -290,7 +296,7 @@ python_api_name: qiskit.circuit.WhileLoopOp ### 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. @@ -308,7 +314,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** @@ -334,7 +340,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 034c6b44eba..9220c7a9f0f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.BooleanExpression.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.BooleanExpression.mdx @@ -46,12 +46,20 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -128,13 +136,13 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -197,12 +205,16 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### control @@ -230,7 +242,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### copy - + Copy of the instruction. **Parameters** @@ -266,7 +278,7 @@ 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. @@ -290,7 +302,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### is\_parameterized - + Return whether the `Instruction` contains [compile-time parameters](circuit#circuit-compile-time-parameters). @@ -317,7 +329,7 @@ python_api_name: qiskit.circuit.classicalfunction.BooleanExpression ### repeat - + 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. @@ -341,7 +353,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. @@ -379,7 +391,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** diff --git a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunction.mdx b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunction.mdx index f9bbe589b45..f11e4e0d304 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.classicalfunction.ClassicalFunction.mdx @@ -59,12 +59,20 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions @@ -179,13 +187,13 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### add\_decomposition - + Add a decomposition of the instruction to the SessionEquivalenceLibrary. ### assemble - + Assemble a QasmQobjInstruction @@ -248,12 +256,16 @@ 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`. This is a setter method, not an additive one. Calling this multiple times will silently override any previously set condition; it does not stack. + + + The method `qiskit.circuit.instruction.Instruction.c_if()` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### compile @@ -287,7 +299,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### copy - + Copy of the instruction. **Parameters** @@ -305,7 +317,7 @@ 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. @@ -329,7 +341,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### is\_parameterized - + Return whether the `Instruction` contains [compile-time parameters](circuit#circuit-compile-time-parameters). @@ -356,7 +368,7 @@ python_api_name: qiskit.circuit.classicalfunction.ClassicalFunction ### repeat - + 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. @@ -380,7 +392,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. @@ -432,7 +444,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** diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.AND.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.AND.mdx index 0a71c11602f..16e27b86140 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. @@ -25,9 +25,13 @@ python_api_name: qiskit.circuit.library.AND Create a new logical AND circuit. + + The class `qiskit.circuit.library.boolean_logic.quantum_and.AND` is pending deprecation as of qiskit 1.3. It will be marked deprecated in a future release, and then removed no earlier than 3 months after the release date. Use qiskit.circuit.library.AndGate instead. + + **Parameters** - * **num\_variable\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – The qubits of which the OR is computed. The result will be written into an additional result qubit. + * **num\_variable\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – The qubits of which the AND is computed. The result will be written into an additional result qubit. * **flags** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*] | None*) – A list of +1/0/-1 marking negations or omissions of qubits. * **mcx\_mode** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – The mode to be used to implement the multi-controlled X gate. @@ -45,6 +49,10 @@ python_api_name: qiskit.circuit.library.AND Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -85,7 +93,7 @@ python_api_name: qiskit.circuit.library.AND ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.AndGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.AndGate.mdx new file mode 100644 index 00000000000..d2567f7661d --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.circuit.library.AndGate.mdx @@ -0,0 +1,164 @@ +--- +title: AndGate +description: API reference for qiskit.circuit.library.AndGate +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.circuit.library.AndGate +--- + +# AndGate + + + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") + + A gate representing the logical AND operation on a number of qubits. + + For the AND operation the state $|1\rangle$ is interpreted as `True`. The result qubit is flipped, if the state of all variable qubits is `True`. In this format, the AND operation equals a multi-controlled X gate, which is controlled on all variable qubits. Using a list of flags however, qubits can be skipped or negated. Practically, the flags allow to skip controls or to apply pre- and post-X gates to the negated qubits. + + The AndGate gate without special flags equals the multi-controlled-X gate: + + ![../\_images/qiskit-circuit-library-AndGate-1.png](/images/api/qiskit/dev/qiskit-circuit-library-AndGate-1.png) + + Using flags we can negate qubits or skip them. For instance, if we have 5 qubits and want to return `True` if the first qubit is `False` and the last two are `True` we use the flags `[-1, 0, 0, 1, 1]`. + + ![../\_images/qiskit-circuit-library-AndGate-2.png](/images/api/qiskit/dev/qiskit-circuit-library-AndGate-2.png) + + **Parameters** + + * **num\_variable\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – The qubits of which the AND is computed. The result will be written into an additional result qubit. + * **flags** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*] | None*) – A list of +1/0/-1 marking negations or omissions of qubits. + + ## 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 behavioral perspective. In particular, you should *not* override [`base_class`](#qiskit.circuit.library.AndGate.base_class "qiskit.circuit.library.AndGate.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 parametrized 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 parametrized 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. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + + + ### condition\_bits + + + Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + + + ### decompositions + + + Get the decompositions of the instruction from the SessionEquivalenceLibrary. + + + ### definition + + + Return definition in terms of other basic gates. + + + ### duration + + + Get the duration. + + + The property `qiskit.circuit.instruction.Instruction.duration` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. + + + + ### 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 + + + The parameters of this `Instruction`. Ideally these will be gate angles. + + + ### unit + + + Get the time unit of duration. + + + The property `qiskit.circuit.instruction.Instruction.unit` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. + + + + ## Methods + + ### inverse + + + Return inverted AND gate (itself). + + **Parameters** + + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.13)")) – 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** + + inverse gate (self-inverse). + + **Return type** + + [AndGate](#qiskit.circuit.library.AndGate "qiskit.circuit.library.AndGate") + + + diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.BitwiseXorGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.BitwiseXorGate.mdx new file mode 100644 index 00000000000..1753fede31f --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.circuit.library.BitwiseXorGate.mdx @@ -0,0 +1,166 @@ +--- +title: BitwiseXorGate +description: API reference for qiskit.circuit.library.BitwiseXorGate +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.circuit.library.BitwiseXorGate +--- + +# BitwiseXorGate + + + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") + + An n-qubit gate for bitwise xor-ing the input with some integer `amount`. + + The `amount` is xor-ed in bitstring form with the input. + + This gate can also represent addition by `amount` over the finite field GF(2). + + Reference Circuit: + + ![../\_images/qiskit-circuit-library-BitwiseXorGate-1.png](/images/api/qiskit/dev/qiskit-circuit-library-BitwiseXorGate-1.png) + + **Parameters** + + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – the width of circuit. + * **amount** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – the xor amount in decimal form. + + **Raises** + + [**CircuitError**](circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if the xor bitstring exceeds available qubits. + + ## 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 behavioral perspective. In particular, you should *not* override [`base_class`](#qiskit.circuit.library.BitwiseXorGate.base_class "qiskit.circuit.library.BitwiseXorGate.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 parametrized 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 parametrized 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. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + + + ### condition\_bits + + + Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + + + ### decompositions + + + Get the decompositions of the instruction from the SessionEquivalenceLibrary. + + + ### definition + + + Return definition in terms of other basic gates. + + + ### duration + + + Get the duration. + + + The property `qiskit.circuit.instruction.Instruction.duration` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. + + + + ### 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 + + + The parameters of this `Instruction`. Ideally these will be gate angles. + + + ### unit + + + Get the time unit of duration. + + + The property `qiskit.circuit.instruction.Instruction.unit` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. + + + + ## Methods + + ### inverse + + + Return inverted BitwiseXorGate gate (itself). + + **Parameters** + + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.13)")) – 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** + + inverse gate (self-inverse). + + **Return type** + + [BitwiseXorGate](#qiskit.circuit.library.BitwiseXorGate "qiskit.circuit.library.BitwiseXorGate") + + + diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.C3SXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.C3SXGate.mdx index 373fcc458df..962d131d8e7 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.C3SXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.C3SXGate.mdx @@ -53,12 +53,20 @@ python_api_name: qiskit.circuit.library.C3SXGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.C3XGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.C3XGate.mdx index 77f0eed4f05..e34a7bb9a62 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.C3XGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.C3XGate.mdx @@ -44,12 +44,20 @@ python_api_name: qiskit.circuit.library.C3XGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.C4XGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.C4XGate.mdx index 0ab0e60e957..8582a4946c6 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.C4XGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.C4XGate.mdx @@ -49,12 +49,20 @@ python_api_name: qiskit.circuit.library.C4XGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CCXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CCXGate.mdx index 347f6783e91..04a2751c3ed 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CCXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CCXGate.mdx @@ -100,12 +100,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CCZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CCZGate.mdx index 25ccbf627f4..47fd37fe2c8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CCZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CCZGate.mdx @@ -75,12 +75,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CDKMRippleCarryAdder.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CDKMRippleCarryAdder.mdx index 64fc3017969..98499c37a69 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CDKMRippleCarryAdder.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CDKMRippleCarryAdder.mdx @@ -91,6 +91,10 @@ python_api_name: qiskit.circuit.library.CDKMRippleCarryAdder Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -131,7 +135,7 @@ python_api_name: qiskit.circuit.library.CDKMRippleCarryAdder ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CHGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CHGate.mdx index 4deca7e59ec..5299f8581cd 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CHGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CHGate.mdx @@ -90,12 +90,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CPhaseGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CPhaseGate.mdx index d3a0610f30a..39fd4fa267d 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CPhaseGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CPhaseGate.mdx @@ -21,7 +21,7 @@ python_api_name: qiskit.circuit.library.CPhaseGate ```python q_0: ─■── - │λ + │θ q_1: ─■── ``` @@ -34,7 +34,7 @@ I \otimes |0\rangle\langle 0| + P \otimes |1\rangle\langle 1| = 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ -0 & 0 & 0 & e^{i\lambda} +0 & 0 & 0 & e^{i\theta} \end{pmatrix} $$ @@ -71,12 +71,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CRXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CRXGate.mdx index 8ab64ff6280..21db322a822 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CRXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CRXGate.mdx @@ -92,12 +92,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CRYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CRYGate.mdx index f600012e350..ab600c6afd5 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CRYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CRYGate.mdx @@ -92,12 +92,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CRZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CRZGate.mdx index dc9793a8835..2e300d14313 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CRZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CRZGate.mdx @@ -22,20 +22,20 @@ python_api_name: qiskit.circuit.library.CRZGate ```python q_0: ────■──── ┌───┴───┐ - q_1: ┤ Rz(λ) ├ + q_1: ┤ Rz(θ) ├ └───────┘ ``` **Matrix representation:** $$ -CRZ(\lambda)\ q_0, q_1 = -I \otimes |0\rangle\langle 0| + RZ(\lambda) \otimes |1\rangle\langle 1| = +CRZ(\theta)\ q_0, q_1 = +I \otimes |0\rangle\langle 0| + RZ(\theta) \otimes |1\rangle\langle 1| = \begin{pmatrix} 1 & 0 & 0 & 0 \\ 0 & e^{-i\frac{\lambda}{2}} & 0 & 0 \\ 0 & 0 & 1 & 0 \\ -0 & 0 & 0 & e^{i\frac{\lambda}{2}} +0 & 0 & 0 & e^{i\frac{\theta}{2}} \end{pmatrix} $$ @@ -44,19 +44,19 @@ $$ ```python ┌───────┐ - q_0: ┤ Rz(λ) ├ + q_0: ┤ Rz(θ) ├ └───┬───┘ q_1: ────■──── ``` $$ -CRZ(\lambda)\ q_1, q_0 = -|0\rangle\langle 0| \otimes I + |1\rangle\langle 1| \otimes RZ(\lambda) = +CRZ(\theta)\ q_1, q_0 = +|0\rangle\langle 0| \otimes I + |1\rangle\langle 1| \otimes RZ(\theta) = \begin{pmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ -0 & 0 & e^{-i\frac{\lambda}{2}} & 0 \\ -0 & 0 & 0 & e^{i\frac{\lambda}{2}} +0 & 0 & e^{-i\frac{\theta}{2}} & 0 \\ +0 & 0 & 0 & e^{i\frac{\theta}{2}} \end{pmatrix} $$ @@ -94,12 +94,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CSGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CSGate.mdx index 469bd7d4744..aa38fb3c04b 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CSGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CSGate.mdx @@ -66,12 +66,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CSXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CSXGate.mdx index 5e32be34e56..7c07df8c2cc 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CSXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CSXGate.mdx @@ -88,12 +88,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CSdgGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CSdgGate.mdx index 3f99c4978e8..0d6814899f1 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CSdgGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CSdgGate.mdx @@ -66,12 +66,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CSwapGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CSwapGate.mdx index 5046c9e9887..dbe830d690b 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CSwapGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CSwapGate.mdx @@ -109,12 +109,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CU1Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CU1Gate.mdx index b8601c86075..0ec7a9db2d0 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CU1Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CU1Gate.mdx @@ -32,20 +32,20 @@ $$ ```python q_0: ─■── - │λ + │θ q_1: ─■── ``` **Matrix representation:** $$ -CU1(\lambda) = +CU1(\theta) = I \otimes |0\rangle\langle 0| + U1 \otimes |1\rangle\langle 1| = \begin{pmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ -0 & 0 & 0 & e^{i\lambda} +0 & 0 & 0 & e^{i\theta} \end{pmatrix} $$ @@ -82,12 +82,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CU3Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CU3Gate.mdx index b563d98dabb..7cdfdfdb4ca 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CU3Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CU3Gate.mdx @@ -108,12 +108,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CUGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CUGate.mdx index cdd6f779256..21864266048 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CUGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CUGate.mdx @@ -98,12 +98,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CXGate.mdx index d67e68f5794..e09ba9b5276 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CXGate.mdx @@ -96,12 +96,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CYGate.mdx index bf53437c129..77b86eb776f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CYGate.mdx @@ -88,12 +88,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.CZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.CZGate.mdx index 29ed630a693..c12b9a97a46 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.CZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.CZGate.mdx @@ -69,12 +69,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.DCXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.DCXGate.mdx index dda61f5ef67..e0aea6b85f4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.DCXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.DCXGate.mdx @@ -66,12 +66,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Diagonal.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Diagonal.mdx index 1112f7a4832..0f68a1296d4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Diagonal.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.Diagonal.mdx @@ -73,6 +73,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.DiagonalGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.DiagonalGate.mdx index f88c7d9f440..d0d0c08503e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.DiagonalGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.DiagonalGate.mdx @@ -44,12 +44,20 @@ python_api_name: qiskit.circuit.library.DiagonalGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.DraperQFTAdder.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.DraperQFTAdder.mdx index 0f643aeb6c6..b2255ff3bb7 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.DraperQFTAdder.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.DraperQFTAdder.mdx @@ -62,6 +62,10 @@ python_api_name: qiskit.circuit.library.DraperQFTAdder Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ECRGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ECRGate.mdx index 69069e7c3a4..c6a84eb6527 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ECRGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ECRGate.mdx @@ -90,12 +90,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.EfficientSU2.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.EfficientSU2.mdx index b24dfc3f7cc..7919ddac38c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.EfficientSU2.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.EfficientSU2.mdx @@ -88,6 +88,10 @@ python_api_name: qiskit.circuit.library.EfficientSU2 Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.EvolvedOperatorAnsatz.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.EvolvedOperatorAnsatz.mdx index 4d830feda4d..80ea44ddfde 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.EvolvedOperatorAnsatz.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.EvolvedOperatorAnsatz.mdx @@ -38,6 +38,10 @@ python_api_name: qiskit.circuit.library.EvolvedOperatorAnsatz Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ExactReciprocal.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ExactReciprocal.mdx index 527071ca50a..f93538979b8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ExactReciprocal.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ExactReciprocal.mdx @@ -42,6 +42,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ExcitationPreserving.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ExcitationPreserving.mdx index f1a11bae679..a2ddd314373 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ExcitationPreserving.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ExcitationPreserving.mdx @@ -107,6 +107,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.FourierChecking.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.FourierChecking.mdx index aa0847953e7..6d95a9c20cb 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.FourierChecking.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.FourierChecking.mdx @@ -56,6 +56,10 @@ python_api_name: qiskit.circuit.library.FourierChecking Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.FunctionalPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.FunctionalPauliRotations.mdx index e8a5c0cb19b..ca3a544c551 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.FunctionalPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.FunctionalPauliRotations.mdx @@ -47,6 +47,10 @@ python_api_name: qiskit.circuit.library.FunctionalPauliRotations Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GMS.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GMS.mdx index 088a6bb5fa4..a01b17d72f7 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GMS.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GMS.mdx @@ -65,6 +65,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GR.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GR.mdx index 2958004a986..21560db0822 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GR.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GR.mdx @@ -59,6 +59,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GRX.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GRX.mdx index e2d1a7b44e2..d9a0262bdcc 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GRX.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GRX.mdx @@ -58,6 +58,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GRY.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GRY.mdx index d4198a28ea3..75d75af92ff 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GRY.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GRY.mdx @@ -58,6 +58,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GRZ.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GRZ.mdx index ccb48f0a768..bdb24716567 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GRZ.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GRZ.mdx @@ -58,6 +58,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GlobalPhaseGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GlobalPhaseGate.mdx index 608291f2566..64d7a024ec7 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GlobalPhaseGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GlobalPhaseGate.mdx @@ -58,12 +58,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GraphState.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GraphState.mdx index 80c4b610d6f..022708da62c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GraphState.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GraphState.mdx @@ -63,6 +63,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.GroverOperator.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.GroverOperator.mdx index b1a04b2ea73..0ef35556f94 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.GroverOperator.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.GroverOperator.mdx @@ -174,6 +174,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.HGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.HGate.mdx index abc108b3827..51c02495959 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.HGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.HGate.mdx @@ -64,12 +64,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.HRSCumulativeMultiplier.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.HRSCumulativeMultiplier.mdx index d27b95fd79b..5996017b944 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.HRSCumulativeMultiplier.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.HRSCumulativeMultiplier.mdx @@ -75,6 +75,10 @@ python_api_name: qiskit.circuit.library.HRSCumulativeMultiplier Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.HamiltonianGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.HamiltonianGate.mdx index 544c7fdca3c..08df2906b33 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.HamiltonianGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.HamiltonianGate.mdx @@ -52,12 +52,20 @@ python_api_name: qiskit.circuit.library.HamiltonianGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.HiddenLinearFunction.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.HiddenLinearFunction.mdx index 9a30bc2fc1f..9fd4d39501f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.HiddenLinearFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.HiddenLinearFunction.mdx @@ -65,6 +65,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.IGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.IGate.mdx index d11d457a1ef..6b05d6a36b3 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.IGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.IGate.mdx @@ -63,12 +63,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.IQP.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.IQP.mdx index 39b159c42c1..3f47916c699 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. @@ -31,6 +31,10 @@ python_api_name: qiskit.circuit.library.IQP Create IQP circuit. + + The class `qiskit.circuit.library.iqp.IQP` is pending deprecation as of qiskit 1.3. It will be marked deprecated in a future release, and then removed no earlier than 3 months after the release date. Use the qiskit.circuit.library.iqp function instead. + + **Parameters** **interactions** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)") *| np.ndarray*) – input n-by-n symmetric matrix. @@ -53,6 +57,10 @@ python_api_name: qiskit.circuit.library.IQP Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -93,7 +101,7 @@ python_api_name: qiskit.circuit.library.IQP ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Initialize.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Initialize.mdx index 8916f6477b1..5d187c2ecec 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Initialize.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.Initialize.mdx @@ -62,12 +62,20 @@ python_api_name: qiskit.circuit.library.Initialize The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.InnerProduct.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.InnerProduct.mdx index c46f6f58164..1e87287f145 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$. @@ -46,6 +46,10 @@ $$ Return a circuit to compute the inner product of 2 n-qubit registers. + + The class `qiskit.circuit.library.boolean_logic.inner_product.InnerProduct` is pending deprecation as of qiskit 1.3. It will be marked deprecated in a future release, and then removed no earlier than 3 months after the release date. Use qiskit.circuit.library.InnerProductGate instead. + + **Parameters** **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – width of top and bottom registers (half total circuit width) @@ -64,6 +68,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -104,7 +112,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.InnerProductGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.InnerProductGate.mdx new file mode 100644 index 00000000000..6d287989b21 --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.circuit.library.InnerProductGate.mdx @@ -0,0 +1,164 @@ +--- +title: InnerProductGate +description: API reference for qiskit.circuit.library.InnerProductGate +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.circuit.library.InnerProductGate +--- + +# InnerProductGate + + + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") + + A 2n-qubit Boolean function that computes the inner product of two n-qubit vectors over $F_2$. + + This implementation is a phase oracle which computes the following transform. + +$$ +\mathcal{IP}_{2n} : F_2^{2n} \rightarrow {-1, 1} +\mathcal{IP}_{2n}(x_1, \cdots, x_n, y_1, \cdots, y_n) = (-1)^{x.y} +$$ + + The corresponding unitary is a diagonal, which induces a -1 phase on any inputs where the inner product of the top and bottom registers is 1. Otherwise, it keeps the input intact. + + ```python + q0_0: ─■────────── + │ + q0_1: ─┼──■─────── + │ │ + q0_2: ─┼──┼──■──── + │ │ │ + q0_3: ─┼──┼──┼──■─ + │ │ │ │ + q1_0: ─■──┼──┼──┼─ + │ │ │ + q1_1: ────■──┼──┼─ + │ │ + q1_2: ───────■──┼─ + │ + q1_3: ──────────■─ + ``` + + **Reference Circuit:** + + ![../\_images/qiskit-circuit-library-InnerProductGate-1.png](/images/api/qiskit/dev/qiskit-circuit-library-InnerProductGate-1.png) + + **Parameters** + + **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – width of top and bottom registers (half total number of qubits). + + ## 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 behavioral perspective. In particular, you should *not* override [`base_class`](#qiskit.circuit.library.InnerProductGate.base_class "qiskit.circuit.library.InnerProductGate.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 parametrized 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 parametrized 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. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + + + ### condition\_bits + + + Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + + + ### decompositions + + + Get the decompositions of the instruction from the SessionEquivalenceLibrary. + + + ### definition + + + Return definition in terms of other basic gates. + + + ### duration + + + Get the duration. + + + The property `qiskit.circuit.instruction.Instruction.duration` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. + + + + ### 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 + + + The parameters of this `Instruction`. Ideally these will be gate angles. + + + ### unit + + + Get the time unit of duration. + + + The property `qiskit.circuit.instruction.Instruction.unit` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. + + + + diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.IntegerComparator.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.IntegerComparator.mdx index 33ecf0e21c4..6ecae27da17 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.IntegerComparator.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.IntegerComparator.mdx @@ -44,6 +44,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -94,7 +98,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Isometry.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Isometry.mdx index 000ff56be7d..ff661d56a50 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Isometry.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.Isometry.mdx @@ -55,12 +55,20 @@ python_api_name: qiskit.circuit.library.Isometry The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.LinearAmplitudeFunction.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.LinearAmplitudeFunction.mdx index dd095ab8faa..aeb4b9b3752 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.LinearAmplitudeFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.LinearAmplitudeFunction.mdx @@ -79,6 +79,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -119,7 +123,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.LinearFunction.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.LinearFunction.mdx index 20b21c0acce..bb2c28d429c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.LinearFunction.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.LinearFunction.mdx @@ -81,12 +81,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.LinearPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.LinearPauliRotations.mdx index 17e531a8b99..e4253c3aadc 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.LinearPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.LinearPauliRotations.mdx @@ -70,6 +70,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -110,7 +114,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCMT.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCMT.mdx index 6d69f20c921..781068b63ea 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCMT.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCMT.mdx @@ -61,6 +61,10 @@ python_api_name: qiskit.circuit.library.MCMT Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -101,7 +105,7 @@ python_api_name: qiskit.circuit.library.MCMT ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCMTGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCMTGate.mdx index fa2ca2a61fe..53403e2f7dc 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCMTGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCMTGate.mdx @@ -65,12 +65,20 @@ python_api_name: qiskit.circuit.library.MCMTGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCMTVChain.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCMTVChain.mdx index db9554ec614..9779adc955b 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCMTVChain.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCMTVChain.mdx @@ -72,6 +72,10 @@ python_api_name: qiskit.circuit.library.MCMTVChain Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -112,7 +116,7 @@ python_api_name: qiskit.circuit.library.MCMTVChain ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCPhaseGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCPhaseGate.mdx index 8aedb6b9148..2ca6980c266 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCPhaseGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCPhaseGate.mdx @@ -63,12 +63,20 @@ python_api_name: qiskit.circuit.library.MCPhaseGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCXGate.mdx index 2a1c9dbe27c..acc2e5208aa 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCXGate.mdx @@ -44,12 +44,20 @@ python_api_name: qiskit.circuit.library.MCXGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCXGrayCode.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCXGrayCode.mdx index 04302a0681a..c369f0ebb9e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCXGrayCode.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCXGrayCode.mdx @@ -46,12 +46,20 @@ python_api_name: qiskit.circuit.library.MCXGrayCode The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCXRecursive.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCXRecursive.mdx index e95deaa18f2..6f8a85fe7c5 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCXRecursive.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCXRecursive.mdx @@ -53,12 +53,20 @@ python_api_name: qiskit.circuit.library.MCXRecursive The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MCXVChain.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MCXVChain.mdx index 940c10001f5..0013cf7d72a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MCXVChain.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MCXVChain.mdx @@ -50,12 +50,20 @@ python_api_name: qiskit.circuit.library.MCXVChain The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### ctrl\_state diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.MSGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.MSGate.mdx index b326ca82208..d1a71d1d7d8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.MSGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.MSGate.mdx @@ -48,12 +48,20 @@ python_api_name: qiskit.circuit.library.MSGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.NLocal.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.NLocal.mdx index f69c495b3cb..3a1a17cf60e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.NLocal.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.NLocal.mdx @@ -74,6 +74,10 @@ python_api_name: qiskit.circuit.library.NLocal Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -160,7 +164,7 @@ python_api_name: qiskit.circuit.library.NLocal ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.OR.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.OR.mdx index a8a1e4ea800..52689ec1264 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. @@ -25,6 +25,10 @@ python_api_name: qiskit.circuit.library.OR Create a new logical OR circuit. + + The class `qiskit.circuit.library.boolean_logic.quantum_or.OR` is pending deprecation as of qiskit 1.3. It will be marked deprecated in a future release, and then removed no earlier than 3 months after the release date. Use qiskit.circuit.library.OrGate instead. + + **Parameters** * **num\_variable\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – The qubits of which the OR is computed. The result will be written into an additional result qubit. @@ -45,6 +49,10 @@ python_api_name: qiskit.circuit.library.OR Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -85,7 +93,7 @@ python_api_name: qiskit.circuit.library.OR ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.OrGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.OrGate.mdx new file mode 100644 index 00000000000..302d55c3821 --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.circuit.library.OrGate.mdx @@ -0,0 +1,164 @@ +--- +title: OrGate +description: API reference for qiskit.circuit.library.OrGate +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.circuit.library.OrGate +--- + +# OrGate + + + Bases: [`Gate`](qiskit.circuit.Gate "qiskit.circuit.gate.Gate") + + A gate representing the logical OR operation on a number of qubits. + + For the OR operation the state $|1\rangle$ is interpreted as `True`. The result qubit is flipped, if the state of any variable qubit is `True`. The OR is implemented using a multi-open-controlled X gate (i.e. flips if the state is $|0\rangle$) and applying an X gate on the result qubit. Using a list of flags, qubits can be skipped or negated. + + The OrGate gate without special flags: + + ![../\_images/qiskit-circuit-library-OrGate-1.png](/images/api/qiskit/dev/qiskit-circuit-library-OrGate-1.png) + + Using flags we can negate qubits or skip them. For instance, if we have 5 qubits and want to return `True` if the first qubit is `False` or one of the last two are `True` we use the flags `[-1, 0, 0, 1, 1]`. + + ![../\_images/qiskit-circuit-library-OrGate-2.png](/images/api/qiskit/dev/qiskit-circuit-library-OrGate-2.png) + + **Parameters** + + * **num\_variable\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – The qubits of which the AND is computed. The result will be written into an additional result qubit. + * **flags** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*] | None*) – A list of +1/0/-1 marking negations or omissions of qubits. + + ## 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 behavioral perspective. In particular, you should *not* override [`base_class`](#qiskit.circuit.library.OrGate.base_class "qiskit.circuit.library.OrGate.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 parametrized 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 parametrized 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. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + + + ### condition\_bits + + + Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + + + + ### decompositions + + + Get the decompositions of the instruction from the SessionEquivalenceLibrary. + + + ### definition + + + Return definition in terms of other basic gates. + + + ### duration + + + Get the duration. + + + The property `qiskit.circuit.instruction.Instruction.duration` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. + + + + ### 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 + + + The parameters of this `Instruction`. Ideally these will be gate angles. + + + ### unit + + + Get the time unit of duration. + + + The property `qiskit.circuit.instruction.Instruction.unit` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. + + + + ## Methods + + ### inverse + + + Return inverted OR gate (itself). + + **Parameters** + + **annotated** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.13)")) – 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** + + inverse gate (self-inverse). + + **Return type** + + [OrGate](#qiskit.circuit.library.OrGate "qiskit.circuit.library.OrGate") + + + diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PauliEvolutionGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PauliEvolutionGate.mdx index 67eb42b01eb..8084f70fea1 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PauliEvolutionGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PauliEvolutionGate.mdx @@ -96,12 +96,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PauliFeatureMap.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PauliFeatureMap.mdx index 21bfd4a74a1..3bb755fb4c1 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PauliFeatureMap.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PauliFeatureMap.mdx @@ -137,6 +137,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -233,7 +237,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PauliGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PauliGate.mdx index a3078f6712c..05e04e46271 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PauliGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PauliGate.mdx @@ -55,12 +55,20 @@ python_api_name: qiskit.circuit.library.PauliGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PauliTwoDesign.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PauliTwoDesign.mdx index d46ee204bdf..bfd86f761ca 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PauliTwoDesign.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PauliTwoDesign.mdx @@ -72,6 +72,10 @@ python_api_name: qiskit.circuit.library.PauliTwoDesign Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -158,7 +162,7 @@ python_api_name: qiskit.circuit.library.PauliTwoDesign ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.Permutation.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.Permutation.mdx index 868c618c74c..d4d27e1ffdf 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.Permutation.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.Permutation.mdx @@ -47,6 +47,10 @@ python_api_name: qiskit.circuit.library.Permutation Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -87,7 +91,7 @@ python_api_name: qiskit.circuit.library.Permutation ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PermutationGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PermutationGate.mdx index 655381ce9f4..ec3e7c2aec2 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PermutationGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PermutationGate.mdx @@ -58,12 +58,20 @@ python_api_name: qiskit.circuit.library.PermutationGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseEstimation.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseEstimation.mdx index 0a552891de7..53f7ec902c1 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseEstimation.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseEstimation.mdx @@ -64,6 +64,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -104,7 +108,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseGate.mdx index e4b5023a515..b3a4568669c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseGate.mdx @@ -21,39 +21,39 @@ python_api_name: qiskit.circuit.library.PhaseGate ```python ┌──────┐ - q_0: ┤ P(λ) ├ + q_0: ┤ P(θ) ├ └──────┘ ``` **Matrix Representation:** $$ -P(\lambda) = +P(\theta) = \begin{pmatrix} 1 & 0 \\ -0 & e^{i\lambda} +0 & e^{i\theta} \end{pmatrix} $$ **Examples:** > $$ - > P(\lambda = \pi) = Z + > P(\theta = \pi) = Z > $$ > > $$ - > P(\lambda = \pi/2) = S + > P(\theta = \pi/2) = S > $$ > > $$ - > P(\lambda = \pi/4) = T + > P(\theta = \pi/4) = T > $$ `RZGate`: This gate is equivalent to RZ up to a phase factor. > $$ - > P(\lambda) = e^{i{\lambda}/2} RZ(\lambda) + > P(\theta) = e^{i{\theta}/2} RZ(\theta) > $$ Reference for virtual Z gate implementation: [1612.00858](https://arxiv.org/abs/1612.00858) @@ -88,12 +88,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseOracle.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseOracle.mdx index 655223e0868..e5e6f6287c7 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PhaseOracle.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PhaseOracle.mdx @@ -41,6 +41,10 @@ python_api_name: qiskit.circuit.library.PhaseOracle Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -81,7 +85,7 @@ python_api_name: qiskit.circuit.library.PhaseOracle ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseChebyshev.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseChebyshev.mdx index 734b684fd8d..c3836d52f98 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseChebyshev.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseChebyshev.mdx @@ -76,6 +76,10 @@ python_api_name: qiskit.circuit.library.PiecewiseChebyshev Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -136,7 +140,7 @@ python_api_name: qiskit.circuit.library.PiecewiseChebyshev ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseLinearPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseLinearPauliRotations.mdx index 3a9234a8dd9..2d4b7ca38e4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseLinearPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewiseLinearPauliRotations.mdx @@ -69,6 +69,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -119,7 +123,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewisePolynomialPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewisePolynomialPauliRotations.mdx index b3e37767a52..041b849a048 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PiecewisePolynomialPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PiecewisePolynomialPauliRotations.mdx @@ -117,6 +117,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -177,7 +181,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.PolynomialPauliRotations.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.PolynomialPauliRotations.mdx index e6df906639b..12e08aad1a8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.PolynomialPauliRotations.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.PolynomialPauliRotations.mdx @@ -69,6 +69,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -137,7 +141,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.QAOAAnsatz.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.QAOAAnsatz.mdx index 3af103c3618..39ec39ef3c3 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.QAOAAnsatz.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.QAOAAnsatz.mdx @@ -42,6 +42,10 @@ python_api_name: qiskit.circuit.library.QAOAAnsatz Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -152,7 +156,7 @@ python_api_name: qiskit.circuit.library.QAOAAnsatz ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.QFT.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.QFT.mdx index 74e8c1c09f5..08ddac3a3a6 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.QFT.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.QFT.mdx @@ -70,6 +70,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -130,7 +134,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.QFTGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.QFTGate.mdx index 9dfe5b2ac6e..e2858e2f911 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.QFTGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.QFTGate.mdx @@ -50,12 +50,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.QuadraticForm.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.QuadraticForm.mdx index 255c0462554..56ff6744c75 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.QuadraticForm.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.QuadraticForm.mdx @@ -66,6 +66,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -106,7 +110,7 @@ $$ ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.QuantumVolume.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.QuantumVolume.mdx index 91beefcd76e..f7bf977b671 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.QuantumVolume.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.QuantumVolume.mdx @@ -53,6 +53,10 @@ python_api_name: qiskit.circuit.library.QuantumVolume Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -93,7 +97,7 @@ python_api_name: qiskit.circuit.library.QuantumVolume ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RC3XGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RC3XGate.mdx index 8981c2e1825..45cea367349 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RC3XGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RC3XGate.mdx @@ -48,12 +48,20 @@ python_api_name: qiskit.circuit.library.RC3XGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RCCXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RCCXGate.mdx index 78aa0a29ec9..8de02d30b27 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RCCXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RCCXGate.mdx @@ -48,12 +48,20 @@ python_api_name: qiskit.circuit.library.RCCXGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RGQFTMultiplier.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RGQFTMultiplier.mdx index 21d7c5dedbf..b45b0e6ebe9 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RGQFTMultiplier.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RGQFTMultiplier.mdx @@ -54,6 +54,10 @@ python_api_name: qiskit.circuit.library.RGQFTMultiplier Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -94,7 +98,7 @@ python_api_name: qiskit.circuit.library.RGQFTMultiplier ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RGate.mdx index eccbc17ae25..eae3b240e21 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RGate.mdx @@ -64,12 +64,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RVGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RVGate.mdx index 8f3162410ed..9a3a436feb7 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RVGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RVGate.mdx @@ -76,12 +76,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RXGate.mdx index b5d9ce2713b..a4121c51ca6 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RXGate.mdx @@ -64,12 +64,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RXXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RXXGate.mdx index 234c462ac0e..12700f49e92 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RXXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RXXGate.mdx @@ -90,12 +90,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RYGate.mdx index 2ccd8bcee78..054196415e2 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RYGate.mdx @@ -64,12 +64,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RYYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RYYGate.mdx index 3c19a2c0af3..11ce584fce6 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RYYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RYYGate.mdx @@ -90,12 +90,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RZGate.mdx index 70e71f05cac..c7f0d81e219 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RZGate.mdx @@ -74,12 +74,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RZXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RZXGate.mdx index f95eb2aa01a..b2267e3953c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RZXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RZXGate.mdx @@ -130,12 +130,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RZZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RZZGate.mdx index fd1e618c297..8bef88efae6 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RZZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RZZGate.mdx @@ -102,12 +102,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.RealAmplitudes.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.RealAmplitudes.mdx index b82c5013a6f..98e5e6a652a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.RealAmplitudes.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.RealAmplitudes.mdx @@ -126,6 +126,10 @@ python_api_name: qiskit.circuit.library.RealAmplitudes Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -212,7 +216,7 @@ python_api_name: qiskit.circuit.library.RealAmplitudes ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SGate.mdx index ff1754deaef..16bbc5159cc 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SGate.mdx @@ -67,12 +67,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SXGate.mdx index e062bfdd237..b47fd6219ff 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SXGate.mdx @@ -73,12 +73,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SXdgGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SXdgGate.mdx index 8e86e7649e8..608bcd7eefb 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SXdgGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SXdgGate.mdx @@ -63,12 +63,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SdgGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SdgGate.mdx index cf1667ac178..5a227b30e58 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SdgGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SdgGate.mdx @@ -67,12 +67,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.StatePreparation.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.StatePreparation.mdx index ed7983000e2..b57f71fd83e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.StatePreparation.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.StatePreparation.mdx @@ -69,12 +69,20 @@ python_api_name: qiskit.circuit.library.StatePreparation The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.SwapGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.SwapGate.mdx index c6f676b2195..52f36b4958e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.SwapGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.SwapGate.mdx @@ -72,12 +72,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.TGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.TGate.mdx index 9aac4f303a9..a75aa471dcb 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.TGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.TGate.mdx @@ -67,12 +67,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.TdgGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.TdgGate.mdx index 46a8f0e6414..049f3c02cac 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.TdgGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.TdgGate.mdx @@ -67,12 +67,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.TwoLocal.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.TwoLocal.mdx index 8a5aa3a2ce3..47b2faac20a 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.TwoLocal.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.TwoLocal.mdx @@ -138,6 +138,10 @@ python_api_name: qiskit.circuit.library.TwoLocal Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits @@ -224,7 +228,7 @@ python_api_name: qiskit.circuit.library.TwoLocal ### instances - + ### layout diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.U1Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.U1Gate.mdx index 140f28d161c..6947c126d9d 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.U1Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.U1Gate.mdx @@ -19,7 +19,7 @@ python_api_name: qiskit.circuit.library.U1Gate This gate is deprecated. Instead, the following replacements should be used $$ -U1(\lambda) = P(\lambda)= U(0,0,\lambda) +U1(\theta) = P(\theta)= U(0,0,\theta) $$ ```python @@ -32,39 +32,39 @@ $$ ```python ┌───────┐ - q_0: ┤ U1(λ) ├ + q_0: ┤ U1(θ) ├ └───────┘ ``` **Matrix Representation:** $$ -U1(\lambda) = +U1(\theta) = \begin{pmatrix} 1 & 0 \\ -0 & e^{i\lambda} +0 & e^{i\theta} \end{pmatrix} $$ **Examples:** > $$ - > U1(\lambda = \pi) = Z + > U1(\theta = \pi) = Z > $$ > > $$ - > U1(\lambda = \pi/2) = S + > U1(\theta = \pi/2) = S > $$ > > $$ - > U1(\lambda = \pi/4) = T + > U1(\theta = \pi/4) = T > $$ `RZGate`: This gate is equivalent to RZ up to a phase factor. > $$ - > U1(\lambda) = e^{i{\lambda}/2} RZ(\lambda) + > U1(\theta) = e^{i{\theta}/2} RZ(\theta) > $$ `U3Gate`: U3 is a generalization of U2 that covers all single-qubit rotations, using two X90 pulses. @@ -101,12 +101,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.U2Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.U2Gate.mdx index bc05c76c1ef..4869d21b24f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.U2Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.U2Gate.mdx @@ -100,12 +100,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.U3Gate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.U3Gate.mdx index 12b45ddeb0e..17bf46361cb 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.U3Gate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.U3Gate.mdx @@ -95,12 +95,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCGate.mdx index f3774eeba19..b3120c15243 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCGate.mdx @@ -70,12 +70,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCPauliRotGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCPauliRotGate.mdx index ca07081a680..64ef83c9f23 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCPauliRotGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCPauliRotGate.mdx @@ -47,12 +47,20 @@ python_api_name: qiskit.circuit.library.UCPauliRotGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCRXGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCRXGate.mdx index 47e4b062f2c..5cfbae63c87 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCRXGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCRXGate.mdx @@ -46,12 +46,20 @@ python_api_name: qiskit.circuit.library.UCRXGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCRYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCRYGate.mdx index 42621bb75ff..3a73a88d7e4 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCRYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCRYGate.mdx @@ -46,12 +46,20 @@ python_api_name: qiskit.circuit.library.UCRYGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UCRZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UCRZGate.mdx index fa57448dfeb..e7d3364f29f 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UCRZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UCRZGate.mdx @@ -46,12 +46,20 @@ python_api_name: qiskit.circuit.library.UCRZGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UGate.mdx index c9943012d46..abc51c0ef14 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UGate.mdx @@ -78,12 +78,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryGate.mdx index 2954e3045cd..da8e342d73e 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryGate.mdx @@ -71,12 +71,20 @@ python_api_name: qiskit.circuit.library.UnitaryGate The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryOverlap.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryOverlap.mdx index 5a1512b70fe..4394d4387cb 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryOverlap.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.UnitaryOverlap.mdx @@ -73,6 +73,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.VBERippleCarryAdder.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.VBERippleCarryAdder.mdx index dceaf6a4ba7..efa9c606667 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.VBERippleCarryAdder.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.VBERippleCarryAdder.mdx @@ -63,6 +63,10 @@ python_api_name: qiskit.circuit.library.VBERippleCarryAdder Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.WeightedAdder.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.WeightedAdder.mdx index 0377ba33f65..79c515e95e9 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.WeightedAdder.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.WeightedAdder.mdx @@ -76,6 +76,10 @@ $$ Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.XGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.XGate.mdx index 9e47b67b585..9dcd963124c 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.XGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.XGate.mdx @@ -82,12 +82,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.XOR.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.XOR.mdx index 1387b2a2e0a..4efa88e9b05 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`. @@ -19,6 +19,10 @@ python_api_name: qiskit.circuit.library.XOR Return a circuit implementing bitwise xor. + + The class `qiskit.circuit.library.boolean_logic.quantum_xor.XOR` is pending deprecation as of qiskit 1.3. It will be marked deprecated in a future release, and then removed no earlier than 3 months after the release date. Instead, for xor-ing with a specified amount, use BitwiseXorGate,and for xor-ing with a random amount, use random\_bitwise\_xor. + + **Parameters** * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – the width of circuit. @@ -47,6 +51,10 @@ python_api_name: qiskit.circuit.library.XOR Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.XXMinusYYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.XXMinusYYGate.mdx index 56a0d2914e6..87794000ac8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.XXMinusYYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.XXMinusYYGate.mdx @@ -100,12 +100,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.XXPlusYYGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.XXPlusYYGate.mdx index 111b78c3a8e..9ac7604e3ad 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.XXPlusYYGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.XXPlusYYGate.mdx @@ -102,12 +102,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.YGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.YGate.mdx index 462994b22a3..1767b8776f8 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.YGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.YGate.mdx @@ -82,12 +82,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ZFeatureMap.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ZFeatureMap.mdx index 5c9d282b343..31a633e1a1d 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ZFeatureMap.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ZFeatureMap.mdx @@ -106,6 +106,10 @@ python_api_name: qiskit.circuit.library.ZFeatureMap Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ZGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ZGate.mdx index e3469e3ef36..04355f9ccb5 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ZGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ZGate.mdx @@ -82,12 +82,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.ZZFeatureMap.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.ZZFeatureMap.mdx index b2a5cef52fc..0041e5c9dd3 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.ZZFeatureMap.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.ZZFeatureMap.mdx @@ -127,6 +127,10 @@ python_api_name: qiskit.circuit.library.ZZFeatureMap Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.circuit.library.iSwapGate.mdx b/docs/api/qiskit/dev/qiskit.circuit.library.iSwapGate.mdx index 08d3c5dd205..e9e9ca6db30 100644 --- a/docs/api/qiskit/dev/qiskit.circuit.library.iSwapGate.mdx +++ b/docs/api/qiskit/dev/qiskit.circuit.library.iSwapGate.mdx @@ -95,12 +95,20 @@ $$ The classical condition on the instruction. + + + The property `qiskit.circuit.instruction.Instruction.condition` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### condition\_bits Get Clbits in condition. + + + The property `qiskit.circuit.instruction.Instruction.condition_bits` is deprecated as of qiskit 1.3.0. It will be removed in 2.0.0. + ### decompositions diff --git a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGCircuit.mdx b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGCircuit.mdx index e5ccf09daea..fc935067d60 100644 --- a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGCircuit.mdx +++ b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGCircuit.mdx @@ -25,6 +25,8 @@ python_api_name: qiskit.dagcircuit.DAGCircuit **The custom pulse definition of a given gate is of the form** \{‘gate\_name’: \{(qubits, params): schedule}} + + DEPRECATED since Qiskit 1.3.0 and will be removed in Qiskit 2.0.0 ### clbits @@ -527,6 +529,8 @@ python_api_name: qiskit.dagcircuit.DAGCircuit 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. + + DEPRECATED since Qiskit 1.3.0 and will be removed in Qiskit 2.0.0 ### has\_var diff --git a/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDependency.mdx b/docs/api/qiskit/dev/qiskit.dagcircuit.DAGDependency.mdx index 1c10e44ab97..2be78a56e98 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.13)") Object to represent a quantum circuit as a Directed Acyclic Graph (DAG) via operation dependencies (i.e. lack of commutation). @@ -45,6 +45,10 @@ python_api_name: qiskit.dagcircuit.DAGDependency Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}`. + + + The property `qiskit.dagcircuit.dagdependency.DAGDependency.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.dagcircuit.dagdependency.DAGDependency.calibrations` will have no alternative in Qiskit. + ### global\_phase @@ -57,19 +61,19 @@ 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** @@ -81,31 +85,31 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### 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 +127,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### direct\_successors - + Direct successors id of a given node as sorted list. **Parameters** @@ -141,7 +145,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 +167,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_all\_edges - + Enumeration of all edges. **Returns** @@ -177,7 +181,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_edges - + Edge enumeration between two nodes through method get\_all\_edge\_data. **Parameters** @@ -196,7 +200,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_in\_edges - + Enumeration of all incoming edges for a given node. **Parameters** @@ -214,7 +218,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.13)")) – label of considered node. @@ -230,7 +234,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_nodes - + **Returns** iterator over all the nodes. @@ -242,7 +246,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### get\_out\_edges - + Enumeration of all outgoing edges for a given node. **Parameters** @@ -260,7 +264,7 @@ python_api_name: qiskit.dagcircuit.DAGDependency ### predecessors - + Predecessors id of a given node as sorted list. **Parameters** @@ -278,7 +282,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. @@ -299,13 +303,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 +327,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.providers.Backend.mdx b/docs/api/qiskit/dev/qiskit.providers.Backend.mdx index 79acc6c0594..368c13389ca 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.13)") 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 858845c859e..ad32df17e7f 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.13)") 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. @@ -71,7 +71,7 @@ python_api_name: qiskit.providers.BackendV1 ### configuration - + Return the backend configuration. **Returns** @@ -85,7 +85,7 @@ python_api_name: qiskit.providers.BackendV1 ### name - + Return the backend name. **Returns** @@ -99,7 +99,7 @@ python_api_name: qiskit.providers.BackendV1 ### properties - + Return the backend properties. **Returns** @@ -113,7 +113,7 @@ python_api_name: qiskit.providers.BackendV1 ### provider - + Return the backend Provider. **Returns** @@ -127,7 +127,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. @@ -148,7 +148,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. @@ -164,7 +164,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 ddf787e8eaa..7d062d39c44 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.13)") 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. @@ -100,6 +100,10 @@ python_api_name: qiskit.providers.BackendV2 Return the [`InstructionScheduleMap`](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") for the instructions defined in this backend’s target. + + + The property `qiskit.providers.backend.BackendV2.instruction_schedule_map` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.instruction_schedule_map` will have no alternative in Qiskit. + ### instructions @@ -214,11 +218,15 @@ 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. + + The method `qiskit.providers.backend.BackendV2.acquire_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.acquire_channel()` will have no alternative in Qiskit. + + **Returns** The Qubit measurement acquisition line. @@ -234,13 +242,17 @@ 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. This is required to be implemented if the backend supports Pulse scheduling. + + The method `qiskit.providers.backend.BackendV2.control_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.control_channel()` will have no alternative in Qiskit. + + **Parameters** **qubits** ([*Iterable*](https://docs.python.org/3/library/typing.html#typing.Iterable "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*]*) – Tuple or list of qubits of the form `(control_qubit, target_qubit)`. @@ -260,11 +272,15 @@ 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. + + The method `qiskit.providers.backend.BackendV2.drive_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.drive_channel()` will have no alternative in Qiskit. + + **Returns** The Qubit drive channel @@ -280,11 +296,15 @@ 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. + + The method `qiskit.providers.backend.BackendV2.measure_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.measure_channel()` will have no alternative in Qiskit. + + **Returns** The Qubit measurement stimulus line @@ -300,7 +320,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 +344,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 +365,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 7c4bd57679b..12b80c3d1b8 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. @@ -69,6 +69,10 @@ python_api_name: qiskit.providers.BackendV2Converter Return the [`InstructionScheduleMap`](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") for the instructions defined in this backend’s target. + + + The property `qiskit.providers.backend.BackendV2.instruction_schedule_map` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.instruction_schedule_map` will have no alternative in Qiskit. + ### instructions @@ -167,93 +171,39 @@ 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. - - **Returns** - - The Qubit measurement acquisition line. - - **Return type** - - [AcquireChannel](qiskit.pulse.channels.AcquireChannel "qiskit.pulse.channels.AcquireChannel") - - **Raises** - - [**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.13)") – if the backend doesn’t support querying the measurement mapping + + + The method `qiskit.providers.backend_compat.BackendV2Converter.acquire_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend_compat.BackendV2Converter.acquire_channel()` will have no alternative in Qiskit. + ### 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. - - This is required to be implemented if the backend supports Pulse scheduling. - - **Parameters** - - **qubits** ([*Iterable*](https://docs.python.org/3/library/typing.html#typing.Iterable "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*]*) – Tuple or list of qubits of the form `(control_qubit, target_qubit)`. - - **Returns** - - The multi qubit control line. - - **Return type** - - List\[[ControlChannel](qiskit.pulse.channels.ControlChannel "qiskit.pulse.channels.ControlChannel")] - - **Raises** - - [**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.13)") – if the backend doesn’t support querying the measurement mapping + + + The method `qiskit.providers.backend_compat.BackendV2Converter.control_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend_compat.BackendV2Converter.control_channel()` will have no alternative in Qiskit. + ### drive\_channel - - Return the drive channel for the given qubit. - - This is required to be implemented if the backend supports Pulse scheduling. - - **Returns** - - The Qubit drive channel - - **Return type** - - [DriveChannel](qiskit.pulse.channels.DriveChannel "qiskit.pulse.channels.DriveChannel") - - **Raises** - - [**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.13)") – if the backend doesn’t support querying the measurement mapping + + + The method `qiskit.providers.backend_compat.BackendV2Converter.drive_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend_compat.BackendV2Converter.drive_channel()` will have no alternative in Qiskit. + ### measure\_channel - - Return the measure stimulus channel for the given qubit. - - This is required to be implemented if the backend supports Pulse scheduling. - - **Returns** - - The Qubit measurement stimulus line - - **Return type** - - [MeasureChannel](qiskit.pulse.channels.MeasureChannel "qiskit.pulse.channels.MeasureChannel") - - **Raises** - - [**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.13)") – if the backend doesn’t support querying the measurement mapping + + + The method `qiskit.providers.backend_compat.BackendV2Converter.measure_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend_compat.BackendV2Converter.measure_channel()` will have no alternative in Qiskit. + ### 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 +227,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 +248,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.QubitProperties.mdx b/docs/api/qiskit/dev/qiskit.providers.QubitProperties.mdx index ebd3e736d0f..f356cd8a12f 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.13)") A representation of the properties of a qubit on a backend. 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 395f4739c96..2817bf6f0e6 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. @@ -71,6 +71,10 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator Return the [`InstructionScheduleMap`](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") for the instructions defined in this backend’s target. + + + The property `qiskit.providers.backend.BackendV2.instruction_schedule_map` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.instruction_schedule_map` will have no alternative in Qiskit. + ### instructions @@ -175,11 +179,15 @@ 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. + + The method `qiskit.providers.backend.BackendV2.acquire_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.acquire_channel()` will have no alternative in Qiskit. + + **Returns** The Qubit measurement acquisition line. @@ -195,9 +203,13 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### configuration - + Return the simulator backend configuration. + + The method `qiskit.providers.basic_provider.basic_simulator.BasicSimulator.configuration()` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. The BackendConfiguration class is part of the deprecated BackendV1 workflow, and no longer necessary for BackendV2. The individual configuration elements can be retrieved directly from the backend or from the contained Target instance (backend.target)). + + **Returns** The configuration for the backend. @@ -209,13 +221,17 @@ 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. This is required to be implemented if the backend supports Pulse scheduling. + + The method `qiskit.providers.backend.BackendV2.control_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.control_channel()` will have no alternative in Qiskit. + + **Parameters** **qubits** ([*Iterable*](https://docs.python.org/3/library/typing.html#typing.Iterable "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*]*) – Tuple or list of qubits of the form `(control_qubit, target_qubit)`. @@ -235,11 +251,15 @@ 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. + + The method `qiskit.providers.backend.BackendV2.drive_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.drive_channel()` will have no alternative in Qiskit. + + **Returns** The Qubit drive channel @@ -255,11 +275,15 @@ 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. + + The method `qiskit.providers.backend.BackendV2.measure_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.measure_channel()` will have no alternative in Qiskit. + + **Returns** The Qubit measurement stimulus line @@ -275,7 +299,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 +323,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### run - + Run on the backend. **Parameters** @@ -334,7 +358,7 @@ python_api_name: qiskit.providers.basic_provider.BasicSimulator ### run\_experiment - + Run an experiment (circuit) and return a single experiment result. **Parameters** @@ -372,7 +396,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 9604423e0bd..70127e66958 100644 --- a/docs/api/qiskit/dev/qiskit.providers.convert_to_target.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.convert_to_target.mdx @@ -10,16 +10,20 @@ 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. + + `qiskit.providers.backend_compat.convert_to_target()`’s argument `defaults` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and this argument uses a dependency on the package. + + **Parameters** * **configuration** ([*BackendConfiguration*](qiskit.providers.models.BackendConfiguration "qiskit.providers.models.backendconfiguration.BackendConfiguration")) – Backend configuration as `BackendConfiguration` - * **properties** ([*BackendProperties*](qiskit.providers.models.BackendProperties "qiskit.providers.models.backendproperties.BackendProperties") *| None*) – Backend property dictionary or `BackendProperties` - * **defaults** ([*PulseDefaults*](qiskit.providers.models.PulseDefaults "qiskit.providers.models.pulsedefaults.PulseDefaults") *| None*) – Backend pulse defaults dictionary or `PulseDefaults` + * **properties** ([*BackendProperties*](qiskit.providers.models.BackendProperties "qiskit.providers.models.backendproperties.BackendProperties")) – Backend property dictionary or `BackendProperties` + * **defaults** ([*PulseDefaults*](qiskit.providers.models.PulseDefaults "qiskit.providers.models.pulsedefaults.PulseDefaults")) – DEPRECATED. Backend pulse defaults dictionary or `PulseDefaults` * **custom\_name\_mapping** ([*Dict*](https://docs.python.org/3/library/typing.html#typing.Dict "(in Python v3.13)")*\[*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")*,* [*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.13)")*] | None*) – A name mapping must be supplied for the operation not included in Qiskit Standard Gate name mapping, otherwise the operation will be dropped in the resulting `Target` object. * **add\_delay** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.13)")) – If True, adds delay to the instruction set. * **filter\_faulty** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.13)")) – If True, this filters the non-operational qubits. 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 50e0153d0a6..4e2a8f9d9c9 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake127QPulseV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake127QPulseV1.mdx @@ -72,7 +72,7 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 ### configuration - + Return the backend configuration. **Returns** @@ -86,13 +86,13 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 ### defaults - + Returns a snapshot of device defaults ### name - + Return the backend name. **Returns** @@ -112,7 +112,7 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 ### provider - + Return the backend Provider. **Returns** @@ -132,7 +132,7 @@ python_api_name: qiskit.providers.fake_provider.Fake127QPulseV1 ### 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. @@ -148,7 +148,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 d29e426d131..cac547e0c8d 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake1Q.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake1Q.mdx @@ -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** @@ -67,7 +67,7 @@ python_api_name: qiskit.providers.fake_provider.Fake1Q ### provider - + Return the backend Provider. **Returns** @@ -87,7 +87,7 @@ python_api_name: qiskit.providers.fake_provider.Fake1Q ### 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 bdf62a29a53..c4536b71279 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake20QV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake20QV1.mdx @@ -74,7 +74,7 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 ### configuration - + Return the backend configuration. **Returns** @@ -88,7 +88,7 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 ### name - + Return the backend name. **Returns** @@ -108,7 +108,7 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 ### provider - + Return the backend Provider. **Returns** @@ -128,7 +128,7 @@ python_api_name: qiskit.providers.fake_provider.Fake20QV1 ### 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.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 d12a1da64a0..079b87d5d7b 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake27QPulseV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake27QPulseV1.mdx @@ -84,7 +84,7 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 ### configuration - + Return the backend configuration. **Returns** @@ -98,13 +98,13 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 ### defaults - + Returns a snapshot of device defaults ### name - + Return the backend name. **Returns** @@ -124,7 +124,7 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 ### provider - + Return the backend Provider. **Returns** @@ -144,7 +144,7 @@ python_api_name: qiskit.providers.fake_provider.Fake27QPulseV1 ### 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. @@ -160,7 +160,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 feb233d8725..224f095a277 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake5QV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake5QV1.mdx @@ -72,7 +72,7 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 ### configuration - + Return the backend configuration. **Returns** @@ -86,7 +86,7 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 ### name - + Return the backend name. **Returns** @@ -106,7 +106,7 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 ### provider - + Return the backend Provider. **Returns** @@ -126,7 +126,7 @@ python_api_name: qiskit.providers.fake_provider.Fake5QV1 ### 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. @@ -142,7 +142,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 a1f0e157ae8..65b97d9002f 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake7QPulseV1.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.Fake7QPulseV1.mdx @@ -78,7 +78,7 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 ### configuration - + Return the backend configuration. **Returns** @@ -92,13 +92,13 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 ### defaults - + Returns a snapshot of device defaults ### name - + Return the backend name. **Returns** @@ -118,7 +118,7 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 ### provider - + Return the backend Provider. **Returns** @@ -138,7 +138,7 @@ python_api_name: qiskit.providers.fake_provider.Fake7QPulseV1 ### 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. @@ -154,7 +154,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 fa8ced8d13d..5789717caf0 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse2Q.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse2Q.mdx @@ -42,7 +42,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q ### configuration - + Return the backend configuration. **Returns** @@ -62,7 +62,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q ### name - + Return the backend name. **Returns** @@ -82,7 +82,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q ### provider - + Return the backend Provider. **Returns** @@ -102,7 +102,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse2Q ### 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. @@ -118,7 +118,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 66b6db49e5f..70142a55d59 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse3Q.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.FakeOpenPulse3Q.mdx @@ -42,7 +42,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q ### configuration - + Return the backend configuration. **Returns** @@ -60,7 +60,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q ### name - + Return the backend name. **Returns** @@ -80,7 +80,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q ### provider - + Return the backend Provider. **Returns** @@ -100,7 +100,7 @@ python_api_name: qiskit.providers.fake_provider.FakeOpenPulse3Q ### 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. @@ -116,7 +116,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 08c70cb8736..ed88013d88b 100644 --- a/docs/api/qiskit/dev/qiskit.providers.fake_provider.GenericBackendV2.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.fake_provider.GenericBackendV2.mdx @@ -8,11 +8,19 @@ 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. + + `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.__init__()`’s argument `calibrate_instructions` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and this argument uses a dependency on the package. + + + + `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.__init__()`’s argument `pulse_channels` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and this argument uses a dependency on the package. + + **Parameters** * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – Number of qubits that will be used to construct the backend’s target. Note that, while there is no limit in the size of the target that can be constructed, this backend runs on local noisy simulators, and these might present limitations in the number of qubits that can be simulated. @@ -32,7 +40,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 * **calibrate\_instructions** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.13)") *|*[*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") *| None*) – - Instruction calibration settings, this argument supports both boolean and [`InstructionScheduleMap`](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") as input types, and is `None` by default: + DEPRECATED. Instruction calibration settings, this argument supports both boolean and [`InstructionScheduleMap`](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") as input types, and is `None` by default: 1. If `calibrate_instructions==None`, no calibrations will be added to the target. @@ -52,7 +60,7 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 * **seed** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| None*) – Optional seed for generation of default values. - * **pulse\_channels** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.13)")) – If true, sets default pulse channel information on the backend. + * **pulse\_channels** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.13)")) – DEPRECATED. If true, sets default pulse channel information on the backend. * **noise\_info** ([*bool*](https://docs.python.org/3/library/functions.html#bool "(in Python v3.13)")) – If true, associates gates and qubits with default noise information. @@ -92,6 +100,10 @@ python_api_name: qiskit.providers.fake_provider.GenericBackendV2 Return the [`InstructionScheduleMap`](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") for the instructions defined in this backend’s target. + + + The property `qiskit.providers.backend.BackendV2.instruction_schedule_map` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.backend.BackendV2.instruction_schedule_map` will have no alternative in Qiskit. + ### instructions @@ -184,93 +196,39 @@ 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. - - **Returns** - - The Qubit measurement acquisition line. - - **Return type** - - [AcquireChannel](qiskit.pulse.channels.AcquireChannel "qiskit.pulse.channels.AcquireChannel") - - **Raises** - - [**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.13)") – if the backend doesn’t support querying the measurement mapping + + + The method `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.acquire_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.acquire_channel()` will have no alternative in Qiskit. + ### 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. - - This is required to be implemented if the backend supports Pulse scheduling. - - **Parameters** - - **qubits** ([*Iterable*](https://docs.python.org/3/library/collections.abc.html#collections.abc.Iterable "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*]*) – Tuple or list of qubits of the form `(control_qubit, target_qubit)`. - - **Returns** - - The multi qubit control line. - - **Return type** - - List\[[ControlChannel](qiskit.pulse.channels.ControlChannel "qiskit.pulse.channels.ControlChannel")] - - **Raises** - - [**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.13)") – if the backend doesn’t support querying the measurement mapping + + + The method `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.control_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.control_channel()` will have no alternative in Qiskit. + ### drive\_channel - - Return the drive channel for the given qubit. - - This is required to be implemented if the backend supports Pulse scheduling. - - **Returns** - - The Qubit drive channel - - **Return type** - - [DriveChannel](qiskit.pulse.channels.DriveChannel "qiskit.pulse.channels.DriveChannel") - - **Raises** - - [**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.13)") – if the backend doesn’t support querying the measurement mapping + + + The method `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.drive_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.drive_channel()` will have no alternative in Qiskit. + ### measure\_channel - - Return the measure stimulus channel for the given qubit. - - This is required to be implemented if the backend supports Pulse scheduling. - - **Returns** - - The Qubit measurement stimulus line - - **Return type** - - [MeasureChannel](qiskit.pulse.channels.MeasureChannel "qiskit.pulse.channels.MeasureChannel") - - **Raises** - - [**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.13)") – if the backend doesn’t support querying the measurement mapping + + + The method `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.measure_channel()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.fake_provider.generic_backend_v2.GenericBackendV2.measure_channel()` will have no alternative in Qiskit. + ### 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. @@ -294,7 +252,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. @@ -323,7 +281,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.Command.mdx b/docs/api/qiskit/dev/qiskit.providers.models.Command.mdx index cf5bca5dc19..69e43c3070d 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.13)") 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.PulseDefaults.mdx b/docs/api/qiskit/dev/qiskit.providers.models.PulseDefaults.mdx index 97065449e76..8d5f29c851b 100644 --- a/docs/api/qiskit/dev/qiskit.providers.models.PulseDefaults.mdx +++ b/docs/api/qiskit/dev/qiskit.providers.models.PulseDefaults.mdx @@ -8,11 +8,15 @@ python_api_name: qiskit.providers.models.PulseDefaults # PulseDefaults - + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.13)") 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. + + The class `qiskit.providers.models.pulsedefaults.PulseDefaults` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.providers.models.pulsedefaults.PulseDefaults` will have no alternative in Qiskit. + + Validate and reformat transport layer inputs to initialize. :param qubit\_freq\_est: Estimated qubit frequencies in GHz. :param meas\_freq\_est: Estimated measurement cavity frequencies in GHz. :param buffer: Default buffer time (in units of dt) between pulses. :param pulse\_library: Pulse name and sample definitions. :param cmd\_def: Operation name and definition in terms of Commands. :param meas\_kernel: The measurement kernels :param discriminator: The discriminators :param \*\*kwargs: Other attributes for the super class. ## Attributes @@ -33,7 +37,7 @@ python_api_name: qiskit.providers.models.PulseDefaults ### from\_dict - + Create a new PulseDefaults object from a dictionary. **Parameters** @@ -51,7 +55,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.pulse.InstructionScheduleMap.mdx b/docs/api/qiskit/dev/qiskit.pulse.InstructionScheduleMap.mdx index 607aaf92e05..6651e64155a 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.13)") 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: @@ -23,6 +23,10 @@ python_api_name: qiskit.pulse.InstructionScheduleMap Initialize a circuit instruction to schedule mapper instance. + + The class `qiskit.pulse.instruction_schedule_map.InstructionScheduleMap` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + ## Attributes ### instructions @@ -41,7 +45,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 +62,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### assert\_has - + Error if the given instruction is not defined. **Parameters** @@ -73,7 +77,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 +100,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 +119,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### has - + Is the instruction defined for the given qubits? **Parameters** @@ -134,7 +138,7 @@ python_api_name: qiskit.pulse.InstructionScheduleMap ### has\_custom\_gate - + Return `True` if the map has user provided instruction. **Return type** @@ -144,7 +148,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 +169,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 +189,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 +211,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 b268ab07ce4..bde30c76cb2 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.13)") A quantum program *schedule* with exact time constraints for its instructions, operating over all input signal *channels* and supporting special syntaxes for building. @@ -55,6 +55,10 @@ python_api_name: qiskit.pulse.Schedule Create an empty schedule. + + The class `qiskit.pulse.schedule.Schedule` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **\*schedules** (*'ScheduleComponent' |* [*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*, 'ScheduleComponent']*) – Child Schedules of this parent Schedule. May either be passed as the list of schedules, or a list of `(start_time, schedule)` pairs. @@ -149,7 +153,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`. $$ @@ -170,7 +174,7 @@ $$ ### assign\_parameters - + Assign the parameters in this schedule according to the input. **Parameters** @@ -191,7 +195,7 @@ $$ ### ch\_duration - + Return the time of the end of the last instruction over the supplied channels. **Parameters** @@ -205,7 +209,7 @@ $$ ### ch\_start\_time - + Return the time of the start of the first instruction over the supplied channels. **Parameters** @@ -219,7 +223,7 @@ $$ ### ch\_stop\_time - + Return maximum start time over supplied channels. **Parameters** @@ -233,7 +237,7 @@ $$ ### draw - + Plot the schedule. **Parameters** @@ -279,7 +283,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 [`filter()`](#qiskit.pulse.Schedule.filter "qiskit.pulse.Schedule.filter"), so that: ```python @@ -302,7 +306,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. @@ -323,7 +327,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. @@ -343,7 +347,7 @@ $$ ### initialize\_from - + Create new schedule object with metadata of another schedule object. **Parameters** @@ -366,7 +370,7 @@ $$ ### insert - + Return a new schedule with `schedule` inserted into `self` at `start_time`. **Parameters** @@ -383,7 +387,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -393,7 +397,7 @@ $$ ### replace - + Return a `Schedule` with the `old` instruction replaced with a `new` instruction. The replacement matching is based on an instruction equality check. @@ -450,7 +454,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 bdcd90f161b..c39f50c23bf 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.13)") Time-ordered sequence of instructions with alignment context. @@ -113,6 +113,10 @@ python_api_name: qiskit.pulse.ScheduleBlock Create an empty schedule block. + + The class `qiskit.pulse.schedule.ScheduleBlock` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)") *| None*) – Name of this schedule. Defaults to an autogenerated string if not provided. @@ -197,7 +201,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** @@ -221,7 +225,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### assign\_parameters - + Assign the parameters in this schedule according to the input. **Parameters** @@ -246,7 +250,7 @@ python_api_name: 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: @@ -304,7 +308,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### ch\_duration - + Return the time of the end of the last instruction over the supplied channels. **Parameters** @@ -318,7 +322,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### draw - + Plot the schedule. **Parameters** @@ -364,7 +368,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 [`filter()`](#qiskit.pulse.ScheduleBlock.filter "qiskit.pulse.ScheduleBlock.filter"), so that: ```python @@ -389,7 +393,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`. @@ -412,7 +416,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, @@ -450,7 +454,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### initialize\_from - + Create new schedule object with metadata of another schedule object. **Parameters** @@ -473,7 +477,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -483,7 +487,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### is\_referenced - + Return True iff the current schedule block contains reference to subroutine. **Return type** @@ -493,7 +497,7 @@ python_api_name: qiskit.pulse.ScheduleBlock ### is\_schedulable - + Return `True` if all durations are assigned. **Return type** @@ -503,7 +507,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 03625a841f7..7c5e8e7a343 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.AcquireChannel.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.AcquireChannel.mdx @@ -8,13 +8,17 @@ 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. Channel class. + + The class `qiskit.pulse.channels.Channel` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** **index** – Index of channel. @@ -49,7 +53,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 fb07411ab9a..d57f0fccda6 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.ControlChannel.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.ControlChannel.mdx @@ -8,13 +8,17 @@ 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. Channel class. + + The class `qiskit.pulse.channels.Channel` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** **index** – Index of channel. @@ -49,7 +53,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 0742a584071..94dbe661579 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.DriveChannel.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.DriveChannel.mdx @@ -8,13 +8,17 @@ python_api_name: qiskit.pulse.channels.DriveChannel # DriveChannel - + Bases: `PulseChannel` Drive channels transmit signals to qubits which enact gate operations. Channel class. + + The class `qiskit.pulse.channels.Channel` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** **index** – Index of channel. @@ -49,7 +53,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 87b7b3198f2..90ae8023803 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.MeasureChannel.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.MeasureChannel.mdx @@ -8,13 +8,17 @@ python_api_name: qiskit.pulse.channels.MeasureChannel # MeasureChannel - + Bases: `PulseChannel` Measure channels transmit measurement stimulus pulses for readout. Channel class. + + The class `qiskit.pulse.channels.Channel` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** **index** – Index of channel. @@ -49,7 +53,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 7076c1dc8cc..24e710e9ec0 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.MemorySlot.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.MemorySlot.mdx @@ -8,13 +8,17 @@ python_api_name: qiskit.pulse.channels.MemorySlot # MemorySlot - + Bases: `ClassicalIOChannel` Memory slot channels represent classical memory storage. Channel class. + + The class `qiskit.pulse.channels.Channel` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** **index** – Index of channel. @@ -49,7 +53,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 984b744781a..7434e33f68a 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.channels.RegisterSlot.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.channels.RegisterSlot.mdx @@ -8,13 +8,17 @@ python_api_name: qiskit.pulse.channels.RegisterSlot # RegisterSlot - + Bases: `ClassicalIOChannel` Classical resister slot channels represent classical registers (low-latency classical memory). Channel class. + + The class `qiskit.pulse.channels.Channel` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** **index** – Index of channel. @@ -49,7 +53,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 915b9db81f2..accd69f6874 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 38a0f2faf79..b45367006ab 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: @@ -21,6 +21,10 @@ python_api_name: qiskit.pulse.instructions.Acquire Create a new Acquire instruction. + + The class `qiskit.pulse.instructions.acquire.Acquire` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")) – Length of time to acquire data in terms of dt. @@ -127,7 +131,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 +150,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -160,7 +164,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -174,7 +178,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -188,7 +192,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 +212,7 @@ python_api_name: qiskit.pulse.instructions.Acquire ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -218,7 +222,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 b4ad411cdaf..9b6fa81d6ff 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. @@ -29,6 +29,10 @@ python_api_name: qiskit.pulse.instructions.Delay No other instruction may be scheduled within a `Delay`. + + The class `qiskit.pulse.instructions.delay.Delay` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")) – Length of time of the delay in terms of dt. @@ -101,7 +105,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 +124,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -134,7 +138,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -148,7 +152,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -162,7 +166,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 +186,7 @@ python_api_name: qiskit.pulse.instructions.Delay ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -192,7 +196,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 c04a5869b68..2dcda4a0d3a 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. @@ -17,6 +17,10 @@ python_api_name: qiskit.pulse.instructions.Play Create a new pulse instruction. + + The class `qiskit.pulse.instructions.play.Play` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **pulse** (*Pulse*) – A pulse waveform description, such as [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform"). @@ -95,7 +99,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 +118,7 @@ python_api_name: qiskit.pulse.instructions.Play ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -128,7 +132,7 @@ python_api_name: qiskit.pulse.instructions.Play ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -142,7 +146,7 @@ python_api_name: qiskit.pulse.instructions.Play ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -156,7 +160,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 +180,7 @@ python_api_name: qiskit.pulse.instructions.Play ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -186,7 +190,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 878861462b6..e9dd828af33 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. @@ -21,6 +21,10 @@ python_api_name: qiskit.pulse.instructions.Reference Create new reference. + + The class `qiskit.pulse.instructions.reference.Reference` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – Name of subroutine. @@ -100,7 +104,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 +123,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -133,7 +137,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -147,7 +151,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -161,7 +165,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 +185,7 @@ python_api_name: qiskit.pulse.instructions.Reference ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -191,7 +195,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 51b5a649ec2..794296df5c6 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. @@ -17,6 +17,10 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier The barrier directive blocks instructions within the same schedule as the barrier on channels contained within this barrier from moving through the barrier in time. + + The class `qiskit.pulse.instructions.directives.RelativeBarrier` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **channels** (*chans.Channel*) – The channel that the barrier applies to. @@ -82,7 +86,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 +105,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -115,7 +119,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -129,7 +133,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -143,7 +147,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 +167,7 @@ python_api_name: qiskit.pulse.instructions.RelativeBarrier ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -173,7 +177,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 88962b6e745..28a63dd8378 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 @@ -25,6 +25,10 @@ $$ Creates a new set channel frequency instruction. + + The class `qiskit.pulse.instructions.frequency.SetFrequency` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **frequency** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression")) – New frequency of the channel in Hz. @@ -103,7 +107,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 +126,7 @@ $$ ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -136,7 +140,7 @@ $$ ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -150,7 +154,7 @@ $$ ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -164,7 +168,7 @@ $$ ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -184,7 +188,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -194,7 +198,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 d077c85dd0e..7bb64d80b6f 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. @@ -23,6 +23,10 @@ $$ Instantiate a set phase instruction, setting the output signal phase on `channel` to `phase` \[radians]. + + The class `qiskit.pulse.instructions.phase.SetPhase` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **phase** ([*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression")) – The rotation angle in radians. @@ -101,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** @@ -120,7 +124,7 @@ $$ ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -134,7 +138,7 @@ $$ ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -148,7 +152,7 @@ $$ ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -162,7 +166,7 @@ $$ ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -182,7 +186,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -192,7 +196,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 013e95e5fa2..9f353016445 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftFrequency.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.ShiftFrequency.mdx @@ -8,13 +8,17 @@ 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. Creates a new shift frequency instruction. + + The class `qiskit.pulse.instructions.frequency.ShiftFrequency` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **frequency** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression")) – Frequency shift of the channel in Hz. @@ -93,7 +97,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 +116,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -126,7 +130,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -140,7 +144,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -154,7 +158,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 +178,7 @@ python_api_name: qiskit.pulse.instructions.ShiftFrequency ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -184,7 +188,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 bc6c2256142..addbb9f6f0b 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. @@ -27,6 +27,10 @@ $$ Instantiate a shift phase instruction, increasing the output signal phase on `channel` by `phase` \[radians]. + + The class `qiskit.pulse.instructions.phase.ShiftPhase` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **phase** ([*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression")) – The rotation angle in radians. @@ -105,7 +109,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 +128,7 @@ $$ ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -138,7 +142,7 @@ $$ ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -152,7 +156,7 @@ $$ ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -166,7 +170,7 @@ $$ ### insert - + Return a new [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") with `schedule` inserted within `self` at `start_time`. **Parameters** @@ -186,7 +190,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -196,7 +200,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 9a004c0a1c7..3bd3d13557f 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.instructions.Snapshot.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.instructions.Snapshot.mdx @@ -8,13 +8,17 @@ 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. Create new snapshot. + + The class `qiskit.pulse.instructions.snapshot.Snapshot` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – Snapshot label which is used to identify the snapshot in the output. @@ -99,7 +103,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 +122,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -132,7 +136,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -146,7 +150,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -160,7 +164,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 +184,7 @@ python_api_name: qiskit.pulse.instructions.Snapshot ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -190,7 +194,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 32e8d8d18da..97ef4f7cc3d 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. @@ -51,6 +51,10 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade Create a time blockade directive. + + The class `qiskit.pulse.instructions.directives.TimeBlockade` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – Length of time of the occupation in terms of dt. @@ -123,7 +127,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** @@ -142,7 +146,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### ch\_duration - + Return duration of the supplied channels in this Instruction. **Parameters** @@ -156,7 +160,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### ch\_start\_time - + Return minimum start time for supplied channels. **Parameters** @@ -170,7 +174,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### ch\_stop\_time - + Return maximum start time for supplied channels. **Parameters** @@ -184,7 +188,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** @@ -204,7 +208,7 @@ python_api_name: qiskit.pulse.instructions.TimeBlockade ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -214,7 +218,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.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Constant.mdx index c7f1645c662..1dd0e1b2571 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Constant.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Constant.mdx @@ -18,19 +18,9 @@ f(x) = \text{amp}\times\exp\left(i\text{angle}\right) , 0 <= x < duration f(x) = 0 , elsewhere $$ - Create new pulse instance. - - **Parameters** - - * **duration** – Pulse length in terms of the sampling period dt. - * **amp** – The magnitude of the amplitude of the square envelope. - * **angle** – The angle of the complex amplitude of the square envelope. Default value 0. - * **name** – Display name for this pulse envelope. - * **limit\_amplitude** – If `True`, then limit the amplitude of the waveform to 1. The default is `True` and the amplitude is constrained to 1. - - **Returns** - - ScalableSymbolicPulse instance. + + The class `qiskit.pulse.library.symbolic_pulses.Constant` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + ## Attributes diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Cos.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Cos.mdx index ec84a8d4658..1fe02be6a2a 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Cos.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Cos.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: @@ -21,6 +21,10 @@ $$ where $\text{A} = \text{amp} \times\exp\left(i\times\text{angle}\right)$. + + The function `qiskit.pulse.library.symbolic_pulses.Cos()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")) – Pulse length in terms of the sampling period dt. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Drag.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Drag.mdx index 446aec006e4..ded25c132a7 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Drag.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Drag.mdx @@ -32,21 +32,9 @@ $$ 2. [*F. Motzoi, J. M. Gambetta, P. Rebentrost, and F. K. Wilhelm Phys. Rev. Lett. 103, 110501 – Published 8 September 2009.*](https://link.aps.org/doi/10.1103/PhysRevLett.103.110501) - Create new pulse instance. - - **Parameters** - - * **duration** – Pulse length in terms of the sampling period dt. - * **amp** – The magnitude of the amplitude of the DRAG envelope. - * **sigma** – A measure of how wide or narrow the Gaussian peak is; described mathematically in the class docstring. - * **beta** – The correction amplitude. - * **angle** – The angle of the complex amplitude of the DRAG envelope. Default value 0. - * **name** – Display name for this pulse envelope. - * **limit\_amplitude** – If `True`, then limit the amplitude of the waveform to 1. The default is `True` and the amplitude is constrained to 1. - - **Returns** - - ScalableSymbolicPulse instance. + + The class `qiskit.pulse.library.symbolic_pulses.Drag` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + ## Attributes diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Gaussian.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Gaussian.mdx index 3c7f4fd1473..613ea52e2b0 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Gaussian.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Gaussian.mdx @@ -22,20 +22,9 @@ $$ where $f'(x)$ is the gaussian waveform without lifting or amplitude scaling, and $\text{A} = \text{amp} \times \exp\left(i\times\text{angle}\right)$. - Create new pulse instance. - - **Parameters** - - * **duration** – Pulse length in terms of the sampling period dt. - * **amp** – The magnitude of the amplitude of the Gaussian envelope. - * **sigma** – A measure of how wide or narrow the Gaussian peak is; described mathematically in the class docstring. - * **angle** – The angle of the complex amplitude of the Gaussian envelope. Default value 0. - * **name** – Display name for this pulse envelope. - * **limit\_amplitude** – If `True`, then limit the amplitude of the waveform to 1. The default is `True` and the amplitude is constrained to 1. - - **Returns** - - ScalableSymbolicPulse instance. + + The class `qiskit.pulse.library.symbolic_pulses.Gaussian` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + ## Attributes diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianDeriv.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianDeriv.mdx index 2346a433c3d..4d134eed37f 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: @@ -22,6 +22,10 @@ $$ where $\text{A} = \text{amp} \times\exp\left(i\times\text{angle}\right)$, and $\mu=\text{duration}/2$. + + The function `qiskit.pulse.library.symbolic_pulses.GaussianDeriv()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| ParameterValueType*) – Pulse length in terms of the sampling period dt. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquare.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquare.mdx index 205e1c9ff87..0732ef9fee2 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquare.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquare.mdx @@ -45,26 +45,9 @@ $$ where $f'(x)$ is the gaussian square waveform without lifting or amplitude scaling, and $\text{A} = \text{amp} \times \exp\left(i\times\text{angle}\right)$. - Create new pulse instance. - - **Parameters** - - * **duration** – Pulse length in terms of the sampling period dt. - * **amp** – The magnitude of the amplitude of the Gaussian and square pulse. - * **sigma** – A measure of how wide or narrow the Gaussian risefall is; see the class docstring for more details. - * **width** – The duration of the embedded square pulse. - * **angle** – The angle of the complex amplitude of the pulse. Default value 0. - * **risefall\_sigma\_ratio** – The ratio of each risefall duration to sigma. - * **name** – Display name for this pulse envelope. - * **limit\_amplitude** – If `True`, then limit the amplitude of the waveform to 1. The default is `True` and the amplitude is constrained to 1. - - **Returns** - - ScalableSymbolicPulse instance. - - **Raises** - - [**PulseError**](pulse#qiskit.pulse.PulseError "qiskit.pulse.PulseError") – When width and risefall\_sigma\_ratio are both empty or both non-empty. + + The class `qiskit.pulse.library.symbolic_pulses.GaussianSquare` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + ## Attributes diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquareDrag.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.GaussianSquareDrag.mdx index 930c341d21f..f0351feba65 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 "qiskit.pulse.library.Drag") for its rise and fall instead of [`Gaussian`](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. @@ -61,6 +61,10 @@ $$ where $\text{A} = \text{amp} \times \exp\left(i\times\text{angle}\right)$. + + The function `qiskit.pulse.library.symbolic_pulses.GaussianSquareDrag()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")) – Pulse length in terms of the sampling period dt. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Sawtooth.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Sawtooth.mdx index c88940ed12b..a384e8884fd 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Sawtooth.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Sawtooth.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: @@ -22,6 +22,10 @@ $$ where $\text{A} = \text{amp} \times\exp\left(i\times\text{angle}\right)$, $g\left(x\right)=x\times\text{freq}+\frac{\text{phase}}{2\pi}$, and $\lfloor ...\rfloor$ is the floor operation. + + The function `qiskit.pulse.library.symbolic_pulses.Sawtooth()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")) – Pulse length in terms of the sampling period dt. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Sech.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Sech.mdx index d03b1d88161..84691ecb6be 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Sech.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Sech.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: @@ -30,6 +30,10 @@ $$ where $y^{*}$ is the value of $y$ at the endpoints (at $x=-1 and :math:`x=\text{duration}+1$). This shifts the endpoints value to zero, while also rescaling to preserve the amplitude at :math:text\{duration}/2\`\`. + + The function `qiskit.pulse.library.symbolic_pulses.Sech()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| ParameterValueType*) – Pulse length in terms of the sampling period dt. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.SechDeriv.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.SechDeriv.mdx index f652ad51047..c35ebe884f7 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: @@ -22,6 +22,10 @@ $$ where $\text{A} = \text{amp} \times\exp\left(i\times\text{angle}\right)$, $\mu=\text{duration}/2$, and $d/dx$ is a derivative with respect to x. + + The function `qiskit.pulse.library.symbolic_pulses.SechDeriv()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| ParameterValueType*) – Pulse length in terms of the sampling period dt. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Sin.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Sin.mdx index 7d8609a0df8..4784deb84e0 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Sin.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Sin.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: @@ -21,6 +21,10 @@ $$ where $\text{A} = \text{amp} \times\exp\left(i\times\text{angle}\right)$. + + The function `qiskit.pulse.library.symbolic_pulses.Sin()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")) – Pulse length in terms of the sampling period dt. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Square.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Square.mdx index f7493f3758a..201b29c9103 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Square.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Square.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: @@ -22,6 +22,10 @@ $$ where $\text{A} = \text{amp} \times\exp\left(i\times\text{angle}\right)$, and $\text{sign}$ is the sign function with the convention $\text{sign}\left(0\right)=1$. + + The function `qiskit.pulse.library.symbolic_pulses.Square()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| ParameterValueType*) – Pulse length in terms of the sampling period `dt`. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.SymbolicPulse.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.SymbolicPulse.mdx index ae0baa10711..b12ebdf1dca 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. @@ -111,6 +111,10 @@ $$ Create a parametric pulse. + + The class `qiskit.pulse.library.symbolic_pulses.SymbolicPulse` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **pulse\_type** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – Display name of this pulse shape. @@ -182,7 +186,7 @@ $$ ### draw - + Plot the interpolated envelope of pulse. **Parameters** @@ -218,7 +222,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: @@ -243,7 +247,7 @@ $$ ### is\_parameterized - + Return True iff the instruction is parameterized. **Return type** @@ -253,7 +257,7 @@ $$ ### validate\_parameters - + Validate parameters. **Raises** diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Triangle.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Triangle.mdx index 07cf861fb9a..288e9689f4f 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Triangle.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Triangle.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: @@ -21,6 +21,10 @@ $$ where $\text{A} = \text{amp} \times\exp\left(i\times\text{angle}\right)$, and $\text{sawtooth}\left(x\right)$ is a sawtooth wave with the same frequency as the triangle wave, but a phase shifted by $\frac{\pi}{2}$. + + The function `qiskit.pulse.library.symbolic_pulses.Triangle()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **duration** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *|*[*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.ParameterExpression")) – Pulse length in terms of the sampling period dt. diff --git a/docs/api/qiskit/dev/qiskit.pulse.library.Waveform.mdx b/docs/api/qiskit/dev/qiskit.pulse.library.Waveform.mdx index f11e6678526..f0bded2d391 100644 --- a/docs/api/qiskit/dev/qiskit.pulse.library.Waveform.mdx +++ b/docs/api/qiskit/dev/qiskit.pulse.library.Waveform.mdx @@ -8,13 +8,17 @@ 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. Create new sample pulse command. + + The class `qiskit.pulse.library.waveform.Waveform` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **Parameters** * **samples** (*np.ndarray |* [*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")*\[*[*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.13)")*]*) – Complex array of the samples in the pulse envelope. @@ -58,7 +62,7 @@ python_api_name: qiskit.pulse.library.Waveform ### draw - + Plot the interpolated envelope of pulse. **Parameters** @@ -94,7 +98,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 d4761d4d48d..2920340b518 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: @@ -43,6 +43,10 @@ $$ $$ + + The function `qiskit.pulse.library.symbolic_pulses.gaussian_square_echo()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics) + + **References** 1. [*Jurcevic, P., Javadi-Abhari, A., Bishop, L. S., Lauer, I., Bogorin, D. F., Brink, M., Capelluto, L., G\{“u}nl\{“u}k, O., Itoko, T., Kanazawa, N. & others Demonstration of quantum volume 64 on a superconducting quantum computing system. (Section V)*](https://iopscience.iop.org/article/10.1088/2058-9565/abe519) diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Operator.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Operator.mdx index 167d2a0f464..109233caaa0 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 @@ -116,7 +116,7 @@ $$ ### apply\_permutation - + Modifies operator’s data by composing it with a permutation. **Parameters** @@ -139,7 +139,7 @@ $$ ### compose - + Return the operator composition with another Operator. **Parameters** @@ -169,7 +169,7 @@ $$ ### conjugate - + Return the conjugate of the Operator. @@ -204,7 +204,7 @@ $$ ### draw - + Return a visualization of the Operator. **repr**: String of the state’s `__repr__`. @@ -235,7 +235,7 @@ $$ ### equiv - + Return True if operators are equivalent up to global phase. **Parameters** @@ -255,7 +255,7 @@ $$ ### expand - + Return the reverse-order tensor product with another Operator. **Parameters** @@ -275,7 +275,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. @@ -300,7 +300,7 @@ $$ ### from\_label - + Return a tensor product of single-qubit operators. **Parameters** @@ -332,7 +332,7 @@ $$ ### is\_unitary - + Return True if operator is a unitary matrix. @@ -344,12 +344,26 @@ $$ ### power - + Return the matrix power of the operator. + Non-integer powers of operators with an eigenvalue whose complex phase is $\pi$ have a branch cut in the complex plane, which makes the calculation of the principal root around this cut subject to precision / differences in BLAS implementation. For example, the square root of Pauli Y can return the $\pi/2$ or $\-pi/2$ Y rotation depending on whether the -1 eigenvalue is found as `complex(-1, tiny)` or `complex(-1, -tiny)`. Such eigenvalues are really common in quantum information, so this function first phase-rotates the input matrix to shift the branch cut to a far less common point. The underlying numerical precision issues around the branch-cut point remain, if an operator has an eigenvalue close to this phase. The magnitude of this rotation can be controlled with the `branch_cut_rotation` parameter. + + The choice of `branch_cut_rotation` affects the principal root that is found. For example, the square root of [`ZGate`](qiskit.circuit.library.ZGate "qiskit.circuit.library.ZGate") will be calculated as either [`SGate`](qiskit.circuit.library.SGate "qiskit.circuit.library.SGate") or [`SdgGate`](qiskit.circuit.library.SdgGate "qiskit.circuit.library.SdgGate") depending on which way the rotation is done: + + ```python + from qiskit.circuit import library + from qiskit.quantum_info import Operator + + z_op = Operator(library.ZGate()) + assert z_op.power(0.5, branch_cut_rotation=1e-3) == Operator(library.SGate()) + assert z_op.power(0.5, branch_cut_rotation=-1e-3) == Operator(library.SdgGate()) + ``` + **Parameters** - **n** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.13)")) – the power to raise the matrix to. + * **n** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.13)")) – the power to raise the matrix to. + * **branch\_cut\_rotation** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.13)")) – The rotation angle to apply to the branch cut in the complex plane. This shifts the branch cut away from the common point of $-1$, but can cause a different root to be selected as the principal root. The rotation is anticlockwise, following the standard convention for complex phase. **Returns** @@ -390,7 +404,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}$. @@ -406,7 +420,7 @@ $$ ### tensor - + Return the tensor product with another Operator. **Parameters** @@ -430,19 +444,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** @@ -452,7 +466,7 @@ $$ ### transpose - + Return the transpose of the Operator. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.Pauli.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.Pauli.mdx index 90c8a9bc54a..5951f243ebd 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.Pauli.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.Pauli.mdx @@ -271,7 +271,7 @@ $$ ### copy - + Make a deep copy of current operator. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.PauliList.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.PauliList.mdx index 3d779304f70..4bd29238620 100644 --- a/docs/api/qiskit/dev/qiskit.quantum_info.PauliList.mdx +++ b/docs/api/qiskit/dev/qiskit.quantum_info.PauliList.mdx @@ -297,7 +297,7 @@ python_api_name: qiskit.quantum_info.PauliList ### copy - + Make a deep copy of current operator. diff --git a/docs/api/qiskit/dev/qiskit.quantum_info.SparseObservable.mdx b/docs/api/qiskit/dev/qiskit.quantum_info.SparseObservable.mdx new file mode 100644 index 00000000000..ebb8cfebd22 --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.quantum_info.SparseObservable.mdx @@ -0,0 +1,762 @@ +--- +title: SparseObservable +description: API reference for qiskit.quantum_info.SparseObservable +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.quantum_info.SparseObservable +--- + +# SparseObservable + + + Bases: [`object`](https://docs.python.org/3/library/functions.html#object "(in Python v3.13)") + + An observable over Pauli bases that stores its data in a qubit-sparse format. + + ## Mathematics + + This observable represents a sum over strings of the Pauli operators and Pauli-eigenstate projectors, with each term weighted by some complex number. That is, the full observable is + +$$ +\text{\texttt{SparseObservable}} = \sum_i c_i \bigotimes_n A^{(n)}_i +$$ + + for complex numbers $c_i$ and single-qubit operators acting on qubit $n$ from a restricted alphabet $A^{(n)}_i$. The sum over $i$ is the sum of the individual terms, and the tensor product produces the operator strings. + + The alphabet of allowed single-qubit operators that the $A^{(n)}_i$ are drawn from is the Pauli operators and the Pauli-eigenstate projection operators. Explicitly, these are: + + + + | Label | Operator | Numeric value | [`BitTerm`](#qiskit.quantum_info.SparseObservable.BitTerm "qiskit.quantum_info.SparseObservable.BitTerm") attribute | + | ----- | ------------------------------------------------------------------------ | ------------- | ------------------------------------------------------------------------------------------------------------------- | + | `"I"` | $I$ (identity) | Not stored. | Not stored. | + | `"X"` | $X$ (Pauli X) | `0b0010` (2) | [`X`](#qiskit.quantum_info.SparseObservable.BitTerm.X "qiskit.quantum_info.SparseObservable.BitTerm.X") | + | `"Y"` | $Y$ (Pauli Y) | `0b0011` (3) | [`Y`](#qiskit.quantum_info.SparseObservable.BitTerm.Y "qiskit.quantum_info.SparseObservable.BitTerm.Y") | + | `"Z"` | $Z$ (Pauli Z) | `0b0001` (1) | [`Z`](#qiskit.quantum_info.SparseObservable.BitTerm.Z "qiskit.quantum_info.SparseObservable.BitTerm.Z") | + | `"+"` | $\lvert+\rangle\langle+\rvert$ (projector to positive eigenstate of X) | `0b1010` (10) | [`PLUS`](#qiskit.quantum_info.SparseObservable.BitTerm.PLUS "qiskit.quantum_info.SparseObservable.BitTerm.PLUS") | + | `"-"` | $\lvert-\rangle\langle-\rvert$ (projector to negative eigenstate of X) | `0b0110` (6) | [`MINUS`](#qiskit.quantum_info.SparseObservable.BitTerm.MINUS "qiskit.quantum_info.SparseObservable.BitTerm.MINUS") | + | `"r"` | $\lvert r\rangle\langle r\rvert$ (projector to positive eigenstate of Y) | `0b1011` (11) | [`RIGHT`](#qiskit.quantum_info.SparseObservable.BitTerm.RIGHT "qiskit.quantum_info.SparseObservable.BitTerm.RIGHT") | + | `"l"` | $\lvert l\rangle\langle l\rvert$ (projector to negative eigenstate of Y) | `0b0111` (7) | [`LEFT`](#qiskit.quantum_info.SparseObservable.BitTerm.LEFT "qiskit.quantum_info.SparseObservable.BitTerm.LEFT") | + | `"0"` | $\lvert0\rangle\langle0\rvert$ (projector to positive eigenstate of Z) | `0b1001` (9) | [`ZERO`](#qiskit.quantum_info.SparseObservable.BitTerm.ZERO "qiskit.quantum_info.SparseObservable.BitTerm.ZERO") | + | `"1"` | $\lvert1\rangle\langle1\rvert$ (projector to negative eigenstate of Z) | `0b0101` (5) | [`ONE`](#qiskit.quantum_info.SparseObservable.BitTerm.ONE "qiskit.quantum_info.SparseObservable.BitTerm.ONE") | + + The allowed alphabet forms an overcomplete basis of the operator space. This means that there is not a unique summation to represent a given observable. By comparison, [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp") uses a precise basis of the operator space, so (after combining terms of the same Pauli string, removing zeros, and sorting the terms to [some canonical order](#sparse-observable-canonical-order)) there is only one representation of any operator. + + [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") uses its particular overcomplete basis with the aim of making “efficiency of measurement” equivalent to “efficiency of representation”. For example, the observable ${\lvert0\rangle\langle0\rvert}^{\otimes n}$ can be efficiently measured on hardware with simple $Z$ measurements, but can only be represented by [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp") as ${(I + Z)}^{\otimes n}/2^n$, which requires $2^n$ stored terms. [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") requires only a single term to store this. + + The downside to this is that it is impractical to take an arbitrary matrix or [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp") and find the *best* [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") representation. You typically will want to construct a [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") directly, rather than trying to decompose into one. + + ## Representation + + The internal representation of a [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") stores only the non-identity qubit operators. This makes it significantly more efficient to represent observables such as $\sum_{n\in \text{qubits}} Z^{(n)}$; [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") requires an amount of memory linear in the total number of qubits, while [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp") scales quadratically. + + The terms are stored compressed, similar in spirit to the compressed sparse row format of sparse matrices. In this analogy, the terms of the sum are the “rows”, and the qubit terms are the “columns”, where an absent entry represents the identity rather than a zero. More explicitly, the representation is made up of four contiguous arrays: + + + + | Attribute | Length | Description | + | ------------------------------------------------------------------------------------------------------------------ | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | + | [`coeffs`](#qiskit.quantum_info.SparseObservable.coeffs "qiskit.quantum_info.SparseObservable.coeffs") | $t$ | The complex scalar multiplier for each term. | + | [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") | $s$ | Each of the non-identity single-qubit terms for all of the operators, in order. These correspond to the non-identity $A^{(n)}_i$ in the sum description, where the entries are stored in order of increasing $i$ first, and in order of increasing $n$ within each term. | + | [`indices`](#qiskit.quantum_info.SparseObservable.indices "qiskit.quantum_info.SparseObservable.indices") | $s$ | The corresponding qubit ($n$) for each of the operators in [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms"). [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") requires that this list is term-wise sorted, and algorithms can rely on this invariant being upheld. | + | [`boundaries`](#qiskit.quantum_info.SparseObservable.boundaries "qiskit.quantum_info.SparseObservable.boundaries") | $t+1$ | The indices that partition [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") and [`indices`](#qiskit.quantum_info.SparseObservable.indices "qiskit.quantum_info.SparseObservable.indices") into complete terms. For term number $i$, its complex coefficient is `coeffs[i]`, and its non-identity single-qubit operators and their corresponding qubits are the slice `boundaries[i] : boundaries[i+1]` into [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") and [`indices`](#qiskit.quantum_info.SparseObservable.indices "qiskit.quantum_info.SparseObservable.indices") respectively. [`boundaries`](#qiskit.quantum_info.SparseObservable.boundaries "qiskit.quantum_info.SparseObservable.boundaries") always has an explicit 0 as its first element. | + + The length parameter $t$ is the number of terms in the sum, and the parameter $s$ is the total number of non-identity single-qubit terms. + + As illustrative examples: + + * in the case of a zero operator, [`boundaries`](#qiskit.quantum_info.SparseObservable.boundaries "qiskit.quantum_info.SparseObservable.boundaries") is length 1 (a single 0) and all other vectors are empty. + * in the case of a fully simplified identity operator, [`boundaries`](#qiskit.quantum_info.SparseObservable.boundaries "qiskit.quantum_info.SparseObservable.boundaries") is `[0, 0]`, [`coeffs`](#qiskit.quantum_info.SparseObservable.coeffs "qiskit.quantum_info.SparseObservable.coeffs") has a single entry, and [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") and [`indices`](#qiskit.quantum_info.SparseObservable.indices "qiskit.quantum_info.SparseObservable.indices") are empty. + * for the operator $Z_2 Z_0 - X_3 Y_1$, [`boundaries`](#qiskit.quantum_info.SparseObservable.boundaries "qiskit.quantum_info.SparseObservable.boundaries") is `[0, 2, 4]`, [`coeffs`](#qiskit.quantum_info.SparseObservable.coeffs "qiskit.quantum_info.SparseObservable.coeffs") is `[1.0, -1.0]`, [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") is `[BitTerm.Z, BitTerm.Z, BitTerm.Y, BitTerm.X]` and [`indices`](#qiskit.quantum_info.SparseObservable.indices "qiskit.quantum_info.SparseObservable.indices") is `[0, 2, 1, 3]`. The operator might act on more than four qubits, depending on the [`num_qubits`](#qiskit.quantum_info.SparseObservable.num_qubits "qiskit.quantum_info.SparseObservable.num_qubits") parameter. The [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") are integer values, whose magic numbers can be accessed via the [`BitTerm`](#qiskit.quantum_info.SparseObservable.BitTerm "qiskit.quantum_info.SparseObservable.BitTerm") attribute class. Note that the single-bit terms and indices are sorted into termwise sorted order. This is a requirement of the class. + + These cases are not special, they’re fully consistent with the rules and should not need special handling. + + The scalar item of the [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") array is stored as a numeric byte. The numeric values are related to the symplectic Pauli representation that [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp") uses, and are accessible with named access by an enumeration: + + ### BitTerm + + + An [`IntEnum`](https://docs.python.org/3/library/enum.html#enum.IntEnum "(in Python v3.13)") that provides named access to the numerical values used to represent each of the single-qubit alphabet terms enumerated in [Alphabet of single-qubit terms used in SparseObservable](#sparse-observable-alphabet). + + This class is attached to [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"). Access it as [`SparseObservable.BitTerm`](#qiskit.quantum_info.SparseObservable.BitTerm "qiskit.quantum_info.SparseObservable.BitTerm"). If this is too much typing, and you are solely dealing with :class:¬SparseObservable\` objects and the `BitTerm` name is not ambiguous, you might want to shorten it as: + + ```python + >>> ops = SparseObservable.BitTerm + >>> assert ops.X is SparseObservable.BitTerm.X + ``` + + You can access all the values of the enumeration by either their full all-capitals name, or by their single-letter label. The single-letter labels are not generally valid Python identifiers, so you must use indexing notation to access them: + + ```python + >>> assert SparseObservable.BitTerm.ZERO is SparseObservable.BitTerm["0"] + ``` + + The numeric structure of these is that they are all four-bit values of which the low two bits are the (phase-less) symplectic representation of the Pauli operator related to the object, where the low bit denotes a contribution by $Z$ and the second lowest a contribution by $X$, while the upper two bits are `00` for a Pauli operator, `01` for the negative-eigenstate projector, and `10` for the positive-eigenstate projector. + + #### X + + + The Pauli $X$ operator. Uses the single-letter label `"X"`. + + + #### PLUS + + + The projector to the positive eigenstate of the $X$ operator: $\lvert+\rangle\langle+\rvert$. Uses the single-letter label `"+"`. + + + #### MINUS + + + The projector to the negative eigenstate of the $X$ operator: $\lvert-\rangle\langle-\rvert$. Uses the single-letter label `"-"`. + + + #### Y + + + The Pauli $Y$ operator. Uses the single-letter label `"Y"`. + + + #### RIGHT + + + The projector to the positive eigenstate of the $Y$ operator: $\lvert r\rangle\langle r\rvert$. Uses the single-letter label `"r"`. + + + #### LEFT + + + The projector to the negative eigenstate of the $Y$ operator: $\lvert l\rangle\langle l\rvert$. Uses the single-letter label `"l"`. + + + #### Z + + + The Pauli $Z$ operator. Uses the single-letter label `"Z"`. + + + #### ZERO + + + The projector to the positive eigenstate of the $Z$ operator: $\lvert0\rangle\langle0\rvert$. Uses the single-letter label `"0"`. + + + #### ONE + + + The projector to the negative eigenstate of the $Z$ operator: $\lvert1\rangle\langle1\rvert$. Uses the single-letter label `"1"`. + + + + Each of the array-like attributes behaves like a Python sequence. You can index and slice these with standard [`list`](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")-like semantics. Slicing an attribute returns a Numpy [`ndarray`](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray "(in NumPy v2.1)") containing a copy of the relevant data with the natural `dtype` of the field; this lets you easily do mathematics on the results, like bitwise operations on [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms"). You can assign to indices or slices of each of the attributes, but beware that you must uphold [the data coherence rules](#sparse-observable-arrays) while doing this. For example: + + ```python + >>> obs = SparseObservable.from_list([("XZY", 1.5j), ("+1r", -0.5)]) + >>> assert isinstance(obs.coeffs[:], np.ndarray) + >>> # Reduce all single-qubit terms to the relevant Pauli operator, if they are a projector. + >>> obs.bit_terms[:] = obs.bit_terms[:] & 0b00_11 + >>> assert obs == SparseObservable.from_list([("XZY", 1.5j), ("XZY", -0.5)]) + ``` + + + + ### Canonical ordering + + For any given mathematical observable, there are several ways of representing it with [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"). For example, the same set of single-bit terms and their corresponding indices might appear multiple times in the observable. Mathematically, this is equivalent to having only a single term with all the coefficients summed. Similarly, the terms of the sum in a [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") can be in any order while representing the same observable, since addition is commutative (although while floating-point addition is not associative, [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") makes no guarantees about the summation order). + + These two categories of representation degeneracy can cause the `==` operator to claim that two observables are not equal, despite representating the same object. In these cases, it can be convenient to define some *canonical form*, which allows observables to be compared structurally. + + You can put a [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") in canonical form by using the [`simplify()`](#qiskit.quantum_info.SparseObservable.simplify "qiskit.quantum_info.SparseObservable.simplify") method. The precise ordering of terms in canonical ordering is not specified, and may change between versions of Qiskit. Within the same version of Qiskit, however, you can compare two observables structurally by comparing their simplified forms. + + + If you wish to account for floating-point tolerance in the comparison, it is safest to use a recipe such as: + + ```python + def equivalent(left, right, tol): + return (left - right).simplify(tol) == SparseObservable.zero(left.num_qubits) + ``` + + + + The canonical form produced by [`simplify()`](#qiskit.quantum_info.SparseObservable.simplify "qiskit.quantum_info.SparseObservable.simplify") will still not universally detect all observables that are equivalent due to the over-complete basis alphabet; it is not computationally feasible to do this at scale. For example, on observable built from `+` and `-` components will not canonicalize to a single `X` term. + + + ## Construction + + [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") defines several constructors. The default constructor will attempt to delegate to one of the more specific constructors, based on the type of the input. You can always use the specific constructors to have more control over the construction. + + + + | Method | Summary | + | -------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | + | [`from_label()`](#qiskit.quantum_info.SparseObservable.from_label "qiskit.quantum_info.SparseObservable.from_label") | Convert a dense string label into a single-term [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"). | + | [`from_list()`](#qiskit.quantum_info.SparseObservable.from_list "qiskit.quantum_info.SparseObservable.from_list") | Sum a list of tuples of dense string labels and the associated coefficients into an observable. | + | [`from_sparse_list()`](#qiskit.quantum_info.SparseObservable.from_sparse_list "qiskit.quantum_info.SparseObservable.from_sparse_list") | Sum a list of tuples of sparse string labels, the qubits they apply to, and their coefficients into an observable. | + | [`from_pauli()`](#qiskit.quantum_info.SparseObservable.from_pauli "qiskit.quantum_info.SparseObservable.from_pauli") | Raise a single [`Pauli`](qiskit.quantum_info.Pauli "qiskit.quantum_info.Pauli") into a single-term [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"). | + | [`from_sparse_pauli_op()`](#qiskit.quantum_info.SparseObservable.from_sparse_pauli_op "qiskit.quantum_info.SparseObservable.from_sparse_pauli_op") | Raise a [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp") into a [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"). | + | [`from_raw_parts()`](#qiskit.quantum_info.SparseObservable.from_raw_parts "qiskit.quantum_info.SparseObservable.from_raw_parts") | Build the observable from [the raw data arrays](#sparse-observable-arrays). | + + ### \_\_new\_\_ + + + The default constructor of [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"). + + This delegates to one of [the explicit conversion-constructor methods](#sparse-observable-convert-constructors), based on the type of the `data` argument. If `num_qubits` is supplied and constructor implied by the type of `data` does not accept a number, the given integer must match the input. + + **Parameters** + + * **data** – The data type of the input. This can be another [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"), in which case the input is copied, a [`Pauli`](qiskit.quantum_info.Pauli "qiskit.quantum_info.Pauli") or [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp"), in which case [`from_pauli()`](#qiskit.quantum_info.SparseObservable.from_pauli "qiskit.quantum_info.SparseObservable.from_pauli") or [`from_sparse_pauli_op()`](#qiskit.quantum_info.SparseObservable.from_sparse_pauli_op "qiskit.quantum_info.SparseObservable.from_sparse_pauli_op") are called as appropriate, or it can be a list in a valid format for either [`from_list()`](#qiskit.quantum_info.SparseObservable.from_list "qiskit.quantum_info.SparseObservable.from_list") or [`from_sparse_list()`](#qiskit.quantum_info.SparseObservable.from_sparse_list "qiskit.quantum_info.SparseObservable.from_sparse_list"). + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*|None*) – Optional number of qubits for the operator. For most data inputs, this can be inferred and need not be passed. It is only necessary for empty lists or the sparse-list format. If given unnecessarily, it must match the data input. + + + In addition to the conversion-based constructors, there are also helper methods that construct special forms of observables. + + | Method | Summary | + | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- | + | [`zero()`](#qiskit.quantum_info.SparseObservable.zero "qiskit.quantum_info.SparseObservable.zero") | The zero operator on a given number of qubits. | + | [`identity()`](#qiskit.quantum_info.SparseObservable.identity "qiskit.quantum_info.SparseObservable.identity") | The identity operator on a given number of qubits. | + + ## Mathematical manipulation + + [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") supports the standard set of Python mathematical operators like other [`quantum_info`](quantum_info#module-qiskit.quantum_info "qiskit.quantum_info") operators. + + In basic arithmetic, you can: + + * add two observables using `+` + * subtract two observables using `-` + * multiply or divide by an [`int`](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)"), [`float`](https://docs.python.org/3/library/functions.html#float "(in Python v3.13)") or [`complex`](https://docs.python.org/3/library/functions.html#complex "(in Python v3.13)") using `*` and `/` + * negate all the coefficients in an observable with unary `-` + + Each of the basic binary arithmetic operators has a corresponding specialized in-place method, which mutates the left-hand side in-place. Using these is typically more efficient than the infix operators, especially for building an observable in a loop. + + The tensor product is calculated with [`tensor()`](#qiskit.quantum_info.SparseObservable.tensor "qiskit.quantum_info.SparseObservable.tensor") (for standard, juxtaposition ordering of Pauli labels) or [`expand()`](#qiskit.quantum_info.SparseObservable.expand "qiskit.quantum_info.SparseObservable.expand") (for the reverse order). The `^` operator is overloaded to be equivalent to [`tensor()`](#qiskit.quantum_info.SparseObservable.tensor "qiskit.quantum_info.SparseObservable.tensor"). + + + When using the binary operators `^` ([`tensor()`](#qiskit.quantum_info.SparseObservable.tensor "qiskit.quantum_info.SparseObservable.tensor")) and `&` (`compose()`), beware that [Python’s operator-precedence rules](https://docs.python.org/3/reference/expressions.html#operator-precedence) may cause the evaluation order to be different to your expectation. In particular, the operator `+` binds more tightly than `^` or `&`, just like `*` binds more tightly than `+`. + + When using the operators in mixed expressions, it is safest to use parentheses to group the operands of tensor products. + + + A [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") has a well-defined [`adjoint()`](#qiskit.quantum_info.SparseObservable.adjoint "qiskit.quantum_info.SparseObservable.adjoint"). The notions of scalar complex conjugation ([`conjugate()`](#qiskit.quantum_info.SparseObservable.conjugate "qiskit.quantum_info.SparseObservable.conjugate")) and real-value transposition ([`transpose()`](#qiskit.quantum_info.SparseObservable.transpose "qiskit.quantum_info.SparseObservable.transpose")) are defined analogously to the matrix representation of other Pauli operators in Qiskit. + + ### Efficiency notes + + Internally, [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") is in-place mutable, including using over-allocating growable vectors for extending the number of terms. This means that the cost of appending to an observable using `+=` is amortised linear in the total number of terms added, rather than the quadratic complexity that the binary `+` would require. + + Additions and subtractions are implemented by a term-stacking operation; there is no automatic “simplification” (summing of like terms), because the majority of additions to build up an observable generate only a small number of duplications, and like-term detection has additional costs. If this does not fit your use cases, you can either periodically call [`simplify()`](#qiskit.quantum_info.SparseObservable.simplify "qiskit.quantum_info.SparseObservable.simplify"), or discuss further APIs with us for better building of observables. + + ## Attributes + + #### bit\_terms + + + A flat list of single-qubit terms. This is more naturally a list of lists, but is stored flat for memory usage and locality reasons, with the sublists denoted by boundaries. + + + #### boundaries + + + Indices that partition [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") and [`indices`](#qiskit.quantum_info.SparseObservable.indices "qiskit.quantum_info.SparseObservable.indices") into sublists for each individual term in the sum. `boundaries[0] : boundaries[1]` is the range of indices into [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") and [`indices`](#qiskit.quantum_info.SparseObservable.indices "qiskit.quantum_info.SparseObservable.indices") that correspond to the first term of the sum. All unspecified qubit indices are implicitly the identity. This is one item longer than [`coeffs`](#qiskit.quantum_info.SparseObservable.coeffs "qiskit.quantum_info.SparseObservable.coeffs"), since `boundaries[0]` is always an explicit zero (for algorithmic ease). + + + #### coeffs + + + The coefficients of each abstract term in in the sum. This has as many elements as terms in the sum. + + + #### indices + + + A flat list of the qubit indices that the corresponding entries in [`bit_terms`](#qiskit.quantum_info.SparseObservable.bit_terms "qiskit.quantum_info.SparseObservable.bit_terms") act on. This list must always be term-wise sorted, where a term is a sublist as denoted by [`boundaries`](#qiskit.quantum_info.SparseObservable.boundaries "qiskit.quantum_info.SparseObservable.boundaries"). + + + If writing to this attribute from Python space, you *must* ensure that you only write in indices that are term-wise sorted. + + + + #### num\_qubits + + + The number of qubits the operator acts on. + + This is not inferable from any other shape or values, since identities are not stored explicitly. + + + #### num\_terms + + + The number of terms in the sum this operator is tracking. + + + ## Methods + + #### adjoint + + + Calculate the adjoint of this observable. + + This is well defined in the abstract mathematical sense. All the terms of the single-qubit alphabet are self-adjoint, so the result of this operation is the same observable, except its coefficients are all their complex conjugates. + + **Examples** + + ```python + >>> left = SparseObservable.from_list([("XY+-", 1j)]) + >>> right = SparseObservable.from_list([("XY+-", -1j)]) + >>> assert left.adjoint() == right + ``` + + + #### apply\_layout + + + Apply a transpiler layout to this [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"). + + Typically you will have defined your observable in terms of the virtual qubits of the circuits you will use to prepare states. After transpilation, the virtual qubits are mapped to particular physical qubits on a device, which may be wider than your circuit. That mapping can also change over the course of the circuit. This method transforms the input observable on virtual qubits to an observable that is suitable to apply immediately after the fully transpiled *physical* circuit. + + **Parameters** + + * **layout** ([*TranspileLayout*](qiskit.transpiler.TranspileLayout "qiskit.transpiler.TranspileLayout") *|*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")*\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*] | None*) – The layout to apply. Most uses of this function should pass the [`QuantumCircuit.layout`](qiskit.circuit.QuantumCircuit#layout "qiskit.circuit.QuantumCircuit.layout") field from a circuit that was transpiled for hardware. In addition, you can pass a list of new qubit indices. If given as explicitly `None`, no remapping is applied (but you can still use `num_qubits` to expand the observable). + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| None*) – The number of qubits to expand the observable to. If not supplied, the output will be as wide as the given [`TranspileLayout`](qiskit.transpiler.TranspileLayout "qiskit.transpiler.TranspileLayout"), or the same width as the input if the `layout` is given in another form. + + **Returns** + + A new [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") with the provided layout applied. + + + #### clear + + + Clear all the terms from this operator, making it equal to the zero operator again. + + This does not change the capacity of the internal allocations, so subsequent addition or substraction operations may not need to reallocate. + + **Examples** + + ```python + >>> obs = SparseObservable.from_list([("IX+-rl", 2.0), ("01YZII", -1j)]) + >>> obs.clear() + >>> assert obs == SparseObservable.zero(obs.num_qubits) + ``` + + + #### conjugate + + + Calculate the complex conjugation of this observable. + + This operation is defined in terms of the standard matrix conventions of Qiskit, in that the matrix form is taken to be in the \$Z\$ computational basis. The \$X\$- and \$Z\$-related alphabet terms are unaffected by the complex conjugation, but \$Y\$-related terms modify their alphabet terms. Precisely: + + * $Y$ conjguates to $-Y$ + * $\lvert r\rangle\langle r\rvert$ conjugates to $\lvert l\rangle\langle l\rvert$ + * $\lvert l\rangle\langle l\rvert$ conjugates to $\lvert r\rangle\langle r\rvert$ + + Additionally, all coefficients are conjugated. + + **Examples** + + ```python + >>> obs = SparseObservable([("III", 1j), ("Yrl", 0.5)]) + >>> assert obs.conjugate() == SparseObservable([("III", -1j), ("Ylr", -0.5)]) + ``` + + + #### copy + + + Get a copy of this observable. + + **Examples** + + ```python + >>> obs = SparseObservable.from_list([("IXZ+lr01", 2.5), ("ZXI-rl10", 0.5j)]) + >>> assert obs == obs.copy() + >>> assert obs is not obs.copy() + ``` + + + #### expand + + + Reverse-order tensor product. + + This is equivalent to `other.tensor(self)`, except that `other` will first be type-cast to [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") if it isn’t already one (by calling the default constructor). + + **Parameters** + + **other** – the observable to put on the left-hand side of the tensor product. + + **Examples** + + This is equivalent to [`tensor()`](#qiskit.quantum_info.SparseObservable.tensor "qiskit.quantum_info.SparseObservable.tensor") with the order of the arguments flipped: + + ```python + >>> left = SparseObservable.from_label("XYZ") + >>> right = SparseObservable.from_label("+-IIrl") + >>> assert left.tensor(right) == right.expand(left) + ``` + + + [`tensor()`](#qiskit.quantum_info.SparseObservable.tensor "qiskit.quantum_info.SparseObservable.tensor") + + > The same function with the order of arguments flipped. [`tensor()`](#qiskit.quantum_info.SparseObservable.tensor "qiskit.quantum_info.SparseObservable.tensor") is the more standard argument ordering, and matches Qiskit’s other conventions. + + + + #### from\_label + + + Construct a single-term observable from a dense string label. + + The resulting operator will have a coefficient of 1. The label must be a sequence of the alphabet `'IXYZ+-rl01'`. The label is interpreted analogously to a bitstring. In other words, the right-most letter is associated with qubit 0, and so on. This is the same as the labels for [`Pauli`](qiskit.quantum_info.Pauli "qiskit.quantum_info.Pauli") and [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp"). + + **Parameters** + + **label** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – the dense label. + + **Examples** + + ```python + >>> SparseObservable.from_label("IIII+ZI") + + >>> label = "IYXZI" + >>> pauli = Pauli(label) + >>> assert SparseObservable.from_label(label) == SparseObservable.from_pauli(pauli) + ``` + + + **[`from_list()`](#qiskit.quantum_info.SparseObservable.from_list "qiskit.quantum_info.SparseObservable.from_list")** + + A generalization of this method that constructs a sum operator from multiple labels and their corresponding coefficients. + + + + #### from\_list + + + Construct an observable from a list of dense labels and coefficients. + + This is analogous to [`SparsePauliOp.from_list()`](qiskit.quantum_info.SparsePauliOp#from_list "qiskit.quantum_info.SparsePauliOp.from_list"), except it uses [the extended alphabet](#sparse-observable-alphabet) of [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"). In this dense form, you must supply all identities explicitly in each label. + + The label must be a sequence of the alphabet `'IXYZ+-rl01'`. The label is interpreted analogously to a bitstring. In other words, the right-most letter is associated with qubit 0, and so on. This is the same as the labels for [`Pauli`](qiskit.quantum_info.Pauli "qiskit.quantum_info.Pauli") and [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp"). + + **Parameters** + + * **iter** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")*\[*[*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.13)")*\[*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")*,* [*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.13)")*]]*) – Pairs of labels and their associated coefficients to sum. The labels are interpreted the same way as in [`from_label()`](#qiskit.quantum_info.SparseObservable.from_label "qiskit.quantum_info.SparseObservable.from_label"). + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| None*) – It is not necessary to specify this if you are sure that `iter` is not an empty sequence, since it can be inferred from the label lengths. If `iter` may be empty, you must specify this argument to disambiguate how many qubits the observable is for. If this is given and `iter` is not empty, the value must match the label lengths. + + **Examples** + + Construct an observable from a list of labels of the same length: + + ```python + >>> SparseObservable.from_list([ + ... ("III++", 1.0), + ... ("II--I", 1.0j), + ... ("I++II", -0.5), + ... ("--III", -0.25j), + ... ]) + + ``` + + Use `num_qubits` to disambiguate potentially empty inputs: + + ```python + >>> SparseObservable.from_list([], num_qubits=10) + + ``` + + This method is equivalent to calls to [`from_sparse_list()`](#qiskit.quantum_info.SparseObservable.from_sparse_list "qiskit.quantum_info.SparseObservable.from_sparse_list") with the explicit qubit-arguments field set to decreasing integers: + + ```python + >>> labels = ["XY+Z", "rl01", "-lXZ"] + >>> coeffs = [1.5j, 2.0, -0.5] + >>> from_list = SparseObservable.from_list(list(zip(labels, coeffs))) + >>> from_sparse_list = SparseObservable.from_sparse_list([ + ... (label, (3, 2, 1, 0), coeff) + ... for label, coeff in zip(labels, coeffs) + ... ]) + >>> assert from_list == from_sparse_list + ``` + + + **[`from_label()`](#qiskit.quantum_info.SparseObservable.from_label "qiskit.quantum_info.SparseObservable.from_label")** + + A similar constructor, but takes only a single label and always has its coefficient set to `1.0`. + + **[`from_sparse_list()`](#qiskit.quantum_info.SparseObservable.from_sparse_list "qiskit.quantum_info.SparseObservable.from_sparse_list")** + + Construct the observable from a list of labels without explicit identities, but with the qubits each single-qubit term applies to listed explicitly. + + + + #### from\_pauli + + + Construct a [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") from a single [`Pauli`](qiskit.quantum_info.Pauli "qiskit.quantum_info.Pauli") instance. + + The output observable will have a single term, with a unitary coefficient dependent on the phase. + + **Parameters** + + **pauli** ([`Pauli`](qiskit.quantum_info.Pauli "qiskit.quantum_info.Pauli")) – the single Pauli to convert. + + **Examples** + + ```python + >>> label = "IYXZI" + >>> pauli = Pauli(label) + >>> SparseObservable.from_pauli(pauli) + + >>> assert SparseObservable.from_label(label) == SparseObservable.from_pauli(pauli) + ``` + + + #### from\_raw\_parts + + + Construct a [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") from raw Numpy arrays that match [the required data representation described in the class-level documentation](#sparse-observable-arrays). + + The data from each array is copied into fresh, growable Rust-space allocations. + + **Parameters** + + * **num\_qubits** – number of qubits in the observable. + + * **coeffs** – complex coefficients of each term of the observable. This should be a Numpy array with dtype [`complex128`](https://numpy.org/doc/stable/reference/arrays.scalars.html#numpy.complex128 "(in NumPy v2.1)"). + + * **bit\_terms** – flattened list of the single-qubit terms comprising all complete terms. This should be a Numpy array with dtype [`uint8`](https://numpy.org/doc/stable/reference/arrays.scalars.html#numpy.uint8 "(in NumPy v2.1)") (which is compatible with [`BitTerm`](#qiskit.quantum_info.SparseObservable.BitTerm "qiskit.quantum_info.SparseObservable.BitTerm")). + + * **indices** – flattened term-wise sorted list of the qubits each single-qubit term corresponds to. This should be a Numpy array with dtype [`uint32`](https://numpy.org/doc/stable/reference/arrays.scalars.html#numpy.uint32 "(in NumPy v2.1)"). + + * **boundaries** – the indices that partition `bit_terms` and `indices` into terms. This should be a Numpy array with dtype [`uintp`](https://numpy.org/doc/stable/reference/arrays.scalars.html#numpy.uintp "(in NumPy v2.1)"). + + * **check** – + + if `True` (the default), validate that the data satisfies all coherence guarantees. If `False`, no checks are done. + + + If `check=False`, the `bit_terms` absolutely *must* be all be valid values of [`SparseObservable.BitTerm`](#qiskit.quantum_info.SparseObservable.BitTerm "qiskit.quantum_info.SparseObservable.BitTerm"). If they are not, Rust-space undefined behavior may occur, entirely invalidating the program execution. + + + **Examples** + + Construct a sum of $Z$ on each individual qubit: + + ```python + >>> num_qubits = 100 + >>> terms = np.full((num_qubits,), SparseObservable.BitTerm.Z, dtype=np.uint8) + >>> indices = np.arange(num_qubits, dtype=np.uint32) + >>> coeffs = np.ones((num_qubits,), dtype=complex) + >>> boundaries = np.arange(num_qubits + 1, dtype=np.uintp) + >>> SparseObservable.from_raw_parts(num_qubits, coeffs, terms, indices, boundaries) + + ``` + + + #### from\_sparse\_list + + + Construct an observable from a list of labels, the qubits each item applies to, and the coefficient of the whole term. + + This is analogous to [`SparsePauliOp.from_sparse_list()`](qiskit.quantum_info.SparsePauliOp#from_sparse_list "qiskit.quantum_info.SparsePauliOp.from_sparse_list"), except it uses [the extended alphabet](#sparse-observable-alphabet) of [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"). + + The “labels” and “indices” fields of the triples are associated by zipping them together. For example, this means that a call to [`from_list()`](#qiskit.quantum_info.SparseObservable.from_list "qiskit.quantum_info.SparseObservable.from_list") can be converted to the form used by this method by setting the “indices” field of each triple to `(num_qubits-1, ..., 1, 0)`. + + **Parameters** + + * **iter** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")*\[*[*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.13)")*\[*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")*, Sequence\[*[*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")*],* [*complex*](https://docs.python.org/3/library/functions.html#complex "(in Python v3.13)")*]]*) – triples of labels, the qubits each single-qubit term applies to, and the coefficient of the entire term. + * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – the number of qubits in the operator. + + **Examples** + + Construct a simple operator: + + ```python + >>> SparseObservable.from_sparse_list( + ... [("ZX", (1, 4), 1.0), ("YY", (0, 3), 2j)], + ... num_qubits=5, + ... ) + + ``` + + Construct the identity observable (though really, just use [`identity()`](#qiskit.quantum_info.SparseObservable.identity "qiskit.quantum_info.SparseObservable.identity")): + + ```python + >>> SparseObservable.from_sparse_list([("", (), 1.0)], num_qubits=100) + + ``` + + This method can replicate the behavior of [`from_list()`](#qiskit.quantum_info.SparseObservable.from_list "qiskit.quantum_info.SparseObservable.from_list"), if the qubit-arguments field of the triple is set to decreasing integers: + + ```python + >>> labels = ["XY+Z", "rl01", "-lXZ"] + >>> coeffs = [1.5j, 2.0, -0.5] + >>> from_list = SparseObservable.from_list(list(zip(labels, coeffs))) + >>> from_sparse_list = SparseObservable.from_sparse_list([ + ... (label, (3, 2, 1, 0), coeff) + ... for label, coeff in zip(labels, coeffs) + ... ]) + >>> assert from_list == from_sparse_list + ``` + + + #### from\_sparse\_pauli\_op + + + Construct a [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") from a [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp") instance. + + This will be a largely direct translation of the [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp"); in particular, there is no on-the-fly summing of like terms, nor any attempt to refactorize sums of Pauli terms into equivalent projection operators. + + **Parameters** + + **op** ([`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp")) – the operator to convert. + + **Examples** + + ```python + >>> spo = SparsePauliOp.from_list([("III", 1.0), ("IIZ", 0.5), ("IZI", 0.5)]) + >>> SparseObservable.from_sparse_pauli_op(spo) + + ``` + + + #### identity + + + Get the identity operator over the given number of qubits. + + **Examples** + + Get the identity operator for 100 qubits: + + ```python + >>> SparseObservable.identity(100) + + ``` + + + #### simplify + + + Sum any like terms in this operator, removing them if the resulting complex coefficient has an absolute value within tolerance of zero. + + As a side effect, this sorts the operator into [canonical order](#sparse-observable-canonical-order). + + + When using this for equality comparisons, note that floating-point rounding and the non-associativity fo floating-point addition may cause non-zero coefficients of summed terms to compare unequal. To compare two observables up to a tolerance, it is safest to compare the canonicalized difference of the two observables to zero. + + + **Parameters** + + **tol** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.13)")) – after summing like terms, any coefficients whose absolute value is less than the given absolute tolerance will be suppressed from the output. + + **Examples** + + Using [`simplify()`](#qiskit.quantum_info.SparseObservable.simplify "qiskit.quantum_info.SparseObservable.simplify") to compare two operators that represent the same observable, but would compare unequal due to the structural tests by default: + + ```python + >>> base = SparseObservable.from_sparse_list([ + ... ("XZ", (2, 1), 1e-10), # value too small + ... ("+-", (3, 1), 2j), + ... ("+-", (3, 1), 2j), # can be combined with the above + ... ("01", (3, 1), 0.5), # out of order compared to `expected` + ... ], num_qubits=5) + >>> expected = SparseObservable.from_list([("I0I1I", 0.5), ("I+I-I", 4j)]) + >>> assert base != expected # non-canonical comparison + >>> assert base.simplify() == expected.simplify() + ``` + + Note that in the above example, the coefficients are chosen such that all floating-point calculations are exact, and there are no intermediate rounding or associativity concerns. If this cannot be guaranteed to be the case, the safer form is: + + ```python + >>> left = SparseObservable.from_list([("XYZ", 1.0/3.0)] * 3) # sums to 1.0 + >>> right = SparseObservable.from_list([("XYZ", 1.0/7.0)] * 7) # doesn't sum to 1.0 + >>> assert left.simplify() != right.simplify() + >>> assert (left - right).simplify() == SparseObservable.zero(left.num_qubits) + ``` + + + #### tensor + + + Tensor product of two observables. + + The bit ordering is defined such that the qubit indices of the argument will remain the same, and the indices of `self` will be offset by the number of qubits in `other`. This is the same convention as used by the rest of Qiskit’s [`quantum_info`](quantum_info#module-qiskit.quantum_info "qiskit.quantum_info") operators. + + This function is used for the infix `^` operator. If using this operator, beware that [Python’s operator-precedence rules](https://docs.python.org/3/reference/expressions.html#operator-precedence) may cause the evaluation order to be different to your expectation. In particular, the operator `+` binds more tightly than `^`, just like `*` binds more tightly than `+`. Use parentheses to fix the evaluation order, if needed. + + The argument will be cast to [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") using its default constructor, if it is not already in the correct form. + + **Parameters** + + **other** – the observable to put on the right-hand side of the tensor product. + + **Examples** + + The bit ordering of this is such that the tensor product of two observables made from a single label “looks like” an observable made by concatenating the two strings: + + ```python + >>> left = SparseObservable.from_label("XYZ") + >>> right = SparseObservable.from_label("+-IIrl") + >>> assert left.tensor(right) == SparseObservable.from_label("XYZ+-IIrl") + ``` + + You can also use the infix `^` operator for tensor products, which will similarly cast the right-hand side of the operation if it is not already a [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable"): + + ```python + >>> assert SparseObservable("rl") ^ Pauli("XYZ") == SparseObservable("rlXYZ") + ``` + + + [`expand()`](#qiskit.quantum_info.SparseObservable.expand "qiskit.quantum_info.SparseObservable.expand") + + > The same function, but with the order of arguments flipped. This can be useful if you like using the casting behavior for the argument, but you want your existing [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") to be on the right-hand side of the tensor ordering. + + + + #### transpose + + + Calculate the matrix transposition of this observable. + + This operation is defined in terms of the standard matrix conventions of Qiskit, in that the matrix form is taken to be in the \$Z\$ computational basis. The \$X\$- and \$Z\$-related alphabet terms are unaffected by the transposition, but \$Y\$-related terms modify their alphabet terms. Precisely: + + * $Y$ transposes to $-Y$ + * $\lvert r\rangle\langle r\rvert$ transposes to $\lvert l\rangle\langle l\rvert$ + * $\lvert l\rangle\langle l\rvert$ transposes to $\lvert r\rangle\langle r\rvert$ + + **Examples** + + ```python + >>> obs = SparseObservable([("III", 1j), ("Yrl", 0.5)]) + >>> assert obs.transpose() == SparseObservable([("III", 1j), ("Ylr", -0.5)]) + ``` + + + #### zero + + + Get the zero operator over the given number of qubits. + + The zero operator is the operator whose expectation value is zero for all quantum states. It has no terms. It is the identity element for addition of two [`SparseObservable`](#qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") instances; anything added to the zero operator is equal to itself. + + If you want the projector onto the all zeros state, use: + + ```python + >>> num_qubits = 10 + >>> all_zeros = SparseObservable.from_label("0" * num_qubits) + ``` + + **Examples** + + Get the zero operator for 100 qubits: + + ```python + >>> SparseObservable.zero(100) + + ``` + + + diff --git a/docs/api/qiskit/dev/qiskit.result.BaseReadoutMitigator.mdx b/docs/api/qiskit/dev/qiskit.result.BaseReadoutMitigator.mdx index f4ae024e3d2..1c5d64542d7 100644 --- a/docs/api/qiskit/dev/qiskit.result.BaseReadoutMitigator.mdx +++ b/docs/api/qiskit/dev/qiskit.result.BaseReadoutMitigator.mdx @@ -11,7 +11,7 @@ python_api_name: qiskit.result.BaseReadoutMitigator Bases: [`ABC`](https://docs.python.org/3/library/abc.html#abc.ABC "(in Python v3.13)") - Base readout error mitigator class. + This class is DEPRECATED. Base readout error mitigator class. ## Methods diff --git a/docs/api/qiskit/dev/qiskit.result.CorrelatedReadoutMitigator.mdx b/docs/api/qiskit/dev/qiskit.result.CorrelatedReadoutMitigator.mdx index 0108b72d335..2d206f5e7f6 100644 --- a/docs/api/qiskit/dev/qiskit.result.CorrelatedReadoutMitigator.mdx +++ b/docs/api/qiskit/dev/qiskit.result.CorrelatedReadoutMitigator.mdx @@ -8,15 +8,19 @@ python_api_name: qiskit.result.CorrelatedReadoutMitigator # CorrelatedReadoutMitigator - + Bases: [`BaseReadoutMitigator`](qiskit.result.BaseReadoutMitigator "qiskit.result.mitigation.base_readout_mitigator.BaseReadoutMitigator") - N-qubit readout error mitigator. + This class is DEPRECATED. N-qubit readout error mitigator. Mitigates [`expectation_value()`](#qiskit.result.CorrelatedReadoutMitigator.expectation_value "qiskit.result.CorrelatedReadoutMitigator.expectation_value") and [`quasi_probabilities()`](#qiskit.result.CorrelatedReadoutMitigator.quasi_probabilities "qiskit.result.CorrelatedReadoutMitigator.quasi_probabilities"). The mitigation\_matrix should be calibrated using qiskit experiments. This mitigation method should be used in case the readout errors of the qubits are assumed to be correlated. The mitigation\_matrix of *N* qubits is of size $2^N x 2^N$ so the mitigation complexity is $O(4^N)$. Initialize a CorrelatedReadoutMitigator + + The class `qiskit.result.mitigation.correlated_readout_mitigator.CorrelatedReadoutMitigator` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The qiskit.result.mitigation module is deprecated in favor of the [https://github.com/Qiskit/qiskit-addon-mthree](https://github.com/Qiskit/qiskit-addon-mthree) package. + + **Parameters** * **assignment\_matrix** ([*ndarray*](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray "(in NumPy v2.1)")) – readout error assignment matrix. @@ -44,7 +48,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 +68,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 +96,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 +116,7 @@ python_api_name: qiskit.result.CorrelatedReadoutMitigator ### quasi\_probabilities - + Compute mitigated quasi probabilities value. **Parameters** @@ -135,7 +139,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.LocalReadoutMitigator.mdx b/docs/api/qiskit/dev/qiskit.result.LocalReadoutMitigator.mdx index c6a97ca137d..d660bdb4bcc 100644 --- a/docs/api/qiskit/dev/qiskit.result.LocalReadoutMitigator.mdx +++ b/docs/api/qiskit/dev/qiskit.result.LocalReadoutMitigator.mdx @@ -8,15 +8,19 @@ 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. + This class is DEPRECATED. 1-qubit tensor product readout error mitigator. Mitigates [`expectation_value()`](#qiskit.result.LocalReadoutMitigator.expectation_value "qiskit.result.LocalReadoutMitigator.expectation_value") and [`quasi_probabilities()`](#qiskit.result.LocalReadoutMitigator.quasi_probabilities "qiskit.result.LocalReadoutMitigator.quasi_probabilities"). The mitigator should either be calibrated using qiskit experiments, or calculated directly from the backend properties. This mitigation method should be used in case the readout errors of the qubits are assumed to be uncorrelated. For *N* qubits there are *N* mitigation matrices, each of size $2 x 2$ and the mitigation complexity is $O(2^N)$, so it is more efficient than the [`CorrelatedReadoutMitigator`](qiskit.result.CorrelatedReadoutMitigator "qiskit.result.CorrelatedReadoutMitigator") class. Initialize a LocalReadoutMitigator + + The class `qiskit.result.mitigation.local_readout_mitigator.LocalReadoutMitigator` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The qiskit.result.mitigation module is deprecated in favor of the [https://github.com/Qiskit/qiskit-addon-mthree](https://github.com/Qiskit/qiskit-addon-mthree) package. + + **Parameters** * **assignment\_matrices** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*ndarray*](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray "(in NumPy v2.1)")*] | None*) – Optional, list of single-qubit readout error assignment matrices. @@ -45,7 +49,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 +69,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 +97,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 +117,7 @@ python_api_name: qiskit.result.LocalReadoutMitigator ### quasi\_probabilities - + Compute mitigated quasi probabilities value. **Parameters** @@ -140,7 +144,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.synthesis.unitary.aqc.ApproximateCircuit.mdx b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximateCircuit.mdx index 65465f74bb8..63345c829f0 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximateCircuit.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.ApproximateCircuit.mdx @@ -32,6 +32,10 @@ python_api_name: qiskit.synthesis.unitary.aqc.ApproximateCircuit Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits 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 38ac8af2aba..e8148553124 100644 --- a/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.mdx +++ b/docs/api/qiskit/dev/qiskit.synthesis.unitary.aqc.CNOTUnitCircuit.mdx @@ -38,6 +38,10 @@ python_api_name: qiskit.synthesis.unitary.aqc.CNOTUnitCircuit Return calibration dictionary. The custom pulse definition of a given gate is of the form `{'gate_name': {(qubits, params): schedule}}` + + + The property `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.circuit.quantumcircuit.QuantumCircuit.calibrations` will have no alternative in Qiskit. + ### clbits diff --git a/docs/api/qiskit/dev/qiskit.transpiler.InstructionProperties.mdx b/docs/api/qiskit/dev/qiskit.transpiler.InstructionProperties.mdx index e47355da2ce..1e74945e710 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: `BaseInstructionProperties` A representation of the properties of a gate implementation. @@ -17,11 +17,15 @@ python_api_name: qiskit.transpiler.InstructionProperties Create a new `InstructionProperties` object + + `qiskit.transpiler.target.InstructionProperties.__init__()`’s argument `calibration` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and this argument uses a dependency on the package. + + **Parameters** * **duration** – The duration, in seconds, of the instruction on the specified set of qubits * **error** – The average error rate for the instruction on the specified set of qubits. - * **calibration** – The pulse representation of the instruction. + * **calibration** – DEPRECATED. The pulse representation of the instruction. ## Attributes @@ -37,6 +41,10 @@ python_api_name: qiskit.transpiler.InstructionProperties If you are a backend provider who provides a default calibration data that is not needed to be attached to the transpiled quantum circuit, you can directly set `CalibrationEntry` instance to this attribute, in which you should set `user_provided=False` when you define calibration data for the entry. End users can still intentionally utilize the calibration data, for example, to run pulse-level simulation of the circuit. However, such entry doesn’t appear in the wire format, and backend must use own definition to compile the circuit down to the execution format. + + + The property `qiskit.transpiler.target.InstructionProperties.calibration` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.target.InstructionProperties.calibration` will have no alternative in Qiskit. + ### duration diff --git a/docs/api/qiskit/dev/qiskit.transpiler.Target.mdx b/docs/api/qiskit/dev/qiskit.transpiler.Target.mdx index 3cc93515e98..080057ce8ef 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: `BaseTarget` 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,19 +242,23 @@ 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"). This constructor will use the input from `basis_gates`, `num_qubits`, and `coupling_map` to build a base model of the backend and the `instruction_durations`, `backend_properties`, and `inst_map` inputs are then queried (in that order) based on that model to look up the properties of each instruction and qubit. If there is an inconsistency between the inputs any extra or conflicting information present in `instruction_durations`, `backend_properties`, or `inst_map` will be ignored. + + `qiskit.transpiler.target.Target.from_configuration()`’s argument `inst_map` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and this argument uses a dependency on the package. + + **Parameters** * **basis\_gates** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")*\[*[*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")*]*) – The list of basis gate names for the backend. For the target to be created these names must either be in the output from `get_standard_gate_name_mapping()` or present in the specified `custom_name_mapping` argument. * **num\_qubits** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)") *| None*) – The number of qubits supported on the backend. * **coupling\_map** ([*CouplingMap*](qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap") *| None*) – The coupling map representing connectivity constraints on the backend. If specified all gates from `basis_gates` will be supported on all qubits (or pairs of qubits). - * **inst\_map** ([*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") *| None*) – The instruction schedule map representing the pulse [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") definitions for each instruction. If this is specified `coupling_map` must be specified. The `coupling_map` is used as the source of truth for connectivity and if `inst_map` is used the schedule is looked up based on the instructions from the pair of `basis_gates` and `coupling_map`. If you want to define a custom gate for a particular qubit or qubit pair, you can manually build [`Target`](#qiskit.transpiler.Target "qiskit.transpiler.Target"). + * **inst\_map** ([*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap") *| None*) – DEPRECATED. The instruction schedule map representing the pulse [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule") definitions for each instruction. If this is specified `coupling_map` must be specified. The `coupling_map` is used as the source of truth for connectivity and if `inst_map` is used the schedule is looked up based on the instructions from the pair of `basis_gates` and `coupling_map`. If you want to define a custom gate for a particular qubit or qubit pair, you can manually build [`Target`](#qiskit.transpiler.Target "qiskit.transpiler.Target"). * **backend\_properties** ([*BackendProperties*](qiskit.providers.models.BackendProperties "qiskit.providers.models.BackendProperties") *| None*) – The [`BackendProperties`](qiskit.providers.models.BackendProperties "qiskit.providers.models.BackendProperties") object which is used for instruction properties and qubit properties. If specified and instruction properties are intended to be used then the `coupling_map` argument must be specified. This is only used to lookup error rates and durations (unless `instruction_durations` is specified which would take precedence) for instructions specified via `coupling_map` and `basis_gates`. * **instruction\_durations** ([*InstructionDurations*](qiskit.transpiler.InstructionDurations "qiskit.transpiler.InstructionDurations") *| None*) – Optional instruction durations for instructions. If specified it will take priority for setting the `duration` field in the [`InstructionProperties`](qiskit.transpiler.InstructionProperties "qiskit.transpiler.InstructionProperties") objects for the instructions in the target. * **concurrent\_measurements** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")) – A list of sets of qubits that must be measured together. This must be provided as a nested list like `[[0, 1], [2, 3, 4]]`. @@ -279,17 +283,21 @@ python_api_name: qiskit.transpiler.Target ### get - + Gets an item from the Target. If not found return a provided default or None. ### 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. + + The method `qiskit.transpiler.target.Target.get_calibration()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.target.Target.get_calibration()` will have no alternative in Qiskit. + + **Parameters** * **operation\_name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – The name of the operation for the instruction. @@ -328,9 +336,13 @@ python_api_name: qiskit.transpiler.Target ### has\_calibration - + Return whether the instruction (operation + qubits) defines a calibration. + + The method `qiskit.transpiler.target.Target.has_calibration()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.target.Target.has_calibration()` will have no alternative in Qiskit. + + **Parameters** * **operation\_name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – The name of the operation for the instruction. @@ -347,7 +359,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: @@ -385,9 +397,13 @@ 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. + + The method `qiskit.transpiler.target.Target.instruction_schedule_map()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.target.Target.instruction_schedule_map()` will have no alternative in Qiskit. + + **Returns** The instruction schedule map for the instructions in this target with a pulse schedule defined. @@ -438,13 +454,13 @@ python_api_name: qiskit.transpiler.Target ### items - + Returns pairs of Gate names and its property map (str, dict\[tuple, InstructionProperties]) ### keys - + Return the keys (operation\_names) of the Target @@ -512,7 +528,7 @@ python_api_name: qiskit.transpiler.Target ### qargs\_for\_operation\_name - + Get the qargs for a given operation name **Parameters** @@ -530,7 +546,7 @@ python_api_name: qiskit.transpiler.Target ### timing\_constraints - + Get an `TimingConstraints` object from the target **Returns** @@ -544,11 +560,15 @@ 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. + + The method `qiskit.transpiler.target.Target.update_from_instruction_schedule_map()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.target.Target.update_from_instruction_schedule_map()` will have no alternative in Qiskit. + + **Parameters** * **inst\_map** ([*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap")) – The instruction @@ -576,7 +596,7 @@ python_api_name: qiskit.transpiler.Target ### update\_instruction\_properties - + Update the property object for an instruction qarg pair already in the Target **Parameters** @@ -592,7 +612,7 @@ python_api_name: qiskit.transpiler.Target ### values - + Return the Property Map (qargs -> InstructionProperties) of every instruction in the Target diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.BasisTranslator.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.BasisTranslator.mdx index a645ab67239..feece377fe9 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. @@ -120,7 +120,7 @@ python_api_name: qiskit.transpiler.passes.BasisTranslator ### run - + Translate an input DAGCircuit to the target basis. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ConvertConditionsToIfOps.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ConvertConditionsToIfOps.mdx index e5c4ab9a95e..a7ffc2e3aab 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.ConvertConditionsToIfOps.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.ConvertConditionsToIfOps.mdx @@ -8,13 +8,17 @@ 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`. This is a simple pass aimed at easing the conversion from the old style of using [`InstructionSet.c_if()`](qiskit.circuit.InstructionSet#c_if "qiskit.circuit.InstructionSet.c_if") into the new style of using more complex conditional logic. + + The class `qiskit.transpiler.passes.utils.convert_conditions_to_if_ops.ConvertConditionsToIfOps` is deprecated as of qiskit 1.3.0. It will be removed in Qiskit 2.0.0. + + ## Attributes ### is\_analysis\_pass @@ -67,7 +71,7 @@ python_api_name: qiskit.transpiler.passes.ConvertConditionsToIfOps ### run - + Run a pass on the DAGCircuit. This is implemented by the pass developer. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.DynamicalDecoupling.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.DynamicalDecoupling.mdx index 17c89ca5ee5..8440cad6a0a 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. @@ -148,7 +148,7 @@ python_api_name: qiskit.transpiler.passes.DynamicalDecoupling ### run - + Run the DynamicalDecoupling pass on dag. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.EchoRZXWeylDecomposition.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.EchoRZXWeylDecomposition.mdx index 27c89671a00..5bf02fd9294 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. @@ -17,6 +17,10 @@ python_api_name: qiskit.transpiler.passes.EchoRZXWeylDecomposition EchoRZXWeylDecomposition pass. + + The class `qiskit.transpiler.passes.optimization.echo_rzx_weyl_decomposition.EchoRZXWeylDecomposition` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.passes.optimization.echo_rzx_weyl_decomposition.EchoRZXWeylDecomposition` will have no alternative in Qiskit. + + **Parameters** * **instruction\_schedule\_map** ([*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap")) – the mapping from circuit [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") names and arguments to [`Schedule`](qiskit.pulse.Schedule "qiskit.pulse.Schedule")s. @@ -74,7 +78,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. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.HighLevelSynthesis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.HighLevelSynthesis.mdx index 98108f4ceb3..bd3d8c7e691 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.HighLevelSynthesis.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.HighLevelSynthesis.mdx @@ -8,7 +8,7 @@ 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. @@ -106,7 +106,7 @@ python_api_name: qiskit.transpiler.passes.HighLevelSynthesis ### run - + Run the HighLevelSynthesis pass on dag. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDynamicalDecoupling.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.PadDynamicalDecoupling.mdx index 49267e67bd4..f6349200e10 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. diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.PulseGates.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.PulseGates.mdx index 1f105f42594..4102e63f862 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. @@ -27,6 +27,10 @@ python_api_name: qiskit.transpiler.passes.PulseGates Create new pass. + + The class `qiskit.transpiler.passes.calibration.pulse_gate.PulseGates` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.passes.calibration.pulse_gate.PulseGates` will have no alternative in Qiskit. + + **Parameters** * **inst\_map** – Instruction schedule map that user may override. @@ -74,7 +78,7 @@ python_api_name: qiskit.transpiler.passes.PulseGates ### get\_calibration - + Gets the calibrated schedule for the given instruction and qubits. **Parameters** @@ -125,7 +129,7 @@ python_api_name: qiskit.transpiler.passes.PulseGates ### supported - + Determine if a given node supports the calibration. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RXCalibrationBuilder.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RXCalibrationBuilder.mdx index 7a0e536c0aa..5e2bd26494b 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. @@ -58,6 +58,10 @@ python_api_name: qiskit.transpiler.passes.RXCalibrationBuilder Bootstrap single-pulse RX gate calibrations from the (hardware-calibrated) SX gate calibration. + + The class `qiskit.transpiler.passes.calibration.rx_builder.RXCalibrationBuilder` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.passes.calibration.rx_builder.RXCalibrationBuilder` will have no alternative in Qiskit. + + **Parameters** * **target** ([*Target*](qiskit.transpiler.Target "qiskit.transpiler.Target")) – Should contain a SX calibration that will be @@ -105,7 +109,7 @@ python_api_name: qiskit.transpiler.passes.RXCalibrationBuilder ### get\_calibration - + Generate RX calibration for the rotation angle specified in node\_op. **Return type** @@ -143,7 +147,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** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilder.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilder.mdx index 728e56c885e..27496802bf5 100644 --- a/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilder.mdx +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilder.mdx @@ -8,13 +8,17 @@ 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). Initializes a RZXGate calibration builder. + + The class `qiskit.transpiler.passes.calibration.rzx_builder.RZXCalibrationBuilder` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.passes.calibration.rzx_builder.RZXCalibrationBuilder` will have no alternative in Qiskit. + + **Parameters** * **instruction\_schedule\_map** – The `InstructionScheduleMap` object representing the default pulse calibrations for the target backend @@ -67,7 +71,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### get\_calibration - + Builds the calibration schedule for the RZXGate(theta) with echos. **Parameters** @@ -102,7 +106,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### rescale\_cr\_inst - + A builder macro to play stretched pulse. **Parameters** @@ -144,7 +148,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilder ### supported - + Determine if a given node supports the calibration. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho.mdx index aa53c0ad22b..b1d556b1e50 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. @@ -17,6 +17,10 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho Initializes a RZXGate calibration builder. + + The class `qiskit.transpiler.passes.calibration.rzx_builder.RZXCalibrationBuilder` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.passes.calibration.rzx_builder.RZXCalibrationBuilder` will have no alternative in Qiskit. + + **Parameters** * **instruction\_schedule\_map** – The `InstructionScheduleMap` object representing the default pulse calibrations for the target backend @@ -69,7 +73,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### get\_calibration - + Builds the calibration schedule for the RZXGate(theta) without echos. **Parameters** @@ -104,7 +108,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### rescale\_cr\_inst - + A builder macro to play stretched pulse. **Parameters** @@ -146,7 +150,7 @@ python_api_name: qiskit.transpiler.passes.RZXCalibrationBuilderNoEcho ### supported - + Determine if a given node supports the calibration. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveIdentityEquivalent.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveIdentityEquivalent.mdx new file mode 100644 index 00000000000..41480e9aa69 --- /dev/null +++ b/docs/api/qiskit/dev/qiskit.transpiler.passes.RemoveIdentityEquivalent.mdx @@ -0,0 +1,122 @@ +--- +title: RemoveIdentityEquivalent +description: API reference for qiskit.transpiler.passes.RemoveIdentityEquivalent +in_page_toc_min_heading_level: 1 +python_api_type: class +python_api_name: qiskit.transpiler.passes.RemoveIdentityEquivalent +--- + +# RemoveIdentityEquivalent + + + Bases: [`TransformationPass`](qiskit.transpiler.TransformationPass "qiskit.transpiler.basepasses.TransformationPass") + + Remove gates with negligible effects. + + Removes gates whose effect is close to an identity operation, up to the specified tolerance. Zero qubit gates such as [`GlobalPhaseGate`](qiskit.circuit.library.GlobalPhaseGate "qiskit.circuit.library.GlobalPhaseGate") are not considered by this pass. + + For a cutoff fidelity $f$, this pass removes gates whose average gate fidelity with respect to the identity is below $f$. Concretely, a gate $G$ is removed if $\bar F < f$ where + +$$ +\bar{F} = \frac{1 + F_{\text{process}}{1 + d} + +F_{\text{process}} = \frac{|\mathrm{Tr}(G)|^2}{d^2} +$$ + + where $d = 2^n$ is the dimension of the gate for $n$ qubits. + + Initialize the transpiler pass. + + **Parameters** + + * **approximation\_degree** – The degree to approximate for the equivalence check. This can be a floating point value between 0 and 1, or `None`. If the value is 1 this does not approximate above floating point precision. For a value \< 1 this is used as a scaling factor for the cutoff fidelity. If the value is `None` this approximates up to the fidelity for the gate specified in `target`. + * **target** – If `approximation_degree` is set to `None` and a [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") is provided for this field the tolerance for determining whether an operation is equivalent to identity will be set to the reported error rate in the target. If `approximation_degree` (the default) this has no effect, if `approximation_degree=None` it uses the error rate specified in the `Target` for the gate being evaluated, and a numeric value other than 1 with `target` set is used as a scaling factor of the target’s error rate. + + ## 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.13)")) – 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.13)") *| 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.13)")\[[*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.13)"), [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.13)") + + + ### run + + + Run a pass on the DAGCircuit. This is implemented by the pass developer. + + **Parameters** + + **dag** ([*DAGCircuit*](qiskit.dagcircuit.DAGCircuit "qiskit._accelerate.circuit.DAGCircuit")) – the dag on which the pass is run. + + **Raises** + + [**NotImplementedError**](https://docs.python.org/3/library/exceptions.html#NotImplementedError "(in Python v3.13)") – when this is left unimplemented for a pass. + + **Return type** + + [*DAGCircuit*](qiskit.dagcircuit.DAGCircuit "qiskit._accelerate.circuit.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.TimeUnitConversion.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.TimeUnitConversion.mdx index f9517878384..efdac25c0f6 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. @@ -80,7 +80,7 @@ python_api_name: qiskit.transpiler.passes.TimeUnitConversion ### run - + Run the TimeUnitAnalysis pass on dag. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.UnitarySynthesis.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.UnitarySynthesis.mdx index afbe3a46cd1..a84f5c577fa 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. @@ -87,7 +87,7 @@ python_api_name: qiskit.transpiler.passes.UnitarySynthesis ### run - + Run the UnitarySynthesis pass on `dag`. **Parameters** diff --git a/docs/api/qiskit/dev/qiskit.transpiler.passes.ValidatePulseGates.mdx b/docs/api/qiskit/dev/qiskit.transpiler.passes.ValidatePulseGates.mdx index 5c49b6199fd..054f79d9c0f 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. @@ -23,6 +23,10 @@ python_api_name: qiskit.transpiler.passes.ValidatePulseGates Create new pass. + + The class `qiskit.transpiler.passes.scheduling.alignments.pulse_gate_validation.ValidatePulseGates` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that once removed, `qiskit.transpiler.passes.scheduling.alignments.pulse_gate_validation.ValidatePulseGates` will have no alternative in Qiskit. + + **Parameters** * **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. @@ -81,7 +85,7 @@ python_api_name: qiskit.transpiler.passes.ValidatePulseGates ### run - + Run the pulse gate validation attached to `dag`. **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 c465476c512..f8008139e3e 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.visualization.dag_drawer.mdx b/docs/api/qiskit/dev/qiskit.visualization.dag_drawer.mdx index bc240b45bf3..74f295a2b9a 100644 --- a/docs/api/qiskit/dev/qiskit.visualization.dag_drawer.mdx +++ b/docs/api/qiskit/dev/qiskit.visualization.dag_drawer.mdx @@ -17,7 +17,7 @@ python_api_name: qiskit.visualization.dag_drawer **Parameters** - * **dag** ([*DAGCircuit*](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit")) – The dag to draw. + * **dag** ([*DAGCircuit*](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") *or*[*DAGDependency*](qiskit.dagcircuit.DAGDependency "qiskit.dagcircuit.DAGDependency")) – The dag to draw. * **scale** ([*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.13)")) – scaling factor * **filename** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – file path to save image to (format inferred from name) * **style** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – ‘plain’: B\&W graph ‘color’ (default): color input/output/op nodes diff --git a/docs/api/qiskit/dev/qpy.mdx b/docs/api/qiskit/dev/qpy.mdx index fc4d9ab1a58..f30c6597c52 100644 --- a/docs/api/qiskit/dev/qpy.mdx +++ b/docs/api/qiskit/dev/qpy.mdx @@ -55,7 +55,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: @@ -100,7 +100,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. @@ -135,9 +135,13 @@ and then loading that file will return a list with all the circuits Which will save the qpy serialized circuit to the provided file. + + Passing ScheduleBlock to programs is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and this argument uses a dependency on the package. + + **Parameters** - * **programs** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") *|*[*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock")*] |* [*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") *|*[*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock")) – QPY supported object(s) to store in the specified file like object. QPY supports [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") and [`ScheduleBlock`](qiskit.pulse.ScheduleBlock "qiskit.pulse.ScheduleBlock"). Different data types must be separately serialized. + * **programs** ([*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.13)")*\[*[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") *|*[*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock")*] |* [*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") *|*[*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock")) – QPY supported object(s) to store in the specified file like object. QPY supports [`QuantumCircuit`](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit") and [`ScheduleBlock`](qiskit.pulse.ScheduleBlock "qiskit.pulse.ScheduleBlock"). Different data types must be separately serialized. Support for [`ScheduleBlock`](qiskit.pulse.ScheduleBlock "qiskit.pulse.ScheduleBlock") is deprecated since Qiskit 1.3.0. * **file\_obj** ([*BinaryIO*](https://docs.python.org/3/library/typing.html#typing.BinaryIO "(in Python v3.13)")) – The file like object to write the QPY data too diff --git a/docs/api/qiskit/dev/quantum_info.mdx b/docs/api/qiskit/dev/quantum_info.mdx index c4da200db3c..0a682a6ec55 100644 --- a/docs/api/qiskit/dev/quantum_info.mdx +++ b/docs/api/qiskit/dev/quantum_info.mdx @@ -20,16 +20,17 @@ python_api_name: qiskit.quantum_info ## Operators -| | | -| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------- | -| [`Operator`](qiskit.quantum_info.Operator "qiskit.quantum_info.Operator")(data\[, input\_dims, output\_dims]) | Matrix operator class | -| [`Pauli`](qiskit.quantum_info.Pauli "qiskit.quantum_info.Pauli")(\[data]) | N-qubit Pauli operator. | -| [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford")(data\[, validate, copy]) | An N-qubit unitary operator from the Clifford group. | -| [`ScalarOp`](qiskit.quantum_info.ScalarOp "qiskit.quantum_info.ScalarOp")(\[dims, coeff]) | Scalar identity operator class. | -| [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp")(data\[, coeffs, ...]) | Sparse N-qubit operator in a Pauli basis representation. | -| [`CNOTDihedral`](qiskit.quantum_info.CNOTDihedral "qiskit.quantum_info.CNOTDihedral")(\[data, num\_qubits, validate]) | An N-qubit operator from the CNOT-Dihedral group. | -| [`PauliList`](qiskit.quantum_info.PauliList "qiskit.quantum_info.PauliList")(data) | List of N-qubit Pauli operators. | -| [`pauli_basis`](qiskit.quantum_info.pauli_basis "qiskit.quantum_info.pauli_basis")(num\_qubits\[, weight]) | Return the ordered PauliList for the n-qubit Pauli basis. | +| | | +| --------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | +| [`Operator`](qiskit.quantum_info.Operator "qiskit.quantum_info.Operator")(data\[, input\_dims, output\_dims]) | Matrix operator class | +| [`Pauli`](qiskit.quantum_info.Pauli "qiskit.quantum_info.Pauli")(\[data]) | N-qubit Pauli operator. | +| [`Clifford`](qiskit.quantum_info.Clifford "qiskit.quantum_info.Clifford")(data\[, validate, copy]) | An N-qubit unitary operator from the Clifford group. | +| [`ScalarOp`](qiskit.quantum_info.ScalarOp "qiskit.quantum_info.ScalarOp")(\[dims, coeff]) | Scalar identity operator class. | +| [`SparseObservable`](qiskit.quantum_info.SparseObservable "qiskit.quantum_info.SparseObservable") | An observable over Pauli bases that stores its data in a qubit-sparse format. | +| [`SparsePauliOp`](qiskit.quantum_info.SparsePauliOp "qiskit.quantum_info.SparsePauliOp")(data\[, coeffs, ...]) | Sparse N-qubit operator in a Pauli basis representation. | +| [`CNOTDihedral`](qiskit.quantum_info.CNOTDihedral "qiskit.quantum_info.CNOTDihedral")(\[data, num\_qubits, validate]) | An N-qubit operator from the CNOT-Dihedral group. | +| [`PauliList`](qiskit.quantum_info.PauliList "qiskit.quantum_info.PauliList")(data) | List of N-qubit Pauli operators. | +| [`pauli_basis`](qiskit.quantum_info.pauli_basis "qiskit.quantum_info.pauli_basis")(num\_qubits\[, weight]) | Return the ordered PauliList for the n-qubit Pauli basis. | diff --git a/docs/api/qiskit/dev/result.mdx b/docs/api/qiskit/dev/result.mdx index 1980d5c57e0..2d8c18be0b9 100644 --- a/docs/api/qiskit/dev/result.mdx +++ b/docs/api/qiskit/dev/result.mdx @@ -146,9 +146,9 @@ python_api_name: qiskit.result ## Mitigation -| | | -| --------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- | -| [`BaseReadoutMitigator`](qiskit.result.BaseReadoutMitigator "qiskit.result.BaseReadoutMitigator")() | Base readout error mitigator class. | -| [`CorrelatedReadoutMitigator`](qiskit.result.CorrelatedReadoutMitigator "qiskit.result.CorrelatedReadoutMitigator")(assignment\_matrix) | N-qubit readout error mitigator. | -| [`LocalReadoutMitigator`](qiskit.result.LocalReadoutMitigator "qiskit.result.LocalReadoutMitigator")(\[assignment\_matrices, ...]) | 1-qubit tensor product readout error mitigator. | +| | | +| --------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | +| [`BaseReadoutMitigator`](qiskit.result.BaseReadoutMitigator "qiskit.result.BaseReadoutMitigator")() | This class is DEPRECATED. | +| [`CorrelatedReadoutMitigator`](qiskit.result.CorrelatedReadoutMitigator "qiskit.result.CorrelatedReadoutMitigator")(assignment\_matrix) | This class is DEPRECATED. | +| [`LocalReadoutMitigator`](qiskit.result.LocalReadoutMitigator "qiskit.result.LocalReadoutMitigator")(\[assignment\_matrices, ...]) | This class is DEPRECATED. | diff --git a/docs/api/qiskit/dev/scheduler.mdx b/docs/api/qiskit/dev/scheduler.mdx index 1e885240036..4317da07ca4 100644 --- a/docs/api/qiskit/dev/scheduler.mdx +++ b/docs/api/qiskit/dev/scheduler.mdx @@ -22,11 +22,15 @@ A circuit scheduler compiles a circuit program to a pulse program. ### ScheduleConfig - + Configuration for pulse scheduling. Container for information needed to schedule a QuantumCircuit into a pulse Schedule. + + The class `qiskit.scheduler.config.ScheduleConfig` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that `qiskit.scheduler.config.ScheduleConfig` will be moved as well. + + **Parameters** * **inst\_map** ([*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.instruction_schedule_map.InstructionScheduleMap")) – The schedule definition of all gates supported on a backend. @@ -36,7 +40,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: @@ -44,6 +48,10 @@ A circuit scheduler compiles a circuit program to a pulse program. > * `'as_soon_as_possible'`: Schedule pulses greedily, as early as possible on a qubit resource. (alias: `'asap'`) > * `'as_late_as_possible'`: Schedule pulses late– keep qubits in the ground state when possible. (alias: `'alap'`) + + The function `qiskit.scheduler.schedule_circuit.schedule_circuit()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that `qiskit.scheduler.schedule_circuit.schedule_circuit()` will be moved as well. + + **Parameters** * **circuit** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit")) – The quantum circuit to translate. @@ -68,11 +76,15 @@ A circuit scheduler compiles a circuit program to a pulse program. ### 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. + + The function `qiskit.scheduler.methods.basic.as_soon_as_possible()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that `qiskit.scheduler.methods.basic.as_soon_as_possible()` will be moved as well. + + **Parameters** * **circuit** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit")) – The quantum circuit to translate. @@ -90,13 +102,17 @@ A circuit scheduler compiles a circuit program to a pulse program. ### 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. This method should improves the outcome fidelity over ASAP scheduling, because we may maximize the time that the qubit remains in the ground state. + + The function `qiskit.scheduler.methods.basic.as_late_as_possible()` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and will be moved to the Qiskit Dynamics repository: [https://github.com/qiskit-community/qiskit-dynamics](https://github.com/qiskit-community/qiskit-dynamics). Note that `qiskit.scheduler.methods.basic.as_late_as_possible()` will be moved as well. + + **Parameters** * **circuit** ([*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit")) – The quantum circuit to translate. diff --git a/docs/api/qiskit/dev/transpiler_passes.mdx b/docs/api/qiskit/dev/transpiler_passes.mdx index a0b31083ccb..45ba72a5793 100644 --- a/docs/api/qiskit/dev/transpiler_passes.mdx +++ b/docs/api/qiskit/dev/transpiler_passes.mdx @@ -84,6 +84,7 @@ python_api_name: qiskit.transpiler.passes | [`NormalizeRXAngle`](qiskit.transpiler.passes.NormalizeRXAngle "qiskit.transpiler.passes.NormalizeRXAngle")(\*args, \*\*kwargs) | Normalize theta parameter of RXGate instruction. | | [`OptimizeAnnotated`](qiskit.transpiler.passes.OptimizeAnnotated "qiskit.transpiler.passes.OptimizeAnnotated")(\*args, \*\*kwargs) | Optimization pass on circuits with annotated operations. | | [`Split2QUnitaries`](qiskit.transpiler.passes.Split2QUnitaries "qiskit.transpiler.passes.Split2QUnitaries")(\*args, \*\*kwargs) | Attempt to splits two-qubit unitaries in a [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit") into two single-qubit gates. | +| [`RemoveIdentityEquivalent`](qiskit.transpiler.passes.RemoveIdentityEquivalent "qiskit.transpiler.passes.RemoveIdentityEquivalent")(\*args, \*\*kwargs) | Remove gates with negligible effects. | ## Calibration diff --git a/docs/api/qiskit/dev/transpiler_preset.mdx b/docs/api/qiskit/dev/transpiler_preset.mdx index a8d60fa35d2..f8db6f4575a 100644 --- a/docs/api/qiskit/dev/transpiler_preset.mdx +++ b/docs/api/qiskit/dev/transpiler_preset.mdx @@ -24,7 +24,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. Preset pass managers 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()`](compiler#qiskit.compiler.transpile "qiskit.compiler.transpile") function internally builds and uses. @@ -41,6 +41,22 @@ This module contains functions for generating the preset pass managers for the t | **timing\_constraints** | target | timing\_constraints | timing\_constraints | | **backend\_properties** | target | backend\_properties | backend\_properties | + + `qiskit.transpiler.preset_passmanagers.generate_preset_pass_manager.generate_preset_pass_manager()`’s argument `inst_map` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and this argument uses a dependency on the package. + + + + `qiskit.transpiler.preset_passmanagers.generate_preset_pass_manager.generate_preset_pass_manager()`’s argument `backend_properties` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The target parameter should be used instead. You can build a Target instance with defined properties with Target.from\_configuration(…, backend\_properties=…) + + + + `qiskit.transpiler.preset_passmanagers.generate_preset_pass_manager.generate_preset_pass_manager()`’s argument `timing_constraints` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The target parameter should be used instead. You can build a Target instance with defined timing constraints with Target.from\_configuration(…, timing\_constraints=…) + + + + `qiskit.transpiler.preset_passmanagers.generate_preset_pass_manager.generate_preset_pass_manager()`’s argument `instruction_durations` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The target parameter should be used instead. You can build a Target instance with defined instruction durations with Target.from\_configuration(…, instruction\_durations=…) + + **Parameters** * **optimization\_level** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.13)")) – @@ -58,7 +74,7 @@ This module contains functions for generating the preset pass managers for the t * **basis\_gates** ([*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")) – List of basis gate names to unroll to (e.g: `['u1', 'u2', 'u3', 'cx']`). - * **inst\_map** ([*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap")) – Mapping object that maps gates to schedules. If any user defined calibration is found in the map and this is used in a circuit, transpiler attaches the custom gate definition to the circuit. This enables one to flexibly override the low-level instruction implementation. + * **inst\_map** ([*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap")) – DEPRECATED. Mapping object that maps gates to schedules. If any user defined calibration is found in the map and this is used in a circuit, transpiler attaches the custom gate definition to the circuit. This enables one to flexibly override the low-level instruction implementation. * **coupling\_map** ([*CouplingMap*](qiskit.transpiler.CouplingMap "qiskit.transpiler.CouplingMap") *or*[*list*](https://docs.python.org/3/library/stdtypes.html#list "(in Python v3.13)")) – @@ -237,7 +253,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** @@ -251,13 +267,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** @@ -281,7 +297,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 @@ -303,7 +319,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** @@ -329,7 +345,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 @@ -351,7 +367,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** @@ -382,15 +398,19 @@ 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") + + `qiskit.transpiler.preset_passmanagers.common.generate_scheduling()`’s argument `inst_map` is deprecated as of Qiskit 1.3. It will be removed in Qiskit 2.0. The entire Qiskit Pulse package is being deprecated and this argument uses a dependency on the package. + + **Parameters** * **instruction\_durations** ([*dict*](https://docs.python.org/3/library/stdtypes.html#dict "(in Python v3.13)")) – The dictionary of instruction durations * **scheduling\_method** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.13)")) – The scheduling method to use, can either be `'asap'`/`'as_soon_as_possible'` or `'alap'`/`'as_late_as_possible'` * **timing\_constraints** (*TimingConstraints*) – Hardware time alignment restrictions. - * **inst\_map** ([*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap")) – Mapping object that maps gate to schedule. + * **inst\_map** ([*InstructionScheduleMap*](qiskit.pulse.InstructionScheduleMap "qiskit.pulse.InstructionScheduleMap")) – DEPRECATED. Mapping object that maps gate to schedule. * **target** ([*Target*](qiskit.transpiler.Target "qiskit.transpiler.Target")) – The [`Target`](qiskit.transpiler.Target "qiskit.transpiler.Target") object representing the backend **Returns** diff --git a/public/api/qiskit/dev/objects.inv b/public/api/qiskit/dev/objects.inv index dc01c7152d2c882f5e3e59e4f40fb1d4885baf33..2e5faf3675bb1da0d833a83a4f4a98794109cf2f 100644 GIT binary patch delta 71227 zcmYhCWmFtNx2|z_cMSxG5Zs+03GM`U3+~XkySwY)?(QzZ-Q6|#<$UMfbMBw6>Sw=u z@3p#Cuc>*brl}ihX9Oz74Oov`9jvYJ=*sRz*KE32QmXJW7;34bZE7=It}~8Vps?!` zia)|BT7Cr=mO3vM1ji6m38dS@)3|HVu#}dFWEO`=OwA7qELN&14LiR!vFA~3TO6V0 zB?(t)eA54T_^3P)e7)N3^5!xcT70}j8Mv;>YvumXw|$EKuzbAB20T^P8ImILnuz-T6&d{xUdz51qJ(**K^rRu)F*7ZU=b_G3e$C>N6ZZ?OT`MSya zrn^nUMc4Y5;&Y=WFD4y#+sCP^-|Wog&8kZlPb5wchr9uL72@ss~M|w zdao_s#wO~*0LKFk-^g5V6Nqp3ZAhE>`ye+PAkl{{nkq)u2VL5t&{h=i^gkrVE;q@} z4PMxpqq%7}qeS4U+MKSn_x58y2%dA{%+fm!_;&da;siUG)Y6Od6kkOnYG_VuXYjgj4Nk{|22Gr)l7CMtb`9&! z>t3l_K=EvJPeF2b#KFAobMbdV)+|cv-@5i}^W|*`@XPo#LRsOAFR6t7g9CD23W3tu zB87>xNLWZkX4Q(-Y|(G^>aUqq`gSgBG{*7#`-D5U&Dw%=Pwt>vlOPE3RrLH?Au26k1VR_F2+l5kJs$|-QxW&;Q1|?mh0~31E3uX{~izM?!OEI zL@~i`KQ%_&~W-?-JiNZhQ=5ZT37B{N5&SNJ(Ykh%O$cmmON(uKUq$3QP~ zdS}TW{7XIOta?>G--g31t>!Bi%H0PC?lJ`=;hdgHpyWN=z}_*&DZ9R}|B9+X^vEVb zQ|5A`$$cL2_X!g~rBHr!Lo@E&G@^evu$Cl;%8|ZCdmWH&`X%GO9glp`DCb<|bgv@$ z?J2J6y_WoDz-Ma$^#0-WwDcZq+*vV7L0VxQ%yZexBafBNN1t3)uH*Sl{D{U6_ymVt zqZ%gP!^jw#+SotfwG7c$TFTlyaax(@DYv$5$_zY4#sAK<$fNC)OL{Qu2(+?w`#6#d zqt4C*S^t1#IS^}wn~ZQ24k0~8qmr2w{`Xr-4f7nE=sZ?{98BnJ1dVD-9z|Y+cL(I5 zg{~D}OGoUpr-~w#kgdrt-}ty4|A2jyQA?%0CJxZvSY;>~Z^X~V zSj8DUla=H-g67`&p>ItO8)hMi)4=ij8r|iuf49XtIfeS^3S7Bn)4qRVD6!sZ^A)*GJ!{uVpeR|v5;D|pVI zpG+HtAWV$ij3ye_pTw;m=Z-}}S{U<-nqQG~3ECOJ#eyP;OMf)>!XMbE?*hn z8V3{aKPm?m0%e|6RZEUNeiyA>4D7qNQN=*Jg!|B4B!L5OJHy}+uPej(D7be;d|ZrM zR9^G~ntz*WL3y22WGZh%p79;N4X@0>O4sbGd#ft%TGz@Z`>Q|rFI(`?_!jToJ{Ao> zR<@5^F3bX&nd<(0IpBku@g6C=wTa@yn2z?RF>d^zSo0JZcEf}C7e}n}5#dcF@InL)_@x@tz zig;`;I`BS=-C3E`Q9a@M3ASXFwzDnp7i~~eR+Ix+`u&h6WVnn7;~^~?ZT1yezb2jy zZmu@62Q10T9bp#qu;R!>)GDIIHHY@l zE6=o5&w{dkps?ND^8pUqV zK{pNf-^aZ_l;Q63RO#TFw+0lVeL%oL=J{M&~$n*slAfv2nIlY}jSgXs#8+TU|C>pEWHZ|c~dDnxs)r53-rP6q~eJboL> zyjmVwcbZcowVUPs&~}{Qe$iyBuq$()%NYc$j=y~;sLzp%G##`_`e`z%34>(3CXqC5 z*vpC&X)s4Z@+}ZsmBk87knf|G`yl^9(M8IZMJ>5LKW3%iE7-jhGf}w$4}bHoW3eHN zL>(NvME4OP>&-E{eL3cc1R-K^I)5GwfOhWGXJ5Vwmnk$T?}rAPGD?C((5tJyAuSIsZ=PUZK^Q199{_wtkSCjED@RP!ZA%^JtXNoPH4v z)cE=}Sv6C&q@A@vsB3tRs39E5y2SH45Fjbt{0p0LmuLA}vGVUgSoJTbaJl0T%*=7Fd-Lt zQ8B1l{ulm*zzs_uv>V$&$DQgj}}Uo_oJ# z+BdA^DkfVF%|{L3sFqa`tCg{8S9Chdp1U&W$Ty5NP+HuFx3N^*CQ?e5tv?8UJvLj^ zsqFGpz6}9IdS^d9@)s%Ta^>ABnw(N>s-~#B+=m$0X(zcg_CT$MOWtv`;mVeE+KR!Z z%)2vwl$(TP>fF|<>-#nUxY0*W10(1tGkB~N5rP`C4$yL>y=!)SxtM!Tqu&af7QL=t zVZzuyWj#u1EZLdA1_<5>rf`D?yq`LmZ+GqZ%3dlZzHDpHqoUU)l|~*iE9s0Hae#Nw zTKE1Vw!oZD@1>5|B&Pqz+a zdybc}1aqZ)rIx9MWH(?$zZpi$EoR@U+VI605WQ=o!p7r8NJW~9CFDV>$Dfj*e73h zC4<{fgF;r8y|bf>ozz)CXQAFMD6%#mu^Xg)T0y;N zU;*1hMQ?MpuQUcMs(JkPf4ZUZ&*2nWyb0Ir>sHV4uf1am{_wr;saZuPe3Lwg70_j} z5Ws$0h`eGIQ$wG6+35g_nNHNX?L-!c9(qEDJ~#%t0l26et2rEa`GYovH2K^&Nt$& z>?7nkcMi7}IX6MG8GhLGt|<557CbWa~@E2$#R0W}U9p#?E}gG#{wo2&WbcjJkSAN`44lF(`|2)QSg(715INF?s)gi_ zQRv-i>{?zmKIU8G#GzGmANxcl9VK27W#EEAL!zDZ%W3$FHSCV>TVo}w#xSlt`P5tW zqBxk~<^A=-lSRC_+k;++i;kLnPed%5RG-fr=kn@>vK@R5KBZKbB2yo|-uHHU=WhBP z*mnD%&jGI8KIwCSZ?9|yc&?Z)Ia~8V6L9iwsTH7|GKguE0PgfinA&Bq06JiocgrS$ zW{PjF>gF$!mAI|g8!x){^50X%rdiWSF&6)Xo|@(Y@DJHu$=(H~$>fX1RZo@u(_7|# zXRTw?QGql$2z^vVipQ$GI0OFP$xx!m;jsJt)ph4OE#q|Kj{Mj+vCJMg)Q$0j9`vz+ zt3OtJDbuLdd?9q3Brf|m++_ggV|8}ccf9TSF3#~$PO53*NHix-a>tkRhx_ovQ40<1 zDsFhYL1~(zkT@BdbAH*iu9vfV+LWBB#cy&)ryvKh>_6!0X z$Vb1iJ~nx(Ii$14bN~dBlSu*;L3cGP3L7)~?h1*wdF1rZ|0+sK)}toC6p~xM`DW4$ zU9RDN5dS+!9Va)93`3|E+2MVRjW{y)DQVN{w8i$~g^*`D%Llg;`sS>e)2H9aIMSBn zQ|GHa!B~x+cRZRZpN<}P)5JUwwBc^?`GSYDH{2fBcNC0{!vQw|-JX>A_LW{aVVL? zdLyF`HHG-B(Z7FQvBOk89F-vv!5H1}_@IX`DoRH0H0%vc?KIrg^tm$L*Zg&5w9eUY z40uCsq5?*Uhb>DfzuvsdtqX)R^Kw=Z#BYI249OJPw1{#{8u$FE>PivR#*6OMd#pk! z?`x@uTyYo`Dm5GTVhxs!q#9~zFPIY<*{gTzmHVKJ)d)&CJDz>*{{}^Fl1v@6Igjd4)a|Y0hH8;m#FQQ^fO2G*Pu`r^@>!p1u z=w!Qx+%KdJRY@)~V-ZiQ6|y$}v~grUZ5#&1<=Ea??BEmWPa8)yZAV_k93ePNT1mN* z_UC}S)G>`8c40oBru+(2Nml*7uZBq6d|Q(XR^p^B*(XtN1fl>(Ph810ZferzQdG8`5`| zvg)(<)3!0-`MOI2>!i+TjDBS8Rog0^9l$gt??)3=u{o2VlRi2)3|_t|1^~yeey%e^ zd(UaNmf`O=L)n6F&c8==<8{5$-r`;<^Tq(OjZN>=UsYBAqQ##7o%ZcLbDoMnthg+6 zk(z$=o3eBO&FPH5%f8Kn+z~Zu*M_dR>nu?R?sv(zS=p`{g6wd^?TjZvTBq9v;QeE) z*yfkZB8V~&78X}W@_}j-<<~)Hl)Y`0Si!|H>9bE;;YZnN(hLao+!WuT?%gfYVt0xj zn-EB&ecg;!OVxX?H@&1U^|rYTPXR6t%iH||76;`m_c!w{$25yux(r2mK8}v;!7gvj zJ(inG)K)G)^t8X@`mqB#b;V18pOCSvPuq^>!3IvAUgOaMj3w9(2Mc~PfsDP0pP6CY3{Z2?pIMb)3t>BrV7<52;04JbqA$Q9e;M( zqqYgBhDq1RoaK?=A(qKY42ybcj@+z--qU%gDauFh!}enLcX|?mY{Hv~y}nK)WntZM zf#LLB%_zybiXTXGYYg0&4vSbIYsrlCA*x{fSV z2Yca+hr=fYCJ*uSP#&iK{UxpY z;P)3ODG~)ve>z=M@Lx@hB$U~RPZ5e$^9Y0 z=_)$YZaowo=iAE_Uh?mrd6 zvCL?_tOW4lrudQlkXjNOIj&>Fga{V+PX>C7l)7Lk#%u+Wni75TpBOh`h4luyUtJ1g7r(rQ}vNb zxOd^nsyfd{fv!q)(fk5L(MxnUid;SlfJHibm=x&(9ob*OU93;YHhLHn>N5r*#Ggk_ z>NW&}A+j|<_ydk0-2xBHM(K${enq*Hh34~a%&uYeaPgl60r_tm0B^%#9Jjpq(0{7`DVEbGNAD8+YuVC)c*05lnVf-FVf_Toc5l zbqg5pUu&Y{YYNfG;cmL7KC0dg2epuXloC6vZ!$~}`yAlR^^kOb5PR)~yE}wX8oOQ1ACAvKc5BbQtC*rx7<8WVU%lmwq@yTSNauS^iVWG297%u0SbNZI83 zG-_&e@mLbhD)Cj?+xbfb2q;k7!?q-EenSf+pf|_er~Hczhl4$0c4T6W%nMuK}iOOJI6)^nldNh*G z(xvdH&tfLU?OzaKnAu7TrhTnl<_C<^_upll$KmZPmuPal3u@2lOa->R$4l<0JytX6 zM4Iqf=$_Nm@SpCTL?r@!u_2V^x-j(MvviWfB$o-OAz)yyF|f92Ho(KYnun5LwXdBz zSByr1V189G?A5o@S=$I-3Mg;h7DRjx{uV^vgaCO(Bf=$qAI6-rO%-TfL^9)C(rNhFE^WN>@D~2%wKVAFv(pA0w;eQxaxh5y75E_&YC2AFWIV6Ohh^9Kz+s zfo2x(iwI{;V>^(#+!9NYoeMC5{tSG}zLd7jbB6KheXX~S4mSA%JMwD>1wCarFF4adKd5D7BSA>QOV}yYkCrv|Akf28NB~gbcBf*#mE7po=+I2E@?bo4R<1rKV zz(1tFQ33Wc!TNR5lHfNZXuU>p=8QTicUeMxa1Y+>d{Wrp)=UVJ{|VV{X(W~9pa=a6YL0#~0y!i<2~ zXFfoY?-ep?M!FR7Ae=rUfc9B{I^PTIGa``h<-@uHHED)PoBy*O-&(||K9n{8=T!tp z=!hBS=j>kuhw%3mvGf^gF^Tkkqk8z%8S0e?4szBNvE&(QTZ!~5d}}|G`cR7epVbi@ z3dZ&DX*1NG66r$t)_D_Vn4dV0bp;6coLWnyqkY29vMm28+rz4fU|O#{YF5gTUnnLa zlZeka@LiK2enycszi_2I9z)}6daE{7LOE1k=ofDIVH1Cq?lEshaY5 zQ0=cUlmDQE|EH4p^gSndN;yso#1^F3HNHaE{Tej|GOpo{K13P2Qm)+f_YaQh|_y_9t;?EncfBq@oVZd-$l69^j|{0&Rvrtx#sp)mA8*y zXKO#j8gbkh?9c6q(tDd7e#+Z#gSy|brp92s(+>lc1Q%}O3Ux2tYWAj{+V!3uy>!^( z{k;Hna&nK@S2>6`vm;Kw9yB&V0;ECk_b?VB*}DXUL?-g~gW%vEnr>YR82?-#4KD)f zsltE-=^56shb2aL9=dPKqEjBu035G3+oP8rTHpLSS9>=~ehm?%Yv~Rt1auxF@A5R| zKdTmaUmr^%3WDDopw_T&3M8J?vbd(_iQu_pk3tta(MCy2!2AK1$gV_@$G# z-H9^xWxu2!%M!($BVnapBgJIgyCcOvxd&vtxkDs^djupvdw`|Fdjw=4d%(q`d-%m* zBfIf@CqVnc%R?g|%ELz^voeiG;tTAsnna`575T>KNNvYIcKP<^PwwsO=nhZ7w~w&I za^O?1{0xGx8DUYdVU@l586-7M-50QClw!sSLESIW{l$b*Ps9dFww@3i(|}ShZxt@3 z`*Z3|spt1eu|B6(pL7K-CFj2>g!TVuF&fZW^f>_t>Xk?z_!@MU87nB+?$2o#I*Ts{ z1T`YpDMLYd-Ly$2bgUE3Xn9?C-6RF|DZ}vpux}cs!X}x49H$H+pUgNDI>QOab3r3V z!!&o82a(~FL0QAp_cJ})2}gcG!>n%7Z67&rT?wZ_8GB#aRYik+vc1fDzP2Q z24;L$DaxSDvMXv0_#SvW!A7wz+hX-yg*u%!%d!Z))MV5+t(0{}_L}dzN?|H(nsJe1 zT&f?p$!Kv3ZGwJL8q{~_+p&aS%t~L{WD`e>!w!?oWi3+UQjI~f3`%@eve@RvVaAEH zElg~I3jsxrpfr(G1V9H712tYHn`(@Rs*GPMiR%Z)36aJFp2j_G?KpX@g6VLrg}r}>QG8kB!!Y3tLJRS;^}TiBkyfXuI*f**;>M$&KNgF<26t5%H0oAuC}jj)i^BkjRt~i)>E`C9vbbX1@_)vH(+NwU{fk znv=dgE`b($8t$jTh#To;jRT*n(?d#4APC4v)O2e{v?weTC{ZZF(8*^sZvV4P^2_bK zp*Dm1m|e7|99Z=GSHEbV)6Us#8~Udke+ozH}HZuoze^s6;p|FIr6J9Z$M5GzDTiGz6h3*u^2Lj zUo}&7^P7^%xJ@E$+$pj- z+#-@I9{5XOPMg2pi+`>DLT2`Ws>ibFs$LSh|#vupw=~|q| zp=!F5O=!78*%(ig?Ly0b-6Uh0lMS}UA*OT)UD90@CJVT93(Ii%g!%=63i5RQKW)3}0=cy=ckI>%pYelzs zT}Se)Qpu*W?{Q(ks)EvG;rfrgi0)p&dadNyQuuPU?{U+*_;EEi1 z79V+qk{|?=AOV(b>+pL&(UefuWDb9ZFIPJGff>w=5zKiHQhy6lt0DfD68=9?{ORxb zSdy%IUs+2~jD)5Px1tRJpI?U4B!fa3187cIkRBNR4`eVqL@*QIkhW-%UdfTB@sY03 zk!InMRv__0ZgCTan74|V`-wV*vO043-F>;-$Pc!lZ`PpCYY_WO5nDxZx4z^4qr{!Y z#KnST(mP}@m+UQgE^#Oo=;fG~ z3{1a6uZtG|y%t25d3RpyDMF;%7RWQ8wgzCtOZePAdxAzdh zSst@Vw~jIYJb;A-80z}2L_z9!tdL_>@tm_Po&NN|a?*81J1#og3td#dKiRFSJn0YR zlyqL%{S$UpIAUHKpL{rilk2)~7TlxreI<8EE!>%C%PEgIz&+4RGDe4RWhA}|;T-Jd zRG1ek9!%4X9MW<2wM@_h>aJA|vCwUxcmPuO)Lc|W2|i&Lkc~J<%)~+V{8alz0)t6~gF-Fwa_vi+apILo4Cf_j9Q+rMoO=}Q0BR-SE;G*d zP}88iz%c7CI{hwbi}b7pYQoU1J154-6~qZ`A_m>(Vp8;`X;Cm<;)^6M&1%uNOCbZ(rQL^q#S<9`2L6 z)ZLE7#FiVQf(4py_7OxjlXCpp^YudDYshe5aimx|o-r0SXL5~=^hgcHNAet5=0K`I4y+aK zb&S;GahSD_{4ex?>Y41-YsYU;_(hC9Kh9Gbv z0u}LCa8T-Wt-d%-X|fy_HL!@y=qnA%pdgCe&EOce`!}NR)m!WDwXBNmuhOk{TJhX0 zdTN>5F1V7kc&?nO0>p+R6-YSUx71}I?fc_K(Qh%mBeiBJ(Z=Lcg~Eexw!H=`5Hxow z$@4d~@#FNWK+*Ye_nmU**t_M&13ZOAB1S`jelaKgnY4YiYH}iAq$~VLD4S7aH^_( zq*co2r77jn#ZJE1R!Swky|JwE@{Rw;v=6=*zrjrLc?D;|h3aptg^ed-AqQGlGfy~7 zZm4wM0yT6m;FQzY+cUO(7WW~rIg$|vh$_KTXkB1`@I{*^$9P~221{m55^R6_Vznt?V(L5Z`VbCcj6ta z|M3ZuY;NbJJMCga5|+^84;=6Xw$*I;_C_OVp245(4SIqh9_Tf90!Ow5(b~^og#JD_h_vDS8;V6^&o6 zyc8#1K!TgU>j5~*Y~WXJDAUnlG_4XUf3sRr_?`X1FIav>qVR#>jdZ#4M_E)@u(Ry} zep{_6@=yl6n7wsgKWV^ndf)@Q9eK#xr*EKUymm!Y1ABym!W8s>e;5nberUUjlX zM37?zuY_CGQR{*{ne7V!!l8SU^&I1vQ)3TW0S;$?pmx5p0FBK4DIf8Pso!z1=+*V$ zzs1dBAyjQ$cIqDI#;$h(=(HtG^%>TM9d#F17#8za21cXPIvT)kDvN#S&y;3dNv!3- zwcp% zQeo21a~;45l77X>DLv3aP;YjjdDxa1y;jv$a%)1W9=1_%&(+^8K0Ts-O}9k2{BAgyy>K$|OFAO?!TXcdx`1d(){mdGMHlyjq19k4 zv~NhTpI4+)m7&#TER=6ZH~|%6RVFElHzXL$D~^6*dB#G|h6It%8x^RPydE_MQLT3?fi-HBmsbq&I z&=HaJEo3z?`|-;?5KZkhBu__jv`a?tc~`Y zy@jj5??&j;XobX%_l4v)m1C^NN9s#q0QPbMB9u*DnExWkO1usDkgd5yBO5u)>Li&OxTw)Gp!@NQ-94V!((@qVh`^V%^b9GauR2TTj=a zJ?6mLQH#i-cLb31Xd>`K+2VZqFV5}(F?L99f$MsDEQ>vZrQ@*aq3&oX>fGl-z|)*W zX#{+F$TKEKN)xRW-Ja^wk50SBSb0=y$`$I=?2g;9VuA{g&@LvxrFOkiQDL3`7KN62GEOi?H;0J+}EWv2T)k+V{N)#JxK^F5O zdDvx<`?JBwSbu{f^K8u0zpT&U03mdG3{lG6OL&cG4GKcymfOlI6@g;(T8Lw6O*oh! zTShXCeNDEO*#>#X2Fsq9u*F^lm8!rvI$gs2Qg3S_b#T<`Ryx=2Ao^{6F!aCps_3XO ztsqySAo^Wlu&@(Xp&`0Ga7_g}GlimaByt&7e@(%Vo0Wh;g7KmO(uPr=Rw&nhkb&fvwwOO>*b$0LH9 z4)6VcS(?ljLMkn*WHKq4z^j{2PMM}xXYoSDr4#+cbe)1JpOx-0(b2ahVP>yF?>w@at8w#Tcq3;wP+57dgyjk>bN$8ODY zFV@Tq9l7*!y3T{HYz~#0O)PGM$Uuo&ngs^LVX#UK8n8ew90Z74V8+i^zR8mY>KGiZ zCp7N+Fi91^s9CQheC*If0$Iv9I(c&jI|MjQ#OFUGQbchP0vb+46u`26(?E^3BVJSC zGDCemZ%5O4xEBFuabp9+WwnGG*YfTGBfI>=fEEeQg@b$q6BXnbDTNP`mGGO!3pA|p ziP~2GQSZcsgStZ=1wf0o2^;p1EljJkXzO!hgs59YK`9&z{Vi(MVQ9>v`!awCGf2_9 z!OVg)ooJ)8Ze3PuE~=m7ZB3I>#xMA73T3|v1`;h|0qxZ`@a8dx9;mtzGs}i7%0|iw zMEUN)$T4rDWu!Gn>-hQZb1pv%-g_L7s|}JoR}v%Cxfaio10q?4kcI0q!J+?B$iM8H z1vSStaR+=H-p#JDpQ){&2D$M({@v~sI0BpG$%ACsifomyg>;U!KRgA)Kb-R&Ap!N} zttrD&KY>uf9My?a&Kh{QinJWnMUs#Fj!=dN$TOp1N2$b7m1RRv5*)0EbB@+|szKw8 zLvOzxiSGRM0h0KAVuHl=KbwTdcYj+pwk8T{o~Yfo=*K<=yP@OlE`TeP5sWL!#w|Fy`;dAYxEu1 za~A3@U~}j{>Eh|LJ_wsQ^v{PU9MxU$+SeYP^iF33a(|2e$g>T0slsF0)e$x4`(yXB z9cl{VqmaiR)R5hWoU3IL7MFA1`#BP@ujj&t+5Fv=%l?z}9zMjiup77@K5Nwyu8+tL z!2~n6`+n5lVgsdB&&~0aGxi(}mgDpIYG< zi31uA?J*@(p`9(NM1NwZ{Pr@m!biVfkY=+TNHa#c(X#tA{IYQBrY$X`H7r<2^o-F= zsOPuPSl%xQOnrKdmYcQGLA*&C(7>~&(exRNF{91-n9f}aCLEQHY#x*~!_RS<&NC~^ z0rtrzg%ESoyK(&Pych#y_K<~ScO#p3AmaoHRKj(}@`>G$6}%pf4u3T)n(F7KSBj$= zh4Bv4Ms;$=y!e$SzyJH9BICpxZynZ^Ytqz(ho)TLv94bJ$S%Lnq*YaG*f2ht{MWLx z!}G)-(E^Mg0WQ_1!{f^=;31@pd66rX3AjejHSF?ZT#WquvYL|4mBY&^Z`5Muvj?gf znrlmq8nbBPvp$vE4X}=2H6sBJkYT^&|9Nuc0k*vG2-nhdNiHkAgc;B}9aAhr2kED* z$`LjO%ONd`%pYd?;Sq5Jeg{Vle-B2BYkhm8)S{KGik%P{@%g>9wUl#^V!b1D7N~!s zMmc+A{Nh5H&T`Gc@l7_#@`0sFVZGLh6<%OP7 zB;@2U9zv#!CN6E(J*Q^%&THoyc>wpqU}Sbscyu7rKm18O6jj+YF-2(U`?ngqP4c%l zJLj;#I8SU$hiM!X*gV_m&EPryAM;%>P*pxN$Z!{E>e{ zE!tR~;Lx-i>YNmJ(nE*|pB3=?Yz5OIyNqG)ThF{lf$lIIsMxXuEj{82_SaP$lEw`0 zX^UrZ7#G}%*sU)l-J>S1A9jITNr=11t8^zGi{S{aPjBiKw2uZ>C)n`LG;DI2 zD5<&~MjUB$rtcmq#dEr8mqQ`=L7pA%IPw+(XU2sI<^nG=W? zYr_+Xc8R{LDLL{jnFN=v-#jA9322VG5Y8!hJR*Ul~EHNw&{4&gP6w*GXIq2x%U%M!3}Y zqt6cdrI`ALQvxa(?gSnsMLS$SAKAugU1=MaO_sHbAyENkdA@zmm&wZhkHW$7>NQi9 z#N@Q&fnq-iThCQh-5Wy(ENFNRn0&t07^V3?qwHY8!&Ok8qrcKAmQ^|kQB-0lSrGEH zz^d8x9yf&rjfW`0JkYmtPVQlXCm1-I$*+{E5re7qab-9GChX%^A{y&c9@+jWr`WXG zg#o{T3V%SgiiXS8gu4e`xG8DtYC8}Lwo+Z(c6bTH&tIj2luOU?x?A{fV!FTh2`BC{ z;al45D6(Ej5z3*aubId+vySUdjw+L9k5%P$Ly5^#Gc=+c)|^G)SG;}2z^@pdnZ1}n zvmp-wzPvM8ES0z2AX4Rlpd&rBrK}@8n#E>HtVf{t;^`?xvam$LxBmp!SevhbVmH7p zvsma2iUvneo2~w4TMxA+@lsgfX;9DzBzfAre4bAi7Y+tnxN0BFy^--D@Z<%<)^|82 zA--hNL;}gyWNI$1>y|Y1JdEg9O2@P#0&N%jxd*au5+;fYH*@I7k>+#2UA{IwW01yr zG6g2C{oW}?oWgN6YIyl%=v#a0_!izW(XEFfLI46}DuLcGIoMD5`7bD2Q`w+u=2;POuO$BJ zCx=z{?cPDGI4H~b|1kBIQE_xZ*C;N* z-Q5Z95ZnR;cXxMpXxv?bYjB6)65JhvySoRsJJ0)l_r3SWtU9w#Rdx4TJ<~I%_O63C z9N>)|Q}7Vt3TMSFMWbNOzb)19(lDLOtW^(vrwVzm-v=c?h%MwXnE} z+6T%iUlv3StV7oCulGJdZ4~5FZUl|Eu88KRtgtONu80QwT_Jz^2YQdWYCOWR%C@h% z3T`}S6;7d20be>_0WYCk39VAB5gk#Yi9sM?Y6!Tt+lfex*^!y9+MyYr%H1xM^J5$I zuCEy&M^-dAaO2B$3&mRBL*k*(vY>vfX-GQ0>Y@P!uD8&QMoA8NfgX>;tVhja59w1kj3vOGeK=j}UdKCV9m>HYtzo5WL+4A8`{dLd zZ)?3Pad)k2&8j-z(p7V|N){ty0(Ep22TSPLBgs_xMYxMgJTVIRT(kN33gMa)mqc2B zX`l6zY8$TL;8I^{d+{}0C%Ry)CS0EL+4g*d+CE)N1ixAhnZga#ez`TYR}>Se!ZVP% zNY^;Sw@~$4zSnG#u4{}>0$Zze>|l!S&nmB4jiCI^;BdL|g;Nxxfc#17FkRjC)76%H zr7h${%4BHJ%zteTxK{|=8?VhKI{ahGrryPi7H|OkxiOOX!STgsD)5(h+?Z6$sJvTF zhI0#F#xSpJ?SO0Arn!NzM|CgX-+&K=?AyV$pxqlP~fvNld@f8{QIk(xP@^9$p99&HMyylMY!6HK30yOQg983t0qTdl=uVRV%R z{)3Cq{lLj)M18q859Uqd#5;=OAoM9iX{!yzYcBp3x}wFj+nAYEn0`>^=@m;kjQ!DIT&VP~|S@Hbm{F_s4^+j^c)MSL-ALtK4M@(8BVd z>#Oh#RtBN8u4db7$z>_@R-@2b9D>%+{Bv>X#Pk8>iyQOg?AwyoQK2* z1`W(Vm)Kg^r5Sc|YKxeSB`rQM!^<%?+ySmqcpcw>q*za@R8XPt7` z4e1&34;21*b4PLKyX|H1Qs2+c@QKdg5B@i%Y3tyF$MGq2$~Aln#gi=C-=9gWc@{zs z8)gh~yPZ|wavV*d0!yZQLArtf*!*2wq&PrLh#|=X0lC;Juw4i@{g)~>s}wSU94(85 z0f9hxkc$T=>LQ!~(&dMWiLX=67}DPJtx($8F6S2UecqcQEK1;NH8(AUD zR9v@6PjAi>0m#*pt%j5O-_j86+X)IeJFdbU9SL$_6&RJgdgi=Sql>U>b#oh&4*Gx* zGe#VmTBkPQ<|1xGVF8Drr{X$rRBfEQK+b4WLB3YwLnN}2{D2Nz*a|JpyZT-=E(5rK zNm=pnRo&0qf8#_*G*|hKgXb!h1X&vRIgu?qu;RXh+cN(P?SGt+hf;*R5TJPcj?k3FX=D7E@+ieBk4% zKLe(Noiqo+X2G-8cux_aH^H_|;xAwvjl$t5wtMivmDt(8eZ?RU)%*K2H3KfyB;nd4 z{utHnxwyiS9#B2Xum)b~h8FF*zMAbX9j6@`tsAhnv_YP>_N3MvG015zC)XvGGE|jc zPr&3I(0Ww3REl%Bea~~jMp*w+qU|cSv`YSSxiz&Z0-DpFNUqH{tTwY;y>>>Ta=D3q z1AXCq?b1Y_ge>4Uj2sp?)bUz1WHO2T8kFKsDA?o=`B0$6dew|0W}ZsO^ez@s*}m5) z{jX$pJMeL!iB(%yz8@o8Y~?aa9EU55tZ2fPbT`xUbohW}O#yLNq>>$8OWvqaFC?$A*f-al}Ulloqvz(C7P?cAhy6GDW zSyKmTs1)dJ0L)=JLAp>?6^<6u!$Fuh#&NZ^)-IsxPgji?MN9Qkh` zCEkL&)%&x$8K}rg(jRuD6fiPhy#-u}(Ha$pf(H4Azs&?kasn~a99Y7ynSy1qy z9=zLC9R~TVjU>Kj#fdvJZ7pmYXHP2p(;fhqL8*k^`A7v<_0fPyy{VRMbiWO)M29SS zs6eFNQ^B*$`EKTD1dIioz9B$tmzn>VXN(7RZDC1%8 z0kc`|cQEEXI?5F|uY6}AjsZdD?z6~yLzt2i=`htgPQ2X{WU~=T{8X~^GmS9SdOJMw zl}j@?=*)DopC@KvQU%2~+n71Au+ab~kAG*y^v!TU^S3}@@_DeoZ%?xo#3Ll&t6!cW zcfOGWn2IL*D1o*0?_|OU%|cK$#`k-Jy9@DxBo;2IU<_1TF;CwDJ}%vmHc*it-TF~$ zoX+SRI^ON?nm4+zSE$46A`~4f=Knbshq*-X4`B7cwu8m_6=9;F&nF`X8rlFaI`xyk zZ{NJ%7_S`hxu1+ybRy7@16jth6~LR(R!I;SOnk(mtXjHQ6LVUG zXw~iyP+%GR-U82?)zod{$Gh*GTh4_p&qA=#mtZP0B;OMQ*(-s+ejsPXCaI9-ziQ~QWAjyPngXBsn;HYlvU|#$$|7Qn~ts@LEPBO*4Hq%nHP`G z-fceqf`=NJNJOKpJ#kqZg5B1-v4va=#Xt7q;ka!(do4Q&97ywH_fQHSjZ^H3go+Am zeFHR580pJsDd=(W&ZI;8*L3g4W4InCSD*S_>%1Du`ws zXEL*~<4`ATdL21nBv|lg^5I~Axk~qg@5oz$((2&HL^#R@qYbu}^!7*{ao}dJ3Lr@i z@s#z}xiVR^P%ld(!Ti;X(a2S`TS&i7IW*&8Tkk=HDQ0C21_uHq&3V!-+1Uv*hi1ef z-oJ~+ATy1v6UHWR@(lN{>%RYpV;(Do?04ai?Kd$wf?H4IvGGoc_SL2Gxpi=2BU>-tN997zkA5pFwQA;#3hzIOxKuXm2Wgu zKFMiko#0<4&8dDVEH`+D-kEcFuQ4-|;L%(HaqBkZ+sB=dT!6jyT*<~%Cp}n-)z;Qr12i)g z-L;(7AUY>TX7awE)|xw1J09I>i--oCnmzim$&gAmAuhTCmHz#O`Eph$N0|I5mymEEH*l%R=DA4bsa65*ztNq*HVL!8f&M*#hwv$YUl z!%n_^x{)L*Aea08Mjynq#PXAXf8xo1VzIMpXi`B)5ez*oz&@0poe7u7G(#i}Oy5;*3jFVx8DQSluT z5b;Q3{vY-cI5Dl_GA?NZ{r|9!GTR5Vm4&)l%Jo6jzU3cI5hjmp*rrbyQ6c zzF|*c@erK)GaHDUf!1JZ5Q}rlz=lRNTfA*G9e>YM!ynT6e9cX0K?! z#bt#>;zbPi7SMpJFvI%H9VpfmkemHk-l|nLRETt;X9^ss7DKA{4CKd?BO`gWxS{0b8`ounAhKR>N+v4G+`v{e+~{R&T4h zvP17VYNB}YKApjiCp{SLtT)Jt9~=R$9g-`h-OVoB^=_4vdSQ)_3^>ujEsStK&<9sG&WLYmXCk5w6lME7h2?2$a z=bOgzm~au-3Px*T*qEU5RmLjK4u{J5v!ji}f0-st9Zmw&m1P^Ry_y&HJ+4h1;2}01 z7&0Zo7&N6q7y|;j)Zcwu5fL@g@i6OY*~wfl?1K_kHv&$qJpf3!rAru9r49n|DtB&2 z+Y9@;fYlAKo2HJyAZriEp@mBrsj3aRhzfUZBg>0R;nb!Mu^}4|oZ7tBp4AO-dK-`M z=%q_!eU*-Hwsr0vJ(=Fq;K7`EkmhHUuwPW^kXcUq%>>o$F6>DoL21AHr@cLnEM8K} z)@&fni0J7P0_nHpySe+9-)pS7SoYLh*xGV}5yCf$3vs($m*YYfk-s5!crGgiEcBCw zXbBP~h1~Zemud^2J05>245UayMM~)mTQ+HhXbX>Matb&6iT2IUh^QXp2pj#ImlIVz zBxc$vUr?4q zjhU{&WH+Xnl-rB-aA&KKH1{qtqsb=((>Uz!k%ad{&inSgR>0|fjc}rP`!FM z-<7n5TCaYw`xy??^j+?B=ED67ckxQWM!CEyn;`nT!W)et1Ze(&i|*Et_w0bXjpC3* zJ4T%YYg!@F}a;bQF1-KPWYk48wm_q+)P(ky|MGf10^)K)7!Ei8F^zu zVlK}XlcpbdK=!22{QR?pso-Z-_KeUT`-{av$_HNFywF$b`|0H>|HK;i@uezy<_kDa zng(k5ZDIymZ4_fuudQOvtDAsoUiCSziz-DkY)z~;kvqMI<3e846qW6A> zcLjZ-AUD9kB}_g0$a4<$cNm`?i8?S~=_Ds?ce3S6!j zrZm(Pc_s(MA(|d}AbTWvs$rXWj%>PZp*)SOpb`}($FCVW=n1;0A_%io=uA~?QF$#| zl`)8EfEGbdRIBIN6fIF6TbD~~X4Dk?FiAq3Udu7Vv_O^;fj^!>)yg!`JP|ra9NQ3C z>zd9K+$I)e)&cG8@YHUU3C zEGNF=!o+*lf z`R`Gt@v0g8%KRQhV}BEOGbq$3<1ohw=rXvJX>E#J=cEdpspUBF*`yu;X;qazcdFCokdq%NvGAK2wAvW0+_M}sh8~4B3fmvzv-yTZ zQSA~&-k5I5eXevBT+kOP$CA+Js+iSZ{#Nd<9F{Js*^dTo7HG=N{y_X{wg`Rp`W><;#5bpfN`8FHPI?HsMjOw7iqE)@CT=#ZDy8 z02sgkkw3)cXc|Sqmw(v)?AG#XS@53?KE(_52~`n! z46{EPK~oe)6E$N@AJ*dCdr|q0LoD@?dw)hT|LvCU$-k){^(z?R_*dL+mzDvLLJO}~ zDr0_m4V$l+E}Ny^TYfTamnu0&f}uo@HByuPUy)uT!UBMrYXpHr0)r95Z<7fh%5(yBB;=|&TNe2B8x~_14?xCTmS4%XexB8UdLCWNyhX+OG5g@-v#i>hZ^$JgTq|9KP{l3RrW!T2U#ovpOWQ2xpZCc z=6vDikM{`t-Q1u;ekSh+8+!Hu0iw_}H>PEY2idyrRnox9pI$l(-~c9kdYmXOH{%;7 z8+Qw?ySqJE&)Yg_8D4uL?BTIwPF692ms76&z)Hq{z$uLIUfzW4yyg!30Is#toE-mh-)aI9Eky$w{KDfFik8lO@ z@iOqXl8Q7?)Fc4yJa{e=<|x<{=vxuY972yg;4Xk1$xur;2P&N~Umjc*Mv)54^}}J% zsHGGO`;AyaySG86i}P3|W9hT*fj4z7`WqCs1|{Kl@Ns@f+qUt=%5zP|-?s;<4m{sP zw;=QlTr-qEx3F*&6t$1$fT;5 z1PMji7QpuQ&`bbaj!|XJco8EkNHi8VnJw^TB%LU1B85nNDuFR*G^V;U8%@WJ9;5kI z8OC;SbYf`?r1OJj$*57oVbi6NvuH*RFy+ALH)F$~Ft5YzH><%WGp|z59aXJ<@(jxi zEH~oH#W8O$VhLvNlTAf7w`58`!RU<{gJ6HB1O$GWA7|Km=k~hX$+ELf_h@+y$&a$z z3g*rx-ymj0T0~iShE4XeyF=uH|GtvtzMtCm@+ir2wYZM?wpY4_$FVfUV_+ZF>dfwb zn@h&d-8sdcyy#`V>XwUFKgF(6b2oAAma8?vHyxvUlrdN}I5E}zE&=8d3Ki{XObi77v_SfcD zyOuGok-uB|^ilOk>WzB=7+?89cB`V0gL9N;f0ey<1xs=J&?vk~RcMfWda2ULzddx! z6Mqf@9?Wv`7df5$EiG_^UKm6$->mwgcl})ssG_=CPkYwe(1~REl?ov{_ZJ$Fs&)UE z`&jB*^Y+hzB?@&F9*G>OyV6cZVu2pKm3;wL^5ra!+s~NP349rS;?fq%uBfLRQE{X> zVzZ;kG>WcZ&*zcIy{g};I~6ZMLNsX%0SG?8q)*gJKCRAkyA7R7HFYaLXllSxKC#Yn z`xy;8MUc0ToZLcEljpP%4uL8M!^r43uU3b4fA|cX(1%_;03jRJ2)c(8l3L{)MmFYw z3)}&9ArgfMPT;Iy*h<0cIC0<^nMmEMK@4_q+7*}lo&^rWDM(CVf6BgY`??$n+wL6b z43q!Jw-QA*#3=Of-T9uzlURU3A{1Q!YVO)MqcU@c!$&&5-I8*H{5cH-F4}`SSPl?$ zq&X$ju90f$w2*<-)F2qj>ZOr;whMgOD42yDdbHpeqyOD%l&|j;PF}r>Oz~}yF~|i& zJK&g#<2FQYT`HQ%>DNU1Ky2eS8h0O%EdfH1ohalRWn*tW`~QwLT!?=~=D>gnlA(nW zm7zllY6v6n8pX3OihS-u!#00>JU;)>Pv6-3YVr8^1R8R8bcch6Xun^5?A-wpR@m;N z!|lg0-X{S;*lvx<-m6*APyn_Y_GtU@jqr^)GkD7elE-8wzo*6~FC6AMDxc%OdO)H(EidF3*8 z?>;bp)Hyi!kDk74saSc(&e?D{0h#O#hi8z<+;HIh{mRJGu{8%WY#m$l7LPiyWHq znlWC_py^(W1www2qiuKrScM*5&pr@fiJWVBxDC$(t8fhRnCQhgAmr~o+KzNa&fRvo z7H5T3sN?k%1vz>mtAFg)ld%BZE^jWk|7nIyHF{mTIl(X&_aR*P(=iw*^9UHoQz+hq znKYitji>5n#@3ArZU}etPjq(;6SIveR@RLn0|`xbT4N0B2PO;yml2H$0%VPP%VLZY zizbXro)C@u^JUqDlkm&}QrM$IDcNH}li6cK3)$kJlh_p4!d-;f(g5>M)0&*eWM0-i z8kYmzyonnv!HnUFtI_Q2m1M7p?A(db75)sHqZ?ECiS1EcZVwt4&qevesAs+m6LvQ? zjmg={f}SFg;5PU>TaVpQ+G%8T#A*n!oJlK^aCkV|ea?Ah$`x4ls-5Q2Q{w9`