@cortex-js/compute-engine 0.26.3 → 0.27.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 (142) hide show
  1. package/dist/compute-engine.esm.js +8292 -7913
  2. package/dist/compute-engine.js +8292 -7913
  3. package/dist/compute-engine.min.esm.js +45 -41
  4. package/dist/compute-engine.min.js +45 -41
  5. package/dist/math-json.esm.js +2 -2
  6. package/dist/math-json.js +2 -2
  7. package/dist/math-json.min.esm.js +2 -2
  8. package/dist/math-json.min.js +2 -2
  9. package/dist/types/common/ansi-codes.d.ts +1 -1
  10. package/dist/types/common/buffer.d.ts +1 -1
  11. package/dist/types/common/grapheme-splitter.d.ts +1 -1
  12. package/dist/types/common/interruptible.d.ts +20 -0
  13. package/dist/types/common/one-of.d.ts +1 -1
  14. package/dist/types/common/signals.d.ts +1 -1
  15. package/dist/types/common/styled-text.d.ts +1 -1
  16. package/dist/types/common/suggest.d.ts +1 -1
  17. package/dist/types/common/syntax-highlighter.d.ts +1 -1
  18. package/dist/types/common/terminal.d.ts +1 -1
  19. package/dist/types/common/type/parse.d.ts +1 -1
  20. package/dist/types/common/type/primitive.d.ts +1 -1
  21. package/dist/types/common/type/serialize.d.ts +1 -1
  22. package/dist/types/common/type/subtype.d.ts +1 -1
  23. package/dist/types/common/type/types.d.ts +1 -1
  24. package/dist/types/common/type/utils.d.ts +1 -1
  25. package/dist/types/common/utils.d.ts +1 -1
  26. package/dist/types/compute-engine/assume.d.ts +1 -1
  27. package/dist/types/compute-engine/boxed-expression/abstract-boxed-expression.d.ts +9 -4
  28. package/dist/types/compute-engine/boxed-expression/apply.d.ts +1 -1
  29. package/dist/types/compute-engine/boxed-expression/arithmetic-add.d.ts +1 -1
  30. package/dist/types/compute-engine/boxed-expression/arithmetic-divide.d.ts +1 -1
  31. package/dist/types/compute-engine/boxed-expression/arithmetic-multiply.d.ts +1 -1
  32. package/dist/types/compute-engine/boxed-expression/arithmetic-power.d.ts +1 -1
  33. package/dist/types/compute-engine/boxed-expression/ascii-math.d.ts +1 -1
  34. package/dist/types/compute-engine/boxed-expression/box.d.ts +1 -1
  35. package/dist/types/compute-engine/boxed-expression/boxed-function-definition.d.ts +5 -5
  36. package/dist/types/compute-engine/boxed-expression/boxed-function.d.ts +2 -2
  37. package/dist/types/compute-engine/boxed-expression/boxed-number.d.ts +2 -2
  38. package/dist/types/compute-engine/boxed-expression/boxed-patterns.d.ts +1 -1
  39. package/dist/types/compute-engine/boxed-expression/boxed-string.d.ts +1 -1
  40. package/dist/types/compute-engine/boxed-expression/boxed-symbol-definition.d.ts +1 -1
  41. package/dist/types/compute-engine/boxed-expression/boxed-symbol.d.ts +2 -2
  42. package/dist/types/compute-engine/boxed-expression/boxed-tensor.d.ts +2 -2
  43. package/dist/types/compute-engine/boxed-expression/cache.d.ts +1 -1
  44. package/dist/types/compute-engine/boxed-expression/canonical.d.ts +1 -1
  45. package/dist/types/compute-engine/boxed-expression/compare.d.ts +3 -3
  46. package/dist/types/compute-engine/boxed-expression/expand.d.ts +1 -1
  47. package/dist/types/compute-engine/boxed-expression/expression-map.d.ts +1 -1
  48. package/dist/types/compute-engine/boxed-expression/factor.d.ts +1 -1
  49. package/dist/types/compute-engine/boxed-expression/flatten.d.ts +1 -1
  50. package/dist/types/compute-engine/boxed-expression/hold.d.ts +1 -1
  51. package/dist/types/compute-engine/boxed-expression/match.d.ts +1 -1
  52. package/dist/types/compute-engine/boxed-expression/negate.d.ts +1 -1
  53. package/dist/types/compute-engine/boxed-expression/numerics.d.ts +1 -1
  54. package/dist/types/compute-engine/boxed-expression/order.d.ts +1 -1
  55. package/dist/types/compute-engine/boxed-expression/polynomials.d.ts +1 -1
  56. package/dist/types/compute-engine/boxed-expression/product.d.ts +1 -1
  57. package/dist/types/compute-engine/boxed-expression/public.d.ts +48 -13
  58. package/dist/types/compute-engine/boxed-expression/rules.d.ts +1 -1
  59. package/dist/types/compute-engine/boxed-expression/serialize.d.ts +1 -1
  60. package/dist/types/compute-engine/boxed-expression/sgn.d.ts +1 -1
  61. package/dist/types/compute-engine/boxed-expression/simplify.d.ts +1 -1
  62. package/dist/types/compute-engine/boxed-expression/solve.d.ts +1 -1
  63. package/dist/types/compute-engine/boxed-expression/tensor-fields.d.ts +1 -1
  64. package/dist/types/compute-engine/boxed-expression/terms.d.ts +1 -1
  65. package/dist/types/compute-engine/boxed-expression/trigonometry.d.ts +7 -1
  66. package/dist/types/compute-engine/boxed-expression/utils.d.ts +1 -1
  67. package/dist/types/compute-engine/boxed-expression/validate.d.ts +2 -2
  68. package/dist/types/compute-engine/collection-utils.d.ts +3 -1
  69. package/dist/types/compute-engine/compile.d.ts +9 -8
  70. package/dist/types/compute-engine/compute-engine.d.ts +5 -5
  71. package/dist/types/compute-engine/cost-function.d.ts +1 -1
  72. package/dist/types/compute-engine/debug.d.ts +3 -0
  73. package/dist/types/compute-engine/function-utils.d.ts +1 -1
  74. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-algebra.d.ts +1 -1
  75. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-arithmetic.d.ts +1 -1
  76. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-calculus.d.ts +1 -1
  77. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-complex.d.ts +1 -1
  78. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-core.d.ts +1 -1
  79. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-linear-algebra.d.ts +1 -1
  80. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-logic.d.ts +1 -1
  81. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-other.d.ts +1 -1
  82. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-relational-operators.d.ts +1 -1
  83. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-sets.d.ts +1 -1
  84. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-statistics.d.ts +1 -1
  85. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-symbols.d.ts +1 -1
  86. package/dist/types/compute-engine/latex-syntax/dictionary/definitions-trigonometry.d.ts +1 -1
  87. package/dist/types/compute-engine/latex-syntax/dictionary/definitions.d.ts +1 -1
  88. package/dist/types/compute-engine/latex-syntax/parse-identifier.d.ts +1 -1
  89. package/dist/types/compute-engine/latex-syntax/parse.d.ts +1 -1
  90. package/dist/types/compute-engine/latex-syntax/public.d.ts +1 -1
  91. package/dist/types/compute-engine/latex-syntax/serialize-number.d.ts +1 -1
  92. package/dist/types/compute-engine/latex-syntax/serializer-style.d.ts +2 -1
  93. package/dist/types/compute-engine/latex-syntax/serializer.d.ts +3 -3
  94. package/dist/types/compute-engine/latex-syntax/tokenizer.d.ts +2 -2
  95. package/dist/types/compute-engine/library/arithmetic.d.ts +1 -1
  96. package/dist/types/compute-engine/library/calculus.d.ts +1 -1
  97. package/dist/types/compute-engine/library/collections.d.ts +1 -1
  98. package/dist/types/compute-engine/library/complex.d.ts +1 -1
  99. package/dist/types/compute-engine/library/control-structures.d.ts +1 -1
  100. package/dist/types/compute-engine/library/core.d.ts +1 -1
  101. package/dist/types/compute-engine/library/invisible-operator.d.ts +1 -1
  102. package/dist/types/compute-engine/library/library.d.ts +1 -1
  103. package/dist/types/compute-engine/library/linear-algebra.d.ts +1 -1
  104. package/dist/types/compute-engine/library/logic.d.ts +1 -1
  105. package/dist/types/compute-engine/library/polynomials.d.ts +1 -1
  106. package/dist/types/compute-engine/library/random-expression.d.ts +1 -1
  107. package/dist/types/compute-engine/library/relational-operator.d.ts +1 -1
  108. package/dist/types/compute-engine/library/sets.d.ts +1 -1
  109. package/dist/types/compute-engine/library/statistics.d.ts +1 -1
  110. package/dist/types/compute-engine/library/trigonometry.d.ts +1 -1
  111. package/dist/types/compute-engine/library/utils.d.ts +1 -1
  112. package/dist/types/compute-engine/numeric-value/big-numeric-value.d.ts +1 -1
  113. package/dist/types/compute-engine/numeric-value/exact-numeric-value.d.ts +1 -1
  114. package/dist/types/compute-engine/numeric-value/machine-numeric-value.d.ts +1 -1
  115. package/dist/types/compute-engine/numeric-value/public.d.ts +1 -1
  116. package/dist/types/compute-engine/numerics/bigint.d.ts +1 -1
  117. package/dist/types/compute-engine/numerics/bignum.d.ts +1 -1
  118. package/dist/types/compute-engine/numerics/expression.d.ts +1 -1
  119. package/dist/types/compute-engine/numerics/interval.d.ts +1 -1
  120. package/dist/types/compute-engine/numerics/monte-carlo.d.ts +1 -1
  121. package/dist/types/compute-engine/numerics/numeric-bigint.d.ts +9 -1
  122. package/dist/types/compute-engine/numerics/numeric-bignum.d.ts +1 -2
  123. package/dist/types/compute-engine/numerics/numeric-complex.d.ts +1 -1
  124. package/dist/types/compute-engine/numerics/numeric.d.ts +2 -3
  125. package/dist/types/compute-engine/numerics/primes.d.ts +1 -1
  126. package/dist/types/compute-engine/numerics/rationals.d.ts +1 -1
  127. package/dist/types/compute-engine/numerics/richardson.d.ts +1 -1
  128. package/dist/types/compute-engine/numerics/special-functions.d.ts +1 -1
  129. package/dist/types/compute-engine/numerics/statistics.d.ts +24 -0
  130. package/dist/types/compute-engine/numerics/strings.d.ts +1 -1
  131. package/dist/types/compute-engine/private.d.ts +29 -0
  132. package/dist/types/compute-engine/public.d.ts +1 -1
  133. package/dist/types/compute-engine/symbolic/derivative.d.ts +1 -1
  134. package/dist/types/compute-engine/symbolic/distribute.d.ts +1 -1
  135. package/dist/types/compute-engine/symbolic/simplify-rules.d.ts +1 -1
  136. package/dist/types/compute-engine/tensor/tensors.d.ts +2 -2
  137. package/dist/types/compute-engine.d.ts +2 -2
  138. package/dist/types/math-json/identifiers.d.ts +1 -1
  139. package/dist/types/math-json/types.d.ts +1 -1
  140. package/dist/types/math-json/utils.d.ts +1 -1
  141. package/dist/types/math-json.d.ts +2 -2
  142. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- /** Compute Engine 0.26.3 */
