pimath 0.2.3 → 0.2.4

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.
@@ -46,15 +46,27 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
46
46
  return this
47
47
  }
48
48
 
49
+ if(typeof value === "number" && isNaN(value)) {
50
+ return this.invalid()
51
+ }
52
+
53
+ if(typeof value === "number" && !isFinite(value)) {
54
+ this.infinite()
55
+ if(value < 0) {
56
+ this.opposite()
57
+ }
58
+ return this
59
+ }
60
+
49
61
  if (typeof value === "string") {
50
62
  return this.fromString(value)
51
63
  }
52
64
 
53
- if (typeof value === "number" && denominator===undefined) {
65
+ if (typeof value === "number" && denominator === undefined) {
54
66
  return this.fromNumber(value)
55
67
  }
56
68
 
57
- if (typeof value === "number" && typeof denominator==="number") {
69
+ if (typeof value === "number" && typeof denominator === "number") {
58
70
  return this.fromNumbers(value, denominator)
59
71
  }
60
72
 
@@ -70,6 +82,9 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
70
82
  F.numerator = this.#numerator
71
83
  F.denominator = this.#denominator
72
84
  F.exact = this.exact
85
+ F.#type = this.#type
86
+ F.#digits = this.#digits
87
+ F.#withSign = this.#withSign
73
88
  return F
74
89
  }
75
90
 
@@ -119,6 +134,10 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
119
134
  }
120
135
  }
121
136
 
137
+ public static areEquals = (...F: Fraction[]): boolean => {
138
+ return F.every(f => f.isEqual(F[0]))
139
+ }
140
+
122
141
  public static average = (...fractions: (InputValue<Fraction>)[]): Fraction => {
123
142
  const M = new Fraction().zero()
124
143
 
@@ -139,9 +158,9 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
139
158
  }
140
159
 
141
160
  if (typeof value === "string") {
142
- const [num, den] = value.split('/')
161
+ const parts = value.split('/')
143
162
 
144
- return !isNaN(+num) && !isNaN(+den)
163
+ return parts.length <= 2 && parts.every(p => !isNaN(+p))
145
164
  }
146
165
 
147
166
  return false
@@ -206,7 +225,7 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
206
225
 
207
226
  if (!unique[x.clone().reduce().tex]) {
208
227
  distinct.push(x.clone())
209
- unique[x.tex] = true
228
+ unique[x.clone().reduce().tex] = true
210
229
  }
211
230
  })
212
231
 
@@ -216,7 +235,7 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
216
235
  public static xMultiply = (...values: (InputValue<Fraction>)[]): Fraction => {
217
236
  const R = new Fraction()
218
237
 
219
- values.forEach(f=> R.multiply(f, false))
238
+ values.forEach(f => R.multiply(f, false))
220
239
 
221
240
  return R
222
241
  }
@@ -227,7 +246,7 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
227
246
  return this
228
247
  }
229
248
 
