occam-verify-cli 0.0.915 → 0.0.917
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/judgement.js +62 -0
- package/lib/axiom.js +11 -24
- package/lib/conjecture.js +11 -24
- package/lib/constants.js +9 -1
- package/lib/constructor/bracketed.js +11 -24
- package/lib/context/file.js +5 -5
- package/lib/context/local/metaLevel.js +46 -54
- package/lib/judgement.js +87 -0
- package/lib/lemma.js +11 -24
- package/lib/metaLemma.js +11 -24
- package/lib/metaType/frame.js +11 -24
- package/lib/metaType/reference.js +11 -24
- package/lib/metaType/statement.js +11 -24
- package/lib/metatheorem.js +11 -24
- package/lib/ocmbinator/bracketed.js +11 -24
- package/lib/substitution/metastatementForMetavariable.js +11 -24
- package/lib/substitution/statementForMetavariable.js +11 -24
- package/lib/substitution/termForVariable.js +11 -24
- package/lib/theorem.js +11 -24
- package/lib/type.js +11 -24
- package/lib/utilities/verify.js +7 -7
- package/lib/verifier/node/metaLevel.js +11 -24
- package/lib/verifier/node/statementAsCombinator.js +11 -24
- package/lib/verifier/node/termAsConstructor.js +11 -24
- package/lib/verifier/nodes/equality.js +11 -24
- package/lib/verifier/nodes/intrinsicLevel.js +11 -24
- package/lib/verifier/nodes/intrinsicLevelAgainstMetaLevel.js +11 -24
- package/lib/verifier/nodes/metaLevel.js +11 -24
- package/lib/verifier/nodes/statementAgainstCombinator.js +11 -24
- package/lib/verifier/nodes/termAgainstConstructor.js +11 -24
- package/lib/verify/frame.js +6 -6
- package/lib/verify/judgement.js +121 -0
- package/lib/verify/metastatement.js +20 -16
- package/lib/verify/statement.js +45 -46
- package/lib/verify/statementAsContainedAssertion.js +93 -0
- package/lib/verify/statementAsDefinedAssertion.js +111 -0
- package/package.json +2 -2
- package/src/assignment/judgement.js +30 -0
- package/src/constants.js +2 -0
- package/src/context/file.js +3 -3
- package/src/context/local/metaLevel.js +35 -35
- package/src/{frameAssertion.js → judgement.js} +5 -5
- package/src/utilities/verify.js +5 -5
- package/src/verify/frame.js +5 -5
- package/src/verify/{frameAssertion.js → judgement.js} +46 -46
- package/src/verify/metastatement.js +23 -15
- package/src/verify/statement.js +70 -70
- package/src/verify/statementAsContainedAssertion.js +112 -0
- package/src/verify/statementAsDefinedAssertion.js +136 -0
- package/lib/assignment/frameAssertion.js +0 -62
- package/lib/frameAssertion.js +0 -87
- package/lib/verify/containedAssertion.js +0 -93
- package/lib/verify/definedAssertion.js +0 -111
- package/lib/verify/frameAssertion.js +0 -121
- package/src/assignment/frameAssertion.js +0 -30
- package/src/verify/containedAssertion.js +0 -112
- package/src/verify/definedAssertion.js +0 -137
package/lib/frameAssertion.js
DELETED
|
@@ -1,87 +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 FrameAssertion;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
function _class_call_check(instance, Constructor) {
|
|
12
|
-
if (!(instance instanceof Constructor)) {
|
|
13
|
-
throw new TypeError("Cannot call a class as a function");
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
function _defineProperties(target, props) {
|
|
17
|
-
for(var i = 0; i < props.length; i++){
|
|
18
|
-
var descriptor = props[i];
|
|
19
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
20
|
-
descriptor.configurable = true;
|
|
21
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
22
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
26
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
27
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
28
|
-
return Constructor;
|
|
29
|
-
}
|
|
30
|
-
var FrameAssertion = /*#__PURE__*/ function() {
|
|
31
|
-
function FrameAssertion(node, frame, metavariableNode) {
|
|
32
|
-
_class_call_check(this, FrameAssertion);
|
|
33
|
-
this.node = node;
|
|
34
|
-
this.frame = frame;
|
|
35
|
-
this.metavariableNode = metavariableNode;
|
|
36
|
-
}
|
|
37
|
-
_create_class(FrameAssertion, [
|
|
38
|
-
{
|
|
39
|
-
key: "getNode",
|
|
40
|
-
value: function getNode() {
|
|
41
|
-
return this.node;
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
key: "getFrame",
|
|
46
|
-
value: function getFrame() {
|
|
47
|
-
return this.frame;
|
|
48
|
-
}
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
key: "getMetavariableNode",
|
|
52
|
-
value: function getMetavariableNode() {
|
|
53
|
-
return this.metavariableNode;
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
key: "getDeclarations",
|
|
58
|
-
value: function getDeclarations() {
|
|
59
|
-
return this.frame.getDeclarations();
|
|
60
|
-
}
|
|
61
|
-
},
|
|
62
|
-
{
|
|
63
|
-
key: "matchMetavariableNode",
|
|
64
|
-
value: function matchMetavariableNode(metavariableNode) {
|
|
65
|
-
var matchesMetavariableNode = this.metavariableNode.match(metavariableNode);
|
|
66
|
-
return matchesMetavariableNode;
|
|
67
|
-
}
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
key: "matchMetaLemmaOrMetaTheorem",
|
|
71
|
-
value: function matchMetaLemmaOrMetaTheorem(metaLemmaMetatheorem) {
|
|
72
|
-
return this.frame.matchMetaLemmaOrMetaTheorem(metaLemmaMetatheorem);
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
], [
|
|
76
|
-
{
|
|
77
|
-
key: "fromFrameAssertionNodeFrameAndMetavariableNode",
|
|
78
|
-
value: function fromFrameAssertionNodeFrameAndMetavariableNode(frameAssertionNode, frame, metavariableNode) {
|
|
79
|
-
var node = frameAssertionNode, frameAssertion = new FrameAssertion(node, frame, metavariableNode);
|
|
80
|
-
return frameAssertion;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
]);
|
|
84
|
-
return FrameAssertion;
|
|
85
|
-
}();
|
|
86
|
-
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9mcmFtZUFzc2VydGlvbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRnJhbWVBc3NlcnRpb24ge1xuICBjb25zdHJ1Y3Rvcihub2RlLCBmcmFtZSwgbWV0YXZhcmlhYmxlTm9kZSkge1xuICAgIHRoaXMubm9kZSA9IG5vZGU7XG4gICAgdGhpcy5mcmFtZSA9IGZyYW1lO1xuICAgIHRoaXMubWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGU7XG4gIH1cblxuICBnZXROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGU7XG4gIH1cblxuICBnZXRGcmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5mcmFtZTtcbiAgfVxuXG4gIGdldE1ldGF2YXJpYWJsZU5vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0YXZhcmlhYmxlTm9kZTtcbiAgfVxuXG4gIGdldERlY2xhcmF0aW9ucygpIHsgcmV0dXJuIHRoaXMuZnJhbWUuZ2V0RGVjbGFyYXRpb25zKCk7IH1cblxuICBtYXRjaE1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSkge1xuICAgIGNvbnN0IG1hdGNoZXNNZXRhdmFyaWFibGVOb2RlID0gdGhpcy5tZXRhdmFyaWFibGVOb2RlLm1hdGNoKG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gICAgcmV0dXJuIG1hdGNoZXNNZXRhdmFyaWFibGVOb2RlO1xuICB9XG5cbiAgbWF0Y2hNZXRhTGVtbWFPck1ldGFUaGVvcmVtKG1ldGFMZW1tYU1ldGF0aGVvcmVtKSB7IHJldHVybiB0aGlzLmZyYW1lLm1hdGNoTWV0YUxlbW1hT3JNZXRhVGhlb3JlbShtZXRhTGVtbWFNZXRhdGhlb3JlbSk7IH1cblxuICBzdGF0aWMgZnJvbUZyYW1lQXNzZXJ0aW9uTm9kZUZyYW1lQW5kTWV0YXZhcmlhYmxlTm9kZShmcmFtZUFzc2VydGlvbk5vZGUsIGZyYW1lLCBtZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgY29uc3Qgbm9kZSA9IGZyYW1lQXNzZXJ0aW9uTm9kZSxcbiAgICAgICAgICBmcmFtZUFzc2VydGlvbiA9IG5ldyBGcmFtZUFzc2VydGlvbihub2RlLCBmcmFtZSwgbWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICByZXR1cm4gZnJhbWVBc3NlcnRpb247XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJGcmFtZUFzc2VydGlvbiIsIm5vZGUiLCJmcmFtZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJnZXROb2RlIiwiZ2V0RnJhbWUiLCJnZXRNZXRhdmFyaWFibGVOb2RlIiwiZ2V0RGVjbGFyYXRpb25zIiwibWF0Y2hNZXRhdmFyaWFibGVOb2RlIiwibWF0Y2hlc01ldGF2YXJpYWJsZU5vZGUiLCJtYXRjaCIsIm1hdGNoTWV0YUxlbW1hT3JNZXRhVGhlb3JlbSIsIm1ldGFMZW1tYU1ldGF0aGVvcmVtIiwiZnJvbUZyYW1lQXNzZXJ0aW9uTm9kZUZyYW1lQW5kTWV0YXZhcmlhYmxlTm9kZSIsImZyYW1lQXNzZXJ0aW9uTm9kZSIsImZyYW1lQXNzZXJ0aW9uIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLCtCQUFELEFBQUw7YUFBTUEsZUFDUEMsSUFBSSxFQUFFQyxLQUFLLEVBQUVDLGdCQUFnQjtnQ0FEdEJIO1FBRWpCLElBQUksQ0FBQ0MsSUFBSSxHQUFHQTtRQUNaLElBQUksQ0FBQ0MsS0FBSyxHQUFHQTtRQUNiLElBQUksQ0FBQ0MsZ0JBQWdCLEdBQUdBOztrQkFKUEg7O1lBT25CSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILElBQUk7WUFDbEI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILEtBQUs7WUFDbkI7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsT0FBTyxJQUFJLENBQUNILGdCQUFnQjtZQUM5Qjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFBb0IsT0FBTyxJQUFJLENBQUNMLEtBQUssQ0FBQ0ssZUFBZTtZQUFJOzs7WUFFekRDLEtBQUFBO21CQUFBQSxTQUFBQSxzQkFBc0JMLGdCQUFnQjtnQkFDcEMsSUFBTU0sMEJBQTBCLElBQUksQ0FBQ04sZ0JBQWdCLENBQUNPLEtBQUssQ0FBQ1A7Z0JBRTVELE9BQU9NO1lBQ1Q7OztZQUVBRSxLQUFBQTttQkFBQUEsU0FBQUEsNEJBQTRCQyxvQkFBb0I7Z0JBQUksT0FBTyxJQUFJLENBQUNWLEtBQUssQ0FBQ1MsMkJBQTJCLENBQUNDO1lBQXVCOzs7O1lBRWxIQyxLQUFBQTttQkFBUCxTQUFPQSwrQ0FBK0NDLGtCQUFrQixFQUFFWixLQUFLLEVBQUVDLGdCQUFnQjtnQkFDL0YsSUFBTUYsT0FBT2Esb0JBQ1BDLGlCQUFpQixJQS9CTmYsZUErQnlCQyxNQUFNQyxPQUFPQztnQkFFdkQsT0FBT1k7WUFDVDs7O1dBbENtQmYifQ==
|
|
@@ -1,93 +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 verifyContainedAssertion;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../verifier/node/metaLevel"));
|
|
12
|
-
var _verify = require("../utilities/verify");
|
|
13
|
-
var _query = require("../utilities/query");
|
|
14
|
-
function _interop_require_default(obj) {
|
|
15
|
-
return obj && obj.__esModule ? obj : {
|
|
16
|
-
default: obj
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
var variableNodeQuery = (0, _query.nodeQuery)("/containedAssertion/term/variable!"), metastatementVariableNodesQuery = (0, _query.nodesQuery)("/containedAssertion/statement//variable");
|
|
20
|
-
function verifyContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
|
|
21
|
-
var containedAssertionVerified;
|
|
22
|
-
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
23
|
-
localContext.trace("Verifying the '".concat(containedAssertionString, "' contained assertion..."), containedAssertionNode);
|
|
24
|
-
var containedAssertionFunctions = [
|
|
25
|
-
verifyDerivedContainedAssertion,
|
|
26
|
-
verifyStatedContainedAssertion
|
|
27
|
-
];
|
|
28
|
-
containedAssertionVerified = containedAssertionFunctions.some(function(containedAssertionFunction) {
|
|
29
|
-
var containedAssertionVerified = containedAssertionFunction(containedAssertionNode, assignments, derived, localContext);
|
|
30
|
-
if (containedAssertionVerified) {
|
|
31
|
-
return true;
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
if (containedAssertionVerified) {
|
|
35
|
-
localContext.debug("...verified the '".concat(containedAssertionString, "' contained assertion."), containedAssertionNode);
|
|
36
|
-
}
|
|
37
|
-
return containedAssertionVerified;
|
|
38
|
-
}
|
|
39
|
-
function verifyDerivedContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
|
|
40
|
-
var derivedContainedAssertionVerified = false;
|
|
41
|
-
if (derived) {
|
|
42
|
-
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
43
|
-
localContext.trace("Verifying the derived '".concat(containedAssertionString, "' contained assertion..."), containedAssertionNode);
|
|
44
|
-
var containedAssertionNegated = (0, _verify.isAssertionNegated)(containedAssertionNode), variableNode = variableNodeQuery(containedAssertionNode), negated = containedAssertionNegated; ///
|
|
45
|
-
if (false) {
|
|
46
|
-
///
|
|
47
|
-
} else if (variableNode !== null) {
|
|
48
|
-
var metastatementVariableNodes = metastatementVariableNodesQuery(containedAssertionNode), variableNodeMatchesMetaArgumentVariableNode = metastatementVariableNodes.some(function(metastatementVariableNode) {
|
|
49
|
-
var variableNodeMatchesMetaArgumentVariableNode = variableNode.match(metastatementVariableNode);
|
|
50
|
-
if (variableNodeMatchesMetaArgumentVariableNode) {
|
|
51
|
-
return true;
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
if (!negated) {
|
|
55
|
-
if (variableNodeMatchesMetaArgumentVariableNode) {
|
|
56
|
-
derivedContainedAssertionVerified = true;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
if (negated) {
|
|
60
|
-
if (!variableNodeMatchesMetaArgumentVariableNode) {
|
|
61
|
-
derivedContainedAssertionVerified = true;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
if (derivedContainedAssertionVerified) {
|
|
66
|
-
localContext.debug("...verified the derived '".concat(containedAssertionString, "' contained assertion."), containedAssertionNode);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
return derivedContainedAssertionVerified;
|
|
70
|
-
}
|
|
71
|
-
function verifyStatedContainedAssertion(containedAssertionNode, assignments, derived, localContext) {
|
|
72
|
-
var statedContainedAssertionVerified = false;
|
|
73
|
-
if (!derived) {
|
|
74
|
-
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
75
|
-
localContext.trace("Verifying the stated '".concat(containedAssertionString, "' contained assertion..."), containedAssertionNode);
|
|
76
|
-
var intrinsicLevel = localContext.isIntrinsicLevel();
|
|
77
|
-
if (intrinsicLevel) {
|
|
78
|
-
localContext.debug("The stated '".concat(containedAssertionString, "' contained assertion cannot be verified at intrinsic level."), containedAssertionNode);
|
|
79
|
-
} else {
|
|
80
|
-
var nonTerminalNode = containedAssertionNode, nonTerminalNodeVerified = _metaLevel.default.verifyNonTerminalNode(nonTerminalNode, localContext, function() {
|
|
81
|
-
var verifiedAhead = true;
|
|
82
|
-
return verifiedAhead;
|
|
83
|
-
});
|
|
84
|
-
statedContainedAssertionVerified = nonTerminalNodeVerified; ///
|
|
85
|
-
}
|
|
86
|
-
if (statedContainedAssertionVerified) {
|
|
87
|
-
localContext.debug("...verified the stated '".concat(containedAssertionString, "' contained assertion."), containedAssertionNode);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
return statedContainedAssertionVerified;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvY29udGFpbmVkQXNzZXJ0aW9uLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWV0YUxldmVsTm9kZVZlcmlmaWVyIGZyb20gXCIuLi92ZXJpZmllci9ub2RlL21ldGFMZXZlbFwiO1xuXG5pbXBvcnQgeyBpc0Fzc2VydGlvbk5lZ2F0ZWQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3ZlcmlmeVwiO1xuaW1wb3J0IHsgbm9kZVF1ZXJ5LCBub2Rlc1F1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9jb250YWluZWRBc3NlcnRpb24vdGVybS92YXJpYWJsZSFcIiksXG4gICAgICBtZXRhc3RhdGVtZW50VmFyaWFibGVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9jb250YWluZWRBc3NlcnRpb24vc3RhdGVtZW50Ly92YXJpYWJsZVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkO1xuXG4gIGNvbnN0IGNvbnRhaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIGNvbnRhaW5lZCBhc3NlcnRpb24uLi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICBjb25zdCBjb250YWluZWRBc3NlcnRpb25GdW5jdGlvbnMgPSBbXG4gICAgdmVyaWZ5RGVyaXZlZENvbnRhaW5lZEFzc2VydGlvbixcbiAgICB2ZXJpZnlTdGF0ZWRDb250YWluZWRBc3NlcnRpb25cbiAgXTtcblxuICBjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IGNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9ucy5zb21lKChjb250YWluZWRBc3NlcnRpb25GdW5jdGlvbikgPT4ge1xuICAgIGNvbnN0IGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gY29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSk7XG5cbiAgaWYgKGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgY29udGFpbmVkIGFzc2VydGlvbi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBjb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5RGVyaXZlZENvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgZGVyaXZlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoZGVyaXZlZCkge1xuICAgIGNvbnN0IGNvbnRhaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgZGVyaXZlZCAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBjb25zdCBjb250YWluZWRBc3NlcnRpb25OZWdhdGVkID0gaXNBc3NlcnRpb25OZWdhdGVkKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIG5lZ2F0ZWQgPSBjb250YWluZWRBc3NlcnRpb25OZWdhdGVkOyAgLy8vXG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBtZXRhc3RhdGVtZW50VmFyaWFibGVOb2RlcyA9IG1ldGFzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgICB2YXJpYWJsZU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlID0gbWV0YXN0YXRlbWVudFZhcmlhYmxlTm9kZXMuc29tZSgobWV0YXN0YXRlbWVudFZhcmlhYmxlTm9kZSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB2YXJpYWJsZU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlLm1hdGNoKG1ldGFzdGF0ZW1lbnRWYXJpYWJsZU5vZGUpO1xuXG4gICAgICAgICAgICAgIGlmICh2YXJpYWJsZU5vZGVNYXRjaGVzTWV0YUFyZ3VtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKHZhcmlhYmxlTm9kZU1hdGNoZXNNZXRhQXJndW1lbnRWYXJpYWJsZU5vZGUpIHtcbiAgICAgICAgICBkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChuZWdhdGVkKSB7XG4gICAgICAgIGlmICghdmFyaWFibGVOb2RlTWF0Y2hlc01ldGFBcmd1bWVudFZhcmlhYmxlTm9kZSkge1xuICAgICAgICAgIGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSBkZXJpdmVkICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIGNvbnRhaW5lZCBhc3NlcnRpb24uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5U3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uKGNvbnRhaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKCFkZXJpdmVkKSB7XG4gICAgY29uc3QgY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSBzdGF0ZWQgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgaW50cmluc2ljTGV2ZWwgPSBsb2NhbENvbnRleHQuaXNJbnRyaW5zaWNMZXZlbCgpO1xuXG4gICAgaWYgKGludHJpbnNpY0xldmVsKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYFRoZSBzdGF0ZWQgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgY29udGFpbmVkIGFzc2VydGlvbiBjYW5ub3QgYmUgdmVyaWZpZWQgYXQgaW50cmluc2ljIGxldmVsLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBjb250YWluZWRBc3NlcnRpb25Ob2RlLCAvLy9cbiAgICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gbWV0YUxldmVsTm9kZVZlcmlmaWVyLnZlcmlmeU5vblRlcm1pbmFsTm9kZShub25UZXJtaW5hbE5vZGUsIGxvY2FsQ29udGV4dCwgKCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB2ZXJpZmllZEFoZWFkID0gdHJ1ZTtcblxuICAgICAgICAgICAgICByZXR1cm4gdmVyaWZpZWRBaGVhZDtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAvLy9cbiAgICB9XG5cbiAgICBpZiAoc3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlIHN0YXRlZCAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBjb250YWluZWQgYXNzZXJ0aW9uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlDb250YWluZWRBc3NlcnRpb24iLCJ2YXJpYWJsZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGFzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5IiwiY29udGFpbmVkQXNzZXJ0aW9uTm9kZSIsImFzc2lnbm1lbnRzIiwiZGVyaXZlZCIsImxvY2FsQ29udGV4dCIsImNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkIiwiY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJjb250YWluZWRBc3NlcnRpb25GdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uIiwidmVyaWZ5U3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uIiwic29tZSIsImNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiLCJjb250YWluZWRBc3NlcnRpb25OZWdhdGVkIiwiaXNBc3NlcnRpb25OZWdhdGVkIiwidmFyaWFibGVOb2RlIiwibmVnYXRlZCIsIm1ldGFzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzIiwidmFyaWFibGVOb2RlTWF0Y2hlc01ldGFBcmd1bWVudFZhcmlhYmxlTm9kZSIsIm1ldGFzdGF0ZW1lbnRWYXJpYWJsZU5vZGUiLCJtYXRjaCIsInN0YXRlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkIiwiaW50cmluc2ljTGV2ZWwiLCJpc0ludHJpbnNpY0xldmVsIiwibm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlVmVyaWZpZWQiLCJtZXRhTGV2ZWxOb2RlVmVyaWZpZXIiLCJ2ZXJpZnlOb25UZXJtaW5hbE5vZGUiLCJ2ZXJpZmllZEFoZWFkIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFVQTs7O2VBQXdCQTs7O2dFQVJVO3NCQUVDO3FCQUNHOzs7Ozs7QUFFdEMsSUFBTUMsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDLHVDQUM5QkMsa0NBQWtDQyxJQUFBQSxpQkFBVSxFQUFDO0FBRXBDLFNBQVNKLHlCQUF5Qkssc0JBQXNCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxF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
|
|
@@ -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,121 +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 verifyFrameAssertion;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _frame = /*#__PURE__*/ _interop_require_default(require("../verify/frame"));
|
|
12
|
-
var _frame1 = /*#__PURE__*/ _interop_require_default(require("../metaType/frame"));
|
|
13
|
-
var _frameAssertion = /*#__PURE__*/ _interop_require_default(require("../frameAssertion"));
|
|
14
|
-
var _frameAssertion1 = /*#__PURE__*/ _interop_require_default(require("../assignment/frameAssertion"));
|
|
15
|
-
var _array = require("../utilities/array");
|
|
16
|
-
var _query = require("../utilities/query");
|
|
17
|
-
function _interop_require_default(obj) {
|
|
18
|
-
return obj && obj.__esModule ? obj : {
|
|
19
|
-
default: obj
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
var frameNodeQuery = (0, _query.nodeQuery)("/frameAssertion/frame!"), metavariableNodeQuery = (0, _query.nodeQuery)("/frameAssertion/metavariable!");
|
|
23
|
-
function verifyFrameAssertion(frameAssertionNode, assignments, derived, localContext) {
|
|
24
|
-
var frameAssertionVerified;
|
|
25
|
-
var frameAssertionString = localContext.nodeAsString(frameAssertionNode);
|
|
26
|
-
localContext.trace("Verifying the '".concat(frameAssertionString, "' frame assertion..."), frameAssertionNode);
|
|
27
|
-
var verifyFrameAssertionFunctions = [
|
|
28
|
-
verifyDerivedFrameAssertion,
|
|
29
|
-
verifyStatedFrameAssertion
|
|
30
|
-
];
|
|
31
|
-
frameAssertionVerified = verifyFrameAssertionFunctions.some(function(verifyFrameAssertionFunction) {
|
|
32
|
-
var frameAssertionVerified = verifyFrameAssertionFunction(frameAssertionNode, assignments, derived, localContext);
|
|
33
|
-
if (frameAssertionVerified) {
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
if (frameAssertionVerified) {
|
|
38
|
-
localContext.debug("...verified the '".concat(frameAssertionString, "' frame assertion."), frameAssertionNode);
|
|
39
|
-
}
|
|
40
|
-
return frameAssertionVerified;
|
|
41
|
-
}
|
|
42
|
-
function verifyDerivedFrameAssertion(frameAssertionNode, assignments, derived, localContext) {
|
|
43
|
-
var derivedFrameAssertionVerified = false;
|
|
44
|
-
if (derived) {
|
|
45
|
-
var frameAssertionString = localContext.nodeAsString(frameAssertionNode);
|
|
46
|
-
localContext.trace("Verifying the '".concat(frameAssertionString, "' derived frame assertion..."), frameAssertionNode);
|
|
47
|
-
var metavariableNode = metavariableNodeQuery(frameAssertionNode), metavariableVerified = verifyMetavariable(metavariableNode, localContext);
|
|
48
|
-
if (metavariableVerified) {
|
|
49
|
-
var frameAssertion = localContext.findFrameAssertionByMetavariableNode(metavariableNode);
|
|
50
|
-
if (frameAssertion !== null) {
|
|
51
|
-
var frames = [], frameNode = frameNodeQuery(frameAssertionNode), frameVerified = (0, _frame.default)(frameNode, frames, assignments, derived, localContext);
|
|
52
|
-
if (frameVerified) {
|
|
53
|
-
var firstFrame = (0, _array.first)(frames), frame = firstFrame, frameSingular = frame.isSingular();
|
|
54
|
-
if (frameSingular) {
|
|
55
|
-
var declaration = frame.getDeclaration(), metavariableNode1 = declaration.getMetavariableNode(), metaLemma = localContext.findMetaLemmaByMetavariableNode(metavariableNode1), metatheorem = localContext.findMetatheoremByMetavariableNode(metavariableNode1), metaLemmaMetatheorem = metaLemma || metatheorem; ///
|
|
56
|
-
if (metaLemmaMetatheorem !== null) {
|
|
57
|
-
var declarationMatchesMetaLemmaMetatheorem = declaration.matchMetaLemmaOrMetaTheorem(metaLemmaMetatheorem), frameAssertionMatchesMetaLemmaMetatheorem = frameAssertion.matchMetaLemmaOrMetaTheorem(metaLemmaMetatheorem);
|
|
58
|
-
derivedFrameAssertionVerified = declarationMatchesMetaLemmaMetatheorem && frameAssertionMatchesMetaLemmaMetatheorem;
|
|
59
|
-
} else {
|
|
60
|
-
var metavariableString = localContext.nodeAsString(metavariableNode1);
|
|
61
|
-
localContext.debug("There are no meta-lemmas or metatheorems corresponding to the '".concat(metavariableString, "' metavariable."), frameAssertionNode);
|
|
62
|
-
}
|
|
63
|
-
} else {
|
|
64
|
-
var frameString = localContext.nodeAsString(frameNode);
|
|
65
|
-
localContext.debug("The '".concat(frameString, "' is not singular."), frameAssertionNode);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
} else {
|
|
69
|
-
var metavariableString1 = localContext.nodeAsString(metavariableNode);
|
|
70
|
-
localContext.debug("There is no frameAssertion present for the '".concat(metavariableString1, "' metavariable."), frameAssertionNode);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
if (derivedFrameAssertionVerified) {
|
|
74
|
-
localContext.debug("...verified the '".concat(frameAssertionString, "' derived frame assertion."), frameAssertionNode);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
return derivedFrameAssertionVerified;
|
|
78
|
-
}
|
|
79
|
-
function verifyStatedFrameAssertion(frameAssertionNode, assignments, derived, localContext) {
|
|
80
|
-
var statedFrameAssertionVerified = false;
|
|
81
|
-
if (!derived) {
|
|
82
|
-
var frameAssertionString = localContext.nodeAsString(frameAssertionNode);
|
|
83
|
-
localContext.trace("Verifying the '".concat(frameAssertionString, "' stated frame assertion..."), frameAssertionNode);
|
|
84
|
-
var metavariableNode = metavariableNodeQuery(frameAssertionNode), metavariableVerified = verifyMetavariable(metavariableNode, localContext);
|
|
85
|
-
if (metavariableVerified) {
|
|
86
|
-
var frames = [], frameNode = frameNodeQuery(frameAssertionNode), frameVerified = (0, _frame.default)(frameNode, frames, assignments, derived, localContext);
|
|
87
|
-
if (frameVerified) {
|
|
88
|
-
var firstFrame = (0, _array.first)(frames), frame = firstFrame, frameAssertion = _frameAssertion.default.fromFrameAssertionNodeFrameAndMetavariableNode(frameAssertionNode, frame, metavariableNode), frameAssertionAssignment = _frameAssertion1.default.fromFrameAssertion(frameAssertion), assignment = frameAssertionAssignment;
|
|
89
|
-
assignments.push(assignment);
|
|
90
|
-
statedFrameAssertionVerified = true;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
if (statedFrameAssertionVerified) {
|
|
94
|
-
localContext.debug("...verified the '".concat(frameAssertionString, "' stated frame assertion."), frameAssertionNode);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
return statedFrameAssertionVerified;
|
|
98
|
-
}
|
|
99
|
-
function verifyMetavariable(metavariableNode, localContext) {
|
|
100
|
-
var metavariableVerified = false;
|
|
101
|
-
var metavariableString = localContext.nodeAsString(metavariableNode);
|
|
102
|
-
localContext.trace("Verifying the '".concat(metavariableString, "' metavariable..."), metavariableNode);
|
|
103
|
-
var metavariable = localContext.findMetavariableByMetavariableNode(metavariableNode, localContext);
|
|
104
|
-
if (metavariable !== null) {
|
|
105
|
-
var metaType = metavariable.getMetaType();
|
|
106
|
-
if (metaType === _frame1.default) {
|
|
107
|
-
metavariableVerified = true;
|
|
108
|
-
} else {
|
|
109
|
-
var frameMetaTypeName = _frame1.default.getName(), metaTypeString = metaType.asString();
|
|
110
|
-
localContext.debug("The '".concat(metavariableString, "' metavariable's meta-type is '").concat(metaTypeString, "' when it should be '").concat(frameMetaTypeName, "'."), metavariableNode);
|
|
111
|
-
}
|
|
112
|
-
} else {
|
|
113
|
-
localContext.debug("The '".concat(metavariableString, "' metavariable is not present'."), metavariableNode);
|
|
114
|
-
}
|
|
115
|
-
if (metavariableVerified) {
|
|
116
|
-
localContext.debug("...verified the '".concat(metavariableString, "' metavariable."), metavariableNode);
|
|
117
|
-
}
|
|
118
|
-
return metavariableVerified;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvZnJhbWVBc3NlcnRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlGcmFtZSBmcm9tIFwiLi4vdmVyaWZ5L2ZyYW1lXCI7XG5pbXBvcnQgZnJhbWVNZXRhVHlwZSBmcm9tIFwiLi4vbWV0YVR5cGUvZnJhbWVcIjtcbmltcG9ydCBGcmFtZUFzc2VydGlvbiBmcm9tIFwiLi4vZnJhbWVBc3NlcnRpb25cIjtcbmltcG9ydCBGcmFtZUFzc2VydGlvbkFzc2lnbm1lbnQgZnJvbSBcIi4uL2Fzc2lnbm1lbnQvZnJhbWVBc3NlcnRpb25cIjtcblxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5cbmNvbnN0IGZyYW1lTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2ZyYW1lQXNzZXJ0aW9uL2ZyYW1lIVwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9mcmFtZUFzc2VydGlvbi9tZXRhdmFyaWFibGUhXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlGcmFtZUFzc2VydGlvbihmcmFtZUFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGZyYW1lQXNzZXJ0aW9uVmVyaWZpZWQ7XG5cbiAgY29uc3QgZnJhbWVBc3NlcnRpb25TdHJpbmcgPSBsb2NhbENvbnRleHQubm9kZUFzU3RyaW5nKGZyYW1lQXNzZXJ0aW9uTm9kZSk7XG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2ZyYW1lQXNzZXJ0aW9uU3RyaW5nfScgZnJhbWUgYXNzZXJ0aW9uLi4uYCwgZnJhbWVBc3NlcnRpb25Ob2RlKTtcblxuICBjb25zdCB2ZXJpZnlGcmFtZUFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgICB2ZXJpZnlEZXJpdmVkRnJhbWVBc3NlcnRpb24sXG4gICAgdmVyaWZ5U3RhdGVkRnJhbWVBc3NlcnRpb25cbiAgXTtcblxuICBmcmFtZUFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5RnJhbWVBc3NlcnRpb25GdW5jdGlvbnMuc29tZSgodmVyaWZ5RnJhbWVBc3NlcnRpb25GdW5jdGlvbikgPT4ge1xuICAgIGNvbnN0IGZyYW1lQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlGcmFtZUFzc2VydGlvbkZ1bmN0aW9uKGZyYW1lQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAoZnJhbWVBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9KTtcblxuICBpZiAoZnJhbWVBc3NlcnRpb25WZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2ZyYW1lQXNzZXJ0aW9uU3RyaW5nfScgZnJhbWUgYXNzZXJ0aW9uLmAsIGZyYW1lQXNzZXJ0aW9uTm9kZSk7XG4gIH1cblxuICByZXR1cm4gZnJhbWVBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5RGVyaXZlZEZyYW1lQXNzZXJ0aW9uKGZyYW1lQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVyaXZlZEZyYW1lQXNzZXJ0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoZGVyaXZlZCkge1xuICAgIGNvbnN0IGZyYW1lQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhmcmFtZUFzc2VydGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2ZyYW1lQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBmcmFtZSBhc3NlcnRpb24uLi5gLCBmcmFtZUFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShmcmFtZUFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVZlcmlmaWVkID0gdmVyaWZ5TWV0YXZhcmlhYmxlKG1ldGF2YXJpYWJsZU5vZGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGZyYW1lQXNzZXJ0aW9uID0gbG9jYWxDb250ZXh0LmZpbmRGcmFtZUFzc2VydGlvbkJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKTtcblxuICAgICAgaWYgKGZyYW1lQXNzZXJ0aW9uICE9PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGZyYW1lcyA9IFtdLFxuICAgICAgICAgICAgICBmcmFtZU5vZGUgPSBmcmFtZU5vZGVRdWVyeShmcmFtZUFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgICAgICBmcmFtZVZlcmlmaWVkID0gdmVyaWZ5RnJhbWUoZnJhbWVOb2RlLCBmcmFtZXMsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpO1xuXG4gICAgICAgIGlmIChmcmFtZVZlcmlmaWVkKSB7XG4gICAgICAgICAgY29uc3QgZmlyc3RGcmFtZSA9IGZpcnN0KGZyYW1lcyksXG4gICAgICAgICAgICAgICAgZnJhbWUgPSBmaXJzdEZyYW1lLCAvLy9cbiAgICAgICAgICAgICAgICBmcmFtZVNpbmd1bGFyID0gZnJhbWUuaXNTaW5ndWxhcigpO1xuXG4gICAgICAgICAgaWYgKGZyYW1lU2luZ3VsYXIpIHtcbiAgICAgICAgICAgIGNvbnN0IGRlY2xhcmF0aW9uID0gZnJhbWUuZ2V0RGVjbGFyYXRpb24oKSxcbiAgICAgICAgICAgICAgICAgIG1ldGF2YXJpYWJsZU5vZGUgPSBkZWNsYXJhdGlvbi5nZXRNZXRhdmFyaWFibGVOb2RlKCksXG4gICAgICAgICAgICAgICAgICBtZXRhTGVtbWEgPSBsb2NhbENvbnRleHQuZmluZE1ldGFMZW1tYUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgICAgICAgIG1ldGF0aGVvcmVtID0gbG9jYWxDb250ZXh0LmZpbmRNZXRhdGhlb3JlbUJ5TWV0YXZhcmlhYmxlTm9kZShtZXRhdmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgICAgICAgIG1ldGFMZW1tYU1ldGF0aGVvcmVtID0gKG1ldGFMZW1tYSB8fCBtZXRhdGhlb3JlbSk7ICAvLy9cblxuICAgICAgICAgICAgaWYgKG1ldGFMZW1tYU1ldGF0aGVvcmVtICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGRlY2xhcmF0aW9uTWF0Y2hlc01ldGFMZW1tYU1ldGF0aGVvcmVtID0gZGVjbGFyYXRpb24ubWF0Y2hNZXRhTGVtbWFPck1ldGFUaGVvcmVtKG1ldGFMZW1tYU1ldGF0aGVvcmVtKSxcbiAgICAgICAgICAgICAgICAgICAgZnJhbWVBc3NlcnRpb25NYXRjaGVzTWV0YUxlbW1hTWV0YXRoZW9yZW0gPSBmcmFtZUFzc2VydGlvbi5tYXRjaE1ldGFMZW1tYU9yTWV0YVRoZW9yZW0obWV0YUxlbW1hTWV0YXRoZW9yZW0pO1xuXG4gICAgICAgICAgICAgIGRlcml2ZWRGcmFtZUFzc2VydGlvblZlcmlmaWVkID0gKGRlY2xhcmF0aW9uTWF0Y2hlc01ldGFMZW1tYU1ldGF0aGVvcmVtICYmIGZyYW1lQXNzZXJ0aW9uTWF0Y2hlc01ldGFMZW1tYU1ldGF0aGVvcmVtKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGVyZSBhcmUgbm8gbWV0YS1sZW1tYXMgb3IgbWV0YXRoZW9yZW1zIGNvcnJlc3BvbmRpbmcgdG8gdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS5gLCBmcmFtZUFzc2VydGlvbk5vZGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBmcmFtZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoZnJhbWVOb2RlKTtcblxuICAgICAgICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGUgJyR7ZnJhbWVTdHJpbmd9JyBpcyBub3Qgc2luZ3VsYXIuYCwgZnJhbWVBc3NlcnRpb25Ob2RlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGVyZSBpcyBubyBmcmFtZUFzc2VydGlvbiBwcmVzZW50IGZvciB0aGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlLmAsIGZyYW1lQXNzZXJ0aW9uTm9kZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGRlcml2ZWRGcmFtZUFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtmcmFtZUFzc2VydGlvblN0cmluZ30nIGRlcml2ZWQgZnJhbWUgYXNzZXJ0aW9uLmAsIGZyYW1lQXNzZXJ0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWRGcmFtZUFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZWRGcmFtZUFzc2VydGlvbihmcmFtZUFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IHN0YXRlZEZyYW1lQXNzZXJ0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBpZiAoIWRlcml2ZWQpIHtcbiAgICBjb25zdCBmcmFtZUFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoZnJhbWVBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtmcmFtZUFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBmcmFtZSBhc3NlcnRpb24uLi5gLCBmcmFtZUFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShmcmFtZUFzc2VydGlvbk5vZGUpLFxuICAgICAgICAgIG1ldGF2YXJpYWJsZVZlcmlmaWVkID0gdmVyaWZ5TWV0YXZhcmlhYmxlKG1ldGF2YXJpYWJsZU5vZGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgICBpZiAobWV0YXZhcmlhYmxlVmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGZyYW1lcyA9IFtdLFxuICAgICAgICAgICAgZnJhbWVOb2RlID0gZnJhbWVOb2RlUXVlcnkoZnJhbWVBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICAgIGZyYW1lVmVyaWZpZWQgPSB2ZXJpZnlGcmFtZShmcmFtZU5vZGUsIGZyYW1lcywgYXNzaWdubWVudHMsIGRlcml2ZWQsIGxvY2FsQ29udGV4dCk7XG5cbiAgICAgIGlmIChmcmFtZVZlcmlmaWVkKSB7XG4gICAgICAgIGNvbnN0IGZpcnN0RnJhbWUgPSBmaXJzdChmcmFtZXMpLFxuICAgICAgICAgICAgICBmcmFtZSA9IGZpcnN0RnJhbWUsIC8vL1xuICAgICAgICAgICAgICBmcmFtZUFzc2VydGlvbiA9IEZyYW1lQXNzZXJ0aW9uLmZyb21GcmFtZUFzc2VydGlvbk5vZGVGcmFtZUFuZE1ldGF2YXJpYWJsZU5vZGUoZnJhbWVBc3NlcnRpb25Ob2RlLCBmcmFtZSwgbWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgICAgIGZyYW1lQXNzZXJ0aW9uQXNzaWdubWVudCA9IEZyYW1lQXNzZXJ0aW9uQXNzaWdubWVudC5mcm9tRnJhbWVBc3NlcnRpb24oZnJhbWVBc3NlcnRpb24pLFxuICAgICAgICAgICAgICBhc3NpZ25tZW50ID0gZnJhbWVBc3NlcnRpb25Bc3NpZ25tZW50O1xuXG4gICAgICAgIGFzc2lnbm1lbnRzLnB1c2goYXNzaWdubWVudCk7XG5cbiAgICAgICAgc3RhdGVkRnJhbWVBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHN0YXRlZEZyYW1lQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2ZyYW1lQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVkIGZyYW1lIGFzc2VydGlvbi5gLCBmcmFtZUFzc2VydGlvbk5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBzdGF0ZWRGcmFtZUFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlNZXRhdmFyaWFibGUobWV0YXZhcmlhYmxlTm9kZSwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBtZXRhdmFyaWFibGVWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZVN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcobWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS4uLmAsIG1ldGF2YXJpYWJsZU5vZGUpO1xuXG4gIGNvbnN0IG1ldGF2YXJpYWJsZSA9IGxvY2FsQ29udGV4dC5maW5kTWV0YXZhcmlhYmxlQnlNZXRhdmFyaWFibGVOb2RlKG1ldGF2YXJpYWJsZU5vZGUsIGxvY2FsQ29udGV4dCk7XG5cbiAgaWYgKG1ldGF2YXJpYWJsZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG1ldGFUeXBlID0gbWV0YXZhcmlhYmxlLmdldE1ldGFUeXBlKCk7XG5cbiAgICBpZiAobWV0YVR5cGUgPT09IGZyYW1lTWV0YVR5cGUpIHtcbiAgICAgIG1ldGF2YXJpYWJsZVZlcmlmaWVkID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZnJhbWVNZXRhVHlwZU5hbWUgPSBmcmFtZU1ldGFUeXBlLmdldE5hbWUoKSxcbiAgICAgICAgICAgIG1ldGFUeXBlU3RyaW5nID0gbWV0YVR5cGUuYXNTdHJpbmcoKTtcblxuICAgICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlJ3MgbWV0YS10eXBlIGlzICcke21ldGFUeXBlU3RyaW5nfScgd2hlbiBpdCBzaG91bGQgYmUgJyR7ZnJhbWVNZXRhVHlwZU5hbWV9Jy5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGBUaGUgJyR7bWV0YXZhcmlhYmxlU3RyaW5nfScgbWV0YXZhcmlhYmxlIGlzIG5vdCBwcmVzZW50Jy5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIGlmIChtZXRhdmFyaWFibGVWZXJpZmllZCkge1xuICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke21ldGF2YXJpYWJsZVN0cmluZ30nIG1ldGF2YXJpYWJsZS5gLCBtZXRhdmFyaWFibGVOb2RlKTtcbiAgfVxuXG4gIHJldHVybiBtZXRhdmFyaWFibGVWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlGcmFtZUFzc2VydGlvbiIsImZyYW1lTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlTm9kZVF1ZXJ5IiwiZnJhbWVBc3NlcnRpb25Ob2RlIiwiYXNzaWdubWVudHMiLCJkZXJpdmVkIiwibG9jYWxDb250ZXh0IiwiZnJhbWVBc3NlcnRpb25WZXJpZmllZCIsImZyYW1lQXNzZXJ0aW9uU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwidHJhY2UiLCJ2ZXJpZnlGcmFtZUFzc2VydGlvbkZ1bmN0aW9ucyIsInZlcmlmeURlcml2ZWRGcmFtZUFzc2VydGlvbiIsInZlcmlmeVN0YXRlZEZyYW1lQXNzZXJ0aW9uIiwic29tZSIsInZlcmlmeUZyYW1lQXNzZXJ0aW9uRnVuY3Rpb24iLCJkZWJ1ZyIsImRlcml2ZWRGcmFtZUFzc2VydGlvblZlcmlmaWVkIiwibWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZVZlcmlmaWVkIiwidmVyaWZ5TWV0YXZhcmlhYmxlIiwiZnJhbWVBc3NlcnRpb24iLCJmaW5kRnJhbWVBc3NlcnRpb25CeU1ldGF2YXJpYWJsZU5vZGUiLCJmcmFtZXMiLCJmcmFtZU5vZGUiLCJmcmFtZVZlcmlmaWVkIiwidmVyaWZ5RnJhbWUiLCJmaXJzdEZyYW1lIiwiZmlyc3QiLCJmcmFtZSIsImZyYW1lU2luZ3VsYXIiLCJpc1Npbmd1bGFyIiwiZGVjbGFyYXRpb24iLCJnZXREZWNsYXJhdGlvbiIsImdldE1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhTGVtbWEiLCJmaW5kTWV0YUxlbW1hQnlNZXRhdmFyaWFibGVOb2RlIiwibWV0YXRoZW9yZW0iLCJmaW5kTWV0YXRoZW9yZW1CeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhTGVtbWFNZXRhdGhlb3JlbSIsImRlY2xhcmF0aW9uTWF0Y2hlc01ldGFMZW1tYU1ldGF0aGVvcmVtIiwibWF0Y2hNZXRhTGVtbWFPck1ldGFUaGVvcmVtIiwiZnJhbWVBc3NlcnRpb25NYXRjaGVzTWV0YUxlbW1hTWV0YXRoZW9yZW0iLCJtZXRhdmFyaWFibGVTdHJpbmciLCJmcmFtZVN0cmluZyIsInN0YXRlZEZyYW1lQXNzZXJ0aW9uVmVyaWZpZWQiLCJGcmFtZUFzc2VydGlvbiIsImZyb21GcmFtZUFzc2VydGlvbk5vZGVGcmFtZUFuZE1ldGF2YXJpYWJsZU5vZGUiLCJmcmFtZUFzc2VydGlvbkFzc2lnbm1lbnQiLCJGcmFtZUFzc2VydGlvbkFzc2lnbm1lbnQiLCJmcm9tRnJhbWVBc3NlcnRpb24iLCJhc3NpZ25tZW50IiwicHVzaCIsIm1ldGF2YXJpYWJsZSIsImZpbmRNZXRhdmFyaWFibGVCeU1ldGF2YXJpYWJsZU5vZGUiLCJtZXRhVHlwZSIsImdldE1ldGFUeXBlIiwiZnJhbWVNZXRhVHlwZSIsImZyYW1lTWV0YVR5cGVOYW1lIiwiZ2V0TmFtZSIsIm1ldGFUeXBlU3RyaW5nIiwiYXNTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWFBOzs7ZUFBd0JBOzs7NERBWEE7NkRBQ0U7cUVBQ0M7c0VBQ1U7cUJBRWY7cUJBQ0k7Ozs7OztBQUUxQixJQUFNQyxpQkFBaUJDLElBQUFBLGdCQUFTLEVBQUMsMkJBQzNCQyx3QkFBd0JELElBQUFBLGdCQUFTLEVBQUM7QUFFekIsU0FBU0YscUJBQXFCSSxrQkFBa0IsRUFBRUMsV0FBVyxFQUFFQyxPQUFPLEVBQUVDLFlBQVk7SUFDakcsSUFBSUM7SUFFSixJQUFNQyx1QkFBdUJGLGFBQWFHLFlBQVksQ0FBQ047SUFFdkRHLGFBQWFJLEtBQUssQ0FBQyxBQUFDLGtCQUFzQyxPQUFyQkYsc0JBQXFCLHlCQUF1Qkw7SUFFakYsSUFBTVEsZ0NBQWdDO1FBQ3BDQztRQUNBQztLQUNEO0lBRUROLHlCQUF5QkksOEJBQThCRyxJQUFJLENBQUMsU0FBQ0M7UUFDM0QsSUFBTVIseUJBQXlCUSw2QkFBNkJaLG9CQUFvQkMsYUFBYUMsU0FBU0M7UUFFdEcsSUFBSUMsd0JBQXdCO1lBQzFCLE9BQU87UUFDVDtJQUNGO0lBRUEsSUFBSUEsd0JBQXdCO1FBQzFCRCxhQUFhVSxLQUFLLENBQUMsQUFBQyxvQkFBd0MsT0FBckJSLHNCQUFxQix1QkFBcUJMO0lBQ25GO0lBRUEsT0FBT0k7QUFDVDtBQUVBLFNBQVNLLDRCQUE0QlQsa0JBQWtCLEVBQUVDLFdBQVcsRUFBRUMsT0FBTyxFQUFFQyxZQUFZO0lBQ3pGLElBQUlXLGdDQUFnQztJQUVwQyxJQUFJWixTQUFTO1FBQ1gsSUFBTUcsdUJBQXVCRixhQUFhRyxZQUFZLENBQUNOO1FBRXZERyxhQUFhSSxLQUFLLENBQUMs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
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
export default class FrameAssertionAssignment {
|
|
4
|
-
constructor(frameAssertion) {
|
|
5
|
-
this.frameAssertion = frameAssertion;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
getFrameAssertion() {
|
|
9
|
-
return this.frameAssertion;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
assign(localContext) {
|
|
13
|
-
const frameAssertionAdded = localContext.addFrameAssertion(this.frameAssertion),
|
|
14
|
-
frameAssertionNode = this.frameAssertion.getNode(),
|
|
15
|
-
frameAssertionString = localContext.nodeAsString(frameAssertionNode),
|
|
16
|
-
frameAssertionAssigned = frameAssertionAdded; ///
|
|
17
|
-
|
|
18
|
-
frameAssertionAssigned ?
|
|
19
|
-
localContext.trace(`Assigned the '${frameAssertionString}' frame assertion.`, frameAssertionNode) :
|
|
20
|
-
localContext.debug(`Unable to assign the '${frameAssertionString}' frame assertion.`, frameAssertionNode);
|
|
21
|
-
|
|
22
|
-
return frameAssertionAssigned;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
static fromFrameAssertion(frameAssertion) {
|
|
26
|
-
const frameAssertionAssignment = new FrameAssertionAssignment(frameAssertion);
|
|
27
|
-
|
|
28
|
-
return frameAssertionAssignment;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
@@ -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
|
-
}
|