occam-verify-cli 0.0.916 → 0.0.918

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 (42) hide show
  1. package/lib/axiom.js +11 -24
  2. package/lib/conjecture.js +11 -24
  3. package/lib/constants.js +9 -1
  4. package/lib/constructor/bracketed.js +11 -24
  5. package/lib/context/local/metaLevel.js +16 -24
  6. package/lib/lemma.js +11 -24
  7. package/lib/metaLemma.js +11 -24
  8. package/lib/metaType/frame.js +11 -24
  9. package/lib/metaType/reference.js +11 -24
  10. package/lib/metaType/statement.js +11 -24
  11. package/lib/metatheorem.js +11 -24
  12. package/lib/ocmbinator/bracketed.js +11 -24
  13. package/lib/substitution/metastatementForMetavariable.js +11 -24
  14. package/lib/substitution/statementForMetavariable.js +11 -24
  15. package/lib/substitution/termForVariable.js +11 -24
  16. package/lib/theorem.js +11 -24
  17. package/lib/type.js +11 -24
  18. package/lib/utilities/verify.js +7 -7
  19. package/lib/verifier/node/metaLevel.js +11 -24
  20. package/lib/verifier/node/statementAsCombinator.js +11 -24
  21. package/lib/verifier/node/termAsConstructor.js +11 -24
  22. package/lib/verifier/nodes/equality.js +11 -24
  23. package/lib/verifier/nodes/intrinsicLevel.js +11 -24
  24. package/lib/verifier/nodes/intrinsicLevelAgainstMetaLevel.js +11 -24
  25. package/lib/verifier/nodes/metaLevel.js +11 -24
  26. package/lib/verifier/nodes/statementAgainstCombinator.js +11 -24
  27. package/lib/verifier/nodes/termAgainstConstructor.js +11 -24
  28. package/lib/verify/metastatement.js +10 -6
  29. package/lib/verify/statement.js +45 -46
  30. package/lib/verify/statementAsContainedAssertion.js +93 -0
  31. package/lib/verify/statementAsDefinedAssertion.js +111 -0
  32. package/package.json +2 -2
  33. package/src/constants.js +2 -0
  34. package/src/utilities/verify.js +5 -5
  35. package/src/verify/metastatement.js +13 -5
  36. package/src/verify/statement.js +70 -70
  37. package/src/verify/statementAsContainedAssertion.js +112 -0
  38. package/src/verify/statementAsDefinedAssertion.js +136 -0
  39. package/lib/verify/containedAssertion.js +0 -93
  40. package/lib/verify/definedAssertion.js +0 -111
  41. package/src/verify/containedAssertion.js +0 -112
  42. package/src/verify/definedAssertion.js +0 -137
