occam-verify-cli 0.0.471 → 0.0.472

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/lib/constants.js +4 -8
  2. package/lib/context/metaproof.js +9 -2
  3. package/lib/context/proof.js +9 -2
  4. package/lib/equality.js +22 -0
  5. package/lib/metaSubstitution.js +12 -52
  6. package/lib/step/metaproof.js +7 -7
  7. package/lib/substitution.js +16 -56
  8. package/lib/utilities/node.js +57 -4
  9. package/lib/verify/derivation.js +4 -6
  10. package/lib/verify/metaDerivation.js +4 -6
  11. package/lib/verify/metaproof.js +3 -6
  12. package/lib/verify/metastatement/qualified.js +1 -7
  13. package/lib/verify/metastatement/unqualified.js +1 -7
  14. package/lib/verify/proof.js +3 -6
  15. package/lib/verify/statement/qualified.js +1 -7
  16. package/lib/verify/statement/unqualified.js +1 -7
  17. package/package.json +1 -1
  18. package/src/constants.js +1 -2
  19. package/src/context/metaproof.js +5 -1
  20. package/src/context/proof.js +5 -1
  21. package/src/equality.js +8 -0
  22. package/src/metaSubstitution.js +16 -87
  23. package/src/step/metaproof.js +13 -14
  24. package/src/substitution.js +19 -90
  25. package/src/utilities/node.js +78 -1
  26. package/src/verify/derivation.js +3 -8
  27. package/src/verify/metaDerivation.js +3 -8
  28. package/src/verify/metaproof.js +2 -8
  29. package/src/verify/metastatement/qualified.js +0 -9
  30. package/src/verify/metastatement/unqualified.js +0 -9
  31. package/src/verify/proof.js +2 -8
  32. package/src/verify/statement/qualified.js +0 -9
  33. package/src/verify/statement/unqualified.js +0 -9
  34. package/lib/utilities/metaAssertion.js +0 -117
  35. package/lib/utilities/statement.js +0 -45
  36. package/src/utilities/metaAssertion.js +0 -176
  37. package/src/utilities/statement.js +0 -50
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { matchBracketedMetastatementChildNode, bracketedMetastatementChildNodeFromChildNodes } from "./utilities/metaAssertion";
3
+ import { matchNodes, bracketedChildNodeFromChildNodes } from "./utilities/node";
4
4
 
