@cortex-js/compute-engine 0.53.1 → 0.54.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 (226) hide show
  1. package/dist/compute-engine.esm.js +979 -288
  2. package/dist/compute-engine.min.esm.js +70 -70
  3. package/dist/compute-engine.min.umd.cjs +72 -72
  4. package/dist/compute-engine.umd.cjs +979 -288
  5. package/dist/math-json.esm.js +2 -2
  6. package/dist/math-json.min.esm.js +2 -2
  7. package/dist/math-json.min.umd.cjs +2 -2
  8. package/dist/math-json.umd.cjs +2 -2
  9. package/dist/types/common/ansi-codes.d.ts +1 -1
  10. package/dist/types/common/configuration-change.d.ts +1 -1
  11. package/dist/types/common/fuzzy-string-match.d.ts +1 -1
  12. package/dist/types/common/grapheme-splitter.d.ts +1 -1
  13. package/dist/types/common/interruptible.d.ts +1 -1
  14. package/dist/types/common/one-of.d.ts +1 -1
  15. package/dist/types/common/signals.d.ts +1 -1
  16. package/dist/types/common/type/ast-nodes.d.ts +1 -1
  17. package/dist/types/common/type/boxed-type.d.ts +1 -1
  18. package/dist/types/common/type/lexer.d.ts +1 -1
  19. package/dist/types/common/type/parse.d.ts +1 -1
  20. package/dist/types/common/type/parser.d.ts +1 -1
  21. package/dist/types/common/type/primitive.d.ts +1 -1
  22. package/dist/types/common/type/reduce.d.ts +1 -1
  23. package/dist/types/common/type/serialize.d.ts +1 -1
  24. package/dist/types/common/type/subtype.d.ts +1 -1
  25. package/dist/types/common/type/type-builder.d.ts +1 -1
  26. package/dist/types/common/type/types.d.ts +1 -1
  27. package/dist/types/common/type/utils.d.ts +1 -1
  28. package/dist/types/common/utils.d.ts +1 -1
  29. package/dist/types/compute-engine/assume.d.ts +1 -1
  30. package/dist/types/compute-engine/boxed-expression/abstract-boxed-expression.d.ts +14 -3
  31. package/dist/types/compute-engine/boxed-expression/apply.d.ts +1 -1
  32. package/dist/types/compute-engine/boxed-expression/arithmetic-add.d.ts +1 -1
  33. package/dist/types/compute-engine/boxed-expression/arithmetic-mul-div.d.ts +1 -1
  34. package/dist/types/compute-engine/boxed-expression/arithmetic-power.d.ts +1 -1
  35. package/dist/types/compute-engine/boxed-expression/ascii-math.d.ts +1 -1
  36. package/dist/types/compute-engine/boxed-expression/box.d.ts +1 -1
  37. package/dist/types/compute-engine/boxed-expression/boxed-dictionary.d.ts +1 -1
  38. package/dist/types/compute-engine/boxed-expression/boxed-function.d.ts +3 -3
  39. package/dist/types/compute-engine/boxed-expression/boxed-number.d.ts +3 -3
  40. package/dist/types/compute-engine/boxed-expression/boxed-operator-definition.d.ts +1 -1
  41. package/dist/types/compute-engine/boxed-expression/boxed-patterns.d.ts +1 -1
  42. package/dist/types/compute-engine/boxed-expression/boxed-string.d.ts +1 -1
  43. package/dist/types/compute-engine/boxed-expression/boxed-symbol.d.ts +3 -3
  44. package/dist/types/compute-engine/boxed-expression/boxed-tensor.d.ts +1 -1
  45. package/dist/types/compute-engine/boxed-expression/boxed-value-definition.d.ts +1 -1
  46. package/dist/types/compute-engine/boxed-expression/cache.d.ts +1 -1
  47. package/dist/types/compute-engine/boxed-expression/canonical-utils.d.ts +1 -1
  48. package/dist/types/compute-engine/boxed-expression/canonical.d.ts +1 -1
  49. package/dist/types/compute-engine/boxed-expression/compare.d.ts +1 -1
  50. package/dist/types/compute-engine/boxed-expression/constants.d.ts +1 -1
  51. package/dist/types/compute-engine/boxed-expression/expand.d.ts +1 -1
  52. package/dist/types/compute-engine/boxed-expression/expression-map.d.ts +1 -1
  53. package/dist/types/compute-engine/boxed-expression/factor.d.ts +37 -4
  54. package/dist/types/compute-engine/boxed-expression/flatten.d.ts +1 -1
  55. package/dist/types/compute-engine/boxed-expression/hold.d.ts +1 -1
  56. package/dist/types/compute-engine/boxed-expression/inequality-bounds.d.ts +1 -1
  57. package/dist/types/compute-engine/boxed-expression/init-lazy-refs.d.ts +1 -1
  58. package/dist/types/compute-engine/boxed-expression/invisible-operator.d.ts +1 -1
  59. package/dist/types/compute-engine/boxed-expression/match.d.ts +2 -2
  60. package/dist/types/compute-engine/boxed-expression/negate.d.ts +1 -1
  61. package/dist/types/compute-engine/boxed-expression/numerics.d.ts +1 -1
  62. package/dist/types/compute-engine/boxed-expression/order.d.ts +1 -1
  63. package/dist/types/compute-engine/boxed-expression/pattern-utils.d.ts +1 -1
  64. package/dist/types/compute-engine/boxed-expression/polynomial-degree.d.ts +1 -1
  65. package/dist/types/compute-engine/boxed-expression/polynomials.d.ts +1 -1
  66. package/dist/types/compute-engine/boxed-expression/predicates.d.ts +1 -1
  67. package/dist/types/compute-engine/boxed-expression/rules.d.ts +1 -1
  68. package/dist/types/compute-engine/boxed-expression/serialize.d.ts +1 -1
  69. package/dist/types/compute-engine/boxed-expression/sgn.d.ts +1 -1
  70. package/dist/types/compute-engine/boxed-expression/simplify.d.ts +1 -1
  71. package/dist/types/compute-engine/boxed-expression/solve-linear-system.d.ts +1 -1
  72. package/dist/types/compute-engine/boxed-expression/solve.d.ts +1 -1
  73. package/dist/types/compute-engine/boxed-expression/stochastic-equal.d.ts +1 -1
  74. package/dist/types/compute-engine/boxed-expression/trigonometry.d.ts +1 -1
  75. package/dist/types/compute-engine/boxed-expression/type-guards.d.ts +1 -1
  76. package/dist/types/compute-engine/boxed-expression/utils.d.ts +1 -1
  77. package/dist/types/compute-engine/boxed-expression/validate.d.ts +1 -1
  78. package/dist/types/compute-engine/collection-utils.d.ts +1 -1
  79. package/dist/types/compute-engine/compilation/base-compiler.d.ts +1 -1
  80. package/dist/types/compute-engine/compilation/compile-expression.d.ts +1 -1
  81. package/dist/types/compute-engine/compilation/glsl-target.d.ts +1 -1
  82. package/dist/types/compute-engine/compilation/gpu-target.d.ts +1 -1
  83. package/dist/types/compute-engine/compilation/interval-javascript-target.d.ts +1 -1
  84. package/dist/types/compute-engine/compilation/javascript-target.d.ts +1 -1
  85. package/dist/types/compute-engine/compilation/python-target.d.ts +1 -1
  86. package/dist/types/compute-engine/compilation/types.d.ts +1 -1
  87. package/dist/types/compute-engine/compilation/wgsl-target.d.ts +1 -1
  88. package/dist/types/compute-engine/cost-function.d.ts +1 -1
  89. package/dist/types/compute-engine/engine-assumptions.d.ts +1 -1
  90. package/dist/types/compute-engine/engine-cache.d.ts +1 -1
  91. package/dist/types/compute-engine/engine-common-symbols.d.ts +1 -1
  92. package/dist/types/compute-engine/engine-compilation-targets.d.ts +1 -1
  93. package/dist/types/compute-engine/engine-configuration-lifecycle.d.ts +1 -1
  94. package/dist/types/compute-engine/engine-declarations.d.ts +1 -1
  95. package/dist/types/compute-engine/engine-expression-entrypoints.d.ts +1 -1
  96. package/dist/types/compute-engine/engine-extension-contracts.d.ts +1 -1
  97. package/dist/types/compute-engine/engine-latex-dictionary-state.d.ts +1 -1
  98. package/dist/types/compute-engine/engine-library-bootstrap.d.ts +1 -1
  99. package/dist/types/compute-engine/engine-numeric-configuration.d.ts +1 -1
  100. package/dist/types/compute-engine/engine-parse-entrypoint.d.ts +1 -1
  101. package/dist/types/compute-engine/engine-runtime-state.d.ts +1 -1
  102. package/dist/types/compute-engine/engine-scope.d.ts +1 -1
  103. package/dist/types/compute-engine/engine-sequences.d.ts +1 -1
  104. package/dist/types/compute-engine/engine-simplification-rules.d.ts +1 -1
  105. package/dist/types/compute-engine/engine-startup-coordinator.d.ts +1 -1
  106. package/dist/types/compute-engine/engine-type-resolver.d.ts +1 -1
  107. package/dist/types/compute-engine/engine-validation-entrypoints.d.ts +1 -1
  108. package/dist/types/compute-engine/free-functions.d.ts +1 -1
  109. package/dist/types/compute-engine/function-utils.d.ts +1 -1
  110. package/dist/types/compute-engine/global-types.d.ts +1 -1
  111. package/dist/types/compute-engine/index.d.ts +1 -1
  112. package/dist/types/compute-engine/interval/arithmetic.d.ts +1 -1
  113. package/dist/types/compute-engine/interval/comparison.d.ts +1 -1
  114. package/dist/types/compute-engine/interval/elementary.d.ts +1 -1
  115. package/dist/types/compute-engine/interval/index.d.ts +1 -1
  116. package/dist/types/compute-engine/interval/trigonometric.d.ts +1 -1
  117. package/dist/types/compute-engine/interval/types.d.ts +1 -1
  118. package/dist/types/compute-engine/interval/util.d.ts +1 -1
  119. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-algebra.d.ts +1 -1
  120. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-arithmetic.d.ts +1 -1
  121. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-calculus.d.ts +1 -1
  122. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-complex.d.ts +1 -1
  123. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-core.d.ts +1 -1
  124. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-linear-algebra.d.ts +1 -1
  125. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-logic.d.ts +1 -1
  126. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-other.d.ts +1 -1
  127. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-relational-operators.d.ts +1 -1
  128. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-sets.d.ts +1 -1
  129. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-statistics.d.ts +1 -1
  130. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-symbols.d.ts +1 -1
  131. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-trigonometry.d.ts +1 -1
  132. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-units.d.ts +1 -1
  133. package/dist/types/compute-engine/latex-syntax/dictionary/definitions.d.ts +1 -1
  134. package/dist/types/compute-engine/latex-syntax/dictionary/indexed-types.d.ts +1 -1
  135. package/dist/types/compute-engine/latex-syntax/parse-number.d.ts +1 -1
  136. package/dist/types/compute-engine/latex-syntax/parse-symbol.d.ts +1 -1
  137. package/dist/types/compute-engine/latex-syntax/parse.d.ts +1 -1
  138. package/dist/types/compute-engine/latex-syntax/serialize-dms.d.ts +1 -1
  139. package/dist/types/compute-engine/latex-syntax/serialize-number.d.ts +1 -1
  140. package/dist/types/compute-engine/latex-syntax/serializer-style.d.ts +1 -1
  141. package/dist/types/compute-engine/latex-syntax/serializer.d.ts +1 -1
  142. package/dist/types/compute-engine/latex-syntax/tokenizer.d.ts +1 -1
  143. package/dist/types/compute-engine/latex-syntax/types.d.ts +1 -1
  144. package/dist/types/compute-engine/latex-syntax/utils.d.ts +1 -1
  145. package/dist/types/compute-engine/library/arithmetic.d.ts +1 -1
  146. package/dist/types/compute-engine/library/calculus.d.ts +1 -1
  147. package/dist/types/compute-engine/library/collections.d.ts +1 -1
  148. package/dist/types/compute-engine/library/colors.d.ts +1 -1
  149. package/dist/types/compute-engine/library/combinatorics.d.ts +1 -1
  150. package/dist/types/compute-engine/library/complex.d.ts +1 -1
  151. package/dist/types/compute-engine/library/control-structures.d.ts +1 -1
  152. package/dist/types/compute-engine/library/core.d.ts +1 -1
  153. package/dist/types/compute-engine/library/fractals.d.ts +1 -1
  154. package/dist/types/compute-engine/library/library.d.ts +1 -1
  155. package/dist/types/compute-engine/library/linear-algebra.d.ts +1 -1
  156. package/dist/types/compute-engine/library/logic-analysis.d.ts +1 -1
  157. package/dist/types/compute-engine/library/logic.d.ts +1 -1
  158. package/dist/types/compute-engine/library/number-theory.d.ts +1 -1
  159. package/dist/types/compute-engine/library/polynomials.d.ts +1 -1
  160. package/dist/types/compute-engine/library/quantity-arithmetic.d.ts +1 -1
  161. package/dist/types/compute-engine/library/random-expression.d.ts +1 -1
  162. package/dist/types/compute-engine/library/relational-operator.d.ts +1 -1
  163. package/dist/types/compute-engine/library/sets.d.ts +1 -1
  164. package/dist/types/compute-engine/library/statistics.d.ts +1 -1
  165. package/dist/types/compute-engine/library/trigonometry.d.ts +1 -1
  166. package/dist/types/compute-engine/library/type-handlers.d.ts +1 -1
  167. package/dist/types/compute-engine/library/unit-data.d.ts +1 -1
  168. package/dist/types/compute-engine/library/units.d.ts +1 -1
  169. package/dist/types/compute-engine/library/utils.d.ts +1 -1
  170. package/dist/types/compute-engine/numeric-value/big-numeric-value.d.ts +1 -1
  171. package/dist/types/compute-engine/numeric-value/exact-numeric-value.d.ts +1 -1
  172. package/dist/types/compute-engine/numeric-value/machine-numeric-value.d.ts +1 -1
  173. package/dist/types/compute-engine/numeric-value/types.d.ts +1 -1
  174. package/dist/types/compute-engine/numerics/bigint.d.ts +1 -1
  175. package/dist/types/compute-engine/numerics/expression.d.ts +1 -1
  176. package/dist/types/compute-engine/numerics/interval.d.ts +1 -1
  177. package/dist/types/compute-engine/numerics/monte-carlo.d.ts +1 -1
  178. package/dist/types/compute-engine/numerics/numeric-bigint.d.ts +1 -1
  179. package/dist/types/compute-engine/numerics/numeric-bignum.d.ts +1 -1
  180. package/dist/types/compute-engine/numerics/numeric-complex.d.ts +1 -1
  181. package/dist/types/compute-engine/numerics/numeric.d.ts +1 -1
  182. package/dist/types/compute-engine/numerics/primes.d.ts +1 -1
  183. package/dist/types/compute-engine/numerics/rationals.d.ts +1 -1
  184. package/dist/types/compute-engine/numerics/richardson.d.ts +1 -1
  185. package/dist/types/compute-engine/numerics/special-functions.d.ts +1 -1
  186. package/dist/types/compute-engine/numerics/statistics.d.ts +1 -1
  187. package/dist/types/compute-engine/numerics/strings.d.ts +1 -1
  188. package/dist/types/compute-engine/numerics/types.d.ts +1 -1
  189. package/dist/types/compute-engine/numerics/unit-data.d.ts +1 -1
  190. package/dist/types/compute-engine/oeis.d.ts +1 -1
  191. package/dist/types/compute-engine/sequence.d.ts +1 -1
  192. package/dist/types/compute-engine/symbolic/antiderivative.d.ts +1 -1
  193. package/dist/types/compute-engine/symbolic/derivative.d.ts +1 -1
  194. package/dist/types/compute-engine/symbolic/distribute.d.ts +1 -1
  195. package/dist/types/compute-engine/symbolic/fu-cost.d.ts +1 -1
  196. package/dist/types/compute-engine/symbolic/fu-transforms.d.ts +1 -1
  197. package/dist/types/compute-engine/symbolic/fu.d.ts +1 -1
  198. package/dist/types/compute-engine/symbolic/logic-utils.d.ts +1 -1
  199. package/dist/types/compute-engine/symbolic/simplify-abs.d.ts +1 -1
  200. package/dist/types/compute-engine/symbolic/simplify-divide.d.ts +1 -1
  201. package/dist/types/compute-engine/symbolic/simplify-factorial.d.ts +1 -1
  202. package/dist/types/compute-engine/symbolic/simplify-hyperbolic.d.ts +1 -1
  203. package/dist/types/compute-engine/symbolic/simplify-infinity.d.ts +1 -1
  204. package/dist/types/compute-engine/symbolic/simplify-log.d.ts +1 -1
  205. package/dist/types/compute-engine/symbolic/simplify-logic.d.ts +1 -1
  206. package/dist/types/compute-engine/symbolic/simplify-power.d.ts +1 -1
  207. package/dist/types/compute-engine/symbolic/simplify-product.d.ts +1 -1
  208. package/dist/types/compute-engine/symbolic/simplify-rules.d.ts +1 -1
  209. package/dist/types/compute-engine/symbolic/simplify-sum.d.ts +1 -1
  210. package/dist/types/compute-engine/symbolic/simplify-trig.d.ts +1 -1
  211. package/dist/types/compute-engine/tensor/tensor-fields.d.ts +1 -1
  212. package/dist/types/compute-engine/tensor/tensors.d.ts +1 -1
  213. package/dist/types/compute-engine/types-definitions.d.ts +1 -1
  214. package/dist/types/compute-engine/types-engine.d.ts +1 -1
  215. package/dist/types/compute-engine/types-evaluation.d.ts +1 -1
  216. package/dist/types/compute-engine/types-expression.d.ts +61 -2
  217. package/dist/types/compute-engine/types-kernel-evaluation.d.ts +1 -1
  218. package/dist/types/compute-engine/types-kernel-serialization.d.ts +12 -1
  219. package/dist/types/compute-engine/types-serialization.d.ts +1 -1
  220. package/dist/types/compute-engine/types.d.ts +1 -1
  221. package/dist/types/compute-engine.d.ts +1 -1
  222. package/dist/types/math-json/symbols.d.ts +1 -1
  223. package/dist/types/math-json/types.d.ts +1 -1
  224. package/dist/types/math-json/utils.d.ts +1 -1
  225. package/dist/types/math-json.d.ts +2 -2
  226. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const CORE_LIBRARY: SymbolDefinitions[];
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const FRACTALS_LIBRARY: SymbolDefinitions[];
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { SymbolDefinitions, IComputeEngine as ComputeEngine, LibraryDefinition } from '../global-types';
3
3
  /**
4
4
  * The standard libraries bundled with the Compute Engine.
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const LINEAR_ALGEBRA_LIBRARY: SymbolDefinitions[];
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * Quantifier domain helpers and boolean analysis functions.
4
4
  * Extracted from logic.ts for better code organization.
@@ -1,3 +1,3 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const LOGIC_LIBRARY: SymbolDefinitions;
3
3
  export declare const LOGIC_FUNCTION_LIBRARY: SymbolDefinitions;
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const NUMBER_THEORY_LIBRARY: SymbolDefinitions[];
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const POLYNOMIALS_LIBRARY: SymbolDefinitions[];
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * Arithmetic helpers for Quantity expressions.
3
3
  *
4
4
  * Extracted from arithmetic.ts to keep that file focused on scalar
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function randomExpression(level?: number): MathJsonExpression;
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const RELOP_LIBRARY: SymbolDefinitions;
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const SETS_LIBRARY: SymbolDefinitions;
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const STATISTICS_LIBRARY: SymbolDefinitions[];
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const TRIGONOMETRY_LIBRARY: SymbolDefinitions[];
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { Type } from '../../common/type/types';
3
3
  /** Real inputs → finite_real, otherwise → finite_number. */
