@cortex-js/compute-engine 0.55.6 → 0.56.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 (258) hide show
  1. package/dist/compile.esm.js +776 -139
  2. package/dist/compile.min.esm.js +277 -78
  3. package/dist/compile.min.umd.cjs +277 -78
  4. package/dist/compile.umd.cjs +776 -139
  5. package/dist/compute-engine.esm.js +1299 -260
  6. package/dist/compute-engine.min.esm.js +298 -99
  7. package/dist/compute-engine.min.umd.cjs +298 -99
  8. package/dist/compute-engine.umd.cjs +1299 -260
  9. package/dist/core.esm.js +1298 -259
  10. package/dist/core.min.esm.js +297 -98
  11. package/dist/core.min.umd.cjs +297 -98
  12. package/dist/core.umd.cjs +1298 -259
  13. package/dist/interval.esm.js +134 -5
  14. package/dist/interval.min.esm.js +6 -6
  15. package/dist/interval.min.umd.cjs +6 -6
  16. package/dist/interval.umd.cjs +134 -5
  17. package/dist/latex-syntax.esm.js +160 -11
  18. package/dist/latex-syntax.min.esm.js +7 -7
  19. package/dist/latex-syntax.min.umd.cjs +7 -7
  20. package/dist/latex-syntax.umd.cjs +160 -11
  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 +4 -2
  26. package/dist/numerics.min.esm.js +3 -3
  27. package/dist/numerics.min.umd.cjs +3 -3
  28. package/dist/numerics.umd.cjs +4 -2
  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 +2 -2
  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 +1 -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 +1 -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 +1 -1
  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 +1 -1
  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 +15 -5
  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 +25 -3
  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 +1 -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 +22 -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 +4 -3
  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 +10 -0
  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 +9 -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 +1 -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 +1 -1
  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/rationals.d.ts +1 -1
  212. package/dist/types/compute-engine/numerics/richardson.d.ts +1 -1
  213. package/dist/types/compute-engine/numerics/special-functions.d.ts +1 -1
  214. package/dist/types/compute-engine/numerics/statistics.d.ts +1 -1
  215. package/dist/types/compute-engine/numerics/strings.d.ts +1 -1
  216. package/dist/types/compute-engine/numerics/types.d.ts +1 -1
  217. package/dist/types/compute-engine/numerics/unit-data.d.ts +1 -1
  218. package/dist/types/compute-engine/oeis.d.ts +1 -1
  219. package/dist/types/compute-engine/sequence.d.ts +1 -1
  220. package/dist/types/compute-engine/symbolic/antiderivative.d.ts +1 -1
  221. package/dist/types/compute-engine/symbolic/derivative.d.ts +1 -1
  222. package/dist/types/compute-engine/symbolic/distribute.d.ts +1 -1
  223. package/dist/types/compute-engine/symbolic/fu-cost.d.ts +1 -1
  224. package/dist/types/compute-engine/symbolic/fu-transforms.d.ts +1 -1
  225. package/dist/types/compute-engine/symbolic/fu.d.ts +1 -1
  226. package/dist/types/compute-engine/symbolic/logic-utils.d.ts +1 -1
  227. package/dist/types/compute-engine/symbolic/simplify-abs.d.ts +1 -1
  228. package/dist/types/compute-engine/symbolic/simplify-divide.d.ts +1 -1
  229. package/dist/types/compute-engine/symbolic/simplify-factorial.d.ts +1 -1
  230. package/dist/types/compute-engine/symbolic/simplify-hyperbolic.d.ts +1 -1
  231. package/dist/types/compute-engine/symbolic/simplify-infinity.d.ts +1 -1
  232. package/dist/types/compute-engine/symbolic/simplify-log.d.ts +1 -1
  233. package/dist/types/compute-engine/symbolic/simplify-logic.d.ts +1 -1
  234. package/dist/types/compute-engine/symbolic/simplify-power.d.ts +1 -1
  235. package/dist/types/compute-engine/symbolic/simplify-product.d.ts +1 -1
  236. package/dist/types/compute-engine/symbolic/simplify-rules.d.ts +1 -1
  237. package/dist/types/compute-engine/symbolic/simplify-sum.d.ts +1 -1
  238. package/dist/types/compute-engine/symbolic/simplify-trig.d.ts +1 -1
  239. package/dist/types/compute-engine/tensor/tensor-fields.d.ts +1 -1
  240. package/dist/types/compute-engine/tensor/tensors.d.ts +1 -1
  241. package/dist/types/compute-engine/types-definitions.d.ts +1 -1
  242. package/dist/types/compute-engine/types-engine.d.ts +6 -2
  243. package/dist/types/compute-engine/types-evaluation.d.ts +1 -1
  244. package/dist/types/compute-engine/types-expression.d.ts +1 -1
  245. package/dist/types/compute-engine/types-kernel-evaluation.d.ts +1 -1
  246. package/dist/types/compute-engine/types-kernel-serialization.d.ts +1 -1
  247. package/dist/types/compute-engine/types-serialization.d.ts +1 -1
  248. package/dist/types/compute-engine/types.d.ts +1 -1
  249. package/dist/types/compute-engine.d.ts +1 -2
  250. package/dist/types/core.d.ts +1 -1
  251. package/dist/types/interval.d.ts +1 -1
  252. package/dist/types/latex-syntax.d.ts +2 -2
  253. package/dist/types/math-json/symbols.d.ts +1 -1
  254. package/dist/types/math-json/types.d.ts +1 -1
  255. package/dist/types/math-json/utils.d.ts +1 -1
  256. package/dist/types/math-json.d.ts +2 -2
  257. package/dist/types/numerics.d.ts +1 -1
  258. package/package.json +2 -2