5
5
  export default class MetaSubstitution {
6
6
  constructor(metavariableName, nodes) {
@@ -19,34 +19,34 @@ export default class MetaSubstitution {
19
19
  matchNodes(nodes) {
20
20
  let matches;
21
21
 
22
- const metaSubstitutionNodes = this.nodes, ///
23
- metaSubstitutionNonTerminalNodeMatches = matchMetaSubstitutionNodes(metaSubstitutionNodes, nodes);
22
+ const nodesA = this.nodes, ///
23
+ nodesB = nodes,
24
+ metaSubstitutionNodesMatch = matchNodes(nodesA, nodesB);
24
25
 
25
- matches = metaSubstitutionNonTerminalNodeMatches; ///
26
+ matches = metaSubstitutionNodesMatch; ///
26
27
 
27
28
  if (!matches) {
28
29
  const childNodes = nodes, ///
29
- bracketedMetastatementChildNodeMatches = matchBracketedMetastatementChildNode(childNodes, (bracketedMetastatementChildNode) => {
30
- const nonTerminalNode = bracketedMetastatementChildNode, ///
31
- childNodes = nonTerminalNode.getChildNodes(),
32
- nodes = childNodes, ///
33
- metaAssertionNonTerminalNodeMatches = matchMetaSubstitutionNodes(metaSubstitutionNodes, nodes),
34
- bracketedMetastatementChildNodeMatches = metaAssertionNonTerminalNodeMatches; ///
30
+ bracketedChildNode = bracketedChildNodeFromChildNodes(childNodes);
35
31
 
36
- return bracketedMetastatementChildNodeMatches;
37
- });
32
+ if (bracketedChildNode !== null) {
33
+ const nonTerminalNode = bracketedChildNode, ///
34
+ childNodes = nonTerminalNode.getChildNodes(),
35
+ nodesB = childNodes, ///
36
+ nodesMatch = matchNodes(nodesA, nodesB);
38
37
 
39
- matches = bracketedMetastatementChildNodeMatches; ///
38
+ matches = nodesMatch; ///
39
+ }
40
40
  }
41
41
 
42
42
  return matches;
43
43
  }
44
44
 
45
45
  static fromMetavariableNameAndNodes(metavariableName, nodes) {
46
- const bracketedMetastatementChildNode = bracketedMetastatementChildNodeFromChildNodes(nodes);
46
+ const bracketedChildNode = bracketedChildNodeFromChildNodes(nodes);
47
47
 
48
- if (bracketedMetastatementChildNode !== null) {
49
- const nonTerminalNode = bracketedMetastatementChildNode, ///
48
+ if (bracketedChildNode !== null) {
49
+ const nonTerminalNode = bracketedChildNode, ///
50
50
  childNodes = nonTerminalNode.getChildNodes();
51
51
 
52
52
  nodes = childNodes; ///
@@ -57,74 +57,3 @@ export default class MetaSubstitution {
57
57
  return metaSubstitution;
58
58
  }
59
59
  }
60
-
61
- function matchMetaSubstitutionNode(metaSubstitutionNode, node) {
62
- let metaSubstitutionNodeMatches = false;
63
-
64
- const nodeTerminalNode = node.isTerminalNode(),
65
- ruleNodeTerminalNode = metaSubstitutionNode.isTerminalNode();
66
-
67
- if (nodeTerminalNode === ruleNodeTerminalNode) {
68
- if (nodeTerminalNode) {
69
- const terminalNode = node, ///
70
- metaSubstitutionTerminalNode = metaSubstitutionNode, ///
71
- metaSubstitutionTerminalNodeMatches = matchMetaSubstitutionTerminalNode(metaSubstitutionTerminalNode, terminalNode);
72
-
73
- metaSubstitutionNodeMatches = metaSubstitutionTerminalNodeMatches; ///
74
- } else {
75
- const nonTerminalNode = node, ///
76
- metaSubstitutionNonTerminalNode = metaSubstitutionNode, ///
77
- metaSubstitutionNonTerminalNodeMatches = matchMetaSubstitutionNonTerminalNode(metaSubstitutionNonTerminalNode, nonTerminalNode);
78
-
79
- metaSubstitutionNodeMatches = metaSubstitutionNonTerminalNodeMatches; ///
80
- }
81
- }
82
-
83
- return metaSubstitutionNodeMatches;
84
- }
85
-
86
- function matchMetaSubstitutionNodes(metaSubstitutionNodes, nodes) {
87
- let metaSubstitutionNodesMatches = false;
88
-
89
- const nodesLength = nodes.length,
90
- metaSubstitutionNodesLength = metaSubstitutionNodes.length;
91
-
92
- if (nodesLength === metaSubstitutionNodesLength) {
93
- metaSubstitutionNodesMatches = nodes.every((node, index) => {
94
- const metaSubstitutionNode = metaSubstitutionNodes[index],
95
- metaSubstitutionNodeMatches = matchMetaSubstitutionNode(metaSubstitutionNode, node);
96
-
97
- if (metaSubstitutionNodeMatches) {
98
- return true;
99
- }
100
- })
101
- }
102
-
103
- return metaSubstitutionNodesMatches;
104
- }
105
-
106
- function matchMetaSubstitutionTerminalNode(metaSubstitutionTerminalNode, terminalNode) {
107
- const matches = metaSubstitutionTerminalNode.match(terminalNode),
108
- metaSubstitutionTerminalNodeMatches = matches; ///
109
-
110
- return metaSubstitutionTerminalNodeMatches;
111
- }
112
-
113
- function matchMetaSubstitutionNonTerminalNode(metaSubstitutionNonTerminalNode, nonTerminalNode) {
114
- let metaSubstitutionNonTerminalNodeMatches = false;
115
-
116
- const ruleName = nonTerminalNode.getRuleName(),
117
- metaSubstitutionRuleName = metaSubstitutionNonTerminalNode.getRuleName(); ///
118
-
119
- if (ruleName === metaSubstitutionRuleName) {
120
- const childNodes = nonTerminalNode.getChildNodes(),
121
- metaSubstitutionChildNodes = metaSubstitutionNonTerminalNode.getChildNodes(),
122
- nodes = childNodes, ///
123
- metaSubstitutionNodes = metaSubstitutionChildNodes, ///
124
- metaSubstitutionNodesMatches = matchMetaSubstitutionNodes(metaSubstitutionNodes, nodes);
125
-
126
- metaSubstitutionNonTerminalNodeMatches = metaSubstitutionNodesMatches; ///
127
- }
128
-
129
- return metaSubstitutionNonTerminalNodeMatches;
130
- }
@@ -2,8 +2,7 @@
2
2
 
3
3
  import { first, second } from "../utilities/array";
4
4
  import { nodeQuery, nodesQuery } from "../utilities/query";
5
-
6
- import { matchTopmostMetaAssertionMetastatementNode } from "../utilities/metaAssertion";
5
+ import { matchBracketedNonTerminalNode } from "../utilities/node";
7
6
 
8
7
  const metastatementNodesQuery = nodesQuery("/metaSubproofAssertion/metastatement"),
9
8
  metaSubproofAssertionNodeQuery = nodeQuery("/metastatement/metaSubproofAssertion"),
@@ -45,10 +44,10 @@ export default class MetaproofStep {
45
44
  let metastatementsMatch = false;
46
45
 
47
46
  if (this.metastatementNode !== null) {
48
- const topmostMetastatementNode = metastatementNode, ///
49
- topmostMetaAssertionMetastatementNode = this.metastatementNode, ///
50
- topmostMetaAssertionMetastatementNodeMatches = matchTopmostMetaAssertionMetastatementNode(topmostMetaAssertionMetastatementNode, topmostMetastatementNode),
51
- metastatementNodeMatches = topmostMetaAssertionMetastatementNodeMatches; ///
47
+ const nonTerminalNodeA = metastatementNode, ///
48
+ nonTerminalNodeB = this.metastatementNode, ///
49
+ bracketedNodeMatches = matchBracketedNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB),
50
+ metastatementNodeMatches = bracketedNodeMatches; ///
52
51
 
53
52
  return metastatementNodeMatches;
54
53
  }
@@ -65,19 +64,19 @@ export default class MetaproofStep {
65
64
  qualifiedOrUnqualifiedMetastatementMetastatementNodes = qualifiedOrUnqualifiedMetastatementMetastatementNodesQuery(this.metaSubproofNode),
66
65
  firstQualifiedOrUnqualifiedMetastatementMetastatementNode = first(qualifiedOrUnqualifiedMetastatementMetastatementNodes);
67
66
 
68
- const topmostMetastatementNode = firstMetaSubproofAssertionMetastatementNode, ///
69
- topmostMetaAssertionMetastatementNode = firstQualifiedOrUnqualifiedMetastatementMetastatementNode, ///
70
- topmostMetaAssertionMetastatementNodeMatches = matchTopmostMetaAssertionMetastatementNode(topmostMetaAssertionMetastatementNode, topmostMetastatementNode);
67
+ const nonTerminalNodeA = firstMetaSubproofAssertionMetastatementNode, ///
68
+ nonTerminalNodeB = firstQualifiedOrUnqualifiedMetastatementMetastatementNode, ///
69
+ bracketedNodeMatches = matchBracketedNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB);
71
70
 
72
- if (topmostMetaAssertionMetastatementNodeMatches) {
71
+ if (bracketedNodeMatches) {
73
72
  const secondMetaSubproofAssertionMetastatementNode = second(metaSubproofAssertionMetastatementNodes),
74
73
  secondQualifiedOrUnqualifiedMetastatementMetastatementNode = second(qualifiedOrUnqualifiedMetastatementMetastatementNodes);
75
74
 
76
- const topmostMetastatementNode = secondMetaSubproofAssertionMetastatementNode, ///
77
- topmostMetaAssertionMetastatementNode = secondQualifiedOrUnqualifiedMetastatementMetastatementNode, ///
78
- topmostMetaAssertionMetastatementNodeMatches = matchTopmostMetaAssertionMetastatementNode(topmostMetaAssertionMetastatementNode, topmostMetastatementNode);
75
+ const nonTerminalNodeA = secondMetaSubproofAssertionMetastatementNode, ///
76
+ nonTerminalNodeB = secondQualifiedOrUnqualifiedMetastatementMetastatementNode, ///
77
+ bracketedNodeMatches = matchBracketedNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB);
79
78
 
80
- metaSubproofAssertionMatches = topmostMetaAssertionMetastatementNodeMatches; ///
79
+ metaSubproofAssertionMatches = bracketedNodeMatches; ///
81
80
  }
82
81
  }
83
82
 
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { matchBracketedStatementChildNode, bracketedStatementChildNodeFromChildNodes } from "./utilities/statement";
3
+ import { matchNodes, bracketedChildNodeFromChildNodes } from "./utilities/node";
4
4
 
5
5
  export default class Substitution {
6
6
  constructor(variableName, nodes) {
@@ -19,112 +19,41 @@ export default class Substitution {
19
19
  matchNodes(nodes) {
20
20
  let matches;
21
21
 
22
- const substitutionNodes = this.nodes, ///
23
- substitutionNonTerminalNodeMatches = matchSubstitutionNodes(substitutionNodes, nodes);
22
+ const nodesA = this.nodes, ///
23
+ nodesB = nodes,
24
+ metaSubstitutionNodesMatch = matchNodes(nodesA, nodesB);
24
25
 
25
- matches = substitutionNonTerminalNodeMatches; ///
26
+ matches = metaSubstitutionNodesMatch; ///
26
27
 
27
28
  if (!matches) {
28
29
  const childNodes = nodes, ///
29
- bracketedStatementChildNodeMatches = matchBracketedStatementChildNode(childNodes, (bracketedStatementChildNode) => {
30
- const nonTerminalNode = bracketedStatementChildNode, ///
31
- childNodes = nonTerminalNode.getChildNodes(),
32
- nodes = childNodes, ///
33
- assertionNonTerminalNodeMatches = matchSubstitutionNodes(substitutionNodes, nodes),
34
- bracketedStatementChildNodeMatches = assertionNonTerminalNodeMatches; ///
30
+ bracketedChildNode = bracketedChildNodeFromChildNodes(childNodes);
35
31
 
36
- return bracketedStatementChildNodeMatches;
37
- });
32
+ if (bracketedChildNode !== null) {
33
+ const nonTerminalNode = bracketedChildNode, ///
34
+ childNodes = nonTerminalNode.getChildNodes(),
35
+ nodesB = childNodes, ///
36
+ nodesMatch = matchNodes(nodesA, nodesB);
38
37
 
39
- matches = bracketedStatementChildNodeMatches; ///
38
+ matches = nodesMatch; ///
39
+ }
40
40
  }
41
41
 
42
42
  return matches;
43
43
  }
44
44
 
45
- static fromVariableNameAndNodes(variableName, nodes) {
46
- const bracketedStatementChildNode = bracketedStatementChildNodeFromChildNodes(nodes);
45
+ static fromMetavariableNameAndNodes(variableName, nodes) {
46
+ const bracketedChildNode = bracketedChildNodeFromChildNodes(nodes);
47
47
 
48
- if (bracketedStatementChildNode !== null) {
49
- const nonTerminalNode = bracketedStatementChildNode, ///
48
+ if (bracketedChildNode !== null) {
49
+ const nonTerminalNode = bracketedChildNode, ///
50
50
  childNodes = nonTerminalNode.getChildNodes();
51
51
 
52
52
  nodes = childNodes; ///
53
53
  }
54
54
 
55
- const substitution = new Substitution(variableName, nodes);
56
-
57
- return substitution;
58
- }
59
- }
60
-
61
- function matchSubstitutionNode(substitutionNode, node) {
62
- let substitutionNodeMatches = false;
63
-
64
- const nodeTerminalNode = node.isTerminalNode(),
65
- ruleNodeTerminalNode = substitutionNode.isTerminalNode();
66
-
67
- if (nodeTerminalNode === ruleNodeTerminalNode) {
68
- if (nodeTerminalNode) {
69
- const terminalNode = node, ///
70
- substitutionTerminalNode = substitutionNode, ///
71
- substitutionTerminalNodeMatches = matchSubstitutionTerminalNode(substitutionTerminalNode, terminalNode);
72
-
73
- substitutionNodeMatches = substitutionTerminalNodeMatches; ///
74
- } else {
75
- const nonTerminalNode = node, ///
76
- substitutionNonTerminalNode = substitutionNode, ///
77
- substitutionNonTerminalNodeMatches = matchSubstitutionNonTerminalNode(substitutionNonTerminalNode, nonTerminalNode);
78
-
79
- substitutionNodeMatches = substitutionNonTerminalNodeMatches; ///
80
- }
81
- }
82
-
83
- return substitutionNodeMatches;
84
- }
85
-
86
- function matchSubstitutionNodes(substitutionNodes, nodes) {
87
- let substitutionNodesMatches = false;
55
+ const metaSubstitution = new Substitution(variableName, nodes);
88
56
 
89
- const nodesLength = nodes.length,
90
- substitutionNodesLength = substitutionNodes.length;
91
-
92
- if (nodesLength === substitutionNodesLength) {
93
- substitutionNodesMatches = nodes.every((node, index) => {
94
- const substitutionNode = substitutionNodes[index],
95
- substitutionNodeMatches = matchSubstitutionNode(substitutionNode, node);
96
-
97
- if (substitutionNodeMatches) {
98
- return true;
99
- }
100
- })
101
- }
102
-
103
- return substitutionNodesMatches;
104
- }
105
-
106
- function matchSubstitutionTerminalNode(substitutionTerminalNode, terminalNode) {
107
- const matches = substitutionTerminalNode.match(terminalNode),
108
- substitutionTerminalNodeMatches = matches; ///
109
-
110
- return substitutionTerminalNodeMatches;
111
- }
112
-
113
- function matchSubstitutionNonTerminalNode(substitutionNonTerminalNode, nonTerminalNode) {
114
- let substitutionNonTerminalNodeMatches = false;
115
-
116
- const ruleName = nonTerminalNode.getRuleName(),
117
- substitutionRuleName = substitutionNonTerminalNode.getRuleName(); ///
118
-
119
- if (ruleName === substitutionRuleName) {
120
- const childNodes = nonTerminalNode.getChildNodes(),
121
- substitutionChildNodes = substitutionNonTerminalNode.getChildNodes(),
122
- nodes = childNodes, ///
123
- substitutionNodes = substitutionChildNodes, ///
124
- substitutionNodesMatches = matchSubstitutionNodes(substitutionNodes, nodes);
125
-
126
- substitutionNonTerminalNodeMatches = substitutionNodesMatches; ///
57
+ return metaSubstitution;
127
58
  }
128
-
129
- return substitutionNonTerminalNodeMatches;
130
59
  }
@@ -1,5 +1,9 @@
1
1
  "use strict";
2
2
 
3
+ import { first, second, third } from "./array";
4
+ import { METASTATEMENT_RULE_NAME } from "../ruleNames";
5
+ import { BRACKETED_CHILD_NODES_LENGTH, LEFT_BRACKET, RIGHT_BRACKET } from "../constants";
6
+
3
7
  export function matchNode(nodeA, nodeB) {
4
8
  let nodeMatches = false;
5
9
 
@@ -25,7 +29,7 @@ export function matchNode(nodeA, nodeB) {
25
29
  return nodeMatches;
26
30
  }
27
31
 
28
- function matchNodes(nodesA, nodesB) {
32
+ export function matchNodes(nodesA, nodesB) {
29
33
  let nodesMatch = false;
30
34
 
31
35
  const nodesALength = nodesA.length,
@@ -45,6 +49,79 @@ function matchNodes(nodesA, nodesB) {
45
49
  return nodesMatch;
46
50
  }
47
51
 
52
+ export function matchBracketedNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB) {
53
+ let bracketedNodeMatches = false;
54
+
55
+ if (!bracketedNodeMatches) {
56
+ const nonTerminalNodeMatches = matchNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB);
57
+
58
+ bracketedNodeMatches = nonTerminalNodeMatches; ///
59
+ }
60
+
61
+ if (!bracketedNodeMatches) {
62
+ const nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(),
63
+ childNodesA = nonTerminalNodeAChildNodes, ///
64
+ bracketedChildNodeA = bracketedChildNodeFromChildNodes(childNodesA);
65
+
66
+ if (bracketedChildNodeA !== null) {
67
+ const nodeA = bracketedChildNodeA, ///
68
+ nodeB = nonTerminalNodeB, ///
69
+ nodeMatches = matchNode(nodeA, nodeB);
70
+
71
+ bracketedNodeMatches = nodeMatches; ///
72
+ }
73
+ }
74
+
75
+ if (!bracketedNodeMatches) {
76
+ const nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(),
77
+ childNodesB = nonTerminalNodeBChildNodes, ///
78
+ bracketedChildNodeB = bracketedChildNodeFromChildNodes(childNodesB);
79
+
80
+ if (bracketedChildNodeB !== null) {
81
+ const nodeB = bracketedChildNodeB, ///
82
+ nodeA = nonTerminalNodeA, ///
83
+ nodeMatches = matchNode(nodeA, nodeB);
84
+
85
+ bracketedNodeMatches = nodeMatches; ///
86
+ }
87
+ }
88
+
89
+ return bracketedNodeMatches;
90
+ }
91
+
92
+ export function bracketedChildNodeFromChildNodes(childNodes) {
93
+ let bracketedChildNode = null;
94
+
95
+ const childNodesLength = childNodes.length;
96
+
97
+ if (childNodesLength === BRACKETED_CHILD_NODES_LENGTH) {
98
+ const firstChildNode = first(childNodes),
99
+ thirdChildNode = third(childNodes),
100
+ secondChildNode = second(childNodes),
101
+ firstChildNodeTerminalNode = firstChildNode.isTerminalNode(),
102
+ thirdChildNodeTerminalNode = thirdChildNode.isTerminalNode(),
103
+ secondChildNodeNonTerminalNode = secondChildNode.isNonTerminalNode();
104
+
105
+ if (firstChildNodeTerminalNode && secondChildNodeNonTerminalNode && thirdChildNodeTerminalNode) {
106
+ const nonTerminalNode = secondChildNode, ///
107
+ firstTerminalNode = firstChildNode, ///
108
+ secondTerminalNode = thirdChildNode, ///
109
+ nonTerminalNodeRuleName = nonTerminalNode.getRuleName(),
110
+ firstTerminalNodeContent = firstTerminalNode.getContent(),
111
+ secondTerminalNodeContent = secondTerminalNode.getContent(),
112
+ firstTerminalNodeContentLeftBracket = (firstTerminalNodeContent === LEFT_BRACKET),
113
+ secondTerminalNodeContentRightBracket = (secondTerminalNodeContent === RIGHT_BRACKET),
114
+ nonTerminalNodeRuleNameMetastatementRuleName = (nonTerminalNodeRuleName === METASTATEMENT_RULE_NAME);
115
+
116
+ if (firstTerminalNodeContentLeftBracket && nonTerminalNodeRuleNameMetastatementRuleName && secondTerminalNodeContentRightBracket) {
117
+ bracketedChildNode = nonTerminalNode; ///
118
+ }
119
+ }
120
+ }
121
+
122
+ return bracketedChildNode;
123
+ }
124
+
48
125
  function matchTerminalNode(terminalNodeA, terminalNodeB) {
49
126
  const matches = terminalNodeA.match(terminalNodeB),
50
127
  terminalNodeMatches = matches; ///
@@ -14,14 +14,11 @@ const statementNodeQuery = nodeQuery("/qualifiedStatement|unqualifiedStatement/s
14
14
  unqualifiedStatementNodesQuery = nodesQuery("/subproof/unqualifiedStatement")
15
15
 
16
16
  export default function verifyDerivation(derivationNode, proofContext) {
17
- let derivationVerified,
18
- derived;
17
+ let derivationVerified;
19
18
 
20
19
  proofContext.begin(derivationNode);
21
20
 
22
- derived = true;
23
-
24
- proofContext.setDerived(derived);
21
+ proofContext.setDerived();
25
22
 
26
23
  const derivationChildNodes = derivationChildNodesQuery(derivationNode);
27
24
 
@@ -33,9 +30,7 @@ export default function verifyDerivation(derivationNode, proofContext) {
33
30
  }
34
31
  });
35
32
 
36
- derived = false;
37
-
38
- proofContext.setDerived(derived);
33
+ proofContext.setDerived();
39
34
 
40
35
  derivationVerified ?
41
36
  proofContext.complete(derivationNode) :
@@ -14,14 +14,11 @@ const metastatementNodeQuery = nodeQuery("/qualifiedMetastatement|unqualifiedMet
14
14
  unqualifiedMetastatementNodesQuery = nodesQuery("/metaSubproof/unqualifiedMetastatement")
15
15
 
16
16
  export default function verifyMetaDerivation(metaDerivationNode, metaproofContext) {
17
- let metaDerivationVerified,
18
- derived;
17
+ let metaDerivationVerified;
19
18
 
20
19
  metaproofContext.begin(metaDerivationNode);
21
20
 
22
- derived = true;
23
-
24
- metaproofContext.setDerived(derived);
21
+ metaproofContext.setDerived();
25
22
 
26
23
  const metaDerivationChildNodes = metaDerivationChildNodesQuery(metaDerivationNode);
27
24
 
@@ -33,9 +30,7 @@ export default function verifyMetaDerivation(metaDerivationNode, metaproofContex
33
30
  }
34
31
  });
35
32
 
36
- derived = false;
37
-
38
- metaproofContext.setDerived(derived);
33
+ metaproofContext.resetDerived();
39
34
 
40
35
  metaDerivationVerified ?
41
36
  metaproofContext.complete(metaDerivationNode) :
@@ -27,17 +27,11 @@ export default function verifyMetaproof(metaproofNode, conclusion, metaproofCont
27
27
  }
28
28
 
29
29
  if (qualifiedMetastatementNode !== null) {
30
- let derived;
31
-
32
- derived = true;
33
-
34
- metaproofContext.setDerived(derived);
30
+ metaproofContext.setDerived();
35
31
 
36
32
  qualifiedMetastatementVerified = verifyQualifiedMetastatement(qualifiedMetastatementNode, metaproofContext);
37
33
 
38
- derived = false;
39
-
40
- metaproofContext.setDerived(derived);
34
+ metaproofContext.resetDerived();
41
35
 
42
36
  if (qualifiedMetastatementVerified) {
43
37
  const metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode),
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- import { nodeAsString } from "../../utilities/string";
4
3
  import { nodeQuery, referenceNameFromReferenceNode } from "../../utilities/query";
5
4
 
6
5
  const referenceNodeQuery = nodeQuery("/qualifiedMetastatement/qualification!/reference!"),
@@ -11,10 +10,6 @@ export default function verifyQualifiedMetastatement(qualifiedMetastatementNode,
11
10
 
12
11
  metaproofContext.begin(qualifiedMetastatementNode);
13
12
 
14
- const qualifiedMetastatementString = nodeAsString(qualifiedMetastatementNode);
15
-
16
- metaproofContext.debug(`Verifying the '${qualifiedMetastatementString}' qualified metastatement...`);
17
-
18
13
  const metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode);
19
14
 
20
15
  if (metastatementNode !== null) {
@@ -29,10 +24,6 @@ export default function verifyQualifiedMetastatement(qualifiedMetastatementNode,
29
24
  }
30
25
  }
31
26
 
32
- if (qualifiedMetastatementVerified) {
33
- metaproofContext.info(`Verified the '${qualifiedMetastatementString}' qualified metastatement.`);
34
- }
35
-
36
27
  qualifiedMetastatementVerified ?
37
28
  metaproofContext.complete(qualifiedMetastatementNode) :
38
29
  metaproofContext.halt(qualifiedMetastatementNode);
@@ -3,7 +3,6 @@
3
3
  import verifyMetastatement from "../../verify/metastatement";
4
4
 
5
5
  import { nodeQuery } from "../../utilities/query";
6
- import { nodeAsString } from "../../utilities/string";
7
6
 
8
7
  const metastatementNodeQuery = nodeQuery("/unqualifiedMetastatement/metastatement!");
9
8
 
@@ -12,10 +11,6 @@ export default function verifyUnqualifiedMetastatement(unqualifiedMetastatementN
12
11
 
13
12
  metaproofContext.begin(unqualifiedMetastatementNode);
14
13
 
15
- const unqualifiedMetastatementString = nodeAsString(unqualifiedMetastatementNode);
16
-
17
- metaproofContext.debug(`Verifying the '${unqualifiedMetastatementString}' unqualified metastatement...`);
18
-
19
14
  const metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode);
20
15
 
21
16
  if (metastatementNode !== null) {
@@ -34,10 +29,6 @@ export default function verifyUnqualifiedMetastatement(unqualifiedMetastatementN
34
29
  }
35
30
  }
36
31
 
37
- if (unqualifiedMetastatementVerified) {
38
- metaproofContext.info(`Verified the '${unqualifiedMetastatementString}' unqualified metastatement.`);
39
- }
40
-
41
32
  unqualifiedMetastatementVerified ?
42
33
  metaproofContext.complete(unqualifiedMetastatementNode) :
43
34
  metaproofContext.halt(unqualifiedMetastatementNode);
@@ -27,17 +27,11 @@ export default function verifyProof(proofNode, conclusion, proofContext) {
27
27
  }
28
28
 
29
29
  if (qualifiedStatementNode !== null) {
30
- let derived;
31
-
32
- derived = true;
33
-
34
- proofContext.setDerived(derived);
30
+ proofContext.setDerived();
35
31
 
36
32
  qualifiedStatementVerified = verifyQualifiedStatement(qualifiedStatementNode, proofContext);
37
33
 
38
- derived = false;
39
-
40
- proofContext.setDerived(derived);
34
+ proofContext.resetDerived();
41
35
 
42
36
  if (qualifiedStatementVerified) {
43
37
  const statementNode = statementNodeQuery(qualifiedStatementNode),
@@ -2,7 +2,6 @@
2
2
 
3
3
  import verifyStatement from "../../verify/statement";
4
4
 
5
- import { nodeAsString } from "../../utilities/string";
6
5
  import { nodeQuery, referenceNameFromReferenceNode } from "../../utilities/query";
7
6
 
8
7
  const statementNodeQuery = nodeQuery("/qualifiedStatement/statement!"),
@@ -13,10 +12,6 @@ export default function verifyQualifiedStatement(qualifiedStatementNode, proofCo
13
12
 
14
13
  proofContext.begin(qualifiedStatementNode);
15
14
 
16
- const qualifiedStatementString = nodeAsString(qualifiedStatementNode);
17
-
18
- proofContext.debug(`Verifying the '${qualifiedStatementString}' qualified statement...`);
19
-
20
15
  const statementNode = statementNodeQuery(qualifiedStatementNode);
21
16
 
22
17
  if (statementNode !== null) {
@@ -33,10 +28,6 @@ export default function verifyQualifiedStatement(qualifiedStatementNode, proofCo
33
28
  }
34
29
  }
35
30
 
36
- if (qualifiedStatementVerified) {
37
- proofContext.info(`Verified the '${qualifiedStatementString}' qualified statement.`);
38
- }
39
-
40
31
  qualifiedStatementVerified ?
41
32
  proofContext.complete(qualifiedStatementNode) :
42
33
  proofContext.halt(qualifiedStatementNode);
@@ -3,7 +3,6 @@
3
3
  import verifyStatement from "../../verify/statement";
4
4
 
5
5
  import { nodeQuery } from "../../utilities/query";
6
- import { nodeAsString } from "../../utilities/string";
7
6
 
8
7
  const statementNodeQuery = nodeQuery("/unqualifiedStatement/statement!");
9
8
 
@@ -12,10 +11,6 @@ export default function verifyUnqualifiedStatement(unqualifiedStatementNode, pro
12
11
 
13
12
  proofContext.begin(unqualifiedStatementNode);
14
13
 
15
- const unqualifiedStatementString = nodeAsString(unqualifiedStatementNode);
16
-
17
- proofContext.debug(`Verifying the '${unqualifiedStatementString}' unqualified statement...`);
18
-
19
14
  const statementNode = statementNodeQuery(unqualifiedStatementNode);
20
15
 
21
16
  if (statementNode !== null) {
@@ -34,10 +29,6 @@ export default function verifyUnqualifiedStatement(unqualifiedStatementNode, pro
34
29
  }
35
30
  }
36
31
 
37
- if (unqualifiedStatementVerified) {
38
- proofContext.info(`Verified the '${unqualifiedStatementString}' unqualified statement.`);
39
- }
40
-
41
32
  unqualifiedStatementVerified ?
42
33
  proofContext.complete(unqualifiedStatementNode) :
43
34
  proofContext.halt(unqualifiedStatementNode);