binary-decision-diagram 2.0.1 → 3.0.1

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/{es → 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/{es → 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/{es → 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/{es → 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/{es → 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/{es → 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/{es → 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/{lib → src}/util.d.ts +1 -1
  50. package/package.json +19 -19
  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.map +0 -1
  72. package/dist/es/branches.js.map +0 -1
  73. package/dist/es/create-bdd-from-truth-table.d.ts +0 -3
  74. package/dist/es/create-bdd-from-truth-table.js.map +0 -1
  75. package/dist/es/ensure-correct-bdd.js.map +0 -1
  76. package/dist/es/fill-truth-table.d.ts +0 -6
  77. package/dist/es/find-similar-node.d.ts +0 -7
  78. package/dist/es/index.d.ts +0 -20
  79. package/dist/es/index.js +0 -14
  80. package/dist/es/index.js.map +0 -1
  81. package/dist/es/leaf-node.js.map +0 -1
  82. package/dist/es/minimal-string/bdd-to-simple-bdd.d.ts +0 -11
  83. package/dist/es/minimal-string/index.d.ts +0 -5
  84. package/dist/es/minimal-string/index.js +0 -6
  85. package/dist/es/optimize-brute-force.d.ts +0 -43
  86. package/dist/es/parents.js.map +0 -1
  87. package/dist/es/root-node.d.ts +0 -28
  88. package/dist/es/root-node.js.map +0 -1
  89. package/dist/es/util.d.ts +0 -26
  90. package/dist/lib/abstract-node.d.ts +0 -33
  91. package/dist/lib/abstract-node.js +0 -170
  92. package/dist/lib/abstract-node.js.map +0 -1
  93. package/dist/lib/branches.d.ts +0 -20
  94. package/dist/lib/branches.js +0 -75
  95. package/dist/lib/branches.js.map +0 -1
  96. package/dist/lib/create-bdd-from-truth-table.d.ts +0 -3
  97. package/dist/lib/create-bdd-from-truth-table.js +0 -38
  98. package/dist/lib/create-bdd-from-truth-table.js.map +0 -1
  99. package/dist/lib/ensure-correct-bdd.d.ts +0 -8
  100. package/dist/lib/ensure-correct-bdd.js +0 -102
  101. package/dist/lib/ensure-correct-bdd.js.map +0 -1
  102. package/dist/lib/fill-truth-table.js +0 -26
  103. package/dist/lib/fill-truth-table.js.map +0 -1
  104. package/dist/lib/find-similar-node.js +0 -22
  105. package/dist/lib/find-similar-node.js.map +0 -1
  106. package/dist/lib/index.d.ts +0 -20
  107. package/dist/lib/index.js +0 -30
  108. package/dist/lib/index.js.map +0 -1
  109. package/dist/lib/internal-node.d.ts +0 -16
  110. package/dist/lib/internal-node.js +0 -46
  111. package/dist/lib/internal-node.js.map +0 -1
  112. package/dist/lib/leaf-node.d.ts +0 -10
  113. package/dist/lib/leaf-node.js +0 -33
  114. package/dist/lib/leaf-node.js.map +0 -1
  115. package/dist/lib/minimal-string/bdd-to-minimal-string.d.ts +0 -8
  116. package/dist/lib/minimal-string/bdd-to-minimal-string.js +0 -60
  117. package/dist/lib/minimal-string/bdd-to-minimal-string.js.map +0 -1
  118. package/dist/lib/minimal-string/bdd-to-simple-bdd.js +0 -24
  119. package/dist/lib/minimal-string/bdd-to-simple-bdd.js.map +0 -1
  120. package/dist/lib/minimal-string/index.d.ts +0 -5
  121. package/dist/lib/minimal-string/index.js +0 -22
  122. package/dist/lib/minimal-string/index.js.map +0 -1
  123. package/dist/lib/minimal-string/minimal-string-to-simple-bdd.d.ts +0 -2
  124. package/dist/lib/minimal-string/minimal-string-to-simple-bdd.js +0 -58
  125. package/dist/lib/minimal-string/minimal-string-to-simple-bdd.js.map +0 -1
  126. package/dist/lib/minimal-string/resolve-with-simple-bdd.d.ts +0 -2
  127. package/dist/lib/minimal-string/resolve-with-simple-bdd.js +0 -21
  128. package/dist/lib/minimal-string/resolve-with-simple-bdd.js.map +0 -1
  129. package/dist/lib/minimal-string/string-format.d.ts +0 -9
  130. package/dist/lib/minimal-string/string-format.js +0 -61
  131. package/dist/lib/minimal-string/string-format.js.map +0 -1
  132. package/dist/lib/optimize-brute-force.js +0 -140
  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 -42
  136. package/dist/lib/parents.js.map +0 -1
  137. package/dist/lib/root-node.js +0 -158
  138. package/dist/lib/root-node.js.map +0 -1
  139. package/dist/lib/types.d.ts +0 -24
  140. package/dist/lib/types.js +0 -3
  141. package/dist/lib/types.js.map +0 -1
  142. package/dist/lib/util.js +0 -127
  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,578 +0,0 @@
1
- {
2
- "10000010010000001": 1,
3
- "10011010010000001": 1,
4
- "10010010010000001": 1,
5
- "10000000010000101": 2,
6
- "10000000010000001": 10,
7
- "10010000010000101": 2,
8
- "10010000010000001": 10,
9
- "01000000001000011": 8,
10
- "01010000101000011": 8,
11
- "01010000001000011": 8,
12
- "10010000110000001": 12,
13
- "10000000010001001": 1,
14
- "10011000110001001": 5,
15
- "10010000110001001": 6,
16
- "10010000010001001": 1,
17
- "10010110010000001": 12,
18
- "01011000101000011": 5,
19
- "10010100010001001": 12,
20
- "01000000000010101": 2,
21
- "01000000000000001": 12,
22
- "01010000100000001": 12,
23
- "01010000000010101": 2,
24
- "01010000000000001": 12,
25
- "01010100001000011": 8,
26
- "10000110010000001": 12,
27
- "10011110010000001": 12,
28
- "01000000011000011": 12,
29
- "01010000111000111": 12,
30
- "01010000111000011": 12,
31
- "01010000011000011": 12,
32
- "01011000111000111": 12,
33
- "01010100110100011": 12,
34
- "10000100010001001": 12,
35
- "10000100010000001": 10,
36
- "10011100110001001": 12,
37
- "10010100010000001": 10,
38
- "10010100110001001": 12,
39
- "01000100010100011": 12,
40
- "01011100110100111": 12,
41
- "01010100010100011": 12,
42
- "01000000010100001": 12,
43
- "01000000010000001": 12,
44
- "01010000110000001": 12,
45
- "01010000010100001": 12,
46
- "01010000010000001": 12,
47
- "01000100000101001": 12,
48
- "01000100010101001": 12,
49
- "01000100010000001": 12,
50
- "01011100100101001": 12,
51
- "01011100110101001": 12,
52
- "01011100110000001": 12,
53
- "01010100000101001": 12,
54
- "01010100010101001": 12,
55
- "01010100010000001": 12,
56
- "01010100110100111": 12,
57
- "01000100001000011": 8,
58
- "01010100101000011": 8,
59
- "01000000000101001": 1,
60
- "01011000100101001": 5,
61
- "01010000100101001": 6,
62
- "01010000000101001": 1,
63
- "10010100110000001": 12,
64
- "01000100011000011": 12,
65
- "01010100111000011": 12,
66
- "01010100011000011": 12,
67
- "01011100101000011": 5,
68
- "01000000001000010": 7,
69
- "01011000101000010": 12,
70
- "01010000101000010": 12,
71
- "01010000001000010": 7,
72
- "10000100010000101": 2,
73
- "10010100010000101": 2,
74
- "01010000110010011": 12,
75
- "01000100011001011": 12,
76
- "01011100110011011": 12,
77
- "01010100110011011": 12,
78
- "01010100011001011": 12,
79
- "01000000011001011": 11,
80
- "01011000110011011": 5,
81
- "01010000110011011": 6,
82
- "01010000011001011": 11,
83
- "01011100111001011": 12,
84
- "01000100000010101": 2,
85
- "01000100000000001": 12,
86
- "01011100100000001": 12,
87
- "01010100100101001": 12,
88
- "01010100100000001": 12,
89
- "01010100000010101": 2,
90
- "01010100000000001": 12,
91
- "01000100001000010": 7,
92
- "01011100101000010": 12,
93
- "01010100101000010": 12,
94
- "01010100001000010": 7,
95
- "01000000011000111": 11,
96
- "01000100011000111": 11,
97
- "01010100111000111": 12,
98
- "01000100010100111": 5,
99
- "01010100010100111": 5,
100
- "01010100011000111": 11,
101
- "01000000010100101": 2,
102
- "01010000010100101": 2,
103
- "01011000110000001": 12,
104
- "01011100111000111": 12,
105
- "01010000110100001": 12,
106
- "01010000011000111": 11,
107
- "01000100010100001": 12,
108
- "01010100010100001": 12,
109
- "01010100110101001": 12,
110
- "01010100110000001": 12,
111
- "01000110000000001": 12,
112
- "01000110010000001": 12,
113
- "01011110000000001": 12,
114
- "01011110010000001": 12,
115
- "01010110000000001": 12,
116
- "01010110010000001": 12,
117
- "01011100111000011": 5,
118
- "01010100110100001": 12,
119
- "01000000010101001": 1,
120
- "01011000110101001": 5,
121
- "01010000110101001": 6,
122
- "01010000010101001": 1,
123
- "01000000011000010": 7,
124
- "01011000111000110": 12,
125
- "01010000111000110": 12,
126
- "01010000011000010": 7,
127
- "01000100010100010": 3,
128
- "01000100011000010": 7,
129
- "01011100110100110": 12,
130
- "01010100110100110": 12,
131
- "01010100111000010": 12,
132
- "01010100110100010": 12,
133
- "01010100010100010": 3,
134
- "01010100011000010": 7,
135
- "01011000111000011": 5,
136
- "00100000001000010": 7,
137
- "00110000101000010": 12,
138
- "00100100001000010": 7,
139
- "00111100101000010": 12,
140
- "00110100101000010": 12,
141
- "00100100000100010": 3,
142
- "00100100000000010": 3,
143
- "00111100100100010": 12,
144
- "00111100100000010": 12,
145
- "00110100100100010": 12,
146
- "00110100100000010": 12,
147
- "00110100001000010": 7,
148
- "00110100000100010": 3,
149
- "00110100000000010": 3,
150
- "00110000001000010": 7,
151
- "00111000101000010": 12,
152
- "01000001011000001": 12,
153
- "01000001011001001": 11,
154
- "01011001111000001": 5,
155
- "01011001111001001": 5,
156
- "01010001011000001": 12,
157
- "01010001011001001": 11,
158
- "01000001011000000": 7,
159
- "01000001011001000": 7,
160
- "01011001111000000": 12,
161
- "01011001111001000": 12,
162
- "01010001011000000": 7,
163
- "01010001011001000": 7,
164
- "01010001111000001": 12,
165
- "01011001111000101": 12,
166
- "01010001111000101": 12,
167
- "01000001010000001": 12,
168
- "01011001110000001": 12,
169
- "01010001110000001": 12,
170
- "01010001010000001": 12,
171
- "01000101011000001": 12,
172
- "01011101111000001": 5,
173
- "01010101011000001": 12,
174
- "01010101111000001": 12,
175
- "01000001010000101": 2,
176
- "01000001010001001": 1,
177
- "01011001110001001": 5,
178
- "01010001010000101": 2,
179
- "01010001010001001": 1,
180
- "01000101011001001": 12,
181
- "01011101110001001": 12,
182
- "01010101111001001": 12,
183
- "01010101011001001": 12,
184
- "01010101110001001": 12,
185
- "01010001111000000": 12,
186
- "01000001011000101": 11,
187
- "01010001011000101": 11,
188
- "01000101010000101": 12,
189
- "01011101110000101": 12,
190
- "01010101110000101": 12,
191
- "01010101010000101": 12,
192
- "01010001111001000": 12,
193
- "01010101111000101": 12,
194
- "01000101010001001": 12,
195
- "01000101010000001": 12,
196
- "01011101110000001": 12,
197
- "01010101110000001": 12,
198
- "01010101010001001": 12,
199
- "01010101010000001": 12,
200
- "01000101011000101": 11,
201
- "01010101011000101": 11,
202
- "01011001111000100": 12,
203
- "01010001111000100": 12,
204
- "01000101011000000": 7,
205
- "01000101010000000": 12,
206
- "01011101110000100": 12,
207
- "01010101110000100": 12,
208
- "01010101111000000": 12,
209
- "01010101011000000": 7,
210
- "01010101010000000": 12,
211
- "01000111010000001": 12,
212
- "01011111010000001": 12,
213
- "01010111010000001": 12,
214
- "01010001110001001": 6,
215
- "00100001001000000": 7,
216
- "00110001101000000": 12,
217
- "00100101001000000": 7,
218
- "00100101000000000": 12,
219
- "00111101100000000": 12,
220
- "00110101100000000": 12,
221
- "00110101101000000": 12,
222
- "00110101000000000": 12,
223
- "00111001101000000": 12,
224
- "00110001001000000": 7,
225
- "00110101001000000": 7,
226
- "00111101101000000": 12,
227
- "01010000111001011": 11,
228
- "01000000011001010": 7,
229
- "01010000111001010": 12,
230
- "01010000111000010": 12,
231
- "01010000011001010": 7,
232
- "01011000111001011": 5,
233
- "01010001111001001": 11,
234
- "01000010000000001": 1,
235
- "01000010010000001": 1,
236
- "01011010000000001": 1,
237
- "01011010010000001": 1,
238
- "01010010000000001": 1,
239
- "01010010010000001": 1,
240
- "01000011010000001": 1,
241
- "01011011010000001": 1,
242
- "01010011010000001": 1,
243
- "01011000111001010": 12,
244
- "01011000111000010": 12,
245
- "01011000110010011": 12,
246
- "01010000110000011": 12,
247
- "01011000100000001": 12,
248
- "01010101010001000": 12,
249
- "01010101110000000": 12,
250
- "10000010010000000": 0,
251
- "10011010010000000": 0,
252
- "10010010010000000": 0,
253
- "10000110010000000": 0,
254
- "10011110010000000": 0,
255
- "10010110010000000": 0,
256
- "01000110000000011": 0,
257
- "01011110000000011": 0,
258
- "01010110000000011": 0,
259
- "01000010000000000": 0,
260
- "01011010000000000": 0,
261
- "01010010000000000": 0,
262
- "01000110000000000": 0,
263
- "01011110000000000": 0,
264
- "01010110000000000": 0,
265
- "01000110000000010": 0,
266
- "01011110000000010": 0,
267
- "01010110000000010": 0,
268
- "10011000110000101": 0,
269
- "10011000110000001": 0,
270
- "01011000100010111": 0,
271
- "01011000100000011": 0,
272
- "10010000110000101": 0,
273
- "01011000110000011": 0,
274
- "01010000100010111": 0,
275
- "01000110010000011": 0,
276
- "01011110010000011": 0,
277
- "01010110010000011": 0,
278
- "01000010010000000": 0,
279
- "01011010010000000": 0,
280
- "01010010010000000": 0,
281
- "01000110010000000": 0,
282
- "01011110010000000": 0,
283
- "01010110010000000": 0,
284
- "01000000000010100": 0,
285
- "01000000000000000": 0,
286
- "01011000100010100": 0,
287
- "01011000100000000": 0,
288
- "01010000000010100": 0,
289
- "01010000000000000": 0,
290
- "10000000010000100": 0,
291
- "10000000010001000": 0,
292
- "10000000010000000": 0,
293
- "10011000110000100": 0,
294
- "10011000110001000": 0,
295
- "10011000110000000": 0,
296
- "10010000010000100": 0,
297
- "10010000010001000": 0,
298
- "10010000010000000": 0,
299
- "10010000110000000": 0,
300
- "10010000110001000": 0,
301
- "01010000100000011": 0,
302
- "01010100000101011": 0,
303
- "01000000010100100": 0,
304
- "01000000010000000": 0,
305
- "01011000110100100": 0,
306
- "01011000110000000": 0,
307
- "01010000010100100": 0,
308
- "01010000010000000": 0,
309
- "01011000100010101": 0,
310
- "01011000110100101": 0,
311
- "01010000110100101": 0,
312
- "01011000110010111": 0,
313
- "01010000110010111": 0,
314
- "01000000010101000": 0,
315
- "01011000110101000": 0,
316
- "01010000010101000": 0,
317
- "01010000100010101": 0,
318
- "01010100010101011": 0,
319
- "01000000010100000": 0,
320
- "01010000100010100": 0,
321
- "01010000110100000": 0,
322
- "01010000110000000": 0,
323
- "01010000010100000": 0,
324
- "00111000100010010": 0,
325
- "00111000100000010": 0,
326
- "00110000100010010": 0,
327
- "00110000100000010": 0,
328
- "00100110000000010": 0,
329
- "00111110000000010": 0,
330
- "00110110000000010": 0,
331
- "00100010000000000": 0,
332
- "00111010000000000": 0,
333
- "00110010000000000": 0,
334
- "00100110000000000": 0,
335
- "00111110000000000": 0,
336
- "00110110000000000": 0,
337
- "00100000000010000": 0,
338
- "00100000000000000": 0,
339
- "00111000100010000": 0,
340
- "00111000100000000": 0,
341
- "00110000100010000": 0,
342
- "00110000100000000": 0,
343
- "00110000000010000": 0,
344
- "00110000000000000": 0,
345
- "00100000000100000": 0,
346
- "00111000100100000": 0,
347
- "00110000000100000": 0,
348
- "01000011010000000": 0,
349
- "01011011010000000": 0,
350
- "01010011010000000": 0,
351
- "01000111010000000": 0,
352
- "01011111010000000": 0,
353
- "01010111010000000": 0,
354
- "01011001110000101": 0,
355
- "01000001010001000": 0,
356
- "01000001010000000": 0,
357
- "01011001110001000": 0,
358
- "01011001110000000": 0,
359
- "01010001010001000": 0,
360
- "01010001010000000": 0,
361
- "01010001110000101": 0,
362
- "00111001100000000": 0,
363
- "00110001100000000": 0,
364
- "00100111000000000": 0,
365
- "00111111000000000": 0,
366
- "00110111000000000": 0,
367
- "00100011000000000": 0,
368
- "00111011000000000": 0,
369
- "00110011000000000": 0,
370
- "01000000000101000": 0,
371
- "01000000010001000": 0,
372
- "01011000100101000": 0,
373
- "01011000110011000": 0,
374
- "01010000100101000": 0,
375
- "01010000110001000": 0,
376
- "01010000000101000": 0,
377
- "01010000010001000": 0,
378
- "01011000110011010": 0,
379
- "01011000110000010": 0,
380
- "01010000110011010": 0,
381
- "01010000110000010": 0,
382
- "01000110010000010": 0,
383
- "01011110010000010": 0,
384
- "01010110010000010": 0,
385
- "00110000100100000": 0,
386
- "01000001010000100": 0,
387
- "01011001110000100": 0,
388
- "01010001010000100": 0,
389
- "00100001000000000": 0,
390
- "00110001000000000": 0,
391
- "01010001110000000": 0,
392
- "01010001110001000": 0,
393
- "01010000100000000": 0,
394
- "01000000010011000": 0,
395
- "01010000010011000": 0,
396
- "01000100000101011": 0,
397
- "01000100010101011": 0,
398
- "01000000010010100": 0,
399
- "01011000110010100": 0,
400
- "01010000010010100": 0,
401
- "10010000110000100": 0,
402
- "01010100010001011": 0,
403
- "01010001110000100": 0,
404
- "01011000100010110": 0,
405
- "01011000100000010": 0,
406
- "01010000100010110": 0,
407
- "01010000100000010": 0,
408
- "01010100000000011": 0,
409
- "10010100010000000": 0,
410
- "01010100110000011": 12,
411
- "00110100000000000": 0,
412
- "01010100010000011": 12,
413
- "10010100010001000": 0,
414
- "01010100010100101": 2,
415
- "01010100011001010": 7,
416
- "00110100000100000": 0,
417
- "01010101011001000": 7,
418
- "01010100010000010": 3,
419
- "10000100010000000": 0,
420
- "01000100010000011": 12,
421
- "00100100000000000": 0,
422
- "01000100000000011": 0,
423
- "01000100010000010": 3,
424
- "01011100100101011": 0,
425
- "01011100100000011": 0,
426
- "00110100100000000": 0,
427
- "01010100100000011": 0,
428
- "01010100000101000": 0,
429
- "00100100000010000": 0,
430
- "10000100010000100": 0,
431
- "01000101010000100": 0,
432
- "10000100010001000": 0,
433
- "01000101010001000": 12,
434
- "01000100000000000": 0,
435
- "01010100000101010": 3,
436
- "01000100000101010": 3,
437
- "01000000010000100": 0,
438
- "01010000110000100": 0,
439
- "01010000010000100": 0,
440
- "01000000010010000": 0,
441
- "01010000110010000": 0,
442
- "01010000010010000": 0,
443
- "01000100000000010": 3,
444
- "10011100110000001": 0,
445
- "01010100100101011": 0,
446
- "01010100000000000": 0,
447
- "10010100010000100": 0,
448
- "10011100110000101": 0,
449
- "10010100110000101": 0,
450
- "01000100000101000": 0,
451
- "01011100100101000": 0,
452
- "01011100100000000": 0,
453
- "01010100100000000": 0,
454
- "01010100000010100": 0,
455
- "00110100000010000": 0,
456
- "01010101010000100": 0,
457
- "01010000110101000": 0,
458
- "01010100000000010": 3,
459
- "01010000110010100": 0,
460
- "01000100010000000": 0,
461
- "01010100010000000": 0,
462
- "01000100010100101": 2,
463
- "01000100010101010": 3,
464
- "00100100000100000": 0,
465
- "01010100010101010": 3,
466
- "01011100100010111": 0,
467
- "01010100100010111": 0,
468
- "10010100110000000": 0,
469
- "00111100100010010": 0,
470
- "00111100100100000": 0,
471
- "01011100100101010": 12,
472
- "10011100110001000": 0,
473
- "01011101110001000": 12,
474
- "01011000110100001": 12,
475
- "01011000110001011": 5,
476
- "01011000110001010": 0,
477
- "01010100010101000": 0,
478
- "01010100010100100": 0,
479
- "01010100010011000": 0,
480
- "01000100011001010": 7,
481
- "01000100010001011": 0,
482
- "01011100100010101": 0,
483
- "01000101011001000": 7,
484
- "01000100010101000": 0,
485
- "01000100000010100": 0,
486
- "01000100010100100": 0,
487
- "01000100010011000": 0,
488
- "01010000110011000": 0,
489
- "01011100110000011": 0,
490
- "01010000110100100": 0,
491
- "00110100100010010": 0,
492
- "10010100110001000": 0,
493
- "01010100100101000": 0,
494
- "00110100100100000": 0,
495
- "01011100110000000": 0,
496
- "00111100100000000": 0,
497
- "01011100100010100": 0,
498
- "00111100100010000": 0,
499
- "10011100110000000": 0,
500
- "01010100010010100": 0,
501
- "10011100110000100": 0,
502
- "01011101110000000": 12,
503
- "01011101111001001": 12,
504
- "01011101111001000": 12,
505
- "01011100110010111": 0,
506
- "01010100110010111": 0,
507
- "01010100100101010": 12,
508
- "01011100110101011": 0,
509
- "01010100111001011": 12,
510
- "01011100110100101": 0,
511
- "01011100111001010": 12,
512
- "01011100110101010": 12,
513
- "01011000110010000": 0,
514
- "01010100010001000": 0,
515
- "01011100110001011": 12,
516
- "01000100010010100": 0,
517
- "01000100010001000": 0,
518
- "01010100010010000": 0,
519
- "01000100010010000": 0,
520
- "01011101111000101": 12,
521
- "01010100010000100": 0,
522
- "01000100010000100": 0,
523
- "01010100110100101": 0,
524
- "01010100111001010": 12,
525
- "01010101110001000": 12,
526
- "01010101111001000": 12,
527
- "01011000110000100": 0,
528
- "01010100110101011": 0,
529
- "01010100010100000": 0,
530
- "01000100010100000": 0,
531
- "01010100110010011": 12,
532
- "01011000110100000": 0,
533
- "01010000110001011": 6,
534
- "01010000110001010": 0,
535
- "01011100110101000": 0,
536
- "01011100110010100": 0,
537
- "01011100110001000": 0,
538
- "01011100110100100": 0,
539
- "01010100110001011": 0,
540
- "01011100100000010": 12,
541
- "01011100100010110": 0,
542
- "01011101111000000": 12,
543
- "01010100010000111": 5,
544
- "01000100010000111": 5,
545
- "01010100110000111": 12,
546
- "01011100110000111": 12,
547
- "01011100110011010": 0,
548
- "01010100110011010": 0,
549
- "01011100110011000": 0,
550
- "01010100110000010": 12,
551
- "01011100110100011": 5,
552
- "01010000110000111": 0,
553
- "01011100110000010": 12,
554
- "10010100110000100": 0,
555
- "01010100110010100": 0,
556
- "01010100110010000": 0,
557
- "01010100110000100": 0,
558
- "01010100110100000": 0,
559
- "01010100110100100": 0,
560
- "01010100110000000": 0,
561
- "01010100010001010": 3,
562
- "01011100110001010": 3,
563
- "01000100010001010": 3,
564
- "01010100100010110": 0,
565
- "01010100110101010": 12,
566
- "01010100100010100": 0,
567
- "01011100110100000": 0,
568
- "01011100111000010": 12,
569
- "01011000110000111": 0,
570
- "00110100100010000": 0,
571
- "01011000110001000": 0,
572
- "01010100100000010": 12,
573
- "01010100110001000": 0,
574
- "01010100110011000": 0,
575
- "01010100100010101": 0,
576
- "01010100110101000": 0,
577
- "01011100110100001": 0
578
- }
@@ -1,110 +0,0 @@
1
- import * as fs from 'fs';
2
- import * as path from 'path';
3
-
4
- import { TruthTable, ResolverFunctions } from '../../src/types';
5
- import { fillTruthTable } from '../../src/fill-truth-table';
6
- import {
7
- maxBinaryWithLength,
8
- binaryToDecimal,
9
- decimalToPaddedBinary,
10
- booleanStringToBoolean
11
- } from '../../src/util';
12
- import { randomBoolean } from 'async-test-util';
13
-
14
- export function readJsonFile(filePath: string): any {
15
- const content = fs.readFileSync(filePath, 'utf-8');
16
- return JSON.parse(content);
17
- }
18
-
19
- export function objectToMap<K, V>(object: {
20
- [k: string]: V
21
- }): Map<K, V> {
22
- const ret = new Map();
23
- Object.entries(object).forEach(([k, v]) => {
24
- ret.set(k, v);
25
- });
26
- return ret;
27
- }
28
-
29
- export const UNKNOWN = 42;
30
-
31
- export function exampleTruthTable(
32
- stateLength: number = 3
33
- ): TruthTable {
34
- let lastId = 0;
35
- const ret: TruthTable = new Map();
36
- const maxBin = maxBinaryWithLength(stateLength);
37
- const maxDecimal = binaryToDecimal(maxBin);
38
-
39
- const end = maxDecimal;
40
- let start = 0;
41
- while (start <= end) {
42
- ret.set(
43
- decimalToPaddedBinary(start, stateLength),
44
- lastId++
45
- );
46
- start++;
47
- }
48
- return ret;
49
- }
50
-
51
- export function allEqualTable(
52
- stateLength: number = 3
53
- ): TruthTable {
54
- const table = exampleTruthTable(stateLength);
55
- const keys = Array.from(table.keys());
56
- keys.forEach(k => table.set(k, 1));
57
- return table;
58
- }
59
-
60
- export function randomTable(
61
- stateLength: number = 3
62
- ): TruthTable {
63
- const table = exampleTruthTable(stateLength);
64
- const keys = Array.from(table.keys());
65
- keys.forEach(k => {
66
- // '2' is more often then '1'
67
- const val = (randomBoolean() && randomBoolean()) ? 1 : 2;
68
- table.set(k, val);
69
- });
70
- return table;
71
- }
72
-
73
- export function randomUnknownTable(
74
- stateLength: number = 3
75
- ): TruthTable {
76
- const table = exampleTruthTable(stateLength);
77
- for (const [key, value] of table.entries()) {
78
- if (randomBoolean()) {
79
- table.set(key, UNKNOWN);
80
- }
81
- }
82
- return table;
83
- }
84
-
85
- export function getBigTruthTable(): TruthTable {
86
- const json = readJsonFile(
87
- path.join(__dirname, 'big-truth-table.json')
88
- );
89
- const table = objectToMap(json) as TruthTable;
90
- const firstKey = table.keys().next().value;
91
- const keyLength = firstKey.length;
92
-
93
- fillTruthTable(table, keyLength, UNKNOWN);
94
- return table;
95
- }
96
-
97
- export function getResolverFunctions(size: number, log: boolean = false): ResolverFunctions {
98
- const resolvers: ResolverFunctions = {};
99
- new Array(size).fill(0).forEach((_x, index) => {
100
- const fn = (state: string) => {
101
- const ret = booleanStringToBoolean((state as any)[index]);
102
- if (log) {
103
- console.log('called resolver function with index ' + index + ' returned ' + ret);
104
- }
105
- return ret;
106
- };
107
- resolvers[index] = fn;
108
- });
109
- return resolvers;
110
- }