binary-decision-diagram 2.0.0 → 3.0.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 (166) hide show
  1. package/dist/{es → src}/abstract-node.d.ts +4 -4
  2. package/dist/{lib → src}/abstract-node.js +7 -4
  3. package/dist/src/abstract-node.js.map +1 -0
  4. package/dist/{es → src}/branches.d.ts +2 -2
  5. package/dist/{es → src}/branches.js +3 -2
  6. package/dist/src/branches.js.map +1 -0
  7. package/dist/src/create-bdd-from-truth-table.d.ts +3 -0
  8. package/dist/{lib → src}/create-bdd-from-truth-table.js +4 -4
  9. package/dist/src/create-bdd-from-truth-table.js.map +1 -0
  10. package/dist/{es → src}/ensure-correct-bdd.d.ts +2 -2
  11. package/dist/{es → src}/ensure-correct-bdd.js +1 -1
  12. package/dist/src/ensure-correct-bdd.js.map +1 -0
  13. package/dist/{lib → src}/fill-truth-table.d.ts +1 -1
  14. package/dist/{lib → src}/fill-truth-table.js +1 -1
  15. package/dist/{es → src}/fill-truth-table.js.map +1 -1
  16. package/dist/{lib → src}/find-similar-node.d.ts +1 -1
  17. package/dist/src/index.d.ts +14 -0
  18. package/dist/src/index.js +14 -0
  19. package/dist/src/index.js.map +1 -0
  20. package/dist/{es → src}/internal-node.d.ts +5 -5
  21. package/dist/{lib → src}/internal-node.js +5 -5
  22. package/dist/{es → src}/internal-node.js.map +1 -1
  23. package/dist/{es → src}/leaf-node.d.ts +4 -4
  24. package/dist/{es → src}/leaf-node.js +5 -4
  25. package/dist/src/leaf-node.js.map +1 -0
  26. package/dist/{es → src}/minimal-string/bdd-to-minimal-string.d.ts +2 -2
  27. package/dist/{es → src}/minimal-string/bdd-to-minimal-string.js +2 -2
  28. package/dist/{es → src}/minimal-string/bdd-to-minimal-string.js.map +1 -1
  29. package/dist/{lib → src}/minimal-string/bdd-to-simple-bdd.d.ts +3 -3
  30. package/dist/src/minimal-string/index.d.ts +5 -0
  31. package/dist/src/minimal-string/index.js +6 -0
  32. package/dist/{es → src}/minimal-string/index.js.map +1 -1
  33. package/dist/{es → src}/minimal-string/minimal-string-to-simple-bdd.d.ts +1 -1
  34. package/dist/{es → src}/minimal-string/minimal-string-to-simple-bdd.js +2 -2
  35. package/dist/{es → src}/minimal-string/minimal-string-to-simple-bdd.js.map +1 -1
  36. package/dist/{es → src}/minimal-string/resolve-with-simple-bdd.d.ts +1 -1
  37. package/dist/{lib → src}/minimal-string/resolve-with-simple-bdd.js +1 -1
  38. package/dist/{es → src}/minimal-string/resolve-with-simple-bdd.js.map +1 -1
  39. package/dist/{lib → src}/optimize-brute-force.d.ts +2 -2
  40. package/dist/{lib → src}/optimize-brute-force.js +2 -2
  41. package/dist/{es → src}/optimize-brute-force.js.map +1 -1
  42. package/dist/{es → src}/parents.d.ts +1 -1
  43. package/dist/{es → src}/parents.js +2 -1
  44. package/dist/src/parents.js.map +1 -0
  45. package/dist/{lib → src}/root-node.d.ts +4 -4
  46. package/dist/{lib → src}/root-node.js +8 -8
  47. package/dist/src/root-node.js.map +1 -0
  48. package/dist/{es → src}/types.d.ts +3 -3
  49. package/dist/{es → src}/util.d.ts +1 -1
  50. package/package.json +18 -18
  51. package/src/abstract-node.ts +7 -7
  52. package/src/branches.ts +2 -2
  53. package/src/create-bdd-from-truth-table.ts +5 -5
  54. package/src/ensure-correct-bdd.ts +4 -4
  55. package/src/fill-truth-table.ts +2 -2
  56. package/src/find-similar-node.ts +1 -1
  57. package/src/index.ts +14 -32
  58. package/src/internal-node.ts +5 -5
  59. package/src/leaf-node.ts +6 -6
  60. package/src/minimal-string/bdd-to-minimal-string.ts +4 -4
  61. package/src/minimal-string/bdd-to-simple-bdd.ts +4 -4
  62. package/src/minimal-string/index.ts +5 -5
  63. package/src/minimal-string/minimal-string-to-simple-bdd.ts +3 -3
  64. package/src/minimal-string/resolve-with-simple-bdd.ts +2 -2
  65. package/src/optimize-brute-force.ts +5 -5
  66. package/src/parents.ts +1 -1
  67. package/src/root-node.ts +7 -7
  68. package/src/types.ts +3 -3
  69. package/src/util.ts +1 -1
  70. package/.github/workflows/main.yml +0 -22
  71. package/dist/es/abstract-node.js +0 -166
  72. package/dist/es/abstract-node.js.map +0 -1
  73. package/dist/es/branches.js.map +0 -1
  74. package/dist/es/create-bdd-from-truth-table.d.ts +0 -3
  75. package/dist/es/create-bdd-from-truth-table.js +0 -34
  76. package/dist/es/create-bdd-from-truth-table.js.map +0 -1
  77. package/dist/es/ensure-correct-bdd.js.map +0 -1
  78. package/dist/es/fill-truth-table.d.ts +0 -6
  79. package/dist/es/fill-truth-table.js +0 -22
  80. package/dist/es/find-similar-node.d.ts +0 -7
  81. package/dist/es/index.d.ts +0 -20
  82. package/dist/es/index.js +0 -14
  83. package/dist/es/index.js.map +0 -1
  84. package/dist/es/internal-node.js +0 -42
  85. package/dist/es/leaf-node.js.map +0 -1
  86. package/dist/es/minimal-string/bdd-to-simple-bdd.d.ts +0 -11
  87. package/dist/es/minimal-string/index.d.ts +0 -5
  88. package/dist/es/minimal-string/index.js +0 -6
  89. package/dist/es/minimal-string/resolve-with-simple-bdd.js +0 -17
  90. package/dist/es/optimize-brute-force.d.ts +0 -43
  91. package/dist/es/optimize-brute-force.js +0 -132
  92. package/dist/es/parents.js.map +0 -1
  93. package/dist/es/root-node.d.ts +0 -28
  94. package/dist/es/root-node.js +0 -154
  95. package/dist/es/root-node.js.map +0 -1
  96. package/dist/lib/abstract-node.d.ts +0 -33
  97. package/dist/lib/abstract-node.js.map +0 -1
  98. package/dist/lib/branches.d.ts +0 -20
  99. package/dist/lib/branches.js +0 -70
  100. package/dist/lib/branches.js.map +0 -1
  101. package/dist/lib/create-bdd-from-truth-table.d.ts +0 -3
  102. package/dist/lib/create-bdd-from-truth-table.js.map +0 -1
  103. package/dist/lib/ensure-correct-bdd.d.ts +0 -8
  104. package/dist/lib/ensure-correct-bdd.js +0 -97
  105. package/dist/lib/ensure-correct-bdd.js.map +0 -1
  106. package/dist/lib/fill-truth-table.js.map +0 -1
  107. package/dist/lib/find-similar-node.js +0 -18
  108. package/dist/lib/find-similar-node.js.map +0 -1
  109. package/dist/lib/index.d.ts +0 -20
  110. package/dist/lib/index.js +0 -14
  111. package/dist/lib/index.js.map +0 -1
  112. package/dist/lib/internal-node.d.ts +0 -16
  113. package/dist/lib/internal-node.js.map +0 -1
  114. package/dist/lib/leaf-node.d.ts +0 -10
  115. package/dist/lib/leaf-node.js +0 -29
  116. package/dist/lib/leaf-node.js.map +0 -1
  117. package/dist/lib/minimal-string/bdd-to-minimal-string.d.ts +0 -8
  118. package/dist/lib/minimal-string/bdd-to-minimal-string.js +0 -55
  119. package/dist/lib/minimal-string/bdd-to-minimal-string.js.map +0 -1
  120. package/dist/lib/minimal-string/bdd-to-simple-bdd.js +0 -19
  121. package/dist/lib/minimal-string/bdd-to-simple-bdd.js.map +0 -1
  122. package/dist/lib/minimal-string/index.d.ts +0 -5
  123. package/dist/lib/minimal-string/index.js +0 -6
  124. package/dist/lib/minimal-string/index.js.map +0 -1
  125. package/dist/lib/minimal-string/minimal-string-to-simple-bdd.d.ts +0 -2
  126. package/dist/lib/minimal-string/minimal-string-to-simple-bdd.js +0 -54
  127. package/dist/lib/minimal-string/minimal-string-to-simple-bdd.js.map +0 -1
  128. package/dist/lib/minimal-string/resolve-with-simple-bdd.d.ts +0 -2
  129. package/dist/lib/minimal-string/resolve-with-simple-bdd.js.map +0 -1
  130. package/dist/lib/minimal-string/string-format.d.ts +0 -9
  131. package/dist/lib/minimal-string/string-format.js +0 -54
  132. package/dist/lib/minimal-string/string-format.js.map +0 -1
  133. package/dist/lib/optimize-brute-force.js.map +0 -1
  134. package/dist/lib/parents.d.ts +0 -15
  135. package/dist/lib/parents.js +0 -38
  136. package/dist/lib/parents.js.map +0 -1
  137. package/dist/lib/root-node.js.map +0 -1
  138. package/dist/lib/types.d.ts +0 -24
  139. package/dist/lib/types.js +0 -2
  140. package/dist/lib/types.js.map +0 -1
  141. package/dist/lib/util.d.ts +0 -26
  142. package/dist/lib/util.js +0 -109
  143. package/dist/lib/util.js.map +0 -1
  144. package/renovate.json +0 -8
  145. package/test/helper/big-truth-table.json +0 -578
  146. package/test/helper/test-util.ts +0 -110
  147. package/test/unit/create-bdd-from-truth-table.test.ts +0 -24
  148. package/test/unit/find-similar-node.test.ts +0 -53
  149. package/test/unit/index.test.ts +0 -6
  150. package/test/unit/minimize.test.ts +0 -145
  151. package/test/unit/optimize-brute-force.test.ts +0 -114
  152. package/test/unit/resolve.test.ts +0 -74
  153. package/test/unit/simple-bdd.test.ts +0 -186
  154. package/tsconfig.json +0 -38
  155. package/tslint.json +0 -116
  156. /package/dist/{es → src}/find-similar-node.js +0 -0
  157. /package/dist/{es → src}/find-similar-node.js.map +0 -0
  158. /package/dist/{es → src}/minimal-string/bdd-to-simple-bdd.js +0 -0
  159. /package/dist/{es → src}/minimal-string/bdd-to-simple-bdd.js.map +0 -0
  160. /package/dist/{es → src}/minimal-string/string-format.d.ts +0 -0
  161. /package/dist/{es → src}/minimal-string/string-format.js +0 -0
  162. /package/dist/{es → src}/minimal-string/string-format.js.map +0 -0
  163. /package/dist/{es → src}/types.js +0 -0
  164. /package/dist/{es → src}/types.js.map +0 -0
  165. /package/dist/{es → src}/util.js +0 -0
  166. /package/dist/{es → src}/util.js.map +0 -0
