pimath 0.0.52 → 0.0.55

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 (37) hide show
  1. package/dist/pi.js +153 -144
  2. package/dist/pi.js.map +1 -1
  3. package/dist/pi.min.js +1 -1
  4. package/dist/pi.min.js.map +1 -1
  5. package/esm/maths/algebra/equation.js +10 -10
  6. package/esm/maths/algebra/equation.js.map +10 -1
  7. package/esm/maths/algebra/linearSystem.js +1 -1
  8. package/esm/maths/algebra/linearSystem.js.map +10 -1
  9. package/esm/maths/algebra/monom.d.ts +4 -3
  10. package/esm/maths/algebra/monom.js +49 -55
  11. package/esm/maths/algebra/monom.js.map +10 -1
  12. package/esm/maths/algebra/polynom.d.ts +6 -5
  13. package/esm/maths/algebra/polynom.js +77 -81
  14. package/esm/maths/algebra/polynom.js.map +10 -1
  15. package/esm/maths/algebra/rational.js +3 -5
  16. package/esm/maths/algebra/rational.js.map +10 -1
  17. package/esm/maths/expressions/polynomexp.bkp.js +2 -3
  18. package/esm/maths/expressions/polynomexp.bkp.js.map +10 -1
  19. package/esm/maths/expressions/polynomexp.js +3 -3
  20. package/esm/maths/expressions/polynomexp.js.map +10 -1
  21. package/esm/maths/geometry/point.js +1 -1
  22. package/esm/maths/geometry/point.js.map +10 -1
  23. package/esm/maths/randomization/random.js +9 -1
  24. package/esm/maths/randomization/random.js.map +10 -1
  25. package/package.json +1 -1
  26. package/src/maths/algebra/equation.ts +7 -7
  27. package/src/maths/algebra/linearSystem.ts +1 -1
  28. package/src/maths/algebra/monom.ts +5 -6
  29. package/src/maths/algebra/polynom.ts +16 -10
  30. package/src/maths/algebra/rational.ts +4 -3
  31. package/src/maths/expressions/polynomexp.bkp.ts +1 -2
  32. package/src/maths/expressions/polynomexp.ts +1 -1
  33. package/src/maths/geometry/point.ts +1 -1
  34. package/tests/algebra/equation.test.ts +2 -4
  35. package/tests/algebra/monom.test.ts +1 -1
  36. package/tests/algebra/polynom.test.ts +7 -3
  37. package/tests/algebra/rationnal.test.ts +34 -1
