occam-verify-cli 0.0.581 → 0.0.583
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/axiom.js +5 -5
- package/lib/axiomLemmaTheoremConjecture.js +26 -26
- package/lib/conjecture.js +3 -3
- package/lib/consequent.js +80 -0
- package/lib/lemma.js +4 -4
- package/lib/theorem.js +4 -4
- package/lib/verifier/termForVariable/{consequence.js → consequent.js} +1 -1
- package/lib/verify/axiom.js +6 -6
- package/lib/verify/conjecture.js +8 -8
- package/lib/verify/consequent.js +36 -0
- package/lib/verify/lemma.js +7 -7
- package/lib/verify/theorem.js +7 -7
- package/package.json +4 -4
- package/src/axiom.js +2 -2
- package/src/axiomLemmaTheoremConjecture.js +24 -24
- package/src/conjecture.js +1 -1
- package/src/{consequence.js → consequent.js} +7 -7
- package/src/lemma.js +1 -1
- package/src/theorem.js +1 -1
- package/src/verify/axiom.js +10 -10
- package/src/verify/conjecture.js +10 -11
- package/src/verify/consequent.js +37 -0
- package/src/verify/lemma.js +10 -10
- package/src/verify/theorem.js +10 -11
- package/lib/consequence.js +0 -80
- package/lib/verify/consequence.js +0 -36
- package/src/verify/consequence.js +0 -37
- /package/src/verifier/termForVariable/{consequence.js → consequent.js} +0 -0
package/lib/consequence.js
DELETED
|
@@ -1,80 +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 Consequence;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _string = require("./utilities/string");
|
|
12
|
-
var _node = require("./utilities/node");
|
|
13
|
-
var _consequence = require("./verifier/termForVariable/consequence");
|
|
14
|
-
function _class_call_check(instance, Constructor) {
|
|
15
|
-
if (!(instance instanceof Constructor)) {
|
|
16
|
-
throw new TypeError("Cannot call a class as a function");
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
function _defineProperties(target, props) {
|
|
20
|
-
for(var i = 0; i < props.length; i++){
|
|
21
|
-
var descriptor = props[i];
|
|
22
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
23
|
-
descriptor.configurable = true;
|
|
24
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
25
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
29
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
30
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
31
|
-
return Constructor;
|
|
32
|
-
}
|
|
33
|
-
var Consequence = /*#__PURE__*/ function() {
|
|
34
|
-
function Consequence(statementNode) {
|
|
35
|
-
_class_call_check(this, Consequence);
|
|
36
|
-
this.statementNode = statementNode;
|
|
37
|
-
}
|
|
38
|
-
_create_class(Consequence, [
|
|
39
|
-
{
|
|
40
|
-
key: "getStatementNode",
|
|
41
|
-
value: function getStatementNode() {
|
|
42
|
-
return this.statementNode;
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
key: "matchStatementNode",
|
|
47
|
-
value: function matchStatementNode(statementNode, substitutions, proofContext) {
|
|
48
|
-
var nonTerminalNodeA = this.statementNode, nonTerminalNodeB = statementNode, nonTerminalNodeVerified = _consequence.consequenceTermForVariableVerifier.verifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, substitutions, proofContext), statementNodeMatches = nonTerminalNodeVerified; ///
|
|
49
|
-
return statementNodeMatches;
|
|
50
|
-
}
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
key: "toJSON",
|
|
54
|
-
value: function toJSON(tokens) {
|
|
55
|
-
var statementString = (0, _string.nodeAsString)(this.statementNode, tokens), statement = statementString, json = {
|
|
56
|
-
statement: statement
|
|
57
|
-
};
|
|
58
|
-
return json;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
], [
|
|
62
|
-
{
|
|
63
|
-
key: "fromStatementNode",
|
|
64
|
-
value: function fromStatementNode(statementNode) {
|
|
65
|
-
var consequence = new Consequence(statementNode);
|
|
66
|
-
return consequence;
|
|
67
|
-
}
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
key: "fromJSONAndFileContext",
|
|
71
|
-
value: function fromJSONAndFileContext(json, fileContext) {
|
|
72
|
-
var statement = json.statement, statementString = statement, lexer = fileContext.getLexer(), parser = fileContext.getParser(), statementNode = (0, _node.statementNodeFromStatementString)(statementString, lexer, parser), consequence = new Consequence(statementNode);
|
|
73
|
-
return consequence;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
]);
|
|
77
|
-
return Consequence;
|
|
78
|
-
}();
|
|
79
|
-
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25zZXF1ZW5jZS5qcyIsIjw8anN4LWNvbmZpZy1wcmFnbWEuanM+PiJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbm9kZUFzU3RyaW5nIH0gZnJvbSBcIi4vdXRpbGl0aWVzL3N0cmluZ1wiO1xuaW1wb3J0IHsgc3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRTdHJpbmcgfSBmcm9tIFwiLi91dGlsaXRpZXMvbm9kZVwiO1xuaW1wb3J0IHsgY29uc2VxdWVuY2VUZXJtRm9yVmFyaWFibGVWZXJpZmllciB9IGZyb20gXCIuL3ZlcmlmaWVyL3Rlcm1Gb3JWYXJpYWJsZS9jb25zZXF1ZW5jZVwiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb25zZXF1ZW5jZSB7XG4gIGNvbnN0cnVjdG9yKHN0YXRlbWVudE5vZGUpIHtcbiAgICB0aGlzLnN0YXRlbWVudE5vZGUgPSBzdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgZ2V0U3RhdGVtZW50Tm9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZW1lbnROb2RlO1xuICB9XG5cbiAgbWF0Y2hTdGF0ZW1lbnROb2RlKHN0YXRlbWVudE5vZGUsIHN1YnN0aXR1dGlvbnMsIHByb29mQ29udGV4dCkge1xuICAgIGNvbnN0IG5vblRlcm1pbmFsTm9kZUEgPSB0aGlzLnN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgICBub25UZXJtaW5hbE5vZGVCID0gc3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICAgIG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkID0gY29uc2VxdWVuY2VUZXJtRm9yVmFyaWFibGVWZXJpZmllci52ZXJpZnlOb25UZXJtaW5hbE5vZGUobm9uVGVybWluYWxOb2RlQSwgbm9uVGVybWluYWxOb2RlQiwgc3Vic3RpdHV0aW9ucywgcHJvb2ZDb250ZXh0KSxcbiAgICAgICAgICBzdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IG5vblRlcm1pbmFsTm9kZVZlcmlmaWVkOyAvLy9cblxuICAgIHJldHVybiBzdGF0ZW1lbnROb2RlTWF0Y2hlcztcbiAgfVxuXG4gIHRvSlNPTih0b2tlbnMpIHtcbiAgICBjb25zdCBzdGF0ZW1lbnRTdHJpbmcgPSBub2RlQXNTdHJpbmcodGhpcy5zdGF0ZW1lbnROb2RlLCB0b2tlbnMpLFxuICAgICAgICAgIHN0YXRlbWVudCA9IHN0YXRlbWVudFN0cmluZywgIC8vL1xuICAgICAgICAgIGpzb24gPSB7XG4gICAgICAgICAgICBzdGF0ZW1lbnRcbiAgICAgICAgICB9O1xuXG4gICAgcmV0dXJuIGpzb247XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSkge1xuICAgIGNvbnN0IGNvbnNlcXVlbmNlID0gbmV3IENvbnNlcXVlbmNlKHN0YXRlbWVudE5vZGUpO1xuXG4gICAgcmV0dXJuIGNvbnNlcXVlbmNlO1xuICB9XG5cbiAgc3RhdGljIGZyb21KU09OQW5kRmlsZUNvbnRleHQoanNvbiwgZmlsZUNvbnRleHQpIHtcbiAgICBjb25zdCB7IHN0YXRlbWVudCB9ID0ganNvbixcbiAgICAgICAgICBzdGF0ZW1lbnRTdHJpbmcgPSBzdGF0ZW1lbnQsICAvLy9cbiAgICAgICAgICBsZXhlciA9IGZpbGVDb250ZXh0LmdldExleGVyKCksXG4gICAgICAgICAgcGFyc2VyID0gZmlsZUNvbnRleHQuZ2V0UGFyc2VyKCksXG4gICAgICAgICAgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVGcm9tU3RhdGVtZW50U3RyaW5nKHN0YXRlbWVudFN0cmluZywgbGV4ZXIsIHBhcnNlciksXG4gICAgICAgICAgY29uc2VxdWVuY2UgPSBuZXcgQ29uc2VxdWVuY2Uoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICByZXR1cm4gY29uc2VxdWVuY2U7XG4gIH1cbn1cbiIsIlJlYWN0LmNyZWF0ZUVsZW1lbnQiXSwibmFtZXMiOlsiQ29uc2VxdWVuY2UiLCJzdGF0ZW1lbnROb2RlIiwiZ2V0U3RhdGVtZW50Tm9kZSIsIm1hdGNoU3RhdGVtZW50Tm9kZSIsInN1YnN0aXR1dGlvbnMiLCJwcm9vZkNvbnRleHQiLCJub25UZXJtaW5hbE5vZGVBIiwibm9uVGVybWluYWxOb2RlQiIsIm5vblRlcm1pbmFsTm9kZVZlcmlmaWVkIiwiY29uc2VxdWVuY2VUZXJtRm9yVmFyaWFibGVWZXJpZmllciIsInZlcmlmeU5vblRlcm1pbmFsTm9kZSIsInN0YXRlbWVudE5vZGVNYXRjaGVzIiwidG9KU09OIiwidG9rZW5zIiwic3RhdGVtZW50U3RyaW5nIiwibm9kZUFzU3RyaW5nIiwic3RhdGVtZW50IiwianNvbiIsImZyb21TdGF0ZW1lbnROb2RlIiwiY29uc2VxdWVuY2UiLCJmcm9tSlNPTkFuZEZpbGVDb250ZXh0IiwiZmlsZUNvbnRleHQiLCJsZXhlciIsImdldExleGVyIiwicGFyc2VyIiwiZ2V0UGFyc2VyIiwic3RhdGVtZW50Tm9kZUZyb21TdGF0ZW1lbnRTdHJpbmciXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O2VBTXFCQTs7O3NCQUpRO29CQUNvQjsyQkFDRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFcEMsSUFBQSxBQUFNQSw0QkFBTjthQUFNQSxZQUNQQyxhQUFhO2dDQURORDtRQUVqQixJQUFJLENBQUNDLGFBQWEsR0FBR0E7O2tCQUZKRDs7WUFLbkJFLEtBQUFBO21CQUFBQSxTQUFBQSxtQkFBbUI7Z0JBQ2pCLE9BQU8sSUFBSSxDQUFDRCxhQUFhO1lBQzNCOzs7WUFFQUUsS0FBQUE7bUJBQUFBLFNBQUFBLG1CQUFtQkYsYUFBYSxFQUFFRyxhQUFhLEVBQUVDLFlBQVksRUFBRTtnQkFDN0QsSUFBTUMsbUJBQW1CLElBQUksQ0FBQ0wsYUFBYSxFQUNyQ00sbUJBQW1CTixlQUNuQk8sMEJBQTBCQywrQ0FBa0MsQ0FBQ0MscUJBQXFCLENBQUNKLGtCQUFrQkMsa0JBQWtCSCxlQUFlQyxlQUN0SU0sdUJBQXVCSCx5QkFBeUIsR0FBRztnQkFFekQsT0FBT0c7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxPQUFPQyxNQUFNLEVBQUU7Z0JBQ2IsSUFBTUMsa0JBQWtCQyxJQUFBQSxvQkFBWSxFQUFDLElBQUksQ0FBQ2QsYUFBYSxFQUFFWSxTQUNuREcsWUFBWUYsaUJBQ1pHLE9BQU87b0JBQ0xELFdBQUFBO2dCQUNGO2dCQUVOLE9BQU9DO1lBQ1Q7Ozs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0Esa0JBQWtCakIsYUFBYSxFQUFFO2dCQUN0QyxJQUFNa0IsY0FBYyxJQTdCSG5CLFlBNkJtQkM7Z0JBRXBDLE9BQU9rQjtZQUNUOzs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EsdUJBQXVCSCxJQUFJLEVBQUVJLFdBQVcsRUFBRTtnQkFDL0MsSUFBTSxBQUFFTCxZQUFjQyxLQUFkRCxXQUNGRixrQkFBa0JFLFdBQ2xCTSxRQUFRRCxZQUFZRSxRQUFRLElBQzVCQyxTQUFTSCxZQUFZSSxTQUFTLElBQzlCeEIsZ0JBQWdCeUIsSUFBQUEsc0NBQWdDLEVBQUNaLGlCQUFpQlEsT0FBT0UsU0FDekVMLGNBQWMsSUF4Q0huQixZQXdDbUJDO2dCQUVwQyxPQUFPa0I7WUFDVDs7O1dBM0NtQm5CIn0=
|
|
@@ -1,36 +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 verifyConsequence;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _consequence = /*#__PURE__*/ _interop_require_default(require("../consequence"));
|
|
12
|
-
var _unqualified = /*#__PURE__*/ _interop_require_default(require("./statement/unqualified"));
|
|
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 statementNodeQuery = (0, _query.nodeQuery)("/unqualifiedStatement/statement!"), unqualifiedStatementNodeQuery = (0, _query.nodeQuery)("/consequence/unqualifiedStatement!");
|
|
20
|
-
function verifyConsequence(consequenceNode, consequences, proofContext) {
|
|
21
|
-
var consequenceVerified = false;
|
|
22
|
-
var consequenceString = proofContext.nodeAsString(consequenceNode);
|
|
23
|
-
proofContext.debug("Verifying the '".concat(consequenceString, "' consequence..."), consequenceNode);
|
|
24
|
-
var derived = false, assignments = [], unqualifiedStatementNode = unqualifiedStatementNodeQuery(consequenceNode), unqualifiedStatementVerified = (0, _unqualified.default)(unqualifiedStatementNode, assignments, derived, proofContext);
|
|
25
|
-
if (unqualifiedStatementVerified) {
|
|
26
|
-
var statementNode = statementNodeQuery(unqualifiedStatementNode), consequence = _consequence.default.fromStatementNode(statementNode);
|
|
27
|
-
consequences.push(consequence);
|
|
28
|
-
consequenceVerified = true;
|
|
29
|
-
}
|
|
30
|
-
if (consequenceVerified) {
|
|
31
|
-
proofContext.info("Verified the '".concat(consequenceString, "' consequence."), consequenceNode);
|
|
32
|
-
}
|
|
33
|
-
return consequenceVerified;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvY29uc2VxdWVuY2UuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBDb25zZXF1ZW5jZSBmcm9tIFwiLi4vY29uc2VxdWVuY2VcIjtcbmltcG9ydCB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi9zdGF0ZW1lbnQvdW5xdWFsaWZpZWRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBzdGF0ZW1lbnROb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdW5xdWFsaWZpZWRTdGF0ZW1lbnQvc3RhdGVtZW50IVwiKSxcbiAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbnNlcXVlbmNlL3VucXVhbGlmaWVkU3RhdGVtZW50IVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5Q29uc2VxdWVuY2UoY29uc2VxdWVuY2VOb2RlLCBjb25zZXF1ZW5jZXMsIHByb29mQ29udGV4dCkge1xuICBsZXQgY29uc2VxdWVuY2VWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGNvbnNlcXVlbmNlU3RyaW5nID0gcHJvb2ZDb250ZXh0Lm5vZGVBc1N0cmluZyhjb25zZXF1ZW5jZU5vZGUpO1xuXG4gIHByb29mQ29udGV4dC5kZWJ1ZyhgVmVyaWZ5aW5nIHRoZSAnJHtjb25zZXF1ZW5jZVN0cmluZ30nIGNvbnNlcXVlbmNlLi4uYCwgY29uc2VxdWVuY2VOb2RlKTtcblxuICBjb25zdCBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgIGFzc2lnbm1lbnRzID0gW10sXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IHVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5KGNvbnNlcXVlbmNlTm9kZSksXG4gICAgICAgIHVucXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlVbnF1YWxpZmllZFN0YXRlbWVudCh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUsIGFzc2lnbm1lbnRzLCBkZXJpdmVkLCBwcm9vZkNvbnRleHQpO1xuXG4gIGlmICh1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkKSB7XG4gICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IHN0YXRlbWVudE5vZGVRdWVyeSh1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUpLFxuICAgICAgICAgIGNvbnNlcXVlbmNlID0gQ29uc2VxdWVuY2UuZnJvbVN0YXRlbWVudE5vZGUoc3RhdGVtZW50Tm9kZSk7XG5cbiAgICBjb25zZXF1ZW5jZXMucHVzaChjb25zZXF1ZW5jZSk7XG5cbiAgICBjb25zZXF1ZW5jZVZlcmlmaWVkID0gdHJ1ZTtcbiAgfVxuXG4gIGlmIChjb25zZXF1ZW5jZVZlcmlmaWVkKSB7XG4gICAgcHJvb2ZDb250ZXh0LmluZm8oYFZlcmlmaWVkIHRoZSAnJHtjb25zZXF1ZW5jZVN0cmluZ30nIGNvbnNlcXVlbmNlLmAsIGNvbnNlcXVlbmNlTm9kZSk7XG4gIH1cblxuICByZXR1cm4gY29uc2VxdWVuY2VWZXJpZmllZDtcbn1cbiJdLCJuYW1lcyI6WyJ2ZXJpZnlDb25zZXF1ZW5jZSIsInN0YXRlbWVudE5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInVucXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5IiwiY29uc2VxdWVuY2VOb2RlIiwiY29uc2VxdWVuY2VzIiwicHJvb2ZDb250ZXh0IiwiY29uc2VxdWVuY2VWZXJpZmllZCIsImNvbnNlcXVlbmNlU3RyaW5nIiwibm9kZUFzU3RyaW5nIiwiZGVidWciLCJkZXJpdmVkIiwiYXNzaWdubWVudHMiLCJ1bnF1YWxpZmllZFN0YXRlbWVudE5vZGUiLCJ1bnF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkIiwidmVyaWZ5VW5xdWFsaWZpZWRTdGF0ZW1lbnQiLCJzdGF0ZW1lbnROb2RlIiwiY29uc2VxdWVuY2UiLCJDb25zZXF1ZW5jZSIsImZyb21TdGF0ZW1lbnROb2RlIiwicHVzaCIsImluZm8iXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVVBOzs7ZUFBd0JBOzs7a0VBUkE7a0VBQ2U7cUJBRWI7Ozs7OztBQUUxQixJQUFNQyxxQkFBcUJDLElBQUFBLGdCQUFTLEVBQUMscUNBQy9CQyxnQ0FBZ0NELElBQUFBLGdCQUFTLEVBQUM7QUFFakMsU0FBU0Ysa0JBQWtCSSxlQUFlLEVBQUVDLFlBQVksRUFBRUMsWUFBWSxFQUFFO0lBQ3JGLElBQUlDLHNCQUFzQixLQUFLO0lBRS9CLElBQU1DLG9CQUFvQkYsYUFBYUcsWUFBWSxDQUFDTDtJQUVwREUsYUFBYUksS0FBSyxDQUFDLEFBQUMsa0JBQW1DLE9BQWxCRixtQkFBa0IscUJBQW1CSjtJQUUxRSxJQUFNTyxVQUFVLEtBQUssRUFDZkMsY0FBYyxFQUFFLEVBQ2hCQywyQkFBMkJWLDhCQUE4QkMsa0JBQ3pEVSwrQkFBK0JDLElBQUFBLG9CQUEwQixFQUFDRiwwQkFBMEJELGFBQWFELFNBQVNMO0lBRWhILElBQUlRLDhCQUE4QjtRQUNoQyxJQUFNRSxnQkFBZ0JmLG1CQUFtQlksMkJBQ25DSSxjQUFjQyxvQkFBVyxDQUFDQyxpQkFBaUIsQ0FBQ0g7UUFFbERYLGFBQWFlLElBQUksQ0FBQ0g7UUFFbEJWLHNCQUFzQixJQUFJO0lBQzVCLENBQUM7SUFFRCxJQUFJQSxxQkFBcUI7UUFDdkJELGFBQWFlLElBQUksQ0FBQyxBQUFDLGlCQUFrQyxPQUFsQmIsbUJBQWtCLG1CQUFpQko7SUFDeEUsQ0FBQztJQUVELE9BQU9HO0FBQ1QifQ==
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
import Consequence from "../consequence";
|
|
4
|
-
import verifyUnqualifiedStatement from "./statement/unqualified";
|
|
5
|
-
|
|
6
|
-
import { nodeQuery } from "../utilities/query";
|
|
7
|
-
|
|
8
|
-
const statementNodeQuery = nodeQuery("/unqualifiedStatement/statement!"),
|
|
9
|
-
unqualifiedStatementNodeQuery = nodeQuery("/consequence/unqualifiedStatement!");
|
|
10
|
-
|
|
11
|
-
export default function verifyConsequence(consequenceNode, consequences, proofContext) {
|
|
12
|
-
let consequenceVerified = false;
|
|
13
|
-
|
|
14
|
-
const consequenceString = proofContext.nodeAsString(consequenceNode);
|
|
15
|
-
|
|
16
|
-
proofContext.debug(`Verifying the '${consequenceString}' consequence...`, consequenceNode);
|
|
17
|
-
|
|
18
|
-
const derived = false,
|
|
19
|
-
assignments = [],
|
|
20
|
-
unqualifiedStatementNode = unqualifiedStatementNodeQuery(consequenceNode),
|
|
21
|
-
unqualifiedStatementVerified = verifyUnqualifiedStatement(unqualifiedStatementNode, assignments, derived, proofContext);
|
|
22
|
-
|
|
23
|
-
if (unqualifiedStatementVerified) {
|
|
24
|
-
const statementNode = statementNodeQuery(unqualifiedStatementNode),
|
|
25
|
-
consequence = Consequence.fromStatementNode(statementNode);
|
|
26
|
-
|
|
27
|
-
consequences.push(consequence);
|
|
28
|
-
|
|
29
|
-
consequenceVerified = true;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
if (consequenceVerified) {
|
|
33
|
-
proofContext.info(`Verified the '${consequenceString}' consequence.`, consequenceNode);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
return consequenceVerified;
|
|
37
|
-
}
|
|
File without changes
|