qsharp-lang 1.23.1-dev → 1.23.2-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.
Files changed (342) hide show
  1. package/dist/browser.d.ts +1 -1
  2. package/dist/katas-content.generated.js +1 -1
  3. package/dist/katas-content.generated.md.js +1 -1
  4. package/dist/main.d.ts +1 -0
  5. package/dist/samples.generated.js +1 -1
  6. package/docs/Microsoft.Quantum.Core/IsRangeEmpty.md +1 -1
  7. package/docs/Microsoft.Quantum.Core/Length.md +1 -1
  8. package/docs/Microsoft.Quantum.Core/RangeEnd.md +1 -1
  9. package/docs/Microsoft.Quantum.Core/RangeStart.md +1 -1
  10. package/docs/Microsoft.Quantum.Core/Repeated.md +1 -1
  11. package/docs/Microsoft.Quantum.Core/index.md +1 -1
  12. package/docs/Std.Arithmetic/AddLE.md +1 -1
  13. package/docs/Std.Arithmetic/ApplyIfEqualL.md +1 -1
  14. package/docs/Std.Arithmetic/ApplyIfEqualLE.md +1 -1
  15. package/docs/Std.Arithmetic/ApplyIfGreaterL.md +1 -1
  16. package/docs/Std.Arithmetic/ApplyIfGreaterLE.md +1 -1
  17. package/docs/Std.Arithmetic/ApplyIfGreaterOrEqualL.md +1 -1
  18. package/docs/Std.Arithmetic/ApplyIfGreaterOrEqualLE.md +1 -1
  19. package/docs/Std.Arithmetic/ApplyIfLessL.md +1 -1
  20. package/docs/Std.Arithmetic/ApplyIfLessLE.md +1 -1
  21. package/docs/Std.Arithmetic/ApplyIfLessOrEqualL.md +1 -1
  22. package/docs/Std.Arithmetic/ApplyIfLessOrEqualLE.md +1 -1
  23. package/docs/Std.Arithmetic/FourierTDIncByLE.md +1 -1
  24. package/docs/Std.Arithmetic/IncByI.md +1 -1
  25. package/docs/Std.Arithmetic/IncByIUsingIncByLE.md +1 -1
  26. package/docs/Std.Arithmetic/IncByL.md +1 -1
  27. package/docs/Std.Arithmetic/IncByLE.md +1 -1
  28. package/docs/Std.Arithmetic/IncByLEUsingAddLE.md +1 -1
  29. package/docs/Std.Arithmetic/IncByLUsingIncByLE.md +1 -1
  30. package/docs/Std.Arithmetic/LookAheadDKRSAddLE.md +1 -1
  31. package/docs/Std.Arithmetic/MAJ.md +1 -1
  32. package/docs/Std.Arithmetic/ReflectAboutInteger.md +1 -1
  33. package/docs/Std.Arithmetic/RippleCarryCGAddLE.md +1 -1
  34. package/docs/Std.Arithmetic/RippleCarryCGIncByLE.md +1 -1
  35. package/docs/Std.Arithmetic/RippleCarryTTKIncByLE.md +1 -1
  36. package/docs/Std.Arithmetic/index.md +1 -1
  37. package/docs/Std.Arrays/All.md +1 -1
  38. package/docs/Std.Arrays/Any.md +1 -1
  39. package/docs/Std.Arrays/Chunks.md +1 -1
  40. package/docs/Std.Arrays/CircularlyShifted.md +1 -1
  41. package/docs/Std.Arrays/ColumnAt.md +1 -1
  42. package/docs/Std.Arrays/Count.md +1 -1
  43. package/docs/Std.Arrays/Diagonal.md +1 -1
  44. package/docs/Std.Arrays/DrawMany.md +1 -1
  45. package/docs/Std.Arrays/Enumerated.md +1 -1
  46. package/docs/Std.Arrays/Excluding.md +1 -1
  47. package/docs/Std.Arrays/Filtered.md +1 -1
  48. package/docs/Std.Arrays/FlatMapped.md +1 -1
  49. package/docs/Std.Arrays/Flattened.md +1 -1
  50. package/docs/Std.Arrays/Fold.md +1 -1
  51. package/docs/Std.Arrays/ForEach.md +1 -1
  52. package/docs/Std.Arrays/Head.md +1 -1
  53. package/docs/Std.Arrays/HeadAndRest.md +1 -1
  54. package/docs/Std.Arrays/IndexOf.md +1 -1
  55. package/docs/Std.Arrays/IndexRange.md +1 -1
  56. package/docs/Std.Arrays/Interleaved.md +1 -1
  57. package/docs/Std.Arrays/IsEmpty.md +1 -1
  58. package/docs/Std.Arrays/IsRectangularArray.md +1 -1
  59. package/docs/Std.Arrays/IsSorted.md +1 -1
  60. package/docs/Std.Arrays/IsSquareArray.md +1 -1
  61. package/docs/Std.Arrays/Mapped.md +1 -1
  62. package/docs/Std.Arrays/MappedByIndex.md +1 -1
  63. package/docs/Std.Arrays/MappedOverRange.md +1 -1
  64. package/docs/Std.Arrays/Most.md +1 -1
  65. package/docs/Std.Arrays/MostAndTail.md +1 -1
  66. package/docs/Std.Arrays/Padded.md +1 -1
  67. package/docs/Std.Arrays/Partitioned.md +1 -1
  68. package/docs/Std.Arrays/Rest.md +1 -1
  69. package/docs/Std.Arrays/Reversed.md +1 -1
  70. package/docs/Std.Arrays/SequenceI.md +1 -1
  71. package/docs/Std.Arrays/SequenceL.md +1 -1
  72. package/docs/Std.Arrays/Sorted.md +1 -1
  73. package/docs/Std.Arrays/Subarray.md +1 -1
  74. package/docs/Std.Arrays/Swapped.md +1 -1
  75. package/docs/Std.Arrays/Tail.md +1 -1
  76. package/docs/Std.Arrays/Transposed.md +1 -1
  77. package/docs/Std.Arrays/Unzipped.md +1 -1
  78. package/docs/Std.Arrays/Where.md +1 -1
  79. package/docs/Std.Arrays/Windows.md +1 -1
  80. package/docs/Std.Arrays/Zipped.md +1 -1
  81. package/docs/Std.Arrays/index.md +1 -1
  82. package/docs/Std.Canon/ApplyCNOTChain.md +1 -1
  83. package/docs/Std.Canon/ApplyControlledOnBitString.md +1 -1
  84. package/docs/Std.Canon/ApplyControlledOnInt.md +1 -1
  85. package/docs/Std.Canon/ApplyOperationPowerA.md +1 -1
  86. package/docs/Std.Canon/ApplyOperationPowerCA.md +1 -1
  87. package/docs/Std.Canon/ApplyP.md +1 -1
  88. package/docs/Std.Canon/ApplyPauli.md +1 -1
  89. package/docs/Std.Canon/ApplyPauliFromBitString.md +1 -1
  90. package/docs/Std.Canon/ApplyPauliFromInt.md +1 -1
  91. package/docs/Std.Canon/ApplyQFT.md +1 -1
  92. package/docs/Std.Canon/ApplyQPE.md +1 -1
  93. package/docs/Std.Canon/ApplyToEach.md +1 -1
  94. package/docs/Std.Canon/ApplyToEachA.md +1 -1
  95. package/docs/Std.Canon/ApplyToEachC.md +1 -1
  96. package/docs/Std.Canon/ApplyToEachCA.md +1 -1
  97. package/docs/Std.Canon/ApplyXorInPlace.md +1 -1
  98. package/docs/Std.Canon/ApplyXorInPlaceL.md +1 -1
  99. package/docs/Std.Canon/CX.md +1 -1
  100. package/docs/Std.Canon/CY.md +1 -1
  101. package/docs/Std.Canon/CZ.md +1 -1
  102. package/docs/Std.Canon/Fst.md +1 -1
  103. package/docs/Std.Canon/MapPauliAxis.md +1 -1
  104. package/docs/Std.Canon/Relabel.md +1 -1
  105. package/docs/Std.Canon/Snd.md +1 -1
  106. package/docs/Std.Canon/SwapReverseRegister.md +1 -1
  107. package/docs/Std.Canon/index.md +1 -1
  108. package/docs/Std.Convert/BigIntAsBoolArray.md +1 -1
  109. package/docs/Std.Convert/BigIntAsInt.md +1 -1
  110. package/docs/Std.Convert/BoolArrayAsBigInt.md +1 -1
  111. package/docs/Std.Convert/BoolArrayAsInt.md +1 -1
  112. package/docs/Std.Convert/BoolArrayAsResultArray.md +1 -1
  113. package/docs/Std.Convert/BoolAsResult.md +1 -1
  114. package/docs/Std.Convert/ComplexAsComplexPolar.md +1 -1
  115. package/docs/Std.Convert/ComplexPolarAsComplex.md +1 -1
  116. package/docs/Std.Convert/DoubleAsStringWithPrecision.md +1 -1
  117. package/docs/Std.Convert/IntAsBigInt.md +1 -1
  118. package/docs/Std.Convert/IntAsBoolArray.md +1 -1
  119. package/docs/Std.Convert/IntAsDouble.md +1 -1
  120. package/docs/Std.Convert/ResultArrayAsBoolArray.md +1 -1
  121. package/docs/Std.Convert/ResultArrayAsInt.md +1 -1
  122. package/docs/Std.Convert/ResultAsBool.md +1 -1
  123. package/docs/Std.Convert/index.md +1 -1
  124. package/docs/Std.Core/Complex.md +1 -1
  125. package/docs/Std.Core/Length.md +1 -1
  126. package/docs/Std.Core/Repeated.md +1 -1
  127. package/docs/Std.Core/index.md +1 -1
  128. package/docs/Std.Diagnostics/ApplyIdleNoise.md +1 -1
  129. package/docs/Std.Diagnostics/BitFlipNoise.md +1 -1
  130. package/docs/Std.Diagnostics/CheckAllZero.md +1 -1
  131. package/docs/Std.Diagnostics/CheckOperationsAreEqual.md +1 -1
  132. package/docs/Std.Diagnostics/CheckZero.md +1 -1
  133. package/docs/Std.Diagnostics/ConfigurePauliNoise.md +1 -1
  134. package/docs/Std.Diagnostics/ConfigureQubitLoss.md +1 -1
  135. package/docs/Std.Diagnostics/DepolarizingNoise.md +1 -1
  136. package/docs/Std.Diagnostics/DumpMachine.md +1 -1
  137. package/docs/Std.Diagnostics/DumpOperation.md +1 -1
  138. package/docs/Std.Diagnostics/DumpRegister.md +1 -1
  139. package/docs/Std.Diagnostics/Fact.md +1 -1
  140. package/docs/Std.Diagnostics/NoNoise.md +1 -1
  141. package/docs/Std.Diagnostics/PhaseFlipNoise.md +1 -1
  142. package/docs/Std.Diagnostics/StartCountingFunction.md +1 -1
  143. package/docs/Std.Diagnostics/StartCountingOperation.md +1 -1
  144. package/docs/Std.Diagnostics/StartCountingQubits.md +1 -1
  145. package/docs/Std.Diagnostics/StopCountingFunction.md +1 -1
  146. package/docs/Std.Diagnostics/StopCountingOperation.md +1 -1
  147. package/docs/Std.Diagnostics/StopCountingQubits.md +1 -1
  148. package/docs/Std.Diagnostics/index.md +1 -1
  149. package/docs/Std.Intrinsic/AND.md +1 -1
  150. package/docs/Std.Intrinsic/ApplyUnitary.md +1 -1
  151. package/docs/Std.Intrinsic/CCNOT.md +1 -1
  152. package/docs/Std.Intrinsic/CNOT.md +1 -1
  153. package/docs/Std.Intrinsic/Exp.md +1 -1
  154. package/docs/Std.Intrinsic/H.md +1 -1
  155. package/docs/Std.Intrinsic/I.md +1 -1
  156. package/docs/Std.Intrinsic/M.md +1 -1
  157. package/docs/Std.Intrinsic/Measure.md +1 -1
  158. package/docs/Std.Intrinsic/Message.md +1 -1
  159. package/docs/Std.Intrinsic/R.md +1 -1
  160. package/docs/Std.Intrinsic/R1.md +1 -1
  161. package/docs/Std.Intrinsic/R1Frac.md +1 -1
  162. package/docs/Std.Intrinsic/RFrac.md +1 -1
  163. package/docs/Std.Intrinsic/Reset.md +1 -1
  164. package/docs/Std.Intrinsic/ResetAll.md +1 -1
  165. package/docs/Std.Intrinsic/Rx.md +1 -1
  166. package/docs/Std.Intrinsic/Rxx.md +1 -1
  167. package/docs/Std.Intrinsic/Ry.md +1 -1
  168. package/docs/Std.Intrinsic/Ryy.md +1 -1
  169. package/docs/Std.Intrinsic/Rz.md +1 -1
  170. package/docs/Std.Intrinsic/Rzz.md +1 -1
  171. package/docs/Std.Intrinsic/S.md +1 -1
  172. package/docs/Std.Intrinsic/SWAP.md +1 -1
  173. package/docs/Std.Intrinsic/SX.md +1 -1
  174. package/docs/Std.Intrinsic/T.md +1 -1
  175. package/docs/Std.Intrinsic/X.md +1 -1
  176. package/docs/Std.Intrinsic/Y.md +1 -1
  177. package/docs/Std.Intrinsic/Z.md +1 -1
  178. package/docs/Std.Intrinsic/index.md +1 -1
  179. package/docs/Std.Logical/Xor.md +1 -1
  180. package/docs/Std.Logical/index.md +1 -1
  181. package/docs/Std.Math/AbsComplex.md +1 -1
  182. package/docs/Std.Math/AbsComplexPolar.md +1 -1
  183. package/docs/Std.Math/AbsD.md +1 -1
  184. package/docs/Std.Math/AbsI.md +1 -1
  185. package/docs/Std.Math/AbsL.md +1 -1
  186. package/docs/Std.Math/AbsSquaredComplex.md +1 -1
  187. package/docs/Std.Math/AbsSquaredComplexPolar.md +1 -1
  188. package/docs/Std.Math/ApproximateFactorial.md +1 -1
  189. package/docs/Std.Math/ArcCos.md +4 -3
  190. package/docs/Std.Math/ArcCosh.md +4 -4
  191. package/docs/Std.Math/ArcSin.md +4 -3
  192. package/docs/Std.Math/ArcSinh.md +4 -4
  193. package/docs/Std.Math/ArcTan.md +4 -3
  194. package/docs/Std.Math/ArcTan2.md +4 -3
  195. package/docs/Std.Math/ArcTanh.md +4 -4
  196. package/docs/Std.Math/ArgComplex.md +1 -1
  197. package/docs/Std.Math/ArgComplexPolar.md +1 -1
  198. package/docs/Std.Math/Binom.md +1 -1
  199. package/docs/Std.Math/BitSizeI.md +1 -1
  200. package/docs/Std.Math/BitSizeL.md +1 -1
  201. package/docs/Std.Math/Ceiling.md +1 -1
  202. package/docs/Std.Math/Complex.md +1 -1
  203. package/docs/Std.Math/ComplexPolar.md +1 -1
  204. package/docs/Std.Math/ContinuedFractionConvergentI.md +1 -1
  205. package/docs/Std.Math/ContinuedFractionConvergentL.md +1 -1
  206. package/docs/Std.Math/Cos.md +4 -3
  207. package/docs/Std.Math/Cosh.md +4 -4
  208. package/docs/Std.Math/DivRemI.md +1 -1
  209. package/docs/Std.Math/DivRemL.md +1 -1
  210. package/docs/Std.Math/DividedByC.md +1 -1
  211. package/docs/Std.Math/DividedByCP.md +1 -1
  212. package/docs/Std.Math/E.md +1 -1
  213. package/docs/Std.Math/ExpModI.md +1 -1
  214. package/docs/Std.Math/ExpModL.md +1 -1
  215. package/docs/Std.Math/ExtendedGreatestCommonDivisorI.md +1 -1
  216. package/docs/Std.Math/ExtendedGreatestCommonDivisorL.md +1 -1
  217. package/docs/Std.Math/FactorialI.md +1 -1
  218. package/docs/Std.Math/FactorialL.md +1 -1
  219. package/docs/Std.Math/Floor.md +1 -1
  220. package/docs/Std.Math/GreatestCommonDivisorI.md +1 -1
  221. package/docs/Std.Math/GreatestCommonDivisorL.md +1 -1
  222. package/docs/Std.Math/HammingWeightI.md +1 -1
  223. package/docs/Std.Math/InverseModI.md +1 -1
  224. package/docs/Std.Math/InverseModL.md +1 -1
  225. package/docs/Std.Math/IsCoprimeI.md +1 -1
  226. package/docs/Std.Math/IsCoprimeL.md +1 -1
  227. package/docs/Std.Math/IsInfinite.md +1 -1
  228. package/docs/Std.Math/IsNaN.md +1 -1
  229. package/docs/Std.Math/LargestFixedPoint.md +1 -1
  230. package/docs/Std.Math/Lg.md +1 -1
  231. package/docs/Std.Math/Log.md +1 -1
  232. package/docs/Std.Math/Log10.md +1 -1
  233. package/docs/Std.Math/LogFactorialD.md +1 -1
  234. package/docs/Std.Math/LogGammaD.md +1 -1
  235. package/docs/Std.Math/LogOf2.md +1 -1
  236. package/docs/Std.Math/Max.md +1 -1
  237. package/docs/Std.Math/MaxD.md +1 -1
  238. package/docs/Std.Math/MaxI.md +1 -1
  239. package/docs/Std.Math/MaxL.md +1 -1
  240. package/docs/Std.Math/Min.md +1 -1
  241. package/docs/Std.Math/MinD.md +1 -1
  242. package/docs/Std.Math/MinI.md +1 -1
  243. package/docs/Std.Math/MinL.md +1 -1
  244. package/docs/Std.Math/MinusC.md +1 -1
  245. package/docs/Std.Math/MinusCP.md +1 -1
  246. package/docs/Std.Math/ModulusI.md +1 -1
  247. package/docs/Std.Math/ModulusL.md +1 -1
  248. package/docs/Std.Math/NegationC.md +1 -1
  249. package/docs/Std.Math/NegationCP.md +1 -1
  250. package/docs/Std.Math/PI.md +1 -1
  251. package/docs/Std.Math/PNorm.md +1 -1
  252. package/docs/Std.Math/PNormalized.md +1 -1
  253. package/docs/Std.Math/PlusC.md +1 -1
  254. package/docs/Std.Math/PlusCP.md +1 -1
  255. package/docs/Std.Math/PowC.md +1 -1
  256. package/docs/Std.Math/PowCP.md +1 -1
  257. package/docs/Std.Math/RealMod.md +1 -1
  258. package/docs/Std.Math/Round.md +1 -1
  259. package/docs/Std.Math/RoundHalfAwayFromZero.md +1 -1
  260. package/docs/Std.Math/SignD.md +1 -1
  261. package/docs/Std.Math/SignI.md +1 -1
  262. package/docs/Std.Math/SignL.md +1 -1
  263. package/docs/Std.Math/Sin.md +4 -3
  264. package/docs/Std.Math/Sinh.md +4 -4
  265. package/docs/Std.Math/SmallestFixedPoint.md +1 -1
  266. package/docs/Std.Math/Sqrt.md +1 -1
  267. package/docs/Std.Math/SquaredNorm.md +1 -1
  268. package/docs/Std.Math/Tan.md +4 -3
  269. package/docs/Std.Math/Tanh.md +4 -4
  270. package/docs/Std.Math/TimesC.md +1 -1
  271. package/docs/Std.Math/TimesCP.md +1 -1
  272. package/docs/Std.Math/TrailingZeroCountI.md +1 -1
  273. package/docs/Std.Math/TrailingZeroCountL.md +1 -1
  274. package/docs/Std.Math/Truncate.md +1 -1
  275. package/docs/Std.Math/index.md +14 -14
  276. package/docs/Std.Measurement/IsLossResult.md +1 -1
  277. package/docs/Std.Measurement/MResetEachZ.md +1 -1
  278. package/docs/Std.Measurement/MResetX.md +1 -1
  279. package/docs/Std.Measurement/MResetY.md +1 -1
  280. package/docs/Std.Measurement/MResetZ.md +1 -1
  281. package/docs/Std.Measurement/MResetZChecked.md +1 -1
  282. package/docs/Std.Measurement/MeasureAllZ.md +1 -1
  283. package/docs/Std.Measurement/MeasureEachZ.md +1 -1
  284. package/docs/Std.Measurement/MeasureInteger.md +1 -1
  285. package/docs/Std.Measurement/index.md +1 -1
  286. package/docs/Std.Random/DrawRandomBool.md +1 -1
  287. package/docs/Std.Random/DrawRandomDouble.md +1 -1
  288. package/docs/Std.Random/DrawRandomInt.md +1 -1
  289. package/docs/Std.Random/index.md +1 -1
  290. package/docs/Std.Range/IsRangeEmpty.md +1 -1
  291. package/docs/Std.Range/RangeEnd.md +1 -1
  292. package/docs/Std.Range/RangeReverse.md +1 -1
  293. package/docs/Std.Range/RangeStart.md +1 -1
  294. package/docs/Std.Range/RangeStep.md +1 -1
  295. package/docs/Std.Range/index.md +1 -1
  296. package/docs/Std.ResourceEstimation/AccountForEstimates.md +1 -1
  297. package/docs/Std.ResourceEstimation/AuxQubitCount.md +1 -1
  298. package/docs/Std.ResourceEstimation/BeginEstimateCaching.md +1 -1
  299. package/docs/Std.ResourceEstimation/BeginRepeatEstimates.md +1 -1
  300. package/docs/Std.ResourceEstimation/CczCount.md +1 -1
  301. package/docs/Std.ResourceEstimation/EnableMemoryComputeArchitecture.md +1 -1
  302. package/docs/Std.ResourceEstimation/EndEstimateCaching.md +1 -1
  303. package/docs/Std.ResourceEstimation/EndRepeatEstimates.md +1 -1
  304. package/docs/Std.ResourceEstimation/LeastFrequentlyUsed.md +1 -1
  305. package/docs/Std.ResourceEstimation/LeastRecentlyUsed.md +1 -1
  306. package/docs/Std.ResourceEstimation/MeasurementCount.md +1 -1
  307. package/docs/Std.ResourceEstimation/PSSPCLayout.md +1 -1
  308. package/docs/Std.ResourceEstimation/RepeatEstimates.md +1 -1
  309. package/docs/Std.ResourceEstimation/RotationCount.md +1 -1
  310. package/docs/Std.ResourceEstimation/RotationDepth.md +1 -1
  311. package/docs/Std.ResourceEstimation/SingleVariant.md +1 -1
  312. package/docs/Std.ResourceEstimation/TCount.md +1 -1
  313. package/docs/Std.ResourceEstimation/index.md +1 -1
  314. package/docs/Std.StatePreparation/ApproximatelyPreparePureStateCP.md +1 -1
  315. package/docs/Std.StatePreparation/PreparePureStateD.md +1 -1
  316. package/docs/Std.StatePreparation/PrepareUniformSuperposition.md +1 -1
  317. package/docs/Std.StatePreparation/index.md +1 -1
  318. package/docs/Std.TableLookup/Select.md +1 -1
  319. package/docs/Std.TableLookup/index.md +1 -1
  320. package/docs/index.md +4 -4
  321. package/lib/nodejs/qsc_wasm.cjs +2 -2
  322. package/lib/nodejs/qsc_wasm.d.cts +23 -1
  323. package/lib/nodejs/qsc_wasm_bg.wasm +0 -0
  324. package/lib/web/qsc_wasm.d.ts +23 -1
  325. package/lib/web/qsc_wasm.js +2 -2
  326. package/lib/web/qsc_wasm_bg.wasm +0 -0
  327. package/package.json +1 -1
  328. package/ux/circuit-vis/constants.ts +16 -13
  329. package/ux/circuit-vis/draggable.ts +4 -1
  330. package/ux/circuit-vis/formatters/gateFormatter.ts +97 -102
  331. package/ux/circuit-vis/formatters/inputFormatter.ts +116 -14
  332. package/ux/circuit-vis/gateRenderData.ts +4 -0
  333. package/ux/circuit-vis/panel.ts +4 -2
  334. package/ux/circuit-vis/process.ts +98 -28
  335. package/ux/circuit-vis/sqore.ts +159 -71
  336. package/ux/circuit-vis/utils.ts +58 -19
  337. package/ux/circuit.tsx +1 -1
  338. package/ux/estimatesPanel.tsx +1 -1
  339. package/ux/output_data.md +1 -1
  340. package/ux/qsharp-circuit.css +20 -14
  341. package/ux/qsharp-ux.css +84 -27
  342. package/ux/scatterChart.tsx +1 -1