@@ -1,111 +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 verifyDefinedAssertion;
9
- }
10
- });
11
- var _term = /*#__PURE__*/ _interop_require_default(require("./term"));
12
- var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../verifier/node/metaLevel"));
13
- var _array = require("../utilities/array");
14
- var _query = require("../utilities/query");
15
- var _verify = require("../utilities/verify");
16
- function _interop_require_default(obj) {
17
- return obj && obj.__esModule ? obj : {
18
- default: obj
19
- };
20
- }
21
- var termNodeQuery = (0, _query.nodeQuery)("/definedAssertion/term!"), variableNodeQuery = (0, _query.nodeQuery)("/definedAssertion/term/variable!");
22
- function verifyDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
23
- var definedAssertionVerified;
24
- var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
25
- localContext.trace("Verifying the '".concat(definedAssertionString, "' defined assertion..."), definedAssertionNode);
26
- var definedAssertionFunctions = [
27
- verifyDerivedDefinedAssertion,
28
- verifyStatedDefinedAssertion
29
- ];
30
- definedAssertionVerified = definedAssertionFunctions.some(function(definedAssertionFunction) {
31
- var definedAssertionVerified = definedAssertionFunction(definedAssertionNode, assignments, derived, localContext);
32
- if (definedAssertionVerified) {
33
- return true;
34
- }
35
- });
36
- if (definedAssertionVerified) {
37
- localContext.debug("...verified the '".concat(definedAssertionString, "' defined assertion."), definedAssertionNode);
38
- }
39
- return definedAssertionVerified;
40
- }
41
- function verifyDerivedDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
42
- var derivedDefinedAssertionVerified = false;
43
- if (derived) {
44
- var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
45
- localContext.trace("Verifying the derived '".concat(definedAssertionString, "' defined assertion..."), definedAssertionNode);
46
- var definedAssertionNegated = (0, _verify.isAssertionNegated)(definedAssertionNode), variableNode = variableNodeQuery(definedAssertionNode), termNode = termNodeQuery(definedAssertionNode), negated = definedAssertionNegated; ///
47
- if (false) {
48
- ///
49
- } else if (variableNode !== null) {
50
- var variable = localContext.findVariableByVariableNode(variableNode);
51
- if (variable !== null) {
52
- var variableDefined = localContext.isVariableDefined(variable);
53
- if (!negated) {
54
- if (variableDefined) {
55
- derivedDefinedAssertionVerified = true;
56
- }
57
- }
58
- if (negated) {
59
- if (!variableDefined) {
60
- derivedDefinedAssertionVerified = true;
61
- }
62
- }
63
- }
64
- } else if (termNode !== null) {
65
- var terms = [], termVerified = (0, _term.default)(termNode, terms, localContext, function() {
66
- var verifiedAhead = true;
67
- return verifiedAhead;
68
- });
69
- if (termVerified) {
70
- var firstTerm = (0, _array.first)(terms), term = firstTerm, termGrounded = localContext.isTermGrounded(term);
71
- if (!negated) {
72
- if (termGrounded) {
73
- derivedDefinedAssertionVerified = true;
74
- }
75
- }
76
- if (negated) {
77
- if (!termGrounded) {
78
- derivedDefinedAssertionVerified = true;
79
- }
80
- }
81
- }
82
- }
83
- if (derivedDefinedAssertionVerified) {
84
- localContext.debug("...verified the derived '".concat(definedAssertionString, "' defined assertion."), definedAssertionNode);
85
- }
86
- }
87
- return derivedDefinedAssertionVerified;
88
- }
89
- function verifyStatedDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
90
- var statedDefinedAssertionVerified = false;
91
- if (!derived) {
92
- var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
93
- localContext.trace("Verifying the stated '".concat(definedAssertionString, "' defined assertion..."), definedAssertionNode);
94
- var intrinsicLevel = localContext.isIntrinsicLevel();
95
- if (intrinsicLevel) {
96
- localContext.debug("The stated '".concat(definedAssertionString, "' defined assertion cannot be verified at intrinsic level."), definedAssertionNode);
97
- } else {
98
- var nonTerminalNode = definedAssertionNode, nonTerminalNodeVerified = _metaLevel.default.verifyNonTerminalNode(nonTerminalNode, localContext, function() {
99
- var verifiedAhead = true;
100
- return verifiedAhead;
101
- });
102
- statedDefinedAssertionVerified = nonTerminalNodeVerified; ///
103
- }
104
- if (statedDefinedAssertionVerified) {
105
- localContext.debug("...verified the stated '".concat(definedAssertionString, "' defined assertion."), definedAssertionNode);
106
- }
107
- }
108
- return statedDefinedAssertionVerified;
109
- }
110
-
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZGVmaW5lZEFzc2VydGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVRlcm0gZnJvbSBcIi4vdGVybVwiO1xuaW1wb3J0IG1ldGFMZXZlbE5vZGVWZXJpZmllciBmcm9tIFwiLi4vdmVyaWZpZXIvbm9kZS9tZXRhTGV2ZWxcIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBpc0Fzc2VydGlvbk5lZ2F0ZWQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3ZlcmlmeVwiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2RlZmluZWRBc3NlcnRpb24vdGVybSFcIiksXG4gICAgICB2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9kZWZpbmVkQXNzZXJ0aW9uL3Rlcm0vdmFyaWFibGUhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG5cbiAgY29uc3QgZGVmaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgY29uc3QgZGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgICB2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbixcbiAgICB2ZXJpZnlTdGF0ZWREZWZpbmVkQXNzZXJ0aW9uXG4gIF07XG5cbiAgZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucy5zb21lKChkZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24pID0+IHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSBkZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgaWYgKGRlZmluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICBpZiAoZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIGRlZmluZWQgYXNzZXJ0aW9uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeURlcml2ZWREZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKGRlcml2ZWQpIHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgZGVyaXZlZCAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVmaW5lZCBhc3NlcnRpb24uLi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uTmVnYXRlZCA9IGlzQXNzZXJ0aW9uTmVnYXRlZChkZWZpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkoZGVmaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIHRlcm1Ob2RlID0gdGVybU5vZGVRdWVyeShkZWZpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgbmVnYXRlZCA9IGRlZmluZWRBc3NlcnRpb25OZWdhdGVkOyAgLy8vXG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB2YXJpYWJsZSA9IGxvY2FsQ29udGV4dC5maW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpO1xuXG4gICAgICBpZiAodmFyaWFibGUgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgdmFyaWFibGVEZWZpbmVkID0gbG9jYWxDb250ZXh0LmlzVmFyaWFibGVEZWZpbmVkKHZhcmlhYmxlKTtcblxuICAgICAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgICAgICBpZiAodmFyaWFibGVEZWZpbmVkKSB7XG4gICAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobmVnYXRlZCkge1xuICAgICAgICAgIGlmICghdmFyaWFibGVEZWZpbmVkKSB7XG4gICAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRlcm1Ob2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB0ZXJtcyA9IFtdLFxuICAgICAgICAgICAgdGVybVZlcmlmaWVkID0gdmVyaWZ5VGVybSh0ZXJtTm9kZSwgdGVybXMsIGxvY2FsQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBpZiAodGVybVZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IGZpcnN0VGVybSA9IGZpcnN0KHRlcm1zKSxcbiAgICAgICAgICAgICAgdGVybSA9IGZpcnN0VGVybSwgLy8vXG4gICAgICAgICAgICAgIHRlcm1Hcm91bmRlZCA9IGxvY2FsQ29udGV4dC5pc1Rlcm1Hcm91bmRlZCh0ZXJtKTtcblxuICAgICAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgICAgICBpZiAodGVybUdyb3VuZGVkKSB7XG4gICAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobmVnYXRlZCkge1xuICAgICAgICAgIGlmICghdGVybUdyb3VuZGVkKSB7XG4gICAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgZGVyaXZlZCAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVmaW5lZCBhc3NlcnRpb24uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZWREZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoIWRlcml2ZWQpIHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgc3RhdGVkICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZWZpbmVkIGFzc2VydGlvbi4uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGNvbnN0IGludHJpbnNpY0xldmVsID0gbG9jYWxDb250ZXh0LmlzSW50cmluc2ljTGV2ZWwoKTtcblxuICAgIGlmIChpbnRyaW5zaWNMZXZlbCkge1xuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGUgc3RhdGVkICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZWZpbmVkIGFzc2VydGlvbiBjYW5ub3QgYmUgdmVyaWZpZWQgYXQgaW50cmluc2ljIGxldmVsLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3Qgbm9uVGVybWluYWxOb2RlID0gZGVmaW5lZEFzc2VydGlvbk5vZGUsIC8vL1xuICAgICAgICAgICAgbm9uVGVybWluYWxOb2RlVmVyaWZpZWQgPSBtZXRhTGV2ZWxOb2RlVmVyaWZpZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgbG9jYWxDb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgIHN0YXRlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAoc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSBzdGF0ZWQgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIGRlZmluZWQgYXNzZXJ0aW9uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeURlZmluZWRBc3NlcnRpb24iLCJ0ZXJtTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidmFyaWFibGVOb2RlUXVlcnkiLCJkZWZpbmVkQXNzZXJ0aW9uTm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsQ29udGV4dCIsImRlZmluZWRBc3NlcnRpb25WZXJpZmllZCIsImRlZmluZWRBc3NlcnRpb25TdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsImRlZmluZWRBc3NlcnRpb25GdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbiIsInZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb24iLCJzb21lIiwiZGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkIiwiZGVmaW5lZEFzc2VydGlvbk5lZ2F0ZWQiLCJpc0Fzc2VydGlvbk5lZ2F0ZWQiLCJ2YXJpYWJsZU5vZGUiLCJ0ZXJtTm9kZSIsIm5lZ2F0ZWQiLCJ2YXJpYWJsZSIsImZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOb2RlIiwidmFyaWFibGVEZWZpbmVkIiwiaXNWYXJpYWJsZURlZmluZWQiLCJ0ZXJtcyIsInRlcm1WZXJpZmllZCIsInZlcmlmeVRlcm0iLCJ2ZXJpZmllZEFoZWFkIiwiZmlyc3RUZXJtIiwiZmlyc3QiLCJ0ZXJtIiwidGVybUdyb3VuZGVkIiwiaXNUZXJtR3JvdW5kZWQiLCJzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiLCJpbnRyaW5zaWNMZXZlbCIsImlzSW50cmluc2ljTGV2ZWwiLCJub25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsIm1ldGFMZXZlbE5vZGVWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBWUE7OztlQUF3QkE7OzsyREFWRDtnRUFDVztxQkFFWjtxQkFDSTtzQkFDUzs7Ozs7O0FBRW5DLElBQU1DLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQyw0QkFDMUJDLG9CQUFvQkQsSUFBQUEsZ0JBQVMsRUFBQztBQUVyQixTQUFTRix1QkFBdUJJLG9CQUFvQixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsWUFBWTtJQUNyRyxJQUFJQztJQUVKLElBQU1DLHlCQUF5QkYsYUFBYUcsWUFBWSxDQUFDTjtJQUV6REcsYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQXdDLE9BQXZCRix3QkFBdUIsMkJBQXlCTDtJQUVyRixJQUFNUSw0QkFBNEI7UUFDaENDO1FBQ0FDO0tBQ0Q7SUFFRE4sMkJBQTJCSSwwQkFBMEJHLElBQUksQ0FBQyxTQUFDQztRQUN6RCxJQUFNUiwyQkFBMkJRLHlCQUF5Qlosc0JBQXNCQyxhQUFhQyxTQUFTQztRQUV0RyxJQUFJQywwQkFBMEI7WUFDNUIsT0FBTztRQUNUO0lBQ0Y7SUFFQSxJQUFJQSwwQkFBMEI7UUFDNUJELGFBQWFVLEtBQUssQ0FBQyxBQUFDLG9CQUEwQyxPQUF2QlIsd0JBQXVCLHlCQUF1Qkw7SUFDdkY7SUFFQSxPQUFPSTtBQUNUO0FBRUEsU0FBU0ssOEJBQThCVCxvQkFBb0IsRUFBRUMsV0FBVyxFQUFFQyxPQUFPLEVBQUVDLFlBQVk7SUFDN0YsSUFBSVcsa0NBQWtDO0lBRXRDLElBQUlaLFNBQVM7UUFDWCxJQUFNRyx5QkFBeUJGLGFBQWFHLFlBQVksQ0FBQ047UUFFekRHLGFB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
@@ -1,112 +0,0 @@
1
- "use strict";
2
-
3
- import metaLevelNodeVerifier from "../verifier/node/metaLevel";
4
-
5
- import { isAssertionNegated } from "../utilities/verify";
6
- import { nodeQuery, nodesQuery } from "../utilities/query";
7
-
8
- const variableNodeQuery = nodeQuery("/containedAssertion/term/variable!"),
9
- metastatementVariableNodesQuery = nodesQuery("/containedAssertion/statement//variable");
10
-
11
- export default function verifyContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
12
- let containedAssertionVerified;
13
-
14
- const containedAssertionString = localContext.nodeAsString(containedAssertionNode);
15
-
16
- localContext.trace(`Verifying the '${containedAssertionString}' contained assertion...`, containedAssertionNode);
17
-
18
- const containedAssertionFunctions = [
19
- verifyDerivedContainedAssertion,
20
- verifyStatedContainedAssertion
21
- ];
22
-
23
- containedAssertionVerified = containedAssertionFunctions.some((containedAssertionFunction) => {
24
- const containedAssertionVerified = containedAssertionFunction(containedAssertionNode, assignments, derived, localContext);
25
-
26
- if (containedAssertionVerified) {
27
- return true;
28
- }
29
- });
30
-
31
- if (containedAssertionVerified) {
32
- localContext.debug(`...verified the '${containedAssertionString}' contained assertion.`, containedAssertionNode);
33
- }
34
-
35
- return containedAssertionVerified;
36
- }
37
-
38
- function verifyDerivedContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
39
- let derivedContainedAssertionVerified = false;
40
-
41
- if (derived) {
42
- const containedAssertionString = localContext.nodeAsString(containedAssertionNode);
43
-
44
- localContext.trace(`Verifying the derived '${containedAssertionString}' contained assertion...`, containedAssertionNode);
45
-
46
- const containedAssertionNegated = isAssertionNegated(containedAssertionNode),
47
- variableNode = variableNodeQuery(containedAssertionNode),
48
- negated = containedAssertionNegated; ///
49
-
50
- if (false) {
51
- ///
52
- } else if (variableNode !== null) {
53
- const metastatementVariableNodes = metastatementVariableNodesQuery(containedAssertionNode),
54
- variableNodeMatchesMetaArgumentVariableNode = metastatementVariableNodes.some((metastatementVariableNode) => {
55
- const variableNodeMatchesMetaArgumentVariableNode = variableNode.match(metastatementVariableNode);
56
-
57
- if (variableNodeMatchesMetaArgumentVariableNode) {
58
- return true;
59
- }
60
- });
61
-
62
- if (!negated) {
63
- if (variableNodeMatchesMetaArgumentVariableNode) {
64
- derivedContainedAssertionVerified = true;
65
- }
66
- }
67
-
68
- if (negated) {
69
- if (!variableNodeMatchesMetaArgumentVariableNode) {
70
- derivedContainedAssertionVerified = true;
71
- }
72
- }
73
- }
74
-
75
- if (derivedContainedAssertionVerified) {
76
- localContext.debug(`...verified the derived '${containedAssertionString}' contained assertion.`, containedAssertionNode);
77
- }
78
- }
79
-
80
- return derivedContainedAssertionVerified;
81
- }
82
-
83
- function verifyStatedContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
84
- let statedContainedAssertionVerified = false;
85
-
86
- if (!derived) {
87
- const containedAssertionString = localContext.nodeAsString(containedAssertionNode);
88
-
89
- localContext.trace(`Verifying the stated '${containedAssertionString}' contained assertion...`, containedAssertionNode);
90
-
91
- const intrinsicLevel = localContext.isIntrinsicLevel();
92
-
93
- if (intrinsicLevel) {
94
- localContext.debug(`The stated '${containedAssertionString}' contained assertion cannot be verified at intrinsic level.`, containedAssertionNode);
95
- } else {
96
- const nonTerminalNode = containedAssertionNode, ///
97
- nonTerminalNodeVerified = metaLevelNodeVerifier.verifyNonTerminalNode(nonTerminalNode, localContext, () => {
98
- const verifiedAhead = true;
99
-
100
- return verifiedAhead;
101
- });
102
-
103
- statedContainedAssertionVerified = nonTerminalNodeVerified; ///
104
- }
105
-
106
- if (statedContainedAssertionVerified) {
107
- localContext.debug(`...verified the stated '${containedAssertionString}' contained assertion.`, containedAssertionNode);
108
- }
109
- }
110
-
111
- return statedContainedAssertionVerified;
112
- }
@@ -1,137 +0,0 @@
1
- "use strict";
2
-
3
- import verifyTerm from "./term";
4
- import metaLevelNodeVerifier from "../verifier/node/metaLevel";
5
-
6
- import { first } from "../utilities/array";
7
- import { nodeQuery } from "../utilities/query";
8
- import { isAssertionNegated } from "../utilities/verify";
9
-
10
- const termNodeQuery = nodeQuery("/definedAssertion/term!"),
11
- variableNodeQuery = nodeQuery("/definedAssertion/term/variable!");
12
-
13
- export default function verifyDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
14
- let definedAssertionVerified;
15
-
16
- const definedAssertionString = localContext.nodeAsString(definedAssertionNode);
17
-
18
- localContext.trace(`Verifying the '${definedAssertionString}' defined assertion...`, definedAssertionNode);
19
-
20
- const definedAssertionFunctions = [
21
- verifyDerivedDefinedAssertion,
22
- verifyStatedDefinedAssertion
23
- ];
24
-
25
- definedAssertionVerified = definedAssertionFunctions.some((definedAssertionFunction) => {
26
- const definedAssertionVerified = definedAssertionFunction(definedAssertionNode, assignments, derived, localContext);
27
-
28
- if (definedAssertionVerified) {
29
- return true;
30
- }
31
- });
32
-
33
- if (definedAssertionVerified) {
34
- localContext.debug(`...verified the '${definedAssertionString}' defined assertion.`, definedAssertionNode);
35
- }
36
-
37
- return definedAssertionVerified;
38
- }
39
-
40
- function verifyDerivedDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
41
- let derivedDefinedAssertionVerified = false;
42
-
43
- if (derived) {
44
- const definedAssertionString = localContext.nodeAsString(definedAssertionNode);
45
-
46
- localContext.trace(`Verifying the derived '${definedAssertionString}' defined assertion...`, definedAssertionNode);
47
-
48
- const definedAssertionNegated = isAssertionNegated(definedAssertionNode),
49
- variableNode = variableNodeQuery(definedAssertionNode),
50
- termNode = termNodeQuery(definedAssertionNode),
51
- negated = definedAssertionNegated; ///
52
-
53
- if (false) {
54
- ///
55
- } else if (variableNode !== null) {
56
- const variable = localContext.findVariableByVariableNode(variableNode);
57
-
58
- if (variable !== null) {
59
- const variableDefined = localContext.isVariableDefined(variable);
60
-
61
- if (!negated) {
62
- if (variableDefined) {
63
- derivedDefinedAssertionVerified = true;
64
- }
65
- }
66
-
67
- if (negated) {
68
- if (!variableDefined) {
69
- derivedDefinedAssertionVerified = true;
70
- }
71
- }
72
- }
73
- } else if (termNode !== null) {
74
- const terms = [],
75
- termVerified = verifyTerm(termNode, terms, localContext, () => {
76
- const verifiedAhead = true;
77
-
78
- return verifiedAhead;
79
- });
80
-
81
- if (termVerified) {
82
- const firstTerm = first(terms),
83
- term = firstTerm, ///
84
- termGrounded = localContext.isTermGrounded(term);
85
-
86
- if (!negated) {
87
- if (termGrounded) {
88
- derivedDefinedAssertionVerified = true;
89
- }
90
- }
91
-
92
- if (negated) {
93
- if (!termGrounded) {
94
- derivedDefinedAssertionVerified = true;
95
- }
96
- }
97
- }
98
- }
99
-
100
- if (derivedDefinedAssertionVerified) {
101
- localContext.debug(`...verified the derived '${definedAssertionString}' defined assertion.`, definedAssertionNode);
102
- }
103
- }
104
-
105
- return derivedDefinedAssertionVerified;
106
- }
107
-
108
- function verifyStatedDefinedAssertion(definedAssertionNode, assignments, derived, localContext) {
109
- let statedDefinedAssertionVerified = false;
110
-
111
- if (!derived) {
112
- const definedAssertionString = localContext.nodeAsString(definedAssertionNode);
113
-
114
- localContext.trace(`Verifying the stated '${definedAssertionString}' defined assertion...`, definedAssertionNode);
115
-
116
- const intrinsicLevel = localContext.isIntrinsicLevel();
117
-
118
- if (intrinsicLevel) {
119
- localContext.debug(`The stated '${definedAssertionString}' defined assertion cannot be verified at intrinsic level.`, definedAssertionNode);
120
- } else {
121
- const nonTerminalNode = definedAssertionNode, ///
122
- nonTerminalNodeVerified = metaLevelNodeVerifier.verifyNonTerminalNode(nonTerminalNode, localContext, () => {
123
- const verifiedAhead = true;
124
-
125
- return verifiedAhead;
126
- });
127
-
128
- statedDefinedAssertionVerified = nonTerminalNodeVerified; ///
129
- }
130
-
131
- if (statedDefinedAssertionVerified) {
132
- localContext.debug(`...verified the stated '${definedAssertionString}' defined assertion.`, definedAssertionNode);
133
- }
134
- }
135
-
136
- return statedDefinedAssertionVerified;
137
- }