qsharp-lang 1.25.3-dev → 1.25.4-dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/katas-content.generated.js +1 -1
- package/dist/katas-content.generated.md.js +1 -1
- package/docs/Microsoft.Quantum.Core/IsRangeEmpty.md +1 -1
- package/docs/Microsoft.Quantum.Core/Length.md +1 -1
- package/docs/Microsoft.Quantum.Core/RangeEnd.md +1 -1
- package/docs/Microsoft.Quantum.Core/RangeStart.md +1 -1
- package/docs/Microsoft.Quantum.Core/Repeated.md +1 -1
- package/docs/Microsoft.Quantum.Core/index.md +1 -1
- package/docs/Std.Arithmetic/AddLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfEqualL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfEqualLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfGreaterL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfGreaterLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfGreaterOrEqualL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfGreaterOrEqualLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfLessL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfLessLE.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfLessOrEqualL.md +1 -1
- package/docs/Std.Arithmetic/ApplyIfLessOrEqualLE.md +1 -1
- package/docs/Std.Arithmetic/FourierTDIncByLE.md +1 -1
- package/docs/Std.Arithmetic/IncByI.md +1 -1
- package/docs/Std.Arithmetic/IncByIUsingIncByLE.md +1 -1
- package/docs/Std.Arithmetic/IncByL.md +1 -1
- package/docs/Std.Arithmetic/IncByLE.md +1 -1
- package/docs/Std.Arithmetic/IncByLEUsingAddLE.md +1 -1
- package/docs/Std.Arithmetic/IncByLUsingIncByLE.md +1 -1
- package/docs/Std.Arithmetic/LookAheadDKRSAddLE.md +1 -1
- package/docs/Std.Arithmetic/MAJ.md +1 -1
- package/docs/Std.Arithmetic/ReflectAboutInteger.md +1 -1
- package/docs/Std.Arithmetic/RippleCarryCGAddLE.md +1 -1
- package/docs/Std.Arithmetic/RippleCarryCGIncByLE.md +1 -1
- package/docs/Std.Arithmetic/RippleCarryTTKIncByLE.md +1 -1
- package/docs/Std.Arithmetic/index.md +1 -1
- package/docs/Std.Arrays/All.md +1 -1
- package/docs/Std.Arrays/Any.md +1 -1
- package/docs/Std.Arrays/Chunks.md +1 -1
- package/docs/Std.Arrays/CircularlyShifted.md +1 -1
- package/docs/Std.Arrays/ColumnAt.md +1 -1
- package/docs/Std.Arrays/Count.md +1 -1
- package/docs/Std.Arrays/Diagonal.md +1 -1
- package/docs/Std.Arrays/DrawMany.md +1 -1
- package/docs/Std.Arrays/Enumerated.md +1 -1
- package/docs/Std.Arrays/Excluding.md +1 -1
- package/docs/Std.Arrays/Filtered.md +1 -1
- package/docs/Std.Arrays/FlatMapped.md +1 -1
- package/docs/Std.Arrays/Flattened.md +1 -1
- package/docs/Std.Arrays/Fold.md +1 -1
- package/docs/Std.Arrays/ForEach.md +1 -1
- package/docs/Std.Arrays/Head.md +1 -1
- package/docs/Std.Arrays/HeadAndRest.md +1 -1
- package/docs/Std.Arrays/IndexOf.md +1 -1
- package/docs/Std.Arrays/IndexRange.md +1 -1
- package/docs/Std.Arrays/Interleaved.md +1 -1
- package/docs/Std.Arrays/IsEmpty.md +1 -1
- package/docs/Std.Arrays/IsRectangularArray.md +1 -1
- package/docs/Std.Arrays/IsSorted.md +1 -1
- package/docs/Std.Arrays/IsSquareArray.md +1 -1
- package/docs/Std.Arrays/Mapped.md +1 -1
- package/docs/Std.Arrays/MappedByIndex.md +1 -1
- package/docs/Std.Arrays/MappedOverRange.md +1 -1
- package/docs/Std.Arrays/Most.md +1 -1
- package/docs/Std.Arrays/MostAndTail.md +1 -1
- package/docs/Std.Arrays/Padded.md +1 -1
- package/docs/Std.Arrays/Partitioned.md +1 -1
- package/docs/Std.Arrays/Rest.md +1 -1
- package/docs/Std.Arrays/Reversed.md +1 -1
- package/docs/Std.Arrays/SequenceI.md +1 -1
- package/docs/Std.Arrays/SequenceL.md +1 -1
- package/docs/Std.Arrays/Sorted.md +1 -1
- package/docs/Std.Arrays/Subarray.md +1 -1
- package/docs/Std.Arrays/Swapped.md +1 -1
- package/docs/Std.Arrays/Tail.md +1 -1
- package/docs/Std.Arrays/Transposed.md +1 -1
- package/docs/Std.Arrays/Unzipped.md +1 -1
- package/docs/Std.Arrays/Where.md +1 -1
- package/docs/Std.Arrays/Windows.md +1 -1
- package/docs/Std.Arrays/Zipped.md +1 -1
- package/docs/Std.Arrays/index.md +1 -1
- package/docs/Std.Canon/ApplyCNOTChain.md +1 -1
- package/docs/Std.Canon/ApplyControlledOnBitString.md +1 -1
- package/docs/Std.Canon/ApplyControlledOnInt.md +1 -1
- package/docs/Std.Canon/ApplyOperationPowerA.md +1 -1
- package/docs/Std.Canon/ApplyOperationPowerCA.md +1 -1
- package/docs/Std.Canon/ApplyP.md +1 -1
- package/docs/Std.Canon/ApplyPauli.md +1 -1
- package/docs/Std.Canon/ApplyPauliFromBitString.md +1 -1
- package/docs/Std.Canon/ApplyPauliFromInt.md +1 -1
- package/docs/Std.Canon/ApplyQFT.md +1 -1
- package/docs/Std.Canon/ApplyQPE.md +1 -1
- package/docs/Std.Canon/ApplyToEach.md +1 -1
- package/docs/Std.Canon/ApplyToEachA.md +1 -1
- package/docs/Std.Canon/ApplyToEachC.md +1 -1
- package/docs/Std.Canon/ApplyToEachCA.md +1 -1
- package/docs/Std.Canon/ApplyXorInPlace.md +1 -1
- package/docs/Std.Canon/ApplyXorInPlaceL.md +1 -1
- package/docs/Std.Canon/CX.md +1 -1
- package/docs/Std.Canon/CY.md +1 -1
- package/docs/Std.Canon/CZ.md +1 -1
- package/docs/Std.Canon/Fst.md +1 -1
- package/docs/Std.Canon/MapPauliAxis.md +1 -1
- package/docs/Std.Canon/Relabel.md +1 -1
- package/docs/Std.Canon/Snd.md +1 -1
- package/docs/Std.Canon/SwapReverseRegister.md +1 -1
- package/docs/Std.Canon/index.md +1 -1
- package/docs/Std.Convert/BigIntAsBoolArray.md +1 -1
- package/docs/Std.Convert/BigIntAsInt.md +1 -1
- package/docs/Std.Convert/BoolArrayAsBigInt.md +1 -1
- package/docs/Std.Convert/BoolArrayAsInt.md +1 -1
- package/docs/Std.Convert/BoolArrayAsResultArray.md +1 -1
- package/docs/Std.Convert/BoolAsResult.md +1 -1
- package/docs/Std.Convert/ComplexAsComplexPolar.md +1 -1
- package/docs/Std.Convert/ComplexPolarAsComplex.md +1 -1
- package/docs/Std.Convert/DoubleAsStringWithPrecision.md +1 -1
- package/docs/Std.Convert/IntAsBigInt.md +1 -1
- package/docs/Std.Convert/IntAsBoolArray.md +1 -1
- package/docs/Std.Convert/IntAsDouble.md +1 -1
- package/docs/Std.Convert/ResultArrayAsBoolArray.md +1 -1
- package/docs/Std.Convert/ResultArrayAsInt.md +1 -1
- package/docs/Std.Convert/ResultAsBool.md +1 -1
- package/docs/Std.Convert/index.md +1 -1
- package/docs/Std.Core/Complex.md +1 -1
- package/docs/Std.Core/Length.md +1 -1
- package/docs/Std.Core/Repeated.md +1 -1
- package/docs/Std.Core/index.md +1 -1
- package/docs/Std.Diagnostics/ApplyIdleNoise.md +1 -1
- package/docs/Std.Diagnostics/BitFlipNoise.md +1 -1
- package/docs/Std.Diagnostics/CheckAllZero.md +1 -1
- package/docs/Std.Diagnostics/CheckOperationsAreEqual.md +1 -1
- package/docs/Std.Diagnostics/CheckZero.md +1 -1
- package/docs/Std.Diagnostics/ConfigurePauliNoise.md +1 -1
- package/docs/Std.Diagnostics/ConfigureQubitLoss.md +1 -1
- package/docs/Std.Diagnostics/DepolarizingNoise.md +1 -1
- package/docs/Std.Diagnostics/DumpMachine.md +1 -1
- package/docs/Std.Diagnostics/DumpOperation.md +1 -1
- package/docs/Std.Diagnostics/DumpRegister.md +1 -1
- package/docs/Std.Diagnostics/Fact.md +1 -1
- package/docs/Std.Diagnostics/NoNoise.md +1 -1
- package/docs/Std.Diagnostics/PhaseFlipNoise.md +1 -1
- package/docs/Std.Diagnostics/StartCountingFunction.md +1 -1
- package/docs/Std.Diagnostics/StartCountingOperation.md +1 -1
- package/docs/Std.Diagnostics/StartCountingQubits.md +1 -1
- package/docs/Std.Diagnostics/StopCountingFunction.md +1 -1
- package/docs/Std.Diagnostics/StopCountingOperation.md +1 -1
- package/docs/Std.Diagnostics/StopCountingQubits.md +1 -1
- package/docs/Std.Diagnostics/index.md +1 -1
- package/docs/Std.Intrinsic/AND.md +1 -1
- package/docs/Std.Intrinsic/ApplyUnitary.md +1 -1
- package/docs/Std.Intrinsic/CCNOT.md +1 -1
- package/docs/Std.Intrinsic/CNOT.md +1 -1
- package/docs/Std.Intrinsic/Exp.md +1 -1
- package/docs/Std.Intrinsic/H.md +1 -1
- package/docs/Std.Intrinsic/I.md +1 -1
- package/docs/Std.Intrinsic/M.md +1 -1
- package/docs/Std.Intrinsic/Measure.md +1 -1
- package/docs/Std.Intrinsic/Message.md +1 -1
- package/docs/Std.Intrinsic/R.md +1 -1
- package/docs/Std.Intrinsic/R1.md +1 -1
- package/docs/Std.Intrinsic/R1Frac.md +1 -1
- package/docs/Std.Intrinsic/RFrac.md +1 -1
- package/docs/Std.Intrinsic/Reset.md +1 -1
- package/docs/Std.Intrinsic/ResetAll.md +1 -1
- package/docs/Std.Intrinsic/Rx.md +1 -1
- package/docs/Std.Intrinsic/Rxx.md +1 -1
- package/docs/Std.Intrinsic/Ry.md +1 -1
- package/docs/Std.Intrinsic/Ryy.md +1 -1
- package/docs/Std.Intrinsic/Rz.md +1 -1
- package/docs/Std.Intrinsic/Rzz.md +1 -1
- package/docs/Std.Intrinsic/S.md +1 -1
- package/docs/Std.Intrinsic/SWAP.md +1 -1
- package/docs/Std.Intrinsic/SX.md +1 -1
- package/docs/Std.Intrinsic/T.md +1 -1
- package/docs/Std.Intrinsic/X.md +1 -1
- package/docs/Std.Intrinsic/Y.md +1 -1
- package/docs/Std.Intrinsic/Z.md +1 -1
- package/docs/Std.Intrinsic/index.md +1 -1
- package/docs/Std.Logical/Xor.md +1 -1
- package/docs/Std.Logical/index.md +1 -1
- package/docs/Std.Math/AbsComplex.md +1 -1
- package/docs/Std.Math/AbsComplexPolar.md +1 -1
- package/docs/Std.Math/AbsD.md +1 -1
- package/docs/Std.Math/AbsI.md +1 -1
- package/docs/Std.Math/AbsL.md +1 -1
- package/docs/Std.Math/AbsSquaredComplex.md +1 -1
- package/docs/Std.Math/AbsSquaredComplexPolar.md +1 -1
- package/docs/Std.Math/ApproximateFactorial.md +1 -1
- package/docs/Std.Math/ArcCos.md +1 -1
- package/docs/Std.Math/ArcCosh.md +1 -1
- package/docs/Std.Math/ArcSin.md +1 -1
- package/docs/Std.Math/ArcSinh.md +1 -1
- package/docs/Std.Math/ArcTan.md +1 -1
- package/docs/Std.Math/ArcTan2.md +1 -1
- package/docs/Std.Math/ArcTanh.md +1 -1
- package/docs/Std.Math/ArgComplex.md +1 -1
- package/docs/Std.Math/ArgComplexPolar.md +1 -1
- package/docs/Std.Math/Binom.md +1 -1
- package/docs/Std.Math/BitSizeI.md +1 -1
- package/docs/Std.Math/BitSizeL.md +1 -1
- package/docs/Std.Math/Ceiling.md +1 -1
- package/docs/Std.Math/Complex.md +1 -1
- package/docs/Std.Math/ComplexPolar.md +1 -1
- package/docs/Std.Math/ContinuedFractionConvergentI.md +1 -1
- package/docs/Std.Math/ContinuedFractionConvergentL.md +1 -1
- package/docs/Std.Math/Cos.md +1 -1
- package/docs/Std.Math/Cosh.md +1 -1
- package/docs/Std.Math/DivRemI.md +1 -1
- package/docs/Std.Math/DivRemL.md +1 -1
- package/docs/Std.Math/DividedByC.md +1 -1
- package/docs/Std.Math/DividedByCP.md +1 -1
- package/docs/Std.Math/E.md +1 -1
- package/docs/Std.Math/ExpModI.md +1 -1
- package/docs/Std.Math/ExpModL.md +1 -1
- package/docs/Std.Math/ExtendedGreatestCommonDivisorI.md +1 -1
- package/docs/Std.Math/ExtendedGreatestCommonDivisorL.md +1 -1
- package/docs/Std.Math/FactorialI.md +1 -1
- package/docs/Std.Math/FactorialL.md +1 -1
- package/docs/Std.Math/Floor.md +1 -1
- package/docs/Std.Math/GreatestCommonDivisorI.md +1 -1
- package/docs/Std.Math/GreatestCommonDivisorL.md +1 -1
- package/docs/Std.Math/HammingWeightI.md +1 -1
- package/docs/Std.Math/InverseModI.md +1 -1
- package/docs/Std.Math/InverseModL.md +1 -1
- package/docs/Std.Math/IsCoprimeI.md +1 -1
- package/docs/Std.Math/IsCoprimeL.md +1 -1
- package/docs/Std.Math/IsInfinite.md +1 -1
- package/docs/Std.Math/IsNaN.md +1 -1
- package/docs/Std.Math/LargestFixedPoint.md +1 -1
- package/docs/Std.Math/Lg.md +1 -1
- package/docs/Std.Math/Log.md +1 -1
- package/docs/Std.Math/Log10.md +1 -1
- package/docs/Std.Math/LogFactorialD.md +1 -1
- package/docs/Std.Math/LogGammaD.md +1 -1
- package/docs/Std.Math/LogOf2.md +1 -1
- package/docs/Std.Math/Max.md +1 -1
- package/docs/Std.Math/MaxD.md +1 -1
- package/docs/Std.Math/MaxI.md +1 -1
- package/docs/Std.Math/MaxL.md +1 -1
- package/docs/Std.Math/Min.md +1 -1
- package/docs/Std.Math/MinD.md +1 -1
- package/docs/Std.Math/MinI.md +1 -1
- package/docs/Std.Math/MinL.md +1 -1
- package/docs/Std.Math/MinusC.md +1 -1
- package/docs/Std.Math/MinusCP.md +1 -1
- package/docs/Std.Math/ModulusI.md +1 -1
- package/docs/Std.Math/ModulusL.md +1 -1
- package/docs/Std.Math/NegationC.md +1 -1
- package/docs/Std.Math/NegationCP.md +1 -1
- package/docs/Std.Math/PI.md +1 -1
- package/docs/Std.Math/PNorm.md +1 -1
- package/docs/Std.Math/PNormalized.md +1 -1
- package/docs/Std.Math/PlusC.md +1 -1
- package/docs/Std.Math/PlusCP.md +1 -1
- package/docs/Std.Math/PowC.md +1 -1
- package/docs/Std.Math/PowCP.md +1 -1
- package/docs/Std.Math/RealMod.md +1 -1
- package/docs/Std.Math/Round.md +1 -1
- package/docs/Std.Math/RoundHalfAwayFromZero.md +1 -1
- package/docs/Std.Math/SignD.md +1 -1
- package/docs/Std.Math/SignI.md +1 -1
- package/docs/Std.Math/SignL.md +1 -1
- package/docs/Std.Math/Sin.md +1 -1
- package/docs/Std.Math/Sinh.md +1 -1
- package/docs/Std.Math/SmallestFixedPoint.md +1 -1
- package/docs/Std.Math/Sqrt.md +1 -1
- package/docs/Std.Math/SquaredNorm.md +1 -1
- package/docs/Std.Math/Tan.md +1 -1
- package/docs/Std.Math/Tanh.md +1 -1
- package/docs/Std.Math/TimesC.md +1 -1
- package/docs/Std.Math/TimesCP.md +1 -1
- package/docs/Std.Math/TrailingZeroCountI.md +1 -1
- package/docs/Std.Math/TrailingZeroCountL.md +1 -1
- package/docs/Std.Math/Truncate.md +1 -1
- package/docs/Std.Math/index.md +1 -1
- package/docs/Std.Measurement/IsLossResult.md +1 -1
- package/docs/Std.Measurement/MResetEachZ.md +1 -1
- package/docs/Std.Measurement/MResetX.md +1 -1
- package/docs/Std.Measurement/MResetY.md +1 -1
- package/docs/Std.Measurement/MResetZ.md +1 -1
- package/docs/Std.Measurement/MResetZChecked.md +1 -1
- package/docs/Std.Measurement/MeasureAllZ.md +1 -1
- package/docs/Std.Measurement/MeasureEachZ.md +1 -1
- package/docs/Std.Measurement/MeasureInteger.md +1 -1
- package/docs/Std.Measurement/index.md +1 -1
- package/docs/Std.Random/DrawRandomBool.md +1 -1
- package/docs/Std.Random/DrawRandomDouble.md +1 -1
- package/docs/Std.Random/DrawRandomInt.md +1 -1
- package/docs/Std.Random/index.md +1 -1
- package/docs/Std.Range/IsRangeEmpty.md +1 -1
- package/docs/Std.Range/RangeEnd.md +1 -1
- package/docs/Std.Range/RangeReverse.md +1 -1
- package/docs/Std.Range/RangeStart.md +1 -1
- package/docs/Std.Range/RangeStep.md +1 -1
- package/docs/Std.Range/index.md +1 -1
- package/docs/Std.ResourceEstimation/AccountForEstimates.md +1 -1
- package/docs/Std.ResourceEstimation/AuxQubitCount.md +1 -1
- package/docs/Std.ResourceEstimation/BeginEstimateCaching.md +1 -1
- package/docs/Std.ResourceEstimation/BeginRepeatEstimates.md +1 -1
- package/docs/Std.ResourceEstimation/CczCount.md +1 -1
- package/docs/Std.ResourceEstimation/EnableMemoryComputeArchitecture.md +1 -1
- package/docs/Std.ResourceEstimation/EndEstimateCaching.md +1 -1
- package/docs/Std.ResourceEstimation/EndRepeatEstimates.md +1 -1
- package/docs/Std.ResourceEstimation/LeastFrequentlyUsed.md +1 -1
- package/docs/Std.ResourceEstimation/LeastRecentlyUsed.md +1 -1
- package/docs/Std.ResourceEstimation/MeasurementCount.md +1 -1
- package/docs/Std.ResourceEstimation/PSSPCLayout.md +1 -1
- package/docs/Std.ResourceEstimation/RepeatEstimates.md +1 -1
- package/docs/Std.ResourceEstimation/RotationCount.md +1 -1
- package/docs/Std.ResourceEstimation/RotationDepth.md +1 -1
- package/docs/Std.ResourceEstimation/SingleVariant.md +1 -1
- package/docs/Std.ResourceEstimation/TCount.md +1 -1
- package/docs/Std.ResourceEstimation/index.md +1 -1
- package/docs/Std.StatePreparation/ApproximatelyPreparePureStateCP.md +1 -1
- package/docs/Std.StatePreparation/PreparePureStateD.md +1 -1
- package/docs/Std.StatePreparation/PrepareUniformSuperposition.md +1 -1
- package/docs/Std.StatePreparation/index.md +1 -1
- package/docs/Std.TableLookup/Select.md +1 -1
- package/docs/Std.TableLookup/index.md +1 -1
- package/docs/index.md +1 -1
- package/lib/nodejs/qsc_wasm.cjs +2 -2
- package/lib/nodejs/qsc_wasm_bg.wasm +0 -0
- package/lib/web/qsc_wasm.js +2 -2
- package/lib/web/qsc_wasm_bg.wasm +0 -0
- package/package.json +1 -1
- package/ux/atoms/index.css +2 -1
- package/ux/atoms/layout.ts +59 -17
- package/ux/circuit.tsx +2 -2
- package/ux/histogram.tsx +11 -5
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.ResourceEstimation.SingleVariant
|
|
3
3
|
title: SingleVariant function
|
|
4
4
|
description: "Q# SingleVariant function: Used to specify that there's only one execution variant in `BeginEstimateCaching` function"
|
|
5
|
-
ms.date: 02/
|
|
5
|
+
ms.date: 02/11/2026
|
|
6
6
|
qsharp.kind: function
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.ResourceEstimation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.ResourceEstimation.TCount
|
|
3
3
|
title: TCount function
|
|
4
4
|
description: "Q# TCount function: Returns a tuple that can be passed to the `AccountForEstimates` operation to specify that the number of the T gates is equal to the `amount`."
|
|
5
|
-
ms.date: 02/
|
|
5
|
+
ms.date: 02/11/2026
|
|
6
6
|
qsharp.kind: function
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.ResourceEstimation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.StatePreparation.ApproximatelyPreparePureStateCP
|
|
3
3
|
title: ApproximatelyPreparePureStateCP operation
|
|
4
4
|
description: "Q# ApproximatelyPreparePureStateCP operation: Given a set of coefficients and a big-endian quantum register, prepares a state on that register described by the given coefficients, up to a given approximation tolerance."
|
|
5
|
-
ms.date: 02/
|
|
5
|
+
ms.date: 02/11/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.StatePreparation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.StatePreparation.PreparePureStateD
|
|
3
3
|
title: PreparePureStateD operation
|
|
4
4
|
description: "Q# PreparePureStateD operation: Given a set of coefficients and a big-endian quantum register, prepares a state on that register described by the given coefficients."
|
|
5
|
-
ms.date: 02/
|
|
5
|
+
ms.date: 02/11/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.StatePreparation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.StatePreparation.PrepareUniformSuperposition
|
|
3
3
|
title: PrepareUniformSuperposition operation
|
|
4
4
|
description: "Q# PrepareUniformSuperposition operation: Prepares a uniform superposition of states that represent integers 0 through `nStates - 1` in a little-endian `qubits` register."
|
|
5
|
-
ms.date: 02/
|
|
5
|
+
ms.date: 02/11/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.StatePreparation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Qdk.Std.TableLookup.Select
|
|
3
3
|
title: Select operation
|
|
4
4
|
description: "Q# Select operation: Performs table lookup using a SELECT network"
|
|
5
|
-
ms.date: 02/
|
|
5
|
+
ms.date: 02/11/2026
|
|
6
6
|
qsharp.kind: operation
|
|
7
7
|
qsharp.package: __Std__
|
|
8
8
|
qsharp.namespace: Std.TableLookup
|
package/docs/index.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
uid: Microsoft.Quantum.apiref-toc
|
|
3
3
|
title: Q# standard libraries for the Microsoft Quantum Development Kit
|
|
4
4
|
description: Table of contents for the Q# standard libraries for Microsoft Quantum Development Kit
|
|
5
|
-
ms.date: 02/
|
|
5
|
+
ms.date: 02/11/2026
|
|
6
6
|
ms.topic: landing-page
|
|
7
7
|
---
|
|
8
8
|
|
package/lib/nodejs/qsc_wasm.cjs
CHANGED
|
@@ -1570,8 +1570,8 @@ module.exports.__wbindgen_cb_drop = function(arg0) {
|
|
|
1570
1570
|
return ret;
|
|
1571
1571
|
};
|
|
1572
1572
|
|
|
1573
|
-
module.exports.
|
|
1574
|
-
const ret = makeMutClosure(arg0, arg1,
|
|
1573
|
+
module.exports.__wbindgen_closure_wrapper6571 = function(arg0, arg1, arg2) {
|
|
1574
|
+
const ret = makeMutClosure(arg0, arg1, 2071, __wbg_adapter_52);
|
|
1575
1575
|
return addHeapObject(ret);
|
|
1576
1576
|
};
|
|
1577
1577
|
|
|
Binary file
|
package/lib/web/qsc_wasm.js
CHANGED
|
@@ -1525,8 +1525,8 @@ function __wbg_get_imports() {
|
|
|
1525
1525
|
const ret = false;
|
|
1526
1526
|
return ret;
|
|
1527
1527
|
};
|
|
1528
|
-
imports.wbg.
|
|
1529
|
-
const ret = makeMutClosure(arg0, arg1,
|
|
1528
|
+
imports.wbg.__wbindgen_closure_wrapper6571 = function(arg0, arg1, arg2) {
|
|
1529
|
+
const ret = makeMutClosure(arg0, arg1, 2071, __wbg_adapter_52);
|
|
1530
1530
|
return addHeapObject(ret);
|
|
1531
1531
|
};
|
|
1532
1532
|
imports.wbg.__wbindgen_debug_string = function(arg0, arg1) {
|
package/lib/web/qsc_wasm_bg.wasm
CHANGED
|
Binary file
|
package/package.json
CHANGED
package/ux/atoms/index.css
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
padding: 16px;
|
|
15
15
|
display: flex;
|
|
16
16
|
flex-direction: column;
|
|
17
|
+
position: relative;
|
|
17
18
|
}
|
|
18
19
|
|
|
19
20
|
.qs-atoms-app:focus {
|
|
@@ -165,7 +166,7 @@
|
|
|
165
166
|
position: absolute;
|
|
166
167
|
display: none;
|
|
167
168
|
left: 40px;
|
|
168
|
-
top:
|
|
169
|
+
top: 48px;
|
|
169
170
|
border: 1px solid var(--qdk-mid-gray);
|
|
170
171
|
border-radius: 8px;
|
|
171
172
|
background-color: var(--qdk-host-background);
|
package/ux/atoms/layout.ts
CHANGED
|
@@ -10,7 +10,7 @@ type ZoneDataInput = {
|
|
|
10
10
|
kind: "register" | "interaction" | "measurement";
|
|
11
11
|
} & (
|
|
12
12
|
| { rows: number; rowStart?: never; rowEnd?: never }
|
|
13
|
-
| { rowStart: number; rowEnd: number; rows?: never }
|
|
13
|
+
| { rowStart: number; rowEnd: number; skipRows?: number[]; rows?: never }
|
|
14
14
|
);
|
|
15
15
|
|
|
16
16
|
// Normalized internal format always uses rowStart/rowEnd
|
|
@@ -18,6 +18,7 @@ type ZoneData = {
|
|
|
18
18
|
title: string;
|
|
19
19
|
rowStart: number;
|
|
20
20
|
rowEnd: number;
|
|
21
|
+
skipRows?: number[];
|
|
21
22
|
kind: "register" | "interaction" | "measurement";
|
|
22
23
|
};
|
|
23
24
|
|
|
@@ -28,18 +29,31 @@ export type ZoneLayout = {
|
|
|
28
29
|
// e.g. if `skipCols: [0,9]` was provided, then a `move(0,1)` would actually move to visual column 0,
|
|
29
30
|
// and a `move(1,10)` would move to visual column 8.
|
|
30
31
|
skipCols?: number[];
|
|
32
|
+
// If renumber is true, then all rows and columns will be renumbered in the visualization to be sequential starting from 0
|
|
33
|
+
renumber?: boolean;
|
|
31
34
|
};
|
|
32
35
|
|
|
36
|
+
const TWO_QUBIT_GATES = ["CX", "CY", "CZ", "RXX", "RYY", "RZZ", "SWAP"];
|
|
37
|
+
|
|
33
38
|
// Normalize zone data to always use rowStart/rowEnd format
|
|
34
39
|
function normalizeZones(zones: ZoneDataInput[]): ZoneData[] {
|
|
35
40
|
let nextRowStart = 0;
|
|
36
41
|
return zones.map((zone) => {
|
|
37
42
|
if ("rowStart" in zone && zone.rowStart !== undefined) {
|
|
43
|
+
// Verify if skipRows are within the rowStart and rowEnd range
|
|
44
|
+
if (zone.skipRows) {
|
|
45
|
+
if (
|
|
46
|
+
!zone.skipRows.every((r) => r >= zone.rowStart && r <= zone.rowEnd)
|
|
47
|
+
) {
|
|
48
|
+
throw `Invalid skipRows in zone "${zone.title}": all skipRows must be between rowStart and rowEnd`;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
38
51
|
// New format with explicit rowStart/rowEnd
|
|
39
52
|
return {
|
|
40
53
|
title: zone.title,
|
|
41
54
|
rowStart: zone.rowStart,
|
|
42
55
|
rowEnd: zone.rowEnd,
|
|
56
|
+
skipRows: zone.skipRows,
|
|
43
57
|
kind: zone.kind,
|
|
44
58
|
};
|
|
45
59
|
} else {
|
|
@@ -97,6 +111,7 @@ export function fillQubitLocations(
|
|
|
97
111
|
normalizedZones.forEach((zone) => {
|
|
98
112
|
if (zone.kind === "register") {
|
|
99
113
|
for (let row = zone.rowStart; row <= zone.rowEnd; ++row) {
|
|
114
|
+
if (zone.skipRows && zone.skipRows.includes(row)) continue;
|
|
100
115
|
for (let col = 0; col < layout.cols; ++col) {
|
|
101
116
|
qubits.push([row, col]);
|
|
102
117
|
}
|
|
@@ -121,7 +136,7 @@ function parseMove(
|
|
|
121
136
|
op: string,
|
|
122
137
|
skipCols?: number[],
|
|
123
138
|
): { qubit: number; to: Location } | undefined {
|
|
124
|
-
const match = op.match(/move
|
|
139
|
+
const match = op.match(/move?\((\d+), (\d+)\) (\d+)/);
|
|
125
140
|
if (match) {
|
|
126
141
|
const to: Location = [
|
|
127
142
|
parseInt(match[1]),
|
|
@@ -134,15 +149,15 @@ function parseMove(
|
|
|
134
149
|
|
|
135
150
|
function parseGate(
|
|
136
151
|
op: string,
|
|
137
|
-
): { gate: string;
|
|
138
|
-
const match = op.match(/(\w+)\s*(\(.*\))? (\d+)/);
|
|
152
|
+
): { gate: string; qubits: number[]; arg?: string } | undefined {
|
|
153
|
+
const match = op.match(/(\w+)\s*(\(.*\))? ([\d,\s]+)/);
|
|
139
154
|
if (match) {
|
|
140
155
|
const gate = match[1];
|
|
141
|
-
const
|
|
156
|
+
const qubits = match[3].split(",").map((s) => parseInt(s.trim()));
|
|
142
157
|
const arg = match[2]
|
|
143
158
|
? match[2].substring(1, match[2].length - 2)
|
|
144
159
|
: undefined;
|
|
145
|
-
return { gate,
|
|
160
|
+
return { gate, qubits, arg };
|
|
146
161
|
}
|
|
147
162
|
}
|
|
148
163
|
|
|
@@ -347,7 +362,8 @@ export class Layout {
|
|
|
347
362
|
this.effectiveCols = layout.cols - (layout.skipCols?.length ?? 0);
|
|
348
363
|
|
|
349
364
|
const totalRows = this.normalizedZones.reduce(
|
|
350
|
-
(prev, curr) =>
|
|
365
|
+
(prev, curr) =>
|
|
366
|
+
prev + (curr.rowEnd - curr.rowStart + 1) - (curr.skipRows?.length ?? 0),
|
|
351
367
|
0,
|
|
352
368
|
);
|
|
353
369
|
|
|
@@ -365,11 +381,14 @@ export class Layout {
|
|
|
365
381
|
// Maps absolute row numbers to visual Y offsets
|
|
366
382
|
this.rowOffsetMap = new Map();
|
|
367
383
|
let nextOffset = zoneSpacing;
|
|
384
|
+
let globalRowIndex = 0;
|
|
368
385
|
this.normalizedZones.forEach((zone, index) => {
|
|
369
|
-
this.renderZone(index, nextOffset);
|
|
386
|
+
globalRowIndex = this.renderZone(index, nextOffset, globalRowIndex);
|
|
370
387
|
for (let row = zone.rowStart; row <= zone.rowEnd; ++row) {
|
|
371
|
-
|
|
372
|
-
|
|
388
|
+
if (!zone.skipRows?.includes(row)) {
|
|
389
|
+
this.rowOffsetMap.set(row, nextOffset);
|
|
390
|
+
nextOffset += qubitSize;
|
|
391
|
+
}
|
|
373
392
|
}
|
|
374
393
|
nextOffset += zoneSpacing; // Add spacing after each zone
|
|
375
394
|
});
|
|
@@ -419,9 +438,17 @@ export class Layout {
|
|
|
419
438
|
return this.trace.steps[step].ops;
|
|
420
439
|
}
|
|
421
440
|
|
|
422
|
-
private renderZone(
|
|
441
|
+
private renderZone(
|
|
442
|
+
zoneIndex: number,
|
|
443
|
+
offset: number,
|
|
444
|
+
globalRowIndex: number,
|
|
445
|
+
): number {
|
|
423
446
|
const zoneData = this.normalizedZones[zoneIndex];
|
|
424
|
-
const zoneRows =
|
|
447
|
+
const zoneRows =
|
|
448
|
+
zoneData.rowEnd -
|
|
449
|
+
zoneData.rowStart +
|
|
450
|
+
1 -
|
|
451
|
+
(zoneData.skipRows?.length ?? 0);
|
|
425
452
|
const g = createSvgElements("g")[0];
|
|
426
453
|
setAttributes(g, {
|
|
427
454
|
transform: `translate(0 ${offset})`,
|
|
@@ -478,16 +505,19 @@ export class Layout {
|
|
|
478
505
|
}
|
|
479
506
|
|
|
480
507
|
// Number the rows using the absolute row numbers from rowStart to rowEnd
|
|
481
|
-
|
|
482
|
-
|
|
508
|
+
let i = 0;
|
|
509
|
+
for (let rowNum = zoneData.rowStart; rowNum <= zoneData.rowEnd; ++rowNum) {
|
|
510
|
+
if (zoneData.skipRows && zoneData.skipRows.includes(rowNum)) continue;
|
|
483
511
|
const label = createSvgElements("text")[0];
|
|
484
512
|
setAttributes(label, {
|
|
485
513
|
x: `${this.effectiveCols * qubitSize + 5}`,
|
|
486
514
|
y: `${i * qubitSize + 5}`,
|
|
487
515
|
class: "qs-atoms-label",
|
|
488
516
|
});
|
|
489
|
-
label.textContent = `${rowNum}`;
|
|
517
|
+
label.textContent = `${this.layout.renumber ? globalRowIndex : rowNum}`;
|
|
490
518
|
appendChildren(g, [label]);
|
|
519
|
+
++i;
|
|
520
|
+
++globalRowIndex;
|
|
491
521
|
}
|
|
492
522
|
|
|
493
523
|
// Draw the title
|
|
@@ -501,6 +531,7 @@ export class Layout {
|
|
|
501
531
|
|
|
502
532
|
appendChildren(g, [text]);
|
|
503
533
|
appendChildren(this.container, [g]);
|
|
534
|
+
return globalRowIndex;
|
|
504
535
|
}
|
|
505
536
|
|
|
506
537
|
private renderQubits() {
|
|
@@ -547,7 +578,7 @@ export class Layout {
|
|
|
547
578
|
y: `5`,
|
|
548
579
|
class: "qs-atoms-label",
|
|
549
580
|
});
|
|
550
|
-
label.textContent = `${origCol}`;
|
|
581
|
+
label.textContent = `${this.layout.renumber ? visualCol : origCol}`;
|
|
551
582
|
appendChildren(g, [label]);
|
|
552
583
|
++visualCol;
|
|
553
584
|
}
|
|
@@ -887,7 +918,18 @@ export class Layout {
|
|
|
887
918
|
const gate = parseGate(op);
|
|
888
919
|
if (!gate) throw `Invalid gate: ${op}`;
|
|
889
920
|
const arg = gate.arg ? gate.arg.substring(0, 4) : undefined;
|
|
890
|
-
|
|
921
|
+
const isTwoQubitGate = TWO_QUBIT_GATES.includes(
|
|
922
|
+
gate.gate.toUpperCase(),
|
|
923
|
+
);
|
|
924
|
+
// Handle the case where an op is a list of qubits to apply the same op to
|
|
925
|
+
for (let i = 0; i < gate.qubits.length; i++) {
|
|
926
|
+
if (isTwoQubitGate && i % 2 !== 0) continue;
|
|
927
|
+
this.renderGateOnQubit(
|
|
928
|
+
gate.qubits[i],
|
|
929
|
+
gate.gate.toUpperCase(),
|
|
930
|
+
arg,
|
|
931
|
+
);
|
|
932
|
+
}
|
|
891
933
|
}
|
|
892
934
|
}
|
|
893
935
|
});
|
package/ux/circuit.tsx
CHANGED
|
@@ -23,7 +23,7 @@ export function Circuit(props: {
|
|
|
23
23
|
isEditable: boolean;
|
|
24
24
|
editCallback?: (fileData: qviz.CircuitGroup) => void;
|
|
25
25
|
runCallback?: () => void;
|
|
26
|
-
renderLocations
|
|
26
|
+
renderLocations?: (s: SourceLocation[]) => { title: string; href: string };
|
|
27
27
|
}) {
|
|
28
28
|
let unrenderable = false;
|
|
29
29
|
let qubits = 0;
|
|
@@ -68,7 +68,7 @@ function ZoomableCircuit(props: {
|
|
|
68
68
|
isEditable: boolean;
|
|
69
69
|
editCallback?: (fileData: qviz.CircuitGroup) => void;
|
|
70
70
|
runCallback?: () => void;
|
|
71
|
-
renderLocations
|
|
71
|
+
renderLocations?: (s: SourceLocation[]) => { title: string; href: string };
|
|
72
72
|
}) {
|
|
73
73
|
const circuitDiv = useRef<HTMLDivElement>(null);
|
|
74
74
|
const [zoomLevel, setZoomLevel] = useState(100);
|
package/ux/histogram.tsx
CHANGED
|
@@ -67,17 +67,23 @@ function getDefaultMenuSelection(
|
|
|
67
67
|
return selection;
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
const reKetResult =
|
|
70
|
+
const reKetResult =
|
|
71
|
+
/^\[(?:(Zero|One|Loss|0|1|2|-), *)*(Zero|One|Loss|0|1|2|-)\]$/;
|
|
71
72
|
function resultToKet(result: string): string {
|
|
72
73
|
if (typeof result !== "string") return "ERROR";
|
|
73
74
|
|
|
74
75
|
if (reKetResult.test(result)) {
|
|
75
|
-
// The result
|
|
76
|
-
|
|
77
|
-
const matches = result.match(/(One|Zero|Loss)/g);
|
|
76
|
+
// The result fits our expected pattern, so we can convert it to a ket. If not, just return the raw result.
|
|
77
|
+
const matches = result.match(/(One|Zero|Loss|0|1|2|-)/g);
|
|
78
78
|
let ket = "|";
|
|
79
79
|
matches?.forEach(
|
|
80
|
-
(digit) =>
|
|
80
|
+
(digit) =>
|
|
81
|
+
(ket +=
|
|
82
|
+
digit == "One" || digit == "1"
|
|
83
|
+
? "1"
|
|
84
|
+
: digit == "Zero" || digit == "0"
|
|
85
|
+
? "0"
|
|
86
|
+
: "-"),
|
|
81
87
|
);
|
|
82
88
|
ket += "⟩";
|
|
83
89
|
return ket;
|