package/dist/browser.d.ts CHANGED
@@ -17,7 +17,7 @@ export declare function getLanguageService(host?: IProjectHost): Promise<ILangua
17
17
  export declare function getLanguageServiceWorker(worker: string | Worker): ILanguageServiceWorker;
18
18
  export declare function getTargetProfileFromEntryPoint(fileName: string, source: string): Promise<wasm.TargetProfile | undefined>;
19
19
  export { StepResultId } from "../lib/web/qsc_wasm.js";
20
- export type { IBreakpointSpan, ICodeAction, ICodeLens, IDocFile, ILocation, IOperationInfo, IPosition, IProjectConfig, IProjectHost, IQSharpError, IRange, IStackFrame, IStructStepResult, ITestDescriptor, IWorkspaceEdit, VSDiagnostic, } from "../lib/web/qsc_wasm.js";
20
+ export type { IBreakpointSpan, ICodeAction, ICodeLens, IDocFile, ILocation, IOperationInfo, IPosition, IProjectConfig, IProjectHost, IQSharpError, IRange, IStackFrame, IStructStepResult, ITestDescriptor, IVariable, IVariableChild, IWorkspaceEdit, VSDiagnostic, } from "../lib/web/qsc_wasm.js";
21
21
  export { type Dump, type ShotResult } from "./compiler/common.js";
