mathjs 10.1.1 → 10.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (325) hide show
  1. package/HISTORY.md +17 -0
  2. package/docs/expressions/algebra.md +27 -0
  3. package/docs/reference/functions/abs.md +6 -0
  4. package/docs/reference/functions/acos.md +6 -0
  5. package/docs/reference/functions/acosh.md +6 -0
  6. package/docs/reference/functions/acot.md +6 -0
  7. package/docs/reference/functions/acoth.md +6 -0
  8. package/docs/reference/functions/acsc.md +6 -0
  9. package/docs/reference/functions/acsch.md +6 -0
  10. package/docs/reference/functions/add.md +6 -0
  11. package/docs/reference/functions/and.md +6 -0
  12. package/docs/reference/functions/apply.md +6 -0
  13. package/docs/reference/functions/arg.md +6 -0
  14. package/docs/reference/functions/asec.md +6 -0
  15. package/docs/reference/functions/asech.md +6 -0
  16. package/docs/reference/functions/asin.md +6 -0
  17. package/docs/reference/functions/asinh.md +6 -0
  18. package/docs/reference/functions/atan.md +6 -0
  19. package/docs/reference/functions/atan2.md +6 -0
  20. package/docs/reference/functions/atanh.md +6 -0
  21. package/docs/reference/functions/bellNumbers.md +6 -0
  22. package/docs/reference/functions/bin.md +6 -0
  23. package/docs/reference/functions/bitAnd.md +6 -0
  24. package/docs/reference/functions/bitNot.md +6 -0
  25. package/docs/reference/functions/bitOr.md +6 -0
  26. package/docs/reference/functions/bitXor.md +6 -0
  27. package/docs/reference/functions/catalan.md +6 -0
  28. package/docs/reference/functions/cbrt.md +6 -0
  29. package/docs/reference/functions/ceil.md +6 -0
  30. package/docs/reference/functions/clone.md +6 -0
  31. package/docs/reference/functions/column.md +6 -0
  32. package/docs/reference/functions/combinations.md +6 -0
  33. package/docs/reference/functions/combinationsWithRep.md +6 -0
  34. package/docs/reference/functions/compare.md +6 -0
  35. package/docs/reference/functions/compareNatural.md +6 -0
  36. package/docs/reference/functions/compareText.md +6 -0
  37. package/docs/reference/functions/compile.md +6 -0
  38. package/docs/reference/functions/composition.md +6 -0
  39. package/docs/reference/functions/concat.md +6 -0
  40. package/docs/reference/functions/conj.md +6 -0
  41. package/docs/reference/functions/cos.md +6 -0
  42. package/docs/reference/functions/cosh.md +6 -0
  43. package/docs/reference/functions/cot.md +6 -0
  44. package/docs/reference/functions/coth.md +6 -0
  45. package/docs/reference/functions/count.md +6 -0
  46. package/docs/reference/functions/cross.md +6 -0
  47. package/docs/reference/functions/csc.md +6 -0
  48. package/docs/reference/functions/csch.md +6 -0
  49. package/docs/reference/functions/ctranspose.md +6 -0
  50. package/docs/reference/functions/cube.md +6 -0
  51. package/docs/reference/functions/deepEqual.md +6 -0
  52. package/docs/reference/functions/derivative.md +6 -0
  53. package/docs/reference/functions/det.md +6 -0
  54. package/docs/reference/functions/diag.md +6 -0
  55. package/docs/reference/functions/diff.md +6 -0
  56. package/docs/reference/functions/distance.md +6 -0
  57. package/docs/reference/functions/divide.md +6 -0
  58. package/docs/reference/functions/dot.md +6 -0
  59. package/docs/reference/functions/dotDivide.md +6 -0
  60. package/docs/reference/functions/dotMultiply.md +6 -0
  61. package/docs/reference/functions/dotPow.md +6 -0
  62. package/docs/reference/functions/eigs.md +6 -0
  63. package/docs/reference/functions/equal.md +6 -0
  64. package/docs/reference/functions/equalText.md +6 -0
  65. package/docs/reference/functions/erf.md +6 -0
  66. package/docs/reference/functions/evaluate.md +6 -0
  67. package/docs/reference/functions/exp.md +6 -0
  68. package/docs/reference/functions/expm.md +6 -0
  69. package/docs/reference/functions/expm1.md +6 -0
  70. package/docs/reference/functions/factorial.md +6 -0
  71. package/docs/reference/functions/filter.md +6 -0
  72. package/docs/reference/functions/fix.md +6 -0
  73. package/docs/reference/functions/flatten.md +6 -0
  74. package/docs/reference/functions/floor.md +6 -0
  75. package/docs/reference/functions/forEach.md +6 -0
  76. package/docs/reference/functions/format.md +6 -0
  77. package/docs/reference/functions/gamma.md +6 -0
  78. package/docs/reference/functions/gcd.md +6 -0
  79. package/docs/reference/functions/getMatrixDataType.md +6 -0
  80. package/docs/reference/functions/hasNumericValue.md +6 -0
  81. package/docs/reference/functions/help.md +6 -0
  82. package/docs/reference/functions/hex.md +6 -0
  83. package/docs/reference/functions/hypot.md +6 -0
  84. package/docs/reference/functions/identity.md +6 -0
  85. package/docs/reference/functions/im.md +6 -0
  86. package/docs/reference/functions/intersect.md +6 -0
  87. package/docs/reference/functions/inv.md +6 -0
  88. package/docs/reference/functions/invmod.md +6 -0
  89. package/docs/reference/functions/isInteger.md +6 -0
  90. package/docs/reference/functions/isNaN.md +6 -0
  91. package/docs/reference/functions/isNegative.md +6 -0
  92. package/docs/reference/functions/isNumeric.md +6 -0
  93. package/docs/reference/functions/isPositive.md +6 -0
  94. package/docs/reference/functions/isPrime.md +6 -0
  95. package/docs/reference/functions/isZero.md +6 -0
  96. package/docs/reference/functions/kldivergence.md +6 -0
  97. package/docs/reference/functions/kron.md +6 -0
  98. package/docs/reference/functions/larger.md +6 -0
  99. package/docs/reference/functions/largerEq.md +6 -0
  100. package/docs/reference/functions/lcm.md +6 -0
  101. package/docs/reference/functions/leafCount.md +52 -0
  102. package/docs/reference/functions/leftShift.md +6 -0
  103. package/docs/reference/functions/log.md +6 -0
  104. package/docs/reference/functions/log10.md +6 -0
  105. package/docs/reference/functions/log1p.md +6 -0
  106. package/docs/reference/functions/log2.md +6 -0
  107. package/docs/reference/functions/lsolve.md +6 -0
  108. package/docs/reference/functions/lsolveAll.md +6 -0
  109. package/docs/reference/functions/lup.md +6 -0
  110. package/docs/reference/functions/lusolve.md +6 -0
  111. package/docs/reference/functions/mad.md +6 -0
  112. package/docs/reference/functions/map.md +6 -0
  113. package/docs/reference/functions/matrixFromColumns.md +6 -0
  114. package/docs/reference/functions/matrixFromFunction.md +6 -0
  115. package/docs/reference/functions/matrixFromRows.md +6 -0
  116. package/docs/reference/functions/max.md +6 -0
  117. package/docs/reference/functions/mean.md +6 -0
  118. package/docs/reference/functions/median.md +6 -0
  119. package/docs/reference/functions/min.md +6 -0
  120. package/docs/reference/functions/mod.md +6 -0
  121. package/docs/reference/functions/mode.md +6 -0
  122. package/docs/reference/functions/multinomial.md +6 -0
  123. package/docs/reference/functions/multiply.md +6 -0
  124. package/docs/reference/functions/norm.md +6 -0
  125. package/docs/reference/functions/not.md +6 -0
  126. package/docs/reference/functions/nthRoot.md +6 -0
  127. package/docs/reference/functions/nthRoots.md +6 -0
  128. package/docs/reference/functions/numeric.md +6 -0
  129. package/docs/reference/functions/oct.md +6 -0
  130. package/docs/reference/functions/ones.md +6 -0
  131. package/docs/reference/functions/or.md +6 -0
  132. package/docs/reference/functions/parser.md +6 -0
  133. package/docs/reference/functions/partitionSelect.md +6 -0
  134. package/docs/reference/functions/permutations.md +6 -0
  135. package/docs/reference/functions/pickRandom.md +6 -0
  136. package/docs/reference/functions/pow.md +6 -0
  137. package/docs/reference/functions/print.md +6 -0
  138. package/docs/reference/functions/prod.md +6 -0
  139. package/docs/reference/functions/qr.md +6 -0
  140. package/docs/reference/functions/quantileSeq.md +6 -0
  141. package/docs/reference/functions/random.md +6 -0
  142. package/docs/reference/functions/randomInt.md +6 -0
  143. package/docs/reference/functions/range.md +6 -0
  144. package/docs/reference/functions/rationalize.md +7 -1
  145. package/docs/reference/functions/re.md +6 -0
  146. package/docs/reference/functions/reshape.md +7 -0
  147. package/docs/reference/functions/resize.md +6 -0
  148. package/docs/reference/functions/resolve.md +46 -0
  149. package/docs/reference/functions/rightArithShift.md +6 -0
  150. package/docs/reference/functions/rightLogShift.md +6 -0
  151. package/docs/reference/functions/rotate.md +6 -0
  152. package/docs/reference/functions/rotationMatrix.md +6 -0
  153. package/docs/reference/functions/round.md +6 -0
  154. package/docs/reference/functions/row.md +6 -0
  155. package/docs/reference/functions/sec.md +6 -0
  156. package/docs/reference/functions/sech.md +6 -0
  157. package/docs/reference/functions/setCartesian.md +6 -0
  158. package/docs/reference/functions/setDifference.md +6 -0
  159. package/docs/reference/functions/setDistinct.md +6 -0
  160. package/docs/reference/functions/setIntersect.md +6 -0
  161. package/docs/reference/functions/setIsSubset.md +6 -0
  162. package/docs/reference/functions/setMultiplicity.md +6 -0
  163. package/docs/reference/functions/setPowerset.md +6 -0
  164. package/docs/reference/functions/setSize.md +6 -0
  165. package/docs/reference/functions/setSymDifference.md +6 -0
  166. package/docs/reference/functions/setUnion.md +6 -0
  167. package/docs/reference/functions/sign.md +6 -0
  168. package/docs/reference/functions/simplify.md +43 -6
  169. package/docs/reference/functions/simplifyCore.md +50 -0
  170. package/docs/reference/functions/sin.md +6 -0
  171. package/docs/reference/functions/sinh.md +6 -0
  172. package/docs/reference/functions/size.md +6 -0
  173. package/docs/reference/functions/slu.md +6 -0
  174. package/docs/reference/functions/smaller.md +6 -0
  175. package/docs/reference/functions/smallerEq.md +6 -0
  176. package/docs/reference/functions/sort.md +6 -0
  177. package/docs/reference/functions/sqrt.md +6 -0
  178. package/docs/reference/functions/sqrtm.md +6 -0
  179. package/docs/reference/functions/square.md +6 -0
  180. package/docs/reference/functions/squeeze.md +6 -0
  181. package/docs/reference/functions/std.md +6 -0
  182. package/docs/reference/functions/stirlingS2.md +6 -0
  183. package/docs/reference/functions/subset.md +6 -0
  184. package/docs/reference/functions/subtract.md +6 -0
  185. package/docs/reference/functions/sum.md +6 -0
  186. package/docs/reference/functions/tan.md +6 -0
  187. package/docs/reference/functions/tanh.md +6 -0
  188. package/docs/reference/functions/to.md +6 -0
  189. package/docs/reference/functions/trace.md +6 -0
  190. package/docs/reference/functions/transpose.md +6 -0
  191. package/docs/reference/functions/typeOf.md +6 -0
  192. package/docs/reference/functions/unaryMinus.md +6 -0
  193. package/docs/reference/functions/unaryPlus.md +6 -0
  194. package/docs/reference/functions/unequal.md +6 -0
  195. package/docs/reference/functions/usolve.md +6 -0
  196. package/docs/reference/functions/usolveAll.md +6 -0
  197. package/docs/reference/functions/variance.md +6 -0
  198. package/docs/reference/functions/xgcd.md +6 -0
  199. package/docs/reference/functions/xor.md +6 -0
  200. package/docs/reference/functions/zeros.md +6 -0
  201. package/docs/reference/functions.md +3 -0
  202. package/lib/browser/math.js +6 -6
  203. package/lib/browser/math.js.map +1 -1
  204. package/lib/cjs/core/create.js +4 -4
  205. package/lib/cjs/core/function/import.js +3 -3
  206. package/lib/cjs/core/function/typed.js +2 -2
  207. package/lib/cjs/defaultInstance.js +3 -3
  208. package/lib/cjs/entry/allFactoriesAny.js +1 -1
  209. package/lib/cjs/entry/allFactoriesNumber.js +1 -1
  210. package/lib/cjs/entry/configReadonly.js +1 -1
  211. package/lib/cjs/entry/dependenciesAny/dependenciesLeafCount.generated.js +23 -0
  212. package/lib/cjs/entry/dependenciesAny/dependenciesRationalize.generated.js +3 -0
  213. package/lib/cjs/entry/dependenciesAny/dependenciesResolve.generated.js +32 -0
  214. package/lib/cjs/entry/dependenciesAny/dependenciesSimplify.generated.js +6 -0
  215. package/lib/cjs/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +65 -0
  216. package/lib/cjs/entry/dependenciesAny.generated.js +24 -0
  217. package/lib/cjs/entry/dependenciesNumber/dependenciesRationalize.generated.js +3 -0
  218. package/lib/cjs/entry/dependenciesNumber/dependenciesResolve.generated.js +32 -0
  219. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplify.generated.js +6 -0
  220. package/lib/cjs/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +65 -0
  221. package/lib/cjs/entry/dependenciesNumber.generated.js +16 -0
  222. package/lib/cjs/entry/impureFunctionsAny.generated.js +67 -29
  223. package/lib/cjs/entry/impureFunctionsNumber.generated.js +96 -64
  224. package/lib/cjs/entry/pureFunctionsAny.generated.js +53 -55
  225. package/lib/cjs/entry/pureFunctionsNumber.generated.js +46 -48
  226. package/lib/cjs/expression/Help.js +4 -0
  227. package/lib/cjs/expression/Parser.js +1 -1
  228. package/lib/cjs/expression/embeddedDocs/core/typed.js +1 -1
  229. package/lib/cjs/expression/embeddedDocs/embeddedDocs.js +14 -5
  230. package/lib/cjs/expression/embeddedDocs/function/algebra/leafCount.js +15 -0
  231. package/lib/cjs/expression/embeddedDocs/function/algebra/resolve.js +16 -0
  232. package/lib/cjs/expression/embeddedDocs/function/algebra/simplify.js +1 -1
  233. package/lib/cjs/expression/embeddedDocs/function/algebra/simplifyCore.js +15 -0
  234. package/lib/cjs/expression/node/FunctionNode.js +7 -7
  235. package/lib/cjs/expression/node/IndexNode.js +1 -1
  236. package/lib/cjs/expression/node/Node.js +3 -3
  237. package/lib/cjs/expression/node/ObjectNode.js +1 -1
  238. package/lib/cjs/expression/node/utils/access.js +1 -1
  239. package/lib/cjs/expression/node/utils/assign.js +1 -1
  240. package/lib/cjs/expression/parse.js +13 -13
  241. package/lib/cjs/factoriesAny.js +24 -0
  242. package/lib/cjs/factoriesNumber.js +16 -0
  243. package/lib/cjs/function/algebra/decomposition/qr.js +1 -1
  244. package/lib/cjs/function/algebra/leafCount.js +66 -0
  245. package/lib/cjs/function/algebra/rationalize.js +24 -41
  246. package/lib/cjs/function/algebra/resolve.js +106 -0
  247. package/lib/cjs/function/algebra/simplify/simplifyConstant.js +5 -5
  248. package/lib/cjs/function/algebra/simplify/util.js +171 -33
  249. package/lib/cjs/function/algebra/simplify.js +554 -207
  250. package/lib/cjs/function/algebra/{simplify/simplifyCore.js → simplifyCore.js} +67 -43
  251. package/lib/cjs/function/algebra/solver/lsolveAll.js +2 -2
  252. package/lib/cjs/function/algebra/solver/usolveAll.js +2 -2
  253. package/lib/cjs/function/arithmetic/ceil.js +3 -3
  254. package/lib/cjs/function/arithmetic/floor.js +3 -3
  255. package/lib/cjs/function/arithmetic/invmod.js +1 -1
  256. package/lib/cjs/function/arithmetic/norm.js +1 -1
  257. package/lib/cjs/function/arithmetic/round.js +1 -1
  258. package/lib/cjs/function/matrix/eigs/complexEigs.js +5 -5
  259. package/lib/cjs/function/matrix/matrixFromColumns.js +1 -1
  260. package/lib/cjs/function/matrix/matrixFromRows.js +1 -1
  261. package/lib/cjs/function/probability/util/seededRNG.js +2 -2
  262. package/lib/cjs/function/relational/compareNatural.js +6 -6
  263. package/lib/cjs/header.js +2 -2
  264. package/lib/cjs/plain/bignumber/index.js +1 -1
  265. package/lib/cjs/plain/number/combinations.js +18 -6
  266. package/lib/cjs/type/bignumber/BigNumber.js +2 -2
  267. package/lib/cjs/type/bignumber/function/bignumber.js +1 -1
  268. package/lib/cjs/type/boolean.js +2 -2
  269. package/lib/cjs/type/complex/Complex.js +14 -14
  270. package/lib/cjs/type/complex/function/complex.js +1 -1
  271. package/lib/cjs/type/fraction/Fraction.js +6 -6
  272. package/lib/cjs/type/fraction/function/fraction.js +1 -1
  273. package/lib/cjs/type/matrix/DenseMatrix.js +5 -5
  274. package/lib/cjs/type/matrix/SparseMatrix.js +2 -2
  275. package/lib/cjs/type/number.js +1 -1
  276. package/lib/cjs/type/string.js +2 -2
  277. package/lib/cjs/type/unit/Unit.js +8 -8
  278. package/lib/cjs/utils/customs.js +2 -2
  279. package/lib/cjs/utils/emitter.js +1 -1
  280. package/lib/cjs/utils/function.js +2 -2
  281. package/lib/cjs/utils/is.js +6 -6
  282. package/lib/cjs/utils/latex.js +3 -3
  283. package/lib/cjs/utils/lruQueue.js +1 -1
  284. package/lib/cjs/utils/map.js +3 -3
  285. package/lib/cjs/utils/object.js +2 -2
  286. package/lib/cjs/utils/snapshot.js +7 -7
  287. package/lib/cjs/utils/string.js +2 -2
  288. package/lib/cjs/version.js +1 -1
  289. package/lib/esm/entry/dependenciesAny/dependenciesLeafCount.generated.js +12 -0
  290. package/lib/esm/entry/dependenciesAny/dependenciesRationalize.generated.js +2 -0
  291. package/lib/esm/entry/dependenciesAny/dependenciesResolve.generated.js +18 -0
  292. package/lib/esm/entry/dependenciesAny/dependenciesSimplify.generated.js +4 -0
  293. package/lib/esm/entry/dependenciesAny/dependenciesSimplifyCore.generated.js +40 -0
  294. package/lib/esm/entry/dependenciesAny.generated.js +3 -0
  295. package/lib/esm/entry/dependenciesNumber/dependenciesRationalize.generated.js +2 -0
  296. package/lib/esm/entry/dependenciesNumber/dependenciesResolve.generated.js +18 -0
  297. package/lib/esm/entry/dependenciesNumber/dependenciesSimplify.generated.js +4 -0
  298. package/lib/esm/entry/dependenciesNumber/dependenciesSimplifyCore.generated.js +40 -0
  299. package/lib/esm/entry/dependenciesNumber.generated.js +2 -0
  300. package/lib/esm/entry/impureFunctionsAny.generated.js +57 -22
  301. package/lib/esm/entry/impureFunctionsNumber.generated.js +83 -53
  302. package/lib/esm/entry/pureFunctionsAny.generated.js +42 -42
  303. package/lib/esm/entry/pureFunctionsNumber.generated.js +32 -32
  304. package/lib/esm/expression/Help.js +4 -0
  305. package/lib/esm/expression/embeddedDocs/core/typed.js +1 -1
  306. package/lib/esm/expression/embeddedDocs/embeddedDocs.js +6 -0
  307. package/lib/esm/expression/embeddedDocs/function/algebra/leafCount.js +8 -0
  308. package/lib/esm/expression/embeddedDocs/function/algebra/resolve.js +9 -0
  309. package/lib/esm/expression/embeddedDocs/function/algebra/simplify.js +1 -1
  310. package/lib/esm/expression/embeddedDocs/function/algebra/simplifyCore.js +8 -0
  311. package/lib/esm/factoriesAny.js +3 -0
  312. package/lib/esm/factoriesNumber.js +2 -0
  313. package/lib/esm/function/algebra/leafCount.js +59 -0
  314. package/lib/esm/function/algebra/rationalize.js +24 -40
  315. package/lib/esm/function/algebra/resolve.js +95 -0
  316. package/lib/esm/function/algebra/simplify/simplifyConstant.js +3 -3
  317. package/lib/esm/function/algebra/simplify/util.js +170 -34
  318. package/lib/esm/function/algebra/simplify.js +549 -202
  319. package/lib/esm/function/algebra/{simplify/simplifyCore.js → simplifyCore.js} +60 -44
  320. package/lib/esm/plain/number/combinations.js +18 -6
  321. package/lib/esm/version.js +1 -1
  322. package/package.json +15 -10
  323. package/types/index.d.ts +44 -2
  324. package/lib/cjs/function/algebra/simplify/resolve.js +0 -76
  325. package/lib/esm/function/algebra/simplify/resolve.js +0 -67