1
+ /** Compute Engine 0.27.0 */
2
2
 
3
3
  // src/math-json/utils.ts
4
4
  function isSymbolObject(expr) {
@@ -93,7 +93,7 @@ function mapArgs(expr, fn) {
93
93
  }
94
94
 
95
95
  // src/math-json.ts
96
- var version = "0.26.3";
96
+ var version = "0.27.0";
97
97
  export {
98
98
  dictionary as getDictionary,
99
99
  stringValue as getStringValue,
package/dist/math-json.js CHANGED
@@ -1,4 +1,4 @@
1
- /** MathJSON 0.26.3 */
1
+ /** MathJSON 0.27.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.MathJson = {}));})(this, (function (exports) { 'use strict';
3
3
  var MathJson = (() => {
4
4
  var __defProp = Object.defineProperty;
@@ -127,7 +127,7 @@ var MathJson = (() => {
127
127
  }
128
128
 
129
129
  // src/math-json.ts
130
- var version = "0.26.3";
130
+ var version = "0.27.0";
131
131
  return __toCommonJS(math_json_exports);
132
132
  })();
133
133
  Object.assign(exports, MathJson); Object.defineProperty(exports, '__esModule', { value: true });}));
@@ -1,4 +1,4 @@
1
- /** Compute Engine 0.26.3 */
1
+ /** Compute Engine 0.27.0 */
2
2
 
3
3
  // src/math-json/utils.ts
4
4
  function isSymbolObject(expr) {
@@ -93,7 +93,7 @@ function mapArgs(expr, fn) {
93
93
  }
94
94
 
95
95
  // src/math-json.ts
96
- var version = "0.26.3";
96
+ var version = "0.27.0";
97
97
  export {
98
98
  dictionary as getDictionary,
99
99
  stringValue as getStringValue,
@@ -1,4 +1,4 @@
1
- /** MathJSON 0.26.3 */
1
+ /** MathJSON 0.27.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.MathJson = {}));})(this, (function (exports) { 'use strict';
3
- var MathJson=(()=>{var f=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var N=Object.prototype.hasOwnProperty;var A=(n,t)=>{for(var e in t)f(n,e,{get:t[e],enumerable:!0})},p=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of S(t))!N.call(n,i)&&i!==e&&f(n,i,{get:()=>t[i],enumerable:!(r=M(t,i))||r.enumerable});return n};var J=n=>p(f({},"__esModule",{value:!0}),n);var O={};A(O,{getDictionary:()=>g,getStringValue:()=>c,isFunctionObject:()=>u,isStringObject:()=>y,isSymbolObject:()=>a,mapArgs:()=>h,operand:()=>E,operator:()=>o,symbol:()=>b,version:()=>I});function a(n){return n!==null&&typeof n=="object"&&"sym"in n}function y(n){return n!==null&&typeof n=="object"&&"str"in n}function u(n){return n!==null&&typeof n=="object"&&"fn"in n}function c(n){return n==null?null:typeof n=="object"&&"str"in n?n.str:typeof n!="string"||n.length<2||n.at(0)!=="'"||n.at(-1)!=="'"?null:n.substring(1,n.length-1)}function o(n){return Array.isArray(n)?n[0]:n==null?"":u(n)?n.fn[0]:""}function m(n){return Array.isArray(n)?n.slice(1):n!==void 0&&u(n)?n.fn.slice(1):[]}function E(n,t){return Array.isArray(n)?n[t]??null:n===null||!u(n)?null:n.fn[t]??null}function j(n){return n==null?0:Array.isArray(n)?Math.max(0,n.length-1):u(n)?Math.max(0,n.fn.length-1):0}function b(n){if(typeof n=="string")return/^[+-]?[0-9\.]/.test(n)||n.length>=2&&n[0]==="'"&&n[n.length-1]==="'"?null:n;if(n==null)return null;let t=a(n)?n.sym:n;return typeof t!="string"?null:t}function d(n){let t=o(n);if(t==="KeyValuePair"||t==="Tuple"||t==="Pair"){let[e,r]=m(n),i=c(e);return i?[i,r??"Nothing"]:null}return null}function g(n){if(n===null)return null;let t=d(n);if(t)return{[t[0]]:t[1]};if(o(n)==="Dictionary"){let r={},i=m(n);for(let l=1;l<j(n);l++){let s=d(i[l]);s&&(r[s[0]]=s[1])}return r}return null}function h(n,t){let e=null;if(Array.isArray(n)&&(e=n),u(n)&&(e=n.fn),e===null)return[];let r=1,i=[];for(;r<e.length;)i.push(t(e[r])),r+=1;return i}var I="0.26.3";return J(O);})();
3
+ var MathJson=(()=>{var f=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var N=Object.prototype.hasOwnProperty;var A=(n,t)=>{for(var e in t)f(n,e,{get:t[e],enumerable:!0})},p=(n,t,e,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of S(t))!N.call(n,i)&&i!==e&&f(n,i,{get:()=>t[i],enumerable:!(r=M(t,i))||r.enumerable});return n};var J=n=>p(f({},"__esModule",{value:!0}),n);var O={};A(O,{getDictionary:()=>g,getStringValue:()=>c,isFunctionObject:()=>u,isStringObject:()=>y,isSymbolObject:()=>a,mapArgs:()=>h,operand:()=>E,operator:()=>o,symbol:()=>b,version:()=>I});function a(n){return n!==null&&typeof n=="object"&&"sym"in n}function y(n){return n!==null&&typeof n=="object"&&"str"in n}function u(n){return n!==null&&typeof n=="object"&&"fn"in n}function c(n){return n==null?null:typeof n=="object"&&"str"in n?n.str:typeof n!="string"||n.length<2||n.at(0)!=="'"||n.at(-1)!=="'"?null:n.substring(1,n.length-1)}function o(n){return Array.isArray(n)?n[0]:n==null?"":u(n)?n.fn[0]:""}function m(n){return Array.isArray(n)?n.slice(1):n!==void 0&&u(n)?n.fn.slice(1):[]}function E(n,t){return Array.isArray(n)?n[t]??null:n===null||!u(n)?null:n.fn[t]??null}function j(n){return n==null?0:Array.isArray(n)?Math.max(0,n.length-1):u(n)?Math.max(0,n.fn.length-1):0}function b(n){if(typeof n=="string")return/^[+-]?[0-9\.]/.test(n)||n.length>=2&&n[0]==="'"&&n[n.length-1]==="'"?null:n;if(n==null)return null;let t=a(n)?n.sym:n;return typeof t!="string"?null:t}function d(n){let t=o(n);if(t==="KeyValuePair"||t==="Tuple"||t==="Pair"){let[e,r]=m(n),i=c(e);return i?[i,r??"Nothing"]:null}return null}function g(n){if(n===null)return null;let t=d(n);if(t)return{[t[0]]:t[1]};if(o(n)==="Dictionary"){let r={},i=m(n);for(let l=1;l<j(n);l++){let s=d(i[l]);s&&(r[s[0]]=s[1])}return r}return null}function h(n,t){let e=null;if(Array.isArray(n)&&(e=n),u(n)&&(e=n.fn),e===null)return[];let r=1,i=[];for(;r<e.length;)i.push(t(e[r])),r+=1;return i}var I="0.27.0";return J(O);})();
4
4
  Object.assign(exports, MathJson); Object.defineProperty(exports, '__esModule', { value: true });}));
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.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.26.3 */
1
+ /* 0.27.0 */
2
2
  s: string;
3
3
  pos: number;
4
4
  constructor(s: string, pos?: number);
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  /**
3
3
  * Return a string or an array of graphemes.
4
4
  *
@@ -0,0 +1,20 @@
1
+ /* 0.27.0 */
2
+ cause: unknown;
3
+ value: T;
4
+ constructor({ message, value, cause, }?: {
5
+ message?: string;
6
+ value?: T;
7
+ cause?: unknown;
8
+ });
9
+ }
10
+ /**
11
+ * Executes a generator asynchronously with timeout and abort signal support.
12
+ *
13
+ * @param gen - The generator to execute.
14
+ * @param timeLimitMs - The maximum time (in milliseconds) allowed for execution.
15
+ * @param signal - An AbortSignal to cancel execution prematurely.
16
+ * @returns The final value produced by the generator.
17
+ * @throws CancellationError if the operation is canceled or times out.
18
+ */
19
+ export declare function runAsync<T>(gen: Generator<T>, timeLimitMs: number, signal: AbortSignal): Promise<T>;
20
+ export declare function run<T>(gen: Generator<T>, timeLimitMs: number): T;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  infer Head,
3
3
  ...infer Rem
4
4
  ] ? MergeTypes<Rem, Res & Head> : Res;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  /** @category Error Handling */
3
3
  export type RuntimeSignalCode = 'timeout' | 'out-of-memory' | 'recursion-depth-exceeded' | 'iteration-limit-exceeded';
4
4
  /** @category Error Handling */
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  fg?: string;
3
3
  bg?: string;
4
4
  weight?: 'bold' | 'normal' | 'thin';
@@ -1 +1 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { StyledBlock, StyledSpan } from './styled-text';
3
3
  export type CodeTag =
4
4
  /** Plain text in default foreground/background color */
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  declare abstract class Terminal {
3
3
  width: number | undefined;
4
4
  indent: number;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  export declare function parseType(s: undefined): undefined;
3
3
  export declare function parseType(s: string | Type): Type;
4
4
  export declare function parseType(s: string | Type | undefined): Type | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  export declare const NUMERIC_TYPES: PrimitiveType[];
3
3
  export declare const COLLECTION_TYPES: PrimitiveType[];
4
4
  export declare const SCALAR_TYPES: PrimitiveType[];
@@ -1,2 +1,2 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  export declare function typeToString(type: Type, precedence?: number): string;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.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.26.3 */
1
+ /* 0.27.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.26.3 */
1
+ /* 0.27.0 */
2
2
  /** Convert two or more types into a more specific type that is a subtype of
3
3
  * all the input types. The resulting type is usually more constrained and
4
4
  * only encompasses values that belong to both input types.
@@ -1,2 +1,2 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  export declare function hidePrivateProperties(obj: any): void;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  /**
3
3
  * Add an assumption, in the form of a predicate, for example:
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { Expression, MathJsonIdentifier } from '../../math-json/types';
3
3
  import type { BoxedBaseDefinition, BoxedExpression, BoxedFunctionDefinition, BoxedRuleSet, BoxedSubstitution, BoxedSymbolDefinition, CanonicalOptions, EvaluateOptions, IComputeEngine, JsonSerializationOptions, Metadata, PatternMatchOptions, Rule, RuntimeScope, Sign, SimplifyOptions, Substitution } from './public';
4
4
  import type { LatexString } from '../public';
@@ -145,9 +145,14 @@ export declare abstract class _BoxedExpression implements BoxedExpression {
145
145
  expand(): BoxedExpression;
146
146
  evaluate(_options?: Partial<EvaluateOptions>): BoxedExpression;
147
147
  N(): BoxedExpression;
148
- compile(to?: string, options?: {
149
- optimize: ('simplify' | 'evaluate')[];
150
- }): ((args: Record<string, any>) => any | undefined) | undefined;
148
+ compile(options?: {
149
+ to?: 'javascript';
150
+ optimize?: ('simplify' | 'evaluate')[];
151
+ functions?: Record<MathJsonIdentifier, string | ((...any: any[]) => any)>;
152
+ vars?: Record<MathJsonIdentifier, string>;
153
+ imports?: Function[];
154
+ preamble?: string;
155
+ }): (args: Record<string, any>) => any | undefined;
151
156
  get isCollection(): boolean;
152
157
  contains(_rhs: BoxedExpression): boolean;
153
158
  subsetOf(_target: BoxedExpression, _strict: boolean): boolean;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { Decimal } from 'decimal.js';
3
3
  import type { BoxedExpression } from '../public';
4
4
  export declare function apply(expr: BoxedExpression, fn: (x: number) => number | Complex, bigFn?: (x: Decimal) => Decimal | Complex | number, complexFn?: (x: Complex) => number | Complex): BoxedExpression | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { Type } from '../../common/type/types';
3
3
  /**
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  /**
3
3
  * Canonical form of 'Divide' (and 'Rational')
4
4
  * - remove denominator of 1
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  /**
3
3
  * The canonical form of `Multiply`:
4
4
  * - removes `1` anb `-1`
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import type { Rational } from '../numerics/rationals';
3
3
  export declare function asRadical(expr: BoxedExpression): Rational | null;
4
4
  export declare function canonicalPower(a: BoxedExpression, b: BoxedExpression): BoxedExpression;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  export type AsciiMathSerializer = (expr: BoxedExpression, precedence?: number) => string;
3
3
  export type AsciiMathOptions = {
4
4
  symbols: Record<string, string>;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { Decimal } from 'decimal.js';
3
3
  import { IComputeEngine, SemiBoxedExpression, BoxedExpression, Metadata, CanonicalOptions } from './public';
4
4
  import { MathJsonIdentifier } from '../../math-json/types';
@@ -1,6 +1,6 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import type { BoxedExpression, CollectionHandlers, CompiledExpression, EvaluateOptions, Sign } from './public';
3
- import { Type } from '../../common/type/types';
3
+ import { Type, TypeString } from '../../common/type/types';
4
4
  import { OneOf } from '../../common/one-of';
5
5
  export declare class _BoxedFunctionDefinition implements BoxedFunctionDefinition {
6
6
  engine: IComputeEngine;
@@ -16,12 +16,12 @@ export declare class _BoxedFunctionDefinition implements BoxedFunctionDefinition
16
16
  involution: boolean;
17
17
  pure: boolean;
18
18
  complexity: number;
19
- hold: boolean;
19
+ lazy: boolean;
20
20
  signature: Type;
21
21
  inferredSignature: boolean;
22
22
  type?: (ops: ReadonlyArray<BoxedExpression>, options: {
23
23
  engine: IComputeEngine;
24
- }) => Type | undefined;
24
+ }) => Type | TypeString | undefined;
25
25
  sgn?: (ops: ReadonlyArray<BoxedExpression>, options: {
26
26
  engine: IComputeEngine;
27
27
  }) => Sign | undefined;
@@ -33,7 +33,7 @@ export declare class _BoxedFunctionDefinition implements BoxedFunctionDefinition
33
33
  canonical?: (ops: ReadonlyArray<BoxedExpression>, options: {
34
34
  engine: IComputeEngine;
35
35
  }) => BoxedExpression | null;
36
- evaluate?: (ops: ReadonlyArray<BoxedExpression>, options: EvaluateOptions & {
36
+ evaluate?: (ops: ReadonlyArray<BoxedExpression>, options: Partial<EvaluateOptions> & {
37
37
  engine: IComputeEngine;
38
38
  }) => BoxedExpression | undefined;
39
39
  evalDimension?: (ops: ReadonlyArray<BoxedExpression>, options: {
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import type { BoxedFunctionDefinition, IComputeEngine, BoxedRuleSet, SimplifyOptions, Substitution, ReplaceOptions, Metadata, PatternMatchOptions, RuntimeScope, BoxedSubstitution, EvaluateOptions, BoxedBaseDefinition, Rule, CanonicalOptions } from '../public';
3
3
  import type { BoxedExpression, Sign } from './public';
4
4
  import { NumericValue } from '../numeric-value/public';
@@ -100,7 +100,7 @@ export declare class BoxedFunction extends _BoxedExpression {
100
100
  /** The type of the value of the function */
101
101
  get type(): Type;
102
102
  simplify(options?: Partial<SimplifyOptions>): BoxedExpression;
103
- evaluate(options?: EvaluateOptions): BoxedExpression;
103
+ evaluate(options?: Partial<EvaluateOptions>): BoxedExpression;
104
104
  N(): BoxedExpression;
105
105
  solve(vars: Iterable<string> | string | BoxedExpression | Iterable<BoxedExpression>): null | ReadonlyArray<BoxedExpression>;
106
106
  get isCollection(): boolean;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { Decimal } from 'decimal.js';
3
3
  import type { BoxedExpression, IComputeEngine, Metadata, PatternMatchOptions, BoxedSubstitution, EvaluateOptions, BoxedRuleSet, ReplaceOptions, Rule, Substitution, CanonicalOptions, SimplifyOptions, Sign } from '../public';
4
4
  import type { Expression, MathJsonNumber } from '../../math-json';
@@ -87,7 +87,7 @@ export declare class BoxedNumber extends _BoxedExpression {
87
87
  get structural(): BoxedExpression;
88
88
  toNumericValue(): [NumericValue, BoxedExpression];
89
89
  simplify(options?: Partial<SimplifyOptions>): BoxedExpression;
90
- evaluate(options?: EvaluateOptions): BoxedExpression;
90
+ evaluate(options?: Partial<EvaluateOptions>): BoxedExpression;
91
91
  N(): BoxedExpression;
92
92
  }
93
93
  export declare function canonicalNumber(ce: IComputeEngine, value: number | bigint | string | Decimal | Complex | Rational | NumericValue | MathJsonNumber): number | NumericValue;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import type { BoxedExpression } from './public';
3
3
  export declare function isWildcard(expr: BoxedExpression): expr is BoxedSymbol;
4
4
  export declare function wildcardName(expr: BoxedExpression): string | null;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { _BoxedExpression } from './abstract-boxed-expression';
3
3
  import { Type } from '../../common/type/types';
4
4
  /**
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { Type } from '../../common/type/types';
3
3
  /**
4
4
  * ### THEORY OF OPERATIONS
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import type { Expression } from '../../math-json/types';
3
3
  import type { Type, TypeString } from '../../common/type/types';
4
4
  import type { BoxedExpression, BoxedRuleSet, BoxedSymbolDefinition, IComputeEngine, EvaluateOptions, ReplaceOptions, SimplifyOptions, Substitution, Metadata, PatternMatchOptions, RuntimeScope, BoxedFunctionDefinition, BoxedBaseDefinition, BoxedSubstitution, Rule, CanonicalOptions, BoxedRule, Sign } from './public';
@@ -113,7 +113,7 @@ export declare class BoxedSymbol extends _BoxedExpression {
113
113
  get bignumRe(): BigNum | undefined;
114
114
  get bignumIm(): BigNum | undefined;
115
115
  simplify(options?: Partial<SimplifyOptions>): BoxedExpression;
116
- evaluate(options?: EvaluateOptions): BoxedExpression;
116
+ evaluate(options?: Partial<EvaluateOptions>): BoxedExpression;
117
117
  N(): BoxedExpression;
118
118
  replace(rules: Rule | (Rule | BoxedRule)[] | BoxedRuleSet, options?: Partial<ReplaceOptions>): BoxedExpression | null;
119
119
  subs(sub: Substitution, options?: {
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import type { BoxedExpression, IComputeEngine, EvaluateOptions, SimplifyOptions, Metadata, BoxedSubstitution, PatternMatchOptions, BoxedBaseDefinition, BoxedFunctionDefinition } from '../public';
3
3
  import { TensorDataType } from './tensor-fields';
4
4
  import { NumericValue } from '../numeric-value/public';
@@ -77,7 +77,7 @@ export declare class BoxedTensor extends _BoxedExpression {
77
77
  at(_index: number): BoxedExpression | undefined;
78
78
  indexOf(_expr: BoxedExpression): number;
79
79
  match(pattern: BoxedExpression, options?: PatternMatchOptions): BoxedSubstitution | null;
80
- evaluate(options?: EvaluateOptions): BoxedExpression;
80
+ evaluate(options?: Partial<EvaluateOptions>): BoxedExpression;
81
81
  simplify(options?: Partial<SimplifyOptions>): BoxedExpression;
82
82
  N(): BoxedExpression;
83
83
  }
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  value: T | null;
3
3
  generation: number | undefined;
4
4
  };
@@ -1,2 +1,2 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  export declare function canonicalForm(expr: BoxedExpression, forms: CanonicalOptions): BoxedExpression;
@@ -1,13 +1,13 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  /**
3
3
  * Structural equality of boxed expressions.
4
4
  */
5
5
  export declare function same(a: BoxedExpression, b: BoxedExpression): boolean;
6
6
  /**
7
- * Mathematically equality of two boxed expressions.
7
+ * Mathematical equality of two boxed expressions.
8
8
  *
9
9
  * In general, it is impossible to always prove equality
10
10
  * ([Richardson's theorem](https://en.wikipedia.org/wiki/Richardson%27s_theorem)) but this works often...
11
11
  */
12
- export declare function eq(a: BoxedExpression, b: number | BoxedExpression): boolean | undefined;
12
+ export declare function eq(a: BoxedExpression, inputB: number | BoxedExpression): boolean | undefined;
13
13
  export declare function cmp(a: BoxedExpression, b: number | BoxedExpression): '<' | '=' | '>' | '>=' | '<=' | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  export declare function expandProducts(ce: IComputeEngine, ops: ReadonlyArray<BoxedExpression>): BoxedExpression | null;
3
3
  export declare function choose(n: number, k: number): number;
4
4
  /** Attempt to transform the expression (h, ops) into a sum */
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  export declare class ExpressionMap<U> implements ExpressionMapInterface<U> {
3
3
  readonly _items: Map<BoxedExpression, U>;
4
4
  constructor(source?: ExpressionMapInterface<U> | readonly (readonly [BoxedExpression, U])[]);
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { NumericValue } from '../numeric-value/public';
3
3
  /** Combine rational expressions into a single fraction */
4
4
  export declare function together(op: BoxedExpression): BoxedExpression;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  /**
3
3
  *
4
4
  * Make all the arguments canonical.
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  /** Apply the function `f` to each operand of the expression `expr`,
3
3
  * account for the 'hold' property of the function definition:
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.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.26.3 */
1
+ /* 0.27.0 */
2
2
  export declare function canonicalNegate(expr: BoxedExpression): BoxedExpression;
3
3
  /**
4
4
  * Distribute `Negate` (multiply by -1) if expr is a number literal, an
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import type { Rational } from '../numerics/rationals';
3
3
  import type { BoxedExpression } from './public';
4
4
  export declare function asRational(expr: BoxedExpression): Rational | undefined;
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  export type Order = 'lex' | 'dexlex' | 'grevlex' | 'elim';
3
3
  export declare const DEFAULT_COMPLEXITY = 100000;
4
4
  /**
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  /**
3
3
  * Coefficient of a univariate (single variable) polynomial.
4
4
  *
@@ -1,4 +1,4 @@
1
- /* 0.26.3 */
1
+ /* 0.27.0 */
2
2
  import { Rational } from '../numerics/rationals';
3
3
  import { NumericValue } from '../numeric-value/public';
4
4
  /**