occam-verify-cli 0.0.700 → 0.0.702

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 (84) hide show
  1. package/lib/assignment/equality.js +2 -2
  2. package/lib/assignment/metavariable.js +2 -2
  3. package/lib/assignment/variable.js +2 -2
  4. package/lib/collection.js +44 -6
  5. package/lib/conclusion.js +6 -6
  6. package/lib/consequent.js +4 -4
  7. package/lib/context/file.js +9 -2
  8. package/lib/context/local.js +27 -64
  9. package/lib/context/localMeta.js +8 -1
  10. package/lib/equality.js +20 -4
  11. package/lib/premise.js +9 -9
  12. package/lib/supposition.js +4 -4
  13. package/lib/utilities/collection.js +27 -13
  14. package/lib/verifier/node/statementAsCombinator.js +4 -1
  15. package/lib/verifier/node/termAsConstructor.js +4 -20
  16. package/lib/verifier/nodes/equality.js +169 -0
  17. package/lib/verifier/nodes/metastatementForMetavariable.js +6 -7
  18. package/lib/verifier/nodes/statement.js +12 -4
  19. package/lib/verifier/nodes/statementForMetavariable.js +6 -7
  20. package/lib/verifier/nodes/termForVariable.js +19 -20
  21. package/lib/verify/consequent.js +3 -3
  22. package/lib/verify/derivation.js +28 -6
  23. package/lib/verify/equality.js +9 -4
  24. package/lib/verify/givenType.js +32 -0
  25. package/lib/verify/metastatement.js +3 -3
  26. package/lib/verify/statement/qualified.js +135 -37
  27. package/lib/verify/statement.js +34 -42
  28. package/lib/verify/supposition.js +13 -8
  29. package/lib/verify/suppositions.js +2 -11
  30. package/lib/verify/term.js +25 -59
  31. package/lib/verify/termAndGivenType.js +39 -0
  32. package/lib/verify/termAsGivenVariable.js +36 -0
  33. package/lib/verify/typeAssertion.js +35 -22
  34. package/package.json +1 -1
  35. package/src/assignment/equality.js +2 -2
  36. package/src/assignment/metavariable.js +2 -2
  37. package/src/assignment/variable.js +2 -2
  38. package/src/collection.js +55 -5
  39. package/src/conclusion.js +6 -6
  40. package/src/consequent.js +4 -4
  41. package/src/context/file.js +7 -1
  42. package/src/context/local.js +33 -78
  43. package/src/context/localMeta.js +6 -0
  44. package/src/equality.js +23 -2
  45. package/src/premise.js +10 -10
  46. package/src/supposition.js +3 -3
  47. package/src/utilities/collection.js +31 -11
  48. package/src/verifier/node/statementAsCombinator.js +6 -0
  49. package/src/verifier/node/termAsConstructor.js +5 -26
  50. package/src/verifier/nodes/equality.js +47 -0
  51. package/src/verifier/nodes/metastatementForMetavariable.js +10 -10
  52. package/src/verifier/nodes/statement.js +1 -1
  53. package/src/verifier/nodes/statementForMetavariable.js +10 -10
  54. package/src/verifier/nodes/termForVariable.js +30 -30
  55. package/src/verify/consequent.js +4 -4
  56. package/src/verify/derivation.js +37 -8
  57. package/src/verify/equality.js +12 -3
  58. package/src/verify/{standaloneType.js → givenType.js} +7 -7
  59. package/src/verify/metastatement.js +2 -2
  60. package/src/verify/statement/qualified.js +194 -39
  61. package/src/verify/statement.js +47 -47
  62. package/src/verify/supposition.js +15 -8
  63. package/src/verify/suppositions.js +1 -13
  64. package/src/verify/term.js +26 -62
  65. package/src/verify/termAndGivenType.js +37 -0
  66. package/src/verify/termAsGivenVariable.js +39 -0
  67. package/src/verify/typeAssertion.js +50 -28
  68. package/lib/verifier/nodes/metastatementForMetavariable/conclusion.js +0 -114
  69. package/lib/verifier/nodes/metastatementForMetavariable/premise.js +0 -114
  70. package/lib/verifier/nodes/statementForMetavariable/conclusion.js +0 -114
  71. package/lib/verifier/nodes/statementForMetavariable/premise.js +0 -114
  72. package/lib/verifier/nodes/termForVariable/consequent.js +0 -114
  73. package/lib/verifier/nodes/termForVariable/supposition.js +0 -114
  74. package/lib/verify/standaloneType.js +0 -32
  75. package/lib/verify/termAndStandaloneType.js +0 -39
  76. package/lib/verify/termAsVariableAndStandaloneType.js +0 -39
  77. package/src/verifier/nodes/metastatementForMetavariable/conclusion.js +0 -11
  78. package/src/verifier/nodes/metastatementForMetavariable/premise.js +0 -11
  79. package/src/verifier/nodes/statementForMetavariable/conclusion.js +0 -11
  80. package/src/verifier/nodes/statementForMetavariable/premise.js +0 -11
  81. package/src/verifier/nodes/termForVariable/consequent.js +0 -11
  82. package/src/verifier/nodes/termForVariable/supposition.js +0 -11
  83. package/src/verify/termAndStandaloneType.js +0 -37
  84. package/src/verify/termAsVariableAndStandaloneType.js +0 -38