@@ -1,26 +0,0 @@
1
- import type { BooleanString } from './types';
2
- export declare function booleanStringToBoolean(str: BooleanString): boolean;
3
- export declare function booleanToBooleanString(b: boolean): BooleanString;
4
- export declare function oppositeBoolean(input: BooleanString): BooleanString;
5
- export declare function lastChar(str: string): string;
6
- export declare function nextNodeId(): string;
7
- /**
8
- * @link https://stackoverflow.com/a/16155417
9
- */
10
- export declare function decimalToPaddedBinary(decimal: number, padding: number): string;
11
- export declare function oppositeBinary(i: string): string;
12
- export declare function binaryToDecimal(binary: string): number;
13
- export declare function minBinaryWithLength(length: number): string;
14
- export declare function maxBinaryWithLength(length: number): string;
15
- export declare function getNextStateSet(stateSet: string): string;
16
- export declare function firstKeyOfMap(map: Map<string, any>): string;
17
- /**
18
- * Shuffles array in place. ES6 version
19
- * @link https://stackoverflow.com/a/6274381
20
- */
21
- export declare function shuffleArray<T>(a: T[]): T[];
22
- export declare function lastOfArray<T>(ar: T[]): T;
23
- /**
24
- * @link https://stackoverflow.com/a/6259536
25
- */
26
- export declare function splitStringToChunks(str: string, chunkSize: number): string[];
package/dist/lib/util.js DELETED
@@ -1,109 +0,0 @@
1
- export function booleanStringToBoolean(str) {
2
- if (str === '1') {
3
- return true;
4
- }
5
- else {
6
- return false;
7
- }
8
- }
9
- export function booleanToBooleanString(b) {
10
- if (b) {
11
- return '1';
12
- }
13
- else {
14
- return '0';
15
- }
16
- }
17
- export function oppositeBoolean(input) {
18
- if (input === '1') {
19
- return '0';
20
- }
21
- else {
22
- return '1';
23
- }
24
- }
25
- export function lastChar(str) {
26
- return str.slice(-1);
27
- }
28
- /**
29
- * @link https://stackoverflow.com/a/1349426
30
- */
31
- function makeid(length = 6) {
32
- let result = '';
33
- const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
34
- const charactersLength = characters.length;
35
- for (let i = 0; i < length; i++) {
36
- result += characters.charAt(Math.floor(Math.random() * charactersLength));
37
- }
38
- return result;
39
- }
40
- const nodeIdPrefix = makeid(4);
41
- let lastIdGen = 0;
42
- export function nextNodeId() {
43
- const ret = 'node_' + nodeIdPrefix + '_' + lastIdGen;
44
- lastIdGen++;
45
- return ret;
46
- }
47
- /**
48
- * @link https://stackoverflow.com/a/16155417
49
- */
50
- export function decimalToPaddedBinary(decimal, padding) {
51
- const binary = (decimal >>> 0).toString(2);
52
- const padded = binary.padStart(padding, '0');
53
- return padded;
54
- }
55
- export function oppositeBinary(i) {
56
- if (i === '1') {
57
- return '0';
58
- }
59
- else if (i === '0') {
60
- return '1';
61
- }
62
- else {
63
- throw new Error('non-binary given');
64
- }
65
- }
66
- export function binaryToDecimal(binary) {
67
- return parseInt(binary, 2);
68
- }
69
- export function minBinaryWithLength(length) {
70
- return new Array(length).fill(0).map(() => '0').join('');
71
- }
72
- export function maxBinaryWithLength(length) {
73
- return new Array(length).fill(0).map(() => '1').join('');
74
- }
75
- export function getNextStateSet(stateSet) {
76
- const decimal = binaryToDecimal(stateSet);
77
- const increase = decimal + 1;
78
- const binary = decimalToPaddedBinary(increase, stateSet.length);
79
- return binary;
80
- }
81
- export function firstKeyOfMap(map) {
82
- const iterator1 = map.keys();
83
- return iterator1.next().value;
84
- }
85
- /**
86
- * Shuffles array in place. ES6 version
87
- * @link https://stackoverflow.com/a/6274381
88
- */
89
- export function shuffleArray(a) {
90
- for (let i = a.length - 1; i > 0; i--) {
91
- const j = Math.floor(Math.random() * (i + 1));
92
- [a[i], a[j]] = [a[j], a[i]];
93
- }
94
- return a;
95
- }
96
- export function lastOfArray(ar) {
97
- return ar[ar.length - 1];
98
- }
99
- /**
100
- * @link https://stackoverflow.com/a/6259536
101
- */
102
- export function splitStringToChunks(str, chunkSize) {
103
- const chunks = [];
104
- for (let i = 0, charsLength = str.length; i < charsLength; i += chunkSize) {
105
- chunks.push(str.substring(i, i + chunkSize));
106
- }
107
- return chunks;
108
- }
109
- //# sourceMappingURL=util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}
package/renovate.json DELETED
@@ -1,8 +0,0 @@
1
- {
2
- "extends": [
3
- "config:base"
4
- ],
5
- "statusCheckVerify": true,
6
- "automerge": true,
7
- "dependencyDashboard": false
8
- }