@@ -1,4 +1,4 @@
1
- /** Interval 0.55.6 */
1
+ /** Interval 0.56.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.Interval = {}));})(this, (function (exports) { 'use strict';
3
3
  var Interval = (() => {
4
4
  var __defProp = Object.defineProperty;
@@ -3238,6 +3238,7 @@ var Interval = (() => {
3238
3238
  ];
3239
3239
  var VALUE_TYPES = [
3240
3240
  "value",
3241
+ "color",
3241
3242
  ...COLLECTION_TYPES,
3242
3243
  ...SCALAR_TYPES
3243
3244
  ];
@@ -4889,6 +4890,7 @@ var Interval = (() => {
4889
4890
  symbol: [],
4890
4891
  boolean: [],
4891
4892
  string: [],
4893
+ color: [],
4892
4894
  expression: EXPRESSION_TYPES
4893
4895
  };
4894
4896
  function isPrimitiveSubtype(lhs, rhs) {
@@ -9656,6 +9658,8 @@ var Interval = (() => {
9656
9658
  precedence: DIVISION_PRECEDENCE,
9657
9659
  parse: "Mod"
9658
9660
  },
9661
+ // Function-style alias: `\operatorname{mod}(a, b)`
9662
+ { latexTrigger: "\\operatorname{mod}", parse: "Mod" },
9659
9663
  {
9660
9664
  latexTrigger: "\\pmod",
9661
9665
  kind: "prefix",
@@ -9896,6 +9900,13 @@ var Interval = (() => {
9896
9900
  const rhs = serializer.wrap(operand(expr, 2), ADDITION_PRECEDENCE + 3);
9897
9901
  return joinLatex([lhs, "-", rhs]);
9898
9902
  }
9903
+ },
9904
+ // Euclidean distance between two points (tuples of numbers).
9905
+ {
9906
+ name: "Distance",
9907
+ latexTrigger: ["\\operatorname{distance}"],
9908
+ kind: "function",
9909
+ serialize: (serializer, expr) => "\\operatorname{distance}" + serializer.wrapArguments(expr)
9899
9910
  }
9900
9911
  ];
9901
9912
  function getIndexAssignment(expr, upper) {
@@ -11320,7 +11331,9 @@ var Interval = (() => {
11320
11331
  if (!expr || !symbol(expr)) return null;
11321
11332
  return ["Mean", expr];
11322
11333
  }
11323
- }
11334
+ },
11335
+ // Function-style alias: `\operatorname{var}(...)`
11336
+ { latexTrigger: "\\operatorname{var}", parse: "Variance" }
11324
11337
  ];
11325
11338
 
11326
11339
  // src/compute-engine/numerics/unit-data.ts
@@ -12328,7 +12341,7 @@ var Interval = (() => {
12328
12341
  36: "\\qquad"
12329
12342
  }[v] ?? "";
12330
12343
  }
12331
- }
12344
+ },
12332
12345
  // if (
12333
12346
  // [
12334
12347
  // '\\!',
@@ -12352,6 +12365,121 @@ var Interval = (() => {
12352
12365
  // name: '',
12353
12366
  // trigger: '\\check',
12354
12367
  // },
12368
+ // ---------------------------------------------------------------------------
12369
+ // Function-style aliases for collection / random operators that some
12370
+ // notations write in lowercase (e.g. `\operatorname{shuffle}(L)`).
12371
+ // The capitalized library entries already exist; these are pure parse
12372
+ // aliases so the lowercase names don't land in `unsupported-operator`.
12373
+ // ---------------------------------------------------------------------------
12374
+ { latexTrigger: "\\operatorname{random}", parse: "Random" },
12375
+ { latexTrigger: "\\operatorname{shuffle}", parse: "Shuffle" },
12376
+ { latexTrigger: "\\operatorname{repeat}", parse: "Repeat" },
12377
+ { latexTrigger: "\\operatorname{join}", parse: "Join" },
12378
+ // ---------------------------------------------------------------------------
12379
+ // Geometric primitive heads. Registered as known typed heads so consumers
12380
+ // can branch on the operator name; CE itself doesn't render them. The
12381
+ // library entries (with no evaluator) live in `library/core.ts`.
12382
+ // ---------------------------------------------------------------------------
12383
+ {
12384
+ name: "Triangle",
12385
+ latexTrigger: ["\\operatorname{triangle}"],
12386
+ kind: "function",
12387
+ serialize: (serializer, expr) => "\\operatorname{triangle}" + serializer.wrapArguments(expr)
12388
+ },
12389
+ // Desmos's geometric `vector(p1, p2)` — a directed segment between two
12390
+ // points. Routed to a dedicated head (not the existing column-vector
12391
+ // `Vector`, which has a narrower `(number+) -> vector` signature).
12392
+ {
12393
+ name: "GeometricVector",
12394
+ latexTrigger: ["\\operatorname{vector}"],
12395
+ kind: "function",
12396
+ serialize: (serializer, expr) => "\\operatorname{vector}" + serializer.wrapArguments(expr)
12397
+ },
12398
+ {
12399
+ name: "Sphere",
12400
+ latexTrigger: ["\\operatorname{sphere}"],
12401
+ kind: "function",
12402
+ serialize: (serializer, expr) => "\\operatorname{sphere}" + serializer.wrapArguments(expr)
12403
+ },
12404
+ {
12405
+ name: "Segment",
12406
+ latexTrigger: ["\\operatorname{segment}"],
12407
+ kind: "function",
12408
+ serialize: (serializer, expr) => "\\operatorname{segment}" + serializer.wrapArguments(expr)
12409
+ }
12410
+ ];
12411
+
12412
+ // src/compute-engine/latex-syntax/dictionary/definitions-colors.ts
12413
+ var DEFINITIONS_COLORS = [
12414
+ // Color constructors (one per colorspace, preserves space on evaluation)
12415
+ {
12416
+ name: "Rgb",
12417
+ latexTrigger: ["\\operatorname{rgb}"],
12418
+ kind: "function",
12419
+ serialize: (serializer, expr) => "\\operatorname{rgb}" + serializer.wrapArguments(expr)
12420
+ },
12421
+ {
12422
+ name: "Hsv",
12423
+ latexTrigger: ["\\operatorname{hsv}"],
12424
+ kind: "function",
12425
+ serialize: (serializer, expr) => "\\operatorname{hsv}" + serializer.wrapArguments(expr)
12426
+ },
12427
+ {
12428
+ name: "Hsl",
12429
+ latexTrigger: ["\\operatorname{hsl}"],
12430
+ kind: "function",
12431
+ serialize: (serializer, expr) => "\\operatorname{hsl}" + serializer.wrapArguments(expr)
12432
+ },
12433
+ {
12434
+ name: "Oklab",
12435
+ latexTrigger: ["\\operatorname{oklab}"],
12436
+ kind: "function",
12437
+ serialize: (serializer, expr) => "\\operatorname{oklab}" + serializer.wrapArguments(expr)
12438
+ },
12439
+ {
12440
+ name: "Oklch",
12441
+ latexTrigger: ["\\operatorname{oklch}"],
12442
+ kind: "function",
12443
+ serialize: (serializer, expr) => "\\operatorname{oklch}" + serializer.wrapArguments(expr)
12444
+ },
12445
+ // Conversion functions (color → color in the named space)
12446
+ {
12447
+ name: "AsRgb",
12448
+ latexTrigger: ["\\operatorname{asRgb}"],
12449
+ kind: "function",
12450
+ serialize: (serializer, expr) => "\\operatorname{asRgb}" + serializer.wrapArguments(expr)
12451
+ },
12452
+ {
12453
+ name: "AsHsv",
12454
+ latexTrigger: ["\\operatorname{asHsv}"],
12455
+ kind: "function",
12456
+ serialize: (serializer, expr) => "\\operatorname{asHsv}" + serializer.wrapArguments(expr)
12457
+ },
12458
+ {
12459
+ name: "AsHsl",
12460
+ latexTrigger: ["\\operatorname{asHsl}"],
12461
+ kind: "function",
12462
+ serialize: (serializer, expr) => "\\operatorname{asHsl}" + serializer.wrapArguments(expr)
12463
+ },
12464
+ {
12465
+ name: "AsOklab",
12466
+ latexTrigger: ["\\operatorname{asOklab}"],
12467
+ kind: "function",
12468
+ serialize: (serializer, expr) => "\\operatorname{asOklab}" + serializer.wrapArguments(expr)
12469
+ },
12470
+ {
12471
+ name: "AsOklch",
12472
+ latexTrigger: ["\\operatorname{asOklch}"],
12473
+ kind: "function",
12474
+ serialize: (serializer, expr) => "\\operatorname{asOklch}" + serializer.wrapArguments(expr)
12475
+ },
12476
+ // Perceptual difference (returns a scalar in [0, ~1])
12477
+ {
12478
+ name: "ColorDelta",
12479
+ latexTrigger: ["\\operatorname{colorDelta}"],
12480
+ kind: "function",
12481
+ serialize: (serializer, expr) => "\\operatorname{colorDelta}" + serializer.wrapArguments(expr)
12482
+ }
12355
12483
  ];
12356
12484
 
12357
12485
  // src/compute-engine/latex-syntax/dictionary/default-dictionary.ts
@@ -12382,7 +12510,8 @@ var Interval = (() => {
12382
12510
  ...DEFINITIONS_STATISTICS,
12383
12511
  ...DEFINITIONS_UNITS,
12384
12512
  ...DEFINITIONS_OTHERS,
12385
- ...DEFINITIONS_PHYSICS
12513
+ ...DEFINITIONS_PHYSICS,
12514
+ ...DEFINITIONS_COLORS
12386
12515
  ];
12387
12516
 
12388
12517
  // src/math-json/symbols.ts
@@ -13524,7 +13653,7 @@ var Interval = (() => {
13524
13653
  };
13525
13654
 
13526
13655
  // src/interval.ts
13527
- var version = "0.55.6";
13656
+ var version = "0.56.0";
13528
13657
  return __toCommonJS(interval_exports);
13529
13658
  })();
13530
13659
  /*! Bundled license information:
@@ -1,4 +1,4 @@
1
- /** Compute Engine 0.55.6 */
1
+ /** Compute Engine 0.56.0 */
2
2
 