@@ -25,6 +25,12 @@ Type | Description
25
25
  number | Returns distance between q and p
26
26
 
27
27
 
28
+ ### Throws
29
+
30
+ Type | Description
31
+ ---- | -----------
32
+
33
+
28
34
  ## Examples
29
35
 
30
36
  ```js
@@ -29,6 +29,12 @@ Type | Description
29
29
  Array | Matrix | Returns the kronecker product of `x` and `y`
30
30
 
31
31
 
32
+ ### Throws
33
+
34
+ Type | Description
35
+ ---- | -----------
36
+
37
+
32
38
  ## Examples
33
39
 
34
40
  ```js
@@ -32,6 +32,12 @@ Type | Description
32
32
  boolean | Array | Matrix | Returns true when the x is larger than y, else returns false
33
33
 
34
34
 
35
+ ### Throws
36
+
37
+ Type | Description
38
+ ---- | -----------
39
+
40
+
35
41
  ## Examples
36
42
 
37
43
  ```js
@@ -32,6 +32,12 @@ Type | Description
32
32
  boolean | Array | Matrix | Returns true when the x is larger or equal to y, else returns false
33
33
 
34
34
 
35
+ ### Throws
36
+
37
+ Type | Description
38
+ ---- | -----------
39
+
40
+
35
41
  ## Examples
36
42
 
37
43
  ```js
