occam-verify-cli 0.0.932 → 0.0.934
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/conclusion.js +4 -4
- package/lib/consequent.js +4 -4
- package/lib/context/local.js +188 -9
- package/lib/declaration.js +2 -2
- package/lib/equality.js +4 -4
- package/lib/equivalence.js +16 -1
- package/lib/metaLemma.js +4 -4
- package/lib/metatheorem.js +4 -4
- package/lib/premise.js +6 -6
- package/lib/proofStep.js +43 -6
- package/lib/shim.js +14 -0
- package/lib/substitution/statementForMetavariable.js +46 -2
- package/lib/substitution/termForVariable.js +15 -1
- package/lib/supposition.js +6 -6
- package/lib/unifier/equality.js +216 -0
- package/lib/unifier/metaLevel.js +235 -0
- package/lib/unifier/statementAgainstCombinator.js +232 -0
- package/lib/unifier/termAgainstConstructor.js +212 -0
- package/lib/unifier.js +201 -0
- package/lib/unify/argumentAgainstArgument.js +24 -0
- package/lib/unify/metavariableAgainstStatement.js +66 -0
- package/lib/unify/statementAgainstMetaType.js +28 -0
- package/lib/unify/statementAtainstStatement.js +52 -0
- package/lib/unify/termAgainstTerm.js +22 -0
- package/lib/unify/termAgainstType.js +26 -0
- package/lib/unify/variableAgainstTerm.js +70 -0
- package/lib/verifier/metaLevel.js +236 -0
- package/lib/verifier/statementAsCombinator.js +236 -0
- package/lib/verifier/termAsConstructor.js +219 -0
- package/lib/verifier.js +182 -0
- package/lib/verify/assertion/contained.js +2 -2
- package/lib/verify/assertion/defined.js +2 -2
- package/lib/verify/declaration.js +18 -18
- package/lib/verify/frame.js +9 -12
- package/lib/verify/proofStep.js +3 -3
- package/lib/verify/statement/qualified.js +61 -10
- package/lib/verify/statement/unqualified.js +62 -50
- package/lib/verify/statement.js +36 -41
- package/lib/verify/statementAsCombinator.js +2 -2
- package/lib/verify/subDerivation.js +8 -2
- package/lib/verify/term.js +8 -7
- package/lib/verify/termAsConstructor.js +2 -2
- package/package.json +2 -2
- package/src/conclusion.js +3 -3
- package/src/consequent.js +3 -3
- package/src/context/local.js +68 -8
- package/src/declaration.js +2 -2
- package/src/equality.js +3 -3
- package/src/equivalence.js +19 -0
- package/src/metaLemma.js +1 -1
- package/src/metatheorem.js +1 -1
- package/src/premise.js +5 -5
- package/src/proofStep.js +57 -4
- package/src/shim.js +5 -0
- package/src/substitution/statementForMetavariable.js +33 -2
- package/src/substitution/termForVariable.js +16 -0
- package/src/supposition.js +5 -5
- package/src/unifier/equality.js +84 -0
- package/src/unifier/metaLevel.js +114 -0
- package/src/unifier/statementAgainstCombinator.js +105 -0
- package/src/unifier/termAgainstConstructor.js +77 -0
- package/src/unifier.js +133 -0
- package/src/unify/argumentAgainstArgument.js +15 -0
- package/src/{verify → unify}/metavariableAgainstStatement.js +18 -18
- package/src/{verify → unify}/statementAgainstMetaType.js +4 -4
- package/src/{verify → unify}/statementAtainstStatement.js +7 -7
- package/src/{verify → unify}/termAgainstTerm.js +5 -5
- package/src/{verify → unify}/termAgainstType.js +7 -7
- package/src/{verify → unify}/variableAgainstTerm.js +6 -6
- package/src/verifier/{node/metaLevel.js → metaLevel.js} +14 -14
- package/src/verifier/{node/statementAsCombinator.js → statementAsCombinator.js} +14 -14
- package/src/verifier/{node/termAsConstructor.js → termAsConstructor.js} +12 -12
- package/src/{verifier/node.js → verifier.js} +19 -1
- package/src/verify/assertion/contained.js +2 -2
- package/src/verify/assertion/defined.js +2 -2
- package/src/verify/declaration.js +20 -23
- package/src/verify/frame.js +10 -13
- package/src/verify/proofStep.js +2 -2
- package/src/verify/statement/qualified.js +95 -10
- package/src/verify/statement/unqualified.js +85 -11
- package/src/verify/statement.js +47 -45
- package/src/verify/statementAsCombinator.js +2 -2
- package/src/verify/subDerivation.js +3 -1
- package/src/verify/term.js +7 -6
- package/src/verify/termAsConstructor.js +2 -2
- package/lib/mixins/context.js +0 -135
- package/lib/mixins/nodesVerifier/intrinsiclevel.js +0 -59
- package/lib/mixins/nodesVerifier/metaLevel.js +0 -40
- package/lib/utilities/verifier.js +0 -80
- package/lib/verifier/node/metaLevel.js +0 -201
- package/lib/verifier/node/statementAsCombinator.js +0 -201
- package/lib/verifier/node/termAsConstructor.js +0 -184
- package/lib/verifier/node.js +0 -157
- package/lib/verifier/nodes/equality.js +0 -176
- package/lib/verifier/nodes/metaLevel.js +0 -191
- package/lib/verifier/nodes/statementAgainstCombinator.js +0 -191
- package/lib/verifier/nodes/termAgainstConstructor.js +0 -171
- package/lib/verifier/nodes.js +0 -175
- package/lib/verify/argumentAgainstArgument.js +0 -24
- package/lib/verify/metavariableAgainstStatement.js +0 -66
- package/lib/verify/statementAgainstMetaType.js +0 -28
- package/lib/verify/statementAtainstStatement.js +0 -52
- package/lib/verify/termAgainstTerm.js +0 -22
- package/lib/verify/termAgainstType.js +0 -26
- package/lib/verify/variableAgainstTerm.js +0 -70
- package/src/mixins/context.js +0 -96
- package/src/mixins/nodesVerifier/intrinsiclevel.js +0 -73
- package/src/mixins/nodesVerifier/metaLevel.js +0 -39
- package/src/utilities/verifier.js +0 -38
- package/src/verifier/nodes/equality.js +0 -84
- package/src/verifier/nodes/metaLevel.js +0 -109
- package/src/verifier/nodes/statementAgainstCombinator.js +0 -105
- package/src/verifier/nodes/termAgainstConstructor.js +0 -76
- package/src/verifier/nodes.js +0 -114
- package/src/verify/argumentAgainstArgument.js +0 -15
|
@@ -1,66 +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 verifyMetavariableAgainstStatement;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _termForVariable = /*#__PURE__*/ _interop_require_default(require("../substitution/termForVariable"));
|
|
12
|
-
var _statementAtainstStatement = /*#__PURE__*/ _interop_require_default(require("../verify/statementAtainstStatement"));
|
|
13
|
-
var _statementForMetavariable = /*#__PURE__*/ _interop_require_default(require("../substitution/statementForMetavariable"));
|
|
14
|
-
function _interop_require_default(obj) {
|
|
15
|
-
return obj && obj.__esModule ? obj : {
|
|
16
|
-
default: obj
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
function verifyMetavariableAgainstStatement(metavariableNodeA, statementNodeB, substitutionNode, substitutions, localContextA, localContextB, verifyAhead) {
|
|
20
|
-
var metavariableVerifiedAgainstStatement = false;
|
|
21
|
-
var substitution = substitutions.find(function(substitution) {
|
|
22
|
-
var substitutionMatchesMetavariableNodeA = substitution.matchMetavariableNode(metavariableNodeA);
|
|
23
|
-
if (substitutionMatchesMetavariableNodeA) {
|
|
24
|
-
return true;
|
|
25
|
-
}
|
|
26
|
-
}) || null;
|
|
27
|
-
if (substitution !== null) {
|
|
28
|
-
var substitutionStatementNode = substitution.getStatementNode();
|
|
29
|
-
if (substitutionNode !== null) {
|
|
30
|
-
var termForVariableSubstitution = _termForVariable.default.fromSubstitutionNode(substitutionNode), localContext = localContextB, substitution1 = termForVariableSubstitution, statementNodeA = substitutionStatementNode, statementVerifiedAgainstStatement = (0, _statementAtainstStatement.default)(statementNodeA, statementNodeB, substitution1, substitutions, localContext, localContext);
|
|
31
|
-
if (statementVerifiedAgainstStatement) {
|
|
32
|
-
var verifiedAhead = verifyAhead();
|
|
33
|
-
metavariableVerifiedAgainstStatement = verifiedAhead; ///
|
|
34
|
-
}
|
|
35
|
-
} else {
|
|
36
|
-
var substitutionSubstitution = substitution.getSubstitution();
|
|
37
|
-
if (substitutionSubstitution !== null) {
|
|
38
|
-
var statementNodeA1 = statementNodeB; ///
|
|
39
|
-
statementNodeB = substitutionStatementNode; ///
|
|
40
|
-
var localContext1 = localContextB, substitution2 = substitutionSubstitution, statementVerifiedAgainstStatement1 = (0, _statementAtainstStatement.default)(statementNodeA1, statementNodeB, substitution2, substitutions, localContext1, localContext1);
|
|
41
|
-
if (statementVerifiedAgainstStatement1) {
|
|
42
|
-
var verifiedAhead1 = verifyAhead();
|
|
43
|
-
metavariableVerifiedAgainstStatement = verifiedAhead1; ///
|
|
44
|
-
}
|
|
45
|
-
} else {
|
|
46
|
-
var substitutionMatchesStatementNodeB = substitution.matchStatementNode(statementNodeB);
|
|
47
|
-
if (substitutionMatchesStatementNodeB) {
|
|
48
|
-
var verifiedAhead2 = verifyAhead();
|
|
49
|
-
metavariableVerifiedAgainstStatement = verifiedAhead2; ///
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
} else {
|
|
54
|
-
var verifiedAhead3;
|
|
55
|
-
var statementNode = statementNodeB, metavariableNode = metavariableNodeA, statementForMetavariableSubstitution = _statementForMetavariable.default.fromMetavariableNodeStatementNodeAndSubstitutionNode(metavariableNode, statementNode, substitutionNode), substitution3 = statementForMetavariableSubstitution; ///
|
|
56
|
-
substitutions.push(substitution3);
|
|
57
|
-
verifiedAhead3 = verifyAhead();
|
|
58
|
-
if (!verifiedAhead3) {
|
|
59
|
-
substitutions.pop();
|
|
60
|
-
}
|
|
61
|
-
metavariableVerifiedAgainstStatement = verifiedAhead3; ///
|
|
62
|
-
}
|
|
63
|
-
return metavariableVerifiedAgainstStatement;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXZhcmlhYmxlQWdhaW5zdFN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiBmcm9tIFwiLi4vc3Vic3RpdHV0aW9uL3Rlcm1Gb3JWYXJpYWJsZVwiO1xuaW1wb3J0IHZlcmlmeVN0YXRlbWVudEFnYWluc3RTdGF0ZW1lbnQgZnJvbSBcIi4uL3ZlcmlmeS9zdGF0ZW1lbnRBdGFpbnN0U3RhdGVtZW50XCI7XG5pbXBvcnQgU3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuLi9zdWJzdGl0dXRpb24vc3RhdGVtZW50Rm9yTWV0YXZhcmlhYmxlXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeU1ldGF2YXJpYWJsZUFnYWluc3RTdGF0ZW1lbnQobWV0YXZhcmlhYmxlTm9kZUEsIHN0YXRlbWVudE5vZGVCLCBzdWJzdGl0dXRpb25Ob2RlLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgbWV0YXZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0U3RhdGVtZW50ID0gZmFsc2U7XG5cbiAgY29uc3Qgc3Vic3RpdHV0aW9uID0gc3Vic3RpdHV0aW9ucy5maW5kKChzdWJzdGl0dXRpb24pID0+IHtcbiAgICBjb25zdCBzdWJzdGl0dXRpb25NYXRjaGVzTWV0YXZhcmlhYmxlTm9kZUEgPSBzdWJzdGl0dXRpb24ubWF0Y2hNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGVBKTtcblxuICAgIGlmIChzdWJzdGl0dXRpb25NYXRjaGVzTWV0YXZhcmlhYmxlTm9kZUEpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICBpZiAoc3Vic3RpdHV0aW9uICE9PSBudWxsKSB7XG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uU3RhdGVtZW50Tm9kZSA9IHN1YnN0aXR1dGlvbi5nZXRTdGF0ZW1lbnROb2RlKCk7XG5cbiAgICBpZiAoc3Vic3RpdHV0aW9uTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uID0gVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uLmZyb21TdWJzdGl0dXRpb25Ob2RlKHN1YnN0aXR1dGlvbk5vZGUpLFxuICAgICAgICAgICAgbG9jYWxDb250ZXh0ID0gbG9jYWxDb250ZXh0QiwgIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uID0gdGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uLCAvLy9cbiAgICAgICAgICAgIHN0YXRlbWVudE5vZGVBID0gc3Vic3RpdHV0aW9uU3RhdGVtZW50Tm9kZSwgLy8vXG4gICAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RTdGF0ZW1lbnQgPSB2ZXJpZnlTdGF0ZW1lbnRBZ2FpbnN0U3RhdGVtZW50KHN0YXRlbWVudE5vZGVBLCBzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9uLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RTdGF0ZW1lbnQpIHtcbiAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHZlcmlmeUFoZWFkKCk7XG5cbiAgICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0U3RhdGVtZW50ID0gdmVyaWZpZWRBaGVhZDsgIC8vL1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBzdWJzdGl0dXRpb25TdWJzdGl0dXRpb24gPSBzdWJzdGl0dXRpb24uZ2V0U3Vic3RpdHV0aW9uKCk7XG5cbiAgICAgIGlmIChzdWJzdGl0dXRpb25TdWJzdGl0dXRpb24gIT09IG51bGwpIHtcbiAgICAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZUEgPSBzdGF0ZW1lbnROb2RlQjsgLy8vXG5cbiAgICAgICAgc3RhdGVtZW50Tm9kZUIgPSBzdWJzdGl0dXRpb25TdGF0ZW1lbnROb2RlOyAvLy9cblxuICAgICAgICBjb25zdCBsb2NhbENvbnRleHQgPSBsb2NhbENvbnRleHRCLCAgLy8vXG4gICAgICAgICAgICAgIHN1YnN0aXR1dGlvbiA9IHN1YnN0aXR1dGlvblN1YnN0aXR1dGlvbixcbiAgICAgICAgICAgICAgc3RhdGVtZW50VmVyaWZpZWRBZ2FpbnN0U3RhdGVtZW50ID0gdmVyaWZ5U3RhdGVtZW50QWdhaW5zdFN0YXRlbWVudChzdGF0ZW1lbnROb2RlQSwgc3RhdGVtZW50Tm9kZUIsIHN1YnN0aXR1dGlvbiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0LCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RTdGF0ZW1lbnQpIHtcbiAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgICAgICAgIG1ldGF2YXJpYWJsZVZlcmlmaWVkQWdhaW5zdFN0YXRlbWVudCA9IHZlcmlmaWVkQWhlYWQ7ICAvLy9cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgc3Vic3RpdHV0aW9uTWF0Y2hlc1N0YXRlbWVudE5vZGVCID0gc3Vic3RpdHV0aW9uLm1hdGNoU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlQik7XG5cbiAgICAgICAgaWYgKHN1YnN0aXR1dGlvbk1hdGNoZXNTdGF0ZW1lbnROb2RlQikge1xuICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICAgICAgbWV0YXZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0U3RhdGVtZW50ID0gdmVyaWZpZWRBaGVhZDsgIC8vL1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIGxldCB2ZXJpZmllZEFoZWFkO1xuXG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVCLCAvLy9cbiAgICAgICAgICBtZXRhdmFyaWFibGVOb2RlID0gbWV0YXZhcmlhYmxlTm9kZUEsIC8vL1xuICAgICAgICAgIHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbiA9IFN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbi5mcm9tTWV0YXZhcmlhYmxlTm9kZVN0YXRlbWVudE5vZGVBbmRTdWJzdGl0dXRpb25Ob2RlKG1ldGF2YXJpYWJsZU5vZGUsIHN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbk5vZGUpLFxuICAgICAgICAgIHN1YnN0aXR1dGlvbiA9IHN0YXRlbWVudEZvck1ldGF2YXJpYWJsZVN1YnN0aXR1dGlvbjsgIC8vL1xuXG4gICAgc3Vic3RpdHV0aW9ucy5wdXNoKHN1YnN0aXR1dGlvbik7XG5cbiAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgIGlmICghdmVyaWZpZWRBaGVhZCkge1xuICAgICAgc3Vic3RpdHV0aW9ucy5wb3AoKTtcbiAgICB9XG5cbiAgICBtZXRhdmFyaWFibGVWZXJpZmllZEFnYWluc3RTdGF0ZW1lbnQgPSB2ZXJpZmllZEFoZWFkOyAgLy8vXG4gIH1cblxuICByZXR1cm4gbWV0YXZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0U3RhdGVtZW50O1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeU1ldGF2YXJpYWJsZUFnYWluc3RTdGF0ZW1lbnQiLCJtZXRhdmFyaWFibGVOb2RlQSIsInN0YXRlbWVudE5vZGVCIiwic3Vic3RpdHV0aW9uTm9kZSIsInN1YnN0aXR1dGlvbnMiLCJsb2NhbENvbnRleHRBIiwibG9jYWxDb250ZXh0QiIsInZlcmlmeUFoZWFkIiwibWV0YXZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0U3RhdGVtZW50Iiwic3Vic3RpdHV0aW9uIiwiZmluZCIsInN1YnN0aXR1dGlvbk1hdGNoZXNNZXRhdmFyaWFibGVOb2RlQSIsIm1hdGNoTWV0YXZhcmlhYmxlTm9kZSIsInN1YnN0aXR1dGlvblN0YXRlbWVudE5vZGUiLCJnZXRTdGF0ZW1lbnROb2RlIiwidGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiZnJvbVN1YnN0aXR1dGlvbk5vZGUiLCJsb2NhbENvbnRleHQiLCJzdGF0ZW1lbnROb2RlQSIsInN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdFN0YXRlbWVudCIsInZlcmlmeVN0YXRlbWVudEFnYWluc3RTdGF0ZW1lbnQiLCJ2ZXJpZmllZEFoZWFkIiwic3Vic3RpdHV0aW9uU3Vic3RpdHV0aW9uIiwiZ2V0U3Vic3RpdHV0aW9uIiwic3Vic3RpdHV0aW9uTWF0Y2hlc1N0YXRlbWVudE5vZGVCIiwibWF0Y2hTdGF0ZW1lbnROb2RlIiwic3RhdGVtZW50Tm9kZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJzdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iLCJTdGF0ZW1lbnRGb3JNZXRhdmFyaWFibGVTdWJzdGl0dXRpb24iLCJmcm9tTWV0YXZhcmlhYmxlTm9kZVN0YXRlbWVudE5vZGVBbmRTdWJzdGl0dXRpb25Ob2RlIiwicHVzaCIsInBvcCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUF3QkE7OztzRUFKZ0I7Z0ZBQ0k7K0VBQ0s7Ozs7OztBQUVsQyxTQUFTQSxtQ0FBbUNDLGlCQUFpQixFQUFFQyxjQUFjLEVBQUVDLGdCQUFnQixFQUFFQyxhQUFhLEVBQUVDLGFBQWEsRUFBRUMsYUFBYSxFQUFFQyxXQUFXO0lBQ3RLLElBQUlDLHVDQUF1QztJQUUzQyxJQUFNQyxlQUFlTCxjQUFjTSxJQUFJLENBQUMsU0FBQ0Q7UUFDdkMsSUFBTUUsdUNBQXVDRixhQUFhRyxxQkFBcUIsQ0FBQ1g7UUFFaEYsSUFBSVUsc0NBQXNDO1lBQ3hDLE9BQU87UUFDVDtJQUNGLE1BQU07SUFFTixJQUFJRixpQkFBaUIsTUFBTTtRQUN6QixJQUFNSSw0QkFBNEJKLGFBQWFLLGdCQUFnQjtRQUUvRCxJQUFJWCxxQkFBcUIsTUFBTTtZQUM3QixJQUFNWSw4QkFBOEJDLHdCQUEyQixDQUFDQyxvQkFBb0IsQ0FBQ2QsbUJBQy9FZSxlQUFlWixlQUNmRyxnQkFBZU0sNkJBQ2ZJLGlCQUFpQk4sMkJBQ2pCTyxvQ0FBb0NDLElBQUFBLGtDQUErQixFQUFDRixnQkFBZ0JqQixnQkFBZ0JPLGVBQWNMLGVBQWVjLGNBQWNBO1lBRXJKLElBQUlFLG1DQUFtQztnQkFDckMsSUFBTUUsZ0JBQWdCZjtnQkFFdEJDLHVDQUF1Q2MsZUFBZ0IsR0FBRztZQUM1RDtRQUNGLE9BQU87WUFDTCxJQUFNQywyQkFBMkJkLGFBQWFlLGVBQWU7WUFFN0QsSUFBSUQsNkJBQTZCLE1BQU07Z0JBQ3JDLElBQU1KLGtCQUFpQmpCLGdCQUFnQixHQUFHO2dCQUUxQ0EsaUJBQWlCVywyQkFBMkIsR0FBRztnQkFFL0MsSUFBTUssZ0JBQWVaLGVBQ2ZHLGdCQUFlYywwQkFDZkgscUNBQW9DQyxJQUFBQSxrQ0FBK0IsRUFBQ0YsaUJBQWdCakIsZ0JBQWdCTyxlQUFjTCxlQUFlYyxlQUFjQTtnQkFFckosSUFBSUUsb0NBQW1DO29CQUNyQyxJQUFNRSxpQkFBZ0JmO29CQUV0QkMsdUNBQXVDYyxnQkFBZ0IsR0FBRztnQkFDNUQ7WUFDRixPQUFPO2dCQUNMLElBQU1HLG9DQUFvQ2hCLGFBQWFpQixrQkFBa0IsQ0FBQ3hCO2dCQUUxRSxJQUFJdUIsbUNBQW1DO29CQUNyQyxJQUFNSCxpQkFBZ0JmO29CQUV0QkMsdUNBQXVDYyxnQkFBZ0IsR0FBRztnQkFDNUQ7WUFDRjtRQUNGO0lBQ0YsT0FBTztRQUNMLElBQUlBO1FBRUosSUFBTUssZ0JBQWdCekIsZ0JBQ2hCMEIsbUJBQW1CM0IsbUJBQ25CNEIsdUNBQXVDQyxpQ0FBb0MsQ0FBQ0Msb0RBQW9ELENBQUNILGtCQUFrQkQsZUFBZXhCLG1CQUNsS00sZ0JBQWVvQixzQ0FBdUMsR0FBRztRQUUvRHpCLGNBQWM0QixJQUFJLENBQUN2QjtRQUVuQmEsaUJBQWdCZjtRQUVoQixJQUFJLENBQUNlLGdCQUFlO1lBQ2xCbEIsY0FBYzZCLEdBQUc7UUFDbkI7UUFFQXpCLHVDQUF1Q2MsZ0JBQWdCLEdBQUc7SUFDNUQ7SUFFQSxPQUFPZDtBQUNUIn0=
|
|
@@ -1,28 +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 verifyStatementAgainstMetaType;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _query = require("../utilities/query");
|
|
12
|
-
var _metaTypeNames = require("../metaTypeNames");
|
|
13
|
-
var metaTypeTerminalNodeQuery = (0, _query.nodeQuery)("/metaType/@meta-type!");
|
|
14
|
-
function verifyStatementAgainstMetaType(statementNode, metaTypeNode, localContext, verifyAhead, verifyStatement) {
|
|
15
|
-
var statementVerifiedAgainstMetaType = false;
|
|
16
|
-
var metaTypeTerminalNode = metaTypeTerminalNodeQuery(metaTypeNode), content = metaTypeTerminalNode.getContent();
|
|
17
|
-
if (content === _metaTypeNames.STATEMENT_META_TYPE_NAME) {
|
|
18
|
-
var verifiedAhead = false;
|
|
19
|
-
var derived = false, assignments = [], statementVerified = verifyStatement(statementNode, assignments, derived, localContext);
|
|
20
|
-
if (statementVerified) {
|
|
21
|
-
verifiedAhead = verifyAhead();
|
|
22
|
-
}
|
|
23
|
-
statementVerifiedAgainstMetaType = verifiedAhead; ///
|
|
24
|
-
}
|
|
25
|
-
return statementVerifiedAgainstMetaType;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50QWdhaW5zdE1ldGFUeXBlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBTVEFURU1FTlRfTUVUQV9UWVBFX05BTUUgfSBmcm9tIFwiLi4vbWV0YVR5cGVOYW1lc1wiO1xuXG5jb25zdCBtZXRhVHlwZVRlcm1pbmFsTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL21ldGFUeXBlL0BtZXRhLXR5cGUhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnRBZ2FpbnN0TWV0YVR5cGUoc3RhdGVtZW50Tm9kZSwgbWV0YVR5cGVOb2RlLCBsb2NhbENvbnRleHQsIHZlcmlmeUFoZWFkLCB2ZXJpZnlTdGF0ZW1lbnQpIHtcbiAgbGV0IHN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdE1ldGFUeXBlID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YVR5cGVUZXJtaW5hbE5vZGUgPSBtZXRhVHlwZVRlcm1pbmFsTm9kZVF1ZXJ5KG1ldGFUeXBlTm9kZSksXG4gICAgICAgIGNvbnRlbnQgPSBtZXRhVHlwZVRlcm1pbmFsTm9kZS5nZXRDb250ZW50KCk7XG5cbiAgaWYgKGNvbnRlbnQgPT09IFNUQVRFTUVOVF9NRVRBX1RZUEVfTkFNRSkge1xuICAgIGxldCB2ZXJpZmllZEFoZWFkID0gZmFsc2U7XG5cbiAgICBjb25zdCBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgICBzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVN0YXRlbWVudChzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgIGlmIChzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgdmVyaWZpZWRBaGVhZCA9IHZlcmlmeUFoZWFkKCk7XG4gICAgfVxuXG4gICAgc3RhdGVtZW50VmVyaWZpZWRBZ2FpbnN0TWV0YVR5cGUgPSB2ZXJpZmllZEFoZWFkOyAvLy9cbiAgfVxuXG4gIHJldHVybiBzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RNZXRhVHlwZTtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlTdGF0ZW1lbnRBZ2FpbnN0TWV0YVR5cGUiLCJtZXRhVHlwZVRlcm1pbmFsTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5Iiwic3RhdGVtZW50Tm9kZSIsIm1ldGFUeXBlTm9kZSIsImxvY2FsQ29udGV4dCIsInZlcmlmeUFoZWFkIiwidmVyaWZ5U3RhdGVtZW50Iiwic3RhdGVtZW50VmVyaWZpZWRBZ2FpbnN0TWV0YVR5cGUiLCJtZXRhVHlwZVRlcm1pbmFsTm9kZSIsImNvbnRlbnQiLCJnZXRDb250ZW50IiwiU1RBVEVNRU5UX01FVEFfVFlQRV9OQU1FIiwidmVyaWZpZWRBaGVhZCIsImRlcml2ZWQiLCJhc3NpZ25tZW50cyIsInN0YXRlbWVudFZlcmlmaWVkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFPQTs7O2VBQXdCQTs7O3FCQUxFOzZCQUNlO0FBRXpDLElBQU1DLDRCQUE0QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUU3QixTQUFTRiwrQkFBK0JHLGFBQWEsRUFBRUMsWUFBWSxFQUFFQyxZQUFZLEVBQUVDLFdBQVcsRUFBRUMsZUFBZTtJQUM1SCxJQUFJQyxtQ0FBbUM7SUFFdkMsSUFBTUMsdUJBQXVCUiwwQkFBMEJHLGVBQ2pETSxVQUFVRCxxQkFBcUJFLFVBQVU7SUFFL0MsSUFBSUQsWUFBWUUsdUNBQXdCLEVBQUU7UUFDeEMsSUFBSUMsZ0JBQWdCO1FBRXBCLElBQU1DLFVBQVUsT0FDVkMsY0FBYyxFQUFFLEVBQ2hCQyxvQkFBb0JULGdCQUFnQkosZUFBZVksYUFBYUQsU0FBU1Q7UUFFL0UsSUFBSVcsbUJBQW1CO1lBQ3JCSCxnQkFBZ0JQO1FBQ2xCO1FBRUFFLG1DQUFtQ0ssZUFBZSxHQUFHO0lBQ3ZEO0lBRUEsT0FBT0w7QUFDVCJ9
|
|
@@ -1,52 +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 verifyStatementAgainstStatement;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../verifier/nodes/metaLevel"));
|
|
12
|
-
var _termForVariable = /*#__PURE__*/ _interop_require_default(require("../substitution/termForVariable"));
|
|
13
|
-
var _array = require("../utilities/array");
|
|
14
|
-
function _interop_require_default(obj) {
|
|
15
|
-
return obj && obj.__esModule ? obj : {
|
|
16
|
-
default: obj
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
function verifyStatementAgainstStatement(statementNodeA, statementNodeB, substitution, substitutions, localContextA, localContextB) {
|
|
20
|
-
var statementVerifiedAgainstStatement = false;
|
|
21
|
-
var termForVariableSubstitution = _termForVariable.default.fromSubstitutionAndSubstitutions(substitution, substitutions), transformed = termForVariableSubstitution.isTransformed(substitution);
|
|
22
|
-
var substitutionsA = []; ///
|
|
23
|
-
if (transformed) {
|
|
24
|
-
var substitutionA = termForVariableSubstitution; ///
|
|
25
|
-
substitutionsA.push(substitutionA);
|
|
26
|
-
}
|
|
27
|
-
var nonTerminalNodeA = statementNodeA, nonTerminalNodeB = statementNodeB, nonTerminalNodeVerified = _metaLevel.default.verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, substitutionsA, localContextA, localContextB, function() {
|
|
28
|
-
var verifiedAhead = true;
|
|
29
|
-
return verifiedAhead;
|
|
30
|
-
});
|
|
31
|
-
if (nonTerminalNodeVerified) {
|
|
32
|
-
if (!transformed) {
|
|
33
|
-
var substitutionB = termForVariableSubstitution, substitutionsB = [
|
|
34
|
-
substitutionB
|
|
35
|
-
];
|
|
36
|
-
substitutionsA = transformSubstitutions(substitutionsA, substitutionsB);
|
|
37
|
-
(0, _array.push)(substitutions, substitutionsA);
|
|
38
|
-
}
|
|
39
|
-
statementVerifiedAgainstStatement = true;
|
|
40
|
-
}
|
|
41
|
-
return statementVerifiedAgainstStatement;
|
|
42
|
-
}
|
|
43
|
-
function transformSubstitutions(substitutionsA, substitutionsB) {
|
|
44
|
-
substitutionsA = substitutionsA.map(function(substitutionA) {
|
|
45
|
-
var substitution = substitutionA, substitutions = substitutionsB, termForVariableSubstitution = _termForVariable.default.fromSubstitutionAndSubstitutions(substitution, substitutions);
|
|
46
|
-
substitutionA = termForVariableSubstitution; ///
|
|
47
|
-
return substitutionA;
|
|
48
|
-
});
|
|
49
|
-
return substitutionsA;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvc3RhdGVtZW50QXRhaW5zdFN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IG1ldGFMZXZlbE5vZGVzVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyL25vZGVzL21ldGFMZXZlbFwiO1xuaW1wb3J0IFRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiBmcm9tIFwiLi4vc3Vic3RpdHV0aW9uL3Rlcm1Gb3JWYXJpYWJsZVwiO1xuXG5pbXBvcnQgeyBwdXNoIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlTdGF0ZW1lbnRBZ2FpbnN0U3RhdGVtZW50KHN0YXRlbWVudE5vZGVBLCBzdGF0ZW1lbnROb2RlQiwgc3Vic3RpdHV0aW9uLCBzdWJzdGl0dXRpb25zLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCKSB7XG4gIGxldCBzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RTdGF0ZW1lbnQgPSBmYWxzZTtcblxuICBjb25zdCB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24gPSBUZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24uZnJvbVN1YnN0aXR1dGlvbkFuZFN1YnN0aXR1dGlvbnMoc3Vic3RpdHV0aW9uLCBzdWJzdGl0dXRpb25zKSxcbiAgICAgICAgdHJhbnNmb3JtZWQgPSB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb24uaXNUcmFuc2Zvcm1lZChzdWJzdGl0dXRpb24pO1xuXG4gIGxldCBzdWJzdGl0dXRpb25zQSA9IFtdOyAvLy9cblxuICBpZiAodHJhbnNmb3JtZWQpIHtcbiAgICBjb25zdCBzdWJzdGl0dXRpb25BID0gdGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uOyAgLy8vXG5cbiAgICBzdWJzdGl0dXRpb25zQS5wdXNoKHN1YnN0aXR1dGlvbkEpO1xuICB9XG5cbiAgY29uc3Qgbm9uVGVybWluYWxOb2RlQSA9IHN0YXRlbWVudE5vZGVBLCAgLy8vXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZUIgPSBzdGF0ZW1lbnROb2RlQiwgIC8vL1xuICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG1ldGFMZXZlbE5vZGVzVmVyaWZpZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZUEsIG5vblRlcm1pbmFsTm9kZUIsIHN1YnN0aXR1dGlvbnNBLCBsb2NhbENvbnRleHRBLCBsb2NhbENvbnRleHRCLCAoKSA9PiB7XG4gICAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgfSk7XG5cbiAgaWYgKG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkKSB7XG4gICAgaWYgKCF0cmFuc2Zvcm1lZCkge1xuICAgICAgY29uc3Qgc3Vic3RpdHV0aW9uQiA9IHRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiwgIC8vL1xuICAgICAgICAgICAgc3Vic3RpdHV0aW9uc0IgPSBbXG4gICAgICAgICAgICAgIHN1YnN0aXR1dGlvbkJcbiAgICAgICAgICAgIF07XG5cbiAgICAgIHN1YnN0aXR1dGlvbnNBID0gdHJhbnNmb3JtU3Vic3RpdHV0aW9ucyhzdWJzdGl0dXRpb25zQSwgc3Vic3RpdHV0aW9uc0IpO1xuXG4gICAgICBwdXNoKHN1YnN0aXR1dGlvbnMsIHN1YnN0aXR1dGlvbnNBKTtcbiAgICB9XG5cbiAgICBzdGF0ZW1lbnRWZXJpZmllZEFnYWluc3RTdGF0ZW1lbnQgPSB0cnVlO1xuICB9XG5cbiAgcmV0dXJuIHN0YXRlbWVudFZlcmlmaWVkQWdhaW5zdFN0YXRlbWVudDtcbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtU3Vic3RpdHV0aW9ucyhzdWJzdGl0dXRpb25zQSwgc3Vic3RpdHV0aW9uc0IpIHtcbiAgc3Vic3RpdHV0aW9uc0EgPSBzdWJzdGl0dXRpb25zQS5tYXAoKHN1YnN0aXR1dGlvbkEpID0+IHtcbiAgICBjb25zdCBzdWJzdGl0dXRpb24gPSBzdWJzdGl0dXRpb25BLCAgLy8vXG4gICAgICAgICAgc3Vic3RpdHV0aW9ucyA9IHN1YnN0aXR1dGlvbnNCLFxuICAgICAgICAgIHRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiA9IFRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbi5mcm9tU3Vic3RpdHV0aW9uQW5kU3Vic3RpdHV0aW9ucyhzdWJzdGl0dXRpb24sIHN1YnN0aXR1dGlvbnMpO1xuXG4gICAgc3Vic3RpdHV0aW9uQSA9IHRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbjsgLy8vXG5cbiAgICByZXR1cm4gc3Vic3RpdHV0aW9uQTtcbiAgfSk7XG5cbiAgcmV0dXJuIHN1YnN0aXR1dGlvbnNBO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVN0YXRlbWVudEFnYWluc3RTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlQSIsInN0YXRlbWVudE5vZGVCIiwic3Vic3RpdHV0aW9uIiwic3Vic3RpdHV0aW9ucyIsImxvY2FsQ29udGV4dEEiLCJsb2NhbENvbnRleHRCIiwic3RhdGVtZW50VmVyaWZpZWRBZ2FpbnN0U3RhdGVtZW50IiwidGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIiwiZnJvbVN1YnN0aXR1dGlvbkFuZFN1YnN0aXR1dGlvbnMiLCJ0cmFuc2Zvcm1lZCIsImlzVHJhbnNmb3JtZWQiLCJzdWJzdGl0dXRpb25zQSIsInN1YnN0aXR1dGlvbkEiLCJwdXNoIiwibm9uVGVybWluYWxOb2RlQSIsIm5vblRlcm1pbmFsTm9kZUIiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsIm1ldGFMZXZlbE5vZGVzVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJ2ZXJpZmllZEFoZWFkIiwic3Vic3RpdHV0aW9uQiIsInN1YnN0aXR1dGlvbnNCIiwidHJhbnNmb3JtU3Vic3RpdHV0aW9ucyIsIm1hcCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT0E7OztlQUF3QkE7OztnRUFMVztzRUFDSztxQkFFbkI7Ozs7OztBQUVOLFNBQVNBLGdDQUFnQ0MsY0FBYyxFQUFFQyxjQUFjLEVBQUVDLFlBQVksRUFBRUMsYUFBYSxFQUFFQyxhQUFhLEVBQUVDLGFBQWE7SUFDL0ksSUFBSUMsb0NBQW9DO0lBRXhDLElBQU1DLDhCQUE4QkMsd0JBQTJCLENBQUNDLGdDQUFnQyxDQUFDUCxjQUFjQyxnQkFDekdPLGNBQWNILDRCQUE0QkksYUFBYSxDQUFDVDtJQUU5RCxJQUFJVSxpQkFBaUIsRUFBRSxFQUFFLEdBQUc7SUFFNUIsSUFBSUYsYUFBYTtRQUNmLElBQU1HLGdCQUFnQk4sNkJBQThCLEdBQUc7UUFFdkRLLGVBQWVFLElBQUksQ0FBQ0Q7SUFDdEI7SUFFQSxJQUFNRSxtQkFBbUJmLGdCQUNuQmdCLG1CQUFtQmYsZ0JBQ25CZ0IsMEJBQTBCQyxrQkFBc0IsQ0FBQ0MscUJBQXFCLENBQUNKLGtCQUFrQkMsa0JBQWtCSixnQkFBZ0JSLGVBQWVDLGVBQWU7UUFDdkosSUFBTWUsZ0JBQWdCO1FBRXRCLE9BQU9BO0lBQ1Q7SUFFTixJQUFJSCx5QkFBeUI7UUFDM0IsSUFBSSxDQUFDUCxhQUFhO1lBQ2hCLElBQU1XLGdCQUFnQmQsNkJBQ2hCZSxpQkFBaUI7Z0JBQ2ZEO2FBQ0Q7WUFFUFQsaUJBQWlCVyx1QkFBdUJYLGdCQUFnQlU7WUFFeERSLElBQUFBLFdBQUksRUFBQ1gsZUFBZVM7UUFDdEI7UUFFQU4sb0NBQW9DO0lBQ3RDO0lBRUEsT0FBT0E7QUFDVDtBQUVBLFNBQVNpQix1QkFBdUJYLGNBQWMsRUFBRVUsY0FBYztJQUM1RFYsaUJBQWlCQSxlQUFlWSxHQUFHLENBQUMsU0FBQ1g7UUFDbkMsSUFBTVgsZUFBZVcsZUFDZlYsZ0JBQWdCbUIsZ0JBQ2hCZiw4QkFBOEJDLHdCQUEyQixDQUFDQyxnQ0FBZ0MsQ0FBQ1AsY0FBY0M7UUFFL0dVLGdCQUFnQk4sNkJBQTZCLEdBQUc7UUFFaEQsT0FBT007SUFDVDtJQUVBLE9BQU9EO0FBQ1QifQ==
|
|
@@ -1,22 +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 verifyTermAgainstTerm;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _equivalences = require("../utilities/equivalences");
|
|
12
|
-
function verifyTermAgainstTerm(termNodeA, termNodeB, localContext, verifyAhead) {
|
|
13
|
-
var termVerifiedAgainstTerm = false;
|
|
14
|
-
var leftTermNode = termNodeA, rightTermNode = termNodeB, equivalences = localContext.getEquivalences(), termNodesEqual = (0, _equivalences.areTermNodesEqual)(leftTermNode, rightTermNode, equivalences);
|
|
15
|
-
if (termNodesEqual) {
|
|
16
|
-
var verifiedAhead = verifyAhead();
|
|
17
|
-
termVerifiedAgainstTerm = verifiedAhead; ///
|
|
18
|
-
}
|
|
19
|
-
return termVerifiedAgainstTerm;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGVybUFnYWluc3RUZXJtLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBhcmVUZXJtTm9kZXNFcXVhbCB9IGZyb20gXCIuLi91dGlsaXRpZXMvZXF1aXZhbGVuY2VzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVRlcm1BZ2FpbnN0VGVybSh0ZXJtTm9kZUEsIHRlcm1Ob2RlQiwgbG9jYWxDb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdGVybVZlcmlmaWVkQWdhaW5zdFRlcm0gPSBmYWxzZTtcblxuICBjb25zdCBsZWZ0VGVybU5vZGUgPSB0ZXJtTm9kZUEsIC8vL1xuICAgICAgICByaWdodFRlcm1Ob2RlID0gdGVybU5vZGVCLCAvLy9cbiAgICAgICAgZXF1aXZhbGVuY2VzID0gbG9jYWxDb250ZXh0LmdldEVxdWl2YWxlbmNlcygpLFxuICAgICAgICB0ZXJtTm9kZXNFcXVhbCA9IGFyZVRlcm1Ob2Rlc0VxdWFsKGxlZnRUZXJtTm9kZSwgcmlnaHRUZXJtTm9kZSwgZXF1aXZhbGVuY2VzKTtcblxuICBpZiAodGVybU5vZGVzRXF1YWwpIHtcbiAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgIHRlcm1WZXJpZmllZEFnYWluc3RUZXJtID0gdmVyaWZpZWRBaGVhZDsgIC8vL1xuICB9XG5cbiAgcmV0dXJuIHRlcm1WZXJpZmllZEFnYWluc3RUZXJtO1xufSJdLCJuYW1lcyI6WyJ2ZXJpZnlUZXJtQWdhaW5zdFRlcm0iLCJ0ZXJtTm9kZUEiLCJ0ZXJtTm9kZUIiLCJsb2NhbENvbnRleHQiLCJ2ZXJpZnlBaGVhZCIsInRlcm1WZXJpZmllZEFnYWluc3RUZXJtIiwibGVmdFRlcm1Ob2RlIiwicmlnaHRUZXJtTm9kZSIsImVxdWl2YWxlbmNlcyIsImdldEVxdWl2YWxlbmNlcyIsInRlcm1Ob2Rlc0VxdWFsIiwiYXJlVGVybU5vZGVzRXF1YWwiLCJ2ZXJpZmllZEFoZWFkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFJQTs7O2VBQXdCQTs7OzRCQUZVO0FBRW5CLFNBQVNBLHNCQUFzQkMsU0FBUyxFQUFFQyxTQUFTLEVBQUVDLFlBQVksRUFBRUMsV0FBVztJQUMzRixJQUFJQywwQkFBMEI7SUFFOUIsSUFBTUMsZUFBZUwsV0FDZk0sZ0JBQWdCTCxXQUNoQk0sZUFBZUwsYUFBYU0sZUFBZSxJQUMzQ0MsaUJBQWlCQyxJQUFBQSwrQkFBaUIsRUFBQ0wsY0FBY0MsZUFBZUM7SUFFdEUsSUFBSUUsZ0JBQWdCO1FBQ2xCLElBQU1FLGdCQUFnQlI7UUFFdEJDLDBCQUEwQk8sZUFBZ0IsR0FBRztJQUMvQztJQUVBLE9BQU9QO0FBQ1QifQ==
|
|
@@ -1,26 +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 verifyTermAgainstType;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _array = require("../utilities/array");
|
|
12
|
-
function verifyTermAgainstType(termNode, typeNode, localContext, verifyAhead, verifyTerm) {
|
|
13
|
-
var termVerifiedAgainstType;
|
|
14
|
-
var terms = [], termVerified = verifyTerm(termNode, terms, localContext, function() {
|
|
15
|
-
var verifiedAhead = false;
|
|
16
|
-
var firstTerm = (0, _array.first)(terms), term = firstTerm, termType = term.getType(), type = localContext.findTypeByTypeNode(typeNode), termTypeEqualToOrSubTypeOfType = termType.isEqualToOrSubTypeOf(type);
|
|
17
|
-
if (termTypeEqualToOrSubTypeOfType) {
|
|
18
|
-
verifiedAhead = verifyAhead();
|
|
19
|
-
}
|
|
20
|
-
return verifiedAhead;
|
|
21
|
-
});
|
|
22
|
-
termVerifiedAgainstType = termVerified; ///
|
|
23
|
-
return termVerifiedAgainstType;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGVybUFnYWluc3RUeXBlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXJyYXlcIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5VGVybUFnYWluc3RUeXBlKHRlcm1Ob2RlLCB0eXBlTm9kZSwgbG9jYWxDb250ZXh0LCB2ZXJpZnlBaGVhZCwgdmVyaWZ5VGVybSkge1xuICBsZXQgdGVybVZlcmlmaWVkQWdhaW5zdFR5cGU7XG5cbiAgY29uc3QgdGVybXMgPSBbXSxcbiAgICAgICAgdGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybSh0ZXJtTm9kZSwgdGVybXMsIGxvY2FsQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgIGxldCB2ZXJpZmllZEFoZWFkID0gZmFsc2U7XG5cbiAgICAgICAgICBjb25zdCBmaXJzdFRlcm0gPSBmaXJzdCh0ZXJtcyksXG4gICAgICAgICAgICAgICAgdGVybSA9IGZpcnN0VGVybSwgLy8vXG4gICAgICAgICAgICAgICAgdGVybVR5cGUgPSB0ZXJtLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgICB0eXBlID0gbG9jYWxDb250ZXh0LmZpbmRUeXBlQnlUeXBlTm9kZSh0eXBlTm9kZSksXG4gICAgICAgICAgICAgICAgdGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUeXBlID0gdGVybVR5cGUuaXNFcXVhbFRvT3JTdWJUeXBlT2YodHlwZSk7XG5cbiAgICAgICAgICBpZiAodGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUeXBlKSB7XG4gICAgICAgICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgfSk7XG5cbiAgdGVybVZlcmlmaWVkQWdhaW5zdFR5cGUgPSB0ZXJtVmVyaWZpZWQ7IC8vL1xuXG4gIHJldHVybiB0ZXJtVmVyaWZpZWRBZ2FpbnN0VHlwZTtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlUZXJtQWdhaW5zdFR5cGUiLCJ0ZXJtTm9kZSIsInR5cGVOb2RlIiwibG9jYWxDb250ZXh0IiwidmVyaWZ5QWhlYWQiLCJ2ZXJpZnlUZXJtIiwidGVybVZlcmlmaWVkQWdhaW5zdFR5cGUiLCJ0ZXJtcyIsInRlcm1WZXJpZmllZCIsInZlcmlmaWVkQWhlYWQiLCJmaXJzdFRlcm0iLCJmaXJzdCIsInRlcm0iLCJ0ZXJtVHlwZSIsImdldFR5cGUiLCJ0eXBlIiwiZmluZFR5cGVCeVR5cGVOb2RlIiwidGVybVR5cGVFcXVhbFRvT3JTdWJUeXBlT2ZUeXBlIiwiaXNFcXVhbFRvT3JTdWJUeXBlT2YiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQUlBOzs7ZUFBd0JBOzs7cUJBRkY7QUFFUCxTQUFTQSxzQkFBc0JDLFFBQVEsRUFBRUMsUUFBUSxFQUFFQyxZQUFZLEVBQUVDLFdBQVcsRUFBRUMsVUFBVTtJQUNyRyxJQUFJQztJQUVKLElBQU1DLFFBQVEsRUFBRSxFQUNWQyxlQUFlSCxXQUFXSixVQUFVTSxPQUFPSixjQUFjO1FBQ3ZELElBQUlNLGdCQUFnQjtRQUVwQixJQUFNQyxZQUFZQyxJQUFBQSxZQUFLLEVBQUNKLFFBQ2xCSyxPQUFPRixXQUNQRyxXQUFXRCxLQUFLRSxPQUFPLElBQ3ZCQyxPQUFPWixhQUFhYSxrQkFBa0IsQ0FBQ2QsV0FDdkNlLGlDQUFpQ0osU0FBU0ssb0JBQW9CLENBQUNIO1FBRXJFLElBQUlFLGdDQUFnQztZQUNsQ1IsZ0JBQWdCTDtRQUNsQjtRQUVBLE9BQU9LO0lBQ1Q7SUFFTkgsMEJBQTBCRSxjQUFjLEdBQUc7SUFFM0MsT0FBT0Y7QUFDVCJ9
|
|
@@ -1,70 +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 verifyVariableAgainstTerm;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _term = /*#__PURE__*/ _interop_require_default(require("../verify/term"));
|
|
12
|
-
var _termForVariable = /*#__PURE__*/ _interop_require_default(require("../substitution/termForVariable"));
|
|
13
|
-
var _array = require("../utilities/array");
|
|
14
|
-
var _query = require("../utilities/query");
|
|
15
|
-
function _interop_require_default(obj) {
|
|
16
|
-
return obj && obj.__esModule ? obj : {
|
|
17
|
-
default: obj
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
var variableNodeQuery = (0, _query.nodeQuery)("/term/variable");
|
|
21
|
-
function verifyVariableAgainstTerm(variableNodeA, termNodeB, substitutions, localContextA, localContextB, verifyAhead) {
|
|
22
|
-
var variableVerifiedAgainstTerm = false;
|
|
23
|
-
var substitution = substitutions.find(function(substitution) {
|
|
24
|
-
var substitutionMatchesVariableNodeA = substitution.matchVariableNode(variableNodeA);
|
|
25
|
-
if (substitutionMatchesVariableNodeA) {
|
|
26
|
-
return true;
|
|
27
|
-
}
|
|
28
|
-
}) || null;
|
|
29
|
-
if (substitution !== null) {
|
|
30
|
-
var substitutionMatchesTermNodeB = substitution.matchTermNode(termNodeB);
|
|
31
|
-
if (substitutionMatchesTermNodeB) {
|
|
32
|
-
var verifiedAhead = verifyAhead();
|
|
33
|
-
variableVerifiedAgainstTerm = verifiedAhead; ///
|
|
34
|
-
}
|
|
35
|
-
} else {
|
|
36
|
-
var variableA = localContextA.findVariableByVariableNode(variableNodeA);
|
|
37
|
-
if (variableA !== null) {
|
|
38
|
-
var terms = [], termVerified = (0, _term.default)(termNodeB, terms, localContextB, function() {
|
|
39
|
-
var verifiedAhead = false;
|
|
40
|
-
var firstTerm = (0, _array.first)(terms), termB = firstTerm, variableB = variableFromTerm(termB, localContextB);
|
|
41
|
-
if (variableA === variableB) {
|
|
42
|
-
verifiedAhead = verifyAhead();
|
|
43
|
-
} else {
|
|
44
|
-
var term = termB, variable = variableA, termType = term.getType(), variableType = variable.getType(), variableTypeEqualToOrSuperTypeOfTermType = variableType.isEqualToOrSuperTypeOf(termType);
|
|
45
|
-
if (variableTypeEqualToOrSuperTypeOfTermType) {
|
|
46
|
-
var termNode = termNodeB, variableNode = variableNodeA, termForVariableSubstitution = _termForVariable.default.fromVariableNodeAndTermNode(variableNode, termNode), substitution = termForVariableSubstitution; ///
|
|
47
|
-
substitutions.push(substitution);
|
|
48
|
-
verifiedAhead = verifyAhead();
|
|
49
|
-
if (!verifiedAhead) {
|
|
50
|
-
substitutions.pop();
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
return verifiedAhead;
|
|
55
|
-
});
|
|
56
|
-
variableVerifiedAgainstTerm = termVerified; ///
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
return variableVerifiedAgainstTerm;
|
|
60
|
-
}
|
|
61
|
-
function variableFromTerm(term, localContext) {
|
|
62
|
-
var variable = null;
|
|
63
|
-
var termNode = term.getNode(), variableNode = variableNodeQuery(termNode);
|
|
64
|
-
if (variableNode !== null) {
|
|
65
|
-
variable = localContext.findVariableByVariableNode(variableNode);
|
|
66
|
-
}
|
|
67
|
-
return variable;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdmFyaWFibGVBZ2FpbnN0VGVybS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVRlcm0gZnJvbSBcIi4uL3ZlcmlmeS90ZXJtXCI7XG5pbXBvcnQgVGVybUZvclZhcmlhYmxlU3Vic3RpdHV0aW9uIGZyb20gXCIuLi9zdWJzdGl0dXRpb24vdGVybUZvclZhcmlhYmxlXCI7XG5cbmltcG9ydCB7IGZpcnN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtL3ZhcmlhYmxlXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlWYXJpYWJsZUFnYWluc3RUZXJtKHZhcmlhYmxlTm9kZUEsIHRlcm1Ob2RlQiwgc3Vic3RpdHV0aW9ucywgbG9jYWxDb250ZXh0QSwgbG9jYWxDb250ZXh0QiwgdmVyaWZ5QWhlYWQpIHtcbiAgbGV0IHZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0VGVybSA9IGZhbHNlO1xuXG4gIGNvbnN0IHN1YnN0aXR1dGlvbiA9IHN1YnN0aXR1dGlvbnMuZmluZCgoc3Vic3RpdHV0aW9uKSA9PiB7XG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uTWF0Y2hlc1ZhcmlhYmxlTm9kZUEgPSBzdWJzdGl0dXRpb24ubWF0Y2hWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlQSk7XG5cbiAgICBpZiAoc3Vic3RpdHV0aW9uTWF0Y2hlc1ZhcmlhYmxlTm9kZUEpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSkgfHwgbnVsbDtcblxuICBpZiAoc3Vic3RpdHV0aW9uICE9PSBudWxsKSB7XG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uTWF0Y2hlc1Rlcm1Ob2RlQiA9IHN1YnN0aXR1dGlvbi5tYXRjaFRlcm1Ob2RlKHRlcm1Ob2RlQik7XG5cbiAgICBpZiAoc3Vic3RpdHV0aW9uTWF0Y2hlc1Rlcm1Ob2RlQikge1xuICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHZlcmlmeUFoZWFkKCk7XG5cbiAgICAgIHZhcmlhYmxlVmVyaWZpZWRBZ2FpbnN0VGVybSA9IHZlcmlmaWVkQWhlYWQ7ICAvLy9cbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgdmFyaWFibGVBID0gbG9jYWxDb250ZXh0QS5maW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGVBKTtcblxuICAgIGlmICh2YXJpYWJsZUEgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHRlcm1zID0gW10sXG4gICAgICAgICAgICB0ZXJtVmVyaWZpZWQgPSB2ZXJpZnlUZXJtKHRlcm1Ob2RlQiwgdGVybXMsIGxvY2FsQ29udGV4dEIsICgpID0+IHtcbiAgICAgICAgICAgICAgbGV0IHZlcmlmaWVkQWhlYWQgPSBmYWxzZTtcblxuICAgICAgICAgICAgICBjb25zdCBmaXJzdFRlcm0gPSBmaXJzdCh0ZXJtcyksXG4gICAgICAgICAgICAgICAgICAgIHRlcm1CID0gZmlyc3RUZXJtLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgdmFyaWFibGVCID0gdmFyaWFibGVGcm9tVGVybSh0ZXJtQiwgbG9jYWxDb250ZXh0Qik7XG5cbiAgICAgICAgICAgICAgaWYgKHZhcmlhYmxlQSA9PT0gdmFyaWFibGVCKSB7XG4gICAgICAgICAgICAgICAgdmVyaWZpZWRBaGVhZCA9IHZlcmlmeUFoZWFkKCk7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGVybSA9IHRlcm1CLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZSA9IHZhcmlhYmxlQSwgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgdGVybVR5cGUgPSB0ZXJtLmdldFR5cGUoKSxcbiAgICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZVR5cGUgPSB2YXJpYWJsZS5nZXRUeXBlKCksXG4gICAgICAgICAgICAgICAgICAgICAgdmFyaWFibGVUeXBlRXF1YWxUb09yU3VwZXJUeXBlT2ZUZXJtVHlwZSA9IHZhcmlhYmxlVHlwZS5pc0VxdWFsVG9PclN1cGVyVHlwZU9mKHRlcm1UeXBlKTtcblxuICAgICAgICAgICAgICAgIGlmICh2YXJpYWJsZVR5cGVFcXVhbFRvT3JTdXBlclR5cGVPZlRlcm1UeXBlKSB7XG4gICAgICAgICAgICAgICAgICBjb25zdCB0ZXJtTm9kZSA9IHRlcm1Ob2RlQiwgLy8vXG4gICAgICAgICAgICAgICAgICAgICAgICB2YXJpYWJsZU5vZGUgPSB2YXJpYWJsZU5vZGVBLCAvLy9cbiAgICAgICAgICAgICAgICAgICAgICAgIHRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiA9IFRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbi5mcm9tVmFyaWFibGVOb2RlQW5kVGVybU5vZGUodmFyaWFibGVOb2RlLCB0ZXJtTm9kZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBzdWJzdGl0dXRpb24gPSB0ZXJtRm9yVmFyaWFibGVTdWJzdGl0dXRpb247ICAvLy9cblxuICAgICAgICAgICAgICAgICAgc3Vic3RpdHV0aW9ucy5wdXNoKHN1YnN0aXR1dGlvbik7XG5cbiAgICAgICAgICAgICAgICAgIHZlcmlmaWVkQWhlYWQgPSB2ZXJpZnlBaGVhZCgpO1xuXG4gICAgICAgICAgICAgICAgICBpZiAoIXZlcmlmaWVkQWhlYWQpIHtcbiAgICAgICAgICAgICAgICAgICAgc3Vic3RpdHV0aW9ucy5wb3AoKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICB2YXJpYWJsZVZlcmlmaWVkQWdhaW5zdFRlcm0gPSB0ZXJtVmVyaWZpZWQ7ICAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gdmFyaWFibGVWZXJpZmllZEFnYWluc3RUZXJtO1xufVxuXG5mdW5jdGlvbiB2YXJpYWJsZUZyb21UZXJtKHRlcm0sIGxvY2FsQ29udGV4dCkge1xuICBsZXQgdmFyaWFibGUgPSBudWxsO1xuXG4gIGNvbnN0IHRlcm1Ob2RlID0gdGVybS5nZXROb2RlKCksXG4gICAgICAgIHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KHRlcm1Ob2RlKTtcblxuICBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgdmFyaWFibGUgPSBsb2NhbENvbnRleHQuZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiB2YXJpYWJsZTtcbn0iXSwibmFtZXMiOlsidmVyaWZ5VmFyaWFibGVBZ2FpbnN0VGVybSIsInZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidmFyaWFibGVOb2RlQSIsInRlcm1Ob2RlQiIsInN1YnN0aXR1dGlvbnMiLCJsb2NhbENvbnRleHRBIiwibG9jYWxDb250ZXh0QiIsInZlcmlmeUFoZWFkIiwidmFyaWFibGVWZXJpZmllZEFnYWluc3RUZXJtIiwic3Vic3RpdHV0aW9uIiwiZmluZCIsInN1YnN0aXR1dGlvbk1hdGNoZXNWYXJpYWJsZU5vZGVBIiwibWF0Y2hWYXJpYWJsZU5vZGUiLCJzdWJzdGl0dXRpb25NYXRjaGVzVGVybU5vZGVCIiwibWF0Y2hUZXJtTm9kZSIsInZlcmlmaWVkQWhlYWQiLCJ2YXJpYWJsZUEiLCJmaW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSIsInRlcm1zIiwidGVybVZlcmlmaWVkIiwidmVyaWZ5VGVybSIsImZpcnN0VGVybSIsImZpcnN0IiwidGVybUIiLCJ2YXJpYWJsZUIiLCJ2YXJpYWJsZUZyb21UZXJtIiwidGVybSIsInZhcmlhYmxlIiwidGVybVR5cGUiLCJnZXRUeXBlIiwidmFyaWFibGVUeXBlIiwidmFyaWFibGVUeXBlRXF1YWxUb09yU3VwZXJUeXBlT2ZUZXJtVHlwZSIsImlzRXF1YWxUb09yU3VwZXJUeXBlT2YiLCJ0ZXJtTm9kZSIsInZhcmlhYmxlTm9kZSIsInRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiIsIlRlcm1Gb3JWYXJpYWJsZVN1YnN0aXR1dGlvbiIsImZyb21WYXJpYWJsZU5vZGVBbmRUZXJtTm9kZSIsInB1c2giLCJwb3AiLCJsb2NhbENvbnRleHQiLCJnZXROb2RlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQXdCQTs7OzJEQVJEO3NFQUNpQjtxQkFFbEI7cUJBQ0k7Ozs7OztBQUUxQixJQUFNQyxvQkFBb0JDLElBQUFBLGdCQUFTLEVBQUM7QUFFckIsU0FBU0YsMEJBQTBCRyxhQUFhLEVBQUVDLFNBQVMsRUFBRUMsYUFBYSxFQUFFQyxhQUFhLEVBQUVDLGFBQWEsRUFBRUMsV0FBVztJQUNsSSxJQUFJQyw4QkFBOEI7SUFFbEMsSUFBTUMsZUFBZUwsY0FBY00sSUFBSSxDQUFDLFNBQUNEO1FBQ3ZDLElBQU1FLG1DQUFtQ0YsYUFBYUcsaUJBQWlCLENBQUNWO1FBRXhFLElBQUlTLGtDQUFrQztZQUNwQyxPQUFPO1FBQ1Q7SUFDRixNQUFNO0lBRU4sSUFBSUYsaUJBQWlCLE1BQU07UUFDekIsSUFBTUksK0JBQStCSixhQUFhSyxhQUFhLENBQUNYO1FBRWhFLElBQUlVLDhCQUE4QjtZQUNoQyxJQUFNRSxnQkFBZ0JSO1lBRXRCQyw4QkFBOEJPLGVBQWdCLEdBQUc7UUFDbkQ7SUFDRixPQUFPO1FBQ0wsSUFBTUMsWUFBWVgsY0FBY1ksMEJBQTBCLENBQUNmO1FBRTNELElBQUljLGNBQWMsTUFBTTtZQUN0QixJQUFNRSxRQUFRLEVBQUUsRUFDVkMsZUFBZUMsSUFBQUEsYUFBVSxFQUFDakIsV0FBV2UsT0FBT1osZUFBZTtnQkFDekQsSUFBSVMsZ0JBQWdCO2dCQUVwQixJQUFNTSxZQUFZQyxJQUFBQSxZQUFLLEVBQUNKLFFBQ2xCSyxRQUFRRixXQUNSRyxZQUFZQyxpQkFBaUJGLE9BQU9qQjtnQkFFMUMsSUFBSVUsY0FBY1EsV0FBVztvQkFDM0JULGdCQUFnQlI7Z0JBQ2xCLE9BQU87b0JBQ0wsSUFBTW1CLE9BQU9ILE9BQ1BJLFdBQVdYLFdBQ1hZLFdBQVdGLEtBQUtHLE9BQU8sSUFDdkJDLGVBQWVILFNBQVNFLE9BQU8sSUFDL0JFLDJDQUEyQ0QsYUFBYUUsc0JBQXNCLENBQUNKO29CQUVyRixJQUFJRywwQ0FBMEM7d0JBQzVDLElBQU1FLFdBQVc5QixXQUNYK0IsZUFBZWhDLGVBQ2ZpQyw4QkFBOEJDLHdCQUEyQixDQUFDQywyQkFBMkIsQ0FBQ0gsY0FBY0QsV0FDcEd4QixlQUFlMEIsNkJBQThCLEdBQUc7d0JBRXREL0IsY0FBY2tDLElBQUksQ0FBQzdCO3dCQUVuQk0sZ0JBQWdCUjt3QkFFaEIsSUFBSSxDQUFDUSxlQUFlOzRCQUNsQlgsY0FBY21DLEdBQUc7d0JBQ25CO29CQUNGO2dCQUNGO2dCQUVBLE9BQU94QjtZQUNUO1lBRU5QLDhCQUE4QlcsY0FBZSxHQUFHO1FBQ2xEO0lBQ0Y7SUFFQSxPQUFPWDtBQUNUO0FBRUEsU0FBU2lCLGlCQUFpQkMsSUFBSSxFQUFFYyxZQUFZO0lBQzFDLElBQUliLFdBQVc7SUFFZixJQUFNTSxXQUFXUCxLQUFLZSxPQUFPLElBQ3ZCUCxlQUFlbEMsa0JBQWtCaUM7SUFFdkMsSUFBSUMsaUJBQWlCLE1BQU07UUFDekJQLFdBQVdhLGFBQWF2QiwwQkFBMEIsQ0FBQ2lCO0lBQ3JEO0lBRUEsT0FBT1A7QUFDVCJ9
|
package/src/mixins/context.js
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
function trace(node, message) { this.context.trace(node, message); }
|
|
4
|
-
|
|
5
|
-
function debug(node, message) { this.context.debug(node, message); }
|
|
6
|
-
|
|
7
|
-
function info(node, message) { this.context.info(node, message); }
|
|
8
|
-
|
|
9
|
-
function warning(node, message) { this.context.warning(node, message); }
|
|
10
|
-
|
|
11
|
-
function error(node, message) { this.context.error(node, message); }
|
|
12
|
-
|
|
13
|
-
function fatal(node, message) { this.context.fatal(node, message); }
|
|
14
|
-
|
|
15
|
-
function getAxioms() { return this.context.getAxioms(); }
|
|
16
|
-
|
|
17
|
-
function getLemmas() { return this.context.getLemmas(); }
|
|
18
|
-
|
|
19
|
-
function getTheorems() { return this.context.getTheorems(); }
|
|
20
|
-
|
|
21
|
-
function getConjectures() { return this.context.getConjectures(); }
|
|
22
|
-
|
|
23
|
-
function getCombinators() { return this.context.getCombinators(); }
|
|
24
|
-
|
|
25
|
-
function getConstructors() { return this.context.getConstructors(); }
|
|
26
|
-
|
|
27
|
-
function isTypePresentByTypeName(typeName) { return this.context.isTypePresentByTypeName(typeName); }
|
|
28
|
-
|
|
29
|
-
function isTypePresentByTypeNode(typeNode) { return this.context.isTypePresentByTypeNode(typeNode); }
|
|
30
|
-
|
|
31
|
-
function isMetavariablePresentByName(name) { return this.context.isMetavariablePresentByName(name); }
|
|
32
|
-
|
|
33
|
-
function isLabelPresentByMetavariableNode(metavariableNode) { return this.context.isLabelPresentByMetavariableNode(metavariableNode); }
|
|
34
|
-
|
|
35
|
-
function findTypeByTypeName(typeName) { return this.context.findTypeByTypeName(typeName); }
|
|
36
|
-
|
|
37
|
-
function findTypeByTypeNode(typeNode) { return this.context.findTypeByTypeNode(typeNode); }
|
|
38
|
-
|
|
39
|
-
function findMetavariableByName(name) { return this.context.findMetavariableByName(name); }
|
|
40
|
-
|
|
41
|
-
function findLabelByMetavariableNode(metavariableNode) { return this.context.findLabelByMetavariableNode(metavariableNode); }
|
|
42
|
-
|
|
43
|
-
function findMetaTypeByMetaTypeNode(metaTypeNode) { return this.context.findMetaTypeByMetaTypeNode(metaTypeNode); }
|
|
44
|
-
|
|
45
|
-
function findRuleByMetavariableNode(metavariableNode) { return this.context.findRuleByMetavariableNode(metavariableNode); }
|
|
46
|
-
|
|
47
|
-
function findAxiomByMetavariableNode(metavariableNode) { return this.context.findAxiomByMetavariableNode(metavariableNode); }
|
|
48
|
-
|
|
49
|
-
function findLemmaByMetavariableNode(metavariableNode) { return this.context.findLemmaByMetavariableNode(metavariableNode); }
|
|
50
|
-
|
|
51
|
-
function findTheoremByMetavariableNode(metavariableNode) { return this.context.findTheoremByMetavariableNode(metavariableNode); }
|
|
52
|
-
|
|
53
|
-
function findMetaLemmaByMetavariableNode(metavariableNode) { return this.context.findMetaLemmaByMetavariableNode(metavariableNode); }
|
|
54
|
-
|
|
55
|
-
function findConjectureByMetavariableNode(metavariableNode) { return this.context.findConjectureByMetavariableNode(metavariableNode); }
|
|
56
|
-
|
|
57
|
-
function findMetatheoremByMetavariableNode(metavariableNode) { return this.context.findMetatheoremByMetavariableNode(metavariableNode); }
|
|
58
|
-
|
|
59
|
-
function nodeAsString(node) { return this.context.nodeAsString(node); }
|
|
60
|
-
|
|
61
|
-
function nodesAsString(node) { return this.context.nodesAsString(node); }
|
|
62
|
-
|
|
63
|
-
const contextMixins = {
|
|
64
|
-
trace,
|
|
65
|
-
debug,
|
|
66
|
-
info,
|
|
67
|
-
warning,
|
|
68
|
-
error,
|
|
69
|
-
fatal,
|
|
70
|
-
getAxioms,
|
|
71
|
-
getLemmas,
|
|
72
|
-
getTheorems,
|
|
73
|
-
getConjectures,
|
|
74
|
-
getCombinators,
|
|
75
|
-
getConstructors,
|
|
76
|
-
isTypePresentByTypeName,
|
|
77
|
-
isTypePresentByTypeNode,
|
|
78
|
-
isMetavariablePresentByName,
|
|
79
|
-
isLabelPresentByMetavariableNode,
|
|
80
|
-
findTypeByTypeName,
|
|
81
|
-
findTypeByTypeNode,
|
|
82
|
-
findMetavariableByName,
|
|
83
|
-
findLabelByMetavariableNode,
|
|
84
|
-
findMetaTypeByMetaTypeNode,
|
|
85
|
-
findRuleByMetavariableNode,
|
|
86
|
-
findAxiomByMetavariableNode,
|
|
87
|
-
findLemmaByMetavariableNode,
|
|
88
|
-
findTheoremByMetavariableNode,
|
|
89
|
-
findMetaLemmaByMetavariableNode,
|
|
90
|
-
findConjectureByMetavariableNode,
|
|
91
|
-
findMetatheoremByMetavariableNode,
|
|
92
|
-
nodeAsString,
|
|
93
|
-
nodesAsString
|
|
94
|
-
};
|
|
95
|
-
|
|
96
|
-
export default contextMixins;
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import verifyTerm from "../../verify/term";
|
|
4
|
-
import TermForVariableSubstitution from "../../substitution/termForVariable";
|
|
5
|
-
|
|
6
|
-
import { first } from "../../utilities/array";
|
|
7
|
-
|
|
8
|
-
function verifyVariableNode(variableNodeA, termNodeB, substitutions, localContextA, localContextB, verifyAhead) {
|
|
9
|
-
let variableNodeVerified = false;
|
|
10
|
-
|
|
11
|
-
const substitution = substitutions.find((substitution) => {
|
|
12
|
-
const substitutionMatchesVariableNodeA = substitution.matchVariableNode(variableNodeA);
|
|
13
|
-
|
|
14
|
-
if (substitutionMatchesVariableNodeA) {
|
|
15
|
-
return true;
|
|
16
|
-
}
|
|
17
|
-
}) || null;
|
|
18
|
-
|
|
19
|
-
if (substitution !== null) {
|
|
20
|
-
const termNode = termNodeB, ///
|
|
21
|
-
substitutionMatchesTermNode = substitution.matchTermNode(termNode);
|
|
22
|
-
|
|
23
|
-
if (substitutionMatchesTermNode) {
|
|
24
|
-
const verifiedAhead = verifyAhead();
|
|
25
|
-
|
|
26
|
-
variableNodeVerified = verifiedAhead; ///
|
|
27
|
-
}
|
|
28
|
-
} else {
|
|
29
|
-
const variableNode = variableNodeA, ///
|
|
30
|
-
localContext = localContextA, ///
|
|
31
|
-
variable = localContext.findVariableByVariableNode(variableNode);
|
|
32
|
-
|
|
33
|
-
if (variable !== null) {
|
|
34
|
-
const terms = [],
|
|
35
|
-
termNode = termNodeB, ///
|
|
36
|
-
localContext = localContextB, ///
|
|
37
|
-
termVerified = verifyTerm(termNode, terms, localContext, () => {
|
|
38
|
-
let verifiedAhead = false;
|
|
39
|
-
|
|
40
|
-
const firstTerm = first(terms),
|
|
41
|
-
term = firstTerm, ///
|
|
42
|
-
termType = term.getType(),
|
|
43
|
-
variableType = variable.getType(),
|
|
44
|
-
variableTypeEqualToOrSuperTypeOfTermType = variableType.isEqualToOrSuperTypeOf(termType);
|
|
45
|
-
|
|
46
|
-
if (variableTypeEqualToOrSuperTypeOfTermType) {
|
|
47
|
-
const termForVariableSubstitution = TermForVariableSubstitution.fromVariableNodeAndTermNode(variableNode, termNode),
|
|
48
|
-
substitution = termForVariableSubstitution; ///
|
|
49
|
-
|
|
50
|
-
substitutions.push(substitution);
|
|
51
|
-
|
|
52
|
-
verifiedAhead = verifyAhead();
|
|
53
|
-
|
|
54
|
-
if (!verifiedAhead) {
|
|
55
|
-
substitutions.pop();
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
return verifiedAhead;
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
variableNodeVerified = termVerified; ///
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
return variableNodeVerified;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
const intrinsicLevelNodesVerifierMixins = {
|
|
70
|
-
verifyVariableNode
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
export default intrinsicLevelNodesVerifierMixins;
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import StatementForMetavariableSubstitution from "../../substitution/statementForMetavariable";
|
|
4
|
-
|
|
5
|
-
function verifyMetavariableNode(metavariableNodeA, statementNodeB, substitutions, localContextA, localContextB, verifyAhead) {
|
|
6
|
-
let metavariableNodeVerified;
|
|
7
|
-
|
|
8
|
-
const substitution = substitutions.find((substitution) => {
|
|
9
|
-
const substitutionMatchesMetavariableNodeA = substitution.matchMetavariableNode(metavariableNodeA);
|
|
10
|
-
|
|
11
|
-
if (substitutionMatchesMetavariableNodeA) {
|
|
12
|
-
return true;
|
|
13
|
-
}
|
|
14
|
-
}) || null;
|
|
15
|
-
|
|
16
|
-
if (substitution !== null) {
|
|
17
|
-
const statementNode = statementNodeB, ///
|
|
18
|
-
substitutionStatementNode = substitution.matchStatementNode(statementNode);
|
|
19
|
-
|
|
20
|
-
metavariableNodeVerified = substitutionStatementNode; ///
|
|
21
|
-
} else {
|
|
22
|
-
const metavariableNode = metavariableNodeA, ///
|
|
23
|
-
statementNode = statementNodeB, ///
|
|
24
|
-
statementForMetavariableSubstitution = StatementForMetavariableSubstitution.fromMetavariableNodeAndStatementNode(metavariableNode, statementNode),
|
|
25
|
-
substitution = statementForMetavariableSubstitution; ///
|
|
26
|
-
|
|
27
|
-
substitutions.push(substitution);
|
|
28
|
-
|
|
29
|
-
metavariableNodeVerified = true;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
return metavariableNodeVerified;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
const metaLevelNodesVerifierMixins = {
|
|
36
|
-
verifyMetavariableNode
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
export default metaLevelNodesVerifierMixins;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
export function verifyNode(nodeQueryMaps, nonTerminalNode, ...remainingArguments) {
|
|
4
|
-
let nodeVerified = false;
|
|
5
|
-
|
|
6
|
-
nodeVerified = nodeQueryMaps.some((nodeQueryMap) => {
|
|
7
|
-
const { nodeQuery, verifyNode } = nodeQueryMap;
|
|
8
|
-
|
|
9
|
-
const node = nodeQuery(nonTerminalNode);
|
|
10
|
-
|
|
11
|
-
if (node !== null) {
|
|
12
|
-
nodeVerified = verifyNode(node, ...remainingArguments);
|
|
13
|
-
|
|
14
|
-
return true;
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
return nodeVerified;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
export function verifyNodes(nodeQueryMaps, nonTerminalNodeA, nonTerminalNodeB, ...remainingArguments) {
|
|
22
|
-
let nodesVerified = false;
|
|
23
|
-
|
|
24
|
-
nodeQueryMaps.some((nodeQueryMap) => {
|
|
25
|
-
const { nodeQueryA, nodeQueryB, verifyNodes } = nodeQueryMap;
|
|
26
|
-
|
|
27
|
-
const nodeA = nodeQueryA(nonTerminalNodeA), ///
|
|
28
|
-
nodeB = nodeQueryB(nonTerminalNodeB); ///
|
|
29
|
-
|
|
30
|
-
if ((nodeA !== null) && (nodeB !== null)) {
|
|
31
|
-
nodesVerified = verifyNodes(nodeA, nodeB, ...remainingArguments);
|
|
32
|
-
|
|
33
|
-
return true;
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
return nodesVerified;
|
|
38
|
-
}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import NodesVerifier from "../../verifier/nodes";
|
|
4
|
-
import verifyTermAgainstTerm from "../../verify/termAgainstTerm";
|
|
5
|
-
|
|
6
|
-
import { nodeQuery } from "../../utilities/query";
|
|
7
|
-
import { verifyNodes } from "../../utilities/verifier";
|
|
8
|
-
|
|
9
|
-
const termNodeQuery = nodeQuery("/term!"),
|
|
10
|
-
nonTerminalNodeQuery = nodeQuery("/*");
|
|
11
|
-
|
|
12
|
-
class EqualityNodesVerifier extends NodesVerifier {
|
|
13
|
-
verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext, verifyAhead) {
|
|
14
|
-
let nonTerminalNodeVerified;
|
|
15
|
-
|
|
16
|
-
const nodeQueryMaps = [
|
|
17
|
-
{
|
|
18
|
-
nodeQueryA: termNodeQuery,
|
|
19
|
-
nodeQueryB: termNodeQuery,
|
|
20
|
-
verifyNodes: (nodeA, nodeB, localContext, verifyAhead) => {
|
|
21
|
-
let nonTerminalNodeVerified;
|
|
22
|
-
|
|
23
|
-
const termNodeA = nodeA, ///
|
|
24
|
-
termNodeB = nodeB, ///
|
|
25
|
-
termNodeVerifiedAgainstTermNode =
|
|
26
|
-
|
|
27
|
-
this.verifyTermNodeAgainstTermNode(termNodeA, termNodeB, localContext, verifyAhead);
|
|
28
|
-
|
|
29
|
-
nonTerminalNodeVerified = termNodeVerifiedAgainstTermNode; ///
|
|
30
|
-
|
|
31
|
-
return nonTerminalNodeVerified;
|
|
32
|
-
}
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
nodeQueryA: nonTerminalNodeQuery,
|
|
36
|
-
nodeQueryB: nonTerminalNodeQuery,
|
|
37
|
-
verifyNodes: (nodeA, nodeB, localContext, verifyAhead) => {
|
|
38
|
-
let nonTerminalNodeVerified;
|
|
39
|
-
|
|
40
|
-
const nonTerminalNodeA = nodeA, ///
|
|
41
|
-
nonTerminalNodeB = nodeB; ///
|
|
42
|
-
|
|
43
|
-
nonTerminalNodeVerified =
|
|
44
|
-
|
|
45
|
-
super.verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext, verifyAhead);
|
|
46
|
-
|
|
47
|
-
return nonTerminalNodeVerified;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
];
|
|
51
|
-
|
|
52
|
-
const nodesVerified = verifyNodes(nodeQueryMaps, nonTerminalNodeA, nonTerminalNodeB, localContext, verifyAhead);
|
|
53
|
-
|
|
54
|
-
nonTerminalNodeVerified = nodesVerified; ///
|
|
55
|
-
|
|
56
|
-
return nonTerminalNodeVerified;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
verifyTermNodeAgainstTermNode(termNodeA, termNodeB, localContext, verifyAhead) {
|
|
60
|
-
let termNodeVerifiedAgainstTermNode;
|
|
61
|
-
|
|
62
|
-
const termVerifiedAgainstTerm = verifyTermAgainstTerm(termNodeA, termNodeB, localContext, verifyAhead);
|
|
63
|
-
|
|
64
|
-
if (termVerifiedAgainstTerm) {
|
|
65
|
-
termNodeVerifiedAgainstTermNode = true;
|
|
66
|
-
} else {
|
|
67
|
-
const nonTerminalNodeA = termNodeA, ///
|
|
68
|
-
nonTerminalNodeB = termNodeB, ///
|
|
69
|
-
nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(),
|
|
70
|
-
nonTerminalNodeBChildNodes = nonTerminalNodeB.getChildNodes(),
|
|
71
|
-
childNodesA = nonTerminalNodeAChildNodes, ///
|
|
72
|
-
childNodesB = nonTerminalNodeBChildNodes, ///
|
|
73
|
-
childNodesVerified = this.verifyChildNodes(childNodesA, childNodesB, localContext, verifyAhead);
|
|
74
|
-
|
|
75
|
-
termNodeVerifiedAgainstTermNode = childNodesVerified; ///
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
return termNodeVerifiedAgainstTermNode;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
const equalityNodesVerifier = new EqualityNodesVerifier();
|
|
83
|
-
|
|
84
|
-
export default equalityNodesVerifier;
|