3
3
  // src/math-json/utils.ts
4
4
  var MISSING = ["Error", "'missing'"];
@@ -1146,6 +1146,7 @@ var SCALAR_TYPES = [
1146
1146
  ];
1147
1147
  var VALUE_TYPES = [
1148
1148
  "value",
1149
+ "color",
1149
1150
  ...COLLECTION_TYPES,
1150
1151
  ...SCALAR_TYPES
1151
1152
  ];
@@ -2797,6 +2798,7 @@ var PRIMITIVE_SUBTYPES = {
2797
2798
  symbol: [],
2798
2799
  boolean: [],
2799
2800
  string: [],
2801
+ color: [],
2800
2802
  expression: EXPRESSION_TYPES
2801
2803
  };
2802
2804
  function isPrimitiveSubtype(lhs, rhs) {
@@ -7326,6 +7328,8 @@ var DEFINITIONS_ARITHMETIC = [
7326
7328
  precedence: DIVISION_PRECEDENCE,
7327
7329
  parse: "Mod"
7328
7330
  },
7331
+ // Function-style alias: `\operatorname{mod}(a, b)`
7332
+ { latexTrigger: "\\operatorname{mod}", parse: "Mod" },
7329
7333
  {
7330
7334
  latexTrigger: "\\pmod",
7331
7335
  kind: "prefix",
@@ -7566,6 +7570,13 @@ var DEFINITIONS_ARITHMETIC = [
7566
7570
  const rhs = serializer.wrap(operand(expr, 2), ADDITION_PRECEDENCE + 3);
7567
7571
  return joinLatex([lhs, "-", rhs]);
7568
7572
  }
7573
+ },
7574
+ // Euclidean distance between two points (tuples of numbers).
7575
+ {
7576
+ name: "Distance",
7577
+ latexTrigger: ["\\operatorname{distance}"],
7578
+ kind: "function",
7579
+ serialize: (serializer, expr) => "\\operatorname{distance}" + serializer.wrapArguments(expr)
7569
7580
  }
7570
7581
  ];