4
4
  export declare function numericTypeHandler(ops: ReadonlyArray<Expression>): Type;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * Re-export the unit registry from its canonical location in numerics/.
3
3
  *
4
4
  * The unit registry lives in numerics/ so that lower layers (like
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import { type UnitExpression } from './unit-data';
3
3
  /**
4
4
  * Convert a boxed expression representing a unit into a plain
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * EL-4: Convert known infinite integer sets to their equivalent Limits bounds.
4
4
  * Returns undefined if the set cannot be converted to a Limits form.
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { BigNumFactory, SmallInteger } from '../numerics/types';
3
3
  import { NumericValue, NumericValueData } from './types';
4
4
  import { ExactNumericValue } from './exact-numeric-value';
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import { type BigNumFactory, Rational, SmallInteger } from '../numerics/types';
3
3
  import { ExactNumericValueData, NumericValue, NumericValueFactory } from './types';
4
4
  import { MathJsonExpression } from '../../math-json/types';
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { BigNumFactory, SmallInteger } from '../numerics/types';
3
3
  import { NumericValue, NumericValueData } from './types';
4
4
  import type { MathJsonExpression } from '../../math-json/types';
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  *
3
3
  * ## THEORY OF OPERATIONS
4
4
  *
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function bigint(a: Decimal | number | bigint | string): bigint | null;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function bigintValue(expr: MathJsonExpression | null | undefined): bigint | null;
3
3
  /** Output a shorthand if possible */
4
4
  export declare function numberToExpression(num: number | bigint, fractionalDigits?: string | number): MathJsonExpression;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /** An interval is a continuous set of real numbers */
3
3
  export type Interval = {
4
4
  start: number;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  estimate: number;
3
3
  error: number;
4
4
  };
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function lcm(a: bigint, b: bigint): bigint;
3
3
  /** Return `[factor, root]` such that
4
4
  * pow(n, 1/exponent) = factor * pow(root, 1/exponent)
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function gcd(a: BigNum, b: BigNum): BigNum;
3
3
  export declare function lcm(a: BigNum, b: BigNum): BigNum;
4
4
  export declare function factorial2(ce: IBigNum, n: BigNum): Generator<BigNum, BigNum>;
@@ -1,3 +1,3 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function gamma(c: Complex): Complex;
3
3
  export declare function gammaln(c: Complex): Complex;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const MACHINE_PRECISION_BITS = 53;
3
3
  export declare const MACHINE_PRECISION: number;
4
4
  export declare const DEFAULT_TOLERANCE = 1e-10;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function primeFactors(n: number): {
3
3
  [factor: number]: number;
4
4
  };
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function isRational(x: unknown | null): x is Rational;
3
3
  export declare function isMachineRational(x: unknown | null): x is [SmallInteger, SmallInteger];
4
4
  export declare function isBigRational(x: unknown | null): x is [bigint, bigint];
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
 
3
3
  Translated from https://github.com/JuliaMath/Richardson.jl/blob/master/src/Richardson.jl
4
4
 
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { BigNum } from './types';
3
3
  export declare function gammaln(z: number): number;
4
4
  export declare function gamma(z: number): number;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function mean(values: Iterable<number>): number;
3
3
  export declare function bigMean(bignum: BigNumFactory, values: Iterable<BigNum>): BigNum;
4
4
  export declare function median(values: Iterable<number>): number;
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function numberToString(num: number | bigint, fractionalDigits?: number | string): string;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /** @internal */
3
3
  type IsInteger<N extends number> = `${N}` extends `${string}.${string}` ? never : `${N}` extends `-${string}.${string}` ? never : number;
4
4
  /** A `SmallInteger` is an integer < 1e6
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * Unit registry: dimension vectors, SI base units, prefixes, and conversion.
3
3
  *
4
4
  * A DimensionVector encodes the exponents for each of the 7 SI base
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * OEIS (Online Encyclopedia of Integer Sequences) Integration
3
3
  *
4
4
  * This module provides functions to look up sequences in the OEIS database
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * Utilities for declarative sequence definitions.
3
3
  *
4
4
  * This module provides functions to create subscriptEvaluate handlers
@@ -1,3 +1,3 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /** Calculate the antiderivative of fn, as an expression (not a function) */
3
3
  export declare function antiderivative(fn: Expression, index: string): Expression;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  *
4
4
  * @param fn The function to differentiate, a function literal.
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  *
4
4
  */
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * Cost functions for the Fu trigonometric simplification algorithm.
3
3
  *
4
4
  * The primary objective is to minimize the number of trigonometric functions,
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * Fu Algorithm Transformation Rules
3
3
  *
4
4
  * Programmatic implementations of TR1-TR22 from the Fu trigonometric
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * Fu Algorithm for Trigonometric Simplification
3
3
  *
4
4
  * Implementation of the algorithm by Fu, Zhong, and Zeng:
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function evaluateAnd(args: ReadonlyArray<Expression>, { engine: ce }: {
3
3
  engine: ComputeEngine;
4
4
  }): Expression | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function simplifyAbs(x: Expression): RuleStep | undefined;
3
3
  /**
4
4
  * Simplify expressions where Abs appears as the base of a power.
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * Division simplification rules consolidated from simplify-rules.ts.
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * Extracts base + integer offset from an expression.
4
4
  * - Symbol `n` → { base: n, offset: 0 }
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function simplifyHyperbolic(x: Expression): RuleStep | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * Infinity simplification rules consolidated from simplify-rules.ts.
4
4
  * Handles ~20 patterns for simplifying expressions involving infinity.
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * Logarithm simplification rules consolidated from simplify-rules.ts.
4
4
  * Handles ~30 patterns for simplifying Ln and Log expressions.
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function simplifyLogicFunction(x: Expression): {
3
3
  value: Expression;
4
4
  because: string;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * Power simplification rules consolidated from simplify-rules.ts.
4
4
  * Handles ~25 patterns for simplifying Power expressions.
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * Product simplification rules extracted from simplify-rules.ts.
4
4
  * Handles 13 patterns for simplifying Product expressions.
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * # Performance Optimization Notes for Simplification Rules
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /**
3
3
  * Sum simplification rules extracted from simplify-rules.ts.
4
4
  * Handles 16 patterns for simplifying Sum expressions.
@@ -1,2 +1,2 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare function simplifyTrig(x: Expression): RuleStep | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import { Expression, IComputeEngine as ComputeEngine, DataTypeMap, TensorDataType, TensorField } from '../global-types';
3
3
  /** @category Tensors */
4
4
  export declare function makeTensorField<DT extends keyof DataTypeMap>(ce: ComputeEngine, dtype: DT): TensorField<DataTypeMap[DT]>;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  /** @category Tensors */
3
3
  export declare abstract class AbstractTensor<DT extends keyof DataTypeMap> implements Tensor<DT> {
4
4
  private ce;
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { Type, TypeString } from '../common/type/types';
3
3
  import type { BoxedType } from '../common/type/boxed-type';
4
4
  import type { LatexString, LatexDictionaryEntry } from './latex-syntax/types';
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { OneOf } from '../common/one-of';
3
3
  import type { MathJsonSymbol, MathJsonNumberObject } from '../math-json';
4
4
  import type { Type, TypeString, TypeResolver } from '../common/type/types';
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { IComputeEngine as ComputeEngine } from './types-engine';
3
3
  import type { Expression, ExpressionInput } from './types-expression';
4
4
  import type { Assumption as KernelAssumption, AssumeResult, AssignValue as KernelAssignValue, BoxedRule as KernelBoxedRule, BoxedRuleSet as KernelBoxedRuleSet, EvaluateOptions as KernelEvaluateOptions, EvalContext as KernelEvalContext, ExpressionMapInterface as KernelExpressionMapInterface, Rule as KernelRule, RuleConditionFunction as KernelRuleConditionFunction, RuleFunction as KernelRuleFunction, RuleReplaceFunction as KernelRuleReplaceFunction, RuleStep as KernelRuleStep, RuleSteps as KernelRuleSteps, Scope as KernelScope } from './types-kernel-evaluation';
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { OneOf } from '../common/one-of';
3
3
  import type { MathJsonExpression, MathJsonNumberObject, MathJsonStringObject, MathJsonSymbolObject, MathJsonFunctionObject, MathJsonSymbol, MathJsonDictionaryObject } from '../math-json';
4
4
  import type { Type, TypeString } from '../common/type/types';
@@ -906,6 +906,56 @@ export interface Expression {
906
906
  * ```
907
907
  */
908
908
  factors(): ReadonlyArray<Expression>;
909
+ /**
910
+ * Return the coefficients of this expression as a polynomial in `variable`,
911
+ * in descending order of degree. Returns `undefined` if the expression is
912
+ * not a polynomial in the given variable.
913
+ *
914
+ * If `variable` is omitted, auto-detects when the expression has exactly
915
+ * one unknown. Returns `undefined` if there are zero or multiple unknowns.
916
+ *
917
+ * ```typescript
918
+ * ce.parse('x^2 + 2x + 1').polynomialCoefficients('x') // [1, 2, 1]
919
+ * ce.parse('x^3 + 2x + 1').polynomialCoefficients('x') // [1, 0, 2, 1]
920
+ * ce.parse('sin(x)').polynomialCoefficients('x') // undefined
921
+ * ce.parse('x^2 + 5').polynomialCoefficients() // [1, 0, 5]
922
+ * ```
923
+ *
924
+ * Subsumes `isPolynomial`:
925
+ * ```typescript
926
+ * const isPolynomial = expr.polynomialCoefficients('x') !== undefined;
927
+ * ```
928
+ *
929
+ * Subsumes `polynomialDegree`:
930
+ * ```typescript
931
+ * const degree = expr.polynomialCoefficients('x')?.length - 1;
932
+ * ```
933
+ *
934
+ * When `variable` is an array, the expression must be polynomial in ALL
935
+ * listed variables. Coefficients are decomposed by the first variable;
936
+ * remaining variables appear as symbolic coefficients.
937
+ *
938
+ * ```typescript
939
+ * ce.parse('x^2*y + 3x + y^2').polynomialCoefficients(['x', 'y'])
940
+ * // → [y, 3, y²] (coefficients of x², x¹, x⁰)
941
+ * ```
942
+ */
943
+ polynomialCoefficients(variable?: string | string[]): ReadonlyArray<Expression> | undefined;
944
+ /**
945
+ * Return the roots of this expression treated as a polynomial in `variable`.
946
+ * Returns `undefined` if the expression is not a polynomial in the given
947
+ * variable. Returns an empty array if no roots can be found.
948
+ *
949
+ * If `variable` is omitted, auto-detects when the expression has exactly
950
+ * one unknown.
951
+ *
952
+ * ```typescript
953
+ * ce.parse('x^2 - 5x + 6').polynomialRoots('x') // [2, 3]
954
+ * ce.parse('x^2 + 1').polynomialRoots('x') // [] (no real roots)
955
+ * ce.parse('sin(x)').polynomialRoots('x') // undefined
956
+ * ```
957
+ */
958
+ polynomialRoots(variable?: string): ReadonlyArray<Expression> | undefined;
909
959
  /**
910
960
  * The name of the operator of the expression.
911
961
  *
@@ -1078,6 +1128,15 @@ export interface Expression {
1078
1128
  * If this expression matches `pattern` but there are no named wildcards,
1079
1129
  * return the empty substitution, `{}`.
1080
1130
  *
1131
+ * `pattern` can be:
1132
+ * - A **string** (LaTeX): single-character symbols are auto-converted to
1133
+ * wildcards (e.g., `'ax^2+bx+c'` treats `a`, `b`, `c` as wildcards).
1134
+ * Results use unprefixed keys (`{a: 3}` not `{_a: 3}`) and self-matches
1135
+ * are filtered out. `useVariations` and `matchMissingTerms` default to
1136
+ * `true`. Unprefixed keys are accepted in `substitution`.
1137
+ * - A **MathJSON array** (e.g., `['Add', '_a', '_b']`): boxed automatically.
1138
+ * - A **BoxedExpression**: used directly.
1139
+ *
1081
1140
  * Read more about [**patterns and rules**](/compute-engine/guides/patterns-and-rules/).
1082
1141
  *
1083
1142
  * :::info[Note]
@@ -1085,7 +1144,7 @@ export interface Expression {
1085
1144
  * :::
1086
1145
  *
1087
1146
  */
1088
- match(pattern: Expression, options?: PatternMatchOptions<Expression>): BoxedSubstitution<Expression> | null;
1147
+ match(pattern: string | ExpressionInput, options?: PatternMatchOptions<Expression>): BoxedSubstitution<Expression> | null;
1089
1148
  /**
1090
1149
  *
1091
1150
  * The **shape** describes the **axes** of the expression, where each axis
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { TypeReference } from '../common/type/types';
3
3
  import type { BoxedType } from '../common/type/boxed-type';
4
4
  import type { LatexString } from './latex-syntax/types';
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export type Hold = 'none' | 'all' | 'first' | 'rest' | 'last' | 'most';
3
3
  /**
4
4
  * Options to control serialization to MathJSON when using
@@ -74,6 +74,17 @@ export type PatternMatchOptions<T = unknown> = {
74
74
  * If false, operand order must match exactly.
75
75
  */
76
76
  matchPermutations?: boolean;
77
+ /**
78
+ * If true, allow matching when the expression has fewer operands than the
79
+ * pattern by treating missing terms as identity elements (0 for `Add`,
80
+ * 1 for `Multiply`). A free wildcard in a missing product term is set to 0
81
+ * (since 0 × anything = 0).
82
+ *
83
+ * For example, `3x²+5` matches `_a·x²+_b·x+_c` with `_b = 0`.
84
+ *
85
+ * **Default**: `true` when the pattern is a string, `false` otherwise.
86
+ */
87
+ matchMissingTerms?: boolean;
77
88
  };
78
89
  /**
79
90
  * Options for `Expression.replace()`.
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  import type { BoxedSubstitution as KernelBoxedSubstitution, CanonicalForm, CanonicalOptions, FormOption, Hold, JsonSerializationOptions, Metadata, PatternMatchOptions as KernelPatternMatchOptions, ReplaceOptions, Substitution as KernelSubstitution } from './types-kernel-serialization';
3
3
  export type { Hold, JsonSerializationOptions, ReplaceOptions, CanonicalForm, CanonicalOptions, FormOption, Metadata, };
4
4
  /**
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export type { MathJsonExpression, MathJsonAttributes, MathJsonNumberObject, MathJsonSymbolObject, MathJsonStringObject, MathJsonFunctionObject, DictionaryValue, MathJsonDictionaryObject, ExpressionObject, MathJsonSymbol, } from '../math-json/types';
3
3
  export * from '../common/type/boxed-type';
4
4
  export * from '../common/type/types';
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export { ComputeEngine } from './compute-engine/index';
3
3
  export type * from './compute-engine/types';
4
4
  export type { CompileTarget, CompiledOperators, CompiledFunctions, CompilationOptions, CompilationResult, ExecutableTarget, ComplexResult, CompiledRunner, ExpressionRunner, LambdaRunner, LanguageTarget, TargetSource, CompiledFunction, } from './compute-engine/compilation/types';
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * Return true if the string is a valid symbol.
3
3
  *
4
4
  * Check for symbols matching a profile of [Unicode UAX31](https://unicode.org/reports/tr31/)
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  * The following properties can be added to any MathJSON expression
3
3
  * to provide additional information about the expression.
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export declare const MISSING: MathJsonExpression;
3
3
  export declare function isNumberExpression(expr: MathJsonExpression | null): expr is number | string | MathJsonNumberObject;
4
4
  export declare function isNumberObject(expr: MathJsonExpression | null): expr is MathJsonNumberObject;
@@ -1,3 +1,3 @@
1
- /* 0.53.1 */
1
+ /* 0.54.0 */
2
2
  export { isSymbolObject, isStringObject, isFunctionObject, stringValue, operator, operand, symbol, mapArgs, dictionaryFromExpression, } from './math-json/utils';
3
- export declare const version = "0.53.1";
3
+ export declare const version = "0.54.0";
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.53.1",
2
+ "version": "0.54.0",
3
3
  "scripts": {
4
4
  "doc": "bash ./scripts/doc.sh",
5
5
  "build": "bash ./scripts/build.sh",