mathjs 10.0.2 → 10.2.0
Sign up to get free protection for your applications and to get access to all the features.
- package/HISTORY.md +37 -0
- package/NOTICE +1 -1
- package/README.md +10 -2
- package/bin/cli.js +1 -1
- package/docs/expressions/algebra.md +27 -0
- package/docs/expressions/syntax.md +1 -1
- package/docs/reference/functions/abs.md +6 -0
- package/docs/reference/functions/acos.md +6 -0
- package/docs/reference/functions/acosh.md +6 -0
- package/docs/reference/functions/acot.md +6 -0
- package/docs/reference/functions/acoth.md +6 -0
- package/docs/reference/functions/acsc.md +6 -0
- package/docs/reference/functions/acsch.md +6 -0
- package/docs/reference/functions/add.md +6 -0
- package/docs/reference/functions/and.md +6 -0
- package/docs/reference/functions/apply.md +6 -0
- package/docs/reference/functions/arg.md +6 -0
- package/docs/reference/functions/asec.md +6 -0
- package/docs/reference/functions/asech.md +6 -0
- package/docs/reference/functions/asin.md +6 -0
- package/docs/reference/functions/asinh.md +6 -0
- package/docs/reference/functions/atan.md +6 -0
- package/docs/reference/functions/atan2.md +6 -0
- package/docs/reference/functions/atanh.md +6 -0
- package/docs/reference/functions/bellNumbers.md +6 -0
- package/docs/reference/functions/bin.md +6 -0
- package/docs/reference/functions/bitAnd.md +6 -0
- package/docs/reference/functions/bitNot.md +6 -0
- package/docs/reference/functions/bitOr.md +6 -0
- package/docs/reference/functions/bitXor.md +6 -0
- package/docs/reference/functions/catalan.md +6 -0
- package/docs/reference/functions/cbrt.md +6 -0
- package/docs/reference/functions/ceil.md +6 -0
- package/docs/reference/functions/clone.md +6 -0
- package/docs/reference/functions/column.md +6 -0
- package/docs/reference/functions/combinations.md +6 -0
- package/docs/reference/functions/combinationsWithRep.md +6 -0
- package/docs/reference/functions/compare.md +6 -0
- package/docs/reference/functions/compareNatural.md +6 -0
- package/docs/reference/functions/compareText.md +6 -0
- package/docs/reference/functions/compile.md +6 -0
- package/docs/reference/functions/composition.md +6 -0
- package/docs/reference/functions/concat.md +6 -0
- package/docs/reference/functions/conj.md +6 -0
- package/docs/reference/functions/cos.md +6 -0
- package/docs/reference/functions/cosh.md +6 -0
- package/docs/reference/functions/cot.md +6 -0
- package/docs/reference/functions/coth.md +6 -0
- package/docs/reference/functions/count.md +6 -0
- package/docs/reference/functions/cross.md +6 -0
- package/docs/reference/functions/csc.md +6 -0
- package/docs/reference/functions/csch.md +6 -0
- package/docs/reference/functions/ctranspose.md +6 -0
- package/docs/reference/functions/cube.md +6 -0
- package/docs/reference/functions/deepEqual.md +6 -0
- package/docs/reference/functions/derivative.md +6 -0
- package/docs/reference/functions/det.md +6 -0
- package/docs/reference/functions/diag.md +6 -0
- package/docs/reference/functions/diff.md +6 -0
- package/docs/reference/functions/distance.md +6 -0
- package/docs/reference/functions/divide.md +6 -0
- package/docs/reference/functions/dot.md +6 -0
- package/docs/reference/functions/dotDivide.md +6 -0
- package/docs/reference/functions/dotMultiply.md +6 -0
- package/docs/reference/functions/dotPow.md +6 -0
- package/docs/reference/functions/eigs.md +6 -0
- package/docs/reference/functions/equal.md +6 -0
- package/docs/reference/functions/equalText.md +6 -0
- package/docs/reference/functions/erf.md +6 -0
- package/docs/reference/functions/evaluate.md +6 -0
- package/docs/reference/functions/exp.md +6 -0
- package/docs/reference/functions/expm.md +6 -0
- package/docs/reference/functions/expm1.md +6 -0
- package/docs/reference/functions/factorial.md +6 -0
- package/docs/reference/functions/filter.md +6 -0
- package/docs/reference/functions/fix.md +6 -0
- package/docs/reference/functions/flatten.md +6 -0
- package/docs/reference/functions/floor.md +6 -0
- package/docs/reference/functions/forEach.md +6 -0
- package/docs/reference/functions/format.md +6 -0
- package/docs/reference/functions/gamma.md +6 -0
- package/docs/reference/functions/gcd.md +6 -0
- package/docs/reference/functions/getMatrixDataType.md +6 -0
- package/docs/reference/functions/hasNumericValue.md +6 -0
- package/docs/reference/functions/help.md +6 -0
- package/docs/reference/functions/hex.md +6 -0
- package/docs/reference/functions/hypot.md +6 -0
- package/docs/reference/functions/identity.md +6 -0
- package/docs/reference/functions/im.md +6 -0
- package/docs/reference/functions/intersect.md +6 -0
- package/docs/reference/functions/inv.md +6 -0
- package/docs/reference/functions/invmod.md +47 -0
- package/docs/reference/functions/isInteger.md +6 -0
- package/docs/reference/functions/isNaN.md +6 -0
- package/docs/reference/functions/isNegative.md +6 -0
- package/docs/reference/functions/isNumeric.md +6 -0
- package/docs/reference/functions/isPositive.md +6 -0
- package/docs/reference/functions/isPrime.md +6 -0
- package/docs/reference/functions/isZero.md +6 -0
- package/docs/reference/functions/kldivergence.md +6 -0
- package/docs/reference/functions/kron.md +6 -0
- package/docs/reference/functions/larger.md +6 -0
- package/docs/reference/functions/largerEq.md +6 -0
- package/docs/reference/functions/lcm.md +6 -0
- package/docs/reference/functions/leafCount.md +52 -0
- package/docs/reference/functions/leftShift.md +6 -0
- package/docs/reference/functions/log.md +6 -0
- package/docs/reference/functions/log10.md +6 -0
- package/docs/reference/functions/log1p.md +6 -0
- package/docs/reference/functions/log2.md +6 -0
- package/docs/reference/functions/lsolve.md +6 -0
- package/docs/reference/functions/lsolveAll.md +6 -0
- package/docs/reference/functions/lup.md +6 -0
- package/docs/reference/functions/lusolve.md +6 -0
- package/docs/reference/functions/mad.md +6 -0
- package/docs/reference/functions/map.md +6 -0
- package/docs/reference/functions/matrixFromColumns.md +6 -0
- package/docs/reference/functions/matrixFromFunction.md +6 -0
- package/docs/reference/functions/matrixFromRows.md +6 -0
- package/docs/reference/functions/max.md +6 -0
- package/docs/reference/functions/mean.md +6 -0
- package/docs/reference/functions/median.md +6 -0
- package/docs/reference/functions/min.md +6 -0
- package/docs/reference/functions/mod.md +6 -0
- package/docs/reference/functions/mode.md +6 -0
- package/docs/reference/functions/multinomial.md +6 -0
- package/docs/reference/functions/multiply.md +6 -0
- package/docs/reference/functions/norm.md +6 -0
- package/docs/reference/functions/not.md +6 -0
- package/docs/reference/functions/nthRoot.md +6 -0
- package/docs/reference/functions/nthRoots.md +6 -0
- package/docs/reference/functions/numeric.md +6 -0
- package/docs/reference/functions/oct.md +6 -0
- package/docs/reference/functions/ones.md +6 -0
- package/docs/reference/functions/or.md +6 -0
- package/docs/reference/functions/parser.md +6 -0
- package/docs/reference/functions/partitionSelect.md +6 -0
- package/docs/reference/functions/permutations.md +6 -0
- package/docs/reference/functions/pickRandom.md +6 -0
- package/docs/reference/functions/pow.md +6 -0
- package/docs/reference/functions/print.md +6 -0
- package/docs/reference/functions/prod.md +6 -0
- package/docs/reference/functions/qr.md +6 -0
- package/docs/reference/functions/quantileSeq.md +6 -0
- package/docs/reference/functions/random.md +6 -0
- package/docs/reference/functions/randomInt.md +6 -0
- package/docs/reference/functions/range.md +6 -0
- package/docs/reference/functions/rationalize.md +7 -1
- package/docs/reference/functions/re.md +6 -0
- package/docs/reference/functions/reshape.md +7 -0
- package/docs/reference/functions/resize.md +6 -0
- package/docs/reference/functions/resolve.md +46 -0
- package/docs/reference/functions/rightArithShift.md +6 -0
- package/docs/reference/functions/rightLogShift.md +6 -0
- package/docs/reference/functions/rotate.md +6 -0
- package/docs/reference/functions/rotationMatrix.md +6 -0
- package/docs/reference/functions/round.md +6 -0
- package/docs/reference/functions/row.md +6 -0
- package/docs/reference/functions/sec.md +6 -0
- package/docs/reference/functions/sech.md +6 -0
- package/docs/reference/functions/setCartesian.md +6 -0
- package/docs/reference/functions/setDifference.md +6 -0
- package/docs/reference/functions/setDistinct.md +6 -0
- package/docs/reference/functions/setIntersect.md +6 -0
- package/docs/reference/functions/setIsSubset.md +6 -0
- package/docs/reference/functions/setMultiplicity.md +6 -0
- package/docs/reference/functions/setPowerset.md +6 -0
- package/docs/reference/functions/setSize.md +6 -0
- package/docs/reference/functions/setSymDifference.md +6 -0
- package/docs/reference/functions/setUnion.md +6 -0
- package/docs/reference/functions/sign.md +6 -0
- package/docs/reference/functions/simplify.md +47 -7
- package/docs/reference/functions/simplifyCore.md +50 -0
- package/docs/reference/functions/sin.md +6 -0
- package/docs/reference/functions/sinh.md +6 -0
- package/docs/reference/functions/size.md +6 -0
- package/docs/reference/functions/slu.md +6 -0
- package/docs/reference/functions/smaller.md +6 -0
- package/docs/reference/functions/smallerEq.md +6 -0
- package/docs/reference/functions/sort.md +6 -0
- package/docs/reference/functions/sqrt.md +6 -0
- package/docs/reference/functions/sqrtm.md +6 -0
- package/docs/reference/functions/square.md +6 -0
- package/docs/reference/functions/squeeze.md +6 -0
- package/docs/reference/functions/std.md +6 -0
- package/docs/reference/functions/stirlingS2.md +6 -0
- package/docs/reference/functions/subset.md +6 -0
- package/docs/reference/functions/subtract.md +6 -0
- package/docs/reference/functions/sum.md +6 -0
- package/docs/reference/functions/tan.md +6 -0
- package/docs/reference/functions/tanh.md +6 -0
- package/docs/reference/functions/to.md +6 -0
- package/docs/reference/functions/trace.md +6 -0
- package/docs/reference/functions/transpose.md +6 -0
- package/docs/reference/functions/typeOf.md +6 -0
- package/docs/reference/functions/unaryMinus.md +6 -0
- package/docs/reference/functions/unaryPlus.md +6 -0
- package/docs/reference/functions/unequal.md +6 -0
- package/docs/reference/functions/usolve.md +6 -0
- package/docs/reference/functions/usolveAll.md +6 -0
- package/docs/reference/functions/variance.md +6 -0
- package/docs/reference/functions/xgcd.md +6 -0
- package/docs/reference/functions/xor.md +6 -0
- package/docs/reference/functions/zeros.md +6 -0
- package/docs/reference/functions.md +4 -0
- package/lib/browser/math.js +7 -7
- package/lib/browser/math.js.map +1 -1
- package/lib/cjs/core/create.js +4 -4
- package/lib/cjs/core/function/import.js +3 -3
- package/lib/cjs/core/function/typed.js +2 -2
- package/lib/cjs/defaultInstance.js +3 -3
- package/lib/cjs/entry/allFactoriesAny.js +1 -1
- package/lib/cjs/entry/allFactoriesNumber.js +1 -1
- package/lib/cjs/entry/configReadonly.js +1 -1
- package/lib/cjs/entry/dependenciesAny/dependenciesInvmod.generated.js +41 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesLeafCount.generated.js +23 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesRationalize.generated.js +18 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesResolve.generated.js +32 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplify.generated.js +21 -0
- package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +65 -0
- package/lib/cjs/entry/dependenciesAny.generated.js +32 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesRationalize.generated.js +18 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesResolve.generated.js +32 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplify.generated.js +21 -0
- package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +65 -0
- package/lib/cjs/entry/dependenciesNumber.generated.js +16 -0
- package/lib/cjs/entry/impureFunctionsAny.generated.js +78 -29
- package/lib/cjs/entry/impureFunctionsNumber.generated.js +102 -60
- package/lib/cjs/entry/pureFunctionsAny.generated.js +65 -55
- package/lib/cjs/entry/pureFunctionsNumber.generated.js +46 -48
- package/lib/cjs/expression/Help.js +4 -0
- package/lib/cjs/expression/Parser.js +1 -1
- package/lib/cjs/expression/embeddedDocs/core/typed.js +1 -1
- package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +20 -6
- package/lib/cjs/expression/embeddedDocs/function/algebra/leafCount.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/resolve.js +16 -0
- package/lib/cjs/expression/embeddedDocs/function/algebra/simplify.js +1 -1
- package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyCore.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/arithmetic/invmod.js +15 -0
- package/lib/cjs/expression/embeddedDocs/function/matrix/forEach.js +1 -1
- package/lib/cjs/expression/node/FunctionNode.js +7 -7
- package/lib/cjs/expression/node/IndexNode.js +1 -1
- package/lib/cjs/expression/node/Node.js +3 -3
- package/lib/cjs/expression/node/ObjectNode.js +1 -1
- package/lib/cjs/expression/node/utils/access.js +1 -1
- package/lib/cjs/expression/node/utils/assign.js +1 -1
- package/lib/cjs/expression/parse.js +13 -13
- package/lib/cjs/factoriesAny.js +32 -0
- package/lib/cjs/factoriesNumber.js +16 -0
- package/lib/cjs/function/algebra/decomposition/qr.js +1 -1
- package/lib/cjs/function/algebra/leafCount.js +66 -0
- package/lib/cjs/function/algebra/rationalize.js +36 -39
- package/lib/cjs/function/algebra/resolve.js +106 -0
- package/lib/cjs/function/algebra/simplify/simplifyConstant.js +226 -32
- package/lib/cjs/function/algebra/simplify/util.js +171 -33
- package/lib/cjs/function/algebra/simplify.js +608 -191
- package/lib/cjs/function/algebra/{simplify/simplifyCore.js → simplifyCore.js} +83 -31
- package/lib/cjs/function/algebra/solver/lsolveAll.js +2 -2
- package/lib/cjs/function/algebra/solver/usolveAll.js +2 -2
- package/lib/cjs/function/arithmetic/ceil.js +3 -3
- package/lib/cjs/function/arithmetic/floor.js +3 -3
- package/lib/cjs/function/arithmetic/invmod.js +73 -0
- package/lib/cjs/function/arithmetic/norm.js +1 -1
- package/lib/cjs/function/arithmetic/round.js +1 -1
- package/lib/cjs/function/matrix/eigs/complexEigs.js +5 -5
- package/lib/cjs/function/matrix/matrixFromColumns.js +1 -1
- package/lib/cjs/function/matrix/matrixFromRows.js +1 -1
- package/lib/cjs/function/probability/util/seededRNG.js +2 -2
- package/lib/cjs/function/relational/compareNatural.js +6 -6
- package/lib/cjs/header.js +3 -3
- package/lib/cjs/plain/bignumber/index.js +1 -1
- package/lib/cjs/plain/number/combinations.js +18 -6
- package/lib/cjs/type/bignumber/BigNumber.js +2 -2
- package/lib/cjs/type/bignumber/function/bignumber.js +1 -1
- package/lib/cjs/type/boolean.js +2 -2
- package/lib/cjs/type/complex/Complex.js +14 -14
- package/lib/cjs/type/complex/function/complex.js +1 -1
- package/lib/cjs/type/fraction/Fraction.js +6 -6
- package/lib/cjs/type/fraction/function/fraction.js +1 -1
- package/lib/cjs/type/matrix/DenseMatrix.js +5 -5
- package/lib/cjs/type/matrix/SparseMatrix.js +2 -2
- package/lib/cjs/type/number.js +1 -1
- package/lib/cjs/type/string.js +2 -2
- package/lib/cjs/type/unit/Unit.js +8 -8
- package/lib/cjs/utils/customs.js +2 -2
- package/lib/cjs/utils/emitter.js +1 -1
- package/lib/cjs/utils/function.js +2 -2
- package/lib/cjs/utils/is.js +6 -6
- package/lib/cjs/utils/latex.js +3 -3
- package/lib/cjs/utils/lruQueue.js +1 -1
- package/lib/cjs/utils/map.js +3 -3
- package/lib/cjs/utils/object.js +2 -2
- package/lib/cjs/utils/snapshot.js +7 -7
- package/lib/cjs/utils/string.js +2 -2
- package/lib/cjs/version.js +1 -1
- package/lib/esm/entry/dependenciesAny/dependenciesInvmod.generated.js +24 -0
- package/lib/esm/entry/dependenciesAny/dependenciesLeafCount.generated.js +12 -0
- package/lib/esm/entry/dependenciesAny/dependenciesRationalize.generated.js +12 -0
- package/lib/esm/entry/dependenciesAny/dependenciesResolve.generated.js +18 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplify.generated.js +14 -0
- package/lib/esm/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +40 -0
- package/lib/esm/entry/dependenciesAny.generated.js +4 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesRationalize.generated.js +12 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesResolve.generated.js +18 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplify.generated.js +14 -0
- package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +40 -0
- package/lib/esm/entry/dependenciesNumber.generated.js +2 -0
- package/lib/esm/entry/impureFunctionsAny.generated.js +68 -22
- package/lib/esm/entry/impureFunctionsNumber.generated.js +92 -52
- package/lib/esm/entry/pureFunctionsAny.generated.js +53 -42
- package/lib/esm/entry/pureFunctionsNumber.generated.js +32 -32
- package/lib/esm/expression/Help.js +4 -0
- package/lib/esm/expression/embeddedDocs/core/typed.js +1 -1
- package/lib/esm/expression/embeddedDocs/embeddedDocs.js +10 -1
- package/lib/esm/expression/embeddedDocs/function/algebra/leafCount.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/resolve.js +9 -0
- package/lib/esm/expression/embeddedDocs/function/algebra/simplify.js +1 -1
- package/lib/esm/expression/embeddedDocs/function/algebra/simplifyCore.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/arithmetic/invmod.js +8 -0
- package/lib/esm/expression/embeddedDocs/function/matrix/forEach.js +1 -1
- package/lib/esm/factoriesAny.js +4 -0
- package/lib/esm/factoriesNumber.js +2 -0
- package/lib/esm/function/algebra/leafCount.js +59 -0
- package/lib/esm/function/algebra/rationalize.js +36 -38
- package/lib/esm/function/algebra/resolve.js +95 -0
- package/lib/esm/function/algebra/simplify/simplifyConstant.js +200 -32
- package/lib/esm/function/algebra/simplify/util.js +170 -34
- package/lib/esm/function/algebra/simplify.js +603 -186
- package/lib/esm/function/algebra/{simplify/simplifyCore.js → simplifyCore.js} +75 -31
- package/lib/esm/function/arithmetic/invmod.js +57 -0
- package/lib/esm/header.js +1 -1
- package/lib/esm/plain/number/combinations.js +18 -6
- package/lib/esm/version.js +1 -1
- package/package.json +21 -15
- package/types/index.d.ts +48 -6
- package/lib/cjs/function/algebra/simplify/resolve.js +0 -76
- package/lib/esm/function/algebra/simplify/resolve.js +0 -67
@@ -3,8 +3,8 @@
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
4
4
|
value: true
|
5
5
|
});
|
6
|
-
exports.multinomial = exports.mode = exports.mod = exports.min = exports.median = exports.mean = exports.max = exports.matrix = exports.map = exports.mad = exports.log2 = exports.log1p = exports.log10 = exports.log = exports.leftShift = exports.lcm = exports.largerEq = exports.larger = exports.isZero = exports.isPrime = exports.isPositive = exports.isNumeric = exports.isNegative = exports.isNaN = exports.isInteger = exports.index = exports.hypot = exports.hasNumericValue = exports.gcd = exports.gamma = exports.format = exports.forEach = exports.floor = exports.fix = exports.filter = exports.factorial = exports.expm1 = exports.exp = exports.erf = exports.equalText = exports.equalScalar = exports.equal = exports.e = exports.divideScalar = exports.divide = exports.deepEqual = exports.cube = exports.csch = exports.csc = exports.coth = exports.cot = exports.cosh = exports.cos = exports.composition = exports.compareText = exports.compareNatural = exports.compare = exports.combinationsWithRep = exports.combinations = exports.clone = exports.ceil = exports.cbrt = exports.catalan = exports
|
7
|
-
exports.xor = exports.xgcd = exports.version = exports.variance = exports.unequal = exports.unaryPlus = exports.unaryMinus = exports.typed = exports.typeOf = exports.tau = exports.tanh = exports.tan = exports.sum = exports.subtract = exports.subset = exports.string = exports.stirlingS2 = exports.std = exports.square = exports.sqrt = exports.smallerEq = exports.smaller = exports.size = exports.sinh = exports.sin = exports.sign = exports.sech = exports.sec = exports.round = exports.rightLogShift = exports.rightArithShift = exports.replacer = exports.range = exports.randomInt = exports.random = exports.quantileSeq = exports.prod = exports.print = exports.pow = exports.pickRandom = exports.pi = exports.phi = exports.permutations = exports.partitionSelect = exports.or = exports.numeric = exports.number = exports.nthRoot = exports.not = exports.norm = exports.multiplyScalar = exports.multiply = exports.multinomial = exports.mode = exports.mod = exports.min = exports.median = exports.mean = exports.max = exports.matrix = exports.map = exports.mad = exports.log2 = exports.log1p = exports.log10 = exports.log = exports.leftShift = exports.lcm = exports.largerEq = exports.larger = exports.isZero = exports.isPrime = exports.isPositive = exports.isNumeric = exports.isNegative = exports.isNaN = exports.isInteger = exports.index = exports.hypot = exports.hasNumericValue = exports.gcd = exports.gamma = exports.format = exports.forEach = exports.floor = exports.fix = exports.filter = exports.factorial = exports.expm1 = exports.exp = exports.erf = exports.equalText = exports.equalScalar = exports.equal = exports.e = exports.divideScalar = exports.divide = exports.deepEqual = exports.cube = exports.csch = exports.csc = exports.coth = exports.cot = exports.cosh = exports.cos = exports.composition = exports.compareText = exports.compareNatural = exports.compare = exports.combinationsWithRep = exports.combinations = exports.clone = exports.ceil = exports.cbrt = exports.catalan = exports
|
6
|
+
exports.multinomial = exports.mode = exports.mod = exports.min = exports.median = exports.mean = exports.max = exports.matrix = exports.map = exports.mad = exports.log2 = exports.log1p = exports.log10 = exports.log = exports.leftShift = exports.lcm = exports.largerEq = exports.larger = exports.isZero = exports.isPrime = exports.isPositive = exports.isNumeric = exports.isNegative = exports.isNaN = exports.isInteger = exports.index = exports.hypot = exports.hasNumericValue = exports.gcd = exports.gamma = exports.format = exports.forEach = exports.floor = exports.fix = exports.filter = exports.factorial = exports.expm1 = exports.exp = exports.erf = exports.equalText = exports.equalScalar = exports.equal = exports.e = exports.divideScalar = exports.divide = exports.deepEqual = exports.cube = exports.csch = exports.csc = exports.coth = exports.cot = exports.cosh = exports.cos = exports.composition = exports.compareText = exports.compareNatural = exports.compare = exports.combinationsWithRep = exports.combinations = exports.clone = exports.ceil = exports.cbrt = exports.catalan = exports.boolean = exports.bitXor = exports.bitOr = exports.bitNot = exports.bitAnd = exports.bellNumbers = exports.atanh = exports.atan2 = exports.atan = exports.asinh = exports.asin = exports.asech = exports.asec = exports.apply = exports.and = exports.addScalar = exports.add = exports.acsch = exports.acsc = exports.acoth = exports.acot = exports.acosh = exports.acos = exports.abs = exports._true = exports._null = exports._false = exports._NaN = exports._Infinity = exports.SQRT2 = exports.SQRT1_2 = exports.ResultSet = exports.Range = exports.LOG2E = exports.LOG10E = exports.LN2 = exports.LN10 = void 0;
|
7
|
+
exports.xor = exports.xgcd = exports.version = exports.variance = exports.unequal = exports.unaryPlus = exports.unaryMinus = exports.typed = exports.typeOf = exports.tau = exports.tanh = exports.tan = exports.sum = exports.subtract = exports.subset = exports.string = exports.stirlingS2 = exports.std = exports.square = exports.sqrt = exports.smallerEq = exports.smaller = exports.size = exports.sinh = exports.sin = exports.sign = exports.sech = exports.sec = exports.round = exports.rightLogShift = exports.rightArithShift = exports.replacer = exports.range = exports.randomInt = exports.random = exports.quantileSeq = exports.prod = exports.print = exports.pow = exports.pickRandom = exports.pi = exports.phi = exports.permutations = exports.partitionSelect = exports.or = exports.numeric = exports.number = exports.nthRoot = exports.not = exports.norm = exports.multiplyScalar = exports.multiply = exports.multinomial = exports.mode = exports.mod = exports.min = exports.median = exports.mean = exports.max = exports.matrix = exports.map = exports.mad = exports.log2 = exports.log1p = exports.log10 = exports.log = exports.leftShift = exports.lcm = exports.largerEq = exports.larger = exports.isZero = exports.isPrime = exports.isPositive = exports.isNumeric = exports.isNegative = exports.isNaN = exports.isInteger = exports.index = exports.hypot = exports.hasNumericValue = exports.gcd = exports.gamma = exports.format = exports.forEach = exports.floor = exports.fix = exports.filter = exports.factorial = exports.expm1 = exports.exp = exports.erf = exports.equalText = exports.equalScalar = exports.equal = exports.e = exports.divideScalar = exports.divide = exports.deepEqual = exports.cube = exports.csch = exports.csc = exports.coth = exports.cot = exports.cosh = exports.cos = exports.composition = exports.compareText = exports.compareNatural = exports.compare = exports.combinationsWithRep = exports.combinations = exports.clone = exports.ceil = exports.cbrt = exports.catalan = exports.boolean = exports.bitXor = exports.bitOr = exports.bitNot = exports.bitAnd = exports.bellNumbers = exports.atanh = exports.atan2 = exports.atan = exports.asinh = exports.asin = exports.asech = exports.asec = exports.apply = exports.and = exports.addScalar = exports.add = exports.acsch = exports.acsc = exports.acoth = exports.acot = exports.acosh = exports.acos = exports.abs = exports._true = exports._null = exports._false = exports._NaN = exports._Infinity = exports.SQRT2 = exports.SQRT1_2 = exports.ResultSet = exports.Range = exports.LOG2E = exports.LOG10E = exports.LN2 = exports.LN10 = void 0;
|
8
8
|
|
9
9
|
var _configReadonly = require("./configReadonly.js");
|
10
10
|
|
@@ -58,6 +58,8 @@ var Range = /* #__PURE__ */(0, _factoriesNumber.createRangeClass)({});
|
|
58
58
|
exports.Range = Range;
|
59
59
|
var replacer = /* #__PURE__ */(0, _factoriesNumber.createReplacer)({});
|
60
60
|
exports.replacer = replacer;
|
61
|
+
var ResultSet = /* #__PURE__ */(0, _factoriesNumber.createResultSet)({});
|
62
|
+
exports.ResultSet = ResultSet;
|
61
63
|
var SQRT1_2 = /* #__PURE__ */(0, _factoriesNumber.createSQRT1_2)({
|
62
64
|
config: _configReadonly.config
|
63
65
|
});
|
@@ -128,12 +130,10 @@ var bitOr = /* #__PURE__ */(0, _factoriesNumber.createBitOr)({
|
|
128
130
|
typed: typed
|
129
131
|
});
|
130
132
|
exports.bitOr = bitOr;
|
131
|
-
|
132
|
-
var _boolean = /* #__PURE__ */(0, _factoriesNumber.createBoolean)({
|
133
|
+
var boolean = /* #__PURE__ */(0, _factoriesNumber.createBoolean)({
|
133
134
|
typed: typed
|
134
135
|
});
|
135
|
-
|
136
|
-
exports["boolean"] = _boolean;
|
136
|
+
exports.boolean = boolean;
|
137
137
|
var cbrt = /* #__PURE__ */(0, _factoriesNumber.createCbrt)({
|
138
138
|
typed: typed
|
139
139
|
});
|
@@ -284,22 +284,18 @@ var random = /* #__PURE__ */(0, _factoriesNumber.createRandom)({
|
|
284
284
|
typed: typed
|
285
285
|
});
|
286
286
|
exports.random = random;
|
287
|
-
var
|
288
|
-
typed: typed
|
289
|
-
});
|
290
|
-
exports.rightArithShift = rightArithShift;
|
291
|
-
var round = /* #__PURE__ */(0, _factoriesNumber.createRound)({
|
287
|
+
var rightLogShift = /* #__PURE__ */(0, _factoriesNumber.createRightLogShift)({
|
292
288
|
typed: typed
|
293
289
|
});
|
294
|
-
exports.
|
295
|
-
var
|
296
|
-
|
290
|
+
exports.rightLogShift = rightLogShift;
|
291
|
+
var SQRT2 = /* #__PURE__ */(0, _factoriesNumber.createSQRT2)({
|
292
|
+
config: _configReadonly.config
|
297
293
|
});
|
298
|
-
exports.
|
299
|
-
var
|
294
|
+
exports.SQRT2 = SQRT2;
|
295
|
+
var sech = /* #__PURE__ */(0, _factoriesNumber.createSech)({
|
300
296
|
typed: typed
|
301
297
|
});
|
302
|
-
exports.
|
298
|
+
exports.sech = sech;
|
303
299
|
var sin = /* #__PURE__ */(0, _factoriesNumber.createSin)({
|
304
300
|
typed: typed
|
305
301
|
});
|
@@ -424,12 +420,14 @@ var randomInt = /* #__PURE__ */(0, _factoriesNumber.createRandomInt)({
|
|
424
420
|
typed: typed
|
425
421
|
});
|
426
422
|
exports.randomInt = randomInt;
|
427
|
-
var
|
428
|
-
|
429
|
-
var SQRT2 = /* #__PURE__ */(0, _factoriesNumber.createSQRT2)({
|
430
|
-
config: _configReadonly.config
|
423
|
+
var rightArithShift = /* #__PURE__ */(0, _factoriesNumber.createRightArithShift)({
|
424
|
+
typed: typed
|
431
425
|
});
|
432
|
-
exports.
|
426
|
+
exports.rightArithShift = rightArithShift;
|
427
|
+
var sec = /* #__PURE__ */(0, _factoriesNumber.createSec)({
|
428
|
+
typed: typed
|
429
|
+
});
|
430
|
+
exports.sec = sec;
|
433
431
|
var sinh = /* #__PURE__ */(0, _factoriesNumber.createSinh)({
|
434
432
|
typed: typed
|
435
433
|
});
|
@@ -463,21 +461,10 @@ var bitXor = /* #__PURE__ */(0, _factoriesNumber.createBitXor)({
|
|
463
461
|
typed: typed
|
464
462
|
});
|
465
463
|
exports.bitXor = bitXor;
|
466
|
-
var
|
467
|
-
addScalar: addScalar,
|
468
|
-
combinations: combinations,
|
469
|
-
divideScalar: divideScalar,
|
470
|
-
isInteger: isInteger,
|
471
|
-
isNegative: isNegative,
|
472
|
-
multiplyScalar: multiplyScalar,
|
473
|
-
typed: typed
|
474
|
-
});
|
475
|
-
exports.catalan = catalan;
|
476
|
-
var compareNatural = /* #__PURE__ */(0, _factoriesNumber.createCompareNatural)({
|
477
|
-
compare: compare,
|
464
|
+
var clone = /* #__PURE__ */(0, _factoriesNumber.createClone)({
|
478
465
|
typed: typed
|
479
466
|
});
|
480
|
-
exports.
|
467
|
+
exports.clone = clone;
|
481
468
|
var equal = /* #__PURE__ */(0, _factoriesNumber.createEqual)({
|
482
469
|
equalScalar: equalScalar,
|
483
470
|
typed: typed
|
@@ -531,10 +518,10 @@ var quantileSeq = /* #__PURE__ */(0, _factoriesNumber.createQuantileSeq)({
|
|
531
518
|
typed: typed
|
532
519
|
});
|
533
520
|
exports.quantileSeq = quantileSeq;
|
534
|
-
var
|
521
|
+
var round = /* #__PURE__ */(0, _factoriesNumber.createRound)({
|
535
522
|
typed: typed
|
536
523
|
});
|
537
|
-
exports.
|
524
|
+
exports.round = round;
|
538
525
|
var smaller = /* #__PURE__ */(0, _factoriesNumber.createSmaller)({
|
539
526
|
config: _configReadonly.config,
|
540
527
|
typed: typed
|
@@ -576,6 +563,16 @@ var atan2 = /* #__PURE__ */(0, _factoriesNumber.createAtan2)({
|
|
576
563
|
typed: typed
|
577
564
|
});
|
578
565
|
exports.atan2 = atan2;
|
566
|
+
var catalan = /* #__PURE__ */(0, _factoriesNumber.createCatalan)({
|
567
|
+
addScalar: addScalar,
|
568
|
+
combinations: combinations,
|
569
|
+
divideScalar: divideScalar,
|
570
|
+
isInteger: isInteger,
|
571
|
+
isNegative: isNegative,
|
572
|
+
multiplyScalar: multiplyScalar,
|
573
|
+
typed: typed
|
574
|
+
});
|
575
|
+
exports.catalan = catalan;
|
579
576
|
var composition = /* #__PURE__ */(0, _factoriesNumber.createComposition)({
|
580
577
|
addScalar: addScalar,
|
581
578
|
combinations: combinations,
|
@@ -643,20 +640,21 @@ var range = /* #__PURE__ */(0, _factoriesNumber.createRange)({
|
|
643
640
|
typed: typed
|
644
641
|
});
|
645
642
|
exports.range = range;
|
646
|
-
var
|
643
|
+
var sign = /* #__PURE__ */(0, _factoriesNumber.createSign)({
|
647
644
|
typed: typed
|
648
645
|
});
|
649
|
-
exports.
|
646
|
+
exports.sign = sign;
|
650
647
|
var std = /* #__PURE__ */(0, _factoriesNumber.createStd)({
|
651
648
|
sqrt: sqrt,
|
652
649
|
typed: typed,
|
653
650
|
variance: variance
|
654
651
|
});
|
655
652
|
exports.std = std;
|
656
|
-
var
|
653
|
+
var compareNatural = /* #__PURE__ */(0, _factoriesNumber.createCompareNatural)({
|
654
|
+
compare: compare,
|
657
655
|
typed: typed
|
658
656
|
});
|
659
|
-
exports.
|
657
|
+
exports.compareNatural = compareNatural;
|
660
658
|
var coth = /* #__PURE__ */(0, _factoriesNumber.createCoth)({
|
661
659
|
typed: typed
|
662
660
|
});
|
@@ -680,6 +678,13 @@ var prod = /* #__PURE__ */(0, _factoriesNumber.createProd)({
|
|
680
678
|
typed: typed
|
681
679
|
});
|
682
680
|
exports.prod = prod;
|
681
|
+
var sum = /* #__PURE__ */(0, _factoriesNumber.createSum)({
|
682
|
+
add: add,
|
683
|
+
config: _configReadonly.config,
|
684
|
+
numeric: numeric,
|
685
|
+
typed: typed
|
686
|
+
});
|
687
|
+
exports.sum = sum;
|
683
688
|
var bellNumbers = /* #__PURE__ */(0, _factoriesNumber.createBellNumbers)({
|
684
689
|
addScalar: addScalar,
|
685
690
|
isInteger: isInteger,
|
@@ -696,13 +701,6 @@ var mad = /* #__PURE__ */(0, _factoriesNumber.createMad)({
|
|
696
701
|
typed: typed
|
697
702
|
});
|
698
703
|
exports.mad = mad;
|
699
|
-
var sum = /* #__PURE__ */(0, _factoriesNumber.createSum)({
|
700
|
-
add: add,
|
701
|
-
config: _configReadonly.config,
|
702
|
-
numeric: numeric,
|
703
|
-
typed: typed
|
704
|
-
});
|
705
|
-
exports.sum = sum;
|
706
704
|
var max = /* #__PURE__ */(0, _factoriesNumber.createMax)({
|
707
705
|
config: _configReadonly.config,
|
708
706
|
larger: larger,
|
@@ -96,6 +96,10 @@ var createHelpClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
96
96
|
desc += '\n';
|
97
97
|
}
|
98
98
|
|
99
|
+
if (doc.mayThrow && doc.mayThrow.length) {
|
100
|
+
desc += 'Throws: ' + doc.mayThrow.join(', ') + '\n\n';
|
101
|
+
}
|
102
|
+
|
99
103
|
if (doc.seealso && doc.seealso.length) {
|
100
104
|
desc += 'See also: ' + doc.seealso.join(', ') + '\n';
|
101
105
|
}
|
@@ -141,7 +141,7 @@ var createParserClass = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
141
141
|
|
142
142
|
|
143
143
|
Parser.prototype.remove = function (name) {
|
144
|
-
this.scope
|
144
|
+
this.scope.delete(name);
|
145
145
|
};
|
146
146
|
/**
|
147
147
|
* Clear the scope with variables and functions
|
@@ -9,7 +9,7 @@ var typedDocs = {
|
|
9
9
|
category: 'Core',
|
10
10
|
syntax: ['typed(signatures)', 'typed(name, signatures)'],
|
11
11
|
description: 'Create a typed function.',
|
12
|
-
examples: ['double = typed({ "number
|
12
|
+
examples: ['double = typed({ "number": f(x)=x+x })', 'double(2)', 'double("hello")'],
|
13
13
|
seealso: []
|
14
14
|
};
|
15
15
|
exports.typedDocs = typedDocs;
|
@@ -7,6 +7,8 @@ exports.embeddedDocs = void 0;
|
|
7
7
|
|
8
8
|
var _bignumber = require("./construction/bignumber.js");
|
9
9
|
|
10
|
+
var _print = require("./function/utils/print.js");
|
11
|
+
|
10
12
|
var _typeOf = require("./function/utils/typeOf.js");
|
11
13
|
|
12
14
|
var _isZero = require("./function/utils/isZero.js");
|
@@ -279,6 +281,8 @@ var _bitAnd = require("./function/bitwise/bitAnd.js");
|
|
279
281
|
|
280
282
|
var _xgcd = require("./function/arithmetic/xgcd.js");
|
281
283
|
|
284
|
+
var _invmod = require("./function/arithmetic/invmod.js");
|
285
|
+
|
282
286
|
var _unaryPlus = require("./function/arithmetic/unaryPlus.js");
|
283
287
|
|
284
288
|
var _unaryMinus = require("./function/arithmetic/unaryMinus.js");
|
@@ -355,10 +359,16 @@ var _usolveAll = require("./function/algebra/usolveAll.js");
|
|
355
359
|
|
356
360
|
var _slu = require("./function/algebra/slu.js");
|
357
361
|
|
362
|
+
var _leafCount = require("./function/algebra/leafCount.js");
|
363
|
+
|
358
364
|
var _rationalize = require("./function/algebra/rationalize.js");
|
359
365
|
|
360
366
|
var _simplify = require("./function/algebra/simplify.js");
|
361
367
|
|
368
|
+
var _simplifyCore = require("./function/algebra/simplifyCore.js");
|
369
|
+
|
370
|
+
var _resolve = require("./function/algebra/resolve.js");
|
371
|
+
|
362
372
|
var _lup = require("./function/algebra/lup.js");
|
363
373
|
|
364
374
|
var _lsolve = require("./function/algebra/lsolve.js");
|
@@ -452,7 +462,7 @@ var _rotate = require("./function/matrix/rotate.js");
|
|
452
462
|
var embeddedDocs = {
|
453
463
|
// construction functions
|
454
464
|
bignumber: _bignumber.bignumberDocs,
|
455
|
-
|
465
|
+
boolean: _boolean.booleanDocs,
|
456
466
|
complex: _complex.complexDocs,
|
457
467
|
createUnit: _createUnit.createUnitDocs,
|
458
468
|
fraction: _fraction.fractionDocs,
|
@@ -466,7 +476,7 @@ var embeddedDocs = {
|
|
466
476
|
// constants
|
467
477
|
e: _e.eDocs,
|
468
478
|
E: _e.eDocs,
|
469
|
-
|
479
|
+
false: _false.falseDocs,
|
470
480
|
i: _i.iDocs,
|
471
481
|
Infinity: _Infinity.InfinityDocs,
|
472
482
|
LN2: _LN2.LN2Docs,
|
@@ -474,14 +484,14 @@ var embeddedDocs = {
|
|
474
484
|
LOG2E: _LOG2E.LOG2EDocs,
|
475
485
|
LOG10E: _LOG10E.LOG10EDocs,
|
476
486
|
NaN: _NaN.NaNDocs,
|
477
|
-
|
487
|
+
null: _null.nullDocs,
|
478
488
|
pi: _pi.piDocs,
|
479
489
|
PI: _pi.piDocs,
|
480
490
|
phi: _phi.phiDocs,
|
481
491
|
SQRT1_2: _SQRT1_.SQRT12Docs,
|
482
492
|
SQRT2: _SQRT.SQRT2Docs,
|
483
493
|
tau: _tau.tauDocs,
|
484
|
-
|
494
|
+
true: _true.trueDocs,
|
485
495
|
version: _version.versionDocs,
|
486
496
|
// physical constants
|
487
497
|
// TODO: more detailed docs for physical constants
|
@@ -693,7 +703,10 @@ var embeddedDocs = {
|
|
693
703
|
lsolveAll: _lsolveAll.lsolveAllDocs,
|
694
704
|
lup: _lup.lupDocs,
|
695
705
|
lusolve: _lusolve.lusolveDocs,
|
706
|
+
leafCount: _leafCount.leafCountDocs,
|
696
707
|
simplify: _simplify.simplifyDocs,
|
708
|
+
resolve: _resolve.resolveDocs,
|
709
|
+
simplifyCore: _simplifyCore.simplifyCoreDocs,
|
697
710
|
rationalize: _rationalize.rationalizeDocs,
|
698
711
|
slu: _slu.sluDocs,
|
699
712
|
usolve: _usolve.usolveDocs,
|
@@ -736,6 +749,7 @@ var embeddedDocs = {
|
|
736
749
|
unaryMinus: _unaryMinus.unaryMinusDocs,
|
737
750
|
unaryPlus: _unaryPlus.unaryPlusDocs,
|
738
751
|
xgcd: _xgcd.xgcdDocs,
|
752
|
+
invmod: _invmod.invmodDocs,
|
739
753
|
// functions - bitwise
|
740
754
|
bitAnd: _bitAnd.bitAndDocs,
|
741
755
|
bitNot: _bitNot.bitNotDocs,
|
@@ -751,7 +765,7 @@ var embeddedDocs = {
|
|
751
765
|
stirlingS2: _stirlingS.stirlingS2Docs,
|
752
766
|
// functions - core
|
753
767
|
config: _config.configDocs,
|
754
|
-
|
768
|
+
import: _import.importDocs,
|
755
769
|
typed: _typed.typedDocs,
|
756
770
|
// functions - complex
|
757
771
|
arg: _arg.argDocs,
|
@@ -897,7 +911,7 @@ var embeddedDocs = {
|
|
897
911
|
isPositive: _isPositive.isPositiveDocs,
|
898
912
|
isPrime: _isPrime.isPrimeDocs,
|
899
913
|
isZero: _isZero.isZeroDocs,
|
900
|
-
|
914
|
+
print: _print.printDocs,
|
901
915
|
typeOf: _typeOf.typeOfDocs,
|
902
916
|
numeric: _numeric.numericDocs
|
903
917
|
};
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.leafCountDocs = void 0;
|
7
|
+
var leafCountDocs = {
|
8
|
+
name: 'leafCount',
|
9
|
+
category: 'Algebra',
|
10
|
+
syntax: ['leafCount(expr)'],
|
11
|
+
description: 'Computes the number of leaves in the parse tree of the given expression',
|
12
|
+
examples: ['leafCount("e^(i*pi)-1")', 'leafCount(parse("{a: 22/7, b: 10^(1/2)}"))'],
|
13
|
+
seealso: ['simplify']
|
14
|
+
};
|
15
|
+
exports.leafCountDocs = leafCountDocs;
|
@@ -0,0 +1,16 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.resolveDocs = void 0;
|
7
|
+
var resolveDocs = {
|
8
|
+
name: 'resolve',
|
9
|
+
category: 'Algebra',
|
10
|
+
syntax: ['resolve(node, scope)'],
|
11
|
+
description: 'Recursively substitute variables in an expression tree.',
|
12
|
+
examples: ['resolve(parse("1 + x"), { x: 7 })', 'resolve(parse("size(text)"), { text: "Hello World" })', 'resolve(parse("x + y"), { x: parse("3z") })', 'resolve(parse("3x"), { x: parse("y+z"), z: parse("w^y") })'],
|
13
|
+
seealso: ['simplify', 'evaluate'],
|
14
|
+
mayThrow: ['ReferenceError']
|
15
|
+
};
|
16
|
+
exports.resolveDocs = resolveDocs;
|
@@ -10,6 +10,6 @@ var simplifyDocs = {
|
|
10
10
|
syntax: ['simplify(expr)', 'simplify(expr, rules)'],
|
11
11
|
description: 'Simplify an expression tree.',
|
12
12
|
examples: ['simplify("3 + 2 / 4")', 'simplify("2x + x")', 'f = parse("x * (x + 2 + x)")', 'simplified = simplify(f)', 'simplified.evaluate({x: 2})'],
|
13
|
-
seealso: ['derivative', 'parse', '
|
13
|
+
seealso: ['simplifyCore', 'derivative', 'evaluate', 'parse', 'rationalize', 'resolve']
|
14
14
|
};
|
15
15
|
exports.simplifyDocs = simplifyDocs;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.simplifyCoreDocs = void 0;
|
7
|
+
var simplifyCoreDocs = {
|
8
|
+
name: 'simplifyCore',
|
9
|
+
category: 'Algebra',
|
10
|
+
syntax: ['simplifyCore(node)'],
|
11
|
+
description: 'Perform simple one-pass simplifications on an expression tree.',
|
12
|
+
examples: ['simplifyCore(parse("0*x"))', 'simplifyCore(parse("(x+0)*2"))'],
|
13
|
+
seealso: ['simplify', 'evaluate']
|
14
|
+
};
|
15
|
+
exports.simplifyCoreDocs = simplifyCoreDocs;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.invmodDocs = void 0;
|
7
|
+
var invmodDocs = {
|
8
|
+
name: 'invmod',
|
9
|
+
category: 'Arithmetic',
|
10
|
+
syntax: ['invmod(a, b)'],
|
11
|
+
description: 'Calculate the (modular) multiplicative inverse of a modulo b. Solution to the equation ax ≣ 1 (mod b)',
|
12
|
+
examples: ['invmod(8, 12)=NaN', 'invmod(7, 13)=2', 'math.invmod(15151, 15122)=10429'],
|
13
|
+
seealso: ['gcd', 'xgcd']
|
14
|
+
};
|
15
|
+
exports.invmodDocs = invmodDocs;
|
@@ -9,7 +9,7 @@ var forEachDocs = {
|
|
9
9
|
category: 'Matrix',
|
10
10
|
syntax: ['forEach(x, callback)'],
|
11
11
|
description: 'Iterates over all elements of a matrix/array, and executes the given callback function.',
|
12
|
-
examples: [
|
12
|
+
examples: [],
|
13
13
|
seealso: ['map', 'sort', 'filter']
|
14
14
|
};
|
15
15
|
exports.forEachDocs = forEachDocs;
|
@@ -152,7 +152,7 @@ var createFunctionNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
152
152
|
var values = evalArgs.map(function (evalArg) {
|
153
153
|
return evalArg(scope, args, context);
|
154
154
|
});
|
155
|
-
return fn.apply(void 0, (0, _toConsumableArray2
|
155
|
+
return fn.apply(void 0, (0, _toConsumableArray2.default)(values));
|
156
156
|
};
|
157
157
|
}
|
158
158
|
}
|
@@ -270,7 +270,7 @@ var createFunctionNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
270
270
|
var customString;
|
271
271
|
var name = this.fn.toString(options);
|
272
272
|
|
273
|
-
if (options && (0, _typeof2
|
273
|
+
if (options && (0, _typeof2.default)(options.handler) === 'object' && (0, _object.hasOwnProperty)(options.handler, name)) {
|
274
274
|
// callback is a map of callback functions
|
275
275
|
customString = options.handler[name](this, options);
|
276
276
|
}
|
@@ -376,7 +376,7 @@ var createFunctionNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
376
376
|
|
377
377
|
if (match[2] === undefined) {
|
378
378
|
// no square brackets
|
379
|
-
switch ((0, _typeof2
|
379
|
+
switch ((0, _typeof2.default)(property)) {
|
380
380
|
case 'string':
|
381
381
|
latex += property;
|
382
382
|
break;
|
@@ -436,7 +436,7 @@ var createFunctionNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
436
436
|
FunctionNode.prototype.toTex = function (options) {
|
437
437
|
var customTex;
|
438
438
|
|
439
|
-
if (options && (0, _typeof2
|
439
|
+
if (options && (0, _typeof2.default)(options.handler) === 'object' && (0, _object.hasOwnProperty)(options.handler, this.name)) {
|
440
440
|
// callback is a map of callback functions
|
441
441
|
customTex = options.handler[this.name](this, options);
|
442
442
|
}
|
@@ -467,14 +467,14 @@ var createFunctionNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
467
467
|
} // toTex property on the function itself
|
468
468
|
|
469
469
|
|
470
|
-
if (math[this.name] && (typeof math[this.name].toTex === 'function' || (0, _typeof2
|
470
|
+
if (math[this.name] && (typeof math[this.name].toTex === 'function' || (0, _typeof2.default)(math[this.name].toTex) === 'object' || typeof math[this.name].toTex === 'string')) {
|
471
471
|
// .toTex is a callback function
|
472
472
|
latexConverter = math[this.name].toTex;
|
473
473
|
}
|
474
474
|
|
475
475
|
var customToTex;
|
476
476
|
|
477
|
-
switch ((0, _typeof2
|
477
|
+
switch ((0, _typeof2.default)(latexConverter)) {
|
478
478
|
case 'function':
|
479
479
|
// a callback function
|
480
480
|
customToTex = latexConverter(this, options);
|
@@ -487,7 +487,7 @@ var createFunctionNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies
|
|
487
487
|
|
488
488
|
case 'object':
|
489
489
|
// an object with different "converters" for different numbers of arguments
|
490
|
-
switch ((0, _typeof2
|
490
|
+
switch ((0, _typeof2.default)(latexConverter[args.length])) {
|
491
491
|
case 'function':
|
492
492
|
customToTex = latexConverter[args.length](this, options);
|
493
493
|
break;
|
@@ -143,7 +143,7 @@ var createIndexNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, f
|
|
143
143
|
var dimensions = (0, _array.map)(evalDimensions, function (evalDimension) {
|
144
144
|
return evalDimension(scope, args, context);
|
145
145
|
});
|
146
|
-
return index.apply(void 0, (0, _toConsumableArray2
|
146
|
+
return index.apply(void 0, (0, _toConsumableArray2.default)(dimensions));
|
147
147
|
};
|
148
148
|
};
|
149
149
|
/**
|
@@ -367,8 +367,8 @@ var createNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
367
367
|
|
368
368
|
|
369
369
|
Node.prototype._getCustomString = function (options) {
|
370
|
-
if (options && (0, _typeof2
|
371
|
-
switch ((0, _typeof2
|
370
|
+
if (options && (0, _typeof2.default)(options) === 'object') {
|
371
|
+
switch ((0, _typeof2.default)(options.handler)) {
|
372
372
|
case 'object':
|
373
373
|
case 'undefined':
|
374
374
|
return;
|
@@ -407,7 +407,7 @@ var createNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies, functi
|
|
407
407
|
|
408
408
|
|
409
409
|
function _validateScope(scope) {
|
410
|
-
for (var _i = 0, _arr = (0, _toConsumableArray2
|
410
|
+
for (var _i = 0, _arr = (0, _toConsumableArray2.default)(_keywords.keywords); _i < _arr.length; _i++) {
|
411
411
|
var symbol = _arr[_i];
|
412
412
|
|
413
413
|
if (scope.has(symbol)) {
|
@@ -38,7 +38,7 @@ var createObjectNode = /* #__PURE__ */(0, _factory.factory)(name, dependencies,
|
|
38
38
|
this.properties = properties || {}; // validate input
|
39
39
|
|
40
40
|
if (properties) {
|
41
|
-
if (!((0, _typeof2
|
41
|
+
if (!((0, _typeof2.default)(properties) === 'object') || !Object.keys(properties).every(function (key) {
|
42
42
|
return (0, _is.isNode)(properties[key]);
|
43
43
|
})) {
|
44
44
|
throw new TypeError('Object containing Nodes expected');
|
@@ -37,7 +37,7 @@ function accessFactory(_ref) {
|
|
37
37
|
} else if (typeof object === 'string') {
|
38
38
|
// TODO: move getStringSubset into a separate util file, use that
|
39
39
|
return subset(object, index);
|
40
|
-
} else if ((0, _typeof2
|
40
|
+
} else if ((0, _typeof2.default)(object) === 'object') {
|
41
41
|
if (!index.isObjectProperty()) {
|
42
42
|
throw new TypeError('Cannot apply a numeric index as object property');
|
43
43
|
}
|
@@ -42,7 +42,7 @@ function assignFactory(_ref) {
|
|
42
42
|
} else if (typeof object === 'string') {
|
43
43
|
// TODO: move setStringSubset into a separate util file, use that
|
44
44
|
return subset(object, index, value);
|
45
|
-
} else if ((0, _typeof2
|
45
|
+
} else if ((0, _typeof2.default)(object) === 'object') {
|
46
46
|
if (!index.isObjectProperty()) {
|
47
47
|
throw TypeError('Cannot apply a numeric index as object property');
|
48
48
|
}
|
@@ -153,16 +153,16 @@ var createParse = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
153
153
|
var NAMED_DELIMITERS = {
|
154
154
|
mod: true,
|
155
155
|
to: true,
|
156
|
-
|
156
|
+
in: true,
|
157
157
|
and: true,
|
158
158
|
xor: true,
|
159
159
|
or: true,
|
160
160
|
not: true
|
161
161
|
};
|
162
162
|
var CONSTANTS = {
|
163
|
-
|
164
|
-
|
165
|
-
|
163
|
+
true: true,
|
164
|
+
false: false,
|
165
|
+
null: null,
|
166
166
|
undefined: undefined
|
167
167
|
};
|
168
168
|
var NUMERIC_CONSTANTS = ['NaN', 'Infinity'];
|
@@ -584,7 +584,7 @@ var createParse = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
584
584
|
|
585
585
|
function parseStart(expression, extraNodes) {
|
586
586
|
var state = initialState();
|
587
|
-
(0, _extends2
|
587
|
+
(0, _extends2.default)(state, {
|
588
588
|
expression: expression,
|
589
589
|
extraNodes: extraNodes
|
590
590
|
});
|
@@ -930,7 +930,7 @@ var createParse = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
930
930
|
node = parseRange(state);
|
931
931
|
var operators = {
|
932
932
|
to: 'to',
|
933
|
-
|
933
|
+
in: 'to' // alias of 'to'
|
934
934
|
|
935
935
|
};
|
936
936
|
|
@@ -1112,30 +1112,30 @@ var createParse = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
1112
1112
|
// Match the "number /" part of the pattern "number / number symbol"
|
1113
1113
|
if (state.token === '/' && (0, _is.isConstantNode)(last)) {
|
1114
1114
|
// Look ahead to see if the next token is a number
|
1115
|
-
tokenStates.push((0, _extends2
|
1115
|
+
tokenStates.push((0, _extends2.default)({}, state));
|
1116
1116
|
getTokenSkipNewline(state); // Match the "number / number" part of the pattern
|
1117
1117
|
|
1118
1118
|
if (state.tokenType === TOKENTYPE.NUMBER) {
|
1119
1119
|
// Look ahead again
|
1120
|
-
tokenStates.push((0, _extends2
|
1120
|
+
tokenStates.push((0, _extends2.default)({}, state));
|
1121
1121
|
getTokenSkipNewline(state); // Match the "symbol" part of the pattern, or a left parenthesis
|
1122
1122
|
|
1123
1123
|
if (state.tokenType === TOKENTYPE.SYMBOL || state.token === '(') {
|
1124
1124
|
// We've matched the pattern "number / number symbol".
|
1125
1125
|
// Rewind once and build the "number / number" node; the symbol will be consumed later
|
1126
|
-
(0, _extends2
|
1126
|
+
(0, _extends2.default)(state, tokenStates.pop());
|
1127
1127
|
tokenStates.pop();
|
1128
1128
|
last = parsePercentage(state);
|
1129
1129
|
node = new OperatorNode('/', 'divide', [node, last]);
|
1130
1130
|
} else {
|
1131
1131
|
// Not a match, so rewind
|
1132
1132
|
tokenStates.pop();
|
1133
|
-
(0, _extends2
|
1133
|
+
(0, _extends2.default)(state, tokenStates.pop());
|
1134
1134
|
break;
|
1135
1135
|
}
|
1136
1136
|
} else {
|
1137
1137
|
// Not a match, so rewind
|
1138
|
-
(0, _extends2
|
1138
|
+
(0, _extends2.default)(state, tokenStates.pop());
|
1139
1139
|
break;
|
1140
1140
|
}
|
1141
1141
|
} else {
|
@@ -1783,7 +1783,7 @@ var createParse = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
1783
1783
|
function createSyntaxError(state, message) {
|
1784
1784
|
var c = col(state);
|
1785
1785
|
var error = new SyntaxError(message + ' (char ' + c + ')');
|
1786
|
-
error
|
1786
|
+
error.char = c;
|
1787
1787
|
return error;
|
1788
1788
|
}
|
1789
1789
|
/**
|
@@ -1798,7 +1798,7 @@ var createParse = /* #__PURE__ */(0, _factory.factory)(name, dependencies, funct
|
|
1798
1798
|
function createError(state, message) {
|
1799
1799
|
var c = col(state);
|
1800
1800
|
var error = new SyntaxError(message + ' (char ' + c + ')');
|
1801
|
-
error
|
1801
|
+
error.char = c;
|
1802
1802
|
return error;
|
1803
1803
|
}
|
1804
1804
|
|