@cortex-js/compute-engine 0.56.0 → 0.58.0

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 (259) hide show
  1. package/dist/compile.esm.js +1137 -92
  2. package/dist/compile.min.esm.js +261 -61
  3. package/dist/compile.min.umd.cjs +262 -62
  4. package/dist/compile.umd.cjs +1137 -92
  5. package/dist/compute-engine.esm.js +1751 -176
  6. package/dist/compute-engine.min.esm.js +273 -73
  7. package/dist/compute-engine.min.umd.cjs +272 -72
  8. package/dist/compute-engine.umd.cjs +1751 -176
  9. package/dist/core.esm.js +1750 -175
  10. package/dist/core.min.esm.js +271 -71
  11. package/dist/core.min.umd.cjs +271 -71
  12. package/dist/core.umd.cjs +1750 -175
  13. package/dist/interval.esm.js +357 -28
  14. package/dist/interval.min.esm.js +6 -6
  15. package/dist/interval.min.umd.cjs +6 -6
  16. package/dist/interval.umd.cjs +357 -28
  17. package/dist/latex-syntax.esm.js +398 -28
  18. package/dist/latex-syntax.min.esm.js +6 -6
  19. package/dist/latex-syntax.min.umd.cjs +6 -6
  20. package/dist/latex-syntax.umd.cjs +398 -28
  21. package/dist/math-json.esm.js +2 -2
  22. package/dist/math-json.min.esm.js +2 -2
  23. package/dist/math-json.min.umd.cjs +2 -2
  24. package/dist/math-json.umd.cjs +2 -2
  25. package/dist/numerics.esm.js +38 -3
  26. package/dist/numerics.min.esm.js +3 -3
  27. package/dist/numerics.min.umd.cjs +4 -4
  28. package/dist/numerics.umd.cjs +38 -3
  29. package/dist/types/big-decimal/big-decimal.d.ts +1 -1
  30. package/dist/types/big-decimal/index.d.ts +1 -1
  31. package/dist/types/big-decimal/transcendentals.d.ts +1 -1
  32. package/dist/types/big-decimal/utils.d.ts +1 -1
  33. package/dist/types/common/ansi-codes.d.ts +1 -1
  34. package/dist/types/common/configuration-change.d.ts +1 -1
  35. package/dist/types/common/fuzzy-string-match.d.ts +1 -1
  36. package/dist/types/common/grapheme-splitter.d.ts +1 -1
  37. package/dist/types/common/interruptible.d.ts +1 -1
  38. package/dist/types/common/one-of.d.ts +1 -1
  39. package/dist/types/common/signals.d.ts +1 -1
  40. package/dist/types/common/type/ast-nodes.d.ts +1 -1
  41. package/dist/types/common/type/boxed-type.d.ts +1 -1
  42. package/dist/types/common/type/lexer.d.ts +1 -1
  43. package/dist/types/common/type/parse.d.ts +1 -1
  44. package/dist/types/common/type/parser.d.ts +1 -1
  45. package/dist/types/common/type/primitive.d.ts +1 -1
  46. package/dist/types/common/type/reduce.d.ts +1 -1
  47. package/dist/types/common/type/serialize.d.ts +1 -1
  48. package/dist/types/common/type/subtype.d.ts +1 -1
  49. package/dist/types/common/type/type-builder.d.ts +1 -1
  50. package/dist/types/common/type/types.d.ts +1 -1
  51. package/dist/types/common/type/utils.d.ts +1 -1
  52. package/dist/types/common/utils.d.ts +1 -1
  53. package/dist/types/compile.d.ts +1 -1
  54. package/dist/types/compute-engine/assume.d.ts +1 -1
  55. package/dist/types/compute-engine/boxed-expression/abstract-boxed-expression.d.ts +8 -1
  56. package/dist/types/compute-engine/boxed-expression/apply.d.ts +1 -1
  57. package/dist/types/compute-engine/boxed-expression/arithmetic-add.d.ts +1 -1
  58. package/dist/types/compute-engine/boxed-expression/arithmetic-mul-div.d.ts +1 -1
  59. package/dist/types/compute-engine/boxed-expression/arithmetic-power.d.ts +1 -1
  60. package/dist/types/compute-engine/boxed-expression/ascii-math.d.ts +1 -1
  61. package/dist/types/compute-engine/boxed-expression/box.d.ts +1 -1
  62. package/dist/types/compute-engine/boxed-expression/boxed-dictionary.d.ts +1 -1
  63. package/dist/types/compute-engine/boxed-expression/boxed-function.d.ts +1 -1
  64. package/dist/types/compute-engine/boxed-expression/boxed-number.d.ts +1 -1
  65. package/dist/types/compute-engine/boxed-expression/boxed-operator-definition.d.ts +7 -1
  66. package/dist/types/compute-engine/boxed-expression/boxed-patterns.d.ts +1 -1
  67. package/dist/types/compute-engine/boxed-expression/boxed-string.d.ts +1 -1
  68. package/dist/types/compute-engine/boxed-expression/boxed-symbol.d.ts +1 -1
  69. package/dist/types/compute-engine/boxed-expression/boxed-tensor.d.ts +1 -1
  70. package/dist/types/compute-engine/boxed-expression/boxed-value-definition.d.ts +1 -1
  71. package/dist/types/compute-engine/boxed-expression/cache.d.ts +1 -1
  72. package/dist/types/compute-engine/boxed-expression/canonical-utils.d.ts +1 -1
  73. package/dist/types/compute-engine/boxed-expression/canonical.d.ts +1 -1
  74. package/dist/types/compute-engine/boxed-expression/compare.d.ts +1 -1
  75. package/dist/types/compute-engine/boxed-expression/constants.d.ts +1 -1
  76. package/dist/types/compute-engine/boxed-expression/expand.d.ts +1 -1
  77. package/dist/types/compute-engine/boxed-expression/expression-map.d.ts +1 -1
  78. package/dist/types/compute-engine/boxed-expression/factor.d.ts +1 -1
  79. package/dist/types/compute-engine/boxed-expression/flatten.d.ts +1 -1
  80. package/dist/types/compute-engine/boxed-expression/hold.d.ts +1 -1
  81. package/dist/types/compute-engine/boxed-expression/inequality-bounds.d.ts +22 -10
  82. package/dist/types/compute-engine/boxed-expression/init-lazy-refs.d.ts +1 -1
  83. package/dist/types/compute-engine/boxed-expression/invisible-operator.d.ts +1 -1
  84. package/dist/types/compute-engine/boxed-expression/match.d.ts +1 -1
  85. package/dist/types/compute-engine/boxed-expression/negate.d.ts +1 -1
  86. package/dist/types/compute-engine/boxed-expression/numerics.d.ts +1 -1
  87. package/dist/types/compute-engine/boxed-expression/order.d.ts +1 -1
  88. package/dist/types/compute-engine/boxed-expression/pattern-utils.d.ts +1 -1
  89. package/dist/types/compute-engine/boxed-expression/polynomial-degree.d.ts +1 -1
  90. package/dist/types/compute-engine/boxed-expression/polynomials.d.ts +1 -1
  91. package/dist/types/compute-engine/boxed-expression/predicates.d.ts +1 -1
  92. package/dist/types/compute-engine/boxed-expression/rules.d.ts +1 -1
  93. package/dist/types/compute-engine/boxed-expression/serialize.d.ts +1 -1
  94. package/dist/types/compute-engine/boxed-expression/sgn.d.ts +1 -1
  95. package/dist/types/compute-engine/boxed-expression/simplify.d.ts +1 -1
  96. package/dist/types/compute-engine/boxed-expression/solve-linear-system.d.ts +1 -1
  97. package/dist/types/compute-engine/boxed-expression/solve.d.ts +1 -1
  98. package/dist/types/compute-engine/boxed-expression/stochastic-equal.d.ts +1 -1
  99. package/dist/types/compute-engine/boxed-expression/trigonometry.d.ts +1 -1
  100. package/dist/types/compute-engine/boxed-expression/type-guards.d.ts +1 -1
  101. package/dist/types/compute-engine/boxed-expression/utils.d.ts +1 -1
  102. package/dist/types/compute-engine/boxed-expression/validate.d.ts +1 -1
  103. package/dist/types/compute-engine/collection-utils.d.ts +1 -1
  104. package/dist/types/compute-engine/compilation/base-compiler.d.ts +62 -6
  105. package/dist/types/compute-engine/compilation/compile-expression.d.ts +1 -1
  106. package/dist/types/compute-engine/compilation/constant-folding.d.ts +1 -1
  107. package/dist/types/compute-engine/compilation/glsl-target.d.ts +1 -1
  108. package/dist/types/compute-engine/compilation/gpu-target.d.ts +44 -1
  109. package/dist/types/compute-engine/compilation/interval-javascript-target.d.ts +1 -1
  110. package/dist/types/compute-engine/compilation/javascript-target.d.ts +1 -1
  111. package/dist/types/compute-engine/compilation/python-target.d.ts +1 -1
  112. package/dist/types/compute-engine/compilation/types.d.ts +1 -1
  113. package/dist/types/compute-engine/compilation/wgsl-target.d.ts +1 -1
  114. package/dist/types/compute-engine/cost-function.d.ts +1 -1
  115. package/dist/types/compute-engine/engine-assumptions.d.ts +1 -1
  116. package/dist/types/compute-engine/engine-cache.d.ts +1 -1
  117. package/dist/types/compute-engine/engine-common-symbols.d.ts +1 -1
  118. package/dist/types/compute-engine/engine-compilation-targets.d.ts +1 -1
  119. package/dist/types/compute-engine/engine-configuration-lifecycle.d.ts +1 -1
  120. package/dist/types/compute-engine/engine-declarations.d.ts +1 -1
  121. package/dist/types/compute-engine/engine-expression-entrypoints.d.ts +1 -1
  122. package/dist/types/compute-engine/engine-extension-contracts.d.ts +1 -1
  123. package/dist/types/compute-engine/engine-library-bootstrap.d.ts +1 -1
  124. package/dist/types/compute-engine/engine-numeric-configuration.d.ts +1 -1
  125. package/dist/types/compute-engine/engine-runtime-state.d.ts +4 -1
  126. package/dist/types/compute-engine/engine-scope.d.ts +1 -1
  127. package/dist/types/compute-engine/engine-sequences.d.ts +1 -1
  128. package/dist/types/compute-engine/engine-simplification-rules.d.ts +1 -1
  129. package/dist/types/compute-engine/engine-startup-coordinator.d.ts +1 -1
  130. package/dist/types/compute-engine/engine-type-resolver.d.ts +1 -1
  131. package/dist/types/compute-engine/engine-validation-entrypoints.d.ts +1 -1
  132. package/dist/types/compute-engine/free-functions.d.ts +1 -1
  133. package/dist/types/compute-engine/function-utils.d.ts +1 -1
  134. package/dist/types/compute-engine/global-types.d.ts +1 -1
  135. package/dist/types/compute-engine/index.d.ts +18 -2
  136. package/dist/types/compute-engine/interval/arithmetic.d.ts +1 -1
  137. package/dist/types/compute-engine/interval/comparison.d.ts +1 -1
  138. package/dist/types/compute-engine/interval/elementary.d.ts +1 -1
  139. package/dist/types/compute-engine/interval/index.d.ts +1 -1
  140. package/dist/types/compute-engine/interval/trigonometric.d.ts +1 -1
  141. package/dist/types/compute-engine/interval/types.d.ts +1 -1
  142. package/dist/types/compute-engine/interval/util.d.ts +1 -1
  143. package/dist/types/compute-engine/latex-syntax/dictionary/default-dictionary.d.ts +1 -1
  144. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-algebra.d.ts +1 -1
  145. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-arithmetic.d.ts +1 -1
  146. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-calculus.d.ts +1 -1
  147. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-colors.d.ts +1 -1
  148. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-complex.d.ts +1 -1
  149. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-core.d.ts +1 -1
  150. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-linear-algebra.d.ts +1 -1
  151. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-logic.d.ts +1 -1
  152. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-other.d.ts +1 -1
  153. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-relational-operators.d.ts +1 -1
  154. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-sets.d.ts +1 -1
  155. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-statistics.d.ts +1 -1
  156. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-symbols.d.ts +1 -1
  157. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-trigonometry.d.ts +1 -1
  158. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-units.d.ts +1 -1
  159. package/dist/types/compute-engine/latex-syntax/dictionary/definitions.d.ts +1 -1
  160. package/dist/types/compute-engine/latex-syntax/dictionary/indexed-types.d.ts +1 -1
  161. package/dist/types/compute-engine/latex-syntax/latex-syntax.d.ts +1 -1
  162. package/dist/types/compute-engine/latex-syntax/parse-number.d.ts +1 -1
  163. package/dist/types/compute-engine/latex-syntax/parse-symbol.d.ts +1 -1
  164. package/dist/types/compute-engine/latex-syntax/parse.d.ts +1 -1
  165. package/dist/types/compute-engine/latex-syntax/serialize-dms.d.ts +1 -1
  166. package/dist/types/compute-engine/latex-syntax/serialize-number.d.ts +1 -1
  167. package/dist/types/compute-engine/latex-syntax/serializer-style.d.ts +1 -1
  168. package/dist/types/compute-engine/latex-syntax/serializer.d.ts +1 -1
  169. package/dist/types/compute-engine/latex-syntax/tokenizer.d.ts +1 -1
  170. package/dist/types/compute-engine/latex-syntax/types.d.ts +40 -1
  171. package/dist/types/compute-engine/latex-syntax/utils.d.ts +1 -1
  172. package/dist/types/compute-engine/library/arithmetic.d.ts +1 -1
  173. package/dist/types/compute-engine/library/calculus.d.ts +1 -1
  174. package/dist/types/compute-engine/library/collections.d.ts +5 -3
  175. package/dist/types/compute-engine/library/colors.d.ts +1 -1
  176. package/dist/types/compute-engine/library/combinatorics.d.ts +1 -1
  177. package/dist/types/compute-engine/library/complex.d.ts +1 -1
  178. package/dist/types/compute-engine/library/control-structures.d.ts +1 -1
  179. package/dist/types/compute-engine/library/core.d.ts +1 -1
  180. package/dist/types/compute-engine/library/fractals.d.ts +1 -1
  181. package/dist/types/compute-engine/library/library.d.ts +1 -1
  182. package/dist/types/compute-engine/library/linear-algebra.d.ts +1 -1
  183. package/dist/types/compute-engine/library/logic-analysis.d.ts +1 -1
  184. package/dist/types/compute-engine/library/logic.d.ts +1 -1
  185. package/dist/types/compute-engine/library/number-theory.d.ts +1 -1
  186. package/dist/types/compute-engine/library/polynomials.d.ts +1 -1
  187. package/dist/types/compute-engine/library/quantity-arithmetic.d.ts +1 -1
  188. package/dist/types/compute-engine/library/random-expression.d.ts +1 -1
  189. package/dist/types/compute-engine/library/relational-operator.d.ts +1 -1
  190. package/dist/types/compute-engine/library/sets.d.ts +1 -1
  191. package/dist/types/compute-engine/library/statistics.d.ts +1 -1
  192. package/dist/types/compute-engine/library/trigonometry.d.ts +1 -1
  193. package/dist/types/compute-engine/library/type-handlers.d.ts +1 -1
  194. package/dist/types/compute-engine/library/unit-data.d.ts +1 -1
  195. package/dist/types/compute-engine/library/units.d.ts +1 -1
  196. package/dist/types/compute-engine/library/utils.d.ts +1 -1
  197. package/dist/types/compute-engine/numeric-value/big-numeric-value.d.ts +1 -1
  198. package/dist/types/compute-engine/numeric-value/exact-numeric-value.d.ts +1 -1
  199. package/dist/types/compute-engine/numeric-value/machine-numeric-value.d.ts +1 -1
  200. package/dist/types/compute-engine/numeric-value/types.d.ts +1 -1
  201. package/dist/types/compute-engine/numerics/bigint.d.ts +1 -1
  202. package/dist/types/compute-engine/numerics/expression.d.ts +1 -1
  203. package/dist/types/compute-engine/numerics/interval.d.ts +1 -1
  204. package/dist/types/compute-engine/numerics/linear-algebra.d.ts +1 -1
  205. package/dist/types/compute-engine/numerics/monte-carlo.d.ts +1 -1
  206. package/dist/types/compute-engine/numerics/numeric-bigint.d.ts +1 -1
  207. package/dist/types/compute-engine/numerics/numeric-bignum.d.ts +1 -1
  208. package/dist/types/compute-engine/numerics/numeric-complex.d.ts +1 -1
  209. package/dist/types/compute-engine/numerics/numeric.d.ts +1 -1
  210. package/dist/types/compute-engine/numerics/primes.d.ts +1 -1
  211. package/dist/types/compute-engine/numerics/random.d.ts +23 -0
  212. package/dist/types/compute-engine/numerics/rationals.d.ts +1 -1
  213. package/dist/types/compute-engine/numerics/richardson.d.ts +1 -1
  214. package/dist/types/compute-engine/numerics/special-functions.d.ts +1 -1
  215. package/dist/types/compute-engine/numerics/statistics.d.ts +1 -1
  216. package/dist/types/compute-engine/numerics/strings.d.ts +1 -1
  217. package/dist/types/compute-engine/numerics/types.d.ts +1 -1
  218. package/dist/types/compute-engine/numerics/unit-data.d.ts +1 -1
  219. package/dist/types/compute-engine/oeis.d.ts +1 -1
  220. package/dist/types/compute-engine/sequence.d.ts +1 -1
  221. package/dist/types/compute-engine/symbolic/antiderivative.d.ts +1 -1
  222. package/dist/types/compute-engine/symbolic/derivative.d.ts +1 -1
  223. package/dist/types/compute-engine/symbolic/distribute.d.ts +1 -1
  224. package/dist/types/compute-engine/symbolic/fu-cost.d.ts +1 -1
  225. package/dist/types/compute-engine/symbolic/fu-transforms.d.ts +1 -1
  226. package/dist/types/compute-engine/symbolic/fu.d.ts +1 -1
  227. package/dist/types/compute-engine/symbolic/logic-utils.d.ts +1 -1
  228. package/dist/types/compute-engine/symbolic/simplify-abs.d.ts +1 -1
  229. package/dist/types/compute-engine/symbolic/simplify-divide.d.ts +1 -1
  230. package/dist/types/compute-engine/symbolic/simplify-factorial.d.ts +1 -1
  231. package/dist/types/compute-engine/symbolic/simplify-hyperbolic.d.ts +1 -1
  232. package/dist/types/compute-engine/symbolic/simplify-infinity.d.ts +1 -1
  233. package/dist/types/compute-engine/symbolic/simplify-log.d.ts +1 -1
  234. package/dist/types/compute-engine/symbolic/simplify-logic.d.ts +1 -1
  235. package/dist/types/compute-engine/symbolic/simplify-power.d.ts +1 -1
  236. package/dist/types/compute-engine/symbolic/simplify-product.d.ts +1 -1
  237. package/dist/types/compute-engine/symbolic/simplify-rules.d.ts +1 -1
  238. package/dist/types/compute-engine/symbolic/simplify-sum.d.ts +1 -1
  239. package/dist/types/compute-engine/symbolic/simplify-trig.d.ts +1 -1
  240. package/dist/types/compute-engine/tensor/tensor-fields.d.ts +1 -1
  241. package/dist/types/compute-engine/tensor/tensors.d.ts +1 -1
  242. package/dist/types/compute-engine/types-definitions.d.ts +1 -1
  243. package/dist/types/compute-engine/types-engine.d.ts +51 -1
  244. package/dist/types/compute-engine/types-evaluation.d.ts +1 -1
  245. package/dist/types/compute-engine/types-expression.d.ts +69 -1
  246. package/dist/types/compute-engine/types-kernel-evaluation.d.ts +1 -1
  247. package/dist/types/compute-engine/types-kernel-serialization.d.ts +1 -1
  248. package/dist/types/compute-engine/types-serialization.d.ts +1 -1
  249. package/dist/types/compute-engine/types.d.ts +1 -1
  250. package/dist/types/compute-engine.d.ts +1 -1
  251. package/dist/types/core.d.ts +1 -1
  252. package/dist/types/interval.d.ts +1 -1
  253. package/dist/types/latex-syntax.d.ts +2 -2
  254. package/dist/types/math-json/symbols.d.ts +1 -1
  255. package/dist/types/math-json/types.d.ts +1 -1
  256. package/dist/types/math-json/utils.d.ts +1 -1
  257. package/dist/types/math-json.d.ts +2 -2
  258. package/dist/types/numerics.d.ts +1 -1
  259. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- /** Numerics 0.56.0 */
