occam-verify-cli 0.0.469 → 0.0.470
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/context/proof.js +8 -1
- package/lib/verify/proof.js +41 -51
- package/package.json +1 -1
- package/src/context/proof.js +7 -1
- package/src/verify/proof.js +53 -62
package/lib/context/proof.js
CHANGED
|
@@ -136,6 +136,13 @@ var ProofContext = /*#__PURE__*/ function() {
|
|
|
136
136
|
return variables;
|
|
137
137
|
}
|
|
138
138
|
},
|
|
139
|
+
{
|
|
140
|
+
key: "getLastAssertion",
|
|
141
|
+
value: function getLastAssertion() {
|
|
142
|
+
var lastAssertion = (0, _array.last)(this.assertions);
|
|
143
|
+
return lastAssertion;
|
|
144
|
+
}
|
|
145
|
+
},
|
|
139
146
|
{
|
|
140
147
|
key: "setDerived",
|
|
141
148
|
value: function setDerived(derived) {
|
|
@@ -262,4 +269,4 @@ Object.assign(ProofContext.prototype, _logging.default);
|
|
|
262
269
|
Object.assign(ProofContext.prototype, _callbacks.default);
|
|
263
270
|
var _default = ProofContext;
|
|
264
271
|
|
|
265
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L3Byb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZmlsZU1peGlucyBmcm9tIFwiLi4vbWl4aW5zL2ZpbGVcIjtcbmltcG9ydCBsb2dnaW5nTWl4aW5zIGZyb20gXCIuLi9taXhpbnMvbG9nZ2luZ1wiO1xuaW1wb3J0IGNhbGxiYWNrc01peGlucyBmcm9tIFwiLi4vbWl4aW5zL2NhbGxiYWNrc1wiO1xuXG5pbXBvcnQgeyBwdXNoIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuXG5jbGFzcyBQcm9vZkNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBkZXJpdmVkLCB2YXJpYWJsZXMsIGFzc2VydGlvbnMpIHtcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICAgIHRoaXMuZGVyaXZlZCA9IGRlcml2ZWQ7XG4gICAgdGhpcy52YXJpYWJsZXMgPSB2YXJpYWJsZXM7XG4gICAgdGhpcy5hc3NlcnRpb25zID0gYXNzZXJ0aW9ucztcbiAgfVxuXG4gIGdldENvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dDtcbiAgfVxuXG4gIGlzRGVyaXZlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5kZXJpdmVkO1xuICB9XG5cbiAgZ2V0QXNzZXJ0aW9ucygpIHtcbiAgICBsZXQgYXNzZXJ0aW9ucyA9IHRoaXMuY29udGV4dC5nZXRBc3NlcnRpb25zKCk7XG5cbiAgICBhc3NlcnRpb25zID0gW1xuICAgICAgLi4uYXNzZXJ0aW9ucyxcbiAgICAgIC4uLnRoaXMuYXNzZXJ0aW9uc1xuICAgIF07XG5cbiAgICByZXR1cm4gYXNzZXJ0aW9ucztcbiAgfVxuXG4gIGdldFR5cGVzKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldFR5cGVzKCk7IH1cblxuICBnZXRBeGlvbXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0QXhpb21zKCk7IH1cblxuICBnZXRMZW1tYXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0TGVtbWFzKCk7IH1cblxuICBnZXRUaGVvcmVtcygpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRUaGVvcmVtcygpOyB9XG5cbiAgZ2V0Q29tYmluYXRvcnMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0Q29tYmluYXRvcnMoKTsgfVxuXG4gIGdldENvbnN0cnVjdG9ycygpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRDb25zdHJ1Y3RvcnMoKTsgfVxuXG4gIGdldFZhcmlhYmxlcygpIHtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXTtcblxuICAgIHB1c2godmFyaWFibGVzLCB0aGlzLnZhcmlhYmxlcyk7XG5cbiAgICBjb25zdCBjb250ZXh0VmFyaWFibGVzID0gdGhpcy5jb250ZXh0LmdldFZhcmlhYmxlcygpO1xuXG4gICAgcHVzaCh2YXJpYWJsZXMsIGNvbnRleHRWYXJpYWJsZXMpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlcztcbiAgfVxuXG4gIHNldERlcml2ZWQoZGVyaXZlZCkge1xuICAgIHRoaXMuZGVyaXZlZCA9IGRlcml2ZWQ7XG4gIH1cblxuICBhZGRWYXJpYWJsZSh2YXJpYWJsZSkge1xuICAgIHRoaXMudmFyaWFibGVzLnB1c2godmFyaWFibGUpO1xuICB9XG5cbiAgYWRkQXNzZXJ0aW9uKGFzc2VydGlvbikge1xuICAgIHRoaXMuYXNzZXJ0aW9ucy5wdXNoKGFzc2VydGlvbik7XG4gIH1cblxuICBtYXRjaEFzc2VydGlvbihhc3NlcnRpb24pIHtcbiAgICBsZXQgYXNzZXJ0aW9uTWF0Y2hlcztcblxuICAgIGNvbnN0IGFzc2VydGlvbkIgPSBhc3NlcnRpb247IC8vL1xuXG4gICAgYXNzZXJ0aW9uTWF0Y2hlcyA9IHRoaXMuYXNzZXJ0aW9ucy5zb21lKChhc3NlcnRpb24pID0+IHtcbiAgICAgIGNvbnN0IGFzc2VydGlvbkEgPSBhc3NlcnRpb24sIC8vL1xuICAgICAgICAgICAgbWF0Y2hlcyA9IGFzc2VydGlvbkEubWF0Y2goYXNzZXJ0aW9uQik7XG5cbiAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKCFhc3NlcnRpb25NYXRjaGVzKSB7XG4gICAgICBhc3NlcnRpb25NYXRjaGVzID0gdGhpcy5jb250ZXh0Lm1hdGNoQXNzZXJ0aW9uKGFzc2VydGlvbik7XG4gICAgfVxuXG4gICAgcmV0dXJuIGFzc2VydGlvbk1hdGNoZXM7XG4gIH1cblxuICBmaW5kVmFyaWFibGVCeVZhcmlhYmxlTmFtZSh2YXJpYWJsZU5hbWUpIHtcbiAgICBjb25zdCBuYW1lID0gdmFyaWFibGVOYW1lLCAgLy8vXG4gICAgICAgICAgdmFyaWFibGVzID0gdGhpcy5nZXRWYXJpYWJsZXMoKSxcbiAgICAgICAgICB2YXJpYWJsZSA9IHZhcmlhYmxlcy5maW5kKCh2YXJpYWJsZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbWF0Y2hlcyA9IHZhcmlhYmxlLm1hdGNoTmFtZShuYW1lKTtcblxuICAgICAgICAgICAgaWYgKG1hdGNoZXMpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSkgfHwgbnVsbDtcblxuICAgIHJldHVybiB2YXJpYWJsZTtcbiAgfVxuXG4gIGlzVmFyaWFibGVQcmVzZW50QnlWYXJpYWJsZU5hbWUodmFyaWFibGVOYW1lKSB7XG4gICAgY29uc3QgdmFyaWFibGUgPSB0aGlzLmZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSksXG4gICAgICAgIHZhcmlhYmxlUHJlc2VudCA9ICh2YXJpYWJsZSAhPT0gbnVsbCk7XG5cbiAgICByZXR1cm4gdmFyaWFibGVQcmVzZW50O1xuICB9XG5cbiAgZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZFR5cGVCeVR5cGVOYW1lKHR5cGVOYW1lKTsgfVxuXG4gIGZpbmRMYWJlbEJ5VHlwZU5hbWUobGFiZWxOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZExhYmVsQnlUeXBlTmFtZShsYWJlbE5hbWUpOyB9XG5cbiAgZmluZFJ1bGVCeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRSdWxlQnlSZWZlcmVuY2VOYW1lKHJlZmVyZW5jZU5hbWUpOyB9XG5cbiAgZmluZEF4aW9tQnlSZWZlcmVuY2VOYW1lKHJlZmVyZW5jZU5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kQXhpb21CeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSk7IH1cblxuICBmaW5kTGVtbWFCeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRMZW1tYUJ5UmVmZXJlbmNlTmFtZShyZWZlcmVuY2VOYW1lKTsgfVxuXG4gIGZpbmRUaGVvcmVtQnlSZWZlcmVuY2VOYW1lKHJlZmVyZW5jZU5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kVGhlb3JlbUJ5UmVmZXJlbmNlTmFtZShyZWZlcmVuY2VOYW1lKTsgfVxuXG4gIGlzTGFiZWxQcmVzZW50QnlMYWJlbE5hbWUobGFiZWxOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuaXNMYWJlbFByZXNlbnRCeUxhYmVsTmFtZShsYWJlbE5hbWUpOyB9XG5cbiAgaXNUeXBlUHJlc2VudEJ5VHlwZU5hbWUodHlwZU5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5pc1R5cGVQcmVzZW50QnlUeXBlTmFtZSh0eXBlTmFtZSk7IH1cblxuICBzdGF0aWMgZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KSB7XG4gICAgY29uc3QgY29udGV4dCA9IGZpbGVDb250ZXh0LCAgLy8vXG4gICAgICAgICAgZGVyaXZlZCA9IGZhbHNlLFxuICAgICAgICAgIHZhcmlhYmxlcyA9IFtdLFxuICAgICAgICAgIGFzc2VydGlvbnMgPSBbXSxcbiAgICAgICAgICBwcm9vZkNvbnRleHQgPSBuZXcgUHJvb2ZDb250ZXh0KGNvbnRleHQsIGRlcml2ZWQsIHZhcmlhYmxlcywgYXNzZXJ0aW9ucyk7XG5cbiAgICByZXR1cm4gcHJvb2ZDb250ZXh0O1xuICB9XG5cbiAgc3RhdGljIGZyb21Qcm9vZkNvbnRleHQocHJvb2ZDb250ZXh0KSB7XG4gICAgY29uc3QgY29udGV4dCA9IHByb29mQ29udGV4dCwgIC8vL1xuICAgICAgICAgIGRlcml2ZWQgPSBmYWxzZSxcbiAgICAgICAgICB2YXJpYWJsZXMgPSBbXSxcbiAgICAgICAgICBhc3NlcnRpb25zID0gW107XG5cbiAgICBwcm9vZkNvbnRleHQgPSBuZXcgUHJvb2ZDb250ZXh0KGNvbnRleHQsIGRlcml2ZWQsIHZhcmlhYmxlcywgYXNzZXJ0aW9ucyk7XG5cbiAgICByZXR1cm4gcHJvb2ZDb250ZXh0O1xuICB9XG59XG5cbk9iamVjdC5hc3NpZ24oUHJvb2ZDb250ZXh0LnByb3RvdHlwZSwgZmlsZU1peGlucyk7XG5PYmplY3QuYXNzaWduKFByb29mQ29udGV4dC5wcm90b3R5cGUsIGxvZ2dpbmdNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihQcm9vZkNvbnRleHQucHJvdG90eXBlLCBjYWxsYmFja3NNaXhpbnMpO1xuXG5leHBvcnQgZGVmYXVsdCBQcm9vZkNvbnRleHQ7XG4iXSwibmFtZXMiOlsiUHJvb2ZDb250ZXh0IiwiY29udGV4dCIsImRlcml2ZWQiLCJ2YXJpYWJsZXMiLCJhc3NlcnRpb25zIiwiZ2V0Q29udGV4dCIsImlzRGVyaXZlZCIsImdldEFzc2VydGlvbnMiLCJnZXRUeXBlcyIsImdldEF4aW9tcyIsImdldExlbW1hcyIsImdldFRoZW9yZW1zIiwiZ2V0Q29tYmluYXRvcnMiLCJnZXRDb25zdHJ1Y3RvcnMiLCJnZXRWYXJpYWJsZXMiLCJwdXNoIiwiY29udGV4dFZhcmlhYmxlcyIsInNldERlcml2ZWQiLCJhZGRWYXJpYWJsZSIsInZhcmlhYmxlIiwiYWRkQXNzZXJ0aW9uIiwiYXNzZXJ0aW9uIiwibWF0Y2hBc3NlcnRpb24iLCJhc3NlcnRpb25NYXRjaGVzIiwiYXNzZXJ0aW9uQiIsInNvbWUiLCJhc3NlcnRpb25BIiwibWF0Y2hlcyIsIm1hdGNoIiwiZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5hbWUiLCJ2YXJpYWJsZU5hbWUiLCJuYW1lIiwiZmluZCIsIm1hdGNoTmFtZSIsImlzVmFyaWFibGVQcmVzZW50QnlWYXJpYWJsZU5hbWUiLCJ2YXJpYWJsZVByZXNlbnQiLCJmaW5kVHlwZUJ5VHlwZU5hbWUiLCJ0eXBlTmFtZSIsImZpbmRMYWJlbEJ5VHlwZU5hbWUiLCJsYWJlbE5hbWUiLCJmaW5kUnVsZUJ5UmVmZXJlbmNlTmFtZSIsInJlZmVyZW5jZU5hbWUiLCJmaW5kQXhpb21CeVJlZmVyZW5jZU5hbWUiLCJmaW5kTGVtbWFCeVJlZmVyZW5jZU5hbWUiLCJmaW5kVGhlb3JlbUJ5UmVmZXJlbmNlTmFtZSIsImlzTGFiZWxQcmVzZW50QnlMYWJlbE5hbWUiLCJpc1R5cGVQcmVzZW50QnlUeXBlTmFtZSIsImZyb21GaWxlQ29udGV4dCIsImZpbGVDb250ZXh0IiwicHJvb2ZDb250ZXh0IiwiZnJvbVByb29mQ29udGV4dCIsIk9iamVjdCIsImFzc2lnbiIsInByb3RvdHlwZSIsImZpbGVNaXhpbnMiLCJsb2dnaW5nTWl4aW5zIiwiY2FsbGJhY2tzTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkEySkE7OztlQUFBOzs7eURBekp1Qjs0REFDRzs4REFDRTtxQkFFUDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFckIsSUFBQSxBQUFNQSw2QkErSUgsQUEvSUg7YUFBTUEsYUFDUUMsT0FBTyxFQUFFQyxPQUFPLEVBQUVDLFNBQVMsRUFBRUMsVUFBVTs4QkFEL0NKO1FBRUYsSUFBSSxDQUFDQyxPQUFPLEdBQUdBO1FBQ2YsSUFBSSxDQUFDQyxPQUFPLEdBQUdBO1FBQ2YsSUFBSSxDQUFDQyxTQUFTLEdBQUdBO1FBQ2pCLElBQUksQ0FBQ0MsVUFBVSxHQUFHQTs7aUJBTGhC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
|
|
272
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0L3Byb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgZmlsZU1peGlucyBmcm9tIFwiLi4vbWl4aW5zL2ZpbGVcIjtcbmltcG9ydCBsb2dnaW5nTWl4aW5zIGZyb20gXCIuLi9taXhpbnMvbG9nZ2luZ1wiO1xuaW1wb3J0IGNhbGxiYWNrc01peGlucyBmcm9tIFwiLi4vbWl4aW5zL2NhbGxiYWNrc1wiO1xuXG5pbXBvcnQgeyBwdXNoLCBsYXN0IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9hcnJheVwiO1xuXG5jbGFzcyBQcm9vZkNvbnRleHQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBkZXJpdmVkLCB2YXJpYWJsZXMsIGFzc2VydGlvbnMpIHtcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xuICAgIHRoaXMuZGVyaXZlZCA9IGRlcml2ZWQ7XG4gICAgdGhpcy52YXJpYWJsZXMgPSB2YXJpYWJsZXM7XG4gICAgdGhpcy5hc3NlcnRpb25zID0gYXNzZXJ0aW9ucztcbiAgfVxuXG4gIGdldENvbnRleHQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dDtcbiAgfVxuXG4gIGlzRGVyaXZlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5kZXJpdmVkO1xuICB9XG5cbiAgZ2V0QXNzZXJ0aW9ucygpIHtcbiAgICBsZXQgYXNzZXJ0aW9ucyA9IHRoaXMuY29udGV4dC5nZXRBc3NlcnRpb25zKCk7XG5cbiAgICBhc3NlcnRpb25zID0gW1xuICAgICAgLi4uYXNzZXJ0aW9ucyxcbiAgICAgIC4uLnRoaXMuYXNzZXJ0aW9uc1xuICAgIF07XG5cbiAgICByZXR1cm4gYXNzZXJ0aW9ucztcbiAgfVxuXG4gIGdldFR5cGVzKCkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmdldFR5cGVzKCk7IH1cblxuICBnZXRBeGlvbXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0QXhpb21zKCk7IH1cblxuICBnZXRMZW1tYXMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0TGVtbWFzKCk7IH1cblxuICBnZXRUaGVvcmVtcygpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRUaGVvcmVtcygpOyB9XG5cbiAgZ2V0Q29tYmluYXRvcnMoKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZ2V0Q29tYmluYXRvcnMoKTsgfVxuXG4gIGdldENvbnN0cnVjdG9ycygpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5nZXRDb25zdHJ1Y3RvcnMoKTsgfVxuXG4gIGdldFZhcmlhYmxlcygpIHtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBbXTtcblxuICAgIHB1c2godmFyaWFibGVzLCB0aGlzLnZhcmlhYmxlcyk7XG5cbiAgICBjb25zdCBjb250ZXh0VmFyaWFibGVzID0gdGhpcy5jb250ZXh0LmdldFZhcmlhYmxlcygpO1xuXG4gICAgcHVzaCh2YXJpYWJsZXMsIGNvbnRleHRWYXJpYWJsZXMpO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlcztcbiAgfVxuXG4gIGdldExhc3RBc3NlcnRpb24oKSB7XG4gICAgY29uc3QgbGFzdEFzc2VydGlvbiA9IGxhc3QodGhpcy5hc3NlcnRpb25zKTtcblxuICAgIHJldHVybiBsYXN0QXNzZXJ0aW9uO1xuICB9XG5cbiAgc2V0RGVyaXZlZChkZXJpdmVkKSB7XG4gICAgdGhpcy5kZXJpdmVkID0gZGVyaXZlZDtcbiAgfVxuXG4gIGFkZFZhcmlhYmxlKHZhcmlhYmxlKSB7XG4gICAgdGhpcy52YXJpYWJsZXMucHVzaCh2YXJpYWJsZSk7XG4gIH1cblxuICBhZGRBc3NlcnRpb24oYXNzZXJ0aW9uKSB7XG4gICAgdGhpcy5hc3NlcnRpb25zLnB1c2goYXNzZXJ0aW9uKTtcbiAgfVxuXG4gIG1hdGNoQXNzZXJ0aW9uKGFzc2VydGlvbikge1xuICAgIGxldCBhc3NlcnRpb25NYXRjaGVzO1xuXG4gICAgY29uc3QgYXNzZXJ0aW9uQiA9IGFzc2VydGlvbjsgLy8vXG5cbiAgICBhc3NlcnRpb25NYXRjaGVzID0gdGhpcy5hc3NlcnRpb25zLnNvbWUoKGFzc2VydGlvbikgPT4ge1xuICAgICAgY29uc3QgYXNzZXJ0aW9uQSA9IGFzc2VydGlvbiwgLy8vXG4gICAgICAgICAgICBtYXRjaGVzID0gYXNzZXJ0aW9uQS5tYXRjaChhc3NlcnRpb25CKTtcblxuICAgICAgaWYgKG1hdGNoZXMpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoIWFzc2VydGlvbk1hdGNoZXMpIHtcbiAgICAgIGFzc2VydGlvbk1hdGNoZXMgPSB0aGlzLmNvbnRleHQubWF0Y2hBc3NlcnRpb24oYXNzZXJ0aW9uKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYXNzZXJ0aW9uTWF0Y2hlcztcbiAgfVxuXG4gIGZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOYW1lKHZhcmlhYmxlTmFtZSkge1xuICAgIGNvbnN0IG5hbWUgPSB2YXJpYWJsZU5hbWUsICAvLy9cbiAgICAgICAgICB2YXJpYWJsZXMgPSB0aGlzLmdldFZhcmlhYmxlcygpLFxuICAgICAgICAgIHZhcmlhYmxlID0gdmFyaWFibGVzLmZpbmQoKHZhcmlhYmxlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBtYXRjaGVzID0gdmFyaWFibGUubWF0Y2hOYW1lKG5hbWUpO1xuXG4gICAgICAgICAgICBpZiAobWF0Y2hlcykge1xuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KSB8fCBudWxsO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG5cbiAgaXNWYXJpYWJsZVByZXNlbnRCeVZhcmlhYmxlTmFtZSh2YXJpYWJsZU5hbWUpIHtcbiAgICBjb25zdCB2YXJpYWJsZSA9IHRoaXMuZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5hbWUodmFyaWFibGVOYW1lKSxcbiAgICAgICAgdmFyaWFibGVQcmVzZW50ID0gKHZhcmlhYmxlICE9PSBudWxsKTtcblxuICAgIHJldHVybiB2YXJpYWJsZVByZXNlbnQ7XG4gIH1cblxuICBmaW5kVHlwZUJ5VHlwZU5hbWUodHlwZU5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kVHlwZUJ5VHlwZU5hbWUodHlwZU5hbWUpOyB9XG5cbiAgZmluZExhYmVsQnlUeXBlTmFtZShsYWJlbE5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5maW5kTGFiZWxCeVR5cGVOYW1lKGxhYmVsTmFtZSk7IH1cblxuICBmaW5kUnVsZUJ5UmVmZXJlbmNlTmFtZShyZWZlcmVuY2VOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZFJ1bGVCeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSk7IH1cblxuICBmaW5kQXhpb21CeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRBeGlvbUJ5UmVmZXJlbmNlTmFtZShyZWZlcmVuY2VOYW1lKTsgfVxuXG4gIGZpbmRMZW1tYUJ5UmVmZXJlbmNlTmFtZShyZWZlcmVuY2VOYW1lKSB7IHJldHVybiB0aGlzLmNvbnRleHQuZmluZExlbW1hQnlSZWZlcmVuY2VOYW1lKHJlZmVyZW5jZU5hbWUpOyB9XG5cbiAgZmluZFRoZW9yZW1CeVJlZmVyZW5jZU5hbWUocmVmZXJlbmNlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmZpbmRUaGVvcmVtQnlSZWZlcmVuY2VOYW1lKHJlZmVyZW5jZU5hbWUpOyB9XG5cbiAgaXNMYWJlbFByZXNlbnRCeUxhYmVsTmFtZShsYWJlbE5hbWUpIHsgcmV0dXJuIHRoaXMuY29udGV4dC5pc0xhYmVsUHJlc2VudEJ5TGFiZWxOYW1lKGxhYmVsTmFtZSk7IH1cblxuICBpc1R5cGVQcmVzZW50QnlUeXBlTmFtZSh0eXBlTmFtZSkgeyByZXR1cm4gdGhpcy5jb250ZXh0LmlzVHlwZVByZXNlbnRCeVR5cGVOYW1lKHR5cGVOYW1lKTsgfVxuXG4gIHN0YXRpYyBmcm9tRmlsZUNvbnRleHQoZmlsZUNvbnRleHQpIHtcbiAgICBjb25zdCBjb250ZXh0ID0gZmlsZUNvbnRleHQsICAvLy9cbiAgICAgICAgICBkZXJpdmVkID0gZmFsc2UsXG4gICAgICAgICAgdmFyaWFibGVzID0gW10sXG4gICAgICAgICAgYXNzZXJ0aW9ucyA9IFtdLFxuICAgICAgICAgIHByb29mQ29udGV4dCA9IG5ldyBQcm9vZkNvbnRleHQoY29udGV4dCwgZGVyaXZlZCwgdmFyaWFibGVzLCBhc3NlcnRpb25zKTtcblxuICAgIHJldHVybiBwcm9vZkNvbnRleHQ7XG4gIH1cblxuICBzdGF0aWMgZnJvbVByb29mQ29udGV4dChwcm9vZkNvbnRleHQpIHtcbiAgICBjb25zdCBjb250ZXh0ID0gcHJvb2ZDb250ZXh0LCAgLy8vXG4gICAgICAgICAgZGVyaXZlZCA9IGZhbHNlLFxuICAgICAgICAgIHZhcmlhYmxlcyA9IFtdLFxuICAgICAgICAgIGFzc2VydGlvbnMgPSBbXTtcblxuICAgIHByb29mQ29udGV4dCA9IG5ldyBQcm9vZkNvbnRleHQoY29udGV4dCwgZGVyaXZlZCwgdmFyaWFibGVzLCBhc3NlcnRpb25zKTtcblxuICAgIHJldHVybiBwcm9vZkNvbnRleHQ7XG4gIH1cbn1cblxuT2JqZWN0LmFzc2lnbihQcm9vZkNvbnRleHQucHJvdG90eXBlLCBmaWxlTWl4aW5zKTtcbk9iamVjdC5hc3NpZ24oUHJvb2ZDb250ZXh0LnByb3RvdHlwZSwgbG9nZ2luZ01peGlucyk7XG5PYmplY3QuYXNzaWduKFByb29mQ29udGV4dC5wcm90b3R5cGUsIGNhbGxiYWNrc01peGlucyk7XG5cbmV4cG9ydCBkZWZhdWx0IFByb29mQ29udGV4dDtcbiJdLCJuYW1lcyI6WyJQcm9vZkNvbnRleHQiLCJjb250ZXh0IiwiZGVyaXZlZCIsInZhcmlhYmxlcyIsImFzc2VydGlvbnMiLCJnZXRDb250ZXh0IiwiaXNEZXJpdmVkIiwiZ2V0QXNzZXJ0aW9ucyIsImdldFR5cGVzIiwiZ2V0QXhpb21zIiwiZ2V0TGVtbWFzIiwiZ2V0VGhlb3JlbXMiLCJnZXRDb21iaW5hdG9ycyIsImdldENvbnN0cnVjdG9ycyIsImdldFZhcmlhYmxlcyIsInB1c2giLCJjb250ZXh0VmFyaWFibGVzIiwiZ2V0TGFzdEFzc2VydGlvbiIsImxhc3RBc3NlcnRpb24iLCJsYXN0Iiwic2V0RGVyaXZlZCIsImFkZFZhcmlhYmxlIiwidmFyaWFibGUiLCJhZGRBc3NlcnRpb24iLCJhc3NlcnRpb24iLCJtYXRjaEFzc2VydGlvbiIsImFzc2VydGlvbk1hdGNoZXMiLCJhc3NlcnRpb25CIiwic29tZSIsImFzc2VydGlvbkEiLCJtYXRjaGVzIiwibWF0Y2giLCJmaW5kVmFyaWFibGVCeVZhcmlhYmxlTmFtZSIsInZhcmlhYmxlTmFtZSIsIm5hbWUiLCJmaW5kIiwibWF0Y2hOYW1lIiwiaXNWYXJpYWJsZVByZXNlbnRCeVZhcmlhYmxlTmFtZSIsInZhcmlhYmxlUHJlc2VudCIsImZpbmRUeXBlQnlUeXBlTmFtZSIsInR5cGVOYW1lIiwiZmluZExhYmVsQnlUeXBlTmFtZSIsImxhYmVsTmFtZSIsImZpbmRSdWxlQnlSZWZlcmVuY2VOYW1lIiwicmVmZXJlbmNlTmFtZSIsImZpbmRBeGlvbUJ5UmVmZXJlbmNlTmFtZSIsImZpbmRMZW1tYUJ5UmVmZXJlbmNlTmFtZSIsImZpbmRUaGVvcmVtQnlSZWZlcmVuY2VOYW1lIiwiaXNMYWJlbFByZXNlbnRCeUxhYmVsTmFtZSIsImlzVHlwZVByZXNlbnRCeVR5cGVOYW1lIiwiZnJvbUZpbGVDb250ZXh0IiwiZmlsZUNvbnRleHQiLCJwcm9vZkNvbnRleHQiLCJmcm9tUHJvb2ZDb250ZXh0IiwiT2JqZWN0IiwiYXNzaWduIiwicHJvdG90eXBlIiwiZmlsZU1peGlucyIsImxvZ2dpbmdNaXhpbnMiLCJjYWxsYmFja3NNaXhpbnMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWlLQTs7O2VBQUE7Ozt5REEvSnVCOzREQUNHOzhEQUNFO3FCQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUzQixJQUFBLEFBQU1BLDZCQXFKSCxBQXJKSDthQUFNQSxhQUNRQyxPQUFPLEVBQUVDLE9BQU8sRUFBRUMsU0FBUyxFQUFFQyxVQUFVOzhCQUQvQ0o7UUFFRixJQUFJLENBQUNDLE9BQU8sR0FBR0E7UUFDZixJQUFJLENBQUNDLE9BQU8sR0FBR0E7UUFDZixJQUFJLENBQUNDLFNBQVMsR0FBR0E7UUFDakIsSUFBSSxDQUFDQyxVQUFVLEdBQUdBOztpQkFMaEJKOztZQVFKSyxLQUFBQTttQkFBQUEsU0FBQUEsYUFBYTtnQkFDWCxPQUFPLElBQUksQ0FBQ0osT0FBTztZQUNyQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxZQUFZO2dCQUNWLE9BQU8sSUFBSSxDQUFDSixPQUFPO1lBQ3JCOzs7WUFFQUssS0FBQUE7bUJBQUFBLFNBQUFBLGdCQUFnQjtnQkFDZCxJQUFJSCxhQUFhLElBQUksQ0FBQ0gsT0FBTyxDQUFDTSxhQUFhO2dCQUUzQ0gsYUFBYSxBQUNYLG1CQUFHQSxtQkFDSCxtQkFBRyxJQUFJLENBQUNBLFVBQVU7Z0JBR3BCLE9BQU9BO1lBQ1Q7OztZQUVBSSxLQUFBQTttQkFBQUEsU0FBQUEsV0FBVztnQkFBRSxPQUFPLElBQUksQ0FBQ1AsT0FBTyxDQUFDTyxRQUFRO1lBQUk7OztZQUU3Q0MsS0FBQUE7bUJBQUFBLFNBQUFBLFlBQVk7Z0JBQUUsT0FBTyxJQUFJLENBQUNSLE9BQU8sQ0FBQ1EsU0FBUztZQUFJOzs7WUFFL0NDLEtBQUFBO21CQUFBQSxTQUFBQSxZQUFZO2dCQUFFLE9BQU8sSUFBSSxDQUFDVCxPQUFPLENBQUNTLFNBQVM7WUFBSTs7O1lBRS9DQyxLQUFBQTttQkFBQUEsU0FBQUEsY0FBYztnQkFBRSxPQUFPLElBQUksQ0FBQ1YsT0FBTyxDQUFDVSxXQUFXO1lBQUk7OztZQUVuREMsS0FBQUE7bUJBQUFBLFNBQUFBLGlCQUFpQjtnQkFBRSxPQUFPLElBQUksQ0FBQ1gsT0FBTyxDQUFDVyxjQUFjO1lBQUk7OztZQUV6REMsS0FBQUE7bUJBQUFBLFNBQUFBLGtCQUFrQjtnQkFBRSxPQUFPLElBQUksQ0FBQ1osT0FBTyxDQUFDWSxlQUFlO1lBQUk7OztZQUUzREMsS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWU7Z0JBQ2IsSUFBTVgsWUFBWSxFQUFFO2dCQUVwQlksSUFBQUEsV0FBSSxFQUFDWixXQUFXLElBQUksQ0FBQ0EsU0FBUztnQkFFOUIsSUFBTWEsbUJBQW1CLElBQUksQ0FBQ2YsT0FBTyxDQUFDYSxZQUFZO2dCQUVsREMsSUFBQUEsV0FBSSxFQUFDWixXQUFXYTtnQkFFaEIsT0FBT2I7WUFDVDs7O1lBRUFjLEtBQUFBO21CQUFBQSxTQUFBQSxtQkFBbUI7Z0JBQ2pCLElBQU1DLGdCQUFnQkMsSUFBQUEsV0FBSSxFQUFDLElBQUksQ0FBQ2YsVUFBVTtnQkFFMUMsT0FBT2M7WUFDVDs7O1lBRUFFLEtBQUFBO21CQUFBQSxTQUFBQSxXQUFXbEIsT0FBTyxFQUFFO2dCQUNsQixJQUFJLENBQUNBLE9BQU8sR0FBR0E7WUFDakI7OztZQUVBbUIsS0FBQUE7bUJBQUFBLFNBQUFBLFlBQVlDLFFBQVEsRUFBRTtnQkFDcEIsSUFBSSxDQUFDbkIsU0FBUyxDQUFDWSxJQUFJLENBQUNPO1lBQ3RCOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGFBQWFDLFNBQVMsRUFBRTtnQkFDdEIsSUFBSSxDQUFDcEIsVUFBVSxDQUFDVyxJQUFJLENBQUNTO1lBQ3ZCOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGVBQWVELFNBQVMsRUFBRTtnQkFDeEIsSUFBSUU7Z0JBRUosSUFBTUMsYUFBYUgsV0FBVyxHQUFHO2dCQUVqQ0UsbUJBQW1CLElBQUksQ0FBQ3RCLFVBQVUsQ0FBQ3dCLElBQUksQ0FBQyxTQUFDSixXQUFjO29CQUNyRCxJQUFNSyxhQUFhTCxXQUNiTSxVQUFVRCxXQUFXRSxLQUFLLENBQUNKO29CQUVqQyxJQUFJRyxTQUFTO3dCQUNYLE9BQU8sSUFBSTtvQkFDYixDQUFDO2dCQUNIO2dCQUVBLElBQUksQ0FBQ0osa0JBQWtCO29CQUNyQkEsbUJBQW1CLElBQUksQ0FBQ3pCLE9BQU8sQ0FBQ3dCLGNBQWMsQ0FBQ0Q7Z0JBQ2pELENBQUM7Z0JBRUQsT0FBT0U7WUFDVDs7O1lBRUFNLEtBQUFBO21CQUFBQSxTQUFBQSwyQkFBMkJDLFlBQVksRUFBRTtnQkFDdkMsSUFBTUMsT0FBT0QsY0FDUDlCLFlBQVksSUFBSSxDQUFDVyxZQUFZLElBQzdCUSxXQUFXbkIsVUFBVWdDLElBQUksQ0FBQyxTQUFDYixVQUFhO29CQUN0QyxJQUFNUSxVQUFVUixTQUFTYyxTQUFTLENBQUNGO29CQUVuQyxJQUFJSixTQUFTO3dCQUNYLE9BQU8sSUFBSTtvQkFDYixDQUFDO2dCQUNILE1BQU0sSUFBSTtnQkFFaEIsT0FBT1I7WUFDVDs7O1lBRUFlLEtBQUFBO21CQUFBQSxTQUFBQSxnQ0FBZ0NKLFlBQVksRUFBRTtnQkFDNUMsSUFBTVgsV0FBVyxJQUFJLENBQUNVLDBCQUEwQixDQUFDQyxlQUM3Q0ssa0JBQW1CaEIsYUFBYSxJQUFJO2dCQUV4QyxPQUFPZ0I7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxtQkFBbUJDLFFBQVEsRUFBRTtnQkFBRSxPQUFPLElBQUksQ0FBQ3ZDLE9BQU8sQ0FBQ3NDLGtCQUFrQixDQUFDQztZQUFXOzs7WUFFakZDLEtBQUFBO21CQUFBQSxTQUFBQSxvQkFBb0JDLFNBQVMsRUFBRTtnQkFBRSxPQUFPLElBQUksQ0FBQ3pDLE9BQU8sQ0FBQ3dDLG1CQUFtQixDQUFDQztZQUFZOzs7WUFFckZDLEtBQUFBO21CQUFBQSxTQUFBQSx3QkFBd0JDLGFBQWEsRUFBRTtnQkFBRSxPQUFPLElBQUksQ0FBQzNDLE9BQU8sQ0FBQzBDLHVCQUF1QixDQUFDQztZQUFnQjs7O1lBRXJHQyxLQUFBQTttQkFBQUEsU0FBQUEseUJBQXlCRCxhQUFhLEVBQUU7Z0JBQUUsT0FBTyxJQUFJLENBQUMzQyxPQUFPLENBQUM0Qyx3QkFBd0IsQ0FBQ0Q7WUFBZ0I7OztZQUV2R0UsS0FBQUE7bUJBQUFBLFNBQUFBLHlCQUF5QkYsYUFBYSxFQUFFO2dCQUFFLE9BQU8sSUFBSSxDQUFDM0MsT0FBTyxDQUFDNkMsd0JBQXdCLENBQUNGO1lBQWdCOzs7WUFFdkdHLEtBQUFBO21CQUFBQSxTQUFBQSwyQkFBMkJILGFBQWEsRUFBRTtnQkFBRSxPQUFPLElBQUksQ0FBQzNDLE9BQU8sQ0FBQzhDLDBCQUEwQixDQUFDSDtZQUFnQjs7O1lBRTNHSSxLQUFBQTttQkFBQUEsU0FBQUEsMEJBQTBCTixTQUFTLEVBQUU7Z0JBQUUsT0FBTyxJQUFJLENBQUN6QyxPQUFPLENBQUMrQyx5QkFBeUIsQ0FBQ047WUFBWTs7O1lBRWpHTyxLQUFBQTttQkFBQUEsU0FBQUEsd0JBQXdCVCxRQUFRLEVBQUU7Z0JBQUUsT0FBTyxJQUFJLENBQUN2QyxPQUFPLENBQUNnRCx1QkFBdUIsQ0FBQ1Q7WUFBVzs7OztZQUVwRlUsS0FBQUE7bUJBQVAsU0FBT0EsZ0JBQWdCQyxXQUFXLEVBQUU7Z0JBQ2xDLElBQU1sRCxVQUFVa0QsYUFDVmpELFVBQVUsS0FBSyxFQUNmQyxZQUFZLEVBQUUsRUFDZEMsYUFBYSxFQUFFLEVBQ2ZnRCxlQUFlLElBcEluQnBELGFBb0lvQ0MsU0FBU0MsU0FBU0MsV0FBV0M7Z0JBRW5FLE9BQU9nRDtZQUNUOzs7WUFFT0MsS0FBQUE7bUJBQVAsU0FBT0EsaUJBQWlCRCxZQUFZLEVBQUU7Z0JBQ3BDLElBQU1uRCxVQUFVbUQsY0FDVmxELFVBQVUsS0FBSyxFQUNmQyxZQUFZLEVBQUUsRUFDZEMsYUFBYSxFQUFFO2dCQUVyQmdELGVBQWUsSUEvSWJwRCxhQStJOEJDLFNBQVNDLFNBQVNDLFdBQVdDO2dCQUU3RCxPQUFPZ0Q7WUFDVDs7O1dBbEpJcEQ7O0FBcUpOc0QsT0FBT0MsTUFBTSxDQUFDdkQsYUFBYXdELFNBQVMsRUFBRUMsYUFBVTtBQUNoREgsT0FBT0MsTUFBTSxDQUFDdkQsYUFBYXdELFNBQVMsRUFBRUUsZ0JBQWE7QUFDbkRKLE9BQU9DLE1BQU0sQ0FBQ3ZELGFBQWF3RCxTQUFTLEVBQUVHLGtCQUFlO0lBRXJELFdBQWUzRCJ9
|
package/lib/verify/proof.js
CHANGED
|
@@ -8,9 +8,9 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return verifyProof;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
var
|
|
11
|
+
var _assertion = /*#__PURE__*/ _interopRequireDefault(require("../assertion"));
|
|
12
12
|
var _derivation = /*#__PURE__*/ _interopRequireDefault(require("../verify/derivation"));
|
|
13
|
-
var _qualified = /*#__PURE__*/ _interopRequireDefault(require("
|
|
13
|
+
var _qualified = /*#__PURE__*/ _interopRequireDefault(require("./statement/qualified"));
|
|
14
14
|
var _query = require("../utilities/query");
|
|
15
15
|
function _interopRequireDefault(obj) {
|
|
16
16
|
return obj && obj.__esModule ? obj : {
|
|
@@ -18,9 +18,8 @@ function _interopRequireDefault(obj) {
|
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
20
|
var derivationNodeQuery = (0, _query.nodeQuery)("/proof/derivation!"), qualifiedStatementNodeQuery = (0, _query.nodeQuery)("/proof/qualifiedStatement!");
|
|
21
|
-
function verifyProof(proofNode,
|
|
21
|
+
function verifyProof(proofNode, consequent, proofContext) {
|
|
22
22
|
var proofVerified = false;
|
|
23
|
-
var proofContext = _proof.default.fromFileContext(fileContext);
|
|
24
23
|
proofContext.begin(proofNode);
|
|
25
24
|
var derivationNode = derivationNodeQuery(proofNode), qualifiedStatementNode = qualifiedStatementNodeQuery(proofNode);
|
|
26
25
|
var derivationVerified = false, qualifiedStatementVerified = false;
|
|
@@ -28,71 +27,62 @@ function verifyProof(proofNode, fileContext) {
|
|
|
28
27
|
derivationVerified = (0, _derivation.default)(derivationNode, proofContext);
|
|
29
28
|
}
|
|
30
29
|
if (qualifiedStatementNode !== null) {
|
|
31
|
-
var derived;
|
|
32
|
-
derived = true;
|
|
33
|
-
proofContext.setDerived(derived);
|
|
34
30
|
qualifiedStatementVerified = (0, _qualified.default)(qualifiedStatementNode, proofContext);
|
|
35
|
-
|
|
36
|
-
|
|
31
|
+
if (qualifiedStatementVerified) {
|
|
32
|
+
var assertion = _assertion.default.fromQualifiedStatementNode(qualifiedStatementNode);
|
|
33
|
+
proofContext.addAssertion(assertion);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
if (derivationVerified || qualifiedStatementVerified) {
|
|
37
|
+
var lastAssertion = proofContext.getLastAssertion(), assertion1 = lastAssertion, statementNode = consequent.getStatementNode(), assertionStatementNode = assertion1.getStatementNode(), assertionStatementNodeMatches = matchProofStatementNode(assertionStatementNode, statementNode);
|
|
38
|
+
proofVerified = assertionStatementNodeMatches; ///
|
|
37
39
|
}
|
|
38
|
-
// if (derivationVerified) {
|
|
39
|
-
// const qualifiedStatementNode = qualifiedStatementNodeQuery(proofNode),
|
|
40
|
-
// qualifiedStatementVerified = verifyQualifiedStatement(qualifiedStatementNode, proofContext);
|
|
41
|
-
//
|
|
42
|
-
// if (qualifiedStatementVerified) {
|
|
43
|
-
// const statementNode = conclusion.getStatementNode(),
|
|
44
|
-
// proofStatementNode = proofStatementNodeQuery(proofNode),
|
|
45
|
-
// proofStatementNodeMatches = matchProofStatementNode(proofStatementNode, statementNode);
|
|
46
|
-
//
|
|
47
|
-
// proofVerified = proofStatementNodeMatches; ///
|
|
48
|
-
// }
|
|
49
|
-
// }
|
|
50
40
|
proofVerified ? proofContext.complete(proofNode) : proofContext.complete(proofNode);
|
|
51
41
|
return proofVerified;
|
|
52
42
|
}
|
|
53
|
-
function matchProofStatementNode(
|
|
54
|
-
var
|
|
55
|
-
return
|
|
43
|
+
function matchProofStatementNode(assertionStatementNode, statementNode) {
|
|
44
|
+
var assertionNonTerminalNode = assertionStatementNode, nonTerminalNode = statementNode, assertionNonTerminalNodeMatches = matchProofNonTerminalNode(assertionNonTerminalNode, nonTerminalNode), assertionStatementNodeMatches = assertionNonTerminalNodeMatches; ///
|
|
45
|
+
return assertionStatementNodeMatches;
|
|
56
46
|
}
|
|
57
|
-
function matchProofNode(
|
|
58
|
-
var
|
|
59
|
-
var nodeTerminalNode = node.isTerminalNode(), ruleNodeTerminalNode =
|
|
47
|
+
function matchProofNode(assertionNode, node) {
|
|
48
|
+
var assertionNodeMatches = false;
|
|
49
|
+
var nodeTerminalNode = node.isTerminalNode(), ruleNodeTerminalNode = assertionNode.isTerminalNode();
|
|
60
50
|
if (nodeTerminalNode === ruleNodeTerminalNode) {
|
|
61
51
|
if (nodeTerminalNode) {
|
|
62
|
-
var terminalNode = node,
|
|
63
|
-
|
|
52
|
+
var terminalNode = node, assertionTerminalNode = assertionNode, assertionTerminalNodeMatches = matchProofTerminalNode(assertionTerminalNode, terminalNode);
|
|
53
|
+
assertionNodeMatches = assertionTerminalNodeMatches; ///
|
|
64
54
|
} else {
|
|
65
|
-
var nonTerminalNode = node,
|
|
66
|
-
|
|
55
|
+
var nonTerminalNode = node, assertionNonTerminalNode = assertionNode, assertionNonTerminalNodeMatches = matchProofNonTerminalNode(assertionNonTerminalNode, nonTerminalNode);
|
|
56
|
+
assertionNodeMatches = assertionNonTerminalNodeMatches; ///
|
|
67
57
|
}
|
|
68
58
|
}
|
|
69
|
-
return
|
|
59
|
+
return assertionNodeMatches;
|
|
70
60
|
}
|
|
71
|
-
function matchProofNodes(
|
|
72
|
-
var
|
|
73
|
-
var nodesLength = nodes.length,
|
|
74
|
-
if (nodesLength ===
|
|
75
|
-
|
|
76
|
-
var
|
|
77
|
-
if (
|
|
61
|
+
function matchProofNodes(assertionNodes, nodes) {
|
|
62
|
+
var assertionNodesMatches = false;
|
|
63
|
+
var nodesLength = nodes.length, assertionNodesLength = assertionNodes.length;
|
|
64
|
+
if (nodesLength === assertionNodesLength) {
|
|
65
|
+
assertionNodesMatches = nodes.every(function(node, index) {
|
|
66
|
+
var assertionNode = assertionNodes[index], assertionNodeMatches = matchProofNode(assertionNode, node);
|
|
67
|
+
if (assertionNodeMatches) {
|
|
78
68
|
return true;
|
|
79
69
|
}
|
|
80
70
|
});
|
|
81
71
|
}
|
|
82
|
-
return
|
|
72
|
+
return assertionNodesMatches;
|
|
83
73
|
}
|
|
84
|
-
function matchProofTerminalNode(
|
|
85
|
-
var matches =
|
|
86
|
-
return
|
|
74
|
+
function matchProofTerminalNode(assertionTerminalNode, terminalNode) {
|
|
75
|
+
var matches = assertionTerminalNode.match(terminalNode), assertionTerminalNodeMatches = matches; ///
|
|
76
|
+
return assertionTerminalNodeMatches;
|
|
87
77
|
}
|
|
88
|
-
function matchProofNonTerminalNode(
|
|
89
|
-
var
|
|
90
|
-
var ruleName = nonTerminalNode.getRuleName(),
|
|
91
|
-
if (ruleName ===
|
|
92
|
-
var childNodes = nonTerminalNode.getChildNodes(),
|
|
93
|
-
|
|
78
|
+
function matchProofNonTerminalNode(assertionNonTerminalNode, nonTerminalNode) {
|
|
79
|
+
var assertionNonTerminalNodeMatches = false;
|
|
80
|
+
var ruleName = nonTerminalNode.getRuleName(), assertionRuleName = assertionNonTerminalNode.getRuleName(); ///
|
|
81
|
+
if (ruleName === assertionRuleName) {
|
|
82
|
+
var childNodes = nonTerminalNode.getChildNodes(), assertionChildNodes = assertionNonTerminalNode.getChildNodes(), nodes = childNodes, assertionNodes = assertionChildNodes, assertionNodesMatches = matchProofNodes(assertionNodes, nodes);
|
|
83
|
+
assertionNonTerminalNodeMatches = assertionNodesMatches; ///
|
|
94
84
|
}
|
|
95
|
-
return
|
|
85
|
+
return assertionNonTerminalNodeMatches;
|
|
96
86
|
}
|
|
97
87
|
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJvb2YuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBQcm9vZkNvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvcHJvb2ZcIjtcbmltcG9ydCB2ZXJpZnlEZXJpdmF0aW9uIGZyb20gXCIuLi92ZXJpZnkvZGVyaXZhdGlvblwiO1xuaW1wb3J0IHZlcmlmeVF1YWxpZmllZFN0YXRlbWVudCBmcm9tIFwiLi4vdmVyaWZ5L3N0YXRlbWVudC9xdWFsaWZpZWRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBkZXJpdmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Byb29mL2Rlcml2YXRpb24hXCIpLFxuICAgICAgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Byb29mL3F1YWxpZmllZFN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVByb29mKHByb29mTm9kZSwgZmlsZUNvbnRleHQpIHtcbiAgbGV0IHByb29mVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBwcm9vZkNvbnRleHQgPSBQcm9vZkNvbnRleHQuZnJvbUZpbGVDb250ZXh0KGZpbGVDb250ZXh0KTtcblxuICBwcm9vZkNvbnRleHQuYmVnaW4ocHJvb2ZOb2RlKTtcblxuICBjb25zdCBkZXJpdmF0aW9uTm9kZSA9IGRlcml2YXRpb25Ob2RlUXVlcnkocHJvb2ZOb2RlKSxcbiAgICAgICAgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZSA9IHF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeShwcm9vZk5vZGUpO1xuXG4gIGxldCBkZXJpdmF0aW9uVmVyaWZpZWQgPSBmYWxzZSxcbiAgICAgIHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gZmFsc2U7XG5cbiAgaWYgKGRlcml2YXRpb25Ob2RlICE9PSBudWxsKSB7XG4gICAgZGVyaXZhdGlvblZlcmlmaWVkID0gdmVyaWZ5RGVyaXZhdGlvbihkZXJpdmF0aW9uTm9kZSwgcHJvb2ZDb250ZXh0KTtcbiAgfVxuXG4gIGlmIChxdWFsaWZpZWRTdGF0ZW1lbnROb2RlICE9PSBudWxsKSB7XG4gICAgbGV0IGRlcml2ZWQ7XG5cbiAgICBkZXJpdmVkID0gdHJ1ZTtcblxuICAgIHByb29mQ29udGV4dC5zZXREZXJpdmVkKGRlcml2ZWQpO1xuXG4gICAgcXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQgPSB2ZXJpZnlRdWFsaWZpZWRTdGF0ZW1lbnQocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSwgcHJvb2ZDb250ZXh0KTtcblxuICAgIGRlcml2ZWQgPSBmYWxzZTtcblxuICAgIHByb29mQ29udGV4dC5zZXREZXJpdmVkKGRlcml2ZWQpO1xuICB9XG5cbiAgLy8gaWYgKGRlcml2YXRpb25WZXJpZmllZCkge1xuICAvLyAgIGNvbnN0IHF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkocHJvb2ZOb2RlKSxcbiAgLy8gICAgICAgICBxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCA9IHZlcmlmeVF1YWxpZmllZFN0YXRlbWVudChxdWFsaWZpZWRTdGF0ZW1lbnROb2RlLCBwcm9vZkNvbnRleHQpO1xuICAvL1xuICAvLyAgIGlmIChxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCkge1xuICAvLyAgICAgY29uc3Qgc3RhdGVtZW50Tm9kZSA9IGNvbmNsdXNpb24uZ2V0U3RhdGVtZW50Tm9kZSgpLFxuICAvLyAgICAgICAgICAgcHJvb2ZTdGF0ZW1lbnROb2RlID0gcHJvb2ZTdGF0ZW1lbnROb2RlUXVlcnkocHJvb2ZOb2RlKSxcbiAgLy8gICAgICAgICAgIHByb29mU3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBtYXRjaFByb29mU3RhdGVtZW50Tm9kZShwcm9vZlN0YXRlbWVudE5vZGUsIHN0YXRlbWVudE5vZGUpO1xuICAvL1xuICAvLyAgICAgcHJvb2ZWZXJpZmllZCA9IHByb29mU3RhdGVtZW50Tm9kZU1hdGNoZXM7ICAvLy9cbiAgLy8gICB9XG4gIC8vIH1cblxuICBwcm9vZlZlcmlmaWVkID9cbiAgICBwcm9vZkNvbnRleHQuY29tcGxldGUocHJvb2ZOb2RlKSA6XG4gICAgICBwcm9vZkNvbnRleHQuY29tcGxldGUocHJvb2ZOb2RlKTtcblxuICByZXR1cm4gcHJvb2ZWZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcm9vZlN0YXRlbWVudE5vZGUocHJvb2ZTdGF0ZW1lbnROb2RlLCBzdGF0ZW1lbnROb2RlKSB7XG4gIGNvbnN0IHByb29mTm9uVGVybWluYWxOb2RlID0gcHJvb2ZTdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgIG5vblRlcm1pbmFsTm9kZSA9IHN0YXRlbWVudE5vZGUsICAvLy9cbiAgICAgICAgcHJvb2ZOb25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hQcm9vZk5vblRlcm1pbmFsTm9kZShwcm9vZk5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlKSxcbiAgICAgICAgcHJvb2ZTdGF0ZW1lbnROb2RlTWF0Y2hlcyA9IHByb29mTm9uVGVybWluYWxOb2RlTWF0Y2hlczsgIC8vL1xuXG4gIHJldHVybiBwcm9vZlN0YXRlbWVudE5vZGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaFByb29mTm9kZShwcm9vZk5vZGUsIG5vZGUpIHtcbiAgbGV0IHByb29mTm9kZU1hdGNoZXMgPSBmYWxzZTtcblxuICBjb25zdCBub2RlVGVybWluYWxOb2RlID0gbm9kZS5pc1Rlcm1pbmFsTm9kZSgpLFxuICAgICAgICBydWxlTm9kZVRlcm1pbmFsTm9kZSA9IHByb29mTm9kZS5pc1Rlcm1pbmFsTm9kZSgpO1xuXG4gIGlmIChub2RlVGVybWluYWxOb2RlID09PSBydWxlTm9kZVRlcm1pbmFsTm9kZSkge1xuICAgIGlmIChub2RlVGVybWluYWxOb2RlKSB7XG4gICAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgICBwcm9vZlRlcm1pbmFsTm9kZSA9IHByb29mTm9kZSwgIC8vL1xuICAgICAgICAgICAgcHJvb2ZUZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hQcm9vZlRlcm1pbmFsTm9kZShwcm9vZlRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlKTtcblxuICAgICAgcHJvb2ZOb2RlTWF0Y2hlcyA9IHByb29mVGVybWluYWxOb2RlTWF0Y2hlczsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgICAgIHByb29mTm9uVGVybWluYWxOb2RlID0gcHJvb2ZOb2RlLCAgLy8vXG4gICAgICAgICAgICBwcm9vZk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFByb29mTm9uVGVybWluYWxOb2RlKHByb29mTm9uVGVybWluYWxOb2RlLCBub25UZXJtaW5hbE5vZGUpO1xuXG4gICAgICBwcm9vZk5vZGVNYXRjaGVzID0gcHJvb2ZOb25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gcHJvb2ZOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcm9vZk5vZGVzKHByb29mTm9kZXMsIG5vZGVzKSB7XG4gIGxldCBwcm9vZk5vZGVzTWF0Y2hlcyA9IGZhbHNlO1xuXG4gIGNvbnN0IG5vZGVzTGVuZ3RoID0gbm9kZXMubGVuZ3RoLFxuICAgICAgICBwcm9vZk5vZGVzTGVuZ3RoID0gcHJvb2ZOb2Rlcy5sZW5ndGg7XG5cbiAgaWYgKG5vZGVzTGVuZ3RoID09PSBwcm9vZk5vZGVzTGVuZ3RoKSB7XG4gICAgcHJvb2ZOb2Rlc01hdGNoZXMgPSBub2Rlcy5ldmVyeSgobm9kZSwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IHByb29mTm9kZSA9IHByb29mTm9kZXNbaW5kZXhdLFxuICAgICAgICAgICAgcHJvb2ZOb2RlTWF0Y2hlcyA9IG1hdGNoUHJvb2ZOb2RlKHByb29mTm9kZSwgbm9kZSk7XG5cbiAgICAgIGlmIChwcm9vZk5vZGVNYXRjaGVzKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICByZXR1cm4gcHJvb2ZOb2Rlc01hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoUHJvb2ZUZXJtaW5hbE5vZGUocHJvb2ZUZXJtaW5hbE5vZGUsIHRlcm1pbmFsTm9kZSkge1xuICBjb25zdCBtYXRjaGVzID0gcHJvb2ZUZXJtaW5hbE5vZGUubWF0Y2godGVybWluYWxOb2RlKSxcbiAgICAgICAgcHJvb2ZUZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hlczsgIC8vL1xuXG4gIHJldHVybiBwcm9vZlRlcm1pbmFsTm9kZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoUHJvb2ZOb25UZXJtaW5hbE5vZGUocHJvb2ZOb25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSkge1xuICBsZXQgcHJvb2ZOb25UZXJtaW5hbE5vZGVNYXRjaGVzID0gZmFsc2U7XG5cbiAgY29uc3QgcnVsZU5hbWUgPSBub25UZXJtaW5hbE5vZGUuZ2V0UnVsZU5hbWUoKSxcbiAgICAgICAgcHJvb2ZSdWxlTmFtZSA9IHByb29mTm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCk7IC8vL1xuXG4gIGlmIChydWxlTmFtZSA9PT0gcHJvb2ZSdWxlTmFtZSkge1xuICAgIGNvbnN0IGNoaWxkTm9kZXMgPSBub25UZXJtaW5hbE5vZGUuZ2V0Q2hpbGROb2RlcygpLFxuICAgICAgICAgIHByb29mQ2hpbGROb2RlcyA9IHByb29mTm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBub2RlcyA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIHByb29mTm9kZXMgPSBwcm9vZkNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIHByb29mTm9kZXNNYXRjaGVzID0gbWF0Y2hQcm9vZk5vZGVzKHByb29mTm9kZXMsIG5vZGVzKTtcblxuICAgIHByb29mTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IHByb29mTm9kZXNNYXRjaGVzOyAvLy9cbiAgfVxuXG4gIHJldHVybiBwcm9vZk5vblRlcm1pbmFsTm9kZU1hdGNoZXM7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5UHJvb2YiLCJkZXJpdmF0aW9uTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwicXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5IiwicHJvb2ZOb2RlIiwiZmlsZUNvbnRleHQiLCJwcm9vZlZlcmlmaWVkIiwicHJvb2ZDb250ZXh0IiwiUHJvb2ZDb250ZXh0IiwiZnJvbUZpbGVDb250ZXh0IiwiYmVnaW4iLCJkZXJpdmF0aW9uTm9kZSIsInF1YWxpZmllZFN0YXRlbWVudE5vZGUiLCJkZXJpdmF0aW9uVmVyaWZpZWQiLCJxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeURlcml2YXRpb24iLCJkZXJpdmVkIiwic2V0RGVyaXZlZCIsInZlcmlmeVF1YWxpZmllZFN0YXRlbWVudCIsImNvbXBsZXRlIiwibWF0Y2hQcm9vZlN0YXRlbWVudE5vZGUiLCJwcm9vZlN0YXRlbWVudE5vZGUiLCJzdGF0ZW1lbnROb2RlIiwicHJvb2ZOb25UZXJtaW5hbE5vZGUiLCJub25UZXJtaW5hbE5vZGUiLCJwcm9vZk5vblRlcm1pbmFsTm9kZU1hdGNoZXMiLCJtYXRjaFByb29mTm9uVGVybWluYWxOb2RlIiwicHJvb2ZTdGF0ZW1lbnROb2RlTWF0Y2hlcyIsIm1hdGNoUHJvb2ZOb2RlIiwibm9kZSIsInByb29mTm9kZU1hdGNoZXMiLCJub2RlVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJydWxlTm9kZVRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsInByb29mVGVybWluYWxOb2RlIiwicHJvb2ZUZXJtaW5hbE5vZGVNYXRjaGVzIiwibWF0Y2hQcm9vZlRlcm1pbmFsTm9kZSIsIm1hdGNoUHJvb2ZOb2RlcyIsInByb29mTm9kZXMiLCJub2RlcyIsInByb29mTm9kZXNNYXRjaGVzIiwibm9kZXNMZW5ndGgiLCJsZW5ndGgiLCJwcm9vZk5vZGVzTGVuZ3RoIiwiZXZlcnkiLCJpbmRleCIsIm1hdGNoZXMiLCJtYXRjaCIsInJ1bGVOYW1lIiwiZ2V0UnVsZU5hbWUiLCJwcm9vZlJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJwcm9vZkNoaWxkTm9kZXMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVdBOzs7ZUFBd0JBOzs7MERBVEM7K0RBQ0k7OERBQ1E7cUJBRVg7Ozs7OztBQUUxQixJQUFNQyxzQkFBc0JDLElBQUFBLGdCQUFTLEVBQUMsdUJBQ2hDQyw4QkFBOEJELElBQUFBLGdCQUFTLEVBQUM7QUFFL0IsU0FBU0YsWUFBWUksU0FBUyxFQUFFQyxXQUFXLEVBQUU7SUFDMUQsSUFBSUMsZ0JBQWdCLEtBQUs7SUFFekIsSUFBTUMsZUFBZUMsY0FBWSxDQUFDQyxlQUFlLENBQUNKO0lBRWxERSxhQUFhRyxLQUFLLENBQUNOO0lBRW5CLElBQU1PLGlCQUFpQlYsb0JBQW9CRyxZQUNyQ1EseUJBQXlCVCw0QkFBNEJDO0lBRTNELElBQUlTLHFCQUFxQixLQUFLLEVBQzFCQyw2QkFBNkIsS0FBSztJQUV0QyxJQUFJSCxtQkFBbUIsSUFBSSxFQUFFO1FBQzNCRSxxQkFBcUJFLElBQUFBLG1CQUFnQixFQUFDSixnQkFBZ0JKO0lBQ3hELENBQUM7SUFFRCxJQUFJSywyQkFBMkIsSUFBSSxFQUFFO1FBQ25DLElBQUlJO1FBRUpBLFVBQVUsSUFBSTtRQUVkVCxhQUFhVSxVQUFVLENBQUNEO1FBRXhCRiw2QkFBNkJJLElBQUFBLGtCQUF3QixFQUFDTix3QkFBd0JMO1FBRTlFUyxVQUFVLEtBQUs7UUFFZlQsYUFBYVUsVUFBVSxDQUFDRDtJQUMxQixDQUFDO0lBRUQsNEJBQTRCO0lBQzVCLDJFQUEyRTtJQUMzRSx1R0FBdUc7SUFDdkcsRUFBRTtJQUNGLHNDQUFzQztJQUN0QywyREFBMkQ7SUFDM0QscUVBQXFFO0lBQ3JFLG9HQUFvRztJQUNwRyxFQUFFO0lBQ0Ysc0RBQXNEO0lBQ3RELE1BQU07SUFDTixJQUFJO0lBRUpWLGdCQUNFQyxhQUFhWSxRQUFRLENBQUNmLGFBQ3BCRyxhQUFhWSxRQUFRLENBQUNmLFVBQVU7SUFFcEMsT0FBT0U7QUFDVDtBQUVBLFNBQVNjLHdCQUF3QkMsa0JBQWtCLEVBQUVDLGFBQWEsRUFBRTtJQUNsRSxJQUFNQyx1QkFBdUJGLG9CQUN2Qkcsa0JBQWtCRixlQUNsQkcsOEJBQThCQywwQkFBMEJILHNCQUFzQkMsa0JBQzlFRyw0QkFBNEJGLDZCQUE4QixHQUFHO0lBRW5FLE9BQU9FO0FBQ1Q7QUFFQSxTQUFTQyxlQUFleEIsU0FBUyxFQUFFeUIsSUFBSSxFQUFFO0lBQ3ZDLElBQUlDLG1CQUFtQixLQUFLO0lBRTVCLElBQU1DLG1CQUFtQkYsS0FBS0csY0FBYyxJQUN0Q0MsdUJBQXVCN0IsVUFBVTRCLGNBQWM7SUFFckQsSUFBSUQscUJBQXFCRSxzQkFBc0I7UUFDN0MsSUFBSUYsa0JBQWtCO1lBQ3BCLElBQU1HLGVBQWVMLE1BQ2ZNLG9CQUFvQi9CLFdBQ3BCZ0MsMkJBQTJCQyx1QkFBdUJGLG1CQUFtQkQ7WUFFM0VKLG1CQUFtQk0sMEJBQTJCLEdBQUc7UUFDbkQsT0FBTztZQUNMLElBQU1aLGtCQUFrQkssTUFDbEJOLHVCQUF1Qm5CLFdBQ3ZCcUIsOEJBQThCQywwQkFBMEJILHNCQUFzQkM7WUFFcEZNLG1CQUFtQkwsNkJBQTZCLEdBQUc7UUFDckQsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPSztBQUNUO0FBRUEsU0FBU1EsZ0JBQWdCQyxVQUFVLEVBQUVDLEtBQUssRUFBRTtJQUMxQyxJQUFJQyxvQkFBb0IsS0FBSztJQUU3QixJQUFNQyxjQUFjRixNQUFNRyxNQUFNLEVBQzFCQyxtQkFBbUJMLFdBQVdJLE1BQU07SUFFMUMsSUFBSUQsZ0JBQWdCRSxrQkFBa0I7UUFDcENILG9CQUFvQkQsTUFBTUssS0FBSyxDQUFDLFNBQUNoQixNQUFNaUIsT0FBVTtZQUMvQyxJQUFNMUMsWUFBWW1DLFVBQVUsQ0FBQ08sTUFBTSxFQUM3QmhCLG1CQUFtQkYsZUFBZXhCLFdBQVd5QjtZQUVuRCxJQUFJQyxrQkFBa0I7Z0JBQ3BCLE9BQU8sSUFBSTtZQUNiLENBQUM7UUFDSDtJQUNGLENBQUM7SUFFRCxPQUFPVztBQUNUO0FBRUEsU0FBU0osdUJBQXVCRixpQkFBaUIsRUFBRUQsWUFBWSxFQUFFO0lBQy9ELElBQU1hLFVBQVVaLGtCQUFrQmEsS0FBSyxDQUFDZCxlQUNsQ0UsMkJBQTJCVyxTQUFVLEdBQUc7SUFFOUMsT0FBT1g7QUFDVDtBQUVBLFNBQVNWLDBCQUEwQkgsb0JBQW9CLEVBQUVDLGVBQWUsRUFBRTtJQUN4RSxJQUFJQyw4QkFBOEIsS0FBSztJQUV2QyxJQUFNd0IsV0FBV3pCLGdCQUFnQjBCLFdBQVcsSUFDdENDLGdCQUFnQjVCLHFCQUFxQjJCLFdBQVcsSUFBSSxHQUFHO0lBRTdELElBQUlELGFBQWFFLGVBQWU7UUFDOUIsSUFBTUMsYUFBYTVCLGdCQUFnQjZCLGFBQWEsSUFDMUNDLGtCQUFrQi9CLHFCQUFxQjhCLGFBQWEsSUFDcERiLFFBQVFZLFlBQ1JiLGFBQWFlLGlCQUNiYixvQkFBb0JILGdCQUFnQkMsWUFBWUM7UUFFdERmLDhCQUE4QmdCLG1CQUFtQixHQUFHO0lBQ3RELENBQUM7SUFFRCxPQUFPaEI7QUFDVCJ9
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvcHJvb2YuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBBc3NlcnRpb24gZnJvbSBcIi4uL2Fzc2VydGlvblwiO1xuaW1wb3J0IHZlcmlmeURlcml2YXRpb24gZnJvbSBcIi4uL3ZlcmlmeS9kZXJpdmF0aW9uXCI7XG5pbXBvcnQgdmVyaWZ5UXVhbGlmaWVkU3RhdGVtZW50IGZyb20gXCIuL3N0YXRlbWVudC9xdWFsaWZpZWRcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCBkZXJpdmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Byb29mL2Rlcml2YXRpb24hXCIpLFxuICAgICAgcXVhbGlmaWVkU3RhdGVtZW50Tm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Byb29mL3F1YWxpZmllZFN0YXRlbWVudCFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVByb29mKHByb29mTm9kZSwgY29uc2VxdWVudCwgcHJvb2ZDb250ZXh0KSB7XG4gIGxldCBwcm9vZlZlcmlmaWVkID0gZmFsc2U7XG5cbiAgcHJvb2ZDb250ZXh0LmJlZ2luKHByb29mTm9kZSk7XG5cbiAgY29uc3QgZGVyaXZhdGlvbk5vZGUgPSBkZXJpdmF0aW9uTm9kZVF1ZXJ5KHByb29mTm9kZSksXG4gICAgICAgIHF1YWxpZmllZFN0YXRlbWVudE5vZGUgPSBxdWFsaWZpZWRTdGF0ZW1lbnROb2RlUXVlcnkocHJvb2ZOb2RlKTtcblxuICBsZXQgZGVyaXZhdGlvblZlcmlmaWVkID0gZmFsc2UsXG4gICAgICBxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmIChkZXJpdmF0aW9uTm9kZSAhPT0gbnVsbCkge1xuICAgIGRlcml2YXRpb25WZXJpZmllZCA9IHZlcmlmeURlcml2YXRpb24oZGVyaXZhdGlvbk5vZGUsIHByb29mQ29udGV4dCk7XG4gIH1cblxuICBpZiAocXVhbGlmaWVkU3RhdGVtZW50Tm9kZSAhPT0gbnVsbCkge1xuICAgIHF1YWxpZmllZFN0YXRlbWVudFZlcmlmaWVkID0gdmVyaWZ5UXVhbGlmaWVkU3RhdGVtZW50KHF1YWxpZmllZFN0YXRlbWVudE5vZGUsIHByb29mQ29udGV4dCk7XG5cbiAgICBpZiAocXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICAgIGNvbnN0IGFzc2VydGlvbiA9IEFzc2VydGlvbi5mcm9tUXVhbGlmaWVkU3RhdGVtZW50Tm9kZShxdWFsaWZpZWRTdGF0ZW1lbnROb2RlKTtcblxuICAgICAgcHJvb2ZDb250ZXh0LmFkZEFzc2VydGlvbihhc3NlcnRpb24pO1xuICAgIH1cbiAgfVxuXG4gIGlmIChkZXJpdmF0aW9uVmVyaWZpZWQgfHwgcXVhbGlmaWVkU3RhdGVtZW50VmVyaWZpZWQpIHtcbiAgICBjb25zdCBsYXN0QXNzZXJ0aW9uID0gcHJvb2ZDb250ZXh0LmdldExhc3RBc3NlcnRpb24oKSxcbiAgICAgICAgICBhc3NlcnRpb24gPSBsYXN0QXNzZXJ0aW9uLCAvLy9cbiAgICAgICAgICBzdGF0ZW1lbnROb2RlID0gY29uc2VxdWVudC5nZXRTdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgYXNzZXJ0aW9uU3RhdGVtZW50Tm9kZSA9IGFzc2VydGlvbi5nZXRTdGF0ZW1lbnROb2RlKCksXG4gICAgICAgICAgYXNzZXJ0aW9uU3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBtYXRjaFByb29mU3RhdGVtZW50Tm9kZShhc3NlcnRpb25TdGF0ZW1lbnROb2RlLCBzdGF0ZW1lbnROb2RlKTtcblxuICAgIHByb29mVmVyaWZpZWQgPSBhc3NlcnRpb25TdGF0ZW1lbnROb2RlTWF0Y2hlczsgIC8vL1xuICB9XG5cbiAgcHJvb2ZWZXJpZmllZCA/XG4gICAgcHJvb2ZDb250ZXh0LmNvbXBsZXRlKHByb29mTm9kZSkgOlxuICAgICAgcHJvb2ZDb250ZXh0LmNvbXBsZXRlKHByb29mTm9kZSk7XG5cbiAgcmV0dXJuIHByb29mVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIG1hdGNoUHJvb2ZTdGF0ZW1lbnROb2RlKGFzc2VydGlvblN0YXRlbWVudE5vZGUsIHN0YXRlbWVudE5vZGUpIHtcbiAgY29uc3QgYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlID0gYXNzZXJ0aW9uU3RhdGVtZW50Tm9kZSwgIC8vL1xuICAgICAgICBub25UZXJtaW5hbE5vZGUgPSBzdGF0ZW1lbnROb2RlLCAgLy8vXG4gICAgICAgIGFzc2VydGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFByb29mTm9uVGVybWluYWxOb2RlKGFzc2VydGlvbk5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlKSxcbiAgICAgICAgYXNzZXJ0aW9uU3RhdGVtZW50Tm9kZU1hdGNoZXMgPSBhc3NlcnRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzOyAgLy8vXG5cbiAgcmV0dXJuIGFzc2VydGlvblN0YXRlbWVudE5vZGVNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaFByb29mTm9kZShhc3NlcnRpb25Ob2RlLCBub2RlKSB7XG4gIGxldCBhc3NlcnRpb25Ob2RlTWF0Y2hlcyA9IGZhbHNlO1xuXG4gIGNvbnN0IG5vZGVUZXJtaW5hbE5vZGUgPSBub2RlLmlzVGVybWluYWxOb2RlKCksXG4gICAgICAgIHJ1bGVOb2RlVGVybWluYWxOb2RlID0gYXNzZXJ0aW9uTm9kZS5pc1Rlcm1pbmFsTm9kZSgpO1xuXG4gIGlmIChub2RlVGVybWluYWxOb2RlID09PSBydWxlTm9kZVRlcm1pbmFsTm9kZSkge1xuICAgIGlmIChub2RlVGVybWluYWxOb2RlKSB7XG4gICAgICBjb25zdCB0ZXJtaW5hbE5vZGUgPSBub2RlLCAgLy8vXG4gICAgICAgICAgICBhc3NlcnRpb25UZXJtaW5hbE5vZGUgPSBhc3NlcnRpb25Ob2RlLCAgLy8vXG4gICAgICAgICAgICBhc3NlcnRpb25UZXJtaW5hbE5vZGVNYXRjaGVzID0gbWF0Y2hQcm9vZlRlcm1pbmFsTm9kZShhc3NlcnRpb25UZXJtaW5hbE5vZGUsIHRlcm1pbmFsTm9kZSk7XG5cbiAgICAgIGFzc2VydGlvbk5vZGVNYXRjaGVzID0gYXNzZXJ0aW9uVGVybWluYWxOb2RlTWF0Y2hlczsgIC8vL1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25UZXJtaW5hbE5vZGUgPSBub2RlLCAvLy9cbiAgICAgICAgICAgIGFzc2VydGlvbk5vblRlcm1pbmFsTm9kZSA9IGFzc2VydGlvbk5vZGUsICAvLy9cbiAgICAgICAgICAgIGFzc2VydGlvbk5vblRlcm1pbmFsTm9kZU1hdGNoZXMgPSBtYXRjaFByb29mTm9uVGVybWluYWxOb2RlKGFzc2VydGlvbk5vblRlcm1pbmFsTm9kZSwgbm9uVGVybWluYWxOb2RlKTtcblxuICAgICAgYXNzZXJ0aW9uTm9kZU1hdGNoZXMgPSBhc3NlcnRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzOyAvLy9cbiAgICB9XG4gIH1cblxuICByZXR1cm4gYXNzZXJ0aW9uTm9kZU1hdGNoZXM7XG59XG5cbmZ1bmN0aW9uIG1hdGNoUHJvb2ZOb2Rlcyhhc3NlcnRpb25Ob2Rlcywgbm9kZXMpIHtcbiAgbGV0IGFzc2VydGlvbk5vZGVzTWF0Y2hlcyA9IGZhbHNlO1xuXG4gIGNvbnN0IG5vZGVzTGVuZ3RoID0gbm9kZXMubGVuZ3RoLFxuICAgICAgICBhc3NlcnRpb25Ob2Rlc0xlbmd0aCA9IGFzc2VydGlvbk5vZGVzLmxlbmd0aDtcblxuICBpZiAobm9kZXNMZW5ndGggPT09IGFzc2VydGlvbk5vZGVzTGVuZ3RoKSB7XG4gICAgYXNzZXJ0aW9uTm9kZXNNYXRjaGVzID0gbm9kZXMuZXZlcnkoKG5vZGUsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBhc3NlcnRpb25Ob2RlID0gYXNzZXJ0aW9uTm9kZXNbaW5kZXhdLFxuICAgICAgICAgICAgYXNzZXJ0aW9uTm9kZU1hdGNoZXMgPSBtYXRjaFByb29mTm9kZShhc3NlcnRpb25Ob2RlLCBub2RlKTtcblxuICAgICAgaWYgKGFzc2VydGlvbk5vZGVNYXRjaGVzKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICByZXR1cm4gYXNzZXJ0aW9uTm9kZXNNYXRjaGVzO1xufVxuXG5mdW5jdGlvbiBtYXRjaFByb29mVGVybWluYWxOb2RlKGFzc2VydGlvblRlcm1pbmFsTm9kZSwgdGVybWluYWxOb2RlKSB7XG4gIGNvbnN0IG1hdGNoZXMgPSBhc3NlcnRpb25UZXJtaW5hbE5vZGUubWF0Y2godGVybWluYWxOb2RlKSxcbiAgICAgICAgYXNzZXJ0aW9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IG1hdGNoZXM7ICAvLy9cblxuICByZXR1cm4gYXNzZXJ0aW9uVGVybWluYWxOb2RlTWF0Y2hlcztcbn1cblxuZnVuY3Rpb24gbWF0Y2hQcm9vZk5vblRlcm1pbmFsTm9kZShhc3NlcnRpb25Ob25UZXJtaW5hbE5vZGUsIG5vblRlcm1pbmFsTm9kZSkge1xuICBsZXQgYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyA9IGZhbHNlO1xuXG4gIGNvbnN0IHJ1bGVOYW1lID0gbm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCksXG4gICAgICAgIGFzc2VydGlvblJ1bGVOYW1lID0gYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlLmdldFJ1bGVOYW1lKCk7IC8vL1xuXG4gIGlmIChydWxlTmFtZSA9PT0gYXNzZXJ0aW9uUnVsZU5hbWUpIHtcbiAgICBjb25zdCBjaGlsZE5vZGVzID0gbm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBhc3NlcnRpb25DaGlsZE5vZGVzID0gYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlLmdldENoaWxkTm9kZXMoKSxcbiAgICAgICAgICBub2RlcyA9IGNoaWxkTm9kZXMsIC8vL1xuICAgICAgICAgIGFzc2VydGlvbk5vZGVzID0gYXNzZXJ0aW9uQ2hpbGROb2RlcywgLy8vXG4gICAgICAgICAgYXNzZXJ0aW9uTm9kZXNNYXRjaGVzID0gbWF0Y2hQcm9vZk5vZGVzKGFzc2VydGlvbk5vZGVzLCBub2Rlcyk7XG5cbiAgICBhc3NlcnRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzID0gYXNzZXJ0aW9uTm9kZXNNYXRjaGVzOyAvLy9cbiAgfVxuXG4gIHJldHVybiBhc3NlcnRpb25Ob25UZXJtaW5hbE5vZGVNYXRjaGVzO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeVByb29mIiwiZGVyaXZhdGlvbk5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsInF1YWxpZmllZFN0YXRlbWVudE5vZGVRdWVyeSIsInByb29mTm9kZSIsImNvbnNlcXVlbnQiLCJwcm9vZkNvbnRleHQiLCJwcm9vZlZlcmlmaWVkIiwiYmVnaW4iLCJkZXJpdmF0aW9uTm9kZSIsInF1YWxpZmllZFN0YXRlbWVudE5vZGUiLCJkZXJpdmF0aW9uVmVyaWZpZWQiLCJxdWFsaWZpZWRTdGF0ZW1lbnRWZXJpZmllZCIsInZlcmlmeURlcml2YXRpb24iLCJ2ZXJpZnlRdWFsaWZpZWRTdGF0ZW1lbnQiLCJhc3NlcnRpb24iLCJBc3NlcnRpb24iLCJmcm9tUXVhbGlmaWVkU3RhdGVtZW50Tm9kZSIsImFkZEFzc2VydGlvbiIsImxhc3RBc3NlcnRpb24iLCJnZXRMYXN0QXNzZXJ0aW9uIiwic3RhdGVtZW50Tm9kZSIsImdldFN0YXRlbWVudE5vZGUiLCJhc3NlcnRpb25TdGF0ZW1lbnROb2RlIiwiYXNzZXJ0aW9uU3RhdGVtZW50Tm9kZU1hdGNoZXMiLCJtYXRjaFByb29mU3RhdGVtZW50Tm9kZSIsImNvbXBsZXRlIiwiYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlIiwibm9uVGVybWluYWxOb2RlIiwiYXNzZXJ0aW9uTm9uVGVybWluYWxOb2RlTWF0Y2hlcyIsIm1hdGNoUHJvb2ZOb25UZXJtaW5hbE5vZGUiLCJtYXRjaFByb29mTm9kZSIsImFzc2VydGlvbk5vZGUiLCJub2RlIiwiYXNzZXJ0aW9uTm9kZU1hdGNoZXMiLCJub2RlVGVybWluYWxOb2RlIiwiaXNUZXJtaW5hbE5vZGUiLCJydWxlTm9kZVRlcm1pbmFsTm9kZSIsInRlcm1pbmFsTm9kZSIsImFzc2VydGlvblRlcm1pbmFsTm9kZSIsImFzc2VydGlvblRlcm1pbmFsTm9kZU1hdGNoZXMiLCJtYXRjaFByb29mVGVybWluYWxOb2RlIiwibWF0Y2hQcm9vZk5vZGVzIiwiYXNzZXJ0aW9uTm9kZXMiLCJub2RlcyIsImFzc2VydGlvbk5vZGVzTWF0Y2hlcyIsIm5vZGVzTGVuZ3RoIiwibGVuZ3RoIiwiYXNzZXJ0aW9uTm9kZXNMZW5ndGgiLCJldmVyeSIsImluZGV4IiwibWF0Y2hlcyIsIm1hdGNoIiwicnVsZU5hbWUiLCJnZXRSdWxlTmFtZSIsImFzc2VydGlvblJ1bGVOYW1lIiwiY2hpbGROb2RlcyIsImdldENoaWxkTm9kZXMiLCJhc3NlcnRpb25DaGlsZE5vZGVzIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFXQTs7O2VBQXdCQTs7OzhEQVRGOytEQUNPOzhEQUNRO3FCQUVYOzs7Ozs7QUFFMUIsSUFBTUMsc0JBQXNCQyxJQUFBQSxnQkFBUyxFQUFDLHVCQUNoQ0MsOEJBQThCRCxJQUFBQSxnQkFBUyxFQUFDO0FBRS9CLFNBQVNGLFlBQVlJLFNBQVMsRUFBRUMsVUFBVSxFQUFFQyxZQUFZLEVBQUU7SUFDdkUsSUFBSUMsZ0JBQWdCLEtBQUs7SUFFekJELGFBQWFFLEtBQUssQ0FBQ0o7SUFFbkIsSUFBTUssaUJBQWlCUixvQkFBb0JHLFlBQ3JDTSx5QkFBeUJQLDRCQUE0QkM7SUFFM0QsSUFBSU8scUJBQXFCLEtBQUssRUFDMUJDLDZCQUE2QixLQUFLO0lBRXRDLElBQUlILG1CQUFtQixJQUFJLEVBQUU7UUFDM0JFLHFCQUFxQkUsSUFBQUEsbUJBQWdCLEVBQUNKLGdCQUFnQkg7SUFDeEQsQ0FBQztJQUVELElBQUlJLDJCQUEyQixJQUFJLEVBQUU7UUFDbkNFLDZCQUE2QkUsSUFBQUEsa0JBQXdCLEVBQUNKLHdCQUF3Qko7UUFFOUUsSUFBSU0sNEJBQTRCO1lBQzlCLElBQU1HLFlBQVlDLGtCQUFTLENBQUNDLDBCQUEwQixDQUFDUDtZ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
|
package/package.json
CHANGED
package/src/context/proof.js
CHANGED
|
@@ -4,7 +4,7 @@ import fileMixins from "../mixins/file";
|
|
|
4
4
|
import loggingMixins from "../mixins/logging";
|
|
5
5
|
import callbacksMixins from "../mixins/callbacks";
|
|
6
6
|
|
|
7
|
-
import { push } from "../utilities/array";
|
|
7
|
+
import { push, last } from "../utilities/array";
|
|
8
8
|
|
|
9
9
|
class ProofContext {
|
|
10
10
|
constructor(context, derived, variables, assertions) {
|
|
@@ -57,6 +57,12 @@ class ProofContext {
|
|
|
57
57
|
return variables;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
+
getLastAssertion() {
|
|
61
|
+
const lastAssertion = last(this.assertions);
|
|
62
|
+
|
|
63
|
+
return lastAssertion;
|
|
64
|
+
}
|
|
65
|
+
|
|
60
66
|
setDerived(derived) {
|
|
61
67
|
this.derived = derived;
|
|
62
68
|
}
|
package/src/verify/proof.js
CHANGED
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import
|
|
3
|
+
import Assertion from "../assertion";
|
|
4
4
|
import verifyDerivation from "../verify/derivation";
|
|
5
|
-
import verifyQualifiedStatement from "
|
|
5
|
+
import verifyQualifiedStatement from "./statement/qualified";
|
|
6
6
|
|
|
7
7
|
import { nodeQuery } from "../utilities/query";
|
|
8
8
|
|
|
9
9
|
const derivationNodeQuery = nodeQuery("/proof/derivation!"),
|
|
10
10
|
qualifiedStatementNodeQuery = nodeQuery("/proof/qualifiedStatement!");
|
|
11
11
|
|
|
12
|
-
export default function verifyProof(proofNode,
|
|
12
|
+
export default function verifyProof(proofNode, consequent, proofContext) {
|
|
13
13
|
let proofVerified = false;
|
|
14
14
|
|
|
15
|
-
const proofContext = ProofContext.fromFileContext(fileContext);
|
|
16
|
-
|
|
17
15
|
proofContext.begin(proofNode);
|
|
18
16
|
|
|
19
17
|
const derivationNode = derivationNodeQuery(proofNode),
|
|
@@ -27,31 +25,24 @@ export default function verifyProof(proofNode, fileContext) {
|
|
|
27
25
|
}
|
|
28
26
|
|
|
29
27
|
if (qualifiedStatementNode !== null) {
|
|
30
|
-
let derived;
|
|
31
|
-
|
|
32
|
-
derived = true;
|
|
33
|
-
|
|
34
|
-
proofContext.setDerived(derived);
|
|
35
|
-
|
|
36
28
|
qualifiedStatementVerified = verifyQualifiedStatement(qualifiedStatementNode, proofContext);
|
|
37
29
|
|
|
38
|
-
|
|
30
|
+
if (qualifiedStatementVerified) {
|
|
31
|
+
const assertion = Assertion.fromQualifiedStatementNode(qualifiedStatementNode);
|
|
39
32
|
|
|
40
|
-
|
|
33
|
+
proofContext.addAssertion(assertion);
|
|
34
|
+
}
|
|
41
35
|
}
|
|
42
36
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
// proofVerified = proofStatementNodeMatches; ///
|
|
53
|
-
// }
|
|
54
|
-
// }
|
|
37
|
+
if (derivationVerified || qualifiedStatementVerified) {
|
|
38
|
+
const lastAssertion = proofContext.getLastAssertion(),
|
|
39
|
+
assertion = lastAssertion, ///
|
|
40
|
+
statementNode = consequent.getStatementNode(),
|
|
41
|
+
assertionStatementNode = assertion.getStatementNode(),
|
|
42
|
+
assertionStatementNodeMatches = matchProofStatementNode(assertionStatementNode, statementNode);
|
|
43
|
+
|
|
44
|
+
proofVerified = assertionStatementNodeMatches; ///
|
|
45
|
+
}
|
|
55
46
|
|
|
56
47
|
proofVerified ?
|
|
57
48
|
proofContext.complete(proofNode) :
|
|
@@ -60,82 +51,82 @@ export default function verifyProof(proofNode, fileContext) {
|
|
|
60
51
|
return proofVerified;
|
|
61
52
|
}
|
|
62
53
|
|
|
63
|
-
function matchProofStatementNode(
|
|
64
|
-
const
|
|
54
|
+
function matchProofStatementNode(assertionStatementNode, statementNode) {
|
|
55
|
+
const assertionNonTerminalNode = assertionStatementNode, ///
|
|
65
56
|
nonTerminalNode = statementNode, ///
|
|
66
|
-
|
|
67
|
-
|
|
57
|
+
assertionNonTerminalNodeMatches = matchProofNonTerminalNode(assertionNonTerminalNode, nonTerminalNode),
|
|
58
|
+
assertionStatementNodeMatches = assertionNonTerminalNodeMatches; ///
|
|
68
59
|
|
|
69
|
-
return
|
|
60
|
+
return assertionStatementNodeMatches;
|
|
70
61
|
}
|
|
71
62
|
|
|
72
|
-
function matchProofNode(
|
|
73
|
-
let
|
|
63
|
+
function matchProofNode(assertionNode, node) {
|
|
64
|
+
let assertionNodeMatches = false;
|
|
74
65
|
|
|
75
66
|
const nodeTerminalNode = node.isTerminalNode(),
|
|
76
|
-
ruleNodeTerminalNode =
|
|
67
|
+
ruleNodeTerminalNode = assertionNode.isTerminalNode();
|
|
77
68
|
|
|
78
69
|
if (nodeTerminalNode === ruleNodeTerminalNode) {
|
|
79
70
|
if (nodeTerminalNode) {
|
|
80
71
|
const terminalNode = node, ///
|
|
81
|
-
|
|
82
|
-
|
|
72
|
+
assertionTerminalNode = assertionNode, ///
|
|
73
|
+
assertionTerminalNodeMatches = matchProofTerminalNode(assertionTerminalNode, terminalNode);
|
|
83
74
|
|
|
84
|
-
|
|
75
|
+
assertionNodeMatches = assertionTerminalNodeMatches; ///
|
|
85
76
|
} else {
|
|
86
77
|
const nonTerminalNode = node, ///
|
|
87
|
-
|
|
88
|
-
|
|
78
|
+
assertionNonTerminalNode = assertionNode, ///
|
|
79
|
+
assertionNonTerminalNodeMatches = matchProofNonTerminalNode(assertionNonTerminalNode, nonTerminalNode);
|
|
89
80
|
|
|
90
|
-
|
|
81
|
+
assertionNodeMatches = assertionNonTerminalNodeMatches; ///
|
|
91
82
|
}
|
|
92
83
|
}
|
|
93
84
|
|
|
94
|
-
return
|
|
85
|
+
return assertionNodeMatches;
|
|
95
86
|
}
|
|
96
87
|
|
|
97
|
-
function matchProofNodes(
|
|
98
|
-
let
|
|
88
|
+
function matchProofNodes(assertionNodes, nodes) {
|
|
89
|
+
let assertionNodesMatches = false;
|
|
99
90
|
|
|
100
91
|
const nodesLength = nodes.length,
|
|
101
|
-
|
|
92
|
+
assertionNodesLength = assertionNodes.length;
|
|
102
93
|
|
|
103
|
-
if (nodesLength ===
|
|
104
|
-
|
|
105
|
-
const
|
|
106
|
-
|
|
94
|
+
if (nodesLength === assertionNodesLength) {
|
|
95
|
+
assertionNodesMatches = nodes.every((node, index) => {
|
|
96
|
+
const assertionNode = assertionNodes[index],
|
|
97
|
+
assertionNodeMatches = matchProofNode(assertionNode, node);
|
|
107
98
|
|
|
108
|
-
if (
|
|
99
|
+
if (assertionNodeMatches) {
|
|
109
100
|
return true;
|
|
110
101
|
}
|
|
111
102
|
})
|
|
112
103
|
}
|
|
113
104
|
|
|
114
|
-
return
|
|
105
|
+
return assertionNodesMatches;
|
|
115
106
|
}
|
|
116
107
|
|
|
117
|
-
function matchProofTerminalNode(
|
|
118
|
-
const matches =
|
|
119
|
-
|
|
108
|
+
function matchProofTerminalNode(assertionTerminalNode, terminalNode) {
|
|
109
|
+
const matches = assertionTerminalNode.match(terminalNode),
|
|
110
|
+
assertionTerminalNodeMatches = matches; ///
|
|
120
111
|
|
|
121
|
-
return
|
|
112
|
+
return assertionTerminalNodeMatches;
|
|
122
113
|
}
|
|
123
114
|
|
|
124
|
-
function matchProofNonTerminalNode(
|
|
125
|
-
let
|
|
115
|
+
function matchProofNonTerminalNode(assertionNonTerminalNode, nonTerminalNode) {
|
|
116
|
+
let assertionNonTerminalNodeMatches = false;
|
|
126
117
|
|
|
127
118
|
const ruleName = nonTerminalNode.getRuleName(),
|
|
128
|
-
|
|
119
|
+
assertionRuleName = assertionNonTerminalNode.getRuleName(); ///
|
|
129
120
|
|
|
130
|
-
if (ruleName ===
|
|
121
|
+
if (ruleName === assertionRuleName) {
|
|
131
122
|
const childNodes = nonTerminalNode.getChildNodes(),
|
|
132
|
-
|
|
123
|
+
assertionChildNodes = assertionNonTerminalNode.getChildNodes(),
|
|
133
124
|
nodes = childNodes, ///
|
|
134
|
-
|
|
135
|
-
|
|
125
|
+
assertionNodes = assertionChildNodes, ///
|
|
126
|
+
assertionNodesMatches = matchProofNodes(assertionNodes, nodes);
|
|
136
127
|
|
|
137
|
-
|
|
128
|
+
assertionNonTerminalNodeMatches = assertionNodesMatches; ///
|
|
138
129
|
}
|
|
139
130
|
|
|
140
|
-
return
|
|
131
|
+
return assertionNonTerminalNodeMatches;
|
|
141
132
|
}
|