occam-verify-cli 1.0.185 → 1.0.192
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.
- package/lib/constants.js +5 -1
- package/lib/dom/assertion/property.js +2 -4
- package/lib/dom/assertion/subproof.js +3 -5
- package/lib/dom/assertion/type.js +6 -8
- package/lib/dom/axiom.js +15 -100
- package/lib/dom/conjecture.js +5 -4
- package/lib/dom/constructor/bracketed.js +6 -7
- package/lib/dom/declaration/complexType.js +6 -6
- package/lib/dom/declaration/metavariable.js +3 -5
- package/lib/dom/declaration/type.js +2 -2
- package/lib/dom/declaration.js +2 -4
- package/lib/dom/derivation.js +2 -4
- package/lib/dom/equality.js +9 -11
- package/lib/dom/frame.js +8 -12
- package/lib/dom/judgement.js +2 -4
- package/lib/dom/lemma.js +5 -4
- package/lib/dom/metaLemma.js +5 -4
- package/lib/dom/metaType.js +2 -4
- package/lib/dom/metatheorem.js +5 -4
- package/lib/dom/metavariable.js +12 -15
- package/lib/dom/parameter.js +2 -4
- package/lib/dom/procedureCall.js +6 -10
- package/lib/dom/proof.js +2 -4
- package/lib/dom/property.js +16 -51
- package/lib/dom/propertyRelation.js +8 -10
- package/lib/dom/reference.js +7 -11
- package/lib/dom/rule.js +6 -8
- package/lib/dom/statement.js +27 -31
- package/lib/dom/step.js +4 -6
- package/lib/dom/subDerivation.js +2 -4
- package/lib/dom/subproof.js +6 -8
- package/lib/dom/term.js +14 -20
- package/lib/dom/theorem.js +5 -4
- package/lib/dom/topLevelAssertion.js +30 -24
- package/lib/dom/topLevelMetaAssertion.js +5 -15
- package/lib/dom/type.js +8 -25
- package/lib/dom/variable.js +5 -11
- package/lib/node/assertion/contained.js +45 -58
- package/lib/node/assertion/defined.js +33 -58
- package/lib/node/assertion/property.js +33 -58
- package/lib/node/assertion/satisfies.js +21 -58
- package/lib/node/assertion/subproof.js +21 -58
- package/lib/node/assertion/type.js +33 -58
- package/lib/node/axiom.js +6 -52
- package/lib/node/combinator.js +6 -57
- package/lib/node/conclusion.js +21 -58
- package/lib/node/conjecture.js +6 -52
- package/lib/node/constructor.js +6 -57
- package/lib/node/declaration/combinator.js +13 -61
- package/lib/node/declaration/complexType.js +27 -75
- package/lib/node/declaration/constructor.js +24 -70
- package/lib/node/declaration/metavariable.js +40 -58
- package/lib/node/declaration/property.js +27 -72
- package/lib/node/declaration/type.js +23 -69
- package/lib/node/declaration/variable.js +28 -83
- package/lib/node/declaration.js +33 -58
- package/lib/node/deduction.js +21 -58
- package/lib/node/derivation.js +21 -58
- package/lib/node/equality.js +34 -58
- package/lib/node/error.js +6 -57
- package/lib/node/frame.js +52 -58
- package/lib/node/judgement.js +33 -58
- package/lib/node/label.js +21 -58
- package/lib/{node.js → node/labels.js} +25 -27
- package/lib/node/lemma.js +6 -52
- package/lib/node/metaLemma.js +6 -52
- package/lib/node/metaType.js +18 -60
- package/lib/node/metatheorem.js +6 -52
- package/lib/node/metavariable.js +40 -61
- package/lib/node/parameter.js +22 -58
- package/lib/node/parenthesisedLabels.js +123 -0
- package/lib/node/premise.js +33 -58
- package/lib/node/procedureCall.js +33 -58
- package/lib/node/proof.js +21 -58
- package/lib/node/property.js +18 -62
- package/lib/node/propertyRelation.js +40 -58
- package/lib/node/reference.js +21 -58
- package/lib/node/rule.js +6 -52
- package/lib/node/statement.js +105 -58
- package/lib/node/step.js +47 -58
- package/lib/node/subDerivation.js +21 -58
- package/lib/node/subproof.js +47 -58
- package/lib/node/supposition.js +33 -58
- package/lib/node/term.js +57 -58
- package/lib/node/theorem.js +6 -52
- package/lib/node/topLevelAssertion.js +86 -59
- package/lib/node/topLevelMetaAssertion.js +65 -59
- package/lib/node/type.js +14 -60
- package/lib/node/variable.js +14 -60
- package/lib/nominal/parser.js +3 -3
- package/lib/nonTerminalNodeMap.js +5 -3
- package/lib/ruleNames.js +10 -2
- package/lib/utilities/node.js +283 -7
- package/lib/utilities/type.js +16 -4
- package/lib/verifier/topLevel.js +6 -6
- package/package.json +2 -2
- package/src/constants.js +1 -0
- package/src/dom/assertion/property.js +1 -4
- package/src/dom/assertion/subproof.js +2 -6
- package/src/dom/assertion/type.js +7 -10
- package/src/dom/axiom.js +7 -77
- package/src/dom/conjecture.js +6 -1
- package/src/dom/constructor/bracketed.js +6 -8
- package/src/dom/declaration/complexType.js +7 -6
- package/src/dom/declaration/metavariable.js +2 -6
- package/src/dom/declaration/type.js +4 -2
- package/src/dom/declaration.js +1 -5
- package/src/dom/derivation.js +1 -4
- package/src/dom/equality.js +13 -17
- package/src/dom/frame.js +7 -19
- package/src/dom/judgement.js +1 -4
- package/src/dom/lemma.js +6 -1
- package/src/dom/metaLemma.js +6 -1
- package/src/dom/metaType.js +1 -5
- package/src/dom/metatheorem.js +6 -1
- package/src/dom/metavariable.js +11 -25
- package/src/dom/parameter.js +2 -6
- package/src/dom/procedureCall.js +5 -14
- package/src/dom/proof.js +1 -4
- package/src/dom/property.js +21 -78
- package/src/dom/propertyRelation.js +10 -14
- package/src/dom/reference.js +6 -18
- package/src/dom/rule.js +6 -12
- package/src/dom/statement.js +26 -46
- package/src/dom/step.js +3 -5
- package/src/dom/subDerivation.js +1 -4
- package/src/dom/subproof.js +8 -12
- package/src/dom/term.js +16 -32
- package/src/dom/theorem.js +6 -1
- package/src/dom/topLevelAssertion.js +30 -25
- package/src/dom/topLevelMetaAssertion.js +16 -28
- package/src/dom/type.js +9 -35
- package/src/dom/variable.js +4 -12
- package/src/node/assertion/contained.js +41 -3
- package/src/node/assertion/defined.js +29 -3
- package/src/node/assertion/property.js +29 -3
- package/src/node/assertion/satisfies.js +17 -3
- package/src/node/assertion/subproof.js +17 -3
- package/src/node/assertion/type.js +29 -3
- package/src/node/axiom.js +3 -3
- package/src/node/combinator.js +3 -3
- package/src/node/conclusion.js +17 -3
- package/src/node/conjecture.js +3 -3
- package/src/node/constructor.js +3 -3
- package/src/node/declaration/combinator.js +11 -7
- package/src/node/declaration/complexType.js +25 -24
- package/src/node/declaration/constructor.js +22 -17
- package/src/node/declaration/metavariable.js +36 -3
- package/src/node/declaration/property.js +21 -17
- package/src/node/declaration/type.js +22 -17
- package/src/node/declaration/variable.js +24 -32
- package/src/node/declaration.js +29 -3
- package/src/node/deduction.js +17 -3
- package/src/node/derivation.js +18 -3
- package/src/node/equality.js +31 -3
- package/src/node/error.js +3 -3
- package/src/node/frame.js +53 -3
- package/src/node/judgement.js +29 -3
- package/src/node/label.js +17 -3
- package/src/node/labels.js +21 -0
- package/src/node/lemma.js +3 -3
- package/src/node/metaLemma.js +3 -3
- package/src/node/metaType.js +19 -8
- package/src/node/metatheorem.js +3 -3
- package/src/node/metavariable.js +42 -9
- package/src/node/parameter.js +20 -3
- package/src/node/parenthesisedLabels.js +28 -0
- package/src/node/premise.js +29 -3
- package/src/node/procedureCall.js +29 -3
- package/src/node/proof.js +17 -3
- package/src/node/property.js +18 -12
- package/src/node/propertyRelation.js +35 -3
- package/src/node/reference.js +17 -3
- package/src/node/rule.js +3 -3
- package/src/node/statement.js +108 -3
- package/src/node/step.js +41 -3
- package/src/node/subDerivation.js +18 -3
- package/src/node/subproof.js +41 -3
- package/src/node/supposition.js +29 -3
- package/src/node/term.js +62 -3
- package/src/node/theorem.js +3 -3
- package/src/node/topLevelAssertion.js +89 -3
- package/src/node/topLevelMetaAssertion.js +59 -3
- package/src/node/type.js +15 -8
- package/src/node/variable.js +15 -8
- package/src/nominal/parser.js +1 -1
- package/src/nonTerminalNodeMap.js +9 -3
- package/src/ruleNames.js +3 -1
- package/src/utilities/node.js +147 -6
- package/src/utilities/type.js +9 -0
- package/src/verifier/topLevel.js +5 -10
- package/lib/defaultTerminalNode.js +0 -20
- package/lib/mixins/node.js +0 -145
- package/src/defaultTerminalNode.js +0 -7
- package/src/mixins/node.js +0 -201
- package/src/node.js +0 -29
package/src/node/term.js
CHANGED
|
@@ -1,7 +1,66 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { arrayUtilities } from "necessary";
|
|
4
|
+
import { NonTerminalNode } from "occam-parsers";
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
|
|
6
|
+
import { isNodeTermNode, isNodeVariableNode } from "../utilities/node";
|
|
7
|
+
|
|
8
|
+
const { first } = arrayUtilities;
|
|
9
|
+
|
|
10
|
+
export default class TermNode extends NonTerminalNode {
|
|
11
|
+
getVariableNodes() {
|
|
12
|
+
const variableNodes = this.filterDescendantNode((descendantNode) => {
|
|
13
|
+
const descendantNodeVariableNode = isNodeVariableNode(descendantNode);
|
|
14
|
+
|
|
15
|
+
if (descendantNodeVariableNode) {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
return variableNodes;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
getSingularTermNode() {
|
|
24
|
+
let singularTermNode = null;
|
|
25
|
+
|
|
26
|
+
const termNodes = this.filterChildNode((childNode) => {
|
|
27
|
+
const childNodeTermNode = isNodeTermNode(childNode);
|
|
28
|
+
|
|
29
|
+
if (!childNodeTermNode) {
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
}),
|
|
33
|
+
termNodesLength = termNodes.length;
|
|
34
|
+
|
|
35
|
+
if (termNodesLength === 1) {
|
|
36
|
+
const firstTermNode = first(termNodes);
|
|
37
|
+
|
|
38
|
+
singularTermNode = firstTermNode; ///
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return singularTermNode;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
getSingularVariableNode() {
|
|
45
|
+
let singularVariableNode = null;
|
|
46
|
+
|
|
47
|
+
const variableNodes = this.filterChildNode((childNode) => {
|
|
48
|
+
const childNodeVariableNode = isNodeVariableNode(childNode);
|
|
49
|
+
|
|
50
|
+
if (!childNodeVariableNode) {
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
}),
|
|
54
|
+
variableNodesLength = variableNodes.length;
|
|
55
|
+
|
|
56
|
+
if (variableNodesLength === 1) {
|
|
57
|
+
const firstVariableNode = first(variableNodes);
|
|
58
|
+
|
|
59
|
+
singularVariableNode = firstVariableNode; ///
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
return singularVariableNode;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(TermNode, ruleName, childNodes, opacity, precedence); }
|
|
7
66
|
}
|
package/src/node/theorem.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import TopLevelAssertionNode from "../node/topLevelAssertion";
|
|
4
4
|
|
|
5
|
-
export default class TheoremNode extends
|
|
6
|
-
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return
|
|
5
|
+
export default class TheoremNode extends TopLevelAssertionNode {
|
|
6
|
+
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return TopLevelAssertionNode.fromRuleNameChildNodesOpacityAndPrecedence(TheoremNode, ruleName, childNodes, opacity, precedence); }
|
|
7
7
|
}
|
|
@@ -1,7 +1,93 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { NonTerminalNode } from "occam-parsers";
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
import { SATISFIABLE } from "../constants";
|
|
6
|
+
import { isNodeProofNode,
|
|
7
|
+
isNodeDeductionNode,
|
|
8
|
+
isNodeSuppositionNode,
|
|
9
|
+
isNodeParenthesisedLabelsNode } from "../utilities/node";
|
|
10
|
+
|
|
11
|
+
export default class TopLevelAssertionNode extends NonTerminalNode {
|
|
12
|
+
isSatisfiable() {
|
|
13
|
+
let satisfiable = false;
|
|
14
|
+
|
|
15
|
+
this.someChildNode((childNode, index) => {
|
|
16
|
+
const terminalNode = childNode,
|
|
17
|
+
content = terminalNode.getContent(),
|
|
18
|
+
contentSatisfiable = (content === SATISFIABLE);
|
|
19
|
+
|
|
20
|
+
if (contentSatisfiable) {
|
|
21
|
+
satisfiable = true;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
if (index === 0) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
return satisfiable;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
getLabelNodes() {
|
|
33
|
+
let labelNodes = [];
|
|
34
|
+
|
|
35
|
+
const parenthesisedLabelsNode = this.getParenthesisedLabelsNode();
|
|
36
|
+
|
|
37
|
+
if (parenthesisedLabelsNode !== null) {
|
|
38
|
+
labelNodes = parenthesisedLabelsNode.getLabelNodes();
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return labelNodes;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
getProofNode() {
|
|
45
|
+
const proofNode = this.findChildNode((childNode) => {
|
|
46
|
+
const childNOdeProofNode = isNodeProofNode(childNode);
|
|
47
|
+
|
|
48
|
+
if (childNOdeProofNode) {
|
|
49
|
+
return true;
|
|
50
|
+
}
|
|
51
|
+
}) || null;
|
|
52
|
+
|
|
53
|
+
return proofNode;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
getDeductionNode() {
|
|
57
|
+
const deductionNode = this.findChildNode((childNode) => {
|
|
58
|
+
const childNOdeDeductionNode = isNodeDeductionNode(childNode);
|
|
59
|
+
|
|
60
|
+
if (childNOdeDeductionNode) {
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
}) || null;
|
|
64
|
+
|
|
65
|
+
return deductionNode;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
getSuppositionNodes() {
|
|
69
|
+
const suppositionNodes = this.filterChildNode((childNode) => {
|
|
70
|
+
const childNodeSuppositionNode = isNodeSuppositionNode(childNode);
|
|
71
|
+
|
|
72
|
+
if (childNodeSuppositionNode) {
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
return suppositionNodes;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
getParenthesisedLabelsNode() {
|
|
81
|
+
const parenthesisedLabelsNode = this.findChildNode((childNode) => {
|
|
82
|
+
const childNodeParenthesisedLabelNode = isNodeParenthesisedLabelsNode(childNode);
|
|
83
|
+
|
|
84
|
+
if (childNodeParenthesisedLabelNode) {
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
}) || null;
|
|
88
|
+
|
|
89
|
+
return parenthesisedLabelsNode;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
static fromRuleNameChildNodesOpacityAndPrecedence(Class, ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(Class, ruleName, childNodes, opacity, precedence); }
|
|
7
93
|
}
|
|
@@ -1,7 +1,63 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { NonTerminalNode } from "occam-parsers";
|
|
4
|
+
import { isNodeProofNode, isNodePremiseNode, isNodeConclusionNode, isNodeParenthesisedLabelsNode } from "../utilities/node";
|
|
4
5
|
|
|
5
|
-
export default class TopLevelMetaAssertionNode extends
|
|
6
|
-
|
|
6
|
+
export default class TopLevelMetaAssertionNode extends NonTerminalNode {
|
|
7
|
+
getLabelNodes() {
|
|
8
|
+
const parenthesisedLabelsNode = this.getParenthesisedLabelsNode(),
|
|
9
|
+
labelNodes = parenthesisedLabelsNode.getLabelNodes();
|
|
10
|
+
|
|
11
|
+
return labelNodes;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
getProofNode() {
|
|
15
|
+
const proofNode = this.findChildNode((childNode) => {
|
|
16
|
+
const childNOdeProofNode = isNodeProofNode(childNode);
|
|
17
|
+
|
|
18
|
+
if (childNOdeProofNode) {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
}) || null;
|
|
22
|
+
|
|
23
|
+
return proofNode;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
getPremiseNodes() {
|
|
27
|
+
const premiseNodes = this.filterChildNode((childNode) => {
|
|
28
|
+
const childNOdePremiseNode = isNodePremiseNode(childNode);
|
|
29
|
+
|
|
30
|
+
if (childNOdePremiseNode) {
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
}) || null;
|
|
34
|
+
|
|
35
|
+
return premiseNodes;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
getConclusionNode() {
|
|
39
|
+
const conclusionNode = this.findChildNode((childNode) => {
|
|
40
|
+
const childNOdeConclusionNode = isNodeConclusionNode(childNode);
|
|
41
|
+
|
|
42
|
+
if (childNOdeConclusionNode) {
|
|
43
|
+
return true;
|
|
44
|
+
}
|
|
45
|
+
}) || null;
|
|
46
|
+
|
|
47
|
+
return conclusionNode;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
getParenthesisedLabelsNode() {
|
|
51
|
+
const parenthesisedLabelsNode = this.findChildNode((childNode) => {
|
|
52
|
+
const childNodeParenthesisedLabelNode = isNodeParenthesisedLabelsNode(childNode);
|
|
53
|
+
|
|
54
|
+
if (childNodeParenthesisedLabelNode) {
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
}) || null;
|
|
58
|
+
|
|
59
|
+
return parenthesisedLabelsNode;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
static fromRuleNameChildNodesOpacityAndPrecedence(Class, ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(Class, ruleName, childNodes, opacity, precedence); }
|
|
7
63
|
}
|
package/src/node/type.js
CHANGED
|
@@ -1,19 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { NonTerminalNode } from "occam-parsers";
|
|
4
4
|
|
|
5
|
-
export default class TypeNode extends
|
|
5
|
+
export default class TypeNode extends NonTerminalNode {
|
|
6
6
|
getTypeName() {
|
|
7
|
-
|
|
8
|
-
const typeTerminalNode = firstChildNode, ///
|
|
9
|
-
content = typeTerminalNode.getContent(),
|
|
10
|
-
typeName = content; ///
|
|
7
|
+
let typeName;
|
|
11
8
|
|
|
12
|
-
|
|
9
|
+
this.someChildNode((childNode) => {
|
|
10
|
+
const childNodeTerminalNode = childNode.isTerminalNode();
|
|
11
|
+
|
|
12
|
+
if (childNodeTerminalNode) {
|
|
13
|
+
const terminalNode = childNode, ///
|
|
14
|
+
content = terminalNode.getContent();
|
|
15
|
+
|
|
16
|
+
typeName = content; ///
|
|
17
|
+
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
13
20
|
});
|
|
14
21
|
|
|
15
22
|
return typeName;
|
|
16
23
|
}
|
|
17
24
|
|
|
18
|
-
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return
|
|
25
|
+
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(TypeNode, ruleName, childNodes, opacity, precedence); }
|
|
19
26
|
}
|
package/src/node/variable.js
CHANGED
|
@@ -1,19 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import { NonTerminalNode } from "occam-parsers";
|
|
4
4
|
|
|
5
|
-
export default class VariableNode extends
|
|
5
|
+
export default class VariableNode extends NonTerminalNode {
|
|
6
6
|
getVariableName() {
|
|
7
|
-
|
|
8
|
-
const nameTerminalNode = firstChildNode, ///
|
|
9
|
-
content = nameTerminalNode.getContent(),
|
|
10
|
-
variableName = content; ///
|
|
7
|
+
let variableName;
|
|
11
8
|
|
|
12
|
-
|
|
9
|
+
this.someChildNode((childNode) => {
|
|
10
|
+
const childNodeTerminalNode = childNode.isTerminalNode();
|
|
11
|
+
|
|
12
|
+
if (childNodeTerminalNode) {
|
|
13
|
+
const terminalNode = childNode, ///
|
|
14
|
+
content = terminalNode.getContent();
|
|
15
|
+
|
|
16
|
+
variableName = content; ///
|
|
17
|
+
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
13
20
|
});
|
|
14
21
|
|
|
15
22
|
return variableName;
|
|
16
23
|
}
|
|
17
24
|
|
|
18
|
-
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return
|
|
25
|
+
static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return NonTerminalNode.fromRuleNameChildNodesOpacityAndPrecedence(VariableNode, ruleName, childNodes, opacity, precedence); }
|
|
19
26
|
}
|
package/src/nominal/parser.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { NominalParser as NominalParserBase } from "occam-grammars";
|
|
4
|
+
import { NonTerminalNode as defaultNonTerminalNode } from "occam-parsers";
|
|
4
5
|
|
|
5
6
|
import NonTerminalNodeMap from "../nonTerminalNodeMap";
|
|
6
|
-
import defaultNonTerminalNode from "../defaultTerminalNode";
|
|
7
7
|
|
|
8
8
|
export default class NominalParser extends NominalParserBase {
|
|
9
9
|
static NonTerminalNodeMap = NonTerminalNodeMap;
|
|
@@ -7,9 +7,10 @@ import StepNode from "./node/step"
|
|
|
7
7
|
import ErrorNode from "./node/error"
|
|
8
8
|
import FrameNode from "./node/frame"
|
|
9
9
|
import AxiomNode from "./node/axiom"
|
|
10
|
-
import LabelNode from "./node/label"
|
|
11
10
|
import LemmaNode from "./node/lemma"
|
|
12
11
|
import ProofNode from "./node/proof"
|
|
12
|
+
import LabelNode from "./node/label"
|
|
13
|
+
import LabelsNode from "./node/labels"
|
|
13
14
|
import PremiseNode from "./node/premise"
|
|
14
15
|
import TheoremNode from "./node/theorem"
|
|
15
16
|
import SubproofNode from "./node/subproof"
|
|
@@ -42,6 +43,7 @@ import PropertyAssertionNode from "./node/assertion/property";
|
|
|
42
43
|
import SubproofAssertionNode from "./node/assertion/subproof";
|
|
43
44
|
import ContainedAssertionNode from "./node/assertion/contained";
|
|
44
45
|
import SatisfiesAssertionNode from "./node/assertion/satisfies";
|
|
46
|
+
import ParenthesisedLabelsNode from "./node/parenthesisedLabels"
|
|
45
47
|
import PropertyDeclarationNode from "./node/declaration/property";
|
|
46
48
|
import variableDeclarationNode from "./node/declaration/variable";
|
|
47
49
|
import combinatorDeclarationNode from "./node/declaration/combinator";
|
|
@@ -57,8 +59,9 @@ import { RULE_RULE_NAME,
|
|
|
57
59
|
ERROR_RULE_NAME,
|
|
58
60
|
FRAME_RULE_NAME,
|
|
59
61
|
AXIOM_RULE_NAME,
|
|
60
|
-
LABEL_RULE_NAME,
|
|
61
62
|
LEMMA_RULE_NAME,
|
|
63
|
+
LABEL_RULE_NAME,
|
|
64
|
+
LABELS_RULE_NAME,
|
|
62
65
|
THEOREM_RULE_NAME,
|
|
63
66
|
PREMISE_RULE_NAME,
|
|
64
67
|
SUBPROOF_RULE_NAME,
|
|
@@ -91,6 +94,7 @@ import { RULE_RULE_NAME,
|
|
|
91
94
|
PROPERTY_ASSERTION_RULE_NAME,
|
|
92
95
|
CONTAINED_ASSERTION_RULE_NAME,
|
|
93
96
|
SATISFIES_ASSERTION_RULE_NAME,
|
|
97
|
+
PARENTHESISED_LABELS_RULE_NAME,
|
|
94
98
|
PROPERTY_DECLARATION_RULE_NAME,
|
|
95
99
|
VARIABLE_DECLARATION_RULE_NAME,
|
|
96
100
|
COMBINATOR_DECLARATION_RULE_NAME,
|
|
@@ -105,10 +109,11 @@ const nonTerminalNodeMap = {
|
|
|
105
109
|
[TYPE_RULE_NAME]: TypeNode,
|
|
106
110
|
[ERROR_RULE_NAME]: ErrorNode,
|
|
107
111
|
[FRAME_RULE_NAME]: FrameNode,
|
|
108
|
-
[LABEL_RULE_NAME]: LabelNode,
|
|
109
112
|
[LEMMA_RULE_NAME]: LemmaNode,
|
|
110
113
|
[AXIOM_RULE_NAME]: AxiomNode,
|
|
111
114
|
[PROOF_RULE_NAME]: ProofNode,
|
|
115
|
+
[LABEL_RULE_NAME]: LabelNode,
|
|
116
|
+
[LABELS_RULE_NAME]: LabelsNode,
|
|
112
117
|
[THEOREM_RULE_NAME]: TheoremNode,
|
|
113
118
|
[PREMISE_RULE_NAME]: PremiseNode,
|
|
114
119
|
[PROPERTY_RULE_NAME]: PropertyNode,
|
|
@@ -141,6 +146,7 @@ const nonTerminalNodeMap = {
|
|
|
141
146
|
[PROPERTY_ASSERTION_RULE_NAME]: PropertyAssertionNode,
|
|
142
147
|
[SATISFIES_ASSERTION_RULE_NAME]: SatisfiesAssertionNode,
|
|
143
148
|
[CONTAINED_ASSERTION_RULE_NAME]: ContainedAssertionNode,
|
|
149
|
+
[PARENTHESISED_LABELS_RULE_NAME]: ParenthesisedLabelsNode,
|
|
144
150
|
[VARIABLE_DECLARATION_RULE_NAME]: variableDeclarationNode,
|
|
145
151
|
[PROPERTY_DECLARATION_RULE_NAME]: PropertyDeclarationNode,
|
|
146
152
|
[COMBINATOR_DECLARATION_RULE_NAME]: combinatorDeclarationNode,
|
package/src/ruleNames.js
CHANGED
|
@@ -4,12 +4,13 @@ export const RULE_RULE_NAME = "rule";
|
|
|
4
4
|
export const STEP_RULE_NAME = "step";
|
|
5
5
|
export const TERM_RULE_NAME = "term";
|
|
6
6
|
export const TYPE_RULE_NAME = "type";
|
|
7
|
-
export const LABEL_RULE_NAME = "label";
|
|
8
7
|
export const LEMMA_RULE_NAME = "lemma";
|
|
9
8
|
export const AXIOM_RULE_NAME = "axiom";
|
|
10
9
|
export const ERROR_RULE_NAME = "error";
|
|
11
10
|
export const FRAME_RULE_NAME = "frame";
|
|
12
11
|
export const PROOF_RULE_NAME = "proof";
|
|
12
|
+
export const LABEL_RULE_NAME = "label";
|
|
13
|
+
export const LABELS_RULE_NAME = "labels";
|
|
13
14
|
export const THEOREM_RULE_NAME = "theorem";
|
|
14
15
|
export const PREMISE_RULE_NAME = "premise";
|
|
15
16
|
export const PROPERTY_RULE_NAME = "property";
|
|
@@ -42,6 +43,7 @@ export const PROPERTY_ASSERTION_RULE_NAME = "propertyAssertion";
|
|
|
42
43
|
export const SUBPROOF_ASSERTION_RULE_NAME = "subproofAssertion";
|
|
43
44
|
export const CONTAINED_ASSERTION_RULE_NAME = "containedAssertion";
|
|
44
45
|
export const SATISFIES_ASSERTION_RULE_NAME = "satisfiesAssertion";
|
|
46
|
+
export const PARENTHESISED_LABELS_RULE_NAME = "parenthesisedLabels";
|
|
45
47
|
export const PROPERTY_DECLARATION_RULE_NAME = "propertyDeclaration";
|
|
46
48
|
export const VARIABLE_DECLARATION_RULE_NAME = "variableDeclaration";
|
|
47
49
|
export const COMBINATOR_DECLARATION_RULE_NAME = "combinatorDeclaration";
|
package/src/utilities/node.js
CHANGED
|
@@ -3,15 +3,156 @@
|
|
|
3
3
|
import dom from "../dom";
|
|
4
4
|
|
|
5
5
|
import { objectType } from "../dom/type";
|
|
6
|
-
import {
|
|
6
|
+
import { RULE_RULE_NAME,
|
|
7
|
+
STEP_RULE_NAME,
|
|
8
|
+
TERM_RULE_NAME,
|
|
9
|
+
TYPE_RULE_NAME,
|
|
10
|
+
LEMMA_RULE_NAME,
|
|
11
|
+
AXIOM_RULE_NAME,
|
|
12
|
+
ERROR_RULE_NAME,
|
|
13
|
+
FRAME_RULE_NAME,
|
|
14
|
+
PROOF_RULE_NAME,
|
|
15
|
+
LABEL_RULE_NAME,
|
|
16
|
+
LABELS_RULE_NAME,
|
|
17
|
+
THEOREM_RULE_NAME,
|
|
18
|
+
PREMISE_RULE_NAME,
|
|
19
|
+
PROPERTY_RULE_NAME,
|
|
20
|
+
EQUALITY_RULE_NAME,
|
|
21
|
+
VARIABLE_RULE_NAME,
|
|
22
|
+
SUBPROOF_RULE_NAME,
|
|
23
|
+
META_TYPE_RULE_NAME,
|
|
24
|
+
PARAMETER_RULE_NAME,
|
|
25
|
+
DEDUCTION_RULE_NAME,
|
|
26
|
+
JUDGEMENT_RULE_NAME,
|
|
27
|
+
REFERENCE_RULE_NAME,
|
|
28
|
+
STATEMENT_RULE_NAME,
|
|
29
|
+
META_LEMMA_RULE_NAME,
|
|
30
|
+
COMBINATOR_RULE_NAME,
|
|
31
|
+
CONCLUSION_RULE_NAME,
|
|
32
|
+
CONJECTURE_RULE_NAME,
|
|
33
|
+
DERIVATION_RULE_NAME,
|
|
34
|
+
SUPPOSITION_RULE_NAME,
|
|
35
|
+
CONSTRUCTOR_RULE_NAME,
|
|
36
|
+
DECLARATION_RULE_NAME,
|
|
37
|
+
METATHEOREM_RULE_NAME,
|
|
38
|
+
METAVARIABLE_RULE_NAME,
|
|
39
|
+
PROCEDURE_CALL_RULE_NAME,
|
|
40
|
+
SUB_DERIVATION_RULE_NAME,
|
|
41
|
+
TYPE_ASSERTION_RULE_NAME,
|
|
42
|
+
TYPE_DECLARATION_RULE_NAME,
|
|
43
|
+
PROPERTY_RELATION_RULE_NAME,
|
|
44
|
+
DEFINED_ASSERTION_RULE_NAME,
|
|
45
|
+
PROPERTY_ASSERTION_RULE_NAME,
|
|
46
|
+
SUBPROOF_ASSERTION_RULE_NAME,
|
|
47
|
+
CONTAINED_ASSERTION_RULE_NAME,
|
|
48
|
+
SATISFIES_ASSERTION_RULE_NAME,
|
|
49
|
+
PROPERTY_DECLARATION_RULE_NAME,
|
|
50
|
+
VARIABLE_DECLARATION_RULE_NAME,
|
|
51
|
+
PARENTHESISED_LABELS_RULE_NAME,
|
|
52
|
+
COMBINATOR_DECLARATION_RULE_NAME,
|
|
53
|
+
CONSTRUCTOR_DECLARATION_RULE_NAME,
|
|
54
|
+
COMPLEX_TYPE_DECLARATION_RULE_NAME,
|
|
55
|
+
METAVARIABLE_DECLARATION_RULE_NAME } from "../ruleNames";
|
|
7
56
|
|
|
8
|
-
export function
|
|
57
|
+
export function isNodeRuleNode(node) { return isNodeRuleNodeByRuleName(node, RULE_RULE_NAME); }
|
|
9
58
|
|
|
10
|
-
export function
|
|
59
|
+
export function isNodeStepNode(node) { return isNodeRuleNodeByRuleName(node, STEP_RULE_NAME); }
|
|
11
60
|
|
|
12
|
-
export function
|
|
61
|
+
export function isNodeTermNode(node) { return isNodeRuleNodeByRuleName(node, TERM_RULE_NAME); }
|
|
13
62
|
|
|
14
|
-
export function
|
|
63
|
+
export function isNodeTypeNode(node) { return isNodeRuleNodeByRuleName(node, TYPE_RULE_NAME); }
|
|
64
|
+
|
|
65
|
+
export function isNodeLemmaNode(node) { return isNodeRuleNodeByRuleName(node, LEMMA_RULE_NAME); }
|
|
66
|
+
|
|
67
|
+
export function isNodeAxiomNode(node) { return isNodeRuleNodeByRuleName(node, AXIOM_RULE_NAME); }
|
|
68
|
+
|
|
69
|
+
export function isNodeErrorNode(node) { return isNodeRuleNodeByRuleName(node, ERROR_RULE_NAME); }
|
|
70
|
+
|
|
71
|
+
export function isNodeFrameNode(node) { return isNodeRuleNodeByRuleName(node, FRAME_RULE_NAME); }
|
|
72
|
+
|
|
73
|
+
export function isNodeProofNode(node) { return isNodeRuleNodeByRuleName(node, PROOF_RULE_NAME); }
|
|
74
|
+
|
|
75
|
+
export function isNodeLabelNode(node) { return isNodeRuleNodeByRuleName(node, LABEL_RULE_NAME); }
|
|
76
|
+
|
|
77
|
+
export function isNodeLabelsNode(node) { return isNodeRuleNodeByRuleName(node, LABELS_RULE_NAME); }
|
|
78
|
+
|
|
79
|
+
export function isNodeTheoremNode(node) { return isNodeRuleNodeByRuleName(node, THEOREM_RULE_NAME); }
|
|
80
|
+
|
|
81
|
+
export function isNodePremiseNode(node) { return isNodeRuleNodeByRuleName(node, PREMISE_RULE_NAME); }
|
|
82
|
+
|
|
83
|
+
export function isNodePropertyNode(node) { return isNodeRuleNodeByRuleName(node, PROPERTY_RULE_NAME); }
|
|
84
|
+
|
|
85
|
+
export function isNodeEqualityNode(node) { return isNodeRuleNodeByRuleName(node, EQUALITY_RULE_NAME); }
|
|
86
|
+
|
|
87
|
+
export function isNodeVariableNode(node) { return isNodeRuleNodeByRuleName(node, VARIABLE_RULE_NAME); }
|
|
88
|
+
|
|
89
|
+
export function isNodeSubproofNode(node) { return isNodeRuleNodeByRuleName(node, SUBPROOF_RULE_NAME); }
|
|
90
|
+
|
|
91
|
+
export function isNodeMetaTypeNode(node) { return isNodeRuleNodeByRuleName(node, META_TYPE_RULE_NAME); }
|
|
92
|
+
|
|
93
|
+
export function isNodeParameterNode(node) { return isNodeRuleNodeByRuleName(node, PARAMETER_RULE_NAME); }
|
|
94
|
+
|
|
95
|
+
export function isNodeDeductionNode(node) { return isNodeRuleNodeByRuleName(node, DEDUCTION_RULE_NAME); }
|
|
96
|
+
|
|
97
|
+
export function isNodeJudgementNode(node) { return isNodeRuleNodeByRuleName(node, JUDGEMENT_RULE_NAME); }
|
|
98
|
+
|
|
99
|
+
export function isNodeReferenceNode(node) { return isNodeRuleNodeByRuleName(node, REFERENCE_RULE_NAME); }
|
|
100
|
+
|
|
101
|
+
export function isNodeStatementNode(node) { return isNodeRuleNodeByRuleName(node, STATEMENT_RULE_NAME); }
|
|
102
|
+
|
|
103
|
+
export function isNodeMetaLemmaNode(node) { return isNodeRuleNodeByRuleName(node, META_LEMMA_RULE_NAME); }
|
|
104
|
+
|
|
105
|
+
export function isNodeCombinatorNode(node) { return isNodeRuleNodeByRuleName(node, COMBINATOR_RULE_NAME); }
|
|
106
|
+
|
|
107
|
+
export function isNodeConclusionNode(node) { return isNodeRuleNodeByRuleName(node, CONCLUSION_RULE_NAME); }
|
|
108
|
+
|
|
109
|
+
export function isNodeConjectureNode(node) { return isNodeRuleNodeByRuleName(node, CONJECTURE_RULE_NAME); }
|
|
110
|
+
|
|
111
|
+
export function isNodeDerivationNode(node) { return isNodeRuleNodeByRuleName(node, DERIVATION_RULE_NAME); }
|
|
112
|
+
|
|
113
|
+
export function isNodeSuppositionNode(node) { return isNodeRuleNodeByRuleName(node, SUPPOSITION_RULE_NAME); }
|
|
114
|
+
|
|
115
|
+
export function isNodeConstructorNode(node) { return isNodeRuleNodeByRuleName(node, CONSTRUCTOR_RULE_NAME); }
|
|
116
|
+
|
|
117
|
+
export function isNodeDeclarationNode(node) { return isNodeRuleNodeByRuleName(node, DECLARATION_RULE_NAME); }
|
|
118
|
+
|
|
119
|
+
export function isNodeMetatheoremNode(node) { return isNodeRuleNodeByRuleName(node, METATHEOREM_RULE_NAME); }
|
|
120
|
+
|
|
121
|
+
export function isNodeMetavariableNode(node) { return isNodeRuleNodeByRuleName(node, METAVARIABLE_RULE_NAME); }
|
|
122
|
+
|
|
123
|
+
export function isNodeProcedureCallNode(node) { return isNodeRuleNodeByRuleName(node, PROCEDURE_CALL_RULE_NAME); }
|
|
124
|
+
|
|
125
|
+
export function isNodeSubDerivationNode(node) { return isNodeRuleNodeByRuleName(node, SUB_DERIVATION_RULE_NAME); }
|
|
126
|
+
|
|
127
|
+
export function isNodeTypeAssertionNode(node) { return isNodeRuleNodeByRuleName(node, TYPE_ASSERTION_RULE_NAME); }
|
|
128
|
+
|
|
129
|
+
export function isNodeTypeDeclarationNode(node) { return isNodeRuleNodeByRuleName(node, TYPE_DECLARATION_RULE_NAME); }
|
|
130
|
+
|
|
131
|
+
export function isNodePropertyRelationNode(node) { return isNodeRuleNodeByRuleName(node, PROPERTY_RELATION_RULE_NAME); }
|
|
132
|
+
|
|
133
|
+
export function isNodeDefinedAssertionNode(node) { return isNodeRuleNodeByRuleName(node, DEFINED_ASSERTION_RULE_NAME); }
|
|
134
|
+
|
|
135
|
+
export function isNodePropertyAssertionNode(node) { return isNodeRuleNodeByRuleName(node, PROPERTY_ASSERTION_RULE_NAME); }
|
|
136
|
+
|
|
137
|
+
export function isNodeSubproofAssertionNode(node) { return isNodeRuleNodeByRuleName(node, SUBPROOF_ASSERTION_RULE_NAME); }
|
|
138
|
+
|
|
139
|
+
export function isNodeContainedAssertionNode(node) { return isNodeRuleNodeByRuleName(node, CONTAINED_ASSERTION_RULE_NAME); }
|
|
140
|
+
|
|
141
|
+
export function isNodeSatisfiesAssertionNode(node) { return isNodeRuleNodeByRuleName(node, SATISFIES_ASSERTION_RULE_NAME); }
|
|
142
|
+
|
|
143
|
+
export function isNodePropertyDeclarationNode(node) { return isNodeRuleNodeByRuleName(node, PROPERTY_DECLARATION_RULE_NAME); }
|
|
144
|
+
|
|
145
|
+
export function isNodeVariableDeclarationNode(node) { return isNodeRuleNodeByRuleName(node, VARIABLE_DECLARATION_RULE_NAME); }
|
|
146
|
+
|
|
147
|
+
export function isNodeParenthesisedLabelsNode(node) { return isNodeRuleNodeByRuleName(node, PARENTHESISED_LABELS_RULE_NAME); }
|
|
148
|
+
|
|
149
|
+
export function isNodeCombinatorDeclarationNode(node) { return isNodeRuleNodeByRuleName(node, COMBINATOR_DECLARATION_RULE_NAME); }
|
|
150
|
+
|
|
151
|
+
export function isNodeConstructorDeclarationNode(node) { return isNodeRuleNodeByRuleName(node, CONSTRUCTOR_DECLARATION_RULE_NAME); }
|
|
152
|
+
|
|
153
|
+
export function isNodeComplexTypeDeclarationNode(node) { return isNodeRuleNodeByRuleName(node, COMPLEX_TYPE_DECLARATION_RULE_NAME); }
|
|
154
|
+
|
|
155
|
+
export function isNodeMetavariableDeclarationNode(node) { return isNodeRuleNodeByRuleName(node, METAVARIABLE_DECLARATION_RULE_NAME); }
|
|
15
156
|
|
|
16
157
|
export function typeFromTypeNode(typeNode) {
|
|
17
158
|
let type;
|
|
@@ -53,7 +194,7 @@ export function statementFromStatementNode(statementNode, context) {
|
|
|
53
194
|
return statement;
|
|
54
195
|
}
|
|
55
196
|
|
|
56
|
-
function
|
|
197
|
+
function isNodeRuleNodeByRuleName(node, ruleName) {
|
|
57
198
|
let nodeRuleNode = false;
|
|
58
199
|
|
|
59
200
|
const nodeNonTerminalNode = node.isNonTerminalNode();
|
package/src/utilities/type.js
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
import { objectType } from "../dom/type";
|
|
4
4
|
|
|
5
|
+
export function stringFromTypeNameNameAndSuperTypes(typeName, superTypes) {
|
|
6
|
+
const superTypesString = superTypesStringFromSuperTypes(superTypes),
|
|
7
|
+
string = (superTypesString !== null) ?
|
|
8
|
+
`${typeName}:${superTypesString}` :
|
|
9
|
+
typeName; ///
|
|
10
|
+
|
|
11
|
+
return string;
|
|
12
|
+
}
|
|
13
|
+
|
|
5
14
|
export function superTypesStringFromSuperTypes(superTypes) {
|
|
6
15
|
const superTypesString = superTypes.reduce((superTypesString, superType) => {
|
|
7
16
|
if (superType !== objectType) {
|
package/src/verifier/topLevel.js
CHANGED
|
@@ -67,8 +67,7 @@ class TopLevelVerifier extends Verifier {
|
|
|
67
67
|
nodeQuery: lemmaNodeQuery,
|
|
68
68
|
verify: (lemmaNode, fileContext) => {
|
|
69
69
|
const { Lemma } = dom,
|
|
70
|
-
|
|
71
|
-
lemma = Lemma.fromNode(node, fileContext),
|
|
70
|
+
lemma = Lemma.fromLemmaNode(lemmaNode, fileContext),
|
|
72
71
|
lemmaVerified = lemma.verify();
|
|
73
72
|
|
|
74
73
|
return lemmaVerified;
|
|
@@ -78,8 +77,7 @@ class TopLevelVerifier extends Verifier {
|
|
|
78
77
|
nodeQuery: theoremNodeQuery,
|
|
79
78
|
verify: (theoremNode, fileContext) => {
|
|
80
79
|
const { Theorem } = dom,
|
|
81
|
-
|
|
82
|
-
theorem = Theorem.fromNode(node, fileContext),
|
|
80
|
+
theorem = Theorem.fromTheoremNode(theoremNode, fileContext),
|
|
83
81
|
theoremVerified = theorem.verify();
|
|
84
82
|
|
|
85
83
|
return theoremVerified;
|
|
@@ -89,8 +87,7 @@ class TopLevelVerifier extends Verifier {
|
|
|
89
87
|
nodeQuery: metaLemmaNodeQuery,
|
|
90
88
|
verify: (metaLemmaNode, fileContext) => {
|
|
91
89
|
const { MetaLemma } = dom,
|
|
92
|
-
|
|
93
|
-
metaLemma = MetaLemma.fromNode(node, fileContext),
|
|
90
|
+
metaLemma = MetaLemma.fromMetaLemmaNode(metaLemmaNode, fileContext),
|
|
94
91
|
metaLemmaVerified = metaLemma.verify();
|
|
95
92
|
|
|
96
93
|
return metaLemmaVerified;
|
|
@@ -100,8 +97,7 @@ class TopLevelVerifier extends Verifier {
|
|
|
100
97
|
nodeQuery: conjectureNodeQuery,
|
|
101
98
|
verify: (conjectureNode, fileContext) => {
|
|
102
99
|
const { Conjecture } = dom,
|
|
103
|
-
|
|
104
|
-
conjecture = Conjecture.fromNode(node, fileContext),
|
|
100
|
+
conjecture = Conjecture.fromConjectureNode(conjectureNode, fileContext),
|
|
105
101
|
conjectureVerified = conjecture.verify();
|
|
106
102
|
|
|
107
103
|
return conjectureVerified;
|
|
@@ -111,8 +107,7 @@ class TopLevelVerifier extends Verifier {
|
|
|
111
107
|
nodeQuery: metatheoremNodeQuery,
|
|
112
108
|
verify: (metatheoremNode, fileContext) => {
|
|
113
109
|
const { Metatheorem } = dom,
|
|
114
|
-
|
|
115
|
-
metatheorem = Metatheorem.fromNode(node, fileContext),
|
|
110
|
+
metatheorem = Metatheorem.fromMetatheoremNode(metatheoremNode, fileContext),
|
|
116
111
|
metatheoremVerified = metatheorem.verify();
|
|
117
112
|
|
|
118
113
|
return metatheoremVerified;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _Node = /*#__PURE__*/ _interop_require_default(require("./Node"));
|
|
12
|
-
function _interop_require_default(obj) {
|
|
13
|
-
return obj && obj.__esModule ? obj : {
|
|
14
|
-
default: obj
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
var defaultNonTerminalNode = _Node.default; ///
|
|
18
|
-
var _default = defaultNonTerminalNode;
|
|
19
|
-
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWZhdWx0VGVybWluYWxOb2RlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgTm9kZSBmcm9tIFwiLi9Ob2RlXCI7XG5cbmNvbnN0IGRlZmF1bHROb25UZXJtaW5hbE5vZGUgPSBOb2RlOyAgLy8vXG5cbmV4cG9ydCBkZWZhdWx0IGRlZmF1bHROb25UZXJtaW5hbE5vZGU7XG4iXSwibmFtZXMiOlsiZGVmYXVsdE5vblRlcm1pbmFsTm9kZSIsIk5vZGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBQTs7OzJEQUppQjs7Ozs7O0FBRWpCLElBQU1BLHlCQUF5QkMsYUFBSSxFQUFHLEdBQUc7SUFFekMsV0FBZUQifQ==
|