1
+ /** Numerics 0.58.0 */
2
2
  (function(global,factory){typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : typeof define === 'function' && define.amd ? define(['exports'],factory):(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.Numerics = {}));})(this, (function (exports) { 'use strict';
3
3
  var Numerics = (() => {
4
4
  var __defProp = Object.defineProperty;
@@ -5288,7 +5288,42 @@ var Numerics = (() => {
5288
5288
  if (b === "nothing") return a;
5289
5289
  if (isSubtype(a, b)) return b;
5290
5290
  if (isSubtype(b, a)) return a;
5291
- return superType(a, b);
5291
+ const sup = superType(a, b);
5292
+ if (LOSSY_SUPERTYPE.has(sup)) return unionTypes(a, b);
5293
+ return sup;
5294
+ }
5295
+ var LOSSY_SUPERTYPE = /* @__PURE__ */ new Set([
5296
+ "scalar",
5297
+ "value",
5298
+ "function",
5299
+ "expression",
5300
+ "collection",
5301
+ "indexed_collection",
5302
+ "list",
5303
+ "set",
5304
+ "tuple",
5305
+ "record",
5306
+ "dictionary",
5307
+ "map",
5308
+ "any"
5309
+ ]);
5310
+ function unionTypes(a, b) {
5311
+ const members = [];
5312
+ const push = (t) => {
5313
+ if (typeof t === "object" && t.kind === "union") {
5314
+ for (const m of t.types) push(m);
5315
+ return;
5316
+ }
5317
+ const key = typeof t === "string" ? t : JSON.stringify(t);
5318
+ if (!members.some(
5319
+ (m) => (typeof m === "string" ? m : JSON.stringify(m)) === key
5320
+ ))
5321
+ members.push(t);
5322
+ };
5323
+ push(a);
5324
+ push(b);
5325
+ if (members.length === 1) return members[0];
5326
+ return { kind: "union", types: members };
5292
5327
  }
5293
5328
  function widen(...types) {
5294
5329
  if (types.length === 0) return "nothing";
@@ -8639,7 +8674,7 @@ var Numerics = (() => {
8639
8674
  }
8640
8675
 
8641
8676
  // src/numerics.ts
8642
- var version = "0.56.0";
8677
+ var version = "0.58.0";
8643
8678
  return __toCommonJS(numerics_exports);
8644
8679
  })();
8645
8680
  Object.assign(exports, Numerics); Object.defineProperty(exports, '__esModule', { value: true });}));
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  * BigDecimal: an arbitrary-precision decimal type.
3
3
  *
4
4
  * Value = significand * 10^exponent
@@ -1,2 +1,2 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import './transcendentals';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  * Transcendental / irrational operations for BigDecimal.
3
3
  *
4
4
  * This module attaches `sqrt()` and `cbrt()` to BigDecimal.prototype
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  * Fixed-point BigInt utilities for internal use by transcendental functions.
3
3
  *
4
4
  * A "fixed-point BigInt" represents a real number as `value = n / scale`,
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare const DEFAULT_COLOR = "\u001B[39m";
3
3
  export declare const DEFAULT_BG = "\u001B[49m";
4
4
  export declare const WHITE_BG = "\u001B[47m";
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  private _listeners;
3
3
  private _pending;
4
4
  private _version;
@@ -1,2 +1,2 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare function fuzzyStringMatch(invalidWord: string, validWords: string[]): string | null;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /**
3
3
  * Return a string or an array of graphemes.
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  cause: unknown;
3
3
  value: T;
4
4
  constructor({ message, value, cause, }?: {
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  infer Head,
3
3
  ...infer Rem
4
4
  ] ? MergeTypes<Rem, Res & Head> : Res;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export type RuntimeSignalCode = 'timeout' | 'out-of-memory' | 'recursion-depth-exceeded' | 'iteration-limit-exceeded';
3
3
  /** @category Error Handling */
4
4
  export type SignalCode = RuntimeSignalCode | ('invalid-name' | 'expected-predicate' | 'expected-symbol' | 'operator-requires-one-operand' | 'postfix-operator-requires-one-operand' | 'prefix-operator-requires-one-operand' | 'unbalanced-symbols' | 'expected-argument' | 'unexpected-command' | 'cyclic-definition' | 'invalid-supersets' | 'expected-supersets' | 'unknown-domain' | 'duplicate-wikidata' | 'invalid-dictionary-entry' | 'syntax-error');
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  kind: string;
3
3
  position: number;
4
4
  line: number;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /** @category Type */
3
3
  export declare class BoxedType {
4
4
  static unknown: BoxedType;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export interface Token {
3
3
  type: TokenType;
4
4
  value: string;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /**
3
3
  * BNF grammar for the type parser:
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { TypeNode } from './ast-nodes';
3
3
  import { TypeResolver } from './types';
4
4
  export declare class Parser {
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /** All the types representing numeric values */
3
3
  export declare const NUMERIC_TYPES: NumericPrimitiveType[];
4
4
  export declare const INDEXED_COLLECTION_TYPES: PrimitiveType[];
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /**
3
3
  * Reduce the input type
4
4
  *
@@ -1,2 +1,2 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare function typeToString(type: Type, precedence?: number): string;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /** Return true if lhs is a subtype of rhs */
3
3
  export declare function isPrimitiveSubtype(lhs: PrimitiveType, rhs: PrimitiveType): boolean;
4
4
  /** Return true if lhs is a subtype of rhs */
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { Type, TypeResolver } from './types';
3
3
  export declare class TypeBuilder implements ASTVisitor<Type> {
4
4
  private typeResolver;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  * A primitive type is a simple type that represents a concrete value.
3
3
  *
4
4
  * - `any`: the top type
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export { isValidType };
3
3
  export { widen, narrow } from './subtype';
4
4
  import type { Type, FunctionSignature, TypeString } from './types';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  *
3
3
  * <!--
4
4
  * !@consider?
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export { compile } from './compute-engine/compilation/compile-expression';
3
3
  export { JavaScriptTarget } from './compute-engine/compilation/javascript-target';
4
4
  export { GPUShaderTarget } from './compute-engine/compilation/gpu-target';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /**
3
3
  * Add an assumption, in the form of a predicate, for example:
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import type { MathJsonExpression, MathJsonSymbol } from '../../math-json/types';
3
3
  import type { Type, TypeString } from '../../common/type/types';
4
4
  import { BoxedType } from '../../common/type/boxed-type';
@@ -72,6 +72,11 @@ export declare abstract class _BoxedExpression implements Expression {
72
72
  *
73
73
  * Numeric values are rounded to `ce.precision` significant digits
74
74
  * (via `fractionalDigits: 'auto'`).
75
+ *
76
+ * If `options.verbatim` is `true` and `verbatimLatex` is set on this
77
+ * expression (i.e. it was parsed with `preserveLatex: true`), return
78
+ * the verbatim source instead of re-serializing. Falls through to
79
+ * re-serialization if no verbatim is available.
75
80
  */
76
81
  toLatex(options?: Record<string, any>): string;
77
82
  /** Called by `JSON.stringify()` when serializing to json.
@@ -194,6 +199,8 @@ export declare abstract class _BoxedExpression implements Expression {
194
199
  get isInteger(): boolean | undefined;
195
200
  get isRational(): boolean | undefined;
196
201
  get isReal(): boolean | undefined;
202
+ toSignedFunction(): Expression | undefined;
203
+ getInterval(symbol: string): import("../types-expression").IntervalBounds;
197
204
  simplify(_options?: Partial<SimplifyOptions>): Expression;
198
205
  evaluate(_options?: Partial<EvaluateOptions>): Expression;
199
206
  evaluateAsync(_options?: Partial<EvaluateOptions>): Promise<Expression>;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { BigDecimal } from '../../big-decimal';
3
3
  import type { Expression } from '../global-types';
4
4
  export declare function apply(expr: Expression, fn: (x: number) => number | Complex, bigFn?: (x: BigDecimal) => BigDecimal | Complex | number, complexFn?: (x: Complex) => number | Complex): Expression | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { BoxedType } from '../../common/type/boxed-type';
3
3
  import type { Expression, IComputeEngine as ComputeEngine } from '../global-types';
4
4
  /**
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { NumericValue } from '../numeric-value/types';
3
3
  import type { Rational } from '../numerics/types';
4
4
  /**
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import type { Rational } from '../numerics/types';
3
3
  export declare function asRadical(expr: Expression): Rational | null;
4
4
  /**
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export type AsciiMathSerializer = (expr: Expression, precedence?: number) => string;
3
3
  export type AsciiMathOptions = {
4
4
  symbols: Record<string, string>;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import type { FormOption } from '../types-serialization';
3
3
  import type { MathJsonSymbol } from '../../math-json/types';
4
4
  import { NumericValue } from '../numeric-value/types';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { _BoxedExpression } from './abstract-boxed-expression';
3
3
  import { BoxedType } from '../../common/type/boxed-type';
4
4
  import { DictionaryValue, MathJsonExpression } from '../../math-json/types';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import type { SimplifyOptions, ReplaceOptions, PatternMatchOptions, Expression, BoxedBaseDefinition, BoxedOperatorDefinition, BoxedRuleSet, BoxedSubstitution, CanonicalOptions, EvaluateOptions, IComputeEngine as ComputeEngine, Metadata, Rule, Sign, Substitution, Scope, BoxedValueDefinition, ExpressionInput, FunctionInterface } from '../global-types';
3
3
  import { Type } from '../../common/type/types';
4
4
  import { BoxedType } from '../../common/type/boxed-type';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { BigDecimal } from '../../big-decimal';
3
3
  import type { MathJsonExpression, MathJsonNumberObject } from '../../math-json';
4
4
  import type { Rational, SmallInteger } from '../numerics/types';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { BoxedType } from '../../common/type/boxed-type';
3
3
  import type { OperatorDefinition, Expression, BoxedOperatorDefinition, CollectionHandlers, CompiledExpression, EvaluateOptions, IComputeEngine as ComputeEngine, Sign } from '../global-types';
4
4
  export declare class _BoxedOperatorDefinition implements BoxedOperatorDefinition {
@@ -19,6 +19,12 @@ export declare class _BoxedOperatorDefinition implements BoxedOperatorDefinition
19
19
  scoped: boolean;
20
20
  signature: BoxedType;
21
21
  inferredSignature: boolean;
22
+ /** True if this operator definition was created from a user-defined
23
+ * function literal (e.g. via `ce.assign('f', ce.parse('x \\mapsto x^2'))`).
24
+ * Used to enable auto-broadcasting when applied to indexed collections.
25
+ * @internal
26
+ */
27
+ _isLambda: boolean;
22
28
  type?: (ops: ReadonlyArray<Expression>, options: {
23
29
  engine: ComputeEngine;
24
30
  }) => BoxedType | Type | TypeString | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  * # Pattern Matching Wildcards
3
3
  *
4
4
  * Patterns can contain wildcards that match parts of expressions. There are
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { _BoxedExpression } from './abstract-boxed-expression';
3
3
  import { BoxedType } from '../../common/type/boxed-type';
4
4
  /**
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import type { Type, TypeString } from '../../common/type/types';
3
3
  import type { OneOf } from '../../common/one-of';
4
4
  import { BoxedType } from '../../common/type/boxed-type';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import type { IComputeEngine as ComputeEngine, TensorDataType, Metadata, BoxedBaseDefinition, BoxedOperatorDefinition, BoxedSubstitution, EvaluateOptions, Expression, SimplifyOptions, PatternMatchOptions, Tensor, TensorInterface } from '../global-types';
3
3
  import { BoxedType } from '../../common/type/boxed-type';
4
4
  import { NumericValue } from '../numeric-value/types';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import type { Type, TypeString } from '../../common/type/types';
3
3
  import { BoxedType } from '../../common/type/boxed-type';
4
4
  import { ConfigurationChangeListener } from '../../common/configuration-change';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  value: T | null;
3
3
  generation: number | undefined;
4
4
  };
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /**
3
3
  * Ensure all expressions in the array are in canonical form
4
4
  */
@@ -1,2 +1,2 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare function canonicalForm(expr: Expression, forms: CanonicalOptions, scope?: Scope): Expression;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  type ExpandFn = (expr: Expression) => Expression;
3
3
  /** @internal */
4
4
  export declare function _setExpand(fn: ExpandFn): void;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  * Leaf module for shared constants used across boxed-expression modules.
3
3
  * No imports from sibling modules to avoid circular dependencies.
4
4
  */
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare function choose(n: number, k: number): number;
3
3
  /** Attempt to transform the expression (h, ops) into a sum */
4
4
  export declare function expandFunction(ce: ComputeEngine, h: string, ops: ReadonlyArray<Expression>): Expression | null;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare class ExpressionMap<U> implements ExpressionMapInterface<U> {
3
3
  readonly _items: Map<Expression, U>;
4
4
  constructor(source?: ExpressionMapInterface<U> | readonly (readonly [Expression, U])[]);
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /** Combine rational expressions into a single fraction */
3
3
  export declare function together(op: Expression): Expression;
4
4
  /**
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /**
3
3
  *
4
4
  * Optionally make all the arguments canonical (default).
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /** Apply the function `f` to each operand of the expression `expr`,
3
3
  * account for the 'lazy' property of the operator definition:
4
4
  *
@@ -1,9 +1,26 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
+ /**
3
+ * Extract interval bounds for `symbol` from a condition expression.
4
+ *
5
+ * Unlike `getInequalityBoundsFromAssumptions` (which reads the engine's
6
+ * assumption DB), this function operates directly on an AST shape:
7
+ *
8
+ * - bare comparisons (`Less`, `LessEqual`, `Greater`, `GreaterEqual`),
9
+ * including chained forms like `Less(a, x, b)`
10
+ * - `And(c1, c2, ...)` of supported shapes
11
+ * - `When(e, cond)` — unwraps to `cond`
12
+ * - `Multiply(f, When(...), ...)` — the Desmos parse shape for
13
+ * `f(x)\{a < x < b\}`; bounds from each `When` factor are merged
14
+ *
15
+ * Returns `undefined` if `expr` doesn't carry interval information for
16
+ * `symbol`, or if the information is not a simple lower-upper pair.
17
+ */
18
+ export declare function extractIntervalBounds(expr: Expression, symbol: string): IntervalBounds | undefined;
2
19
  /**
3
20
  * Get inequality bounds for a symbol from the assumption database.
4
21
  *
5
- * For example, if `x > 4` is assumed, this returns `{ lowerBound: 4, lowerStrict: true }`.
6
- * If `x <= 10` is assumed, this returns `{ upperBound: 10, upperStrict: false }`.
22
+ * For example, if `x > 4` is assumed, this returns `{ lower: 4, lowerStrict: true }`.
23
+ * If `x <= 10` is assumed, this returns `{ upper: 10, upperStrict: false }`.
7
24
  *
8
25
  * Note: Assumptions are normalized to forms like:
9
26
  * - `x > 4` becomes `Less(Add(Negate(x), 4), 0)` i.e., `4 - x < 0`
@@ -11,11 +28,6 @@
11
28
  *
12
29
  * @param ce - The compute engine instance
13
30
  * @param symbol - The symbol name to query
14
- * @returns An object with lowerBound, upperBound, and strictness flags
31
+ * @returns The `IntervalBounds` (same shape used by `extractIntervalBounds`).
15
32
  */
16
- export declare function getInequalityBoundsFromAssumptions(ce: ComputeEngine, symbol: string): {
17
- lowerBound?: Expression;
18
- lowerStrict?: boolean;
19
- upperBound?: Expression;
20
- upperStrict?: boolean;
21
- };
33
+ export declare function getInequalityBoundsFromAssumptions(ce: ComputeEngine, symbol: string): IntervalBounds;
@@ -1 +1 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare function canonicalInvisibleOperator(ops: ReadonlyArray<Expression>, { engine: ce }: {
3
3
  engine: ComputeEngine;
4
4
  }): Expression | null;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /**
3
3
  * The function attempts to match a subject expression to a
4
4
  * [pattern](/compute-engine/guides/patterns-and-rules/).
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare function canonicalNegate(expr: Expression): Expression;
3
3
  /**
4
4
  * Distribute `Negate` (multiply by -1) if expr is a number literal, an
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import { BigDecimal } from '../../big-decimal';
3
3
  import type { Rational } from '../numerics/types';
4
4
  import type { Expression, ExpressionInput } from '../global-types';
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export type Order = 'lex' | 'dexlex' | 'grevlex' | 'elim';
3
3
  import { DEFAULT_COMPLEXITY } from './constants';
4
4
  export { DEFAULT_COMPLEXITY };
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  * Leaf module for wildcard pattern utility functions.
3
3
  *
4
4
  * These are extracted from boxed-patterns.ts to break circular dependencies:
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /**
3
3
  * The total degree of an expression is the sum of the
4
4
  * positive integer degrees of the factors in the expression:
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export { totalDegree, maxDegree, lex, revlex } from './polynomial-degree';
3
3
  /**
4
4
  * Coefficient of a univariate (single variable) polynomial.
@@ -1,2 +1,2 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare function isPrime(expr: Expression): boolean | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare const ConditionParent: {
3
3
  boolean: string;
4
4
  string: string;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  import type { IComputeEngine as ComputeEngine, Expression, JsonSerializationOptions } from '../global-types';
3
3
  interface ProductLike {
4
4
  asRationalExpression(): Expression;
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare function sgn(expr: Expression): Sign | undefined;
3
3
  /**
4
4
  * Sign `s` is > 0.
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  type InternalSimplifyOptions = SimplifyOptions & {
3
3
  useVariations: boolean;
4
4
  };
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  /**
3
3
  * Solve a system of linear equations.
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.56.0 */
1
+ /* 0.58.0 */
2
2
  export declare const UNIVARIATE_ROOTS: Rule[];
3
3
  /**
4
4
  * MathJsonExpression is a function of a single variable (`x`) or an Equality