occam-verify-cli 0.0.877 → 0.0.878
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/assignment/metaEquality.js +62 -0
- package/lib/context/file.js +12 -4
- package/lib/context/local.js +7 -1
- package/lib/context/localMeta.js +40 -13
- package/lib/metaEquality.js +101 -0
- package/lib/utilities/assignments.js +3 -3
- package/lib/utilities/metaEquivalences.js +15 -0
- package/lib/verify/context.js +34 -0
- package/lib/verify/declaration.js +47 -0
- package/lib/verify/judgement.js +15 -9
- package/lib/verify/metaEquality.js +69 -0
- package/lib/verify/metastatement/qualified.js +2 -2
- package/lib/verify/metastatement/unqualified.js +2 -2
- package/lib/verify/metastatement.js +24 -8
- package/lib/verify/premise.js +6 -4
- package/lib/verify/ruleDerivation.js +16 -3
- package/package.json +2 -2
- package/src/assignment/metaEquality.js +30 -0
- package/src/context/file.js +10 -3
- package/src/context/local.js +2 -0
- package/src/context/localMeta.js +41 -15
- package/src/metaEquality.js +84 -0
- package/src/utilities/assignments.js +2 -2
- package/src/utilities/metaEquivalences.js +5 -0
- package/src/verify/context.js +30 -0
- package/src/verify/declaration.js +52 -0
- package/src/verify/judgement.js +13 -6
- package/src/verify/metaEquality.js +83 -0
- package/src/verify/metastatement/qualified.js +4 -4
- package/src/verify/metastatement/unqualified.js +4 -4
- package/src/verify/metastatement.js +33 -7
- package/src/verify/premise.js +7 -4
- package/src/verify/ruleDerivation.js +24 -5
|
@@ -27,7 +27,7 @@ function verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, assignment
|
|
|
27
27
|
unqualifiedMetastatementVerified = metastatementMatches; ///
|
|
28
28
|
}
|
|
29
29
|
if (!unqualifiedMetastatementVerified) {
|
|
30
|
-
var metastatementVerified = (0, _metastatement.default)(metastatementNode, derived, localMetaContext, function() {
|
|
30
|
+
var metastatementVerified = (0, _metastatement.default)(metastatementNode, assignments, derived, localMetaContext, function() {
|
|
31
31
|
var verifiedAhead = true;
|
|
32
32
|
return verifiedAhead;
|
|
33
33
|
});
|
|
@@ -40,4 +40,4 @@ function verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, assignment
|
|
|
40
40
|
return unqualifiedMetastatementVerified;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC91bnF1YWxpZmllZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeU1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uLy4uL3ZlcmlmeS9tZXRhc3RhdGVtZW50XCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgbWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKG1ldGFzdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFN0cmluZyA9IGxvY2FsTWV0YUNvbnRleHQubm9kZUFzU3RyaW5nKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGxvY2FsTWV0YUNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7bWV0YXN0YXRlbWVudFN0cmluZ30nIHVucXVhbGlmaWVkIG1ldGFzdGF0ZW1lbnQuLi5gLCB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGlmIChkZXJpdmVkKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50TWF0Y2hlcyA9IGxvY2FsTWV0YUNvbnRleHQubWF0Y2hNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQgPSBtZXRhc3RhdGVtZW50TWF0Y2hlczsgIC8vL1xuICAgIH1cblxuICAgIGlmICghdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeU1ldGFzdGF0ZW1lbnQobWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0LCAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHZlcmlmaWVkQWhlYWQgPSB0cnVlO1xuXG4gICAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gbWV0YXN0YXRlbWVudFZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgdW5xdWFsaWZpZWQgbWV0YXN0YXRlbWVudC5gLCB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJhc3NpZ25tZW50cyIsImRlcml2ZWQiLCJsb2NhbE1ldGFDb250ZXh0IiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFzdGF0ZW1lbnRTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsIm1ldGFzdGF0ZW1lbnRNYXRjaGVzIiwibWF0Y2hNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5TWV0YXN0YXRlbWVudCIsInZlcmlmaWVkQWhlYWQiLCJkZWJ1ZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBUUE7OztlQUF3QkE7OztvRUFOUTtxQkFFTjs7Ozs7O0FBRTFCLElBQU1DLHlCQUF5QkMsSUFBQUEsZ0JBQVMsRUFBQztBQUUxQixTQUFTRiwrQkFBK0JHLDRCQUE0QixFQUFFQyxXQUFXLEVBQUVDLE9BQU8sRUFBRUMsZ0JBQWdCO0lBQ3pILElBQUlDLG1DQUFtQztJQUV2QyxJQUFNQyxvQkFBb0JQLHVCQUF1QkU7SUFFakQsSUFBSUssc0JBQXNCLE1BQU07UUFDOUIsSUFBTUMsc0JBQXNCSCxpQkFBaUJJLFlBQVksQ0FBQ0Y7UUFFMURGLGlCQUFpQkssS0FBSyxDQUFDLEFBQUMsa0JBQXFDLE9BQXBCRixxQkFBb0IsbUNBQWlDTjtRQUU5RixJQUFJRSxTQUFTO1lBQ1gsSUFBTU8sdUJBQXVCTixpQkFBaUJPLGtCQUFrQixDQUFDTDtZQUVqRUQsbUNBQW1DSyxzQkFBdUIsR0FBRztRQUMvRDtRQUVBLElBQUksQ0FBQ0wsa0NBQWtDO1lBQ3JDLElBQU1PLHdCQUF3QkMsSUFBQUEsc0JBQW1CLEVBQUNQLG1CQUFtQkosYUFBYUMsU0FBU0Msa0JBQWtCO2dCQUNyRyxJQUFNVSxnQkFBZ0I7Z0JBRXRCLE9BQU9BO1lBQ1Q7WUFFTlQsbUNBQW1DTyx1QkFBdUIsR0FBRztRQUMvRDtRQUVBLElBQUlQLGtDQUFrQztZQUNwQ0QsaUJBQWlCVyxLQUFLLENBQUMsQUFBQyxvQkFBdUMsT0FBcEJSLHFCQUFvQixpQ0FBK0JOO1FBQ2hHO0lBQ0Y7SUFFQSxPQUFPSTtBQUNUIn0=
|
|
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "default", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
var _judgement = /*#__PURE__*/ _interop_require_default(require("../verify/judgement"));
|
|
12
|
+
var _metaEquality = /*#__PURE__*/ _interop_require_default(require("../verify/metaEquality"));
|
|
12
13
|
var _metastatement = /*#__PURE__*/ _interop_require_default(require("../verifier/node/metastatement"));
|
|
13
14
|
var _query = require("../utilities/query");
|
|
14
15
|
function _interop_require_default(obj) {
|
|
@@ -16,17 +17,18 @@ function _interop_require_default(obj) {
|
|
|
16
17
|
default: obj
|
|
17
18
|
};
|
|
18
19
|
}
|
|
19
|
-
var judgementNodeQuery = (0, _query.nodeQuery)("/metastatement/judgement!");
|
|
20
|
-
function verifyMetastatement(metastatementNode, derived, localMetaContext) {
|
|
20
|
+
var judgementNodeQuery = (0, _query.nodeQuery)("/metastatement/judgement!"), metaEqualityNodeQuery = (0, _query.nodeQuery)("/metastatement/metaEquality!");
|
|
21
|
+
function verifyMetastatement(metastatementNode, assignments, derived, localMetaContext) {
|
|
21
22
|
var metastatementVerified;
|
|
22
23
|
var metastatementString = localMetaContext.nodeAsString(metastatementNode);
|
|
23
24
|
localMetaContext.trace("Verifying the '".concat(metastatementString, "' metastatement..."), metastatementNode);
|
|
24
25
|
var verifyMetaStatementFunctions = [
|
|
26
|
+
verifyMetastatementAsMetaEquality,
|
|
25
27
|
verifyMetastatementAsJudgement,
|
|
26
28
|
verifyMetastatementAsIs
|
|
27
29
|
];
|
|
28
30
|
metastatementVerified = verifyMetaStatementFunctions.some(function(verifyStatementFunction) {
|
|
29
|
-
var metastatementVerified = verifyStatementFunction(metastatementNode, derived, localMetaContext);
|
|
31
|
+
var metastatementVerified = verifyStatementFunction(metastatementNode, assignments, derived, localMetaContext);
|
|
30
32
|
if (metastatementVerified) {
|
|
31
33
|
return true;
|
|
32
34
|
}
|
|
@@ -40,7 +42,21 @@ Object.assign(_metastatement.default, {
|
|
|
40
42
|
verifyMetastatement: verifyMetastatement
|
|
41
43
|
});
|
|
42
44
|
var _default = verifyMetastatement;
|
|
43
|
-
function
|
|
45
|
+
function verifyMetastatementAsMetaEquality(metastatementNode, assignments, derived, localMetaContext) {
|
|
46
|
+
var metastatementVerifiedAsMetaEquality = false;
|
|
47
|
+
var metaEqualityNode = metaEqualityNodeQuery(metastatementNode);
|
|
48
|
+
if (metaEqualityNode !== null) {
|
|
49
|
+
var metastatementString = localMetaContext.nodeAsString(metastatementNode);
|
|
50
|
+
localMetaContext.trace("Verifying the '".concat(metastatementString, "' metastatement as a meta-equality..."), metastatementNode);
|
|
51
|
+
var metaEqualityVerified = (0, _metaEquality.default)(metaEqualityNode, assignments, derived, localMetaContext);
|
|
52
|
+
metastatementVerifiedAsMetaEquality = metaEqualityVerified; ///
|
|
53
|
+
if (metastatementVerifiedAsMetaEquality) {
|
|
54
|
+
localMetaContext.debug("...verified the '".concat(metastatementString, "' metastatement as a meta-equality."), metastatementNode);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return metastatementVerifiedAsMetaEquality;
|
|
58
|
+
}
|
|
59
|
+
function verifyMetastatementAsJudgement(metastatementNode, assignments, derived, localMetaContext) {
|
|
44
60
|
var metastatementVerifiedAsJudgement = false;
|
|
45
61
|
var judgementNode = judgementNodeQuery(metastatementNode);
|
|
46
62
|
if (judgementNode !== null) {
|
|
@@ -54,10 +70,10 @@ function verifyMetastatementAsJudgement(metastatementNode, derived, localMetaCon
|
|
|
54
70
|
}
|
|
55
71
|
return metastatementVerifiedAsJudgement;
|
|
56
72
|
}
|
|
57
|
-
function verifyMetastatementAsIs(metastatementNode, derived, localMetaContext) {
|
|
73
|
+
function verifyMetastatementAsIs(metastatementNode, assignments, derived, localMetaContext) {
|
|
58
74
|
var metastatementVerifiedAsIs = false;
|
|
59
|
-
var judgementNode = judgementNodeQuery(metastatementNode);
|
|
60
|
-
if (judgementNode === null) {
|
|
75
|
+
var judgementNode = judgementNodeQuery(metastatementNode), metaEqualityNode = metaEqualityNodeQuery(metastatementNode);
|
|
76
|
+
if (judgementNode === null && metaEqualityNode === null) {
|
|
61
77
|
var metastatementString = localMetaContext.nodeAsString(metastatementNode);
|
|
62
78
|
localMetaContext.trace("Verifying the '".concat(metastatementString, "' metastatement as is..."), metastatementNode);
|
|
63
79
|
var nonTerminalNode = metastatementNode, nonTerminalNodeVerified = _metastatement.default.verifyNonTerminalNode(nonTerminalNode, localMetaContext, function() {
|
|
@@ -72,4 +88,4 @@ function verifyMetastatementAsIs(metastatementNode, derived, localMetaContext) {
|
|
|
72
88
|
return metastatementVerifiedAsIs;
|
|
73
89
|
}
|
|
74
90
|
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvbWV0YXN0YXRlbWVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHZlcmlmeUp1ZGdlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L2p1ZGdlbWVudFwiO1xuaW1wb3J0IHZlcmlmeU1ldGFFcXVhbGl0eSBmcm9tIFwiLi4vdmVyaWZ5L21ldGFFcXVhbGl0eVwiO1xuaW1wb3J0IG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIgZnJvbSBcIi4uL3ZlcmlmaWVyL25vZGUvbWV0YXN0YXRlbWVudFwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGp1ZGdlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9tZXRhc3RhdGVtZW50L2p1ZGdlbWVudCFcIiksXG4gICAgICBtZXRhRXF1YWxpdHlOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvbWV0YXN0YXRlbWVudC9tZXRhRXF1YWxpdHkhXCIpO1xuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhc3RhdGVtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgbWV0YXN0YXRlbWVudFZlcmlmaWVkO1xuXG4gIGNvbnN0IG1ldGFzdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudC4uLmAsIG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBjb25zdCB2ZXJpZnlNZXRhU3RhdGVtZW50RnVuY3Rpb25zID0gW1xuICAgIHZlcmlmeU1ldGFzdGF0ZW1lbnRBc01ldGFFcXVhbGl0eSxcbiAgICB2ZXJpZnlNZXRhc3RhdGVtZW50QXNKdWRnZW1lbnQsXG4gICAgdmVyaWZ5TWV0YXN0YXRlbWVudEFzSXNcbiAgXTtcblxuICBtZXRhc3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlNZXRhU3RhdGVtZW50RnVuY3Rpb25zLnNvbWUoKHZlcmlmeVN0YXRlbWVudEZ1bmN0aW9uKSA9PiB7XG4gICAgY29uc3QgbWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5U3RhdGVtZW50RnVuY3Rpb24obWV0YXN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgIGlmIChtZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgaWYgKG1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudC5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG4gIH1cblxuICByZXR1cm4gbWV0YXN0YXRlbWVudFZlcmlmaWVkO1xufVxuXG5PYmplY3QuYXNzaWduKG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIsIHtcbiAgdmVyaWZ5TWV0YXN0YXRlbWVudFxufSk7XG5cbmV4cG9ydCBkZWZhdWx0IHZlcmlmeU1ldGFzdGF0ZW1lbnQ7XG5cbmZ1bmN0aW9uIHZlcmlmeU1ldGFzdGF0ZW1lbnRBc01ldGFFcXVhbGl0eShtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzTWV0YUVxdWFsaXR5ID0gZmFsc2U7XG5cbiAgY29uc3QgbWV0YUVxdWFsaXR5Tm9kZSA9IG1ldGFFcXVhbGl0eU5vZGVRdWVyeShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKG1ldGFFcXVhbGl0eU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBtZXRhc3RhdGVtZW50U3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBhIG1ldGEtZXF1YWxpdHkuLi5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zdCBtZXRhRXF1YWxpdHlWZXJpZmllZCA9IHZlcmlmeU1ldGFFcXVhbGl0eShtZXRhRXF1YWxpdHlOb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGFFcXVhbGl0eSA9IG1ldGFFcXVhbGl0eVZlcmlmaWVkOyAgLy8vXG5cbiAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkQXNNZXRhRXF1YWxpdHkpIHtcbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBhIG1ldGEtZXF1YWxpdHkuYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc01ldGFFcXVhbGl0eTtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5TWV0YXN0YXRlbWVudEFzSnVkZ2VtZW50KG1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgbWV0YXN0YXRlbWVudFZlcmlmaWVkQXNKdWRnZW1lbnQgPSBmYWxzZTtcblxuICBjb25zdCBqdWRnZW1lbnROb2RlID0ganVkZ2VtZW50Tm9kZVF1ZXJ5KG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICBpZiAoanVkZ2VtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnRTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBsb2NhbE1ldGFDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50IGFzIGEganVkZ2VtZW50Li4uYCwgbWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgY29uc3QganVkZ2VtZW50VmVyaWZpZWQgPSB2ZXJpZnlKdWRnZW1lbnQoanVkZ2VtZW50Tm9kZSwgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0p1ZGdlbWVudCA9IGp1ZGdlbWVudFZlcmlmaWVkOyAgLy8vXG5cbiAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkQXNKdWRnZW1lbnQpIHtcbiAgICAgIGxvY2FsTWV0YUNvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBhIGp1ZGdlbWVudC5gLCBtZXRhc3RhdGVtZW50Tm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzSnVkZ2VtZW50O1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhc3RhdGVtZW50QXNJcyhtZXRhc3RhdGVtZW50Tm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IG1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzSXMgPSBmYWxzZTtcblxuICBjb25zdCBqdWRnZW1lbnROb2RlID0ganVkZ2VtZW50Tm9kZVF1ZXJ5KG1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgbWV0YUVxdWFsaXR5Tm9kZSA9IG1ldGFFcXVhbGl0eU5vZGVRdWVyeShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgaWYgKChqdWRnZW1lbnROb2RlID09PSBudWxsKSAmJiAobWV0YUVxdWFsaXR5Tm9kZSA9PT0gbnVsbCkpIHtcbiAgICBjb25zdCBtZXRhc3RhdGVtZW50U3RyaW5nID0gbG9jYWxNZXRhQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXN0YXRlbWVudE5vZGUpO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHttZXRhc3RhdGVtZW50U3RyaW5nfScgbWV0YXN0YXRlbWVudCBhcyBpcy4uLmAsIG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlLCAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVWZXJpZmllZCA9IG1ldGFzdGF0ZW1lbnROb2RlVmVyaWZpZXIudmVyaWZ5Tm9uVGVybWluYWxOb2RlKG5vblRlcm1pbmFsTm9kZSwgbG9jYWxNZXRhQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmVyaWZpZWRBaGVhZCA9IHRydWU7XG5cbiAgICAgICAgICAgIHJldHVybiB2ZXJpZmllZEFoZWFkO1xuICAgICAgICAgIH0pO1xuXG4gICAgbWV0YXN0YXRlbWVudFZlcmlmaWVkQXNJcyA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAgLy8vXG5cbiAgICBpZiAobWV0YXN0YXRlbWVudFZlcmlmaWVkQXNJcykge1xuICAgICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGFzdGF0ZW1lbnRTdHJpbmd9JyBtZXRhc3RhdGVtZW50IGFzIGlzLmAsIG1ldGFzdGF0ZW1lbnROb2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWV0YXN0YXRlbWVudFZlcmlmaWVkQXNJcztcbn1cbiJdLCJuYW1lcyI6WyJqdWRnZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJtZXRhRXF1YWxpdHlOb2RlUXVlcnkiLCJ2ZXJpZnlNZXRhc3RhdGVtZW50IiwibWV0YXN0YXRlbWVudE5vZGUiLCJhc3NpZ25tZW50cyIsImRlcml2ZWQiLCJsb2NhbE1ldGFDb250ZXh0IiwibWV0YXN0YXRlbWVudFZlcmlmaWVkIiwibWV0YXN0YXRlbWVudFN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidmVyaWZ5TWV0YVN0YXRlbWVudEZ1bmN0aW9ucyIsInZlcmlmeU1ldGFzdGF0ZW1lbnRBc01ldGFFcXVhbGl0eSIsInZlcmlmeU1ldGFzdGF0ZW1lbnRBc0p1ZGdlbWVudCIsInZlcmlmeU1ldGFzdGF0ZW1lbnRBc0lzIiwic29tZSIsInZlcmlmeVN0YXRlbWVudEZ1bmN0aW9uIiwiZGVidWciLCJPYmplY3QiLCJhc3NpZ24iLCJtZXRhc3RhdGVtZW50Tm9kZVZlcmlmaWVyIiwibWV0YXN0YXRlbWVudFZlcmlmaWVkQXNNZXRhRXF1YWxpdHkiLCJtZXRhRXF1YWxpdHlOb2RlIiwibWV0YUVxdWFsaXR5VmVyaWZpZWQiLCJ2ZXJpZnlNZXRhRXF1YWxpdHkiLCJtZXRhc3RhdGVtZW50VmVyaWZpZWRBc0p1ZGdlbWVudCIsImp1ZGdlbWVudE5vZGUiLCJqdWRnZW1lbnRWZXJpZmllZCIsInZlcmlmeUp1ZGdlbWVudCIsIm1ldGFzdGF0ZW1lbnRWZXJpZmllZEFzSXMiLCJub25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGVWZXJpZmllZCIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsInZlcmlmaWVkQWhlYWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQTJDQTs7O2VBQUE7OztnRUF6QzRCO21FQUNHO29FQUNPO3FCQUVaOzs7Ozs7QUFFMUIsSUFBTUEscUJBQXFCQyxJQUFBQSxnQkFBUyxFQUFDLDhCQUMvQkMsd0JBQXdCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRXhDLFNBQVNFLG9CQUFvQkMsaUJBQWlCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxnQkFBZ0I7SUFDcEYsSUFBSUM7SUFFSixJQUFNQyxzQkFBc0JGLGlCQUFpQkcsWUFBWSxDQUFDTjtJQUUxREcsaUJBQWlCSSxLQUFLLENBQUMs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
|
package/lib/verify/premise.js
CHANGED
|
@@ -12,6 +12,7 @@ var _premise = /*#__PURE__*/ _interop_require_default(require("../premise"));
|
|
|
12
12
|
var _metaproof = /*#__PURE__*/ _interop_require_default(require("../step/metaproof"));
|
|
13
13
|
var _unqualified = /*#__PURE__*/ _interop_require_default(require("../verify/metastatement/unqualified"));
|
|
14
14
|
var _query = require("../utilities/query");
|
|
15
|
+
var _assignments = require("../utilities/assignments");
|
|
15
16
|
function _interop_require_default(obj) {
|
|
16
17
|
return obj && obj.__esModule ? obj : {
|
|
17
18
|
default: obj
|
|
@@ -24,15 +25,16 @@ function verifyPremise(premiseNode, premises, localMetaContext) {
|
|
|
24
25
|
localMetaContext.trace("Verifying the '".concat(premiseString, "' premise..."), premiseNode);
|
|
25
26
|
var derived = false, assignments = [], unqualifiedMetastatementNode = unqualifiedMetastatementNodeQuery(premiseNode), unqualifiedMetastatementVerified = (0, _unqualified.default)(unqualifiedMetastatementNode, assignments, derived, localMetaContext);
|
|
26
27
|
if (unqualifiedMetastatementVerified) {
|
|
28
|
+
var assignmentAssigned = (0, _assignments.assignAssignment)(assignments, localMetaContext);
|
|
29
|
+
premiseVerified = assignmentAssigned; ///
|
|
30
|
+
}
|
|
31
|
+
if (premiseVerified) {
|
|
27
32
|
var metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode), metaproofStep = _metaproof.default.fromMetastatementNode(metastatementNode), premise = _premise.default.fromMetastatementNode(metastatementNode);
|
|
28
33
|
premises.push(premise);
|
|
29
34
|
localMetaContext.addMetaproofStep(metaproofStep);
|
|
30
|
-
premiseVerified = true;
|
|
31
|
-
}
|
|
32
|
-
if (premiseVerified) {
|
|
33
35
|
localMetaContext.debug("...verified the '".concat(premiseString, "' premise."), premiseNode);
|
|
34
36
|
}
|
|
35
37
|
return premiseVerified;
|
|
36
38
|
}
|
|
37
39
|
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJlbWlzZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IFByZW1pc2UgZnJvbSBcIi4uL3ByZW1pc2VcIjtcbmltcG9ydCBNZXRhcHJvb2ZTdGVwIGZyb20gXCIuLi9zdGVwL21ldGFwcm9vZlwiO1xuaW1wb3J0IHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L21ldGFzdGF0ZW1lbnQvdW5xdWFsaWZpZWRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgYXNzaWduQXNzaWdubWVudCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXNzaWdubWVudHNcIjtcblxuY29uc3QgbWV0YXN0YXRlbWVudE5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIiksXG4gICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcHJlbWlzZS91bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlQcmVtaXNlKHByZW1pc2VOb2RlLCBwcmVtaXNlcywgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgcHJlbWlzZVZlcmlmaWVkO1xuXG4gIGNvbnN0IHByZW1pc2VTdHJpbmcgPSBsb2NhbE1ldGFDb250ZXh0Lm5vZGVBc1N0cmluZyhwcmVtaXNlTm9kZSk7XG5cbiAgbG9jYWxNZXRhQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtwcmVtaXNlU3RyaW5nfScgcHJlbWlzZS4uLmAsIHByZW1pc2VOb2RlKTtcblxuICBjb25zdCBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgIGFzc2lnbm1lbnRzID0gW10sXG4gICAgICAgIHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkocHJlbWlzZU5vZGUpLFxuICAgICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgaWYgKHVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgY29uc3QgYXNzaWdubWVudEFzc2lnbmVkID0gYXNzaWduQXNzaWdubWVudChhc3NpZ25tZW50cywgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBwcmVtaXNlVmVyaWZpZWQgPSBhc3NpZ25tZW50QXNzaWduZWQ7IC8vL1xuICB9XG5cbiAgaWYgKHByZW1pc2VWZXJpZmllZCkge1xuICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICBtZXRhcHJvb2ZTdGVwID0gTWV0YXByb29mU3RlcC5mcm9tTWV0YXN0YXRlbWVudE5vZGUobWV0YXN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIHByZW1pc2UgPSBQcmVtaXNlLmZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBwcmVtaXNlcy5wdXNoKHByZW1pc2UpO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC5hZGRNZXRhcHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApO1xuXG4gICAgbG9jYWxNZXRhQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3ByZW1pc2VTdHJpbmd9JyBwcmVtaXNlLmAsIHByZW1pc2VOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBwcmVtaXNlVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UHJlbWlzZSIsIm1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJwcmVtaXNlTm9kZSIsInByZW1pc2VzIiwibG9jYWxNZXRhQ29udGV4dCIsInByZW1pc2VWZXJpZmllZCIsInByZW1pc2VTdHJpbmciLCJub2RlQXNTdHJpbmciLCJ0cmFjZSIsImRlcml2ZWQiLCJhc3NpZ25tZW50cyIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUiLCJ1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCIsImFzc2lnbm1lbnRBc3NpZ25lZCIsImFzc2lnbkFzc2lnbm1lbnQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsIm1ldGFwcm9vZlN0ZXAiLCJNZXRhcHJvb2ZTdGVwIiwiZnJvbU1ldGFzdGF0ZW1lbnROb2RlIiwicHJlbWlzZSIsIlByZW1pc2UiLCJwdXNoIiwiYWRkTWV0YXByb29mU3RlcCIsImRlYnVnIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFZQTs7O2VBQXdCQTs7OzhEQVZKO2dFQUNNO2tFQUNpQjtxQkFFakI7MkJBQ087Ozs7OztBQUVqQyxJQUFNQyx5QkFBeUJDLElBQUFBLGdCQUFTLEVBQUMsNkNBQ25DQyxvQ0FBb0NELElBQUFBLGdCQUFTLEVBQUM7QUFFckMsU0FBU0YsY0FBY0ksV0FBVyxFQUFFQyxRQUFRLEVBQUVDLGdCQUFnQjtJQUMzRSxJQUFJQztJQUVKLElBQU1DLGdCQUFnQkYsaUJBQWlCRyxZQUFZLENBQUNMO0lBRXBERSxpQkFBaUJJLEtBQUssQ0FBQyxBQUFDLGtCQUErQixPQUFkRixlQUFjLGlCQUFlSjtJQUV0RSxJQUFNTyxVQUFVLE9BQ1ZDLGNBQWMsRUFBRSxFQUNoQkMsK0JBQStCVixrQ0FBa0NDLGNBQ2pFVSxtQ0FBbUNDLElBQUFBLG9CQUE4QixFQUFDRiw4QkFBOEJELGFBQWFELFNBQVNMO0lBRTVILElBQUlRLGtDQUFrQztRQUNwQyxJQUFNRSxxQkFBcUJDLElBQUFBLDZCQUFnQixFQUFDTCxhQUFhTjtRQUV6REMsa0JBQWtCUyxvQkFBb0IsR0FBRztJQUMzQztJQUVBLElBQUlULGlCQUFpQjtRQUNuQixJQUFNVyxvQkFBb0JqQix1QkFBdUJZLCtCQUMzQ00sZ0JBQWdCQyxrQkFBYSxDQUFDQyxxQkFBcUIsQ0FBQ0gsb0JBQ3BESSxVQUFVQyxnQkFBTyxDQUFDRixxQkFBcUIsQ0FBQ0g7UUFFOUNiLFNBQVNtQixJQUFJLENBQUNGO1FBRWRoQixpQkFBaUJtQixnQkFBZ0IsQ0FBQ047UUFFbENiLGlCQUFpQm9CLEtBQUssQ0FBQyxBQUFDLG9CQUFpQyxPQUFkbEIsZUFBYyxlQUFhSjtJQUN4RTtJQUVBLE9BQU9HO0FBQ1QifQ==
|
|
@@ -13,6 +13,7 @@ var _premises = /*#__PURE__*/ _interop_require_default(require("../verify/premis
|
|
|
13
13
|
var _localMeta = /*#__PURE__*/ _interop_require_default(require("../context/localMeta"));
|
|
14
14
|
var _qualified = /*#__PURE__*/ _interop_require_default(require("../verify/metastatement/qualified"));
|
|
15
15
|
var _unqualified = /*#__PURE__*/ _interop_require_default(require("../verify/metastatement/unqualified"));
|
|
16
|
+
var _assignments = require("../utilities/assignments");
|
|
16
17
|
var _query = require("../utilities/query");
|
|
17
18
|
var _ruleNames = require("../ruleNames");
|
|
18
19
|
function _interop_require_default(obj) {
|
|
@@ -71,7 +72,13 @@ function verifyChild(childNode, localMetaContext) {
|
|
|
71
72
|
}
|
|
72
73
|
case _ruleNames.QUALIFIED_METASTATEMENT_RULE_NAME:
|
|
73
74
|
{
|
|
74
|
-
var
|
|
75
|
+
var qualifiedMetastatementVerified;
|
|
76
|
+
var derived = true, assignments = [], metavariableReferences = true, qualifiedMetastatementNode = childNode; ///
|
|
77
|
+
qualifiedMetastatementVerified = (0, _qualified.default)(qualifiedMetastatementNode, metavariableReferences, assignments, derived, localMetaContext);
|
|
78
|
+
if (qualifiedMetastatementVerified) {
|
|
79
|
+
var assignmentAssigned = (0, _assignments.assignAssignment)(assignments, localMetaContext);
|
|
80
|
+
qualifiedMetastatementVerified = assignmentAssigned; ///
|
|
81
|
+
}
|
|
75
82
|
if (qualifiedMetastatementVerified) {
|
|
76
83
|
var metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode), metaproofStep1 = _metaproof.default.fromMetastatementNode(metastatementNode);
|
|
77
84
|
localMetaContext.addMetaproofStep(metaproofStep1);
|
|
@@ -81,7 +88,13 @@ function verifyChild(childNode, localMetaContext) {
|
|
|
81
88
|
}
|
|
82
89
|
case _ruleNames.UNQUALIFIED_METASTATEMENT_RULE_NAME:
|
|
83
90
|
{
|
|
84
|
-
var
|
|
91
|
+
var unqualifiedMetastatementVerified;
|
|
92
|
+
var derived1 = true, assignments1 = [], unqualifiedMetastatementNode = childNode; ///
|
|
93
|
+
unqualifiedMetastatementVerified = (0, _unqualified.default)(unqualifiedMetastatementNode, assignments1, derived1, localMetaContext);
|
|
94
|
+
if (unqualifiedMetastatementVerified) {
|
|
95
|
+
var assignmentAssigned1 = (0, _assignments.assignAssignment)(assignments1, localMetaContext);
|
|
96
|
+
unqualifiedMetastatementVerified = assignmentAssigned1; ///
|
|
97
|
+
}
|
|
85
98
|
if (unqualifiedMetastatementVerified) {
|
|
86
99
|
var metastatementNode1 = metastatementNodeQuery(unqualifiedMetastatementNode), metaproofStep2 = _metaproof.default.fromMetastatementNode(metastatementNode1);
|
|
87
100
|
localMetaContext.addMetaproofStep(metaproofStep2);
|
|
@@ -93,4 +106,4 @@ function verifyChild(childNode, localMetaContext) {
|
|
|
93
106
|
return childVerified;
|
|
94
107
|
}
|
|
95
108
|
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcnVsZURlcml2YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNZXRhcHJvb2ZTdGVwIGZyb20gXCIuLi9zdGVwL21ldGFwcm9vZlwiO1xuaW1wb3J0IHZlcmlmeVByZW1pc2VzIGZyb20gXCIuLi92ZXJpZnkvcHJlbWlzZXNcIjtcbmltcG9ydCBMb2NhbE1ldGFDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L2xvY2FsTWV0YVwiO1xuaW1wb3J0IHZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhc3RhdGVtZW50L3F1YWxpZmllZFwiO1xuaW1wb3J0IHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L21ldGFzdGF0ZW1lbnQvdW5xdWFsaWZpZWRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuaW1wb3J0IHsgUlVMRV9TVUJQUk9PRl9SVUxFX05BTUUsIFFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSwgVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUgfSBmcm9tIFwiLi4vcnVsZU5hbWVzXCI7XG5cbmNvbnN0IGNoaWxkTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvcnVsZURlcml2YXRpb258cnVsZVN1YkRlcml2YXRpb24vKlwiKSxcbiAgICAgIHByZW1pc2VOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9ydWxlU3VicHJvb2YvcHJlbWlzZVwiKSxcbiAgICAgIG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcXVhbGlmaWVkTWV0YXN0YXRlbWVudHx1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnQvbWV0YXN0YXRlbWVudCFcIiksXG4gICAgICBydWxlU3ViRGVyaXZhdGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9ydWxlU3VicHJvb2YvcnVsZVN1YkRlcml2YXRpb25cIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVJ1bGVEZXJpdmF0aW9uKHJ1bGVEZXJpdmF0aW9uTm9kZSwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgcnVsZURlcml2YXRpb25WZXJpZmllZDtcblxuICBjb25zdCBjaGlsZE5vZGVzID0gY2hpbGROb2Rlc1F1ZXJ5KHJ1bGVEZXJpdmF0aW9uTm9kZSk7XG5cbiAgcnVsZURlcml2YXRpb25WZXJpZmllZCA9IGNoaWxkTm9kZXMuZXZlcnkoKGNoaWxkTm9kZSkgPT4ge1xuICAgIGNvbnN0IGNoaWxkVmVyaWZpZWQgPSB2ZXJpZnlDaGlsZChjaGlsZE5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgaWYgKGNoaWxkVmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHJ1bGVEZXJpdmF0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVJ1bGVTdWJEZXJpdmF0aW9uKHJ1bGVTdWJEZXJpdmF0aW9uTm9kZSwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgcnVsZVN1YkRlcml2YXRpb25WZXJpZmllZDtcblxuICBjb25zdCBjaGlsZE5vZGVzID0gY2hpbGROb2Rlc1F1ZXJ5KHJ1bGVTdWJEZXJpdmF0aW9uTm9kZSk7XG5cbiAgcnVsZVN1YkRlcml2YXRpb25WZXJpZmllZCA9IGNoaWxkTm9kZXMuZXZlcnkoKGNoaWxkTm9kZSkgPT4ge1xuICAgIGNvbnN0IGNoaWxkVmVyaWZpZWQgPSB2ZXJpZnlDaGlsZChjaGlsZE5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgaWYgKGNoaWxkVmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHJ1bGVTdWJEZXJpdmF0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVJ1bGVTdWJwcm9vZihydWxlU3VicHJvb2ZOb2RlLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBydWxlU3VicHJvb2ZWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGxvY2FsTWV0YUNvbnRleHQgPSBMb2NhbE1ldGFDb250ZXh0LmZyb21Mb2NhbE1ldGFDb250ZXh0KGxvY2FsTWV0YUNvbnRleHQpOyAvLy9cblxuICBjb25zdCBwcmVtaXNlcyA9IFtdLFxuICAgICAgICBwcmVtaXNlTm9kZXMgPSBwcmVtaXNlTm9kZXNRdWVyeShydWxlU3VicHJvb2ZOb2RlKSxcbiAgICAgICAgcHJlbWlzZXNWZXJpZmllZCA9IHZlcmlmeVByZW1pc2VzKHByZW1pc2VOb2RlcywgcHJlbWlzZXMsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gIGlmIChwcmVtaXNlc1ZlcmlmaWVkKSB7XG4gICAgY29uc3QgcnVsZVN1YkRlcml2YXRpb25Ob2RlID0gcnVsZVN1YkRlcml2YXRpb25Ob2RlUXVlcnkocnVsZVN1YnByb29mTm9kZSksXG4gICAgICAgICAgcnVsZVN1YkRlcml2YXRpb25WZXJpZmllZCA9IHZlcmlmeVJ1bGVTdWJEZXJpdmF0aW9uKHJ1bGVTdWJEZXJpdmF0aW9uTm9kZSwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICBpZiAocnVsZVN1YkRlcml2YXRpb25WZXJpZmllZCkge1xuICAgICAgcnVsZVN1YnByb29mVmVyaWZpZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBydWxlU3VicHJvb2ZWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5Q2hpbGQoY2hpbGROb2RlLCBsb2NhbE1ldGFDb250ZXh0KSB7XG4gIGxldCBjaGlsZFZlcmlmaWVkO1xuXG4gIGNvbnN0IGNoaWxkTm9kZVJ1bGVOYW1lID0gY2hpbGROb2RlLmdldFJ1bGVOYW1lKCk7XG5cbiAgc3dpdGNoIChjaGlsZE5vZGVSdWxlTmFtZSkge1xuICAgIGNhc2UgUlVMRV9TVUJQUk9PRl9SVUxFX05BTUU6IHtcbiAgICAgIGNvbnN0IHJ1bGVTdWJwcm9vZk5vZGUgPSBjaGlsZE5vZGUsICAvLy9cbiAgICAgICAgICAgIHJ1bGVTdWJwcm9vZlZlcmlmaWVkID0gdmVyaWZ5UnVsZVN1YnByb29mKHJ1bGVTdWJwcm9vZk5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgICBpZiAocnVsZVN1YnByb29mVmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgbWV0YXByb29mU3RlcCA9IE1ldGFwcm9vZlN0ZXAuZnJvbVJ1bGVTdWJwcm9vZk5vZGUocnVsZVN1YnByb29mTm9kZSk7XG5cbiAgICAgICAgbG9jYWxNZXRhQ29udGV4dC5hZGRNZXRhcHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApO1xuXG4gICAgICAgIGNoaWxkVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjYXNlIFFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRToge1xuICAgICAgY29uc3QgZGVyaXZlZCA9IHRydWUsXG4gICAgICAgICAgICBhc3NpZ25tZW50cyA9IFtdLFxuICAgICAgICAgICAgbWV0YXZhcmlhYmxlUmVmZXJlbmNlcyA9IHRydWUsXG4gICAgICAgICAgICBxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IGNoaWxkTm9kZSwgIC8vL1xuICAgICAgICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudChxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgbWV0YXZhcmlhYmxlUmVmZXJlbmNlcywgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IG1ldGFzdGF0ZW1lbnROb2RlID0gbWV0YXN0YXRlbWVudE5vZGVRdWVyeShxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICAgIG1ldGFwcm9vZlN0ZXAgPSBNZXRhcHJvb2ZTdGVwLmZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgICAgbG9jYWxNZXRhQ29udGV4dC5hZGRNZXRhcHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApO1xuXG4gICAgICAgIGNoaWxkVmVyaWZpZWQgPSBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7IC8vL1xuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICB9XG5cbiAgICBjYXNlIFVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FOiB7XG4gICAgICBjb25zdCBkZXJpdmVkID0gdHJ1ZSxcbiAgICAgICAgICAgIGFzc2lnbm1lbnRzID0gZmFsc2UsXG4gICAgICAgICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlID0gY2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICAgIGlmICh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICAgIG1ldGFwcm9vZlN0ZXAgPSBNZXRhcHJvb2ZTdGVwLmZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgICAgbG9jYWxNZXRhQ29udGV4dC5hZGRNZXRhcHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApO1xuXG4gICAgICAgIGNoaWxkVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY2hpbGRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlSdWxlRGVyaXZhdGlvbiIsImNoaWxkTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJwcmVtaXNlTm9kZXNRdWVyeSIsIm1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJydWxlU3ViRGVyaXZhdGlvbk5vZGVRdWVyeSIsInJ1bGVEZXJpdmF0aW9uTm9kZSIsImxvY2FsTWV0YUNvbnRleHQiLCJydWxlRGVyaXZhdGlvblZlcmlmaWVkIiwiY2hpbGROb2RlcyIsImV2ZXJ5IiwiY2hpbGROb2RlIiwiY2hpbGRWZXJpZmllZCIsInZlcmlmeUNoaWxkIiwidmVyaWZ5UnVsZVN1YkRlcml2YXRpb24iLCJydWxlU3ViRGVyaXZhdGlvbk5vZGUiLCJydWxlU3ViRGVyaXZhdGlvblZlcmlmaWVkIiwidmVyaWZ5UnVsZVN1YnByb29mIiwicnVsZVN1YnByb29mTm9kZSIsInJ1bGVTdWJwcm9vZlZlcmlmaWVkIiwiTG9jYWxNZXRhQ29udGV4dCIsImZyb21Mb2NhbE1ldGFDb250ZXh0IiwicHJlbWlzZXMiLCJwcmVtaXNlTm9kZXMiLCJwcmVtaXNlc1ZlcmlmaWVkIiwidmVyaWZ5UHJlbWlzZXMiLCJjaGlsZE5vZGVSdWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiUlVMRV9TVUJQUk9PRl9SVUxFX05BTUUiLCJtZXRhcHJvb2ZTdGVwIiwiTWV0YXByb29mU3RlcCIsImZyb21SdWxlU3VicHJvb2ZOb2RlIiwiYWRkTWV0YXByb29mU3RlcCIsIlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsImRlcml2ZWQiLCJhc3NpZ25tZW50cyIsIm1ldGF2YXJpYWJsZVJlZmVyZW5jZXMiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQiLCJtZXRhc3RhdGVtZW50Tm9kZSIsImZyb21NZXRhc3RhdGVtZW50Tm9kZSIsIlVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5VW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Il0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFnQkE7OztlQUF3QkE7OztnRUFkRTsrREFDQztnRUFDRTtnRUFDWTtrRUFDRTtxQkFFTDt5QkFDMEU7Ozs7OztBQUVoSCxJQUFNQyxrQkFBa0JDLElBQUFBLGlCQUFVLEVBQUMsd0NBQzdCQyxvQkFBb0JELElBQUFBLGlCQUFVLEVBQUMsMEJBQy9CRSx5QkFBeUJDLElBQUFBLGdCQUFTLEVBQUMsb0VBQ25DQyw2QkFBNkJELElBQUFBLGdCQUFTLEVBQUM7QUFFOUIsU0FBU0wscUJBQXFCTyxrQkFBa0IsRUFBRUMsZ0JBQWdCO0lBQy9FLElBQUlDO0lBRUosSUFBTUMsYUFBYVQsZ0JBQWdCTTtJQUVuQ0UseUJBQXlCQyxXQUFXQyxLQUFLLENBQUMsU0FBQ0M7UUFDekMsSUFBTUMsZ0JBQWdCQyxZQUFZRixXQUFXSjtRQUU3QyxJQUFJSyxlQUFlO1lBQ2pCLE9BQU87UUFDVDtJQUNGO0lBRUEsT0FBT0o7QUFDVDtBQUVBLFNBQVNNLHdCQUF3QkMscUJBQXFCLEVBQUVSLGdCQUFnQjtJQUN0RSxJQUFJUztJQUVKLElBQU1QLGFBQWFULGdCQUFnQmU7SUFFbkNDLDRCQUE0QlAsV0FBV0MsS0FBSyxDQUFDLFNBQUNDO1FBQzVDLElBQU1DLGdCQUFnQkMsWUFBWUYsV0FBV0o7UUFFN0MsSUFBSUssZUFBZTtZQUNqQixPQUFPO1FBQ1Q7SUFDRjtJQUVBLE9BQU9JO0FBQ1Q7QUFFQSxTQUFTQyxtQkFBbUJDLGdCQUFnQixFQUFFWCxnQkFBZ0I7SUFDNUQsSUFBSVksdUJBQXVCO0lBRTNCWixtQkFBbUJhLGtCQUFnQixDQUFDQyxvQkFBb0IsQ0FBQ2QsbUJBQW1CLEdBQUc7SUFFL0UsSUFBTWUsV0FBVyxFQUFFLEVBQ2JDLGVBQWVyQixrQkFBa0JnQixtQkFDakNNLG1CQUFtQkMsSUFBQUEsaUJBQWMsRUFBQ0YsY0FBY0QsVUFBVWY7SUFFaEUsSUFBSWlCLGtCQUFrQjtRQUNwQixJQUFNVCx3QkFBd0JWLDJCQUEyQmEsbUJBQ25ERiw0QkFBNEJGLHdCQUF3QkMsdUJBQXVCUjtRQUVqRixJQUFJUywyQkFBMkI7WUFDN0JHLHVCQUF1QjtRQUN6QjtJQUNGO0lBRUEsT0FBT0E7QUFDVDtBQUVBLFNBQVNOLFlBQVlGLFNBQVMsRUFBRUosZ0JBQWdCO0lBQzlDLElBQUlLO0lBRUosSUFBTWMsb0JBQW9CZixVQUFVZ0IsV0FBVztJQUUvQyxPQUFRRDtRQUNOLEtBQUtFLGtDQUF1QjtZQUFFO2dCQUM1QixJQUFNVixtQkFBbUJQLFdBQ25CUSx1QkFBdUJGLG1CQUFtQkMsa0JBQWtCWDtnQkFFbEUsSUFBSVksc0JBQXNCO29CQUN4QixJQUFNVSxnQkFBZ0JDLGtCQUFhLENBQUNDLG9CQUFvQixDQUFDYjtvQkFFekRYLGlCQUFpQnlCLGdCQUFnQixDQUFDSDtvQkFFbENqQixnQkFBZ0I7Z0JBQ2xCO2dCQUVBO1lBQ0Y7UUFFQSxLQUFLcUIsNENBQWlDO1lBQUU7Z0JBQ3RDLElBQU1DLFVBQVUsTUFDVkMsY0FBYyxFQUFFLEVBQ2hCQyx5QkFBeUIsTUFDekJDLDZCQUE2QjFCLFdBQzdCMkIsaUNBQWlDQyxJQUFBQSxrQkFBNEIsRUFBQ0YsNEJBQTRCRCx3QkFBd0JELGFBQWFELFNBQVMzQjtnQkFFOUksSUFBSStCLGdDQUFnQztvQkFDbEMsSUFBTUUsb0JBQW9CckMsdUJBQXVCa0MsNkJBQzNDUixpQkFBZ0JDLGtCQUFhLENBQUNXLHFCQUFxQixDQUFDRDtvQkFFMURqQyxpQkFBaUJ5QixnQkFBZ0IsQ0FBQ0g7b0JBRWxDakIsZ0JBQWdCMEIsZ0NBQWdDLEdBQUc7Z0JBQ3JEO2dCQUVBO1lBQ0Y7UUFFQSxLQUFLSSw4Q0FBbUM7WUFBRTtnQkFDeEMsSUFBTVIsV0FBVSxNQUNWQyxlQUFjLE9BQ2RRLCtCQUErQmhDLFdBQy9CaUMsbUNBQW1DQyxJQUFBQSxvQkFBOEIsRUFBQ0YsOEJBQThCUixjQUFhRCxVQUFTM0I7Z0JBRTVILElBQUlxQyxrQ0FBa0M7b0JBQ3BDLElBQU1KLHFCQUFvQnJDLHVCQUF1QndDLCtCQUMzQ2QsaUJBQWdCQyxrQkFBYSxDQUFDVyxxQkFBcUIsQ0FBQ0Q7b0JBRTFEakMsaUJBQWlCeUIsZ0JBQWdCLENBQUNIO29CQUVsQ2pCLGdCQUFnQjtnQkFDbEI7Z0JBRUE7WUFDRjtJQUNGO0lBRUEsT0FBT0E7QUFDVCJ9
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcnVsZURlcml2YXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBNZXRhcHJvb2ZTdGVwIGZyb20gXCIuLi9zdGVwL21ldGFwcm9vZlwiO1xuaW1wb3J0IHZlcmlmeVByZW1pc2VzIGZyb20gXCIuLi92ZXJpZnkvcHJlbWlzZXNcIjtcbmltcG9ydCBMb2NhbE1ldGFDb250ZXh0IGZyb20gXCIuLi9jb250ZXh0L2xvY2FsTWV0YVwiO1xuaW1wb3J0IHZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQgZnJvbSBcIi4uL3ZlcmlmeS9tZXRhc3RhdGVtZW50L3F1YWxpZmllZFwiO1xuaW1wb3J0IHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L21ldGFzdGF0ZW1lbnQvdW5xdWFsaWZpZWRcIjtcblxuaW1wb3J0IHsgYXNzaWduQXNzaWdubWVudCB9IGZyb20gXCIuLi91dGlsaXRpZXMvYXNzaWdubWVudHNcIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IFJVTEVfU1VCUFJPT0ZfUlVMRV9OQU1FLCBRVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUUsIFVOUVVBTElGSUVEX01FVEFTVEFURU1FTlRfUlVMRV9OQU1FIH0gZnJvbSBcIi4uL3J1bGVOYW1lc1wiO1xuXG5jb25zdCBjaGlsZE5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL3J1bGVEZXJpdmF0aW9ufHJ1bGVTdWJEZXJpdmF0aW9uLypcIiksXG4gICAgICBwcmVtaXNlTm9kZXNRdWVyeSA9IG5vZGVzUXVlcnkoXCIvcnVsZVN1YnByb29mL3ByZW1pc2VcIiksXG4gICAgICBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3F1YWxpZmllZE1ldGFzdGF0ZW1lbnR8dW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50L21ldGFzdGF0ZW1lbnQhXCIpLFxuICAgICAgcnVsZVN1YkRlcml2YXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvcnVsZVN1YnByb29mL3J1bGVTdWJEZXJpdmF0aW9uXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlSdWxlRGVyaXZhdGlvbihydWxlRGVyaXZhdGlvbk5vZGUsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IHJ1bGVEZXJpdmF0aW9uVmVyaWZpZWQ7XG5cbiAgY29uc3QgY2hpbGROb2RlcyA9IGNoaWxkTm9kZXNRdWVyeShydWxlRGVyaXZhdGlvbk5vZGUpO1xuXG4gIHJ1bGVEZXJpdmF0aW9uVmVyaWZpZWQgPSBjaGlsZE5vZGVzLmV2ZXJ5KChjaGlsZE5vZGUpID0+IHtcbiAgICBjb25zdCBjaGlsZFZlcmlmaWVkID0gdmVyaWZ5Q2hpbGQoY2hpbGROb2RlLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgIGlmIChjaGlsZFZlcmlmaWVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBydWxlRGVyaXZhdGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlSdWxlU3ViRGVyaXZhdGlvbihydWxlU3ViRGVyaXZhdGlvbk5vZGUsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgbGV0IHJ1bGVTdWJEZXJpdmF0aW9uVmVyaWZpZWQ7XG5cbiAgY29uc3QgY2hpbGROb2RlcyA9IGNoaWxkTm9kZXNRdWVyeShydWxlU3ViRGVyaXZhdGlvbk5vZGUpO1xuXG4gIHJ1bGVTdWJEZXJpdmF0aW9uVmVyaWZpZWQgPSBjaGlsZE5vZGVzLmV2ZXJ5KChjaGlsZE5vZGUpID0+IHtcbiAgICBjb25zdCBjaGlsZFZlcmlmaWVkID0gdmVyaWZ5Q2hpbGQoY2hpbGROb2RlLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgIGlmIChjaGlsZFZlcmlmaWVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBydWxlU3ViRGVyaXZhdGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlSdWxlU3VicHJvb2YocnVsZVN1YnByb29mTm9kZSwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgcnVsZVN1YnByb29mVmVyaWZpZWQgPSBmYWxzZTtcblxuICBsb2NhbE1ldGFDb250ZXh0ID0gTG9jYWxNZXRhQ29udGV4dC5mcm9tTG9jYWxNZXRhQ29udGV4dChsb2NhbE1ldGFDb250ZXh0KTsgLy8vXG5cbiAgY29uc3QgcHJlbWlzZXMgPSBbXSxcbiAgICAgICAgcHJlbWlzZU5vZGVzID0gcHJlbWlzZU5vZGVzUXVlcnkocnVsZVN1YnByb29mTm9kZSksXG4gICAgICAgIHByZW1pc2VzVmVyaWZpZWQgPSB2ZXJpZnlQcmVtaXNlcyhwcmVtaXNlTm9kZXMsIHByZW1pc2VzLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICBpZiAocHJlbWlzZXNWZXJpZmllZCkge1xuICAgIGNvbnN0IHJ1bGVTdWJEZXJpdmF0aW9uTm9kZSA9IHJ1bGVTdWJEZXJpdmF0aW9uTm9kZVF1ZXJ5KHJ1bGVTdWJwcm9vZk5vZGUpLFxuICAgICAgICAgIHJ1bGVTdWJEZXJpdmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlSdWxlU3ViRGVyaXZhdGlvbihydWxlU3ViRGVyaXZhdGlvbk5vZGUsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgaWYgKHJ1bGVTdWJEZXJpdmF0aW9uVmVyaWZpZWQpIHtcbiAgICAgIHJ1bGVTdWJwcm9vZlZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcnVsZVN1YnByb29mVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeUNoaWxkKGNoaWxkTm9kZSwgbG9jYWxNZXRhQ29udGV4dCkge1xuICBsZXQgY2hpbGRWZXJpZmllZDtcblxuICBjb25zdCBjaGlsZE5vZGVSdWxlTmFtZSA9IGNoaWxkTm9kZS5nZXRSdWxlTmFtZSgpO1xuXG4gIHN3aXRjaCAoY2hpbGROb2RlUnVsZU5hbWUpIHtcbiAgICBjYXNlIFJVTEVfU1VCUFJPT0ZfUlVMRV9OQU1FOiB7XG4gICAgICBjb25zdCBydWxlU3VicHJvb2ZOb2RlID0gY2hpbGROb2RlLCAgLy8vXG4gICAgICAgICAgICBydWxlU3VicHJvb2ZWZXJpZmllZCA9IHZlcmlmeVJ1bGVTdWJwcm9vZihydWxlU3VicHJvb2ZOb2RlLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgICAgaWYgKHJ1bGVTdWJwcm9vZlZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IG1ldGFwcm9vZlN0ZXAgPSBNZXRhcHJvb2ZTdGVwLmZyb21SdWxlU3VicHJvb2ZOb2RlKHJ1bGVTdWJwcm9vZk5vZGUpO1xuXG4gICAgICAgIGxvY2FsTWV0YUNvbnRleHQuYWRkTWV0YXByb29mU3RlcChtZXRhcHJvb2ZTdGVwKTtcblxuICAgICAgICBjaGlsZFZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgY2FzZSBRVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUU6IHtcbiAgICAgIGxldCBxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQ7XG5cbiAgICAgIGNvbnN0IGRlcml2ZWQgPSB0cnVlLFxuICAgICAgICAgICAgYXNzaWdubWVudHMgPSBbXSxcbiAgICAgICAgICAgIG1ldGF2YXJpYWJsZVJlZmVyZW5jZXMgPSB0cnVlLFxuICAgICAgICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudE5vZGUgPSBjaGlsZE5vZGU7ICAvLy9cblxuICAgICAgcXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5UXVhbGlmaWVkTWV0YXN0YXRlbWVudChxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSwgbWV0YXZhcmlhYmxlUmVmZXJlbmNlcywgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgICBpZiAocXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IGFzc2lnbm1lbnRBc3NpZ25lZCA9IGFzc2lnbkFzc2lnbm1lbnQoYXNzaWdubWVudHMsIGxvY2FsTWV0YUNvbnRleHQpO1xuXG4gICAgICAgIHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IGFzc2lnbm1lbnRBc3NpZ25lZDsgLy8vXG4gICAgICB9XG5cbiAgICAgIGlmIChxdWFsaWZpZWRNZXRhc3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgICAgY29uc3QgbWV0YXN0YXRlbWVudE5vZGUgPSBtZXRhc3RhdGVtZW50Tm9kZVF1ZXJ5KHF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlKSxcbiAgICAgICAgICAgICAgbWV0YXByb29mU3RlcCA9IE1ldGFwcm9vZlN0ZXAuZnJvbU1ldGFzdGF0ZW1lbnROb2RlKG1ldGFzdGF0ZW1lbnROb2RlKTtcblxuICAgICAgICBsb2NhbE1ldGFDb250ZXh0LmFkZE1ldGFwcm9vZlN0ZXAobWV0YXByb29mU3RlcCk7XG5cbiAgICAgICAgY2hpbGRWZXJpZmllZCA9IHF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZDsgLy8vXG4gICAgICB9XG5cbiAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIGNhc2UgVU5RVUFMSUZJRURfTUVUQVNUQVRFTUVOVF9SVUxFX05BTUU6IHtcbiAgICAgIGxldCB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZDtcblxuICAgICAgY29uc3QgZGVyaXZlZCA9IHRydWUsXG4gICAgICAgICAgICBhc3NpZ25tZW50cyA9IFtdLFxuICAgICAgICAgICAgdW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSA9IGNoaWxkTm9kZTsgIC8vL1xuXG4gICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnROb2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxNZXRhQ29udGV4dCk7XG5cbiAgICAgIGlmICh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgICBjb25zdCBhc3NpZ25tZW50QXNzaWduZWQgPSBhc3NpZ25Bc3NpZ25tZW50KGFzc2lnbm1lbnRzLCBsb2NhbE1ldGFDb250ZXh0KTtcblxuICAgICAgICB1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCA9IGFzc2lnbm1lbnRBc3NpZ25lZDsgLy8vXG4gICAgICB9XG5cbiAgICAgIGlmICh1bnF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCkge1xuICAgICAgICBjb25zdCBtZXRhc3RhdGVtZW50Tm9kZSA9IG1ldGFzdGF0ZW1lbnROb2RlUXVlcnkodW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSksXG4gICAgICAgICAgICAgIG1ldGFwcm9vZlN0ZXAgPSBNZXRhcHJvb2ZTdGVwLmZyb21NZXRhc3RhdGVtZW50Tm9kZShtZXRhc3RhdGVtZW50Tm9kZSk7XG5cbiAgICAgICAgbG9jYWxNZXRhQ29udGV4dC5hZGRNZXRhcHJvb2ZTdGVwKG1ldGFwcm9vZlN0ZXApO1xuXG4gICAgICAgIGNoaWxkVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gY2hpbGRWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlSdWxlRGVyaXZhdGlvbiIsImNoaWxkTm9kZXNRdWVyeSIsIm5vZGVzUXVlcnkiLCJwcmVtaXNlTm9kZXNRdWVyeSIsIm1ldGFzdGF0ZW1lbnROb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJydWxlU3ViRGVyaXZhdGlvbk5vZGVRdWVyeSIsInJ1bGVEZXJpdmF0aW9uTm9kZSIsImxvY2FsTWV0YUNvbnRleHQiLCJydWxlRGVyaXZhdGlvblZlcmlmaWVkIiwiY2hpbGROb2RlcyIsImV2ZXJ5IiwiY2hpbGROb2RlIiwiY2hpbGRWZXJpZmllZCIsInZlcmlmeUNoaWxkIiwidmVyaWZ5UnVsZVN1YkRlcml2YXRpb24iLCJydWxlU3ViRGVyaXZhdGlvbk5vZGUiLCJydWxlU3ViRGVyaXZhdGlvblZlcmlmaWVkIiwidmVyaWZ5UnVsZVN1YnByb29mIiwicnVsZVN1YnByb29mTm9kZSIsInJ1bGVTdWJwcm9vZlZlcmlmaWVkIiwiTG9jYWxNZXRhQ29udGV4dCIsImZyb21Mb2NhbE1ldGFDb250ZXh0IiwicHJlbWlzZXMiLCJwcmVtaXNlTm9kZXMiLCJwcmVtaXNlc1ZlcmlmaWVkIiwidmVyaWZ5UHJlbWlzZXMiLCJjaGlsZE5vZGVSdWxlTmFtZSIsImdldFJ1bGVOYW1lIiwiUlVMRV9TVUJQUk9PRl9SVUxFX05BTUUiLCJtZXRhcHJvb2ZTdGVwIiwiTWV0YXByb29mU3RlcCIsImZyb21SdWxlU3VicHJvb2ZOb2RlIiwiYWRkTWV0YXByb29mU3RlcCIsIlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsInF1YWxpZmllZE1ldGFzdGF0ZW1lbnRWZXJpZmllZCIsImRlcml2ZWQiLCJhc3NpZ25tZW50cyIsIm1ldGF2YXJpYWJsZVJlZmVyZW5jZXMiLCJxdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsInZlcmlmeVF1YWxpZmllZE1ldGFzdGF0ZW1lbnQiLCJhc3NpZ25tZW50QXNzaWduZWQiLCJhc3NpZ25Bc3NpZ25tZW50IiwibWV0YXN0YXRlbWVudE5vZGUiLCJmcm9tTWV0YXN0YXRlbWVudE5vZGUiLCJVTlFVQUxJRklFRF9NRVRBU1RBVEVNRU5UX1JVTEVfTkFNRSIsInVucXVhbGlmaWVkTWV0YXN0YXRlbWVudFZlcmlmaWVkIiwidW5xdWFsaWZpZWRNZXRhc3RhdGVtZW50Tm9kZSIsInZlcmlmeVVucXVhbGlmaWVkTWV0YXN0YXRlbWVudCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBaUJBOzs7ZUFBd0JBOzs7Z0VBZkU7K0RBQ0M7Z0VBQ0U7Z0VBQ1k7a0VBQ0U7MkJBRVY7cUJBQ0s7eUJBQzBFOzs7Ozs7QUFFaEgsSUFBTUMsa0JBQWtCQyxJQUFBQSxp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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "occam-verify-cli",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.878",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/occam-verify-cli",
|
|
7
7
|
"description": "Occam's Verifier",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"dependencies": {
|
|
13
13
|
"argumentative": "^2.0.28",
|
|
14
14
|
"necessary": "^14.0.1",
|
|
15
|
-
"occam-custom-grammars": "^5.0.
|
|
15
|
+
"occam-custom-grammars": "^5.0.784",
|
|
16
16
|
"occam-entities": "^1.0.134",
|
|
17
17
|
"occam-file-system": "^6.0.176",
|
|
18
18
|
"occam-grammar-utilities": "^8.0.205",
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export default class MetaEqualityAssignment {
|
|
4
|
+
constructor(metaEquality) {
|
|
5
|
+
this.metaEquality = metaEquality;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
getMetaEquality() {
|
|
9
|
+
return this.metaEquality;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
assign(localMetaContext) {
|
|
13
|
+
const metaEqualityAdded = localMetaContext.addMetaEquality(this.metaEquality),
|
|
14
|
+
metaEqualityNode = this.metaEquality.getNode(),
|
|
15
|
+
metaEqualityString = localMetaContext.nodeAsString(metaEqualityNode),
|
|
16
|
+
metaEqualityAssigned = metaEqualityAdded; ///
|
|
17
|
+
|
|
18
|
+
metaEqualityAssigned ?
|
|
19
|
+
localMetaContext.trace(`Assigned the '${metaEqualityString}' meta-equality.`, metaEqualityNode) :
|
|
20
|
+
localMetaContext.debug(`Unable to assign the '${metaEqualityString}' meta-equality.`, metaEqualityNode);
|
|
21
|
+
|
|
22
|
+
return metaEqualityAssigned;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
static fromMetaEquality(metaEquality) {
|
|
26
|
+
const metaEqualityAssignment = new MetaEqualityAssignment(metaEquality);
|
|
27
|
+
|
|
28
|
+
return metaEqualityAssignment;
|
|
29
|
+
}
|
|
30
|
+
}
|
package/src/context/file.js
CHANGED
|
@@ -17,6 +17,7 @@ import { push } from "../utilities/array";
|
|
|
17
17
|
import { objectType } from "../type";
|
|
18
18
|
import { typeFromJSONAndFileContext } from "../type";
|
|
19
19
|
import { nodeAsString, nodesAsString } from "../utilities/string";
|
|
20
|
+
import localMeta from "./localMeta";
|
|
20
21
|
|
|
21
22
|
export default class FileContext {
|
|
22
23
|
constructor(releaseContext, filePath, tokens, node, types, rules, axioms, lemmas, theorems, variables, metaLemmas, conjectures, combinators, constructors, metatheorems, metavariables) {
|
|
@@ -70,7 +71,7 @@ export default class FileContext {
|
|
|
70
71
|
return proofSteps;
|
|
71
72
|
}
|
|
72
73
|
|
|
73
|
-
getEquivalences(
|
|
74
|
+
getEquivalences() {
|
|
74
75
|
const equivalences = []; ///
|
|
75
76
|
|
|
76
77
|
return equivalences;
|
|
@@ -82,6 +83,12 @@ export default class FileContext {
|
|
|
82
83
|
return metaproofSteps;
|
|
83
84
|
}
|
|
84
85
|
|
|
86
|
+
getMetaEquivalences() {
|
|
87
|
+
const metaEquivalences = []; ///
|
|
88
|
+
|
|
89
|
+
return metaEquivalences;
|
|
90
|
+
}
|
|
91
|
+
|
|
85
92
|
getLabels(includeRelease = true) {
|
|
86
93
|
const labels = [];
|
|
87
94
|
|
|
@@ -508,8 +515,8 @@ export default class FileContext {
|
|
|
508
515
|
return labelPresent;
|
|
509
516
|
}
|
|
510
517
|
|
|
511
|
-
isMetavariablePresentByMetavariableNode(metavariableNode) {
|
|
512
|
-
const metavariable = this.findMetavariableByMetavariableNode(metavariableNode),
|
|
518
|
+
isMetavariablePresentByMetavariableNode(metavariableNode, localMetaContext) {
|
|
519
|
+
const metavariable = this.findMetavariableByMetavariableNode(metavariableNode, localMetaContext),
|
|
513
520
|
metavariablePresent = (metavariable !== null);
|
|
514
521
|
|
|
515
522
|
return metavariablePresent;
|
package/src/context/local.js
CHANGED
package/src/context/localMeta.js
CHANGED
|
@@ -3,12 +3,14 @@
|
|
|
3
3
|
import contextMixins from "../mixins/context";
|
|
4
4
|
|
|
5
5
|
import { last } from "../utilities/array";
|
|
6
|
+
import { mergeMetaEquivalences } from "../utilities/metaEquivalences";
|
|
6
7
|
|
|
7
8
|
class LocalMetaContext {
|
|
8
|
-
constructor(context, metavariables, metaproofSteps) {
|
|
9
|
+
constructor(context, metavariables, metaproofSteps, metaEquivalences) {
|
|
9
10
|
this.context = context;
|
|
10
11
|
this.metavariables = metavariables;
|
|
11
12
|
this.metaproofSteps = metaproofSteps;
|
|
13
|
+
this.metaEquivalences = metaEquivalences;
|
|
12
14
|
}
|
|
13
15
|
|
|
14
16
|
getContext() {
|
|
@@ -21,17 +23,6 @@ class LocalMetaContext {
|
|
|
21
23
|
return termType;
|
|
22
24
|
}
|
|
23
25
|
|
|
24
|
-
getMetavariables() {
|
|
25
|
-
let metavariables = this.context.getMetavariables();
|
|
26
|
-
|
|
27
|
-
metavariables = [ ///
|
|
28
|
-
...this.metavariables,
|
|
29
|
-
...metavariables
|
|
30
|
-
]
|
|
31
|
-
|
|
32
|
-
return metavariables;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
26
|
getMetaproofSteps() {
|
|
36
27
|
let metaproofSteps = this.context.getMetaproofSteps();
|
|
37
28
|
|
|
@@ -43,8 +34,33 @@ class LocalMetaContext {
|
|
|
43
34
|
return metaproofSteps;
|
|
44
35
|
}
|
|
45
36
|
|
|
37
|
+
getMetaEquivalences() {
|
|
38
|
+
let metaEquivalences = this.context.getMetaEquivalences();
|
|
39
|
+
|
|
40
|
+
const metaEquivalencesA = this.metaEquivalences, ///
|
|
41
|
+
metaEquivalencesB = metaEquivalences,
|
|
42
|
+
localMetaContext = this; ///
|
|
43
|
+
|
|
44
|
+
metaEquivalences = mergeMetaEquivalences(metaEquivalencesA, metaEquivalencesB, localMetaContext); ///
|
|
45
|
+
|
|
46
|
+
return metaEquivalences;
|
|
47
|
+
}
|
|
48
|
+
|
|
46
49
|
getVariables() { return this.context.getVariables(); }
|
|
47
50
|
|
|
51
|
+
getEquivalences() { return this.context.getEquivalences(); }
|
|
52
|
+
|
|
53
|
+
getMetavariables() {
|
|
54
|
+
let metavariables = this.context.getMetavariables();
|
|
55
|
+
|
|
56
|
+
metavariables = [ ///
|
|
57
|
+
...this.metavariables,
|
|
58
|
+
...metavariables
|
|
59
|
+
]
|
|
60
|
+
|
|
61
|
+
return metavariables;
|
|
62
|
+
}
|
|
63
|
+
|
|
48
64
|
getLastMetaproofStep() {
|
|
49
65
|
let lastMetaproofStep = null;
|
|
50
66
|
|
|
@@ -57,6 +73,10 @@ class LocalMetaContext {
|
|
|
57
73
|
return lastMetaproofStep;
|
|
58
74
|
}
|
|
59
75
|
|
|
76
|
+
addMetaEquality(metaEquality) {
|
|
77
|
+
|
|
78
|
+
}
|
|
79
|
+
|
|
60
80
|
addMetavariable(metavariable) {
|
|
61
81
|
let metavariableAdded = false;
|
|
62
82
|
|
|
@@ -82,6 +102,10 @@ class LocalMetaContext {
|
|
|
82
102
|
this.metaproofSteps.push(metaproofStep);
|
|
83
103
|
}
|
|
84
104
|
|
|
105
|
+
addMetaEquivalence(metaEquivalence) {
|
|
106
|
+
this.metaEquivalences.push(metaEquivalence);
|
|
107
|
+
}
|
|
108
|
+
|
|
85
109
|
matchMetastatement(metastatementNode) {
|
|
86
110
|
let metastatementMatches = false;
|
|
87
111
|
|
|
@@ -150,7 +174,8 @@ class LocalMetaContext {
|
|
|
150
174
|
const context = fileContext, ///
|
|
151
175
|
metavariables = [],
|
|
152
176
|
metaproofSteps = [],
|
|
153
|
-
|
|
177
|
+
metaEquivalences = [],
|
|
178
|
+
localMetaContext = new LocalMetaContext(context, metavariables, metaproofSteps, metaEquivalences);
|
|
154
179
|
|
|
155
180
|
return localMetaContext;
|
|
156
181
|
}
|
|
@@ -158,9 +183,10 @@ class LocalMetaContext {
|
|
|
158
183
|
static fromLocalMetaContext(localMetaContext) {
|
|
159
184
|
const context = localMetaContext, ///
|
|
160
185
|
metavariables = [],
|
|
161
|
-
metaproofSteps = []
|
|
186
|
+
metaproofSteps = [],
|
|
187
|
+
metaEquivalences = [];
|
|
162
188
|
|
|
163
|
-
localMetaContext = new LocalMetaContext(context, metavariables, metaproofSteps); ///
|
|
189
|
+
localMetaContext = new LocalMetaContext(context, metavariables, metaproofSteps, metaEquivalences); ///
|
|
164
190
|
|
|
165
191
|
return localMetaContext;
|
|
166
192
|
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import contextMetaType from "./metaType/context";
|
|
4
|
+
import metastatementNodeVerifier from "./verifier/node/metastatement";
|
|
5
|
+
|
|
6
|
+
import { nodeQuery } from "./utilities/query";
|
|
7
|
+
import { first, second } from "./utilities/array";
|
|
8
|
+
|
|
9
|
+
const contextNodeQuery = nodeQuery("/metastatement/context!"),
|
|
10
|
+
metaVariableNodeQuery = nodeQuery("/metastatement/metavariable!");
|
|
11
|
+
|
|
12
|
+
export default class MetaEquality {
|
|
13
|
+
constructor(node, metaType) {
|
|
14
|
+
this.node = node;
|
|
15
|
+
this.metaType = metaType;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
getNode() {
|
|
19
|
+
return this.node;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
getMetaType() {
|
|
23
|
+
return this.metaType;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
static fromLeftMetastatementNodeRightMetastatementNodeAndMetaEqualityNode(leftMetastatementNode, rightMetastatementNode, metaEqualityNode, localMetaContext) {
|
|
27
|
+
let metaEquality = null;
|
|
28
|
+
|
|
29
|
+
const metaTypes = [],
|
|
30
|
+
leftMetastatementVerifiedAsMetavariableOrContext = verifyMetastatementAsMetavariableOrContext(leftMetastatementNode, metaTypes, localMetaContext),
|
|
31
|
+
rightMetastatementVerifiedAsMetavariableOrContext = verifyMetastatementAsMetavariableOrContext(rightMetastatementNode, metaTypes, localMetaContext);
|
|
32
|
+
|
|
33
|
+
if (leftMetastatementVerifiedAsMetavariableOrContext && rightMetastatementVerifiedAsMetavariableOrContext) {
|
|
34
|
+
const firstMetaType = first(metaTypes),
|
|
35
|
+
secondMetaType = second(metaTypes);
|
|
36
|
+
|
|
37
|
+
if (firstMetaType === secondMetaType) {
|
|
38
|
+
const metaType = firstMetaType, ///
|
|
39
|
+
node = metaEqualityNode; ///
|
|
40
|
+
|
|
41
|
+
metaEquality = new MetaEquality(node, metaType);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return metaEquality;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
function verifyMetastatementAsMetavariableOrContext(metastatementNode, metaTypes, localMetaContext) {
|
|
50
|
+
let metastatementVerifiedAsMetavariableOrContext = false;
|
|
51
|
+
|
|
52
|
+
const { verifyMetastatement } = metastatementNodeVerifier,
|
|
53
|
+
derived = false, ///
|
|
54
|
+
assignments = [],
|
|
55
|
+
metastatementVerified = verifyMetastatement(metastatementNode, assignments, derived, localMetaContext, () => {
|
|
56
|
+
const verifiedAhead = true;
|
|
57
|
+
|
|
58
|
+
return verifiedAhead;
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
if (metastatementVerified) {
|
|
62
|
+
const contextNode = contextNodeQuery(metastatementNode),
|
|
63
|
+
metavariableNode = metaVariableNodeQuery(metastatementNode);
|
|
64
|
+
|
|
65
|
+
if (false) {
|
|
66
|
+
///
|
|
67
|
+
} else if (contextNode !== null) {
|
|
68
|
+
const metaType = contextMetaType; ///
|
|
69
|
+
|
|
70
|
+
metaTypes.push(metaType);
|
|
71
|
+
|
|
72
|
+
metastatementVerifiedAsMetavariableOrContext = true;
|
|
73
|
+
} else if (metavariableNode !== null) {
|
|
74
|
+
const metavariable = localMetaContext.findMetavariableByMetavariableNode(metavariableNode, localMetaContext),
|
|
75
|
+
metaType = metavariable.getMetaType();
|
|
76
|
+
|
|
77
|
+
metaTypes.push(metaType);
|
|
78
|
+
|
|
79
|
+
metastatementVerifiedAsMetavariableOrContext = true;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
return metastatementVerifiedAsMetavariableOrContext;
|
|
84
|
+
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { first } from "../utilities/array";
|
|
4
4
|
|
|
5
|
-
export function assignAssignment(assignments,
|
|
5
|
+
export function assignAssignment(assignments, localContextOrLocalMetaContext) {
|
|
6
6
|
let assignmentAssigned = true;
|
|
7
7
|
|
|
8
8
|
const assignmentsLength = assignments.length;
|
|
@@ -11,7 +11,7 @@ export function assignAssignment(assignments, localContext) {
|
|
|
11
11
|
const firstAssignment = first(assignments),
|
|
12
12
|
assignment = firstAssignment;
|
|
13
13
|
|
|
14
|
-
assignmentAssigned = assignment.assign(
|
|
14
|
+
assignmentAssigned = assignment.assign(localContextOrLocalMetaContext);
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
return assignmentAssigned;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import verifyDeclaration from "../verify/declaration";
|
|
4
|
+
|
|
5
|
+
import { nodesQuery } from "../utilities/query";
|
|
6
|
+
|
|
7
|
+
const declarationNodesQuery = nodesQuery("/context/declaration");
|
|
8
|
+
|
|
9
|
+
export default function verifyContext(contextNode, derived, localMetaContext) {
|
|
10
|
+
let contextVerified;
|
|
11
|
+
|
|
12
|
+
const contextString = localMetaContext.nodeAsString(contextNode);
|
|
13
|
+
|
|
14
|
+
localMetaContext.trace(`Verifying the '${contextString}' context...`, contextNode);
|
|
15
|
+
|
|
16
|
+
const declarationNodes = declarationNodesQuery(contextNode),
|
|
17
|
+
declarationsVerified = declarationNodes.every((declarationNode) => {
|
|
18
|
+
const declarationVerified = verifyDeclaration(declarationNode, derived, localMetaContext);
|
|
19
|
+
|
|
20
|
+
return declarationVerified;
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
contextVerified = declarationsVerified; ///
|
|
24
|
+
|
|
25
|
+
if (contextVerified) {
|
|
26
|
+
localMetaContext.debug(`...verified the '${contextString}' context.`, contextNode);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
return contextVerified;
|
|
30
|
+
}
|