@@ -1 +1,10 @@
1
- {"version":3,"file":"point.js","sourceRoot":"","sources":["../../../src/maths/geometry/point.ts"],"names":[],"mappings":"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"}
1
+ {
2
+ "version": 3,
3
+ "file": "point.js",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "../../../src/maths/geometry/point.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": "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"
10
+ }
@@ -1,7 +1,15 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = {
7
+ enumerable: true, get: function () {
8
+ return m[k];
9
+ }
10
+ };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
5
13
  }) : (function(o, m, k, k2) {
6
14
  if (k2 === undefined) k2 = k;
7
15
  o[k2] = m[k];
@@ -1 +1,10 @@
1
- {"version":3,"file":"random.js","sourceRoot":"","sources":["../../../src/maths/randomization/random.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6CAAwC;AACxC,yCAAoC;AACpC,6CAAwC;AAExC,+CAA0C;AAK1C,6CAA0B;AAE1B,IAAiB,MAAM,CAoCtB;AApCD,WAAiB,MAAM;IACnB,SAAgB,OAAO,CAAC,MAA4B;QAChD,OAAO,CAAC,IAAI,uBAAU,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC9C,CAAC;IAFe,cAAO,UAEtB,CAAA;IAED,SAAgB,KAAK,CAAC,MAA0B;QAC5C,OAAO,CAAC,IAAI,mBAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC5C,CAAC;IAFe,YAAK,QAEpB,CAAA;IAED,SAAgB,QAAQ,CAAC,MAAgC;QACrD,OAAO,CAAC,IAAI,yBAAW,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC/C,CAAC;IAFe,eAAQ,WAEvB,CAAA;IAED,SAAgB,MAAM,CAAC,IAAY,EAAE,EAAU;QAC3C,OAAO,uBAAU,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACzC,CAAC;IAFe,aAAM,SAErB,CAAA;IAED,SAAgB,SAAS,CAAC,GAAW,EAAE,SAAmB;QACtD,OAAO,uBAAU,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IAClD,CAAC;IAFe,gBAAS,YAExB,CAAA;IAED,SAAgB,IAAI,CAAC,OAAgB;QACjC,OAAO,uBAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IACzC,CAAC;IAFe,WAAI,OAEnB,CAAA;IAED,SAAgB,KAAK,CAAC,GAAU,EAAE,MAAe;QAC7C,OAAO,uBAAU,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAC9C,CAAC;IAFe,YAAK,QAEpB,CAAA;IAED,SAAgB,IAAI,CAAC,GAAU;QAC3B,OAAO,uBAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC;IAFe,WAAI,OAEnB,CAAA;IAED,SAAgB,OAAO,CAAC,GAAU;QAC9B,uBAAU,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;IAChC,CAAC;IAFe,cAAO,UAEtB,CAAA;AACL,CAAC,EApCgB,MAAM,GAAN,cAAM,KAAN,cAAM,QAoCtB"}
1
+ {
2
+ "version": 3,
3
+ "file": "random.js",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "../../../src/maths/randomization/random.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": ";;;;;;;;;;;;;;;;;AAAA,6CAAwC;AACxC,yCAAoC;AACpC,6CAAwC;AAExC,+CAA0C;AAK1C,6CAA0B;AAE1B,IAAiB,MAAM,CAoCtB;AApCD,WAAiB,MAAM;IACnB,SAAgB,OAAO,CAAC,MAA4B;QAChD,OAAO,CAAC,IAAI,uBAAU,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC9C,CAAC;IAFe,cAAO,UAEtB,CAAA;IAED,SAAgB,KAAK,CAAC,MAA0B;QAC5C,OAAO,CAAC,IAAI,mBAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC5C,CAAC;IAFe,YAAK,QAEpB,CAAA;IAED,SAAgB,QAAQ,CAAC,MAAgC;QACrD,OAAO,CAAC,IAAI,yBAAW,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IAC/C,CAAC;IAFe,eAAQ,WAEvB,CAAA;IAED,SAAgB,MAAM,CAAC,IAAY,EAAE,EAAU;QAC3C,OAAO,uBAAU,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;IACzC,CAAC;IAFe,aAAM,SAErB,CAAA;IAED,SAAgB,SAAS,CAAC,GAAW,EAAE,SAAmB;QACtD,OAAO,uBAAU,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IAClD,CAAC;IAFe,gBAAS,YAExB,CAAA;IAED,SAAgB,IAAI,CAAC,OAAgB;QACjC,OAAO,uBAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IACzC,CAAC;IAFe,WAAI,OAEnB,CAAA;IAED,SAAgB,KAAK,CAAC,GAAU,EAAE,MAAe;QAC7C,OAAO,uBAAU,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAC9C,CAAC;IAFe,YAAK,QAEpB,CAAA;IAED,SAAgB,IAAI,CAAC,GAAU;QAC3B,OAAO,uBAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC;IAFe,WAAI,OAEnB,CAAA;IAED,SAAgB,OAAO,CAAC,GAAU;QAC9B,uBAAU,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;IAChC,CAAC;IAFe,cAAO,UAEtB,CAAA;AACL,CAAC,EApCgB,MAAM,GAAN,cAAM,KAAN,cAAM,QAoCtB"
10
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pimath",
3
- "version": "0.0.52",
3
+ "version": "0.0.55",
4
4
  "description": "A math library for teacher :)",
5
5
  "scripts": {
6
6
  "test": "mocha -r ts-node/register 'tests/**/*.test.ts'",
@@ -652,12 +652,12 @@ export class Equation {
652
652
  } else {
653
653
  this._solutions = [
654
654
  {
655
- tex: `\\dfrac{${-b / gcd} - ${nthDelta.tex} }{ ${2 * a / gcd} }`,
655
+ tex: `\\frac{${-b / gcd} - ${nthDelta.tex} }{ ${2 * a / gcd} }`,
656
656
  value: realX1,
657
657
  exact: false
658
658
  },
659
659
  {
660
- tex: `\\dfrac{${-b / gcd} + ${nthDelta.tex} }{ ${2 * a / gcd} }`,
660
+ tex: `\\frac{${-b / gcd} + ${nthDelta.tex} }{ ${2 * a / gcd} }`,
661
661
  value: realX2,
662
662
  exact: false
663
663
  },
@@ -680,12 +680,12 @@ export class Equation {
680
680
  } else {
681
681
  this._solutions = [
682
682
  {
683
- tex: `\\dfrac{- ${nthDelta.tex} }{ ${2 * a / gcd} }`,
683
+ tex: `\\frac{- ${nthDelta.tex} }{ ${2 * a / gcd} }`,
684
684
  value: realX1,
685
685
  exact: false
686
686
  },
687
687
  {
688
- tex: `\\dfrac{${nthDelta.tex} }{ ${2 * a / gcd} }`,
688
+ tex: `\\frac{${nthDelta.tex} }{ ${2 * a / gcd} }`,
689
689
  value: realX2,
690
690
  exact: false
691
691
  },
@@ -698,12 +698,12 @@ export class Equation {
698
698
  S2 = new Fraction(-b + nthDelta.coefficient, 2 * a).reduce()
699
699
  this._solutions = [
700
700
  {
701
- tex: S1.dfrac,
701
+ tex: S1.frac,
702
702
  value: realX1,
703
703
  exact: S1
704
704
  },
705
705
  {
706
- tex: S2.dfrac,
706
+ tex: S2.frac,
707
707
  value: realX2,
708
708
  exact: S2
709
709
  }
@@ -714,7 +714,7 @@ export class Equation {
714
714
  } else if (delta === 0) {
715
715
  const sol = new Fraction(-b, 2 * a).reduce()
716
716
  this._solutions = [{
717
- tex: sol.dfrac,
717
+ tex: sol.frac,
718
718
  value: sol.value,
719
719
  exact: sol
720
720
  }];
@@ -118,7 +118,7 @@ export class LinearSystem {
118
118
  return;
119
119
  }
120
120
 
121
- tex.push(this._solutions[letter].value.dfrac);
121
+ tex.push(this._solutions[letter].value.frac);
122
122
  }
123
123
  return `(${tex.join(';')})`;
124
124
  }
@@ -2,8 +2,7 @@
2
2
  * Monom class
3
3
  */
4
4
  import {Numeric} from "../numeric";
5
- import {Shutingyard, ShutingyardType, Token, tokenType} from "../shutingyard";
6
- import {log} from "util";
5
+ import {Shutingyard, ShutingyardType, Token} from "../shutingyard";
7
6
  import {Fraction} from "../coefficients/fraction";
8
7
 
9
8
  export type literalType = {
@@ -273,7 +272,7 @@ export class Monom {
273
272
  if (L === '') {
274
273
  // No setLetter - means it's only a number !
275
274
  if (this._coefficient.value != 0) {
276
- return `${this._coefficient.dfrac}`;
275
+ return `${this._coefficient.frac}`;
277
276
  } else {
278
277
  return '0';
279
278
  }
@@ -285,7 +284,7 @@ export class Monom {
285
284
  } else if (this._coefficient.value === 0) {
286
285
  return '0';
287
286
  } else {
288
- return `${this._coefficient.dfrac}${L}`;
287
+ return `${this._coefficient.frac}${L}`;
289
288
  }
290
289
  }
291
290
  }
@@ -315,7 +314,7 @@ export class Monom {
315
314
  return this;
316
315
  };
317
316
 
318
- static addToken = (stack: Monom[], element: Token): void => {
317
+ addToken = (stack: Monom[], element: Token): void => {
319
318
 
320
319
  let q1: Monom, q2: Monom, m: Monom, letter: string, pow: Fraction
321
320
 
@@ -391,7 +390,7 @@ export class Monom {
391
390
  } else {
392
391
  // Reset the monom
393
392
  for (const element of rpn) {
394
- Monom.addToken(stack, element)
393
+ this.addToken(stack, element)
395
394
  }
396
395
  }
397
396
 
@@ -124,7 +124,7 @@ export class Polynom {
124
124
  return this.variables.length;
125
125
  }
126
126
 
127
- static addToken = (stack: Polynom[], element: Token): void => {
127
+ addToken = (stack: Polynom[], element: Token): void => {
128
128
 
129
129
  switch (element.tokenType) {
130
130
  case ShutingyardType.COEFFICIENT:
@@ -179,11 +179,10 @@ export class Polynom {
179
179
  }
180
180
  }
181
181
  } else {
182
- console.log('Stack size: ', stack.length)
183
182
  if (element.token === '-') {
184
183
  stack.push(stack.pop().opposed())
185
184
  } else {
186
- console.log('While parsing, cannot apply ', element.token, 'to', stack[0].tex)
185
+ throw "Error parsing the polynom " + this._rawString
187
186
  }
188
187
  }
189
188
  break
@@ -195,7 +194,7 @@ export class Polynom {
195
194
 
196
195
  case ShutingyardType.FUNCTION:
197
196
  // Should never appear.
198
- console.log('The function token should not appear here - might be introduced later.')
197
+ console.error('The function token should not appear here - might be introduced later.')
199
198
  break;
200
199
  }
201
200
  }
@@ -405,9 +404,14 @@ export class Polynom {
405
404
  const quotient: Polynom = new Polynom().zero();
406
405
  const reminder: Polynom = this.clone().reorder(letter);
407
406
 
408
- // There is no variable !
407
+ // There is no variable - means it's a number
409
408
  if (P.variables.length === 0) {
410
- return {quotient, reminder}
409
+ let q = this.clone().divide(P)
410
+ return {
411
+ quotient: this.clone().divide(P),
412
+ reminder: new Polynom().zero()
413
+ }
414
+
411
415
  }
412
416
 
413
417
  // Get at least a letter
@@ -444,8 +448,11 @@ export class Polynom {
444
448
  return this.divideByFraction(value);
445
449
  } else if (typeof value === 'number' && Number.isSafeInteger(value)) {
446
450
  return this.divideByInteger(value);
451
+ } else if (value instanceof Polynom) {
452
+ if (value.monoms.length === 1 && value.variables.length === 0) {
453
+ return this.divideByFraction(value.monoms[0].coefficient)
454
+ }
447
455
  }
448
-
449
456
  }
450
457
 
451
458
  pow = (nb: number): Polynom => {
@@ -778,8 +785,7 @@ export class Polynom {
778
785
 
779
786
  // It has a common monom.
780
787
  if (!M.isOne()) {
781
- tempPolynom = new Polynom()
782
- tempPolynom.monoms = [M]
788
+ tempPolynom = new Polynom(M)
783
789
  factors = [tempPolynom.clone()]
784
790
  P = P.euclidian(tempPolynom).quotient;
785
791
  }
@@ -1173,7 +1179,7 @@ export class Polynom {
1173
1179
 
1174
1180
  // Loop through the
1175
1181
  for (const element of rpn) {
1176
- Polynom.addToken(stack, element);
1182
+ this.addToken(stack, element);
1177
1183
  }
1178
1184
 
1179
1185
  if (stack.length === 1) {
@@ -37,11 +37,11 @@ export class Rational {
37
37
  }
38
38
 
39
39
  get tex(): string {
40
- return `\\dfrac{ ${this._numerator.tex} }{ ${this._denominator.tex} }`;
40
+ return `\\frac{ ${this._numerator.tex} }{ ${this._denominator.tex} }`;
41
41
  }
42
42
 
43
43
  get texFactors(): string {
44
- return `\\dfrac{ ${this._numerator.texFactors} }{ ${this._denominator.texFactors} }`
44
+ return `\\frac{ ${this._numerator.texFactors} }{ ${this._denominator.texFactors} }`
45
45
  }
46
46
 
47
47
  clone = (): Rational => {
@@ -265,9 +265,9 @@ export class Rational {
265
265
  }
266
266
  private _makeOneLineOfTableOfSigns = (factor: Polynom, zeroes: ISolution[], zeroSign: string): string[] => {
267
267
  let oneLine: string[] = [],
268
- // TODO : check if there is no zero ?
269
268
  currentZero = factor.getZeroes().map(x=>x.tex)
270
269
 
270
+
271
271
  // First +/- sign, before the first zero
272
272
  oneLine.push('')
273
273
  oneLine.push(factor.evaluate(zeroes[0].value - 1).sign() === 1 ? '+' : '-')
@@ -284,6 +284,7 @@ export class Rational {
284
284
  }
285
285
 
286
286
  }
287
+
287
288
  oneLine.push('')
288
289
 
289
290
  return oneLine
@@ -57,9 +57,8 @@ export class PolynomExpFactor {
57
57
  }
58
58
  }
59
59
 
60
- console.log(numerators.length)
61
60
  if (denominators.length > 0) {
62
- return `\\dfrac{ ${numerators.length > 0 ? numerators.join('') : 1} }{ ${denominators.join('')} }`
61
+ return `\\frac{ ${numerators.length > 0 ? numerators.join('') : 1} }{ ${denominators.join('')} }`
63
62
  } else {
64
63
  return numerators.join('')
65
64
  }
@@ -207,7 +207,7 @@ export class PolynomExpProduct {
207
207
  // restore all degrees to negative again.
208
208
  denominators.map(x => x.degree.opposed())
209
209
 
210
- tex = `\\dfrac{ ${numeratorsAsTex.join(' \\cdot ')} }{ ${denominatorsAsTex.join(' \\cdot ')} }`
210
+ tex = `\\frac{ ${numeratorsAsTex.join(' \\cdot ')} }{ ${denominatorsAsTex.join(' \\cdot ')} }`
211
211
  }
212
212
  }
213
213
 
@@ -181,7 +181,7 @@ export class Point {
181
181
 
182
182
  value = V.norm
183
183
  fraction = V.normSquare.sqrt()
184
- tex = V.normSquare.isSquare()?fraction.tex:`\\sqrt{\\dfrac{ ${V.normSquare.numerator} }{ ${V.normSquare.denominator} }}`
184
+ tex = V.normSquare.isSquare() ? fraction.tex : `\\sqrt{\\frac{ ${V.normSquare.numerator} }{ ${V.normSquare.denominator} }}`
185
185
  }
186
186
  return { value, fraction, tex }
187
187
  }
@@ -1,6 +1,4 @@
1
1
  import {describe} from "mocha";
2
- import {Rational} from "../../src/maths/algebra/rational";
3
- import {Polynom} from "../../src/maths/algebra/polynom";
4
2
  import {expect} from "chai";
5
3
  import {Equation} from "../../src/maths/algebra/equation";
6
4
 
@@ -31,8 +29,8 @@ describe('Equations tests', () => {
31
29
  let E6 = new Equation('5x^2+7x-31', 0)
32
30
  E6.solve()
33
31
  expect(E6.solutions.map(x=>x.tex)).to.have.all.members([
34
- '\\dfrac{-7 - \\sqrt{669} }{ 10 }',
35
- '\\dfrac{-7 + \\sqrt{669} }{ 10 }'
32
+ '\\frac{-7 - \\sqrt{669} }{ 10 }',
33
+ '\\frac{-7 + \\sqrt{669} }{ 10 }'
36
34
  ] )
37
35
  })
38
36
  })
@@ -76,6 +76,6 @@ describe('Monom with fraction power', () => {
76
76
  console.log(M.tex)
77
77
 
78
78
  // TODO: Problem while displaying numerical expression
79
- expect(M.tex).to.be.equal('-\\dfrac{ 7 }{ 5 }x^{\\tfrac{ 22 }{ 15 }}')
79
+ expect(M.tex).to.be.equal('-\\frac{ 7 }{ 5 }x^{\\tfrac{ 22 }{ 15 }}')
80
80
  })
81
81
  })
@@ -15,7 +15,7 @@ describe('Polynom tests', () => {
15
15
  const P = new Polynom('-3/5x-2')
16
16
 
17
17
  console.log(P.tex)
18
- expect(P.tex).to.be.equal('-\\dfrac{ 3 }{ 5 }x-2')
18
+ expect(P.tex).to.be.equal('-\\frac{ 3 }{ 5 }x-2')
19
19
  })
20
20
 
21
21
  it('Tex display', () => {
@@ -76,14 +76,18 @@ describe('Polynom tests', () => {
76
76
  let P2 = new Polynom('x^4-32x^2+256')
77
77
  P2.factorize()
78
78
  expect(P2.factors.map(x => x.tex)).to.have.all.members(['x-4', 'x-4', 'x+4', 'x+4'])
79
- })
79
+
80
+ let P3 = new Polynom('6x^2-48x-8')
81
+ P3.factorize()
82
+ expect(P3.factors.map(x => x.tex)).to.have.all.members(['2', '3x^{2}-24x-4'])
83
+ });
80
84
  })
81
85
 
82
86
  describe('Polynom parsing with rational power', () => {
83
87
  it('should parse with rational powers', () => {
84
88
  const P = new Polynom('3x^(2/3)-5x+5/3');
85
89
 
86
- expect(P.tex).to.be.equal('3x^{\\tfrac{ 2 }{ 3 }}-5x+\\dfrac{ 5 }{ 3 }')
90
+ expect(P.tex).to.be.equal('3x^{\\tfrac{ 2 }{ 3 }}-5x+\\frac{ 5 }{ 3 }')
87
91
  })
88
92
  })
89
93
 
@@ -42,7 +42,6 @@ describe('Rational tests', () => {
42
42
  })
43
43
 
44
44
  it('should make a table of signs', function () {
45
-
46
45
  const FR = new Rational(
47
46
  new Polynom('(x-2)'),
48
47
  new Polynom('(x+2)')
@@ -50,6 +49,40 @@ describe('Rational tests', () => {
50
49
  let tos = FR.makeTableOfSigns()
51
50
  expect(tos.zeroes.map(x => x.tex)).to.have.all.members(['-2', '2'])
52
51
  expect(tos.signs).to.be.eql([['', '-', 't', '-', 'z', '+', ''], ['', '-', 'd', '+', 't', '+', ''], [], ['', '+', 'd', '-', 'z', '+', '']])
52
+
53
+ const FR2 = new Rational(
54
+ new Polynom('6x^2+7x-20'),
55
+ new Polynom('x^2-16')
56
+ )
57
+ let tos2 = FR2.makeTableOfSigns()
58
+ expect(tos2.signs).to.be.eql([
59
+ [
60
+ '', '-', 't', '-',
61
+ 'z', '+', 't', '+',
62
+ 't', '+', ''
63
+ ],
64
+ [
65
+ '', '-', 't', '-',
66
+ 't', '-', 'z', '+',
67
+ 't', '+', ''
68
+ ],
69
+ [
70
+ '', '-', 'd', '+',
71
+ 't', '+', 't', '+',
72
+ 't', '+', ''
73
+ ],
74
+ [
75
+ '', '-', 't', '-',
76
+ 't', '-', 't', '-',
77
+ 'd', '+', ''
78
+ ],
79
+ [],
80
+ [
81
+ '', '+', 'd', '-',
82
+ 'z', '+', 'z', '-',
83
+ 'd', '+', ''
84
+ ]
85
+ ])
53
86
  });
54
87
 
55
88
  it('should calculate the derivative', function () {