@@ -31,6 +31,12 @@ Type | Description
31
31
  number | BigNumber | Array | Matrix | The least common multiple
32
32
 
33
33
 
34
+ ### Throws
35
+
36
+ Type | Description
37
+ ---- | -----------
38
+
39
+
34
40
  ## Examples
35
41
 
36
42
  ```js
@@ -0,0 +1,52 @@
1
+ <!-- Note: This file is automatically generated from source code comments. Changes made in this file will be overridden. -->
2
+
3
+ # Function leafCount
4
+
5
+ Gives the number of "leaf nodes" in the parse tree of the given expression
6
+ A leaf node is one that has no subexpressions, essentially either a
7
+ symbol or a constant. Note that `5!` has just one leaf, the '5'; the
8
+ unary factorial operator does not add a leaf. On the other hand,
9
+ function symbols do add leaves, so `sin(x)/cos(x)` has four leaves.
10
+
11
+ The `simplify()` function should generally not increase the `leafCount()`
12
+ of an expression, although currently there is no guarantee that it never
13
+ does so. In many cases, `simplify()` reduces the leaf count.
14
+
15
+
16
+ ## Syntax
17
+
18
+ ```js
19
+ leafCount(expr)
20
+ ```
21
+
22
+ ### Parameters
23
+
24
+ Parameter | Type | Description
25
+ --------- | ---- | -----------
26
+ `expr` | Node &#124; string | The expression to count the leaves of
27
+
28
+ ### Returns
29
+
30
+ Type | Description
31
+ ---- | -----------
32
+ number | The number of leaves of `expr`
33
+
34
+
35
+ ### Throws
36
+
37
+ Type | Description
38
+ ---- | -----------
39
+
40
+
41
+ ## Examples
42
+
43
+ ```js
44
+ math.leafCount('x') // 1
45
+ math.leafCount(math.parse('a*d-b*c')) // 4
46
+ math.leafCount('[a,b;c,d][0,1]') // 6
47
+ ```
48
+
49
+
50
+ ## See also
51
+
52
+ [simplify](simplify.md)
@@ -27,6 +27,12 @@ Type | Description
27
27
  number &#124; BigNumber &#124; Array &#124; Matrix | `x` shifted left `y` times
28
28
 
29
29
 
30
+ ### Throws
31
+
32
+ Type | Description
33
+ ---- | -----------
34
+
35
+
30
36
  ## Examples
31
37
 
32
38
  ```js