230
- public add = (F: InputValue<Fraction>): Fraction => {
249
+ public add = (F: InputValue<Fraction>): this => {
231
250
  if (F instanceof Fraction) {
232
251
  const N: number = this.#numerator,
233
252
  D: number = this.#denominator
@@ -243,15 +262,14 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
243
262
  }
244
263
 
245
264
  public amplify = (k: number): this => {
246
- if (Number.isSafeInteger(k)) {
247
- this.#numerator *= k
248
- this.#denominator *= k
265
+ if (!Number.isSafeInteger(k)) {
266
+ throw new Error("The amplification factor must be a safe integer.")
249
267
  }
250
- return this
251
- }
252
268
 
253
- public areEquals = (...F: Fraction[]): boolean => {
254
- return F.every(f => f.isEqual(F[0]))
269
+ this.#numerator *= k
270
+ this.#denominator *= k
271
+
272
+ return this
255
273
  }
256
274
 
257
275
  /**
@@ -283,9 +301,11 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
283
301
  case "leq":
284
302
  return this.value <= compareFraction.value
285
303
  case "=":
286
- return this.value === compareFraction.value
304
+ return this.#numerator * compareFraction.denominator ===
305
+ compareFraction.numerator * this.#denominator
287
306
  case "<>":
288
- return this.value !== compareFraction.value
307
+ return this.#numerator * compareFraction.denominator !==
308
+ compareFraction.numerator * this.#denominator
289
309
  default:
290
310
  return false
291
311
  }
@@ -309,11 +329,11 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
309
329
  return this
310
330
  }
311
331
 
312
- public divide = (F: Fraction | number): Fraction => {
332
+ public divide = (F: Fraction | number): this => {
313
333
  const Q = new Fraction(F)
314
334
 
315
335
  if (Q.numerator === 0) {
316
- return new Fraction().infinite()
336
+ return this.infinite()
317
337
  }
318
338
 
319
339
  const N: number = this.#numerator,
@@ -379,9 +399,19 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
379
399
 
380
400
  return this.fromNumber(numerator / denominator)
381
401
  }
402
+
382
403
  public fromPeriodic(value: string | number, length: number): this {
383
404
  const [, decimal] = (value.toString()).split(/[.,]/)
384
405
  const p: number = decimal ? decimal.length : 0
406
+
407
+ if (!Number.isSafeInteger(length) || length <= 0) {
408
+ throw new Error("The periodic length must be a positive integer.")
409
+ }
410
+
411
+ if (length > p) {
412
+ throw new Error(`The periodic length (${length}) cannot exceed the number of decimal digits (${p}).`)
413
+ }
414
+
385
415
  const power = Math.pow(10, p)
386
416
 
387
417
  this.#numerator = (+value) * power - Math.floor((+value) * Math.pow(10, p - length))
@@ -417,9 +447,7 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
417
447
  // One divide signe
418
448
  // We check if the denominator is zero
419
449
  if (S[1] === 0) {
420
- this.#numerator = NaN
421
- this.#denominator = 1
422
- return this
450
+ return this.infinite()
423
451
  }
424
452
 
425
453
  this.#numerator = S[0]
@@ -504,7 +532,7 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
504
532
  }
505
533
 
506
534
  public isOdd = (): boolean => {
507
- return this.isRelative() && this.value % 2 === 1
535
+ return this.isRelative() && Math.abs(this.value % 2) === 1
508
536
  }
509
537
 
510
538
  public isOne = (): boolean => {
@@ -580,7 +608,7 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
580
608
  return this
581
609
  }
582
610
 
583
- public pow = (p: number | Fraction): Fraction => {
611
+ public pow = (p: number | Fraction): this => {
584
612
  if (p instanceof Fraction) {
585
613
  return this.pow(p.value)
586
614
  }
@@ -592,17 +620,21 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
592
620
 
593
621
  // Check if numerator and denominator are roots of...
594
622
  // otherwise, convert to numeric.
595
- const controlNumerator = Math.floor(Math.pow(this.#numerator, Math.abs(p))),
596
- controlDenominator = Math.floor(Math.pow(this.#denominator, Math.abs(p)))
597
-
598
- if (controlNumerator ** Math.abs(p) === this.#numerator
599
- &&
600
- controlDenominator ** Math.abs(p) === this.#denominator) {
601
- this.#numerator = this.#numerator ** Math.abs(p)
602
- this.#denominator = this.#denominator ** Math.abs(p)
623
+ const absP = Math.abs(p)
624
+ const powNum = Math.pow(this.#numerator, absP)
625
+ const powDen = Math.pow(this.#denominator, absP)
626
+ const controlNumerator = Math.floor(powNum)
627
+ const controlDenominator = Math.floor(powDen)
628
+
629
+ if (controlNumerator === powNum && controlDenominator === powDen) {
630
+ // Exact integer result — e.g. (9/4)^0.5 = 3/2
631
+ this.#numerator = controlNumerator
632
+ this.#denominator = controlDenominator
603
633
  } else {
604
- this.#numerator = this.#numerator ** Math.abs(p)
605
- this.#denominator = this.#denominator ** Math.abs(p)
634
+ // Non-exact result e.g. (2/1)^0.5 = 1.414...
635
+ this.#numerator = powNum / powDen
636
+ this.#denominator = 1
637
+ this.exact = false
606
638
  }
607
639
 
608
640
  return this
@@ -627,15 +659,16 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
627
659
  return this
628
660
  }
629
661
 
662
+ // if p is not a safe integer, throw error
663
+ if (!Number.isSafeInteger(p)) {
664
+ throw new Error("The root must be an integer.")
665
+ }
666
+
630
667
  // If negative, inverse the fraction
631
668
  if (p < 0) {
632
669
  this.inverse()
633
670
  }
634
671
 
635
- // if p is not a safe integer, throw error
636
- if (!Number.isSafeInteger(p)) {
637
- throw new Error("The root must be an integer.")
638
- }
639
672
 
640
673
  // if the fraction is negative and the root is even, throw error
641
674
  if (this.isNegative() && p % 2 === 0) {
@@ -680,7 +713,7 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
680
713
  return this.root(2)
681
714
  }
682
715
 
683
- public subtract = (F: Fraction | number): Fraction => {
716
+ public subtract = (F: Fraction | number): this => {
684
717
  if (F instanceof Fraction) {
685
718
  return this.add(F.clone().opposite())
686
719
  } else {
@@ -688,10 +721,6 @@ export class Fraction implements IPiMathObject<Fraction>, IExpression<Fraction>
688
721
  }
689
722
  }
690
723
 
691
- public get texWithSign(): string {
692
- return this.isPositive() ? `+${this.tex}` : this.tex
693
- }
694
-
695
724
  public get tfrac(): this {
696
725
  this.#type = FRAC_TYPE.tfrac
697
726
  return this
@@ -74,15 +74,16 @@ export class Root implements IPiMathObject<Root>, IExpression<Root> {
74
74
 
75
75
  // Force the plus sign.
76
76
  const plus = this.#withSign && this.factor.isPositive() ? '+' : ''
77
+ const space = (plus && this.#factor.numerator===1) ? ' ' : ''
77
78
 
78
79
  if (this.value === 0) return `${plus}0`
79
80
 
80
81
  const den = this.#makeTeXLine(this.#factor.denominator, this.#radical.denominator)
81
82
  const num = this.#makeTeXLine(this.#factor.numerator, this.#radical.numerator) ?? '1'
82
83
 
83
- if (den === null) return `${plus}${num}`
84
+ if (den === null) return `${plus}${space}${num}`
84
85
 
85
- return `${plus}\\frac{ ${num} }{ ${den} }`
86
+ return `${plus}${space}\\frac{ ${num} }{ ${den} }`
86
87
  }
87
88
 
88
89
  get display(): string {
@@ -306,7 +307,7 @@ export class Root implements IPiMathObject<Root>, IExpression<Root> {
306
307
  const rad = this.#index === 2 ? `sqrt` : `root(${this.#index})`
307
308
 
308
309
  const formatted: string[] = [
309
- (a !== 1 && a !== 0) ? a.toString() : null,
310
+ (a === 1 || a === 0) ? null : a===-1 ? '-' : a.toString(),
310
311
  (b !== 1 && b !== 0) ? `${rad}(${b})` : null,
311
312
  ].filter(x => x !== null)
312
313
 
@@ -321,7 +322,7 @@ export class Root implements IPiMathObject<Root>, IExpression<Root> {
321
322
  const rad = this.#index === 2 ? `\\sqrt` : `\\sqrt[ ${this.#index} ]`
322
323
 
323
324
  const formatted: string[] = [
324
- (a !== 1 && a !== 0) ? a.toString() : null,
325
+ (a === 1 || a === 0) ? null : a===-1 ? '-' : a.toString(),
325
326
  (b !== 1 && b !== 0) ? `${rad}{ ${b} }` : null,
326
327
  ].filter(x => x !== null)
327
328
 
package/src/index.ts CHANGED
@@ -29,6 +29,7 @@ export {Random}
29
29
 
30
30
  // Typesetting
31
31
  export type * from "./pimath.interface"
32
+ export type * from "./randomization/rndTypes"
32
33
 
33
34
  // Make a global object
34
35
  const PiMath = {
package/src/numeric.ts CHANGED
@@ -54,9 +54,15 @@ function dividers(value: number): number[] {
54
54
  function greatestCommonDivisor(...values: number[]): number {
55
55
  // Define the gcd for two number
56
56
  const gcd2 = function (a: number, b: number): number {
57
+ if(isNaN(a) || isNaN(b)) {
58
+ return NaN
59
+ }
57
60
  if (b === 0) {
58
61
  return a
59
62
  }
63
+ if(a === 0) {
64
+ return b
65
+ }
60
66
  return gcd2(b, a % b)
61
67
  }
62
68
 
@@ -3,7 +3,7 @@ import {rndMonom} from "./rndMonom"
3
3
  import {Monom, Polynom} from "../../algebra"
4
4
  import {randomInt, randomIntSym} from "../rndHelpers"
5
5
 
6
- const factorableConfig: randomPolynomConfig = {
6
+ const defaultPolynomConfig: randomPolynomConfig = {
7
7
  letters: 'x',
8
8
  degree: 2,
9
9
  fraction: false,
@@ -17,12 +17,15 @@ const factorableConfig: randomPolynomConfig = {
17
17
  }
18
18
 
19
19
  export function rndPolynom(userConfig?: randomPolynomConfig): Polynom {
20
+ console.log(userConfig)
20
21
  const config = Object.assign(
21
- factorableConfig,
22
+ defaultPolynomConfig,
22
23
  userConfig
23
24
  )
25
+ console.log('>>>>')
26
+ console.log(config)
24
27
 
25
- if (config.factorable) return rndFactorablePolynom(factorableConfig)
28
+ if (config.factorable) return rndFactorablePolynom(config)
26
29
 
27
30
  // Create the polynom
28
31
  const P = new Polynom().empty()
@@ -68,7 +71,7 @@ export function rndPolynom(userConfig?: randomPolynomConfig): Polynom {
68
71
 
69
72
  export function rndFactorablePolynom(userConfig?: randomPolynomConfig): Polynom {
70
73
  const config = Object.assign(
71
- factorableConfig,
74
+ defaultPolynomConfig,
72
75
  userConfig
73
76
  )
74
77
 
@@ -133,6 +133,7 @@ export declare class Monom implements IPiMathObject<Monom>, IExpression<Monom>,
133
133
  removeVariable(letter: string): void;
134
134
  /**
135
135
  * Get the nth-root of the monom
136
+ * @todo Not yet implemented
136
137
  */
137
138
  root: () => this;
138
139
  /**
@@ -158,5 +159,4 @@ export declare class Monom implements IPiMathObject<Monom>, IExpression<Monom>,
158
159
  * Create a zero value monom
159
160
  */
160
161
  zero: () => this;
161
- private _getLiteralDividers;
162
162
  }
@@ -1 +1 @@
1
- {"version":3,"file":"monom.d.ts","sourceRoot":"","sources":["../../src/algebra/monom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monom.d.ts","sourceRoot":"","sources":["../../src/algebra/monom.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,aAAa,EACb,WAAW,EACd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAC,QAAQ,EAAC,MAAM,iBAAiB,CAAA;AAKxC,qBAAa,KAAM,YAAW,aAAa,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC;;gBAIxF,KAAK,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC;gBAC5B,KAAK,CAAC,EAAE,KAAK;IAkBlB,KAAK,CAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,GAAG,IAAI;IAmC1C,KAAK,QAAO,KAAK,CAUvB;IAKD,IAAW,GAAG,IAAI,MAAM,CAEvB;IAMD,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,OAAc,GAAG,GAAI,GAAG,QAAQ,KAAK,EAAE,KAAG,KAAK,CAiC9C;IAMD,OAAc,SAAS,GAAI,GAAG,QAAQ,KAAK,EAAE,KAAG,KAAK,CAQpD;IAMM,GAAG,GAAI,GAAG,GAAG,YAAY,CAAC,QAAQ,CAAC,EAAE,KAAG,IAAI,CAgBlD;IAMD,IAAW,WAAW,IAAI,QAAQ,CAEjC;IAMD,IAAW,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,EAE7C;IAEM,qBAAqB,QAAO,OAAO,CAEzC;IAMM,MAAM,GAAI,SAAS,MAAM,KAAG,QAAQ,CAW1C;IAMM,UAAU,GAAI,eAAY,KAAG,KAAK,CAexC;IAMM,MAAM,GAAI,GAAG,GAAG,YAAY,CAAC,QAAQ,CAAC,EAAE,KAAG,IAAI,CAwBrD;IAED,IAAW,QAAQ,IAAI,KAAK,EAAE,CAmD7B;IAOM,QAAQ,GAAI,QAAQ,WAAW,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,YAAY,OAAO,KAAG,QAAQ,GAAG,MAAM,CAgDxH;IAOM,WAAW,GAAI,SAAS,MAAM,KAAG,OAAO,CAG9C;IAEM,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ;IAOtF,OAAO,QAAO,IAAI,CAMxB;IAEM,WAAW,GAAI,KAAK,KAAK,KAAG,OAAO,CAgBzC;IAMM,OAAO,GAAI,GAAG,KAAK,KAAG,OAAO,CAEnC;IAEM,eAAe,QAAO,OAAO,CAcnC;IAKM,KAAK,QAAO,OAAO,CAEzB;IAMM,QAAQ,GAAI,GAAG,KAAK,KAAG,OAAO,CAwCpC;IAEM,QAAQ,QAAO,OAAO,CAK5B;IAKM,MAAM,QAAO,OAAO,CAE1B;IAMD,IAAW,OAAO,IAAI,WAAW,CAAC,QAAQ,CAAC,CAE1C;IAMD,IAAW,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,EAE1C;IAMD,IAAW,UAAU,CAAC,QAAQ,EAAE,MAAM,EAsBrC;IAMM,QAAQ,GAAI,GAAG,GAAG,YAAY,CAAC,QAAQ,CAAC,EAAE,KAAG,IAAI,CAkBvD;IAKM,GAAG,QAAO,IAAI,CAIpB;IAMM,QAAQ,QAAO,IAAI,CAGzB;IAED,IAAW,YAAY,IAAI,MAAM,CAEhC;IAMM,GAAG,GAAI,IAAI,MAAM,GAAG,QAAQ,KAAG,IAAI,CAMzC;IAEM,SAAS,GAAI,eAAY,KAAG,KAAK,CAoBvC;IAEM,MAAM,QAAO,IAAI,CAWvB;IAEM,cAAc,CAAC,MAAM,EAAE,MAAM;IAU7B,IAAI,QAAO,IAAI,CAGrB;IAOM,SAAS,GAAI,QAAQ,MAAM,EAAE,KAAK,UAAU,CAAC,QAAQ,CAAC,KAAG,IAAI,CAenE;IAKM,IAAI,QAAO,IAAI,CAUrB;IAMM,QAAQ,GAAI,GAAG,GAAG,YAAY,CAAC,QAAQ,CAAC,EAAE,KAAG,IAAI,CAgBvD;IAMD,IAAW,SAAS,IAAI,MAAM,EAAE,CAa/B;IAKM,IAAI,QAAO,IAAI,CAIrB;CAqLJ"}
@@ -26,84 +26,82 @@ export declare class Polynom implements IPiMathObject<Polynom>, IExpression<Poly
26
26
  * @param inputStr
27
27
  * @param values
28
28
  */
29
- parse: (inputStr: PolynomParsingType, ...values: InputAlgebra<Monom>[]) => this;
29
+ parse(inputStr: PolynomParsingType, ...values: InputAlgebra<Monom>[]): this;
30
30
  /**
31
31
  * Clone the polynom
32
32
  */
33
- clone: () => Polynom;
33
+ clone(): Polynom;
34
34
  get tex(): string;
35
35
  get display(): string;
36
36
  static xMultiply(...polynoms: InputValue<Polynom>[]): Polynom;
37
- add: (...values: InputAlgebra<Polynom>[]) => Polynom;
38
- commonMonom: () => Monom;
39
- degree: (letter?: string) => Fraction;
40
- derivative: (letter?: string) => Polynom;
41
- divide: (value: InputAlgebra<Polynom>) => Polynom;
42
- empty: () => this;
37
+ add(...values: InputAlgebra<Polynom>[]): this;
38
+ commonMonom(): Monom;
39
+ degree(letter?: string): Fraction;
40
+ derivative(letter?: string): Polynom;
41
+ divide(value: InputAlgebra<Polynom>): this;
42
+ empty(): this;
43
43
  /**
44
44
  * Divide the current polynom by another polynom.
45
45
  * @param P
46
46
  * returns {quotient: Polynom, reminder: Polynom}
47
47
  */
48
- euclidean: (P: Polynom) => IEuclidean;
49
- evaluate: (values: literalType<Fraction | number> | InputValue<Fraction>, asNumeric?: boolean) => Fraction | number;
48
+ euclidean(P: Polynom): IEuclidean;
49
+ evaluate(values: literalType<Fraction | number> | InputValue<Fraction>, asNumeric?: boolean): Fraction | number;
50
50
  /**
51
51
  * Factorize a polynom and store the best results in factors.
52
- * @param letter
52
+ * @param _letter
53
53
  * TODO: Handle other letter than 'x'.
54
54
  */
55
- factorize(letter?: string): Polynom[];
55
+ factorize(_letter?: string): Polynom[];
56
56
  get factors(): Polynom[];
57
57
  fromCoefficients(...values: InputValue<Fraction>[]): this;
58
- gcdDenominator: () => number;
59
- gcdNumerator: () => number;
58
+ gcdDenominator(): number;
59
+ gcdNumerator(): number;
60
60
  getCoefficients(): Fraction[];
61
- getDenominators: () => number[];
62
- getNumerators: () => number[];
63
- getZeroes: () => Solution[];
61
+ getDenominators(): number[];
62
+ getNumerators(): number[];
63
+ getZeroes(): Solution[];
64
64
  hasVariable(letter: string): boolean;
65
- integrate: (a: InputValue<Fraction>, b: InputValue<Fraction>, letter?: string) => Fraction;
65
+ integrate(a: InputValue<Fraction>, b: InputValue<Fraction>, letter?: string): Fraction;
66
66
  inverse(): Polynom | undefined;
67
- isDeveloped: (polynomString: string) => boolean;
68
- isDividableBy: (div: Polynom) => boolean;
69
- isEqual: (P: Polynom) => boolean;
67
+ isDeveloped(polynomString: string): boolean;
68
+ isDividableBy(div: Polynom): boolean;
69
+ isEqual(P: Polynom): boolean;
70
70
  get isMultiVariable(): boolean;
71
71
  isOne(): boolean;
72
- isOppositeAt: (P: Polynom) => boolean;
73
- isSameAs: (P: Polynom) => boolean;
72
+ isOppositeAt(P: Polynom): boolean;
73
+ isSameAs(P: Polynom): boolean;
74
74
  isZero(): boolean;
75
- lcmDenominator: () => number;
76
- lcmNumerator: () => number;
75
+ lcmDenominator(): number;
76
+ lcmNumerator(): number;
77
77
  get length(): number;
78
- letters: () => string[];
79
- limitToInfinity: (letter?: string) => Fraction;
80
- limitToNegativeInfinity: (letter?: string) => Fraction;
81
- monomByDegree: (degree?: Fraction | number, letter?: string) => Monom;
82
- monomByLetter: (letter: string) => Monom;
78
+ limitTo(value: InputValue<Fraction>, letter?: string): Fraction;
79
+ monomByDegree(degree?: Fraction | number, letter?: string): Monom;
80
+ monomByLetter(letter: string): Monom;
83
81
  get monoms(): Monom[];
84
82
  set monoms(M: Monom[]);
85
- monomsByDegree: (degree?: number | Fraction, letter?: string) => Monom[];
86
- multiply: (value: InputAlgebra<Polynom>) => Polynom;
83
+ monomsByDegree(degree?: number | Fraction, letter?: string): Monom[];
84
+ multiply(value: InputAlgebra<Polynom>): this;
87
85
  get numberOfVars(): number;
88
- one: () => this;
89
- opposite: () => this;
86
+ one(): this;
87
+ opposite(): this;
90
88
  get plotFunction(): string;
91
- pow: (nb: number) => Polynom;
92
- primitive: (letter?: string) => Polynom;
93
- reduce: () => Polynom;
94
- reorder: (letter?: string, revert?: boolean) => this;
89
+ pow(nb: number): Polynom;
90
+ primitive(letter?: string): Polynom;
91
+ reduce(): this;
92
+ reorder(letter?: string, revert?: boolean): this;
95
93
  /**
96
94
  * Replace a variable (letter) by a polynom.
97
95
  * @param letter
98
96
  * @param P
99
97
  */
100
- replaceBy: (letter: string, P: Polynom) => this;
98
+ replaceBy(letter: string, P: Polynom): this;
101
99
  root(): Polynom;
102
100
  get roots(): Solution[];
103
101
  set roots(value: Solution[]);
104
102
  setVariable(value: string): this;
105
103
  sqrt(): Polynom;
106
- subtract: (...values: InputAlgebra<Polynom>[]) => Polynom;
104
+ subtract(...values: InputAlgebra<Polynom>[]): this;
107
105
  tableOfSigns(): TABLE_OF_SIGNS;
108
106
  get value(): number | undefined;
109
107
  get variables(): string[];
@@ -111,6 +109,6 @@ export declare class Polynom implements IPiMathObject<Polynom>, IExpression<Poly
111
109
  * Set the polynom to zero.
112
110
  * @returns {this}
113
111
  */
114
- zero: () => this;
112
+ zero(): this;
115
113
  get zeroes(): Solution[];
116
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"polynom.d.ts","sourceRoot":"","sources":["../../src/algebra/polynom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"polynom.d.ts","sourceRoot":"","sources":["../../src/algebra/polynom.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ export declare class Fraction implements IPiMathObject<Fraction>, IExpression<Fr
22
22
  copy(value: Fraction): this;
23
23
  get tex(): string;
24
24
  get display(): string;
25
+ static areEquals: (...F: Fraction[]) => boolean;
25
26
  static average: (...fractions: (InputValue<Fraction>)[]) => Fraction;
26
27
  static isFraction(value: InputValue<Fraction>): boolean;
27
28
  static max: (...fractions: InputValue<Fraction>[]) => Fraction;
@@ -31,9 +32,8 @@ export declare class Fraction implements IPiMathObject<Fraction>, IExpression<Fr
31
32
  static unique: (fractions: (InputValue<Fraction>)[]) => Fraction[];
32
33
  static xMultiply: (...values: (InputValue<Fraction>)[]) => Fraction;
33
34
  abs: () => this;
34
- add: (F: InputValue<Fraction>) => Fraction;
35
+ add: (F: InputValue<Fraction>) => this;
35
36
  amplify: (k: number) => this;
36
- areEquals: (...F: Fraction[]) => boolean;
37
37
  /**
38
38
  * Compare the current coefficient with another coefficient
39
39
  * @param F (Coefficient) The coefficient to _compare
@@ -44,7 +44,7 @@ export declare class Fraction implements IPiMathObject<Fraction>, IExpression<Fr
44
44
  set denominator(value: number);
45
45
  get dfrac(): this;
46
46
  digits(value: number): this;
47
- divide: (F: Fraction | number) => Fraction;
47
+ divide: (F: Fraction | number) => this;
48
48
  get exact(): boolean;
49
49
  set exact(value: boolean);
50
50
  get frac(): this;
@@ -84,13 +84,12 @@ export declare class Fraction implements IPiMathObject<Fraction>, IExpression<Fr
84
84
  set numerator(value: number);
85
85
  one: () => this;
86
86
  opposite: () => this;
87
- pow: (p: number | Fraction) => Fraction;
87
+ pow: (p: number | Fraction) => this;
88
88
  reduce: () => this;
89
89
  root: (p: number) => this;
90
90
  sign: () => 1 | -1;
91
91
  sqrt: () => this;
92
- subtract: (F: Fraction | number) => Fraction;
93
- get texWithSign(): string;
92
+ subtract: (F: Fraction | number) => this;
94
93
  get tfrac(): this;
95
94
  get value(): number;
96
95
  get withSign(): this;
@@ -1 +1 @@
1
- {"version":3,"file":"fraction.d.ts","sourceRoot":"","sources":["../../src/coefficients/fraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fraction.d.ts","sourceRoot":"","sources":["../../src/coefficients/fraction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/coefficients/root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,EAAC,WAAW,EAAE,UAAU,EAAE,aAAa,EAAC,MAAM,qBAAqB,CAAA;AAI/E,qBAAa,IAAK,YAAW,aAAa,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC;;gBAMnD,KAAK,CAAC,EAAE,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC;IAa/C,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC,GAAG,IAAI;IAwC/C,KAAK,IAAI,IAAI;IAIb,IAAI,GAAG,IAAI,MAAM,CAiBhB;IAED,IAAI,OAAO,IAAI,MAAM,CAYpB;IAED,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;IAiBlC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;IAIrC,IAAI,MAAM,IAAI,QAAQ,CAErB;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,QAAQ,EAEzB;IAED,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,IAAI;IAgBvF,KAAK,IAAI,IAAI;IAOb,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAKtB;IAED,IAAI,UAAU,IAAI,QAAQ,CAEzB;IAED,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAI5B,KAAK,IAAI,OAAO;IAIhB,UAAU,IAAI,OAAO;IAUrB,MAAM,IAAI,OAAO;IAIjB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;IAoBvC,GAAG,IAAI,IAAI;IAOX,QAAQ,IAAI,IAAI;IAKhB,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAUxB,IAAI,OAAO,IAAI,QAAQ,CAEtB;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,QAAQ,EAE1B;IAED,MAAM,IAAI,IAAI;IAsBd,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMzB,IAAI,IAAI,IAAI;IAIZ,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;IAMvC,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,IAAI,QAAQ,IAAI,IAAI,CAGnB;IAED,IAAI,WAAW,IAAI,IAAI,CAGtB;IAED,IAAI,IAAI,IAAI;CA4Df"}
1
+ {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/coefficients/root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,EAAC,WAAW,EAAE,UAAU,EAAE,aAAa,EAAC,MAAM,qBAAqB,CAAA;AAI/E,qBAAa,IAAK,YAAW,aAAa,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC;;gBAMnD,KAAK,CAAC,EAAE,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC;IAa/C,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,GAAG,QAAQ,CAAC,GAAG,IAAI;IAwC/C,KAAK,IAAI,IAAI;IAIb,IAAI,GAAG,IAAI,MAAM,CAkBhB;IAED,IAAI,OAAO,IAAI,MAAM,CAYpB;IAED,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;IAiBlC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;IAIrC,IAAI,MAAM,IAAI,QAAQ,CAErB;IAED,IAAI,MAAM,CAAC,KAAK,EAAE,QAAQ,EAEzB;IAED,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,IAAI;IAgBvF,KAAK,IAAI,IAAI;IAOb,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAKtB;IAED,IAAI,UAAU,IAAI,QAAQ,CAEzB;IAED,OAAO,IAAI,IAAI;IAMf,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAI5B,KAAK,IAAI,OAAO;IAIhB,UAAU,IAAI,OAAO;IAUrB,MAAM,IAAI,OAAO;IAIjB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;IAoBvC,GAAG,IAAI,IAAI;IAOX,QAAQ,IAAI,IAAI;IAKhB,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAUxB,IAAI,OAAO,IAAI,QAAQ,CAEtB;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,QAAQ,EAE1B;IAED,MAAM,IAAI,IAAI;IAsBd,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMzB,IAAI,IAAI,IAAI;IAIZ,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI;IAMvC,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,IAAI,QAAQ,IAAI,IAAI,CAGnB;IAED,IAAI,WAAW,IAAI,IAAI,CAGtB;IAED,IAAI,IAAI,IAAI;CA4Df"}