binary-decision-diagram 2.0.1 → 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/{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 +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.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,10 +1,10 @@
1
- import { nextNodeId } from './util';
2
- import type { NonRootNode, NonLeafNode, NodeType } from './types';
3
- import { Branches } from './branches';
4
- import { RootNode } from './root-node';
5
- import { InternalNode } from './internal-node';
6
- import { LeafNode } from './leaf-node';
7
- import { findSimilarNode } from './find-similar-node';
1
+ import { nextNodeId } from './util.js';
2
+ import type { NonRootNode, NonLeafNode, NodeType } from './types.js';
3
+ import { Branches } from './branches.js';
4
+ import { RootNode } from './root-node.js';
5
+ import { InternalNode } from './internal-node.js';
6
+ import { LeafNode } from './leaf-node.js';
7
+ import { findSimilarNode } from './find-similar-node.js';
8
8
 
9
9
  export class AbstractNode {
10
10
  readonly id: string = nextNodeId();
package/src/branches.ts CHANGED
@@ -1,5 +1,5 @@
1
- import type { BooleanString, NonRootNode, NonLeafNode } from './types';
2
- import { AbstractNode } from './abstract-node';
1
+ import type { BooleanString, NonRootNode, NonLeafNode } from './types.js';
2
+ import { AbstractNode } from './abstract-node.js';
3
3
 
4
4
  /**
5
5
  * represents the branches of a single node
@@ -1,8 +1,8 @@
1
- import { RootNode } from './root-node';
2
- import { lastChar } from './util';
3
- import { InternalNode } from './internal-node';
4
- import { LeafNode } from './leaf-node';
5
- import type { TruthTable, NonLeafNode, BooleanString } from './types';
1
+ import { RootNode } from './root-node.js';
2
+ import { lastChar } from './util.js';
3
+ import { InternalNode } from './internal-node.js';
4
+ import { LeafNode } from './leaf-node.js';
5
+ import type { TruthTable, NonLeafNode, BooleanString } from './types.js';
6
6
 
7
7
  export function createBddFromTruthTable(
8
8
  truthTable: TruthTable
@@ -1,7 +1,7 @@
1
- import { RootNode } from './root-node';
2
- import { AbstractNode } from './abstract-node';
3
- import type { NonRootNode, NonLeafNode } from './types';
4
- import { InternalNode } from './internal-node';
1
+ import { RootNode } from './root-node.js';
2
+ import { AbstractNode } from './abstract-node.js';
3
+ import type { NonRootNode, NonLeafNode } from './types.js';
4
+ import { InternalNode } from './internal-node.js';
5
5
 
6
6
  /**
7
7
  * run some tests on the bdd
@@ -2,8 +2,8 @@ import {
2
2
  minBinaryWithLength,
3
3
  maxBinaryWithLength,
4
4
  getNextStateSet
5
- } from './util';
6
- import type { TruthTable } from './types';
5
+ } from './util.js';
6
+ import type { TruthTable } from './types.js';
7
7
 
8
8
  /**
9
9
  * fills each missing row of a table
@@ -1,4 +1,4 @@
1
- import { AbstractNode } from './abstract-node';
1
+ import { AbstractNode } from './abstract-node.js';
2
2
 
3
3
  /**
4
4
  * find an simliar node in a list of nodes
package/src/index.ts CHANGED
@@ -1,32 +1,14 @@
1
- export * from './minimal-string/index';
2
- export * from './abstract-node';
3
- export * from './branches';
4
- export * from './create-bdd-from-truth-table';
5
- export * from './ensure-correct-bdd';
6
- export * from './fill-truth-table';
7
- export * from './find-similar-node';
8
- export * from './internal-node';
9
- export * from './leaf-node';
10
- export * from './optimize-brute-force';
11
- export * from './parents';
12
- export * from './root-node';
13
- export * from './util';
14
-
15
- /**
16
- * There is no "export type * from 'xxx'"
17
- * So we have to export each type by its own
18
- * to ensure the types js file is not included
19
- * into the bundle.
20
- */
21
-
22
- export type {
23
- NodeType,
24
- NonLeafNode,
25
- NonRootNode,
26
- TruthTable,
27
- BooleanString,
28
- ResolverFunction,
29
- ResolverFunctions,
30
- SimpleBddLeafNode,
31
- SimpleBdd
32
- } from './types';
1
+ export * from './minimal-string/index.js';
2
+ export * from './abstract-node.js';
3
+ export * from './branches.js';
4
+ export * from './create-bdd-from-truth-table.js';
5
+ export * from './ensure-correct-bdd.js';
6
+ export * from './fill-truth-table.js';
7
+ export * from './find-similar-node.js';
8
+ export * from './internal-node.js';
9
+ export * from './leaf-node.js';
10
+ export * from './optimize-brute-force.js';
11
+ export * from './parents.js';
12
+ export * from './root-node.js';
13
+ export * from './util.js';
14
+ export type * from './types.js';
@@ -1,8 +1,8 @@
1
- import { Branches } from './branches';
2
- import { Parents } from './parents';
3
- import { RootNode } from './root-node';
4
- import { AbstractNode } from './abstract-node';
5
- import type { NonLeafNode, NonRootNode } from './types';
1
+ import { Branches } from './branches.js';
2
+ import { Parents } from './parents.js';
3
+ import { RootNode } from './root-node.js';
4
+ import { AbstractNode } from './abstract-node.js';
5
+ import type { NonLeafNode, NonRootNode } from './types.js';
6
6
 
7
7
  export class InternalNode extends AbstractNode {
8
8
  public branches: Branches = new Branches(this);
package/src/leaf-node.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { Parents } from './parents';
2
- import { AbstractNode } from './abstract-node';
3
- import { RootNode } from './root-node';
4
- import type { NonLeafNode } from './types';
5
- import { oppositeBoolean } from './util';
6
- import { InternalNode } from './internal-node';
1
+ import { Parents } from './parents.js';
2
+ import { AbstractNode } from './abstract-node.js';
3
+ import { RootNode } from './root-node.js';
4
+ import type { NonLeafNode } from './types.js';
5
+ import { oppositeBoolean } from './util.js';
6
+ import { InternalNode } from './internal-node.js';
7
7
 
8
8
  export class LeafNode extends AbstractNode {
9
9
  public parents = new Parents(this);
@@ -1,9 +1,9 @@
1
- import { RootNode } from '../root-node';
2
- import { AbstractNode } from '../abstract-node';
3
- import { getCharOfLevel, getCharOfValue, getNextCharId } from './string-format';
1
+ import { RootNode } from '../root-node.js';
2
+ import { AbstractNode } from '../abstract-node.js';
3
+ import { getCharOfLevel, getCharOfValue, getNextCharId } from './string-format.js';
4
4
  import {
5
5
  FIRST_CHAR_CODE_FOR_ID
6
- } from './string-format';
6
+ } from './string-format.js';
7
7
 
8
8
 
9
9
  export function bddToMinimalString(bdd: RootNode): string {
@@ -1,9 +1,9 @@
1
- import { RootNode } from '../root-node';
1
+ import { RootNode } from '../root-node.js';
2
2
  import {
3
3
  SimpleBdd
4
- } from '../types';
5
- import { AbstractNode } from '../abstract-node';
6
- import { InternalNode } from '../internal-node';
4
+ } from '../types.js';
5
+ import { AbstractNode } from '../abstract-node.js';
6
+ import { InternalNode } from '../internal-node.js';
7
7
 
8
8
  /**
9
9
  * @recursive
@@ -1,5 +1,5 @@
1
- export * from './bdd-to-minimal-string';
2
- export * from './minimal-string-to-simple-bdd';
3
- export * from './resolve-with-simple-bdd';
4
- export * from './string-format';
5
- export * from './bdd-to-simple-bdd';
1
+ export * from './bdd-to-minimal-string.js';
2
+ export * from './minimal-string-to-simple-bdd.js';
3
+ export * from './resolve-with-simple-bdd.js';
4
+ export * from './string-format.js';
5
+ export * from './bdd-to-simple-bdd.js';
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  SimpleBdd,
3
3
  SimpleBddLeafNode
4
- } from '../types';
5
- import { splitStringToChunks } from '../util';
6
- import { getNumberOfChar } from './string-format';
4
+ } from '../types.js';
5
+ import { splitStringToChunks } from '../util.js';
6
+ import { getNumberOfChar } from './string-format.js';
7
7
 
8
8
  export function minimalStringToSimpleBdd(
9
9
  str: string
@@ -2,8 +2,8 @@ import {
2
2
  SimpleBdd,
3
3
  ResolverFunctions,
4
4
  SimpleBddLeafNode
5
- } from '../types';
6
- import { booleanToBooleanString } from '../util';
5
+ } from '../types.js';
6
+ import { booleanToBooleanString } from '../util.js';
7
7
 
8
8
  export function resolveWithSimpleBdd(
9
9
  simpleBdd: SimpleBdd,
@@ -1,8 +1,8 @@
1
- import type { TruthTable } from './types';
2
- import { RootNode } from './root-node';
3
- import { createBddFromTruthTable } from './create-bdd-from-truth-table';
4
- import { firstKeyOfMap, shuffleArray, lastOfArray } from './util';
5
- import { AbstractNode } from './abstract-node';
1
+ import type { TruthTable } from './types.js';
2
+ import { RootNode } from './root-node.js';
3
+ import { createBddFromTruthTable } from './create-bdd-from-truth-table.js';
4
+ import { firstKeyOfMap, shuffleArray, lastOfArray } from './util.js';
5
+ import { AbstractNode } from './abstract-node.js';
6
6
 
7
7
  /**
8
8
  * a function that is called each time
package/src/parents.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type {
2
2
  NonLeafNode,
3
3
  NonRootNode
4
- } from './types';
4
+ } from './types.js';
5
5
 
6
6
  /**
7
7
  * represents the parents of a single node
package/src/root-node.ts CHANGED
@@ -1,18 +1,18 @@
1
- import { AbstractNode } from './abstract-node';
2
- import { Branches } from './branches';
1
+ import { AbstractNode } from './abstract-node.js';
2
+ import { Branches } from './branches.js';
3
3
  import type {
4
4
  NonRootNode,
5
5
  ResolverFunctions,
6
6
  NonLeafNode,
7
7
  SimpleBdd
8
- } from './types';
8
+ } from './types.js';
9
9
  import {
10
10
  lastOfArray,
11
11
  booleanToBooleanString
12
- } from './util';
13
- import { InternalNode } from './internal-node';
14
- import { LeafNode } from './leaf-node';
15
- import { bddToSimpleBdd } from './minimal-string';
12
+ } from './util.js';
13
+ import { InternalNode } from './internal-node.js';
14
+ import { LeafNode } from './leaf-node.js';
15
+ import { bddToSimpleBdd } from './minimal-string/index.js';
16
16
 
17
17
  export class RootNode extends AbstractNode {
18
18
  public branches: Branches = new Branches(this);
package/src/types.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { LeafNode } from './leaf-node';
2
- import { InternalNode } from './internal-node';
3
- import { RootNode } from './root-node';
1
+ import type { LeafNode } from './leaf-node.js';
2
+ import type { InternalNode } from './internal-node.js';
3
+ import type { RootNode } from './root-node.js';
4
4
 
5
5
  export type NodeType = 'LeafNode' | 'InternalNode' | 'RootNode';
6
6
 
package/src/util.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { BooleanString } from './types';
1
+ import type { BooleanString } from './types.ts';
2
2
 
3
3
  export function booleanStringToBoolean(str: BooleanString): boolean {
4
4
  if (str === '1') {
@@ -1,22 +0,0 @@
1
- name: CI
2
- on:
3
- push:
4
- branches: [ master ]
5
- pull_request:
6
- branches: [ master ]
7
-
8
- workflow_dispatch:
9
-
10
- jobs:
11
- build:
12
- runs-on: ubuntu-latest
13
- steps:
14
- - uses: actions/checkout@v3
15
- - name: Use Node.js
16
- uses: actions/setup-node@v3
17
- with:
18
- node-version: 16.10.0
19
- - run: npm install
20
- - run: npm run build
21
- - run: npm run test
22
- - run: npm run lint
@@ -1 +0,0 @@
1
- {"version":3,"file":"abstract-node.js","sourceRoot":"","sources":["../../src/abstract-node.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"branches.js","sourceRoot":"","sources":["../../src/branches.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,OAAO,QAAQ;IAMjB,YACY,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;QANtB,YAAO,GAAY,KAAK,CAAC;QACxB,aAAQ,GAEZ,EAAS,CAAC;IAIV,CAAC;IAEE,SAAS,CAAC,KAAoB,EAAE,UAAuB;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,QAAQ,KAAK,UAAU,EAAE;YACzB,OAAO;SACV;QAED,iBAAiB;QACjB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC;QAClC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAEM,YAAY,CAAC,IAAiB;QACjC,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;YAC9B,OAAO,GAAG,CAAC;SACd;aAAM,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE;YACrC,OAAO,GAAG,CAAC;SACd;aAAM;YACH,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;SACnC;IACL,CAAC;IAEM,SAAS,CAAC,KAAoB;QACjC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAEM,eAAe;QAClB,OAAO;YACH,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;YACnB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;SACtB,CAAC;IACN,CAAC;IAEM,eAAe,CAAC,IAAkB;QACrC,IACI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI;YAC5B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,EAC9B;YACE,OAAO,IAAI,CAAC;SACf;aAAM;YACH,OAAO,KAAK,CAAC;SAChB;IACL,CAAC;IAEM,iBAAiB,CAAC,EAAU;QAC/B,IACI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE;YAC7B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAC/B;YACE,OAAO,IAAI,CAAC;SACf;aAAM;YACH,OAAO,KAAK,CAAC;SAChB;IACL,CAAC;IAEM,sBAAsB;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACrD,CAAC;IAEM,gBAAgB;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,CAAC;CACJ;AAED,MAAM,UAAU,yBAAyB,CACrC,KAAkB,EAClB,KAAkB;IAElB,IAAI,KAAK,KAAK,KAAK,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;KAC5D;AACL,CAAC"}
@@ -1,3 +0,0 @@
1
- import { RootNode } from './root-node';
2
- import type { TruthTable } from './types';
3
- export declare function createBddFromTruthTable(truthTable: TruthTable): RootNode;
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-bdd-from-truth-table.js","sourceRoot":"","sources":["../../src/create-bdd-from-truth-table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,MAAM,UAAU,uBAAuB,CACnC,UAAsB;IAEtB,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;IAE5B,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;IAChD,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC;IAClC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC1C,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE;QAChC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;KACtD;IAGD,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE;QACxC,IAAI,QAAQ,GAAgB,IAAI,CAAC;QAEjC,uCAAuC;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC5C,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;YACpB,MAAM,KAAK,GAAkB,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAkB,CAAC;YAEjE,sDAAsD;YACtD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;gBACrC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CACvB,KAAK,EACL,IAAI,YAAY,CACZ,KAAK,EACL,IAAI,EACJ,QAAQ,CACX,CACJ,CAAC;aACL;YACD,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAgB,CAAC;SAChE;QAED,yBAAyB;QACzB,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAkB,CAAC;QACtD,IAAI,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;YACxC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;SACtE;QACD,QAAQ,CAAC,QAAQ,CAAC,SAAS,CACvB,SAAS,EACT,IAAI,QAAQ,CACR,QAAQ,CAAC,MAAM,EACf,IAAI,EACJ,KAAK,EACL,QAAQ,CACX,CACJ,CAAC;KACL;IAED,OAAO,IAAI,CAAC;AAChB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ensure-correct-bdd.js","sourceRoot":"","sources":["../../src/ensure-correct-bdd.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import type { TruthTable } from './types';
2
- /**
3
- * fills each missing row of a table
4
- * with the given value
5
- */
6
- export declare function fillTruthTable(truthTable: TruthTable, inputLength: number, value: number): void;
@@ -1,7 +0,0 @@
1
- import { AbstractNode } from './abstract-node';
2
- /**
3
- * find an simliar node in a list of nodes
4
- * which is not exactly the same node
5
- * @hotpath
6
- */
7
- export declare function findSimilarNode<T extends AbstractNode>(own: T, others: T[]): T | null;
@@ -1,20 +0,0 @@
1
- export * from './minimal-string/index';
2
- export * from './abstract-node';
3
- export * from './branches';
4
- export * from './create-bdd-from-truth-table';
5
- export * from './ensure-correct-bdd';
6
- export * from './fill-truth-table';
7
- export * from './find-similar-node';
8
- export * from './internal-node';
9
- export * from './leaf-node';
10
- export * from './optimize-brute-force';
11
- export * from './parents';
12
- export * from './root-node';
13
- export * from './util';
14
- /**
15
- * There is no "export type * from 'xxx'"
16
- * So we have to export each type by its own
17
- * to ensure the types js file is not included
18
- * into the bundle.
19
- */
20
- export type { NodeType, NonLeafNode, NonRootNode, TruthTable, BooleanString, ResolverFunction, ResolverFunctions, SimpleBddLeafNode, SimpleBdd } from './types';
package/dist/es/index.js DELETED
@@ -1,14 +0,0 @@
1
- export * from './minimal-string/index';
2
- export * from './abstract-node';
3
- export * from './branches';
4
- export * from './create-bdd-from-truth-table';
5
- export * from './ensure-correct-bdd';
6
- export * from './fill-truth-table';
7
- export * from './find-similar-node';
8
- export * from './internal-node';
9
- export * from './leaf-node';
10
- export * from './optimize-brute-force';
11
- export * from './parents';
12
- export * from './root-node';
13
- export * from './util';
14
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"leaf-node.js","sourceRoot":"","sources":["../../src/leaf-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAGzC,MAAM,OAAO,QAAS,SAAQ,YAAY;IAGtC,YACI,KAAa,EACb,QAAkB,EACX,KAAa,EACpB,MAAmB;QAEnB,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;QAH5B,UAAK,GAAL,KAAK,CAAQ;QALjB,YAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QAS/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,mBAAmB,CAAC,KAAa;QAC7B,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE;YACtB,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACtC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACrB,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACrD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC5B,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAClD,IAAI,MAAM,CAAC,cAAc,EAAE,EAAE;gBACxB,MAAuB,CAAC,kBAAkB,EAAE,CAAC;aACjD;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IAChB,CAAC;CAGJ"}
@@ -1,11 +0,0 @@
1
- import { RootNode } from '../root-node';
2
- import { SimpleBdd } from '../types';
3
- import { AbstractNode } from '../abstract-node';
4
- /**
5
- * @recursive
6
- */
7
- export declare function bddToSimpleBdd(bdd: RootNode): SimpleBdd;
8
- /**
9
- * @recursive
10
- */
11
- export declare function nodeToSimpleBddNode(node: AbstractNode): SimpleBdd;
@@ -1,5 +0,0 @@
1
- export * from './bdd-to-minimal-string';
2
- export * from './minimal-string-to-simple-bdd';
3
- export * from './resolve-with-simple-bdd';
4
- export * from './string-format';
5
- export * from './bdd-to-simple-bdd';
@@ -1,6 +0,0 @@
1
- export * from './bdd-to-minimal-string';
2
- export * from './minimal-string-to-simple-bdd';
3
- export * from './resolve-with-simple-bdd';
4
- export * from './string-format';
5
- export * from './bdd-to-simple-bdd';
6
- //# sourceMappingURL=index.js.map
@@ -1,43 +0,0 @@
1
- import type { TruthTable } from './types';
2
- import { RootNode } from './root-node';
3
- /**
4
- * a function that is called each time
5
- * a 'better' bdd was found
6
- */
7
- export type OptmisiationCallback = (bdd: OptimisationResult) => void;
8
- export interface OptimisationResult {
9
- bdd: RootNode;
10
- truthTable: TruthTable;
11
- }
12
- export type CompareResultsFunction = (a: RootNode, b: RootNode) => RootNode | Promise<RootNode>;
13
- /**
14
- * returns the bdd with less nodes
15
- */
16
- export declare const defaultCompareResults: CompareResultsFunction;
17
- export interface OptimizeBruteForceInput {
18
- truthTable: TruthTable;
19
- iterations?: number;
20
- onBetterBdd?: OptmisiationCallback;
21
- compareResults?: CompareResultsFunction;
22
- afterBddCreation?: (bdd: RootNode) => void;
23
- log?: boolean;
24
- }
25
- /**
26
- * optimises the ordering of the boolean functions
27
- * by randomly sorting the array
28
- * and checking the resulting bdd
29
- */
30
- export declare function optimizeBruteForce({ truthTable, iterations, onBetterBdd, compareResults, afterBddCreation, log }: OptimizeBruteForceInput): Promise<OptimisationResult>;
31
- export type BooleanFunctionReorderMapping = {
32
- [indexAfter: number]: number;
33
- };
34
- export type BooleanFunctionReorderMappingReverse = {
35
- [indexBefore: number]: number;
36
- };
37
- export declare function shuffleBooleanOrdering(truthTable: TruthTable): {
38
- newTable: TruthTable;
39
- mapping: BooleanFunctionReorderMapping;
40
- mappingBeforeToAfter: BooleanFunctionReorderMappingReverse;
41
- };
42
- export declare function changeKeyOrder(oldKey: string, mappingBeforeToAfter: BooleanFunctionReorderMapping): string;
43
- export declare function getArrayWithIndexes(size: number): number[];
@@ -1 +0,0 @@
1
- {"version":3,"file":"parents.js","sourceRoot":"","sources":["../../src/parents.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,OAAO,OAAO;IAIhB,YACW,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;QAHpB,YAAO,GAAqB,IAAI,GAAG,EAAE,CAAC;IAI1C,CAAC;IAEE,MAAM,CAAC,IAAiB;QAC3B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE1B,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE;YACzB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;SACtB;IACL,CAAC;IAEM,MAAM;QACT,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAEM,GAAG,CAAC,IAAiB;QACxB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;SAC5E;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAEM,GAAG,CAAC,IAAiB;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,QAAQ;QACJ,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAC/B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;SACvB;QACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC7B,CAAC;CACJ"}
@@ -1,28 +0,0 @@
1
- import { AbstractNode } from './abstract-node';
2
- import { Branches } from './branches';
3
- import type { NonRootNode, ResolverFunctions, SimpleBdd } from './types';
4
- import { LeafNode } from './leaf-node';
5
- export declare class RootNode extends AbstractNode {
6
- branches: Branches;
7
- levels: number[];
8
- nodesByLevel: Map<number, Set<AbstractNode>>;
9
- constructor();
10
- addNode(node: NonRootNode): void;
11
- removeNode(node: NonRootNode): void;
12
- private ensureLevelSetExists;
13
- getLevels(): number[];
14
- getNodesOfLevel(level: number): NonRootNode[];
15
- countNodes(): number;
16
- /**
17
- * applies the reduction rules to the whole bdd
18
- */
19
- minimize(logState?: boolean): void;
20
- getLeafNodes(): LeafNode[];
21
- /**
22
- * strips all leaf-nodes
23
- * with the given value
24
- */
25
- removeIrrelevantLeafNodes(leafNodeValue: number): void;
26
- resolve(fns: ResolverFunctions, booleanFunctionInput: any): number;
27
- toSimpleBdd(): SimpleBdd;
28
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"root-node.js","sourceRoot":"","sources":["../../src/root-node.ts"],"names":[],"mappings":"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"}
package/dist/es/util.d.ts DELETED
@@ -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[];
@@ -1,33 +0,0 @@
1
- import type { NonRootNode, NodeType } from './types';
2
- import { RootNode } from './root-node';
3
- import { InternalNode } from './internal-node';
4
- import { LeafNode } from './leaf-node';
5
- export declare class AbstractNode {
6
- level: number;
7
- readonly id: string;
8
- deleted: boolean;
9
- type: NodeType;
10
- rootNode: RootNode;
11
- constructor(level: number, rootNode: RootNode | null, type: NodeType);
12
- isEqualToOtherNode(otherNode: NonRootNode | RootNode, ownString?: string): boolean;
13
- remove(): void;
14
- toJSON(withId?: boolean): any;
15
- toString(): string;
16
- isRootNode(): boolean;
17
- isInternalNode(): boolean;
18
- isLeafNode(): boolean;
19
- asRootNode(): RootNode;
20
- asInternalNode(): InternalNode;
21
- asLeafNode(): LeafNode;
22
- ensureNotDeleted(op?: string): void;
23
- log(): void;
24
- /**
25
- * by the elimination-rule of bdd,
26
- * if two branches of the same level are equal,
27
- * one can be removed
28
- *
29
- * See page 21 at:
30
- * @link https://people.eecs.berkeley.edu/~sseshia/219c/lectures/BinaryDecisionDiagrams.pdf
31
- */
32
- applyEliminationRule<T extends AbstractNode>(nodesOfSameLevel?: T[]): boolean;
33
- }