@@ -28,6 +28,12 @@ Type | Description
28
28
  number &#124; BigNumber &#124; Complex &#124; Array &#124; Matrix | Returns the logarithm of `x`
29
29
 
30
30
 
31
+ ### Throws
32
+
33
+ Type | Description
34
+ ---- | -----------
35
+
36
+
31
37
  ## Examples
32
38
 
33
39
  ```js
@@ -26,6 +26,12 @@ Type | Description
26
26
  number &#124; BigNumber &#124; Complex &#124; Array &#124; Matrix | Returns the 10-base logarithm of `x`
27
27
 
28
28
 
29
+ ### Throws
30
+
31
+ Type | Description
32
+ ---- | -----------
33
+
34
+
29
35
  ## Examples
30
36
 
31
37
  ```js
@@ -28,6 +28,12 @@ Type | Description
28
28
  number &#124; BigNumber &#124; Complex &#124; Array &#124; Matrix | Returns the logarithm of `x+1`
29
29
 
30
30
 
31
+ ### Throws
32
+
33
+ Type | Description
34
+ ---- | -----------
35
+
36
+
31
37
  ## Examples
32
38
 
33
39
  ```js
@@ -26,6 +26,12 @@ Type | Description
26
26
  number &#124; BigNumber &#124; Complex &#124; Array &#124; Matrix | Returns the 2-base logarithm of `x`
27
27
 
28
28
 
29
+ ### Throws
30
+
31
+ Type | Description
32
+ ---- | -----------
33
+
34
+
29
35
  ## Examples
30
36
 
31
37
  ```js
