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.
Files changed (115) hide show
  1. package/lib/conclusion.js +4 -4
  2. package/lib/consequent.js +4 -4
  3. package/lib/context/local.js +188 -9
  4. package/lib/declaration.js +2 -2
  5. package/lib/equality.js +4 -4
  6. package/lib/equivalence.js +16 -1
  7. package/lib/metaLemma.js +4 -4
  8. package/lib/metatheorem.js +4 -4
  9. package/lib/premise.js +6 -6
  10. package/lib/proofStep.js +43 -6
  11. package/lib/shim.js +14 -0
  12. package/lib/substitution/statementForMetavariable.js +46 -2
  13. package/lib/substitution/termForVariable.js +15 -1
  14. package/lib/supposition.js +6 -6
  15. package/lib/unifier/equality.js +216 -0
  16. package/lib/unifier/metaLevel.js +235 -0
  17. package/lib/unifier/statementAgainstCombinator.js +232 -0
  18. package/lib/unifier/termAgainstConstructor.js +212 -0
  19. package/lib/unifier.js +201 -0
  20. package/lib/unify/argumentAgainstArgument.js +24 -0
  21. package/lib/unify/metavariableAgainstStatement.js +66 -0
  22. package/lib/unify/statementAgainstMetaType.js +28 -0
  23. package/lib/unify/statementAtainstStatement.js +52 -0
  24. package/lib/unify/termAgainstTerm.js +22 -0
  25. package/lib/unify/termAgainstType.js +26 -0
  26. package/lib/unify/variableAgainstTerm.js +70 -0
  27. package/lib/verifier/metaLevel.js +236 -0
  28. package/lib/verifier/statementAsCombinator.js +236 -0
  29. package/lib/verifier/termAsConstructor.js +219 -0
  30. package/lib/verifier.js +182 -0
  31. package/lib/verify/assertion/contained.js +2 -2
  32. package/lib/verify/assertion/defined.js +2 -2
  33. package/lib/verify/declaration.js +18 -18
  34. package/lib/verify/frame.js +9 -12
  35. package/lib/verify/proofStep.js +3 -3
  36. package/lib/verify/statement/qualified.js +61 -10
  37. package/lib/verify/statement/unqualified.js +62 -50
  38. package/lib/verify/statement.js +36 -41
  39. package/lib/verify/statementAsCombinator.js +2 -2
  40. package/lib/verify/subDerivation.js +8 -2
  41. package/lib/verify/term.js +8 -7
  42. package/lib/verify/termAsConstructor.js +2 -2
  43. package/package.json +2 -2
  44. package/src/conclusion.js +3 -3
  45. package/src/consequent.js +3 -3
  46. package/src/context/local.js +68 -8
  47. package/src/declaration.js +2 -2
  48. package/src/equality.js +3 -3
  49. package/src/equivalence.js +19 -0
  50. package/src/metaLemma.js +1 -1
  51. package/src/metatheorem.js +1 -1
  52. package/src/premise.js +5 -5
  53. package/src/proofStep.js +57 -4
  54. package/src/shim.js +5 -0
  55. package/src/substitution/statementForMetavariable.js +33 -2
  56. package/src/substitution/termForVariable.js +16 -0
  57. package/src/supposition.js +5 -5
  58. package/src/unifier/equality.js +84 -0
  59. package/src/unifier/metaLevel.js +114 -0
  60. package/src/unifier/statementAgainstCombinator.js +105 -0
  61. package/src/unifier/termAgainstConstructor.js +77 -0
  62. package/src/unifier.js +133 -0
  63. package/src/unify/argumentAgainstArgument.js +15 -0
  64. package/src/{verify → unify}/metavariableAgainstStatement.js +18 -18
  65. package/src/{verify → unify}/statementAgainstMetaType.js +4 -4
  66. package/src/{verify → unify}/statementAtainstStatement.js +7 -7
  67. package/src/{verify → unify}/termAgainstTerm.js +5 -5
  68. package/src/{verify → unify}/termAgainstType.js +7 -7
  69. package/src/{verify → unify}/variableAgainstTerm.js +6 -6
  70. package/src/verifier/{node/metaLevel.js → metaLevel.js} +14 -14
  71. package/src/verifier/{node/statementAsCombinator.js → statementAsCombinator.js} +14 -14
  72. package/src/verifier/{node/termAsConstructor.js → termAsConstructor.js} +12 -12
  73. package/src/{verifier/node.js → verifier.js} +19 -1
  74. package/src/verify/assertion/contained.js +2 -2
  75. package/src/verify/assertion/defined.js +2 -2
  76. package/src/verify/declaration.js +20 -23
  77. package/src/verify/frame.js +10 -13
  78. package/src/verify/proofStep.js +2 -2
  79. package/src/verify/statement/qualified.js +95 -10
  80. package/src/verify/statement/unqualified.js +85 -11
  81. package/src/verify/statement.js +47 -45
  82. package/src/verify/statementAsCombinator.js +2 -2
  83. package/src/verify/subDerivation.js +3 -1
  84. package/src/verify/term.js +7 -6
  85. package/src/verify/termAsConstructor.js +2 -2
  86. package/lib/mixins/context.js +0 -135
  87. package/lib/mixins/nodesVerifier/intrinsiclevel.js +0 -59
  88. package/lib/mixins/nodesVerifier/metaLevel.js +0 -40
  89. package/lib/utilities/verifier.js +0 -80
  90. package/lib/verifier/node/metaLevel.js +0 -201
  91. package/lib/verifier/node/statementAsCombinator.js +0 -201
  92. package/lib/verifier/node/termAsConstructor.js +0 -184
  93. package/lib/verifier/node.js +0 -157
  94. package/lib/verifier/nodes/equality.js +0 -176
  95. package/lib/verifier/nodes/metaLevel.js +0 -191
  96. package/lib/verifier/nodes/statementAgainstCombinator.js +0 -191
  97. package/lib/verifier/nodes/termAgainstConstructor.js +0 -171
  98. package/lib/verifier/nodes.js +0 -175
  99. package/lib/verify/argumentAgainstArgument.js +0 -24
  100. package/lib/verify/metavariableAgainstStatement.js +0 -66
  101. package/lib/verify/statementAgainstMetaType.js +0 -28
  102. package/lib/verify/statementAtainstStatement.js +0 -52
  103. package/lib/verify/termAgainstTerm.js +0 -22
  104. package/lib/verify/termAgainstType.js +0 -26
  105. package/lib/verify/variableAgainstTerm.js +0 -70
  106. package/src/mixins/context.js +0 -96
  107. package/src/mixins/nodesVerifier/intrinsiclevel.js +0 -73
  108. package/src/mixins/nodesVerifier/metaLevel.js +0 -39
  109. package/src/utilities/verifier.js +0 -38
  110. package/src/verifier/nodes/equality.js +0 -84
  111. package/src/verifier/nodes/metaLevel.js +0 -109
  112. package/src/verifier/nodes/statementAgainstCombinator.js +0 -105
  113. package/src/verifier/nodes/termAgainstConstructor.js +0 -76
  114. package/src/verifier/nodes.js +0 -114
  115. 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
@@ -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;