22
22
  export { type CompilerState, type ProgramConfig } from "./compiler/compiler.js";
23
23
  export { QscEventTarget } from "./compiler/events.js";
@@ -9834,7 +9834,7 @@ export default {
9834
9834
  },
9835
9835
  {
9836
9836
  "id": "qec_shor__Common.qs",
9837
- "code": "namespace Kata.Verification {\n import Std.Diagnostics.*;\n import Std.Math.*;\n import Std.Random.*;\n\n operation CheckErrorDetection(\n n : Int,\n encode : (Qubit[] => Unit is Adj),\n error : (Qubit => Unit is Adj),\n detect : (Qubit[] => Int)\n ) : Bool {\n for err_ind in -1..n - 1 {\n for _ in 1..10 {\n use qs = Qubit[n];\n let theta = DrawRandomDouble(0.0, 1.0);\n within {\n // Prepare logical state on first qubit\n Ry(2.0 * theta * PI(), qs[0]);\n // Encode the state in multiple qubits\n encode(qs);\n // Introduce X error\n if err_ind > -1 {\n error(qs[err_ind]);\n }\n } apply {\n // Call solution to detect index\n let detected = detect(qs);\n // Check that it is correct\n if detected != err_ind {\n Message(\"Incorrect.\");\n let actual = err_ind == -1 ? \"No error happened\" | $\"Error happened on qubit {err_ind}\";\n Message($\"{actual}, but solution returned {detected}\");\n ResetAll(qs);\n return false;\n }\n }\n // Check that the state was not modified by the solution\n if not CheckAllZero(qs) {\n Message(\"Incorrect.\");\n Message(\"The state of the qubits changed after the solution was applied\");\n ResetAll(qs);\n return false;\n }\n }\n }\n\n Message(\"Correct!\");\n true\n }\n}\n"
9837
+ "code": "namespace Kata.Verification {\n import Std.Diagnostics.*;\n import Std.Math.*;\n import Std.Random.*;\n\n operation CheckErrorDetection(\n n : Int,\n encode : (Qubit[] => Unit is Adj),\n error : (Qubit => Unit is Adj),\n detect : (Qubit[] => Int)\n ) : Bool {\n for err_ind in -1..n - 1 {\n for _ in 1..10 {\n use qs = Qubit[n];\n let theta = DrawRandomDouble(0.0, 1.0);\n let correct = within {\n // Prepare logical state on first qubit\n Ry(2.0 * theta * PI(), qs[0]);\n // Encode the state in multiple qubits\n encode(qs);\n // Introduce X error\n if err_ind > -1 {\n error(qs[err_ind]);\n }\n } apply {\n // Call solution to detect index\n let detected = detect(qs);\n // Check that it is correct\n if detected != err_ind {\n Message(\"Incorrect.\");\n let actual = err_ind == -1 ? \"No error happened\" | $\"Error happened on qubit {err_ind}\";\n Message($\"{actual}, but solution returned {detected}\");\n false\n } else {\n true\n }\n };\n if not correct {\n ResetAll(qs);\n return false;\n }\n // Check that the state was not modified by the solution\n if not CheckAllZero(qs) {\n Message(\"Incorrect.\");\n Message(\"The state of the qubits changed after the solution was applied\");\n ResetAll(qs);\n return false;\n }\n }\n }\n\n Message(\"Correct!\");\n true\n }\n}\n"
9838
9838
  },