@@ -27,6 +27,12 @@ Type | Description
27
27
  DenseMatrix &#124; Array | A column vector with the linear system solution (x)
28
28
 
29
29
 
30
+ ### Throws
31
+
32
+ Type | Description
33
+ ---- | -----------
34
+
35
+
30
36
  ## Examples
31
37
 
32
38
  ```js
@@ -27,6 +27,12 @@ Type | Description
27
27
  DenseMatrix[] &#124; Array[] | An array of affine-independent column vectors (x) that solve the linear system
28
28
 
29
29
 
30
+ ### Throws
31
+
32
+ Type | Description
33
+ ---- | -----------
34
+
35
+
30
36
  ## Examples
31
37
 
32
38
  ```js
@@ -25,6 +25,12 @@ Type | Description
25
25
  {L: Array &#124; Matrix, U: Array &#124; Matrix, P: Array.&lt;number&gt;} | The lower triangular matrix, the upper triangular matrix and the permutation matrix.
26
26
 
27
27
 
28
+ ### Throws
29
+
30
+ Type | Description
31
+ ---- | -----------
32
+
33
+
28
34
  ## Examples
29
35
 
30
36
  ```js
@@ -28,6 +28,12 @@ Type | Description
28
28
  DenseMatrix &#124; Array | Column vector with the solution to the linear system A * x = b
29
29
 
30
30
 
31
+ ### Throws
32
+
33
+ Type | Description
34
+ ---- | -----------
35
+
36
+
31
37
  ## Examples
32
38
 
33
39
  ```js
@@ -27,6 +27,12 @@ Type | Description
27
27
  * | The median absolute deviation.
28
28
 
29
29
 
30
+ ### Throws
31
+
32
+ Type | Description
33
+ ---- | -----------
34
+
35
+
30
36
  ## Examples
31
37
 
32
38
  ```js
@@ -26,6 +26,12 @@ Type | Description
26
26
  Matrix &#124; array | Transformed map of x
27
27
 
28
28
 
29
+ ### Throws
30
+
31
+ Type | Description
32
+ ---- | -----------
33
+
34
+
29
35
  ## Examples
30
36
 
31
37
  ```js
@@ -27,6 +27,12 @@ Type | Description
27
27
  number[][] &#124; Matrix | if at least one of the arguments is an array, an array will be returned
28
28
 
29
29
 
30
+ ### Throws
31
+
32
+ Type | Description
33
+ ---- | -----------
34
+
35
+
30
36
  ## Examples
31
37
 
32
38
  ```js
@@ -33,6 +33,12 @@ Type | Description
33
33
  Array &#124; Matrix | Returns the created matrix
34
34
 
35
35
 
36
+ ### Throws
37
+
38
+ Type | Description
39
+ ---- | -----------
40
+
41
+
36
42
  ## Examples
37
43
 
38
44
  ```js
@@ -27,6 +27,12 @@ Type | Description
27
27
  number[][] &#124; Matrix | if at least one of the arguments is an array, an array will be returned
28
28
 
29
29
 
30
+ ### Throws
31
+
32
+ Type | Description
33
+ ---- | -----------
34
+
35
+
30
36
  ## Examples
31
37
 
32
38
  ```js
@@ -29,6 +29,12 @@ Type | Description
29
29
  * | The maximum value
30
30
 
31
31
 
32
+ ### Throws
33
+
34
+ Type | Description
35
+ ---- | -----------
36
+
37
+
32
38
  ## Examples
33
39
 
34
40
  ```js
@@ -29,6 +29,12 @@ Type | Description
29
29
  * | The mean of all values
30
30
 
31
31
 
32
+ ### Throws
33
+
34
+ Type | Description
35
+ ---- | -----------
36
+
37
+
32
38
  ## Examples
33
39
 
34
40
  ```js
@@ -31,6 +31,12 @@ Type | Description
31
31
  * | The median
32
32
 
33
33
 
34
+ ### Throws
35
+
36
+ Type | Description
37
+ ---- | -----------
38
+
39
+
34
40
  ## Examples
35
41
 
36
42
  ```js
@@ -29,6 +29,12 @@ Type | Description
29
29
  * | The minimum value
30
30
 
31
31
 
32
+ ### Throws
33
+
34
+ Type | Description
35
+ ---- | -----------
36
+
37
+
32
38
  ## Examples
33
39
 
34
40
  ```js
@@ -33,6 +33,12 @@ Type | Description
33
33
  number &#124; BigNumber &#124; Fraction &#124; Array &#124; Matrix | Returns the remainder of `x` divided by `y`.
34
34
 
35
35
 
36
+ ### Throws
37
+
38
+ Type | Description
39
+ ---- | -----------
40
+
41
+
36
42
  ## Examples
37
43
 
38
44
  ```js
@@ -26,6 +26,12 @@ Type | Description
26
26
  * | The mode of all values
27
27
 
28
28
 
29
+ ### Throws
30
+
31
+ Type | Description
32
+ ---- | -----------
33
+
34
+
29
35
  ## Examples
30
36
 
31
37
  ```js
@@ -27,6 +27,12 @@ Type | Description
27
27
  Number &#124; BigNumber | Multinomial coefficient.
28
28
 
29
29
 
30
+ ### Throws
31
+
32
+ Type | Description
33
+ ---- | -----------
34
+
35
+
30
36
  ## Examples
31
37
 
32
38
  ```js
@@ -27,6 +27,12 @@ Type | Description
27
27
  number &#124; BigNumber &#124; Fraction &#124; Complex &#124; Unit &#124; Array &#124; Matrix | Multiplication of `x` and `y`
28
28
 
29
29
 
30
+ ### Throws
31
+
32
+ Type | Description
33
+ ---- | -----------
34
+
35
+
30
36
  ## Examples
31
37
 
32
38
  ```js
@@ -28,6 +28,12 @@ Type | Description
28
28
  number &#124; BigNumber | the p-norm
29
29
 
30
30
 
31
+ ### Throws
32
+
33
+ Type | Description
34
+ ---- | -----------
35
+
36
+
31
37
  ## Examples
32
38
 
33
39
  ```js
@@ -25,6 +25,12 @@ Type | Description
25
25
  boolean &#124; Array &#124; Matrix | Returns true when input is a zero or empty value.
26
26
 
27
27
 
28
+ ### Throws
29
+
30
+ Type | Description
31
+ ---- | -----------
32
+
33
+
28
34
  ## Examples
29
35
 
30
36
  ```js
@@ -32,6 +32,12 @@ Type | Description
32
32
  number &#124; Complex &#124; Array &#124; Matrix | Returns the nth root of `a`
33
33
 
34
34
 
35
+ ### Throws
36
+
37
+ Type | Description
38
+ ---- | -----------
39
+
40
+
35
41
  ## Examples
36
42
 
37
43
  ```js
@@ -28,6 +28,12 @@ Type | Description
28
28
  number &#124; BigNumber &#124; Fraction &#124; Complex | Rounded value
29
29
 
30
30
 
31
+ ### Throws
32
+
33
+ Type | Description
34
+ ---- | -----------
35
+
36
+
31
37
  ## Examples
32
38
 
33
39
  ```js
@@ -25,6 +25,12 @@ Type | Description
25
25
  number &#124; BigNumber &#124; Fraction | Returns an instance of the numeric in the requested type
26
26
 
27
27
 
28
+ ### Throws
29
+
30
+ Type | Description
31
+ ---- | -----------
32
+
33
+
28
34
  ## Examples
29
35
 
30
36
  ```js
@@ -25,6 +25,12 @@ Type | Description
25
25
  string | The formatted value
26
26
 
27
27
 
28
+ ### Throws
29
+
30
+ Type | Description
31
+ ---- | -----------
32
+
33
+
28
34
  ## Examples
29
35
 
30
36
  ```js
@@ -33,6 +33,12 @@ Type | Description
33
33
  Array &#124; Matrix &#124; number | A matrix filled with ones
34
34
 
35
35
 
36
+ ### Throws
37
+
38
+ Type | Description
39
+ ---- | -----------
40
+
41
+
36
42
  ## Examples
37
43
 
38
44
  ```js
@@ -26,6 +26,12 @@ Type | Description
26
26
  boolean &#124; Array &#124; Matrix | Returns true when one of the inputs is defined with a nonzero/nonempty value.
27
27
 
28
28
 
29
+ ### Throws
30
+
31
+ Type | Description
32
+ ---- | -----------
33
+
34
+
29
35
  ## Examples
30
36
 
31
37
  ```js
@@ -24,6 +24,12 @@ Type | Description
24
24
  Parser | Parser
25
25
 
26
26
 
27
+ ### Throws
28
+
29
+ Type | Description
30
+ ---- | -----------
31
+
32
+
27
33
  ## Examples
28
34
 
29
35
  ```js
@@ -29,6 +29,12 @@ Type | Description
29
29
  * | Returns the kth lowest value.
30
30
 
31
31
 
32
+ ### Throws
33
+
34
+ Type | Description
35
+ ---- | -----------
36
+
37
+
32
38
  ## Examples
33
39
 
34
40
  ```js
@@ -30,6 +30,12 @@ Type | Description
30
30
  number &#124; BigNumber | The number of permutations
31
31
 
32
32
 
33
+ ### Throws
34
+
35
+ Type | Description
36
+ ---- | -----------
37
+
38
+
33
39
  ## Examples
34
40
 
35
41
  ```js
@@ -32,6 +32,12 @@ Type | Description
32
32
  number &#124; Array | Returns a single random value from array when number is 1 or undefined. Returns an array with the configured number of elements when number is > 1.
33
33
 
34
34
 
35
+ ### Throws
36
+
37
+ Type | Description
38
+ ---- | -----------
39
+
40
+
35
41
  ## Examples
36
42
 
37
43
  ```js
@@ -32,6 +32,12 @@ Type | Description
32
32
  number &#124; BigNumber &#124; Complex &#124; Array &#124; Matrix | The value of `x` to the power `y`
33
33
 
34
34
 
35
+ ### Throws
36
+
37
+ Type | Description
38
+ ---- | -----------
39
+
40
+
35
41
  ## Examples
36
42
 
37
43
  ```js
@@ -28,6 +28,12 @@ Type | Description
28
28
  string | Interpolated string
29
29
 
30
30
 
31
+ ### Throws
32
+
33
+ Type | Description
34
+ ---- | -----------
35
+
36
+
31
37
  ## Examples
32
38
 
33
39
  ```js
@@ -27,6 +27,12 @@ Type | Description
27
27
  * | The product of all values
28
28
 
29
29
 
30
+ ### Throws
31
+
32
+ Type | Description
33
+ ---- | -----------
34
+
35
+
30
36
  ## Examples
31
37
 
32
38
  ```js
@@ -26,6 +26,12 @@ Type | Description
26
26
  {Q: Array &#124; Matrix, R: Array &#124; Matrix} | Q: the orthogonal matrix and R: the upper triangular matrix
27
27
 
28
28
 
29
+ ### Throws
30
+
31
+ Type | Description
32
+ ---- | -----------
33
+
34
+
29
35
  ## Examples
30
36
 
31
37
  ```js
@@ -34,6 +34,12 @@ Type | Description
34
34
  Number, BigNumber, Unit, Array | Quantile(s)
35
35
 
36
36
 
37
+ ### Throws
38
+
39
+ Type | Description
40
+ ---- | -----------
41
+
42
+
37
43
  ## Examples
38
44
 
39
45
  ```js
@@ -32,6 +32,12 @@ Type | Description
32
32
  number &#124; Array &#124; Matrix | A random number
33
33
 
34
34
 
35
+ ### Throws
36
+
37
+ Type | Description
38
+ ---- | -----------
39
+
40
+
35
41
  ## Examples
36
42
 
37
43
  ```js