@cortex-js/compute-engine 0.56.0 → 0.58.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/compile.esm.js +1137 -92
- package/dist/compile.min.esm.js +261 -61
- package/dist/compile.min.umd.cjs +262 -62
- package/dist/compile.umd.cjs +1137 -92
- package/dist/compute-engine.esm.js +1751 -176
- package/dist/compute-engine.min.esm.js +273 -73
- package/dist/compute-engine.min.umd.cjs +272 -72
- package/dist/compute-engine.umd.cjs +1751 -176
- package/dist/core.esm.js +1750 -175
- package/dist/core.min.esm.js +271 -71
- package/dist/core.min.umd.cjs +271 -71
- package/dist/core.umd.cjs +1750 -175
- package/dist/interval.esm.js +357 -28
- package/dist/interval.min.esm.js +6 -6
- package/dist/interval.min.umd.cjs +6 -6
- package/dist/interval.umd.cjs +357 -28
- package/dist/latex-syntax.esm.js +398 -28
- package/dist/latex-syntax.min.esm.js +6 -6
- package/dist/latex-syntax.min.umd.cjs +6 -6
- package/dist/latex-syntax.umd.cjs +398 -28
- package/dist/math-json.esm.js +2 -2
- package/dist/math-json.min.esm.js +2 -2
- package/dist/math-json.min.umd.cjs +2 -2
- package/dist/math-json.umd.cjs +2 -2
- package/dist/numerics.esm.js +38 -3
- package/dist/numerics.min.esm.js +3 -3
- package/dist/numerics.min.umd.cjs +4 -4
- package/dist/numerics.umd.cjs +38 -3
- package/dist/types/big-decimal/big-decimal.d.ts +1 -1
- package/dist/types/big-decimal/index.d.ts +1 -1
- package/dist/types/big-decimal/transcendentals.d.ts +1 -1
- package/dist/types/big-decimal/utils.d.ts +1 -1
- package/dist/types/common/ansi-codes.d.ts +1 -1
- package/dist/types/common/configuration-change.d.ts +1 -1
- package/dist/types/common/fuzzy-string-match.d.ts +1 -1
- package/dist/types/common/grapheme-splitter.d.ts +1 -1
- package/dist/types/common/interruptible.d.ts +1 -1
- package/dist/types/common/one-of.d.ts +1 -1
- package/dist/types/common/signals.d.ts +1 -1
- package/dist/types/common/type/ast-nodes.d.ts +1 -1
- package/dist/types/common/type/boxed-type.d.ts +1 -1
- package/dist/types/common/type/lexer.d.ts +1 -1
- package/dist/types/common/type/parse.d.ts +1 -1
- package/dist/types/common/type/parser.d.ts +1 -1
- package/dist/types/common/type/primitive.d.ts +1 -1
- package/dist/types/common/type/reduce.d.ts +1 -1
- package/dist/types/common/type/serialize.d.ts +1 -1
- package/dist/types/common/type/subtype.d.ts +1 -1
- package/dist/types/common/type/type-builder.d.ts +1 -1
- package/dist/types/common/type/types.d.ts +1 -1
- package/dist/types/common/type/utils.d.ts +1 -1
- package/dist/types/common/utils.d.ts +1 -1
- package/dist/types/compile.d.ts +1 -1
- package/dist/types/compute-engine/assume.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/abstract-boxed-expression.d.ts +8 -1
- package/dist/types/compute-engine/boxed-expression/apply.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/arithmetic-add.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/arithmetic-mul-div.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/arithmetic-power.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/ascii-math.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/box.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-dictionary.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-function.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-number.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-operator-definition.d.ts +7 -1
- package/dist/types/compute-engine/boxed-expression/boxed-patterns.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-string.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-symbol.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-tensor.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/boxed-value-definition.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/cache.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/canonical-utils.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/canonical.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/compare.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/constants.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/expand.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/expression-map.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/factor.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/flatten.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/hold.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/inequality-bounds.d.ts +22 -10
- package/dist/types/compute-engine/boxed-expression/init-lazy-refs.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/invisible-operator.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/match.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/negate.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/numerics.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/order.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/pattern-utils.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/polynomial-degree.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/polynomials.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/predicates.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/rules.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/serialize.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/sgn.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/simplify.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/solve-linear-system.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/solve.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/stochastic-equal.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/trigonometry.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/type-guards.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/utils.d.ts +1 -1
- package/dist/types/compute-engine/boxed-expression/validate.d.ts +1 -1
- package/dist/types/compute-engine/collection-utils.d.ts +1 -1
- package/dist/types/compute-engine/compilation/base-compiler.d.ts +62 -6
- package/dist/types/compute-engine/compilation/compile-expression.d.ts +1 -1
- package/dist/types/compute-engine/compilation/constant-folding.d.ts +1 -1
- package/dist/types/compute-engine/compilation/glsl-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/gpu-target.d.ts +44 -1
- package/dist/types/compute-engine/compilation/interval-javascript-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/javascript-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/python-target.d.ts +1 -1
- package/dist/types/compute-engine/compilation/types.d.ts +1 -1
- package/dist/types/compute-engine/compilation/wgsl-target.d.ts +1 -1
- package/dist/types/compute-engine/cost-function.d.ts +1 -1
- package/dist/types/compute-engine/engine-assumptions.d.ts +1 -1
- package/dist/types/compute-engine/engine-cache.d.ts +1 -1
- package/dist/types/compute-engine/engine-common-symbols.d.ts +1 -1
- package/dist/types/compute-engine/engine-compilation-targets.d.ts +1 -1
- package/dist/types/compute-engine/engine-configuration-lifecycle.d.ts +1 -1
- package/dist/types/compute-engine/engine-declarations.d.ts +1 -1
- package/dist/types/compute-engine/engine-expression-entrypoints.d.ts +1 -1
- package/dist/types/compute-engine/engine-extension-contracts.d.ts +1 -1
- package/dist/types/compute-engine/engine-library-bootstrap.d.ts +1 -1
- package/dist/types/compute-engine/engine-numeric-configuration.d.ts +1 -1
- package/dist/types/compute-engine/engine-runtime-state.d.ts +4 -1
- package/dist/types/compute-engine/engine-scope.d.ts +1 -1
- package/dist/types/compute-engine/engine-sequences.d.ts +1 -1
- package/dist/types/compute-engine/engine-simplification-rules.d.ts +1 -1
- package/dist/types/compute-engine/engine-startup-coordinator.d.ts +1 -1
- package/dist/types/compute-engine/engine-type-resolver.d.ts +1 -1
- package/dist/types/compute-engine/engine-validation-entrypoints.d.ts +1 -1
- package/dist/types/compute-engine/free-functions.d.ts +1 -1
- package/dist/types/compute-engine/function-utils.d.ts +1 -1
- package/dist/types/compute-engine/global-types.d.ts +1 -1
- package/dist/types/compute-engine/index.d.ts +18 -2
- package/dist/types/compute-engine/interval/arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/interval/comparison.d.ts +1 -1
- package/dist/types/compute-engine/interval/elementary.d.ts +1 -1
- package/dist/types/compute-engine/interval/index.d.ts +1 -1
- package/dist/types/compute-engine/interval/trigonometric.d.ts +1 -1
- package/dist/types/compute-engine/interval/types.d.ts +1 -1
- package/dist/types/compute-engine/interval/util.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/default-dictionary.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-algebra.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-calculus.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-colors.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-complex.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-core.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-linear-algebra.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-logic.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-other.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-relational-operators.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-sets.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-statistics.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-symbols.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-trigonometry.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions-units.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/definitions.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/dictionary/indexed-types.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/latex-syntax.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/parse-number.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/parse-symbol.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/parse.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serialize-dms.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serialize-number.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serializer-style.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/serializer.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/tokenizer.d.ts +1 -1
- package/dist/types/compute-engine/latex-syntax/types.d.ts +40 -1
- package/dist/types/compute-engine/latex-syntax/utils.d.ts +1 -1
- package/dist/types/compute-engine/library/arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/library/calculus.d.ts +1 -1
- package/dist/types/compute-engine/library/collections.d.ts +5 -3
- package/dist/types/compute-engine/library/colors.d.ts +1 -1
- package/dist/types/compute-engine/library/combinatorics.d.ts +1 -1
- package/dist/types/compute-engine/library/complex.d.ts +1 -1
- package/dist/types/compute-engine/library/control-structures.d.ts +1 -1
- package/dist/types/compute-engine/library/core.d.ts +1 -1
- package/dist/types/compute-engine/library/fractals.d.ts +1 -1
- package/dist/types/compute-engine/library/library.d.ts +1 -1
- package/dist/types/compute-engine/library/linear-algebra.d.ts +1 -1
- package/dist/types/compute-engine/library/logic-analysis.d.ts +1 -1
- package/dist/types/compute-engine/library/logic.d.ts +1 -1
- package/dist/types/compute-engine/library/number-theory.d.ts +1 -1
- package/dist/types/compute-engine/library/polynomials.d.ts +1 -1
- package/dist/types/compute-engine/library/quantity-arithmetic.d.ts +1 -1
- package/dist/types/compute-engine/library/random-expression.d.ts +1 -1
- package/dist/types/compute-engine/library/relational-operator.d.ts +1 -1
- package/dist/types/compute-engine/library/sets.d.ts +1 -1
- package/dist/types/compute-engine/library/statistics.d.ts +1 -1
- package/dist/types/compute-engine/library/trigonometry.d.ts +1 -1
- package/dist/types/compute-engine/library/type-handlers.d.ts +1 -1
- package/dist/types/compute-engine/library/unit-data.d.ts +1 -1
- package/dist/types/compute-engine/library/units.d.ts +1 -1
- package/dist/types/compute-engine/library/utils.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/big-numeric-value.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/exact-numeric-value.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/machine-numeric-value.d.ts +1 -1
- package/dist/types/compute-engine/numeric-value/types.d.ts +1 -1
- package/dist/types/compute-engine/numerics/bigint.d.ts +1 -1
- package/dist/types/compute-engine/numerics/expression.d.ts +1 -1
- package/dist/types/compute-engine/numerics/interval.d.ts +1 -1
- package/dist/types/compute-engine/numerics/linear-algebra.d.ts +1 -1
- package/dist/types/compute-engine/numerics/monte-carlo.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric-bigint.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric-bignum.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric-complex.d.ts +1 -1
- package/dist/types/compute-engine/numerics/numeric.d.ts +1 -1
- package/dist/types/compute-engine/numerics/primes.d.ts +1 -1
- package/dist/types/compute-engine/numerics/random.d.ts +23 -0
- package/dist/types/compute-engine/numerics/rationals.d.ts +1 -1
- package/dist/types/compute-engine/numerics/richardson.d.ts +1 -1
- package/dist/types/compute-engine/numerics/special-functions.d.ts +1 -1
- package/dist/types/compute-engine/numerics/statistics.d.ts +1 -1
- package/dist/types/compute-engine/numerics/strings.d.ts +1 -1
- package/dist/types/compute-engine/numerics/types.d.ts +1 -1
- package/dist/types/compute-engine/numerics/unit-data.d.ts +1 -1
- package/dist/types/compute-engine/oeis.d.ts +1 -1
- package/dist/types/compute-engine/sequence.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/antiderivative.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/derivative.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/distribute.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/fu-cost.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/fu-transforms.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/fu.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/logic-utils.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-abs.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-divide.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-factorial.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-hyperbolic.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-infinity.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-log.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-logic.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-power.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-product.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-rules.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-sum.d.ts +1 -1
- package/dist/types/compute-engine/symbolic/simplify-trig.d.ts +1 -1
- package/dist/types/compute-engine/tensor/tensor-fields.d.ts +1 -1
- package/dist/types/compute-engine/tensor/tensors.d.ts +1 -1
- package/dist/types/compute-engine/types-definitions.d.ts +1 -1
- package/dist/types/compute-engine/types-engine.d.ts +51 -1
- package/dist/types/compute-engine/types-evaluation.d.ts +1 -1
- package/dist/types/compute-engine/types-expression.d.ts +69 -1
- package/dist/types/compute-engine/types-kernel-evaluation.d.ts +1 -1
- package/dist/types/compute-engine/types-kernel-serialization.d.ts +1 -1
- package/dist/types/compute-engine/types-serialization.d.ts +1 -1
- package/dist/types/compute-engine/types.d.ts +1 -1
- package/dist/types/compute-engine.d.ts +1 -1
- package/dist/types/core.d.ts +1 -1
- package/dist/types/interval.d.ts +1 -1
- package/dist/types/latex-syntax.d.ts +2 -2
- package/dist/types/math-json/symbols.d.ts +1 -1
- package/dist/types/math-json/types.d.ts +1 -1
- package/dist/types/math-json/utils.d.ts +1 -1
- package/dist/types/math-json.d.ts +2 -2
- package/dist/types/numerics.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
/** Assuming x in an expression in radians, convert to current angular unit. */
|
|
3
3
|
export declare function radiansToAngle(x: Expression | undefined): Expression | undefined;
|
|
4
4
|
export declare function evalTrig(name: string, op: Expression | undefined): Expression | undefined;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
import type { CompileTarget, TargetSource } from './types';
|
|
3
3
|
/**
|
|
4
4
|
* Base compiler class containing language-agnostic compilation logic
|
|
@@ -17,14 +17,70 @@ export declare class BaseCompiler {
|
|
|
17
17
|
*/
|
|
18
18
|
private static compileBlock;
|
|
19
19
|
/**
|
|
20
|
-
* Compile a Loop expression
|
|
21
|
-
* Generates: (() => { for (let i = lo; i <= hi; i++) { body } })()
|
|
20
|
+
* Compile a Loop expression.
|
|
22
21
|
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
22
|
+
* Two forms are supported:
|
|
23
|
+
*
|
|
24
|
+
* 1. **Imperative / single-Element form** (existing behaviour):
|
|
25
|
+
* `Loop(body, Element(i, Range(lo, hi)))`
|
|
26
|
+
* Generates a raw `for (let i = lo; i <= hi; i++) { body }` loop wrapped
|
|
27
|
+
* in an IIFE. The loop counter is always a plain number. For targets
|
|
28
|
+
* that wrap numeric values (e.g. interval-js uses `_IA.point()`),
|
|
29
|
+
* references to the loop index inside the body are re-wrapped via
|
|
30
|
+
* `target.number`. `break` / `continue` / `return` are preserved.
|
|
31
|
+
*
|
|
32
|
+
* 2. **Comprehension / variadic-Element form** (new):
|
|
33
|
+
* `Loop(body, Element(x, coll1), Element(y, coll2), …)`
|
|
34
|
+
* When two or more `Element` clauses are present — or when the single
|
|
35
|
+
* Element's collection is not a `Range` — the loop is compiled as a
|
|
36
|
+
* comprehension that collects results into an array. Each clause
|
|
37
|
+
* produces a `for (const name of collection)` loop, nested
|
|
38
|
+
* outermost-to-innermost, and the innermost body pushes into `result`.
|
|
39
|
+
*
|
|
40
|
+
* Example output (JS):
|
|
41
|
+
* ```js
|
|
42
|
+
* (() => { const result = [];
|
|
43
|
+
* for (const x of [1,2]) { for (const y of [3,4]) { result.push(body); } }
|
|
44
|
+
* return result; })()
|
|
45
|
+
* ```
|
|
46
|
+
*
|
|
47
|
+
* GLSL: multi-Element comprehension is not trivially representable in
|
|
48
|
+
* GLSL (no dynamic arrays, no push). A compile-time error is thrown.
|
|
49
|
+
* TODO(E3-GLSL): support GLSL multi-Element via a pre-declared fixed-size
|
|
50
|
+
* array or by unrolling when bounds are known at compile time.
|
|
51
|
+
*
|
|
52
|
+
* Known issue (imperative form): the IIFE generated by form (1) has no
|
|
53
|
+
* `return` statement, so `Loop(body, Element(i, Range(lo, hi)))` compiled
|
|
54
|
+
* to JS evaluates to `undefined` at runtime, while CE evaluation returns a
|
|
55
|
+
* `List` of body values. See `test/compute-engine/a1-c1-compile-parity.test.ts`
|
|
56
|
+
* ("Loop compiles in JS") for the verify-only test that locks in the
|
|
57
|
+
* current behavior.
|
|
26
58
|
*/
|
|
27
59
|
private static compileForLoop;
|
|
60
|
+
/**
|
|
61
|
+
* Returns `true` when the given collection expression is a `Range` whose
|
|
62
|
+
* runtime semantics match the legacy imperative for-loop shape
|
|
63
|
+
* `for (let i = lo; i <= hi; i++)`.
|
|
64
|
+
*
|
|
65
|
+
* Concretely: integer-ascending bounds and step omitted-or-1. When bounds
|
|
66
|
+
* are not statically numeric we accept the Range (the historical
|
|
67
|
+
* behaviour) — runtime mismatch in the descending-unknown-bounds case is
|
|
68
|
+
* left as a known limitation; callers can force the iterable path by
|
|
69
|
+
* supplying an explicit step.
|
|
70
|
+
*/
|
|
71
|
+
private static isLegacyCompatibleRange;
|
|
72
|
+
/**
|
|
73
|
+
* Compile a `Range(lo, hi)` or `Range(lo, hi, step)` expression into a JS
|
|
74
|
+
* iterable expression. Mirrors the runtime semantics in
|
|
75
|
+
* `library/collections.ts` Range:
|
|
76
|
+
* count = step === 0 ? 0 : max(0, floor((hi - lo) / step) + 1)
|
|
77
|
+
* element = lo + step * k (0-indexed)
|
|
78
|
+
* Default step is 1 when omitted. Bounds and step may be fractional.
|
|
79
|
+
*
|
|
80
|
+
* Only used from the comprehension path in `compileForLoop`.
|
|
81
|
+
* Caller must have already verified `isFunction(rangeExpr, 'Range')`.
|
|
82
|
+
*/
|
|
83
|
+
private static compileRangeIterable;
|
|
28
84
|
/**
|
|
29
85
|
* Compile a loop body expression as statements (not wrapped in IIFE).
|
|
30
86
|
* Handles Break, Continue, Return as statements, and If as if-else when
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
import type { CompileTarget, CompiledOperators, CompiledFunctions, LanguageTarget, CompilationOptions, CompilationResult } from './types';
|
|
3
3
|
/**
|
|
4
4
|
* GPU shader operators shared by GLSL and WGSL.
|
|
@@ -120,6 +120,49 @@ export declare const GPU_FRACTAL_PREAMBLE_GLSL = "\nfloat _fractal_mandelbrot(ve
|
|
|
120
120
|
* Fractal preamble (WGSL syntax).
|
|
121
121
|
*/
|
|
122
122
|
export declare const GPU_FRACTAL_PREAMBLE_WGSL = "\nfn _fractal_mandelbrot(c: vec2f, maxIter: i32) -> f32 {\n var z = vec2f(0.0, 0.0);\n for (var i: i32 = 0; i < maxIter; i++) {\n z = vec2f(z.x*z.x - z.y*z.y + c.x, 2.0*z.x*z.y + c.y);\n if (dot(z, z) > 4.0) {\n return clamp((f32(i) - log2(log2(dot(z, z))) + 4.0) / f32(maxIter), 0.0, 1.0);\n }\n }\n return 1.0;\n}\n\nfn _fractal_julia(z_in: vec2f, c: vec2f, maxIter: i32) -> f32 {\n var z = z_in;\n for (var i: i32 = 0; i < maxIter; i++) {\n z = vec2f(z.x*z.x - z.y*z.y + c.x, 2.0*z.x*z.y + c.y);\n if (dot(z, z) > 4.0) {\n return clamp((f32(i) - log2(log2(dot(z, z))) + 4.0) / f32(maxIter), 0.0, 1.0);\n }\n }\n return 1.0;\n}\n";
|
|
123
|
+
/**
|
|
124
|
+
* GPU GCD preamble (GLSL syntax).
|
|
125
|
+
* Euclidean algorithm over floats; works for integer-valued inputs.
|
|
126
|
+
*/
|
|
127
|
+
export declare const GPU_GCD_PREAMBLE_GLSL = "\nfloat _gpu_gcd(float a, float b) {\n a = abs(a); b = abs(b);\n for (int i = 0; i < 32; i++) {\n if (b < 0.5) break;\n float t = mod(a, b);\n a = b;\n b = t;\n }\n return a;\n}\n";
|
|
128
|
+
/**
|
|
129
|
+
* GPU GCD preamble (WGSL syntax).
|
|
130
|
+
*/
|
|
131
|
+
export declare const GPU_GCD_PREAMBLE_WGSL = "\nfn _gpu_gcd(a_in: f32, b_in: f32) -> f32 {\n var a = abs(a_in); var b = abs(b_in);\n for (var i: i32 = 0; i < 32; i++) {\n if (b < 0.5) { break; }\n let t = a % b;\n a = b;\n b = t;\n }\n return a;\n}\n";
|
|
132
|
+
/**
|
|
133
|
+
* GPU Random preamble (GLSL syntax).
|
|
134
|
+
*
|
|
135
|
+
* Deterministic pseudorandom in [0, 1) from a float seed.
|
|
136
|
+
* Standard fract-sin hash; reproducible across runs for the same seed.
|
|
137
|
+
* Note: this hash exhibits visible banding near seed ≈ kπ for integer k.
|
|
138
|
+
* For high-quality shader random, callers should use a more robust hash
|
|
139
|
+
* (e.g. PCG or xxHash) and pre-seed it appropriately.
|
|
140
|
+
*/
|
|
141
|
+
export declare const GPU_RANDOM_PREAMBLE_GLSL = "\n// Deterministic pseudorandom in [0, 1) from a float seed.\n// Standard fract-sin hash; reproducible across runs for the same seed.\n// Note: this hash exhibits visible banding near seed \u2248 k\u03C0 for integer k.\n// For high-quality shader random, callers should use a more robust hash\n// (e.g. PCG or xxHash) and pre-seed it appropriately.\nfloat _gpu_random(float seed) {\n return fract(sin(seed * 12.9898) * 43758.5453);\n}\n";
|
|
142
|
+
/**
|
|
143
|
+
* GPU Random preamble (WGSL syntax).
|
|
144
|
+
*
|
|
145
|
+
* Deterministic pseudorandom in [0, 1) from a float seed.
|
|
146
|
+
* Standard fract-sin hash; reproducible across runs for the same seed.
|
|
147
|
+
* Note: this hash exhibits visible banding near seed ≈ kπ for integer k.
|
|
148
|
+
* For high-quality shader random, callers should use a more robust hash
|
|
149
|
+
* (e.g. PCG or xxHash) and pre-seed it appropriately.
|
|
150
|
+
*/
|
|
151
|
+
export declare const GPU_RANDOM_PREAMBLE_WGSL = "\n// Deterministic pseudorandom in [0, 1) from a float seed.\n// Standard fract-sin hash; reproducible across runs for the same seed.\n// Note: this hash exhibits visible banding near seed \u2248 k\u03C0 for integer k.\n// For high-quality shader random, callers should use a more robust hash\n// (e.g. PCG or xxHash) and pre-seed it appropriately.\nfn _gpu_random(seed: f32) -> f32 {\n return fract(sin(seed * 12.9898) * 43758.5453);\n}\n";
|
|
152
|
+
/**
|
|
153
|
+
* GPU Median preamble (GLSL syntax).
|
|
154
|
+
*
|
|
155
|
+
* One function per supported list size (2..8) using sorting networks.
|
|
156
|
+
* Each function takes N float arguments and returns the median via a
|
|
157
|
+
* Batcher odd-even merge sort encoded entirely as min/max calls.
|
|
158
|
+
*/
|
|
159
|
+
export declare const GPU_MEDIAN_PREAMBLE_GLSL = "\nfloat _gpu_median_2(float a, float b) {\n return (a + b) * 0.5;\n}\nfloat _gpu_median_3(float a, float b, float c) {\n return max(min(a, b), min(max(a, b), c));\n}\nfloat _gpu_median_4(float a, float b, float c, float d) {\n float lo = max(min(a, b), min(c, d));\n float hi = min(max(a, b), max(c, d));\n return (lo + hi) * 0.5;\n}\nfloat _gpu_median_5(float a, float b, float c, float d, float e) {\n // 9-comparator Bose-Nelson sort; v2 holds the median.\n float t; float v0=a,v1=b,v2=c,v3=d,v4=e;\n t=min(v0,v1); v1=max(v0,v1); v0=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n t=min(v2,v4); v4=max(v2,v4); v2=t;\n t=min(v2,v3); v3=max(v2,v3); v2=t;\n t=min(v0,v3); v3=max(v0,v3); v0=t;\n t=min(v0,v2); v2=max(v0,v2); v0=t;\n t=min(v1,v4); v4=max(v1,v4); v1=t;\n t=min(v1,v3); v3=max(v1,v3); v1=t;\n t=min(v1,v2); v2=max(v1,v2); v1=t;\n return v2;\n}\nfloat _gpu_median_6(float a, float b, float c, float d, float e, float f) {\n float t; float v0=a,v1=b,v2=c,v3=d,v4=e,v5=f;\n t=min(v0,v1); v1=max(v0,v1); v0=t;\n t=min(v2,v3); v3=max(v2,v3); v2=t;\n t=min(v4,v5); v5=max(v4,v5); v4=t;\n t=min(v0,v2); v2=max(v0,v2); v0=t;\n t=min(v1,v3); v3=max(v1,v3); v1=t;\n t=min(v0,v4); v4=max(v0,v4); v0=t;\n t=min(v1,v5); v5=max(v1,v5); v1=t;\n t=min(v2,v4); v4=max(v2,v4); v2=t;\n t=min(v1,v2); v2=max(v1,v2); v1=t;\n t=min(v3,v5); v5=max(v3,v5); v3=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n return (v2 + v3) * 0.5;\n}\nfloat _gpu_median_7(float a, float b, float c, float d, float e, float f, float g) {\n float t; float v0=a,v1=b,v2=c,v3=d,v4=e,v5=f,v6=g;\n t=min(v0,v1); v1=max(v0,v1); v0=t;\n t=min(v2,v3); v3=max(v2,v3); v2=t;\n t=min(v4,v5); v5=max(v4,v5); v4=t;\n t=min(v0,v2); v2=max(v0,v2); v0=t;\n t=min(v1,v3); v3=max(v1,v3); v1=t;\n t=min(v4,v6); v6=max(v4,v6); v4=t;\n t=min(v0,v4); v4=max(v0,v4); v0=t;\n t=min(v1,v5); v5=max(v1,v5); v1=t;\n t=min(v2,v6); v6=max(v2,v6); v2=t;\n t=min(v1,v2); v2=max(v1,v2); v1=t;\n t=min(v3,v5); v5=max(v3,v5); v3=t;\n t=min(v2,v4); v4=max(v2,v4); v2=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n return v3;\n}\nfloat _gpu_median_8(float a, float b, float c, float d, float e, float f, float g, float h) {\n float t; float v0=a,v1=b,v2=c,v3=d,v4=e,v5=f,v6=g,v7=h;\n t=min(v0,v1); v1=max(v0,v1); v0=t;\n t=min(v2,v3); v3=max(v2,v3); v2=t;\n t=min(v4,v5); v5=max(v4,v5); v4=t;\n t=min(v6,v7); v7=max(v6,v7); v6=t;\n t=min(v0,v2); v2=max(v0,v2); v0=t;\n t=min(v1,v3); v3=max(v1,v3); v1=t;\n t=min(v4,v6); v6=max(v4,v6); v4=t;\n t=min(v5,v7); v7=max(v5,v7); v5=t;\n t=min(v0,v4); v4=max(v0,v4); v0=t;\n t=min(v1,v5); v5=max(v1,v5); v1=t;\n t=min(v2,v6); v6=max(v2,v6); v2=t;\n t=min(v3,v7); v7=max(v3,v7); v3=t;\n t=min(v1,v2); v2=max(v1,v2); v1=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n t=min(v5,v6); v6=max(v5,v6); v5=t;\n t=min(v3,v5); v5=max(v3,v5); v3=t;\n t=min(v2,v4); v4=max(v2,v4); v2=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n return (v3 + v4) * 0.5;\n}\n";
|
|
160
|
+
/**
|
|
161
|
+
* GPU Median preamble (WGSL syntax).
|
|
162
|
+
*
|
|
163
|
+
* Same sorting-network logic as the GLSL version with WGSL syntax.
|
|
164
|
+
*/
|
|
165
|
+
export declare const GPU_MEDIAN_PREAMBLE_WGSL = "\nfn _gpu_median_2(a: f32, b: f32) -> f32 {\n return (a + b) * 0.5;\n}\nfn _gpu_median_3(a: f32, b: f32, c: f32) -> f32 {\n return max(min(a, b), min(max(a, b), c));\n}\nfn _gpu_median_4(a: f32, b: f32, c: f32, d: f32) -> f32 {\n let lo = max(min(a, b), min(c, d));\n let hi = min(max(a, b), max(c, d));\n return (lo + hi) * 0.5;\n}\nfn _gpu_median_5(a: f32, b: f32, c: f32, d: f32, e: f32) -> f32 {\n // 9-comparator Bose-Nelson sort; v2 holds the median.\n var v0=a; var v1=b; var v2=c; var v3=d; var v4=e; var t: f32;\n t=min(v0,v1); v1=max(v0,v1); v0=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n t=min(v2,v4); v4=max(v2,v4); v2=t;\n t=min(v2,v3); v3=max(v2,v3); v2=t;\n t=min(v0,v3); v3=max(v0,v3); v0=t;\n t=min(v0,v2); v2=max(v0,v2); v0=t;\n t=min(v1,v4); v4=max(v1,v4); v1=t;\n t=min(v1,v3); v3=max(v1,v3); v1=t;\n t=min(v1,v2); v2=max(v1,v2); v1=t;\n return v2;\n}\nfn _gpu_median_6(a: f32, b: f32, c: f32, d: f32, e: f32, f: f32) -> f32 {\n var v0=a; var v1=b; var v2=c; var v3=d; var v4=e; var v5=f; var t: f32;\n t=min(v0,v1); v1=max(v0,v1); v0=t;\n t=min(v2,v3); v3=max(v2,v3); v2=t;\n t=min(v4,v5); v5=max(v4,v5); v4=t;\n t=min(v0,v2); v2=max(v0,v2); v0=t;\n t=min(v1,v3); v3=max(v1,v3); v1=t;\n t=min(v0,v4); v4=max(v0,v4); v0=t;\n t=min(v1,v5); v5=max(v1,v5); v1=t;\n t=min(v2,v4); v4=max(v2,v4); v2=t;\n t=min(v1,v2); v2=max(v1,v2); v1=t;\n t=min(v3,v5); v5=max(v3,v5); v3=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n return (v2 + v3) * 0.5;\n}\nfn _gpu_median_7(a: f32, b: f32, c: f32, d: f32, e: f32, f: f32, g: f32) -> f32 {\n var v0=a; var v1=b; var v2=c; var v3=d; var v4=e; var v5=f; var v6=g; var t: f32;\n t=min(v0,v1); v1=max(v0,v1); v0=t;\n t=min(v2,v3); v3=max(v2,v3); v2=t;\n t=min(v4,v5); v5=max(v4,v5); v4=t;\n t=min(v0,v2); v2=max(v0,v2); v0=t;\n t=min(v1,v3); v3=max(v1,v3); v1=t;\n t=min(v4,v6); v6=max(v4,v6); v4=t;\n t=min(v0,v4); v4=max(v0,v4); v0=t;\n t=min(v1,v5); v5=max(v1,v5); v1=t;\n t=min(v2,v6); v6=max(v2,v6); v2=t;\n t=min(v1,v2); v2=max(v1,v2); v1=t;\n t=min(v3,v5); v5=max(v3,v5); v3=t;\n t=min(v2,v4); v4=max(v2,v4); v2=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n return v3;\n}\nfn _gpu_median_8(a: f32, b: f32, c: f32, d: f32, e: f32, f: f32, g: f32, h: f32) -> f32 {\n var v0=a; var v1=b; var v2=c; var v3=d; var v4=e; var v5=f; var v6=g; var v7=h; var t: f32;\n t=min(v0,v1); v1=max(v0,v1); v0=t;\n t=min(v2,v3); v3=max(v2,v3); v2=t;\n t=min(v4,v5); v5=max(v4,v5); v4=t;\n t=min(v6,v7); v7=max(v6,v7); v6=t;\n t=min(v0,v2); v2=max(v0,v2); v0=t;\n t=min(v1,v3); v3=max(v1,v3); v1=t;\n t=min(v4,v6); v6=max(v4,v6); v4=t;\n t=min(v5,v7); v7=max(v5,v7); v5=t;\n t=min(v0,v4); v4=max(v0,v4); v0=t;\n t=min(v1,v5); v5=max(v1,v5); v1=t;\n t=min(v2,v6); v6=max(v2,v6); v2=t;\n t=min(v3,v7); v7=max(v3,v7); v3=t;\n t=min(v1,v2); v2=max(v1,v2); v1=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n t=min(v5,v6); v6=max(v5,v6); v5=t;\n t=min(v3,v5); v5=max(v3,v5); v3=t;\n t=min(v2,v4); v4=max(v2,v4); v2=t;\n t=min(v3,v4); v4=max(v3,v4); v3=t;\n return (v3 + v4) * 0.5;\n}\n";
|
|
123
166
|
/**
|
|
124
167
|
* GPU color space conversion preamble (GLSL syntax).
|
|
125
168
|
*
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
import { chop, factorial, factorial2, gcd, lcm, limit } from '../numerics/numeric';
|
|
3
3
|
import { gamma, gammaln, erf, erfc, erfInv, beta, digamma, trigamma, polygamma, zeta, lambertW, besselJ, besselY, besselI, besselK, airyAi, airyBi, fresnelS, fresnelC, sinc } from '../numerics/special-functions';
|
|
4
4
|
import { choose } from '../boxed-expression/expand';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
import type { MathJsonSymbol } from '../math-json/types';
|
|
3
3
|
export declare function ask(ce: IComputeEngine, pattern: Expression): BoxedSubstitution[];
|
|
4
4
|
export declare function verify(ce: IComputeEngine, query: Expression): boolean | undefined;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
import { BoxedType } from '../common/type/boxed-type';
|
|
3
3
|
import type { MathJsonSymbol } from '../math-json/types';
|
|
4
4
|
import type { ValueDefinition, OperatorDefinition, AssignValue, Expression, BoxedDefinition, SymbolDefinition, IComputeEngine, Scope } from './global-types';
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare function resolveBootstrapLibraries(libraries?: readonly (string | LibraryDefinition)[]): LibraryDefinition[];
|
|
3
3
|
export declare function loadLibraryDefinitions(engine: ComputeEngine, libraries: readonly LibraryDefinition[]): void;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
private _timeLimit;
|
|
3
3
|
private _iterationLimit;
|
|
4
4
|
private _recursionLimit;
|
|
5
|
+
private _maxCollectionSize;
|
|
5
6
|
private _deadline;
|
|
6
7
|
private _isVerifying;
|
|
7
8
|
get timeLimit(): number;
|
|
@@ -10,6 +11,8 @@
|
|
|
10
11
|
set iterationLimit(value: number);
|
|
11
12
|
get recursionLimit(): number;
|
|
12
13
|
set recursionLimit(value: number);
|
|
14
|
+
get maxCollectionSize(): number;
|
|
15
|
+
set maxCollectionSize(value: number);
|
|
13
16
|
get deadline(): number | undefined;
|
|
14
17
|
set deadline(value: number | undefined);
|
|
15
18
|
get timeRemaining(): number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare function pushScope(ce: IComputeEngine, scope?: Scope, name?: string): void;
|
|
3
3
|
export declare function popScope(ce: IComputeEngine): void;
|
|
4
4
|
export declare function pushEvalContext(ce: IComputeEngine, scope: Scope, name?: string): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare function declareSequence(ce: IComputeEngine, name: string, def: SequenceDefinition): IComputeEngine;
|
|
3
3
|
export declare function getSequenceStatus(ce: IComputeEngine, name: string): SequenceStatus;
|
|
4
4
|
export declare function getSequence(ce: IComputeEngine, name: string): SequenceInfo | undefined;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export type * from './types-serialization';
|
|
3
3
|
export type { ValueDefinition, SequenceDefinition, SequenceStatus, SequenceInfo, OEISSequenceInfo, OEISOptions, OperatorDefinition, BaseDefinition, SimplifyOptions, SymbolDefinition, SymbolDefinitions, LibraryDefinition, AngularUnit, Sign, BaseCollectionHandlers, IndexedCollectionHandlers, CollectionHandlers, TaggedValueDefinition, TaggedOperatorDefinition, BoxedDefinition, BoxedBaseDefinition, BoxedValueDefinition, OperatorDefinitionFlags, BoxedOperatorDefinition, } from './types-definitions';
|
|
4
4
|
export type * from './types-evaluation';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
import { BigDecimal } from '../big-decimal';
|
|
3
3
|
import { Type, TypeResolver, TypeString } from '../common/type/types';
|
|
4
4
|
import { BoxedType } from '../common/type/boxed-type';
|
|
5
5
|
import type { OneOf } from '../common/one-of';
|
|
6
6
|
import type { ConfigurationChangeListener } from '../common/configuration-change';
|
|
7
7
|
import type { MathJsonExpression, MathJsonSymbol, MathJsonNumberObject } from '../math-json/types';
|
|
8
|
-
import type { ValueDefinition, OperatorDefinition, AngularUnit, AssignValue, AssumeResult, Expression, BoxedRule, BoxedRuleSet, BoxedSubstitution, CanonicalOptions, Metadata, Rule, Scope, EvalContext, ExpressionInput, IComputeEngine, ILatexSyntax, BoxedDefinition, SymbolDefinition, SequenceDefinition, SequenceStatus, SequenceInfo, OEISSequenceInfo, OEISOptions, LibraryDefinition } from './global-types';
|
|
8
|
+
import type { ValueDefinition, OperatorDefinition, AngularUnit, AssignValue, AssumeResult, Expression, BoxedRule, BoxedRuleSet, BoxedSubstitution, CanonicalOptions, Metadata, Rule, Scope, EvalContext, ExpressionInput, IComputeEngine, ILatexSyntax, BoxedDefinition, SymbolDefinition, SequenceDefinition, SequenceStatus, SequenceInfo, OEISSequenceInfo, OEISOptions, LibraryDefinition, OperatorInfo, SymbolInfo } from './global-types';
|
|
9
9
|
import type { LibraryCategory, ParseLatexOptions, SerializeLatexOptions } from './latex-syntax/types';
|
|
10
10
|
import type { BigNum, Rational } from './numerics/types';
|
|
11
11
|
import { ExactNumericValueData, NumericValue, NumericValueData } from './numeric-value/types';
|
|
@@ -259,6 +259,19 @@ export declare class ComputeEngine implements IComputeEngine {
|
|
|
259
259
|
*/
|
|
260
260
|
get recursionLimit(): number;
|
|
261
261
|
set recursionLimit(t: number);
|
|
262
|
+
/** Maximum number of elements a collection may have when materialized
|
|
263
|
+
* (converted from a lazy form to a `List`). Default: 10,000.
|
|
264
|
+
*
|
|
265
|
+
* When a materialization would exceed this size, the operation leaves
|
|
266
|
+
* the expression in its lazy form. Consumers can detect oversize
|
|
267
|
+
* collections via the symbolic form's `count`.
|
|
268
|
+
*
|
|
269
|
+
* Set to `Infinity` (or `0` / a negative number) to disable the cap.
|
|
270
|
+
*
|
|
271
|
+
* @experimental
|
|
272
|
+
*/
|
|
273
|
+
get maxCollectionSize(): number;
|
|
274
|
+
set maxCollectionSize(t: number);
|
|
262
275
|
/**
|
|
263
276
|
* Flag to prevent infinite recursion in the verify/ask/equality checking cycle.
|
|
264
277
|
*
|
|
@@ -437,6 +450,9 @@ export declare class ComputeEngine implements IComputeEngine {
|
|
|
437
450
|
* lexical scope and going up the scope chain.
|
|
438
451
|
*/
|
|
439
452
|
lookupDefinition(id: MathJsonSymbol): undefined | BoxedDefinition;
|
|
453
|
+
normalizeIdentifier(latex: string): string;
|
|
454
|
+
operatorInfo(head: string): OperatorInfo | undefined;
|
|
455
|
+
symbolInfo(name: string): SymbolInfo | undefined;
|
|
440
456
|
/**
|
|
441
457
|
* Associate a new definition to a symbol in the current context.
|
|
442
458
|
*
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_ALGEBRA: LatexDictionary;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_ARITHMETIC: LatexDictionary;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_CALCULUS: LatexDictionary;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_COMPLEX: LatexDictionary;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_LINEAR_ALGEBRA: LatexDictionary;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
import type { MathJsonExpression } from '../../../math-json';
|
|
3
3
|
export declare const DEFINITIONS_LOGIC: LatexDictionary;
|
|
4
4
|
export declare function parseQuantifier(kind: 'NotForAll' | 'NotExists' | 'ForAll' | 'Exists' | 'ExistsUnique'): (parser: Parser, terminator: Readonly<Terminator>) => MathJsonExpression | null;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_OTHERS: LatexDictionary;
|
package/dist/types/compute-engine/latex-syntax/dictionary/definitions-relational-operators.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_INEQUALITIES: LatexDictionaryEntry[];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_SETS: LatexDictionary;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_STATISTICS: LatexDictionary;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
export declare const DEFINITIONS_TRIGONOMETRY: LatexDictionary;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* 0.
|
|
1
|
+
/* 0.58.0 */
|
|
2
2
|
import { LatexDictionaryEntry } from '../types';
|
|
3
3
|
export type { CommonEntry, IndexedSymbolEntry, IndexedExpressionEntry, IndexedFunctionEntry, IndexedMatchfixEntry, IndexedInfixEntry, IndexedPrefixEntry, IndexedPostfixEntry, IndexedEnvironmentEntry, IndexedLatexDictionaryEntry, IndexedLatexDictionary, } from './indexed-types';
|
|
4
4
|
import type { IndexedSymbolEntry, IndexedExpressionEntry, IndexedFunctionEntry, IndexedMatchfixEntry, IndexedInfixEntry, IndexedPostfixEntry, IndexedEnvironmentEntry, IndexedLatexDictionaryEntry, IndexedLatexDictionary } from './indexed-types';
|