7571
7582
  function getIndexAssignment(expr, upper) {
@@ -8990,7 +9001,9 @@ var DEFINITIONS_STATISTICS = [
8990
9001
  if (!expr || !symbol(expr)) return null;
8991
9002
  return ["Mean", expr];
8992
9003
  }
8993
- }
9004
+ },
9005
+ // Function-style alias: `\operatorname{var}(...)`
9006
+ { latexTrigger: "\\operatorname{var}", parse: "Variance" }
8994
9007
  ];
8995
9008
 
8996
9009
  // src/compute-engine/numerics/unit-data.ts
@@ -9998,7 +10011,7 @@ var DEFINITIONS_OTHERS = [
9998
10011
  36: "\\qquad"
9999
10012
  }[v] ?? "";
10000
10013
  }
10001
- }
10014
+ },
10002
10015
  // if (
10003
10016
  // [
10004
10017
  // '\\!',
@@ -10022,6 +10035,121 @@ var DEFINITIONS_OTHERS = [
10022
10035
  // name: '',
10023
10036
  // trigger: '\\check',
10024
10037
  // },
10038
+ // ---------------------------------------------------------------------------
10039
+ // Function-style aliases for collection / random operators that some
10040
+ // notations write in lowercase (e.g. `\operatorname{shuffle}(L)`).
10041
+ // The capitalized library entries already exist; these are pure parse
10042
+ // aliases so the lowercase names don't land in `unsupported-operator`.
10043
+ // ---------------------------------------------------------------------------
10044
+ { latexTrigger: "\\operatorname{random}", parse: "Random" },
10045
+ { latexTrigger: "\\operatorname{shuffle}", parse: "Shuffle" },
10046
+ { latexTrigger: "\\operatorname{repeat}", parse: "Repeat" },
10047
+ { latexTrigger: "\\operatorname{join}", parse: "Join" },
10048
+ // ---------------------------------------------------------------------------
10049
+ // Geometric primitive heads. Registered as known typed heads so consumers
10050
+ // can branch on the operator name; CE itself doesn't render them. The
10051
+ // library entries (with no evaluator) live in `library/core.ts`.
10052
+ // ---------------------------------------------------------------------------
10053
+ {
10054
+ name: "Triangle",
10055
+ latexTrigger: ["\\operatorname{triangle}"],
10056
+ kind: "function",
10057
+ serialize: (serializer, expr) => "\\operatorname{triangle}" + serializer.wrapArguments(expr)
10058
+ },
10059
+ // Desmos's geometric `vector(p1, p2)` — a directed segment between two
10060
+ // points. Routed to a dedicated head (not the existing column-vector
10061
+ // `Vector`, which has a narrower `(number+) -> vector` signature).
10062
+ {
10063
+ name: "GeometricVector",
10064
+ latexTrigger: ["\\operatorname{vector}"],
10065
+ kind: "function",
10066
+ serialize: (serializer, expr) => "\\operatorname{vector}" + serializer.wrapArguments(expr)
10067
+ },
10068
+ {
10069
+ name: "Sphere",
10070
+ latexTrigger: ["\\operatorname{sphere}"],
10071
+ kind: "function",
10072
+ serialize: (serializer, expr) => "\\operatorname{sphere}" + serializer.wrapArguments(expr)
10073
+ },
10074
+ {
10075
+ name: "Segment",
10076
+ latexTrigger: ["\\operatorname{segment}"],
10077
+ kind: "function",
10078
+ serialize: (serializer, expr) => "\\operatorname{segment}" + serializer.wrapArguments(expr)
10079
+ }
10080
+ ];
10081
+
10082
+ // src/compute-engine/latex-syntax/dictionary/definitions-colors.ts
10083
+ var DEFINITIONS_COLORS = [
10084
+ // Color constructors (one per colorspace, preserves space on evaluation)
10085
+ {
10086
+ name: "Rgb",
10087
+ latexTrigger: ["\\operatorname{rgb}"],
10088
+ kind: "function",
10089
+ serialize: (serializer, expr) => "\\operatorname{rgb}" + serializer.wrapArguments(expr)
10090
+ },
10091
+ {
10092
+ name: "Hsv",
10093
+ latexTrigger: ["\\operatorname{hsv}"],
10094
+ kind: "function",
10095
+ serialize: (serializer, expr) => "\\operatorname{hsv}" + serializer.wrapArguments(expr)
10096
+ },
10097
+ {
10098
+ name: "Hsl",
10099
+ latexTrigger: ["\\operatorname{hsl}"],
10100
+ kind: "function",
10101
+ serialize: (serializer, expr) => "\\operatorname{hsl}" + serializer.wrapArguments(expr)
10102
+ },
10103
+ {
10104
+ name: "Oklab",
10105
+ latexTrigger: ["\\operatorname{oklab}"],
10106
+ kind: "function",
10107
+ serialize: (serializer, expr) => "\\operatorname{oklab}" + serializer.wrapArguments(expr)
10108
+ },
10109
+ {
10110
+ name: "Oklch",
10111
+ latexTrigger: ["\\operatorname{oklch}"],
10112
+ kind: "function",
10113
+ serialize: (serializer, expr) => "\\operatorname{oklch}" + serializer.wrapArguments(expr)
10114
+ },
10115
+ // Conversion functions (color → color in the named space)
10116
+ {
10117
+ name: "AsRgb",
10118
+ latexTrigger: ["\\operatorname{asRgb}"],
10119
+ kind: "function",
10120
+ serialize: (serializer, expr) => "\\operatorname{asRgb}" + serializer.wrapArguments(expr)
10121
+ },
10122
+ {
10123
+ name: "AsHsv",
10124
+ latexTrigger: ["\\operatorname{asHsv}"],
10125
+ kind: "function",
10126
+ serialize: (serializer, expr) => "\\operatorname{asHsv}" + serializer.wrapArguments(expr)
10127
+ },
10128
+ {
10129
+ name: "AsHsl",
10130
+ latexTrigger: ["\\operatorname{asHsl}"],
10131
+ kind: "function",
10132
+ serialize: (serializer, expr) => "\\operatorname{asHsl}" + serializer.wrapArguments(expr)
10133
+ },
10134
+ {
10135
+ name: "AsOklab",
10136
+ latexTrigger: ["\\operatorname{asOklab}"],
10137
+ kind: "function",
10138
+ serialize: (serializer, expr) => "\\operatorname{asOklab}" + serializer.wrapArguments(expr)
10139
+ },
10140
+ {
10141
+ name: "AsOklch",
10142
+ latexTrigger: ["\\operatorname{asOklch}"],
10143
+ kind: "function",
10144
+ serialize: (serializer, expr) => "\\operatorname{asOklch}" + serializer.wrapArguments(expr)
10145
+ },
10146
+ // Perceptual difference (returns a scalar in [0, ~1])
10147
+ {
10148
+ name: "ColorDelta",
10149
+ latexTrigger: ["\\operatorname{colorDelta}"],
10150
+ kind: "function",
10151
+ serialize: (serializer, expr) => "\\operatorname{colorDelta}" + serializer.wrapArguments(expr)
10152
+ }
10025
10153
  ];