@@ -1,39 +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 verifyTermAsVariableAndStandaloneType;
9
- }
10
- });
11
- var _standaloneType = /*#__PURE__*/ _interop_require_default(require("../verify/standaloneType"));
12
- var _term = require("../verify/term");
13
- function _interop_require_default(obj) {
14
- return obj && obj.__esModule ? obj : {
15
- default: obj
16
- };
17
- }
18
- function verifyTermAsVariableAndStandaloneType(termNode, typeNode, variables, types, context, verifyAhead) {
19
- var termAsVariableAndStandaloneTypeVerified;
20
- var termString = context.nodeAsString(termNode), typeString = context.nodeAsString(typeNode);
21
- context.trace("Verifying the '".concat(termString, "' term as a variable and the standalone '").concat(typeString, "' type..."), termNode);
22
- var termVerifiedAsVariable = (0, _term.verifyTermAsVariable)(termNode, variables, context, function() {
23
- var verifiedAhead;
24
- var standaloneTypeVerified = (0, _standaloneType.default)(typeNode, types, context, function() {
25
- var verifiedAhead;
26
- verifiedAhead = verifyAhead();
27
- return verifiedAhead;
28
- });
29
- verifiedAhead = standaloneTypeVerified; ///
30
- return verifiedAhead;
31
- });
32
- termAsVariableAndStandaloneTypeVerified = termVerifiedAsVariable; ///
33
- if (termAsVariableAndStandaloneTypeVerified) {
34
- context.debug("...verified the '".concat(termString, "' term as a variable and the standalone '").concat(typeString, "' type."), termNode);
35
- }
36
- return termAsVariableAndStandaloneTypeVerified;
37
- }
38
-
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGVybUFzVmFyaWFibGVBbmRTdGFuZGFsb25lVHlwZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeVN0YW5kYWxvbmVUeXBlIGZyb20gXCIuLi92ZXJpZnkvc3RhbmRhbG9uZVR5cGVcIjtcblxuaW1wb3J0IHsgdmVyaWZ5VGVybUFzVmFyaWFibGUgfSBmcm9tIFwiLi4vdmVyaWZ5L3Rlcm1cIjtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5VGVybUFzVmFyaWFibGVBbmRTdGFuZGFsb25lVHlwZSh0ZXJtTm9kZSwgdHlwZU5vZGUsIHZhcmlhYmxlcywgdHlwZXMsIGNvbnRleHQsIHZlcmlmeUFoZWFkKSB7XG4gIGxldCB0ZXJtQXNWYXJpYWJsZUFuZFN0YW5kYWxvbmVUeXBlVmVyaWZpZWQ7XG5cbiAgY29uc3QgdGVybVN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKSxcbiAgICAgICAgdHlwZVN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKHR5cGVOb2RlKTtcblxuICBjb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIGFzIGEgdmFyaWFibGUgYW5kIHRoZSBzdGFuZGFsb25lICcke3R5cGVTdHJpbmd9JyB0eXBlLi4uYCwgdGVybU5vZGUpO1xuXG4gIGNvbnN0IHRlcm1WZXJpZmllZEFzVmFyaWFibGUgPSB2ZXJpZnlUZXJtQXNWYXJpYWJsZSh0ZXJtTm9kZSwgdmFyaWFibGVzLCBjb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgbGV0IHZlcmlmaWVkQWhlYWQ7XG5cbiAgICAgICAgICBjb25zdCBzdGFuZGFsb25lVHlwZVZlcmlmaWVkID0gdmVyaWZ5U3RhbmRhbG9uZVR5cGUodHlwZU5vZGUsIHR5cGVzLCBjb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICBsZXQgdmVyaWZpZWRBaGVhZDtcblxuICAgICAgICAgICAgdmVyaWZpZWRBaGVhZCA9IHZlcmlmeUFoZWFkKCk7XG5cbiAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgdmVyaWZpZWRBaGVhZCA9IHN0YW5kYWxvbmVUeXBlVmVyaWZpZWQ7ICAvLy9cblxuICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICB9KTtcblxuICB0ZXJtQXNWYXJpYWJsZUFuZFN0YW5kYWxvbmVUeXBlVmVyaWZpZWQgPSB0ZXJtVmVyaWZpZWRBc1ZhcmlhYmxlOyAvLy9cblxuICBpZiAodGVybUFzVmFyaWFibGVBbmRTdGFuZGFsb25lVHlwZVZlcmlmaWVkKSB7XG4gICAgY29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3Rlcm1TdHJpbmd9JyB0ZXJtIGFzIGEgdmFyaWFibGUgYW5kIHRoZSBzdGFuZGFsb25lICcke3R5cGVTdHJpbmd9JyB0eXBlLmAsIHRlcm1Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiB0ZXJtQXNWYXJpYWJsZUFuZFN0YW5kYWxvbmVUeXBlVmVyaWZpZWRcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlUZXJtQXNWYXJpYWJsZUFuZFN0YW5kYWxvbmVUeXBlIiwidGVybU5vZGUiLCJ0eXBlTm9kZSIsInZhcmlhYmxlcyIsInR5cGVzIiwiY29udGV4dCIsInZlcmlmeUFoZWFkIiwidGVybUFzVmFyaWFibGVBbmRTdGFuZGFsb25lVHlwZVZlcmlmaWVkIiwidGVybVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInR5cGVTdHJpbmciLCJ0cmFjZSIsInRlcm1WZXJpZmllZEFzVmFyaWFibGUiLCJ2ZXJpZnlUZXJtQXNWYXJpYWJsZSIsInZlcmlmaWVkQWhlYWQiLCJzdGFuZGFsb25lVHlwZVZlcmlmaWVkIiwidmVyaWZ5U3RhbmRhbG9uZVR5cGUiLCJkZWJ1ZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUF3QkE7OztxRUFKUztvQkFFSTs7Ozs7O0FBRXRCLFNBQVNBLHNDQUFzQ0MsUUFBUSxFQUFFQyxRQUFRLEVBQUVDLFNBQVMsRUFBRUMsS0FBSyxFQUFFQyxPQUFPLEVBQUVDLFdBQVc7SUFDdEgsSUFBSUM7SUFFSixJQUFNQyxhQUFhSCxRQUFRSSxZQUFZLENBQUNSLFdBQ2xDUyxhQUFhTCxRQUFRSSxZQUFZLENBQUNQO0lBRXhDRyxRQUFRTSxLQUFLLENBQUMsQUFBQyxrQkFBdUVELE9BQXRERixZQUFXLDZDQUFzRCxPQUFYRSxZQUFXLGNBQVlUO0lBRTdHLElBQU1XLHlCQUF5QkMsSUFBQUEsMEJBQW9CLEVBQUNaLFVBQVVFLFdBQVdFLFNBQVM7UUFDMUUsSUFBSVM7UUFFSixJQUFNQyx5QkFBeUJDLElBQUFBLHVCQUFvQixFQUFDZCxVQUFVRSxPQUFPQyxTQUFTO1lBQzVFLElBQUlTO1lBRUpBLGdCQUFnQlI7WUFFaEIsT0FBT1E7UUFDVDtRQUVBQSxnQkFBZ0JDLHdCQUF5QixHQUFHO1FBRTVDLE9BQU9EO0lBQ1Q7SUFFTlAsMENBQTBDSyx3QkFBd0IsR0FBRztJQUVyRSxJQUFJTCx5Q0FBeUM7UUFDM0NGLFFBQVFZLEtBQUssQ0FBQyxBQUFDLG9CQUF5RVAsT0FBdERGLFlBQVcsNkNBQXNELE9BQVhFLFlBQVcsWUFBVVQ7SUFDL0c7SUFFQSxPQUFPTTtBQUNUIn0=
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- import MetastatementForMetavariableNodesVerifier from "../../../verifier/nodes/metastatementForMetavariable";
4
-
5
- class ConclusionMetastatementForMetavariableNodesVerifier extends MetastatementForMetavariableNodesVerifier {
6
- static createSubstitutions = false;
7
- }
8
-
9
- const conclusionMetastatementForMetavariableNodesVerifier = new ConclusionMetastatementForMetavariableNodesVerifier();
10
-
11
- export default conclusionMetastatementForMetavariableNodesVerifier;
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- import MetastatementForMetavariableNodesVerifier from "../../../verifier/nodes/metastatementForMetavariable";
4
-
5
- class PremiseMetastatementForMetavariableNodesVerifier extends MetastatementForMetavariableNodesVerifier {
6
- static createSubstitutions = true;
7
- }
8
-
9
- const premiseMetastatementForMetavariableNodesVerifier = new PremiseMetastatementForMetavariableNodesVerifier();
10
-
11
- export default premiseMetastatementForMetavariableNodesVerifier;
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- import StatementForMetavariableNodesVerifier from "../../../verifier/nodes/statementForMetavariable";
4
-
5
- class ConclusionStatementForMetavariableNodesVerifier extends StatementForMetavariableNodesVerifier {
6
- static createSubstitutions = false;
7
- }
8
-
9
- const conclusionStatementForMetavariableNodesVerifier = new ConclusionStatementForMetavariableNodesVerifier();
10
-
11
- export default conclusionStatementForMetavariableNodesVerifier;
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- import StatementForMetavariableNodesVerifier from "../../../verifier/nodes/statementForMetavariable";
4
-
5
- class PremiseStatementForMetavariableNodesVerifier extends StatementForMetavariableNodesVerifier {
6
- static createSubstitutions = true;
7
- }
8
-
9
- const premiseStatementForMetavariableNodesVerifier = new PremiseStatementForMetavariableNodesVerifier();
10
-
11
- export default premiseStatementForMetavariableNodesVerifier;
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- import TermForVariableNodesVerifier from "../../../verifier/nodes/termForVariable";
4
-
5
- class ConsequentTermForVariableNodesVerifier extends TermForVariableNodesVerifier {
6
- static createSubstitutions = false;
7
- }
8
-
9
- const consequentTermForVariableNodesVerifier = new ConsequentTermForVariableNodesVerifier();
10
-
11
- export default consequentTermForVariableNodesVerifier;
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- import TermForVariableNodesVerifier from "../../../verifier/nodes/termForVariable";
4
-
5
- class SuppositionTermForVariableNodesVerifier extends TermForVariableNodesVerifier {
6
- static createSubstitutions = true;
7
- }
8
-
9
- const suppositionTermForVariableNodesVerifier = new SuppositionTermForVariableNodesVerifier();
10
-
11
- export default suppositionTermForVariableNodesVerifier;
@@ -1,37 +0,0 @@
1
- "use strict";
2
-
3
- import verifyTerm from "../verify/term";
4
- import verifyStandaloneType from "../verify/standaloneType";
5
-
6
- export default function verifyTermAndStandaloneType(termNode, typeNode, terms, types, context, verifyAhead) {
7
- let termAndStandaloneTypeVerified;
8
-
9
- const termString = context.nodeAsString(termNode),
10
- typeString = context.nodeAsString(typeNode);
11
-
12
- context.trace(`Verifying the '${termString}' term and the standalone '${typeString}' type...`, termNode);
13
-
14
- const termVerified = verifyTerm(termNode, terms, context, () => {
15
- let verifiedAhead;
16
-
17
- const standaloneTypeVerified = verifyStandaloneType(typeNode, types, context, () => {
18
- let verifiedAhead;
19
-
20
- verifiedAhead = verifyAhead();
21
-
22
- return verifiedAhead;
23
- });
24
-
25
- verifiedAhead = standaloneTypeVerified; ///
26
-
27
- return verifiedAhead;
28
- });
29
-
30
- termAndStandaloneTypeVerified = termVerified; ///
31
-
32
- if (termAndStandaloneTypeVerified) {
33
- context.debug(`...verified the '${termString}' term and the standalone '${typeString}' type.`, termNode);
34
- }
35
-
36
- return termAndStandaloneTypeVerified
37
- }
@@ -1,38 +0,0 @@
1
- "use strict";
2
-
3
- import verifyStandaloneType from "../verify/standaloneType";
4
-
5
- import { verifyTermAsVariable } from "../verify/term";
6
-
7
- export default function verifyTermAsVariableAndStandaloneType(termNode, typeNode, variables, types, context, verifyAhead) {
8
- let termAsVariableAndStandaloneTypeVerified;
9
-
10
- const termString = context.nodeAsString(termNode),
11
- typeString = context.nodeAsString(typeNode);
12
-
13
- context.trace(`Verifying the '${termString}' term as a variable and the standalone '${typeString}' type...`, termNode);
14
-
15
- const termVerifiedAsVariable = verifyTermAsVariable(termNode, variables, context, () => {
16
- let verifiedAhead;
17
-
18
- const standaloneTypeVerified = verifyStandaloneType(typeNode, types, context, () => {
19
- let verifiedAhead;
20
-
21
- verifiedAhead = verifyAhead();
22
-
23
- return verifiedAhead;
24
- });
25
-
26
- verifiedAhead = standaloneTypeVerified; ///
27
-
28
- return verifiedAhead;
29
- });
30
-
31
- termAsVariableAndStandaloneTypeVerified = termVerifiedAsVariable; ///
32
-
33
- if (termAsVariableAndStandaloneTypeVerified) {
34
- context.debug(`...verified the '${termString}' term as a variable and the standalone '${typeString}' type.`, termNode);
35
- }
36
-
37
- return termAsVariableAndStandaloneTypeVerified
38
- }