9839
9839
  {
9840
9840
  "id": "qec_shor__xx_measurement__Verification.qs",
@@ -9834,7 +9834,7 @@ export default {
9834
9834
  },
9835
9835
  {
9836
9836
  "id": "qec_shor__Common.qs",
9837
- "code": "namespace Kata.Verification {\n import Std.Diagnostics.*;\n import Std.Math.*;\n import Std.Random.*;\n\n operation CheckErrorDetection(\n n : Int,\n encode : (Qubit[] => Unit is Adj),\n error : (Qubit => Unit is Adj),\n detect : (Qubit[] => Int)\n ) : Bool {\n for err_ind in -1..n - 1 {\n for _ in 1..10 {\n use qs = Qubit[n];\n let theta = DrawRandomDouble(0.0, 1.0);\n within {\n // Prepare logical state on first qubit\n Ry(2.0 * theta * PI(), qs[0]);\n // Encode the state in multiple qubits\n encode(qs);\n // Introduce X error\n if err_ind > -1 {\n error(qs[err_ind]);\n }\n } apply {\n // Call solution to detect index\n let detected = detect(qs);\n // Check that it is correct\n if detected != err_ind {\n Message(\"Incorrect.\");\n let actual = err_ind == -1 ? \"No error happened\" | $\"Error happened on qubit {err_ind}\";\n Message($\"{actual}, but solution returned {detected}\");\n ResetAll(qs);\n return false;\n }\n }\n // Check that the state was not modified by the solution\n if not CheckAllZero(qs) {\n Message(\"Incorrect.\");\n Message(\"The state of the qubits changed after the solution was applied\");\n ResetAll(qs);\n return false;\n }\n }\n }\n\n Message(\"Correct!\");\n true\n }\n}\n"
9837
+ "code": "namespace Kata.Verification {\n import Std.Diagnostics.*;\n import Std.Math.*;\n import Std.Random.*;\n\n operation CheckErrorDetection(\n n : Int,\n encode : (Qubit[] => Unit is Adj),\n error : (Qubit => Unit is Adj),\n detect : (Qubit[] => Int)\n ) : Bool {\n for err_ind in -1..n - 1 {\n for _ in 1..10 {\n use qs = Qubit[n];\n let theta = DrawRandomDouble(0.0, 1.0);\n let correct = within {\n // Prepare logical state on first qubit\n Ry(2.0 * theta * PI(), qs[0]);\n // Encode the state in multiple qubits\n encode(qs);\n // Introduce X error\n if err_ind > -1 {\n error(qs[err_ind]);\n }\n } apply {\n // Call solution to detect index\n let detected = detect(qs);\n // Check that it is correct\n if detected != err_ind {\n Message(\"Incorrect.\");\n let actual = err_ind == -1 ? \"No error happened\" | $\"Error happened on qubit {err_ind}\";\n Message($\"{actual}, but solution returned {detected}\");\n false\n } else {\n true\n }\n };\n if not correct {\n ResetAll(qs);\n return false;\n }\n // Check that the state was not modified by the solution\n if not CheckAllZero(qs) {\n Message(\"Incorrect.\");\n Message(\"The state of the qubits changed after the solution was applied\");\n ResetAll(qs);\n return false;\n }\n }\n }\n\n Message(\"Correct!\");\n true\n }\n}\n"
9838
9838
  },
9839
9839
  {
9840
9840
  "id": "qec_shor__xx_measurement__Verification.qs",
package/dist/main.d.ts CHANGED
@@ -13,3 +13,4 @@ export declare function getDebugServiceWorker(): IDebugServiceWorker;
13
13
  export declare function getLanguageService(host?: IProjectHost): ILanguageService;
14
14
  export declare function getLanguageServiceWorker(): ILanguageServiceWorker;
15
15
  export * as utils from "./utils.js";
16
+ export type { IVariable, IVariableChild } from "./browser.js";
@@ -130,7 +130,7 @@ export default [
130
130
  {
131
131
  "title": "Shor (Resource Estimation)",
132
132
  "shots": 1,
133
- "code": "/// # Sample\n/// Estimating Frequency for Shor's algorithm\n///\n/// # Description\n/// In this sample we concentrate on costing the `EstimateFrequency`\n/// operation, which is the core quantum operation in Shor's algorithm, and\n/// we omit the classical pre- and post-processing. This makes it ideal for\n/// use with the Azure Quantum Resource Estimator.\nimport Std.Arrays.*;\nimport Std.Canon.*;\nimport Std.Convert.*;\nimport Std.Diagnostics.*;\nimport Std.Intrinsic.*;\nimport Std.Math.*;\nimport Std.Measurement.*;\nimport Std.Arithmetic.*;\nimport Std.ResourceEstimation.*;\n\noperation Main() : Unit {\n let bitsize = 31;\n\n // When chooseing parameters for `EstimateFrequency`, make sure that\n // generator and modules are not co-prime\n let _ = EstimateFrequency(11, 2^bitsize - 1, bitsize);\n}\n\n/// # Summary\n/// Estimates the frequency of a generator\n/// in the residue ring Z mod `modulus`.\n///\n/// # Input\n/// ## generator\n/// The unsigned integer multiplicative order (period)\n/// of which is being estimated. Must be co-prime to `modulus`.\n/// ## modulus\n/// The modulus which defines the residue ring Z mod `modulus`\n/// in which the multiplicative order of `generator` is being estimated.\n/// ## bitsize\n/// Number of bits needed to represent the modulus.\n///\n/// # Output\n/// The numerator k of dyadic fraction k/2^bitsPrecision\n/// approximating s/r.\noperation EstimateFrequency(\n generator : Int,\n modulus : Int,\n bitsize : Int\n) : Int {\n mutable frequencyEstimate = 0;\n let bitsPrecision = 2 * bitsize + 1;\n\n // Allocate qubits for the superposition of eigenstates of\n // the oracle that is used in period finding.\n use eigenstateRegister = Qubit[bitsize];\n\n // Initialize eigenstateRegister to 1, which is a superposition of\n // the eigenstates we are estimating the phases of.\n // We first interpret the register as encoding an unsigned integer\n // in little endian encoding.\n ApplyXorInPlace(1, eigenstateRegister);\n let oracle = ApplyOrderFindingOracle(generator, modulus, _, _);\n\n // Use phase estimation with a semiclassical Fourier transform to\n // estimate the frequency.\n use c = Qubit();\n for idx in bitsPrecision - 1..-1..0 {\n within {\n H(c);\n } apply {\n // `BeginEstimateCaching` and `EndEstimateCaching` are the operations\n // exposed by Azure Quantum Resource Estimator. These will instruct\n // resource counting such that the if-block will be executed\n // only once, its resources will be cached, and appended in\n // every other iteration.\n if BeginEstimateCaching(\"ControlledOracle\", SingleVariant()) {\n Controlled oracle([c], (1 <<< idx, eigenstateRegister));\n EndEstimateCaching();\n }\n R1Frac(frequencyEstimate, bitsPrecision - 1 - idx, c);\n }\n if MResetZ(c) == One {\n frequencyEstimate += 1 <<< (bitsPrecision - 1 - idx);\n }\n }\n\n // Return all the qubits used for oracle's eigenstate back to 0 state\n // using Std.Intrinsic.ResetAll.\n ResetAll(eigenstateRegister);\n\n return frequencyEstimate;\n}\n\n/// # Summary\n/// Interprets `target` as encoding unsigned little-endian integer k\n/// and performs transformation |k⟩ ↦ |gᵖ⋅k mod N ⟩ where\n/// p is `power`, g is `generator` and N is `modulus`.\n///\n/// # Input\n/// ## generator\n/// The unsigned integer multiplicative order (period)\n/// of which is being estimated. Must be co-prime to `modulus`.\n/// ## modulus\n/// The modulus which defines the residue ring Z mod `modulus`\n/// in which the multiplicative order of `generator` is being estimated.\n/// ## power\n/// Power of `generator` by which `target` is multiplied.\n/// ## target\n/// Register interpreted as little-endian which is multiplied by\n/// given power of the generator. The multiplication is performed modulo\n/// `modulus`.\ninternal operation ApplyOrderFindingOracle(\n generator : Int,\n modulus : Int,\n power : Int,\n target : Qubit[]\n) : Unit is Adj + Ctl {\n // The oracle we use for order finding implements |x⟩ ↦ |x⋅a mod N⟩. We\n // also use `ExpModI` to compute a by which x must be multiplied. Also\n // note that we interpret target as unsigned integer in little-endian\n // format.\n ModularMultiplyByConstant(\n modulus,\n ExpModI(generator, power, modulus),\n target\n );\n}\n\n/// # Summary\n/// Performs modular in-place multiplication by a classical constant.\n///\n/// # Description\n/// Given the classical constants `c` and `modulus`, and an input quantum\n/// register |𝑦⟩ in little-endian format, this operation computes\n/// `(c*x) % modulus` into |𝑦⟩.\n///\n/// # Input\n/// ## modulus\n/// Modulus to use for modular multiplication\n/// ## c\n/// Constant by which to multiply |𝑦⟩\n/// ## y\n/// Quantum register of target\ninternal operation ModularMultiplyByConstant(modulus : Int, c : Int, y : Qubit[]) : Unit is Adj + Ctl {\n use qs = Qubit[Length(y)];\n for idx in IndexRange(y) {\n let shiftedC = (c <<< idx) % modulus;\n Controlled ModularAddConstant(\n [y[idx]],\n (modulus, shiftedC, qs)\n );\n }\n for idx in IndexRange(y) {\n SWAP(y[idx], qs[idx]);\n }\n let invC = InverseModI(c, modulus);\n for idx in IndexRange(y) {\n let shiftedC = (invC <<< idx) % modulus;\n Controlled ModularAddConstant(\n [y[idx]],\n (modulus, modulus - shiftedC, qs)\n );\n }\n}\n\n/// # Summary\n/// Performs modular in-place addition of a classical constant into a\n/// quantum register.\n///\n/// Given the classical constants `c` and `modulus`, and an input quantum\n/// register |𝑦⟩ in little-endian format, this operation computes\n/// `(x+c) % modulus` into |𝑦⟩.\n///\n/// # Input\n/// ## modulus\n/// Modulus to use for modular addition\n/// ## c\n/// Constant to add to |𝑦⟩\n/// ## y\n/// Quantum register of target\ninternal operation ModularAddConstant(modulus : Int, c : Int, y : Qubit[]) : Unit is Adj + Ctl {\n body (...) {\n Controlled ModularAddConstant([], (modulus, c, y));\n }\n controlled (ctrls, ...) {\n // We apply a custom strategy to control this operation instead of\n // letting the compiler create the controlled variant for us in\n // which the `Controlled` functor would be distributed over each\n // operation in the body.\n //\n // Here we can use some scratch memory to save ensure that at most\n // one control qubit is used for costly operations such as\n // `AddConstant` and `CompareGreaterThenOrEqualConstant`.\n if Length(ctrls) >= 2 {\n use control = Qubit();\n within {\n Controlled X(ctrls, control);\n } apply {\n Controlled ModularAddConstant([control], (modulus, c, y));\n }\n } else {\n use carry = Qubit();\n Controlled IncByI(ctrls, (c, y + [carry]));\n Controlled Adjoint IncByI(ctrls, (modulus, y + [carry]));\n Controlled IncByI([carry], (modulus, y));\n Controlled ApplyIfLessOrEqualL(ctrls, (X, IntAsBigInt(c), y, carry));\n }\n }\n}\n",
133
+ "code": "/// # Sample\n/// Estimating Frequency for Shor's algorithm\n///\n/// # Description\n/// In this sample we concentrate on costing the `EstimateFrequency`\n/// operation, which is the core quantum operation in Shor's algorithm, and\n/// we omit the classical pre- and post-processing. This makes it ideal for\n/// use with the Microsoft Quantum Resource Estimator.\nimport Std.Arrays.*;\nimport Std.Canon.*;\nimport Std.Convert.*;\nimport Std.Diagnostics.*;\nimport Std.Intrinsic.*;\nimport Std.Math.*;\nimport Std.Measurement.*;\nimport Std.Arithmetic.*;\nimport Std.ResourceEstimation.*;\n\noperation Main() : Unit {\n let bitsize = 31;\n\n // When chooseing parameters for `EstimateFrequency`, make sure that\n // generator and modules are not co-prime\n let _ = EstimateFrequency(11, 2^bitsize - 1, bitsize);\n}\n\n/// # Summary\n/// Estimates the frequency of a generator\n/// in the residue ring Z mod `modulus`.\n///\n/// # Input\n/// ## generator\n/// The unsigned integer multiplicative order (period)\n/// of which is being estimated. Must be co-prime to `modulus`.\n/// ## modulus\n/// The modulus which defines the residue ring Z mod `modulus`\n/// in which the multiplicative order of `generator` is being estimated.\n/// ## bitsize\n/// Number of bits needed to represent the modulus.\n///\n/// # Output\n/// The numerator k of dyadic fraction k/2^bitsPrecision\n/// approximating s/r.\noperation EstimateFrequency(\n generator : Int,\n modulus : Int,\n bitsize : Int\n) : Int {\n mutable frequencyEstimate = 0;\n let bitsPrecision = 2 * bitsize + 1;\n\n // Allocate qubits for the superposition of eigenstates of\n // the oracle that is used in period finding.\n use eigenstateRegister = Qubit[bitsize];\n\n // Initialize eigenstateRegister to 1, which is a superposition of\n // the eigenstates we are estimating the phases of.\n // We first interpret the register as encoding an unsigned integer\n // in little endian encoding.\n ApplyXorInPlace(1, eigenstateRegister);\n let oracle = ApplyOrderFindingOracle(generator, modulus, _, _);\n\n // Use phase estimation with a semiclassical Fourier transform to\n // estimate the frequency.\n use c = Qubit();\n for idx in bitsPrecision - 1..-1..0 {\n within {\n H(c);\n } apply {\n // `BeginEstimateCaching` and `EndEstimateCaching` are the operations\n // exposed by Microsoft Quantum Resource Estimator. These will instruct\n // resource counting such that the if-block will be executed\n // only once, its resources will be cached, and appended in\n // every other iteration.\n if BeginEstimateCaching(\"ControlledOracle\", SingleVariant()) {\n Controlled oracle([c], (1 <<< idx, eigenstateRegister));\n EndEstimateCaching();\n }\n R1Frac(frequencyEstimate, bitsPrecision - 1 - idx, c);\n }\n if MResetZ(c) == One {\n frequencyEstimate += 1 <<< (bitsPrecision - 1 - idx);\n }\n }\n\n // Return all the qubits used for oracle's eigenstate back to 0 state\n // using Std.Intrinsic.ResetAll.\n ResetAll(eigenstateRegister);\n\n return frequencyEstimate;\n}\n\n/// # Summary\n/// Interprets `target` as encoding unsigned little-endian integer k\n/// and performs transformation |k⟩ ↦ |gᵖ⋅k mod N ⟩ where\n/// p is `power`, g is `generator` and N is `modulus`.\n///\n/// # Input\n/// ## generator\n/// The unsigned integer multiplicative order (period)\n/// of which is being estimated. Must be co-prime to `modulus`.\n/// ## modulus\n/// The modulus which defines the residue ring Z mod `modulus`\n/// in which the multiplicative order of `generator` is being estimated.\n/// ## power\n/// Power of `generator` by which `target` is multiplied.\n/// ## target\n/// Register interpreted as little-endian which is multiplied by\n/// given power of the generator. The multiplication is performed modulo\n/// `modulus`.\ninternal operation ApplyOrderFindingOracle(\n generator : Int,\n modulus : Int,\n power : Int,\n target : Qubit[]\n) : Unit is Adj + Ctl {\n // The oracle we use for order finding implements |x⟩ ↦ |x⋅a mod N⟩. We\n // also use `ExpModI` to compute a by which x must be multiplied. Also\n // note that we interpret target as unsigned integer in little-endian\n // format.\n ModularMultiplyByConstant(\n modulus,\n ExpModI(generator, power, modulus),\n target\n );\n}\n\n/// # Summary\n/// Performs modular in-place multiplication by a classical constant.\n///\n/// # Description\n/// Given the classical constants `c` and `modulus`, and an input quantum\n/// register |𝑦⟩ in little-endian format, this operation computes\n/// `(c*x) % modulus` into |𝑦⟩.\n///\n/// # Input\n/// ## modulus\n/// Modulus to use for modular multiplication\n/// ## c\n/// Constant by which to multiply |𝑦⟩\n/// ## y\n/// Quantum register of target\ninternal operation ModularMultiplyByConstant(modulus : Int, c : Int, y : Qubit[]) : Unit is Adj + Ctl {\n use qs = Qubit[Length(y)];\n for idx in IndexRange(y) {\n let shiftedC = (c <<< idx) % modulus;\n Controlled ModularAddConstant(\n [y[idx]],\n (modulus, shiftedC, qs)\n );\n }\n for idx in IndexRange(y) {\n SWAP(y[idx], qs[idx]);\n }\n let invC = InverseModI(c, modulus);\n for idx in IndexRange(y) {\n let shiftedC = (invC <<< idx) % modulus;\n Controlled ModularAddConstant(\n [y[idx]],\n (modulus, modulus - shiftedC, qs)\n );\n }\n}\n\n/// # Summary\n/// Performs modular in-place addition of a classical constant into a\n/// quantum register.\n///\n/// Given the classical constants `c` and `modulus`, and an input quantum\n/// register |𝑦⟩ in little-endian format, this operation computes\n/// `(x+c) % modulus` into |𝑦⟩.\n///\n/// # Input\n/// ## modulus\n/// Modulus to use for modular addition\n/// ## c\n/// Constant to add to |𝑦⟩\n/// ## y\n/// Quantum register of target\ninternal operation ModularAddConstant(modulus : Int, c : Int, y : Qubit[]) : Unit is Adj + Ctl {\n body (...) {\n Controlled ModularAddConstant([], (modulus, c, y));\n }\n controlled (ctrls, ...) {\n // We apply a custom strategy to control this operation instead of\n // letting the compiler create the controlled variant for us in\n // which the `Controlled` functor would be distributed over each\n // operation in the body.\n //\n // Here we can use some scratch memory to save ensure that at most\n // one control qubit is used for costly operations such as\n // `AddConstant` and `CompareGreaterThenOrEqualConstant`.\n if Length(ctrls) >= 2 {\n use control = Qubit();\n within {\n Controlled X(ctrls, control);\n } apply {\n Controlled ModularAddConstant([control], (modulus, c, y));\n }\n } else {\n use carry = Qubit();\n Controlled IncByI(ctrls, (c, y + [carry]));\n Controlled Adjoint IncByI(ctrls, (modulus, y + [carry]));\n Controlled IncByI([carry], (modulus, y));\n Controlled ApplyIfLessOrEqualL(ctrls, (X, IntAsBigInt(c), y, carry));\n }\n }\n}\n",
134
134
  "omitFromTests": true
135
135
  }
136
136
  ];
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Microsoft.Quantum.Core.IsRangeEmpty
3
3
  title: IsRangeEmpty exported item
4
4
  description: "Q# IsRangeEmpty exported item: This is an exported item. The actual definition is found here: [Std.Range.IsRangeEmpty](xref:Qdk.Std.Range.IsRangeEmpty)"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: export
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Microsoft.Quantum.Core
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Microsoft.Quantum.Core.Length
3
3
  title: Length exported item
4
4
  description: "Q# Length exported item: This is an exported item. The actual definition is found here: [Std.Core.Length](xref:Qdk.Std.Core.Length)"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: export
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Microsoft.Quantum.Core
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Microsoft.Quantum.Core.RangeEnd
3
3
  title: RangeEnd exported item
4
4
  description: "Q# RangeEnd exported item: This is an exported item. The actual definition is found here: [Std.Range.RangeEnd](xref:Qdk.Std.Range.RangeEnd)"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: export
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Microsoft.Quantum.Core
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Microsoft.Quantum.Core.RangeStart
3
3
  title: RangeStart exported item
4
4
  description: "Q# RangeStart exported item: This is an exported item. The actual definition is found here: [Std.Range.RangeStart](xref:Qdk.Std.Range.RangeStart)"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: export
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Microsoft.Quantum.Core
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Microsoft.Quantum.Core.Repeated
3
3
  title: Repeated exported item
4
4
  description: "Q# Repeated exported item: This is an exported item. The actual definition is found here: [Std.Core.Repeated](xref:Qdk.Std.Core.Repeated)"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: export
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Microsoft.Quantum.Core
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Microsoft.Quantum.Core-toc
3
3
  title: Microsoft.Quantum.Core namespace
4
4
  description: Table of contents for the Q# Microsoft.Quantum.Core namespace
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  ms.topic: landing-page
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.AddLE
3
3
  title: AddLE operation
4
4
  description: "Q# AddLE operation: Sets a zero-initialized little-endian register zs to the sum of little-endian registers xs and ys"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfEqualL
3
3
  title: ApplyIfEqualL operation
4
4
  description: "Q# ApplyIfEqualL operation: Computes `if (c == x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is equal to the little-endian qubit register `x`"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfEqualLE
3
3
  title: ApplyIfEqualLE operation
4
4
  description: "Q# ApplyIfEqualLE operation: Computes `if x == y { action(target) }`, that is, applies `action` to `target` if register `x` is equal to the register `y`. Both qubit registers should be in a little-endian format."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfGreaterL
3
3
  title: ApplyIfGreaterL operation
4
4
  description: "Q# ApplyIfGreaterL operation: Computes `if (c > x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is greater than the little-endian qubit register `x`"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfGreaterLE
3
3
  title: ApplyIfGreaterLE operation
4
4
  description: "Q# ApplyIfGreaterLE operation: Computes `if x > y { action(target) }`, that is, applies `action` to `target` if register `x` is greater than the register `y`. Both qubit registers should be in a little-endian format."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfGreaterOrEqualL
3
3
  title: ApplyIfGreaterOrEqualL operation
4
4
  description: "Q# ApplyIfGreaterOrEqualL operation: Computes `if (c >= x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is greater or equal to the little-endian qubit register `x`"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfGreaterOrEqualLE
3
3
  title: ApplyIfGreaterOrEqualLE operation
4
4
  description: "Q# ApplyIfGreaterOrEqualLE operation: Computes `if x >= y { action(target) }`, that is, applies `action` to `target` if register `x` is greater or equal to the register `y`. Both qubit registers should be in a little-endian format."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfLessL
3
3
  title: ApplyIfLessL operation
4
4
  description: "Q# ApplyIfLessL operation: Computes `if (c < x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is less than the little-endian qubit register `x`"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfLessLE
3
3
  title: ApplyIfLessLE operation
4
4
  description: "Q# ApplyIfLessLE operation: Computes `if x < y { action(target) }`, that is, applies `action` to `target` if register `x` is less than the register `y`. Both qubit registers should be in a little-endian format."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfLessOrEqualL
3
3
  title: ApplyIfLessOrEqualL operation
4
4
  description: "Q# ApplyIfLessOrEqualL operation: Computes `if (c <= x) { action(target) }`, that is, applies `action` to `target` if a BigInt value `c` is less or equal to the little-endian qubit register `x`"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ApplyIfLessOrEqualLE
3
3
  title: ApplyIfLessOrEqualLE operation
4
4
  description: "Q# ApplyIfLessOrEqualLE operation: Computes `if x <= y { action(target) }`, that is, applies `action` to `target` if register `x` is less or equal to the register `y`. Both qubit registers should be in a little-endian format."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.FourierTDIncByLE
3
3
  title: FourierTDIncByLE operation
4
4
  description: "Q# FourierTDIncByLE operation: Increments a little-endian register ys by a little-endian register xs using Quantum Fourier Transform."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.IncByI
3
3
  title: IncByI operation
4
4
  description: "Q# IncByI operation: Increments a little-endian register ys by an integer number c"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.IncByIUsingIncByLE
3
3
  title: IncByIUsingIncByLE operation
4
4
  description: "Q# IncByIUsingIncByLE operation: Increments a little-endian register ys by an Int number c using provided adder."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.IncByL
3
3
  title: IncByL operation
4
4
  description: "Q# IncByL operation: Increments a little-endian register ys by a BigInt number c"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.IncByLE
3
3
  title: IncByLE operation
4
4
  description: "Q# IncByLE operation: Increments a little-endian register ys by a little-endian register xs"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.IncByLEUsingAddLE
3
3
  title: IncByLEUsingAddLE operation
4
4
  description: "Q# IncByLEUsingAddLE operation: Generic operation to turn two out-place adders into one in-place adder"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.IncByLUsingIncByLE
3
3
  title: IncByLUsingIncByLE operation
4
4
  description: "Q# IncByLUsingIncByLE operation: Increments a little-endian register ys by a BigInt number c using provided adder."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.LookAheadDKRSAddLE
3
3
  title: LookAheadDKRSAddLE operation
4
4
  description: "Q# LookAheadDKRSAddLE operation: Sets a zero-initialized little-endian register zs to the sum of little-endian registers xs and ys using the carry-lookahead algorithm."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.MAJ
3
3
  title: MAJ operation
4
4
  description: "Q# MAJ operation: This applies the in-place majority operation to 3 qubits."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.ReflectAboutInteger
3
3
  title: ReflectAboutInteger operation
4
4
  description: "Q# ReflectAboutInteger operation: Reflects a quantum register about a given classical integer."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.RippleCarryCGAddLE
3
3
  title: RippleCarryCGAddLE operation
4
4
  description: "Q# RippleCarryCGAddLE operation: Sets a zero-initialized little-endian register zs to the sum of little-endian registers xs and ys using the ripple-carry algorithm."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.RippleCarryCGIncByLE
3
3
  title: RippleCarryCGIncByLE operation
4
4
  description: "Q# RippleCarryCGIncByLE operation: Increments a little-endian register ys by a little-endian register xs using the ripple-carry algorithm."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic.RippleCarryTTKIncByLE
3
3
  title: RippleCarryTTKIncByLE operation
4
4
  description: "Q# RippleCarryTTKIncByLE operation: Reversible, in-place ripple-carry addition of two integers."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arithmetic
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arithmetic-toc
3
3
  title: Std.Arithmetic namespace
4
4
  description: Table of contents for the Q# Arithmetic namespace
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  ms.topic: landing-page
7
7
  ---
8
8
 
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.All
3
3
  title: All function
4
4
  description: "Q# All function: Given an array and a predicate that is defined for the elements of the array, and checks if all elements of the array satisfy the predicate."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Any
3
3
  title: Any function
4
4
  description: "Q# Any function: Given an array and a predicate that is defined for the elements of the array, checks if at least one element of the array satisfies the predicate."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Chunks
3
3
  title: Chunks function
4
4
  description: "Q# Chunks function: Splits an array into multiple parts of equal length."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.CircularlyShifted
3
3
  title: CircularlyShifted function
4
4
  description: "Q# CircularlyShifted function: Shift an array circularly left or right by a specific step size."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.ColumnAt
3
3
  title: ColumnAt function
4
4
  description: "Q# ColumnAt function: Extracts a column from a matrix."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Count
3
3
  title: Count function
4
4
  description: "Q# Count function: Given an array and a predicate that is defined for the elements of the array, returns the number of elements an array that consists of those elements that satisfy the predicate."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Diagonal
3
3
  title: Diagonal function
4
4
  description: "Q# Diagonal function: Returns an array of diagonal elements of a 2-dimensional array"
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.DrawMany
3
3
  title: DrawMany operation
4
4
  description: "Q# DrawMany operation: Repeats an operation for a given number of samples, collecting its outputs in an array."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Enumerated
3
3
  title: Enumerated function
4
4
  description: "Q# Enumerated function: Given an array, returns a new array containing elements of the original array along with the indices of each element."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Excluding
3
3
  title: Excluding function
4
4
  description: "Q# Excluding function: Returns an array containing the elements of another array, excluding elements at a given list of indices."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Filtered
3
3
  title: Filtered function
4
4
  description: "Q# Filtered function: Given an array and a predicate that is defined for the elements of the array, returns an array that consists of those elements that satisfy the predicate."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.FlatMapped
3
3
  title: FlatMapped function
4
4
  description: "Q# FlatMapped function: Given an array and a function that maps an array element to some output array, returns the concatenated output arrays for each array element."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Flattened
3
3
  title: Flattened function
4
4
  description: "Q# Flattened function: Given an array of arrays, returns the concatenation of all arrays."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Fold
3
3
  title: Fold function
4
4
  description: "Q# Fold function: Iterates a function `f` through an array `array`, returning `f(...f(f(initialState, array[0]), array[1]), ...)`."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.ForEach
3
3
  title: ForEach operation
4
4
  description: "Q# ForEach operation: Given an array and an operation that is defined for the elements of the array, returns a new array that consists of the images of the original array under the operation."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: operation
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.Head
3
3
  title: Head function
4
4
  description: "Q# Head function: Returns the first element of the array."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.HeadAndRest
3
3
  title: HeadAndRest function
4
4
  description: "Q# HeadAndRest function: Returns a tuple of first and all remaining elements of the array."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.IndexOf
3
3
  title: IndexOf function
4
4
  description: "Q# IndexOf function: Returns the first index of the first element in an array that satisfies a given predicate. If no such element exists, returns -1."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays
@@ -2,7 +2,7 @@
2
2
  uid: Qdk.Std.Arrays.IndexRange
3
3
  title: IndexRange function
4
4
  description: "Q# IndexRange function: Given an array, returns a range over the indices of that array, suitable for use in a for loop."
5
- ms.date: 12/09/2025
5
+ ms.date: 01/17/2026
6
6
  qsharp.kind: function
7
7
  qsharp.package: __Std__
8
8
  qsharp.namespace: Std.Arrays