10026
10154
 
10027
10155
  // src/compute-engine/latex-syntax/dictionary/default-dictionary.ts
@@ -10052,7 +10180,8 @@ var LATEX_DICTIONARY = [
10052
10180
  ...DEFINITIONS_STATISTICS,
10053
10181
  ...DEFINITIONS_UNITS,
10054
10182
  ...DEFINITIONS_OTHERS,
10055
- ...DEFINITIONS_PHYSICS
10183
+ ...DEFINITIONS_PHYSICS,
10184
+ ...DEFINITIONS_COLORS
10056
10185
  ];
10057
10186
 
10058
10187
  // src/math-json/symbols.ts
@@ -10217,6 +10346,17 @@ function addEntry(result, entry, onError) {
10217
10346
  } else if (Array.isArray(openTrigger) && openTrigger.length > 0) {
10218
10347
  openTokens.push(openTrigger[0]);
10219
10348
  }
10349
+ const closeTrigger = indexedEntry.closeTrigger;
10350
+ const closeTokens = /* @__PURE__ */ new Set();
10351
+ if (typeof closeTrigger === "string") {
10352
+ const variants = DELIMITER_SHORTHAND[closeTrigger];
10353
+ if (variants) for (const v of variants) closeTokens.add(v);
10354
+ else closeTokens.add(closeTrigger);
10355
+ if (closeTrigger === "||") closeTokens.add("|");
10356
+ } else if (Array.isArray(closeTrigger) && closeTrigger.length > 0) {
10357
+ closeTokens.add(closeTrigger[0]);
10358
+ }
10359
+ indexedEntry.closeTokens = closeTokens;
10220
10360
  for (const token of openTokens) {
10221
10361
  const existing = result.matchfixByOpen.get(token);
10222
10362
  if (existing) {
@@ -10408,11 +10548,7 @@ function makeSerializeHandler(entry, latexTrigger, idTrigger) {
10408
10548
  if (style === "scaled")
10409
10549
  return joinLatex([`\\left${openDelim}`, inner, `\\right${closeDelim}`]);
10410
10550
  if (style === "big")
10411
- return joinLatex([
10412
- `\\Bigl${openDelim}`,
10413
- inner,
10414
- `\\Bigr${closeDelim}`
10415
- ]);
10551
+ return joinLatex([`\\Bigl${openDelim}`, inner, `\\Bigr${closeDelim}`]);
10416
10552
  return joinLatex([openDelim, inner, closeDelim]);
10417
10553
  };
10418
10554
  }
@@ -13141,7 +13277,7 @@ var _Parser = class __Parser {
13141
13277
  }
13142
13278
  if (this.match("\\hskip") || this.match("\\kern")) {
13143
13279
  this.skipSpace();
13144
- this.match("-") || this.match("+");
13280
+ if (!this.match("-")) this.match("+");
13145
13281
  while (/^[\d.]$/.test(this.peek)) this.nextToken();
13146
13282
  for (const unit of [
13147
13283
  "pt",
@@ -13655,6 +13791,19 @@ var _Parser = class __Parser {
13655
13791
  }
13656
13792
  for (const def of defs) {
13657
13793
  this.index = start;
13794
+ if (def.closeTokens.size > 0) {
13795
+ let found = false;
13796
+ const tokens = this._tokens;
13797
+ for (let i = start; i < tokens.length; i++) {
13798
+ if (def.closeTokens.has(tokens[i])) {
13799
+ found = true;
13800
+ break;
13801
+ }
13802
+ }
13803
+ if (!found) continue;
13804
+ }
13805
+ if (typeof def.openTrigger === "string" && def.openTrigger === "." && !OPEN_DELIMITER_PREFIX[currentToken])
13806
+ continue;
13658
13807
  const matched = this.matchDelimiter(def.openTrigger, def.closeTrigger);
13659
13808
  if (!matched) continue;
13660
13809
  const bodyStart = this.index;
@@ -15308,7 +15457,7 @@ function serialize(expr) {
15308
15457
  }
15309
15458
 
15310
15459
  // src/latex-syntax.ts
15311
- var version = "0.55.6";
15460
+ var version = "0.56.0";
15312
15461
  export {
15313
15462
  DEFINITIONS_ALGEBRA as ALGEBRA_DICTIONARY,
15314
15463
  DEFINITIONS_ARITHMETIC as ARITHMETIC_DICTIONARY,