occam-verify-cli 0.0.1203 → 0.0.1205

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.
@@ -133,6 +133,19 @@ var TermSubstitution = /*#__PURE__*/ function(Substitution) {
133
133
  return this.variable.isEqualTo(variable);
134
134
  }
135
135
  },
136
+ {
137
+ key: "getReplacementNode",
138
+ value: function getReplacementNode() {
139
+ var termNode = this.term.getNode(), replacementNode = termNode; ///
140
+ return replacementNode;
141
+ }
142
+ },
143
+ {
144
+ key: "matchName",
145
+ value: function matchName(name) {
146
+ return this.variable.matchName(name);
147
+ }
148
+ },
136
149
  {
137
150
  key: "unifyWithEquivalence",
138
151
  value: function unifyWithEquivalence(equivalence) {
@@ -182,4 +195,4 @@ function stringFromTermAndVariable(term, variable) {
182
195
  return string;
183
196
  }
184
197
 
185
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vdGVybS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgU3Vic3RpdHV0aW9uIGZyb20gXCIuLi9zdWJzdGl0dXRpb25cIjtcbmltcG9ydCBUZXJtU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvcGFydGlhbC9zdWJzdGl0dXRpb24vdGVybVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBzdHJpcEJyYWNrZXRzRnJvbVRlcm0gfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2JyYWNrZXRzXCI7XG5pbXBvcnQgeyBzdHJpcEJyYWNrZXRzRnJvbVRlcm1Ob2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9icmFja2V0c1wiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm1TdWJzdGl0dXRpb24vdGVybVswXVwiKSxcbiAgICAgIHZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm1TdWJzdGl0dXRpb24vdGVybVsxXS92YXJpYWJsZSFcIiksXG4gICAgICB0ZXJtU3Vic3RpdHV0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC90ZXJtU3Vic3RpdHV0aW9uXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXJtU3Vic3RpdHV0aW9uIGV4dGVuZHMgU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBub2RlLCB0b2tlbnMsIHRlcm0sIHZhcmlhYmxlKSB7XG4gICAgc3VwZXIoc3RyaW5nLCBub2RlLCB0b2tlbnMpO1xuXG4gICAgdGhpcy50ZXJtID0gdGVybTtcbiAgICB0aGlzLnZhcmlhYmxlID0gdmFyaWFibGU7XG4gIH1cblxuICBnZXRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm07XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGlzVGVybUVxdWFsVG8odGVybSwgY29udGV4dCkge1xuICAgIHRlcm0gPSBzdHJpcEJyYWNrZXRzRnJvbVRlcm0odGVybSk7IC8vL1xuXG4gICAgY29uc3QgdGVybUVxdWFsVG8gPSB0aGlzLnRlcm0uaXNFcXVhbFRvKHRlcm0pO1xuXG4gICAgcmV0dXJuIHRlcm1FcXVhbFRvO1xuICB9XG5cbiAgaXNWYXJpYWJsZUVxdWFsVG8odmFyaWFibGUpIHsgcmV0dXJuIHRoaXMudmFyaWFibGUuaXNFcXVhbFRvKHZhcmlhYmxlKTsgfVxuXG4gIHVuaWZ5V2l0aEVxdWl2YWxlbmNlKGVxdWl2YWxlbmNlKSB7XG4gICAgbGV0IHVuaWZpZWRXaXRoRXF1aXZhbGVuY2U7XG5cbiAgICBjb25zdCB0ZXJtTm9kZSA9IHRoaXMudGVybS5nZXROb2RlKCksXG4gICAgICAgICAgZXF1aXZhbGVuY2VNYXRjaGVzVGVybU5vZGUgPSBlcXVpdmFsZW5jZS5tYXRjaFRlcm1Ob2RlKHRlcm1Ob2RlKTtcblxuICAgIGlmIChlcXVpdmFsZW5jZU1hdGNoZXNUZXJtTm9kZSkge1xuICAgICAgY29uc3QgdmFyaWFibGVOb2RlID0gdGhpcy52YXJpYWJsZS5nZXROb2RlKCksXG4gICAgICAgICAgICBlcXVpdmFsZW5jZU1hdGNoZXNWYXJpYWJsZU5vZGUgPSBlcXVpdmFsZW5jZS5tYXRjaFZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpO1xuXG4gICAgICBpZiAoZXF1aXZhbGVuY2VNYXRjaGVzVmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgdW5pZmllZFdpdGhFcXVpdmFsZW5jZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdW5pZmllZFdpdGhFcXVpdmFsZW5jZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlLCBjb250ZXh0KSB7XG4gICAgbGV0IHRlcm1TdWJzdGl0dXRpb24gPSBudWxsO1xuXG4gICAgY29uc3QgdGVybVN1YnN0aXR1dGlvbk5vZGUgPSB0ZXJtU3Vic3RpdHV0aW9uTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKHRlcm1TdWJzdGl0dXRpb25Ob2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkodGVybVN1YnN0aXR1dGlvbk5vZGUpLFxuICAgICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkodGVybVN1YnN0aXR1dGlvbk5vZGUpO1xuXG4gICAgICBpZiAoKHRlcm1Ob2RlICE9PSBudWxsKSAmJiAodmFyaWFibGVOb2RlICE9PSBudWxsKSkge1xuICAgICAgICBjb25zdCB7IFRlcm0sIFZhcmlhYmxlIH0gPSBkb20sXG4gICAgICAgICAgICAgIHRlcm0gPSBUZXJtLmZyb21UZXJtTm9kZSh0ZXJtTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgICAgIHZhcmlhYmxlID0gVmFyaWFibGUuZnJvbVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgICAgICBub2RlID0gdGVybVN1YnN0aXR1dGlvbk5vZGUsICAvLy9cbiAgICAgICAgICAgICAgdG9rZW5zID0gY29udGV4dC5ub2RlQXNUb2tlbnMobm9kZSksXG4gICAgICAgICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21UZXJtQW5kVmFyaWFibGUodGVybSwgdmFyaWFibGUpO1xuXG4gICAgICAgIHRlcm1TdWJzdGl0dXRpb24gPSBuZXcgVGVybVN1YnN0aXR1dGlvbihzdHJpbmcsIG5vZGUsIHRva2VucywgdGVybSwgdmFyaWFibGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0ZXJtU3Vic3RpdHV0aW9uO1xuICB9XG5cbiAgc3RhdGljIGZyb21UZXJuQW5kVmFyaWFibGUodGVybSwgdmFyaWFibGUsIGNvbnRleHQpIHtcbiAgICBsZXQgdGVybU5vZGUgPSB0ZXJtLmdldE5vZGUoKTtcblxuICAgIHRlcm1Ob2RlID0gc3RyaXBCcmFja2V0c0Zyb21UZXJtTm9kZSh0ZXJtTm9kZSk7IC8vL1xuXG4gICAgY29uc3QgeyBUZXJtIH0gPSBkb207XG5cbiAgICB0ZXJtID0gVGVybS5mcm9tVGVybU5vZGUodGVybU5vZGUsIGNvbnRleHQpO1xuXG4gICAgY29uc3Qgc3RyaW5nID0gc3RyaW5nRnJvbVRlcm1BbmRWYXJpYWJsZSh0ZXJtLCB2YXJpYWJsZSksXG4gICAgICAgICAgbGV4ZXIgPSBjb250ZXh0LmdldExleGVyKCksXG4gICAgICAgICAgcGFyc2VyID0gY29udGV4dC5nZXRQYXJzZXIoKSxcbiAgICAgICAgICB0ZXJtU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQgPSBUZXJtU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQuZnJvbVN0cmluZ0xleGVyQW5kUGFyc2VyKHN0cmluZywgbGV4ZXIsIHBhcnNlciksXG4gICAgICAgICAgbm9kZSA9IHRlcm1TdWJzdGl0dXRpb25QYXJ0aWFsQ29udGV4dC5nZXROb2RlKCksXG4gICAgICAgICAgdG9rZW5zID0gdGVybVN1YnN0aXR1dGlvblBhcnRpYWxDb250ZXh0LmdldFRva2VucygpLFxuICAgICAgICAgIHRlcm1TdWJzdGl0dXRpb24gPSBuZXcgVGVybVN1YnN0aXR1dGlvbihzdHJpbmcsIG5vZGUsIHRva2VucywgdGVybSwgdmFyaWFibGUpO1xuXG4gICAgcmV0dXJuIHRlcm1TdWJzdGl0dXRpb247XG4gIH1cbn1cblxuZnVuY3Rpb24gc3RyaW5nRnJvbVRlcm1BbmRWYXJpYWJsZSh0ZXJtLCB2YXJpYWJsZSkge1xuICBjb25zdCB0ZXJtU3RyaW5nID0gdGVybS5nZXRTdHJpbmcoKSxcbiAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgc3RyaW5nID0gYFske3Rlcm1TdHJpbmd9IGZvciAke3ZhcmlhYmxlU3RyaW5nfV1gO1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG4iXSwibmFtZXMiOlsiVGVybVN1YnN0aXR1dGlvbiIsInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ2YXJpYWJsZU5vZGVRdWVyeSIsInRlcm1TdWJzdGl0dXRpb25Ob2RlUXVlcnkiLCJzdHJpbmciLCJub2RlIiwidG9rZW5zIiwidGVybSIsInZhcmlhYmxlIiwiZ2V0VGVybSIsImdldFZhcmlhYmxlIiwiaXNUZXJtRXF1YWxUbyIsImNvbnRleHQiLCJzdHJpcEJyYWNrZXRzRnJvbVRlcm0iLCJ0ZXJtRXF1YWxUbyIsImlzRXF1YWxUbyIsImlzVmFyaWFibGVFcXVhbFRvIiwidW5pZnlXaXRoRXF1aXZhbGVuY2UiLCJlcXVpdmFsZW5jZSIsInVuaWZpZWRXaXRoRXF1aXZhbGVuY2UiLCJ0ZXJtTm9kZSIsImdldE5vZGUiLCJlcXVpdmFsZW5jZU1hdGNoZXNUZXJtTm9kZSIsIm1hdGNoVGVybU5vZGUiLCJ2YXJpYWJsZU5vZGUiLCJlcXVpdmFsZW5jZU1hdGNoZXNWYXJpYWJsZU5vZGUiLCJtYXRjaFZhcmlhYmxlTm9kZSIsImZyb21TdGF0ZW1lbnROb2RlIiwic3RhdGVtZW50Tm9kZSIsInRlcm1TdWJzdGl0dXRpb24iLCJ0ZXJtU3Vic3RpdHV0aW9uTm9kZSIsIlRlcm0iLCJkb20iLCJWYXJpYWJsZSIsImZyb21UZXJtTm9kZSIsImZyb21WYXJpYWJsZU5vZGUiLCJub2RlQXNUb2tlbnMiLCJzdHJpbmdGcm9tVGVybUFuZFZhcmlhYmxlIiwiZnJvbVRlcm5BbmRWYXJpYWJsZSIsInN0cmlwQnJhY2tldHNGcm9tVGVybU5vZGUiLCJsZXhlciIsImdldExleGVyIiwicGFyc2VyIiwiZ2V0UGFyc2VyIiwidGVybVN1YnN0aXR1dGlvblBhcnRpYWxDb250ZXh0IiwiVGVybVN1YnN0aXR1dGlvblBhcnRpYWxDb250ZXh0IiwiZnJvbVN0cmluZ0xleGVyQW5kUGFyc2VyIiwiZ2V0VG9rZW5zIiwiU3Vic3RpdHV0aW9uIiwidGVybVN0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
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdWJzdGl0dXRpb24vdGVybS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IGRvbSBmcm9tIFwiLi4vZG9tXCI7XG5pbXBvcnQgU3Vic3RpdHV0aW9uIGZyb20gXCIuLi9zdWJzdGl0dXRpb25cIjtcbmltcG9ydCBUZXJtU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQgZnJvbSBcIi4uL2NvbnRleHQvcGFydGlhbC9zdWJzdGl0dXRpb24vdGVybVwiO1xuXG5pbXBvcnQgeyBub2RlUXVlcnkgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3F1ZXJ5XCI7XG5pbXBvcnQgeyBzdHJpcEJyYWNrZXRzRnJvbVRlcm0gfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2JyYWNrZXRzXCI7XG5pbXBvcnQgeyBzdHJpcEJyYWNrZXRzRnJvbVRlcm1Ob2RlIH0gZnJvbSBcIi4uL3V0aWxpdGllcy9icmFja2V0c1wiO1xuXG5jb25zdCB0ZXJtTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm1TdWJzdGl0dXRpb24vdGVybVswXVwiKSxcbiAgICAgIHZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3Rlcm1TdWJzdGl0dXRpb24vdGVybVsxXS92YXJpYWJsZSFcIiksXG4gICAgICB0ZXJtU3Vic3RpdHV0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3N0YXRlbWVudC90ZXJtU3Vic3RpdHV0aW9uXCIpO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXJtU3Vic3RpdHV0aW9uIGV4dGVuZHMgU3Vic3RpdHV0aW9uIHtcbiAgY29uc3RydWN0b3Ioc3RyaW5nLCBub2RlLCB0b2tlbnMsIHRlcm0sIHZhcmlhYmxlKSB7XG4gICAgc3VwZXIoc3RyaW5nLCBub2RlLCB0b2tlbnMpO1xuXG4gICAgdGhpcy50ZXJtID0gdGVybTtcbiAgICB0aGlzLnZhcmlhYmxlID0gdmFyaWFibGU7XG4gIH1cblxuICBnZXRUZXJtKCkge1xuICAgIHJldHVybiB0aGlzLnRlcm07XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGlzVGVybUVxdWFsVG8odGVybSwgY29udGV4dCkge1xuICAgIHRlcm0gPSBzdHJpcEJyYWNrZXRzRnJvbVRlcm0odGVybSk7IC8vL1xuXG4gICAgY29uc3QgdGVybUVxdWFsVG8gPSB0aGlzLnRlcm0uaXNFcXVhbFRvKHRlcm0pO1xuXG4gICAgcmV0dXJuIHRlcm1FcXVhbFRvO1xuICB9XG5cbiAgaXNWYXJpYWJsZUVxdWFsVG8odmFyaWFibGUpIHsgcmV0dXJuIHRoaXMudmFyaWFibGUuaXNFcXVhbFRvKHZhcmlhYmxlKTsgfVxuXG4gIGdldFJlcGxhY2VtZW50Tm9kZSgpIHtcbiAgICBjb25zdCB0ZXJtTm9kZSA9IHRoaXMudGVybS5nZXROb2RlKCksXG4gICAgICAgICAgcmVwbGFjZW1lbnROb2RlID0gdGVybU5vZGU7IC8vL1xuXG4gICAgcmV0dXJuIHJlcGxhY2VtZW50Tm9kZTtcbiAgfVxuXG4gIG1hdGNoTmFtZShuYW1lKSB7IHJldHVybiB0aGlzLnZhcmlhYmxlLm1hdGNoTmFtZShuYW1lKTsgfVxuXG4gIHVuaWZ5V2l0aEVxdWl2YWxlbmNlKGVxdWl2YWxlbmNlKSB7XG4gICAgbGV0IHVuaWZpZWRXaXRoRXF1aXZhbGVuY2U7XG5cbiAgICBjb25zdCB0ZXJtTm9kZSA9IHRoaXMudGVybS5nZXROb2RlKCksXG4gICAgICAgICAgZXF1aXZhbGVuY2VNYXRjaGVzVGVybU5vZGUgPSBlcXVpdmFsZW5jZS5tYXRjaFRlcm1Ob2RlKHRlcm1Ob2RlKTtcblxuICAgIGlmIChlcXVpdmFsZW5jZU1hdGNoZXNUZXJtTm9kZSkge1xuICAgICAgY29uc3QgdmFyaWFibGVOb2RlID0gdGhpcy52YXJpYWJsZS5nZXROb2RlKCksXG4gICAgICAgICAgICBlcXVpdmFsZW5jZU1hdGNoZXNWYXJpYWJsZU5vZGUgPSBlcXVpdmFsZW5jZS5tYXRjaFZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpO1xuXG4gICAgICBpZiAoZXF1aXZhbGVuY2VNYXRjaGVzVmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgdW5pZmllZFdpdGhFcXVpdmFsZW5jZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdW5pZmllZFdpdGhFcXVpdmFsZW5jZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tU3RhdGVtZW50Tm9kZShzdGF0ZW1lbnROb2RlLCBjb250ZXh0KSB7XG4gICAgbGV0IHRlcm1TdWJzdGl0dXRpb24gPSBudWxsO1xuXG4gICAgY29uc3QgdGVybVN1YnN0aXR1dGlvbk5vZGUgPSB0ZXJtU3Vic3RpdHV0aW9uTm9kZVF1ZXJ5KHN0YXRlbWVudE5vZGUpO1xuXG4gICAgaWYgKHRlcm1TdWJzdGl0dXRpb25Ob2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCB0ZXJtTm9kZSA9IHRlcm1Ob2RlUXVlcnkodGVybVN1YnN0aXR1dGlvbk5vZGUpLFxuICAgICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkodGVybVN1YnN0aXR1dGlvbk5vZGUpO1xuXG4gICAgICBpZiAoKHRlcm1Ob2RlICE9PSBudWxsKSAmJiAodmFyaWFibGVOb2RlICE9PSBudWxsKSkge1xuICAgICAgICBjb25zdCB7IFRlcm0sIFZhcmlhYmxlIH0gPSBkb20sXG4gICAgICAgICAgICAgIHRlcm0gPSBUZXJtLmZyb21UZXJtTm9kZSh0ZXJtTm9kZSwgY29udGV4dCksXG4gICAgICAgICAgICAgIHZhcmlhYmxlID0gVmFyaWFibGUuZnJvbVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUsIGNvbnRleHQpLFxuICAgICAgICAgICAgICBub2RlID0gdGVybVN1YnN0aXR1dGlvbk5vZGUsICAvLy9cbiAgICAgICAgICAgICAgdG9rZW5zID0gY29udGV4dC5ub2RlQXNUb2tlbnMobm9kZSksXG4gICAgICAgICAgICAgIHN0cmluZyA9IHN0cmluZ0Zyb21UZXJtQW5kVmFyaWFibGUodGVybSwgdmFyaWFibGUpO1xuXG4gICAgICAgIHRlcm1TdWJzdGl0dXRpb24gPSBuZXcgVGVybVN1YnN0aXR1dGlvbihzdHJpbmcsIG5vZGUsIHRva2VucywgdGVybSwgdmFyaWFibGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0ZXJtU3Vic3RpdHV0aW9uO1xuICB9XG5cbiAgc3RhdGljIGZyb21UZXJuQW5kVmFyaWFibGUodGVybSwgdmFyaWFibGUsIGNvbnRleHQpIHtcbiAgICBsZXQgdGVybU5vZGUgPSB0ZXJtLmdldE5vZGUoKTtcblxuICAgIHRlcm1Ob2RlID0gc3RyaXBCcmFja2V0c0Zyb21UZXJtTm9kZSh0ZXJtTm9kZSk7IC8vL1xuXG4gICAgY29uc3QgeyBUZXJtIH0gPSBkb207XG5cbiAgICB0ZXJtID0gVGVybS5mcm9tVGVybU5vZGUodGVybU5vZGUsIGNvbnRleHQpO1xuXG4gICAgY29uc3Qgc3RyaW5nID0gc3RyaW5nRnJvbVRlcm1BbmRWYXJpYWJsZSh0ZXJtLCB2YXJpYWJsZSksXG4gICAgICAgICAgbGV4ZXIgPSBjb250ZXh0LmdldExleGVyKCksXG4gICAgICAgICAgcGFyc2VyID0gY29udGV4dC5nZXRQYXJzZXIoKSxcbiAgICAgICAgICB0ZXJtU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQgPSBUZXJtU3Vic3RpdHV0aW9uUGFydGlhbENvbnRleHQuZnJvbVN0cmluZ0xleGVyQW5kUGFyc2VyKHN0cmluZywgbGV4ZXIsIHBhcnNlciksXG4gICAgICAgICAgbm9kZSA9IHRlcm1TdWJzdGl0dXRpb25QYXJ0aWFsQ29udGV4dC5nZXROb2RlKCksXG4gICAgICAgICAgdG9rZW5zID0gdGVybVN1YnN0aXR1dGlvblBhcnRpYWxDb250ZXh0LmdldFRva2VucygpLFxuICAgICAgICAgIHRlcm1TdWJzdGl0dXRpb24gPSBuZXcgVGVybVN1YnN0aXR1dGlvbihzdHJpbmcsIG5vZGUsIHRva2VucywgdGVybSwgdmFyaWFibGUpO1xuXG4gICAgcmV0dXJuIHRlcm1TdWJzdGl0dXRpb247XG4gIH1cbn1cblxuZnVuY3Rpb24gc3RyaW5nRnJvbVRlcm1BbmRWYXJpYWJsZSh0ZXJtLCB2YXJpYWJsZSkge1xuICBjb25zdCB0ZXJtU3RyaW5nID0gdGVybS5nZXRTdHJpbmcoKSxcbiAgICAgICAgdmFyaWFibGVTdHJpbmcgPSB2YXJpYWJsZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgc3RyaW5nID0gYFske3Rlcm1TdHJpbmd9IGZvciAke3ZhcmlhYmxlU3RyaW5nfV1gO1xuXG4gIHJldHVybiBzdHJpbmc7XG59XG4iXSwibmFtZXMiOlsiVGVybVN1YnN0aXR1dGlvbiIsInRlcm1Ob2RlUXVlcnkiLCJub2RlUXVlcnkiLCJ2YXJpYWJsZU5vZGVRdWVyeSIsInRlcm1TdWJzdGl0dXRpb25Ob2RlUXVlcnkiLCJzdHJpbmciLCJub2RlIiwidG9rZW5zIiwidGVybSIsInZhcmlhYmxlIiwiZ2V0VGVybSIsImdldFZhcmlhYmxlIiwiaXNUZXJtRXF1YWxUbyIsImNvbnRleHQiLCJzdHJpcEJyYWNrZXRzRnJvbVRlcm0iLCJ0ZXJtRXF1YWxUbyIsImlzRXF1YWxUbyIsImlzVmFyaWFibGVFcXVhbFRvIiwiZ2V0UmVwbGFjZW1lbnROb2RlIiwidGVybU5vZGUiLCJnZXROb2RlIiwicmVwbGFjZW1lbnROb2RlIiwibWF0Y2hOYW1lIiwibmFtZSIsInVuaWZ5V2l0aEVxdWl2YWxlbmNlIiwiZXF1aXZhbGVuY2UiLCJ1bmlmaWVkV2l0aEVxdWl2YWxlbmNlIiwiZXF1aXZhbGVuY2VNYXRjaGVzVGVybU5vZGUiLCJtYXRjaFRlcm1Ob2RlIiwidmFyaWFibGVOb2RlIiwiZXF1aXZhbGVuY2VNYXRjaGVzVmFyaWFibGVOb2RlIiwibWF0Y2hWYXJpYWJsZU5vZGUiLCJmcm9tU3RhdGVtZW50Tm9kZSIsInN0YXRlbWVudE5vZGUiLCJ0ZXJtU3Vic3RpdHV0aW9uIiwidGVybVN1YnN0aXR1dGlvbk5vZGUiLCJUZXJtIiwiZG9tIiwiVmFyaWFibGUiLCJmcm9tVGVybU5vZGUiLCJmcm9tVmFyaWFibGVOb2RlIiwibm9kZUFzVG9rZW5zIiwic3RyaW5nRnJvbVRlcm1BbmRWYXJpYWJsZSIsImZyb21UZXJuQW5kVmFyaWFibGUiLCJzdHJpcEJyYWNrZXRzRnJvbVRlcm1Ob2RlIiwibGV4ZXIiLCJnZXRMZXhlciIsInBhcnNlciIsImdldFBhcnNlciIsInRlcm1TdWJzdGl0dXRpb25QYXJ0aWFsQ29udGV4dCIsIlRlcm1TdWJzdGl0dXRpb25QYXJ0aWFsQ29udGV4dCIsImZyb21TdHJpbmdMZXhlckFuZFBhcnNlciIsImdldFRva2VucyIsIlN1YnN0aXR1dGlvbiIsInRlcm1TdHJpbmciLCJnZXRTdHJpbmciLCJ2YXJpYWJsZVN0cmluZyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFjcUJBOzs7MERBWkw7bUVBQ1M7MkRBQ2tCO3FCQUVqQjt3QkFDWTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUd0QyxJQUFNQyxnQkFBZ0JDLElBQUFBLGdCQUFTLEVBQUMsOEJBQzFCQyxvQkFBb0JELElBQUFBLGdCQUFTLEVBQUMsd0NBQzlCRSw0QkFBNEJGLElBQUFBLGdCQUFTLEVBQUM7QUFFN0IsSUFBQSxBQUFNRixpQ0FBTjtjQUFNQTthQUFBQSxpQkFDUEssTUFBTSxFQUFFQyxJQUFJLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxRQUFRO2dDQUQ3QlQ7O2dCQUVqQixrQkFGaUJBO1lBRVhLO1lBQVFDO1lBQU1DOztRQUVwQixNQUFLQyxJQUFJLEdBQUdBO1FBQ1osTUFBS0MsUUFBUSxHQUFHQTs7O2tCQUxDVDs7WUFRbkJVLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsSUFBSTtZQUNsQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0YsUUFBUTtZQUN0Qjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxjQUFjSixJQUFJLEVB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
@@ -179,6 +179,20 @@ var Substitution = /*#__PURE__*/ function() {
179
179
  return resolved;
180
180
  }
181
181
  },
182
+ {
183
+ key: "matchName",
184
+ value: function matchName(name) {
185
+ var nameMatches = false;
186
+ return nameMatches;
187
+ }
188
+ },
189
+ {
190
+ key: "getReplacementNode",
191
+ value: function getReplacementNode() {
192
+ var replacementNode = null;
193
+ return replacementNode;
194
+ }
195
+ },
182
196
  {
183
197
  key: "unifyWithEquivalence",
184
198
  value: function unifyWithEquivalence(equivalence) {
@@ -190,4 +204,4 @@ var Substitution = /*#__PURE__*/ function() {
190
204
  return Substitution;
191
205
  }();
192
206
 
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zdWJzdGl0dXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN1YnN0aXR1dGlvbiB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgbm9kZSwgdG9rZW5zKSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgICB0aGlzLnRva2VucyA9IHRva2VucztcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGU7XG4gIH1cblxuICBnZXRUb2tlbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5zO1xuICB9XG5cbiAgZ2V0VGVybSgpIHtcbiAgICBjb25zdCB0ZXJtID0gbnVsbDtcblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG5cbiAgZ2V0RnJhbWUoKSB7XG4gICAgY29uc3QgZnJhbWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGZyYW1lO1xuICB9XG5cbiAgZ2V0VmFyaWFibGUoKSB7XG4gICAgY29uc3QgdmFyaWFibGUgPSBudWxsO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlKCkge1xuICAgIGNvbnN0IHJlZmVyZW5jZSA9IG51bGw7XG5cbiAgICByZXR1cm4gcmVmZXJlbmNlO1xuICB9XG5cbiAgZ2V0U3RhdGVtZW50KCkge1xuICAgIGNvbnN0IHN0YXRlbWVudCA9IG51bGw7XG5cbiAgICByZXR1cm4gc3RhdGVtZW50O1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlKCkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBudWxsO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZU5vZGU7XG4gIH1cblxuICBnZXRTdWJzdGl0dXRpb24oKSB7XG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uID0gbnVsbDtcblxuICAgIHJldHVybiBzdWJzdGl0dXRpb247XG4gIH1cblxuICBpc1NpbXBsZSgpIHtcbiAgICBjb25zdCBzaW1wbGUgPSB0cnVlO1xuXG4gICAgcmV0dXJuIHNpbXBsZTtcbiAgfVxuXG4gIGlzQ29tcGxleCgpIHtcbiAgICBjb25zdCBzaW1wbGUgPSB0aGlzLmlzU2ltcGxlKCksXG4gICAgICAgICAgY29tcGxleCA9ICFzaW1wbGU7XG5cbiAgICByZXR1cm4gY29tcGxleDtcbiAgfVxuXG4gIGlzRXF1YWxUbyhzdWJzdGl0dXRpb24pIHtcbiAgICBjb25zdCBzdWJzdGl0dXRpb25TdHJpbmcgPSBzdWJzdGl0dXRpb24uZ2V0U3RyaW5nKCksXG4gICAgICAgICAgZXF1YWxUbyA9IChzdWJzdGl0dXRpb25TdHJpbmcgPT09IHRoaXMuc3RyaW5nKTtcblxuICAgIHJldHVybiBlcXVhbFRvO1xuICB9XG5cbiAgaXNUZXJtRXF1YWxUbyh0ZXJtKSB7XG4gICAgY29uc3QgdGVybUVxdWFsVG8gPSBmYWxzZTtcblxuICAgIHJldHVybiB0ZXJtRXF1YWxUbztcbiAgfVxuXG4gIGlzRnJhbWVFcXVhbFRvKGZyYW1lKSB7XG4gICAgY29uc3QgZnJhbWVFcXVhbFRvID0gZmFsc2U7XG5cbiAgICByZXR1cm4gZnJhbWVFcXVhbFRvO1xuICB9XG5cbiAgaXNWYXJpYWJsZUVxdWFsVG8odmFyaWFibGUpIHtcbiAgICBjb25zdCB2YXJpYWJsZUVxdWFsVG8gPSBmYWxzZTtcblxuICAgIHJldHVybiB2YXJpYWJsZUVxdWFsVG87XG4gIH1cblxuICBpc1JlZmVyZW5jZUVxdWFsVG8ocmVmZXJlbmNlKSB7XG4gICAgY29uc3QgcmVmZXJlbmNlRXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZUVxdWFsVG87XG4gIH1cblxuICBpc1N0YXRlbWVudEVxdWFsVG8oc3RhdGVtZW50KSB7XG4gICAgY29uc3Qgc3RhdGVtZW50RXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIHN0YXRlbWVudEVxdWFsVG87XG4gIH1cblxuICBpc01ldGF2YXJpYWJsZUVxdWFsVG8obWV0YXZhcmlhYmxlKSB7XG4gICAgY29uc3QgbWV0YXZhcmlhYmxlRXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZUVxdWFsVG87XG4gIH1cblxuICBpc1N1YnN0aXR1dGlvbkVxdWFsVG8oc3Vic3RpdHV0aW9uKSB7XG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uRXF1YWxUbyA9IChzdWJzdGl0dXRpb24gPT09IG51bGwpO1xuXG4gICAgcmV0dXJuIHN1YnN0aXR1dGlvbkVxdWFsVG87XG4gIH1cblxuICByZXNvbHZlKHN1YnN0aXR1dGlvbnMsIGNvbnRleHQpIHtcbiAgICBjb25zdCByZXNvbHZlZCA9IHRydWU7XG5cbiAgICByZXR1cm4gcmVzb2x2ZWQ7XG4gIH1cblxuICB1bmlmeVdpdGhFcXVpdmFsZW5jZShlcXVpdmFsZW5jZSkge1xuICAgIGxldCB1bmlmaWVkV2l0aEVxdWl2YWxlbmNlID0gZmFsc2U7XG5cbiAgICByZXR1cm4gdW5pZmllZFdpdGhFcXVpdmFsZW5jZTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlN1YnN0aXR1dGlvbiIsInN0cmluZyIsIm5vZGUiLCJ0b2tlbnMiLCJnZXRTdHJpbmciLCJnZXROb2RlIiwiZ2V0VG9rZW5zIiwiZ2V0VGVybSIsInRlcm0iLCJnZXRGcmFtZSIsImZyYW1lIiwiZ2V0VmFyaWFibGUiLCJ2YXJpYWJsZSIsImdldFJlZmVyZW5jZSIsInJlZmVyZW5jZSIsImdldFN0YXRlbWVudCIsInN0YXRlbWVudCIsImdldE1ldGF2YXJpYWJsZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJnZXRTdWJzdGl0dXRpb24iLCJzdWJzdGl0dXRpb24iLCJpc1NpbXBsZSIsInNpbXBsZSIsImlzQ29tcGxleCIsImNvbXBsZXgiLCJpc0VxdWFsVG8iLCJzdWJzdGl0dXRpb25TdHJpbmciLCJlcXVhbFRvIiwiaXNUZXJtRXF1YWxUbyIsInRlcm1FcXVhbFRvIiwiaXNGcmFtZUVxdWFsVG8iLCJmcmFtZUVxdWFsVG8iLCJpc1ZhcmlhYmxlRXF1YWxUbyIsInZhcmlhYmxlRXF1YWxUbyIsImlzUmVmZXJlbmNlRXF1YWxUbyIsInJlZmVyZW5jZUVxdWFsVG8iLCJpc1N0YXRlbWVudEVxdWFsVG8iLCJzdGF0ZW1lbnRFcXVhbFRvIiwiaXNNZXRhdmFyaWFibGVFcXVhbFRvIiwibWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlRXF1YWxUbyIsImlzU3Vic3RpdHV0aW9uRXF1YWxUbyIsInN1YnN0aXR1dGlvbkVxdWFsVG8iLCJyZXNvbHZlIiwic3Vic3RpdHV0aW9ucyIsImNvbnRleHQiLCJyZXNvbHZlZCIsInVuaWZ5V2l0aEVxdWl2YWxlbmNlIiwiZXF1aXZhbGVuY2UiLCJ1bmlmaWVkV2l0aEVxdWl2YWxlbmNlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLDZCQUFOO2FBQU1BLGFBQ1BDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxNQUFNO2dDQURiSDtRQUVqQixJQUFJLENBQUNDLE1BQU0sR0FBR0E7UUFDZCxJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLE1BQU0sR0FBR0E7O2tCQUpHSDs7WUFPbkJJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsTUFBTTtZQUNwQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsSUFBSTtZQUNsQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsTUFBTTtZQUNwQjs7O1lBRUFJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxPQUFPO2dCQUViLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsUUFBUTtnQkFFZCxPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLFdBQVc7Z0JBRWpCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUE7Z0JBQ0UsSUFBTUMsWUFBWTtnQkFFbEIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxZQUFZO2dCQUVsQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLG1CQUFtQjtnQkFFekIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNQyxlQUFlO2dCQUVyQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBO2dCQUNFLElBQU1DLFNBQVM7Z0JBRWYsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxJQUFNRCxTQUFTLElBQUksQ0FBQ0QsUUFBUSxJQUN0QkcsVUFBVSxDQUFDRjtnQkFFakIsT0FBT0U7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVTCxZQUFZO2dCQUNwQixJQUFNTSxxQkFBcUJOLGFBQWFoQixTQUFTLElBQzNDdUIsVUFBV0QsdUJBQXVCLElBQUksQ0FBQ3pCLE1BQU07Z0JBRW5ELE9BQU8wQjtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLGNBQWNwQixJQUFJO2dCQUNoQixJQUFNcUIsY0FBYztnQkFFcEIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxlQUFlcEIsS0FBSztnQkFDbEIsSUFBTXFCLGVBQWU7Z0JBRXJCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsa0JBQWtCcEIsUUFBUTtnQkFDeEIsSUFBTXFCLGtCQUFrQjtnQkFFeEIsT0FBT0E7WUFDVDs7O1lBRUFDLEtBQUFBO21CQUFBQSxTQUFBQSxtQkFBbUJwQixTQUFTO2dCQUMxQixJQUFNcUIsbUJBQW1CO2dCQUV6QixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLG1CQUFtQnBCLFNBQVM7Z0JBQzFCLElBQU1xQixtQkFBbUI7Z0JBRXpCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCQyxZQUFZO2dCQUNoQyxJQUFNQyxzQkFBc0I7Z0JBRTVCLE9BQU9BO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsc0JBQXNCckIsWUFBWTtnQkFDaEMsSUFBTXNCLHNCQUF1QnRCLGlCQUFpQjtnQkFFOUMsT0FBT3NCO1lBQ1Q7OztZQUVBQyxLQUFBQTttQkFBQUEsU0FBQUEsUUFBUUMsYUFBYSxFQUFFQyxPQUFPO2dCQUM1QixJQUFNQyxXQUFXO2dCQUVqQixPQUFPQTtZQUNUOzs7WUFFQUMsS0FBQUE7bUJBQUFBLFNBQUFBLHFCQUFxQkMsV0FBVztnQkFDOUIsSUFBSUMseUJBQXlCO2dCQUU3QixPQUFPQTtZQUNUOzs7V0FySW1CakQifQ==
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zdWJzdGl0dXRpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN1YnN0aXR1dGlvbiB7XG4gIGNvbnN0cnVjdG9yKHN0cmluZywgbm9kZSwgdG9rZW5zKSB7XG4gICAgdGhpcy5zdHJpbmcgPSBzdHJpbmc7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgICB0aGlzLnRva2VucyA9IHRva2VucztcbiAgfVxuXG4gIGdldFN0cmluZygpIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmc7XG4gIH1cblxuICBnZXROb2RlKCkge1xuICAgIHJldHVybiB0aGlzLm5vZGU7XG4gIH1cblxuICBnZXRUb2tlbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5zO1xuICB9XG5cbiAgZ2V0VGVybSgpIHtcbiAgICBjb25zdCB0ZXJtID0gbnVsbDtcblxuICAgIHJldHVybiB0ZXJtO1xuICB9XG5cbiAgZ2V0RnJhbWUoKSB7XG4gICAgY29uc3QgZnJhbWUgPSBudWxsO1xuXG4gICAgcmV0dXJuIGZyYW1lO1xuICB9XG5cbiAgZ2V0VmFyaWFibGUoKSB7XG4gICAgY29uc3QgdmFyaWFibGUgPSBudWxsO1xuXG4gICAgcmV0dXJuIHZhcmlhYmxlO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlKCkge1xuICAgIGNvbnN0IHJlZmVyZW5jZSA9IG51bGw7XG5cbiAgICByZXR1cm4gcmVmZXJlbmNlO1xuICB9XG5cbiAgZ2V0U3RhdGVtZW50KCkge1xuICAgIGNvbnN0IHN0YXRlbWVudCA9IG51bGw7XG5cbiAgICByZXR1cm4gc3RhdGVtZW50O1xuICB9XG5cbiAgZ2V0TWV0YXZhcmlhYmxlKCkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5vZGUgPSBudWxsO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZU5vZGU7XG4gIH1cblxuICBnZXRTdWJzdGl0dXRpb24oKSB7XG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uID0gbnVsbDtcblxuICAgIHJldHVybiBzdWJzdGl0dXRpb247XG4gIH1cblxuICBpc1NpbXBsZSgpIHtcbiAgICBjb25zdCBzaW1wbGUgPSB0cnVlO1xuXG4gICAgcmV0dXJuIHNpbXBsZTtcbiAgfVxuXG4gIGlzQ29tcGxleCgpIHtcbiAgICBjb25zdCBzaW1wbGUgPSB0aGlzLmlzU2ltcGxlKCksXG4gICAgICAgICAgY29tcGxleCA9ICFzaW1wbGU7XG5cbiAgICByZXR1cm4gY29tcGxleDtcbiAgfVxuXG4gIGlzRXF1YWxUbyhzdWJzdGl0dXRpb24pIHtcbiAgICBjb25zdCBzdWJzdGl0dXRpb25TdHJpbmcgPSBzdWJzdGl0dXRpb24uZ2V0U3RyaW5nKCksXG4gICAgICAgICAgZXF1YWxUbyA9IChzdWJzdGl0dXRpb25TdHJpbmcgPT09IHRoaXMuc3RyaW5nKTtcblxuICAgIHJldHVybiBlcXVhbFRvO1xuICB9XG5cbiAgaXNUZXJtRXF1YWxUbyh0ZXJtKSB7XG4gICAgY29uc3QgdGVybUVxdWFsVG8gPSBmYWxzZTtcblxuICAgIHJldHVybiB0ZXJtRXF1YWxUbztcbiAgfVxuXG4gIGlzRnJhbWVFcXVhbFRvKGZyYW1lKSB7XG4gICAgY29uc3QgZnJhbWVFcXVhbFRvID0gZmFsc2U7XG5cbiAgICByZXR1cm4gZnJhbWVFcXVhbFRvO1xuICB9XG5cbiAgaXNWYXJpYWJsZUVxdWFsVG8odmFyaWFibGUpIHtcbiAgICBjb25zdCB2YXJpYWJsZUVxdWFsVG8gPSBmYWxzZTtcblxuICAgIHJldHVybiB2YXJpYWJsZUVxdWFsVG87XG4gIH1cblxuICBpc1JlZmVyZW5jZUVxdWFsVG8ocmVmZXJlbmNlKSB7XG4gICAgY29uc3QgcmVmZXJlbmNlRXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZUVxdWFsVG87XG4gIH1cblxuICBpc1N0YXRlbWVudEVxdWFsVG8oc3RhdGVtZW50KSB7XG4gICAgY29uc3Qgc3RhdGVtZW50RXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIHN0YXRlbWVudEVxdWFsVG87XG4gIH1cblxuICBpc01ldGF2YXJpYWJsZUVxdWFsVG8obWV0YXZhcmlhYmxlKSB7XG4gICAgY29uc3QgbWV0YXZhcmlhYmxlRXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgcmV0dXJuIG1ldGF2YXJpYWJsZUVxdWFsVG87XG4gIH1cblxuICBpc1N1YnN0aXR1dGlvbkVxdWFsVG8oc3Vic3RpdHV0aW9uKSB7XG4gICAgY29uc3Qgc3Vic3RpdHV0aW9uRXF1YWxUbyA9IChzdWJzdGl0dXRpb24gPT09IG51bGwpO1xuXG4gICAgcmV0dXJuIHN1YnN0aXR1dGlvbkVxdWFsVG87XG4gIH1cblxuICByZXNvbHZlKHN1YnN0aXR1dGlvbnMsIGNvbnRleHQpIHtcbiAgICBjb25zdCByZXNvbHZlZCA9IHRydWU7XG5cbiAgICByZXR1cm4gcmVzb2x2ZWQ7XG4gIH1cblxuICBtYXRjaE5hbWUobmFtZSkge1xuICAgIGNvbnN0IG5hbWVNYXRjaGVzID0gZmFsc2U7XG5cbiAgICByZXR1cm4gbmFtZU1hdGNoZXM7XG4gIH1cblxuICBnZXRSZXBsYWNlbWVudE5vZGUoKSB7XG4gICAgY29uc3QgcmVwbGFjZW1lbnROb2RlID0gbnVsbDtcblxuICAgIHJldHVybiByZXBsYWNlbWVudE5vZGU7XG4gIH1cblxuICB1bmlmeVdpdGhFcXVpdmFsZW5jZShlcXVpdmFsZW5jZSkge1xuICAgIGxldCB1bmlmaWVkV2l0aEVxdWl2YWxlbmNlID0gZmFsc2U7XG5cbiAgICByZXR1cm4gdW5pZmllZFdpdGhFcXVpdmFsZW5jZTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlN1YnN0aXR1dGlvbiIsInN0cmluZyIsIm5vZGUiLCJ0b2tlbnMiLCJnZXRTdHJpbmciLCJnZXROb2RlIiwiZ2V0VG9rZW5zIiwiZ2V0VGVybSIsInRlcm0iLCJnZXRGcmFtZSIsImZyYW1lIiwiZ2V0VmFyaWFibGUiLCJ2YXJpYWJsZSIsImdldFJlZmVyZW5jZSIsInJlZmVyZW5jZSIsImdldFN0YXRlbWVudCIsInN0YXRlbWVudCIsImdldE1ldGF2YXJpYWJsZSIsIm1ldGF2YXJpYWJsZU5vZGUiLCJnZXRTdWJzdGl0dXRpb24iLCJzdWJzdGl0dXRpb24iLCJpc1NpbXBsZSIsInNpbXBsZSIsImlzQ29tcGxleCIsImNvbXBsZXgiLCJpc0VxdWFsVG8iLCJzdWJzdGl0dXRpb25TdHJpbmciLCJlcXVhbFRvIiwiaXNUZXJtRXF1YWxUbyIsInRlcm1FcXVhbFRvIiwiaXNGcmFtZUVxdWFsVG8iLCJmcmFtZUVxdWFsVG8iLCJpc1ZhcmlhYmxlRXF1YWxUbyIsInZhcmlhYmxlRXF1YWxUbyIsImlzUmVmZXJlbmNlRXF1YWxUbyIsInJlZmVyZW5jZUVxdWFsVG8iLCJpc1N0YXRlbWVudEVxdWFsVG8iLCJzdGF0ZW1lbnRFcXVhbFRvIiwiaXNNZXRhdmFyaWFibGVFcXVhbFRvIiwibWV0YXZhcmlhYmxlIiwibWV0YXZhcmlhYmxlRXF1YWxUbyIsImlzU3Vic3RpdHV0aW9uRXF1YWxUbyIsInN1YnN0aXR1dGlvbkVxdWFsVG8iLCJyZXNvbHZlIiwic3Vic3RpdHV0aW9ucyIsImNvbnRleHQiLCJyZXNvbHZlZCIsIm1hdGNoTmFtZSIsIm5hbWUiLCJuYW1lTWF0Y2hlcyIsImdldFJlcGxhY2VtZW50Tm9kZSIsInJlcGxhY2VtZW50Tm9kZSIsInVuaWZ5V2l0aEVxdWl2YWxlbmNlIiwiZXF1aXZhbGVuY2UiLCJ1bmlmaWVkV2l0aEVxdWl2YWxlbmNlIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztlQUVxQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBTixJQUFBLEFBQU1BLDZCQUFOO2FBQU1BLGFBQ1BDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxNQUFNO2dDQURiSDtRQUVqQixJQUFJLENBQUNDLE1BQU0sR0FBR0E7UUFDZCxJQUFJLENBQUNDLElBQUksR0FBR0E7UUFDWixJQUFJLENBQUNDLE1BQU0sR0FBR0E7O2tCQUpHSDs7WUFPbkJJLEtBQUFBO21CQUFBQSxTQUFBQTtnQkFDRSxPQUFPLElBQUksQ0FBQ0gsTUFBTTtZQUNwQjs7O1lB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
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-verify-cli",
3
3
  "author": "James Smith",
4
- "version": "0.0.1203",
4
+ "version": "0.0.1205",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-verify-cli",
7
7
  "description": "Occam's Verifier",
@@ -12,10 +12,10 @@
12
12
  "dependencies": {
13
13
  "argumentative": "^2.0.32",
14
14
  "necessary": "^14.2.1",
15
- "occam-custom-grammars": "^5.0.984",
15
+ "occam-custom-grammars": "^5.0.986",
16
16
  "occam-entities": "^1.0.238",
17
17
  "occam-file-system": "^6.0.266",
18
- "occam-furtle": "^1.0.44",
18
+ "occam-furtle": "^1.0.47",
19
19
  "occam-grammar-utilities": "^8.0.239",
20
20
  "occam-lexers": "^23.0.11",
21
21
  "occam-parsers": "^23.0.21",
@@ -49,31 +49,6 @@ export default domAssigned(class ContainedAssertion {
49
49
  return this.statement;
50
50
  }
51
51
 
52
- unifyIndependently(substitutions, context) {
53
- let unifiedIndependently;
54
-
55
- const containedAssertionString = this.string; ///
56
-
57
- context.trace(`Unifying the '${containedAssertionString}' contained assertion independently...`);
58
-
59
- const localContext = LocalContext.fromContextAndTokens(context, this.tokens);
60
-
61
- context = localContext; ///
62
-
63
- const term = termFromTermAndSubstitutions(this.term, substitutions, context),
64
- frame = frameFromFrameAndSubstitutions(this.frame, substitutions, context),
65
- statement = statementFromStatementAndSubstitutions(this.statement, substitutions, context),
66
- verifiedWhenDerived = verifyWhenDerived(term, frame, statement, this.negated, context);
67
-
68
- unifiedIndependently = verifiedWhenDerived; ///
69
-
70
- if (unifiedIndependently) {
71
- context.debug(`...unified the '${containedAssertionString}' contained assertion independently.`);
72
- }
73
-
74
- return unifiedIndependently;
75
- }
76
-
77
52
  verify(assignments, stated, context) {
78
53
  let verified = false;
79
54
 
@@ -175,6 +150,31 @@ export default domAssigned(class ContainedAssertion {
175
150
  return verifiedWhenDerived;
176
151
  }
177
152
 
153
+ unifyIndependently(substitutions, context) {
154
+ let unifiedIndependently;
155
+
156
+ const containedAssertionString = this.string; ///
157
+
158
+ context.trace(`Unifying the '${containedAssertionString}' contained assertion independently...`);
159
+
160
+ const localContext = LocalContext.fromContextAndTokens(context, this.tokens);
161
+
162
+ context = localContext; ///
163
+
164
+ const term = termFromTermAndSubstitutions(this.term, substitutions, context),
165
+ frame = frameFromFrameAndSubstitutions(this.frame, substitutions, context),
166
+ statement = statementFromStatementAndSubstitutions(this.statement, substitutions, context),
167
+ verifiedWhenDerived = verifyWhenDerived(term, frame, statement, this.negated, context);
168
+
169
+ unifiedIndependently = verifiedWhenDerived; ///
170
+
171
+ if (unifiedIndependently) {
172
+ context.debug(`...unified the '${containedAssertionString}' contained assertion independently.`);
173
+ }
174
+
175
+ return unifiedIndependently;
176
+ }
177
+
178
178
  static name = "ContainedAssertion";
179
179
 
180
180
  static fromStatementNode(statementNode, context) {
@@ -44,30 +44,6 @@ export default domAssigned(class DefinedAssertion {
44
44
  return this.negated;
45
45
  }
46
46
 
47
- unifyIndependently(substitutions, context) {
48
- let unifiedIndependently;
49
-
50
- const definedAssertionString = this.string; ///
51
-
52
- context.trace(`Unifying the '${definedAssertionString}' defined assertion independently...`);
53
-
54
- const localContext = LocalContext.fromContextAndTokens(context, this.tokens);
55
-
56
- context = localContext; ///
57
-
58
- const term = termFromTermAndSubstitutions(this.term, substitutions, context),
59
- frame = frameFromFrameAndSubstitutions(this.frame, substitutions, context),
60
- verifiedWhenDerived = verifyWhenDerived(term, frame, this.negated, context);
61
-
62
- unifiedIndependently = verifiedWhenDerived; ///
63
-
64
- if (unifiedIndependently) {
65
- context.debug(`...unified the '${definedAssertionString}' defined assertion independently.`);
66
- }
67
-
68
- return unifiedIndependently;
69
- }
70
-
71
47
  verify(assignments, stated, context) {
72
48
  let verified = false;
73
49
 
@@ -154,6 +130,30 @@ export default domAssigned(class DefinedAssertion {
154
130
  return verifiedWhenDerived;
155
131
  }
156
132
 
133
+ unifyIndependently(substitutions, context) {
134
+ let unifiedIndependently;
135
+
136
+ const definedAssertionString = this.string; ///
137
+
138
+ context.trace(`Unifying the '${definedAssertionString}' defined assertion independently...`);
139
+
140
+ const localContext = LocalContext.fromContextAndTokens(context, this.tokens);
141
+
142
+ context = localContext; ///
143
+
144
+ const term = termFromTermAndSubstitutions(this.term, substitutions, context),
145
+ frame = frameFromFrameAndSubstitutions(this.frame, substitutions, context),
146
+ verifiedWhenDerived = verifyWhenDerived(term, frame, this.negated, context);
147
+
148
+ unifiedIndependently = verifiedWhenDerived; ///
149
+
150
+ if (unifiedIndependently) {
151
+ context.debug(`...unified the '${definedAssertionString}' defined assertion independently.`);
152
+ }
153
+
154
+ return unifiedIndependently;
155
+ }
156
+
157
157
  static name = "DefinedAssertion";
158
158
 
159
159
  static fromStatementNode(statementNode, context) {
@@ -58,6 +58,12 @@ export default domAssigned(class Metavariable {
58
58
  return this.metaType;
59
59
  }
60
60
 
61
+ matchName(name) {
62
+ const nameMatches = (name === this.name);
63
+
64
+ return nameMatches;
65
+ }
66
+
61
67
  matchMetavariableName(metavariableName) {
62
68
  const metavariableNameMatches = (metavariableName === this.name);
63
69
 
@@ -20,20 +20,22 @@ export default domAssigned(class Parameter {
20
20
  return string;
21
21
  }
22
22
 
23
- verify(assignments, stated, context) {
24
- let verified = false;
23
+ findReplacementNode(substitutions) {
24
+ let replacementNode = null;
25
25
 
26
- const parameterString = this.string; ///
26
+ const substitution = substitutions.findSubstitution((substitution) => {
27
+ const nameMatches = substitution.matchName(this.name);
27
28
 
28
- context.trace(`Verifying the '${parameterString}' parameter...`);
29
+ if (nameMatches) {
30
+ return true;
31
+ }
32
+ });
29
33
 
30
- debugger
31
-
32
- if (verified) {
33
- context.debug(`...verified the '${parameterString}' parameter.`);
34
+ if (substitution !== null) {
35
+ replacementNode = substitution.getReplacementNode();
34
36
  }
35
37
 
36
- return verified;
38
+ return replacementNode;
37
39
  }
38
40
 
39
41
  static name = "Parameter";
@@ -4,6 +4,12 @@ import dom from "../dom";
4
4
 
5
5
  import { domAssigned } from "../dom";
6
6
  import { nodeQuery, nodesQuery } from "../utilities/query";
7
+ import LocalContext from "../context/local";
8
+ import {
9
+ frameFromFrameAndSubstitutions,
10
+ statementFromStatementAndSubstitutions,
11
+ termFromTermAndSubstitutions
12
+ } from "../utilities/substitutions";
7
13
 
8
14
  const parameterNodesQuery = nodesQuery("/procedureCall/parameter"),
9
15
  procedureCallNodeQuery = nodeQuery("/statement/procedureCall");
@@ -27,6 +33,17 @@ export default domAssigned(class ProcedureCall {
27
33
  return this.parameters;
28
34
  }
29
35
 
36
+ findNodes(substitutions) {
37
+ const nodes = this.parameters.map((parameter) => {
38
+ const replacementNode = parameter.findReplacementNode(substitutions),
39
+ node = replacementNode; ///
40
+
41
+ return node;
42
+ });
43
+
44
+ return nodes;
45
+ }
46
+
30
47
  verify(assignments, stated, context) {
31
48
  let verified = false;
32
49
 
@@ -68,6 +85,32 @@ export default domAssigned(class ProcedureCall {
68
85
  return verified;
69
86
  }
70
87
 
88
+ unifyIndependently(substitutions, context) {
89
+ let unifiedIndependently;
90
+
91
+ const procedureCallString = this.string; ///
92
+
93
+ context.trace(`Unifying the '${procedureCallString}' procedure call independently...`);
94
+
95
+ const procedure = context.findProcedureByReference(this.reference),
96
+ nodes = this.findNodes(substitutions),
97
+ result = procedure.call(nodes);
98
+
99
+ if (result) {
100
+ unifiedIndependently = true;
101
+ } else {
102
+ const procedureString = procedure.getString();
103
+
104
+ context.trace(`Unable to unify the '${procedureCallString}' procedure call independently becuase the '${procedureString}' procedure returned false.`);
105
+ }
106
+
107
+ if (unifiedIndependently) {
108
+ context.debug(`...unified the '${procedureCallString}' procedure call independently.`);
109
+ }
110
+
111
+ return unifiedIndependently;
112
+ }
113
+
71
114
  static name = "ProcedureCall";
72
115
 
73
116
  static fromStatementNode(statementNode, context) {
@@ -12,7 +12,7 @@ import { domAssigned } from "../dom";
12
12
  import { unifyStatement } from "../utilities/unification";
13
13
  import { nodeQuery, nodesQuery } from "../utilities/query";
14
14
  import { STATEMENT_META_TYPE_NAME } from "../metaTypeNames";
15
- import { definedAssertionFromStatement, subproofAssertionFromStatement, containedAssertionFromStatement } from "../utilities/verification";
15
+ import { procedureCallFromStatement, definedAssertionFromStatement, subproofAssertionFromStatement, containedAssertionFromStatement } from "../utilities/verification";
16
16
 
17
17
  const { match, backwardsSome } = arrayUtilities;
18
18
 
@@ -170,14 +170,21 @@ export default domAssigned(class Statement {
170
170
  const context = specificContext, ///
171
171
  statement = this; ///
172
172
 
173
- const definedAssertion = definedAssertionFromStatement(statement, context),
173
+ const procedureCall = procedureCallFromStatement(statement, context),
174
+ definedAssertion = definedAssertionFromStatement(statement, context),
174
175
  containedAssertion = containedAssertionFromStatement(statement, context);
175
176
 
176
- if ((definedAssertion !== null) || (containedAssertion !== null)) {
177
+ if ((procedureCall !== null) || (definedAssertion !== null) || (containedAssertion !== null)) {
177
178
  const statementString = this.string;
178
179
 
179
180
  specificContext.trace(`Unifying the '${statementString}' statement independently...`);
180
181
 
182
+ if (procedureCall !== null) {
183
+ const procedureCallUnifiedIndependently = procedureCall.unifyIndependently(substitutions, context);
184
+
185
+ unifiedIndependently = procedureCallUnifiedIndependently; ///
186
+ }
187
+
181
188
  if (definedAssertion !== null) {
182
189
  const definedAssertionUnifiedIndependently = definedAssertion.unifyIndependently(substitutions, context);
183
190
 
@@ -43,12 +43,18 @@ export default domAssigned(class Variable {
43
43
  this.type = type;
44
44
  }
45
45
 
46
- matchVariableName(variableName) {
47
- const nameMatches = (variableName === this.name);
46
+ matchName(name) {
47
+ const nameMatches = (name === this.name);
48
48
 
49
49
  return nameMatches;
50
50
  }
51
51
 
52
+ matchVariableName(variableName) {
53
+ const variableNameMatches = (variableName === this.name);
54
+
55
+ return variableNameMatches;
56
+ }
57
+
52
58
  isEqualTo(variable) {
53
59
  const variableString = variable.getString(),
54
60
  equalTo = (variableString === this.string);
@@ -30,6 +30,15 @@ export default class FrameSubstitution extends Substitution {
30
30
 
31
31
  isMetavariableEqualTo(metavariable) { return this.metavariable.isEqualTo(metavariable); }
32
32
 
33
+ matchName(name) { return this.metavariable.matchName(name); }
34
+
35
+ getReplacementNode() {
36
+ const frameNode = this.frame.getNode(),
37
+ replacementNode = frameNode; ///
38
+
39
+ return replacementNode;
40
+ }
41
+
33
42
  static fromStatementNode(statementNode, context) {
34
43
  let frameSubstitution = null;
35
44
 
@@ -68,6 +68,15 @@ export default class StatementSubstitution extends Substitution {
68
68
  return simple;
69
69
  }
70
70
 
71
+ matchName(name) { return this.metavariable.matchName(name); }
72
+
73
+ getReplacementNode() {
74
+ const statementNode = this.statement.getNode(),
75
+ replacementNode = statementNode; ///
76
+
77
+ return replacementNode;
78
+ }
79
+
71
80
  resolve(substitutions, generalContext, specificContext) {
72
81
  const substitutionString = this.string;
73
82
 
@@ -38,6 +38,15 @@ export default class TermSubstitution extends Substitution {
38
38
 
39
39
  isVariableEqualTo(variable) { return this.variable.isEqualTo(variable); }
40
40
 
41
+ getReplacementNode() {
42
+ const termNode = this.term.getNode(),
43
+ replacementNode = termNode; ///
44
+
45
+ return replacementNode;
46
+ }
47
+
48
+ matchName(name) { return this.variable.matchName(name); }
49
+
41
50
  unifyWithEquivalence(equivalence) {
42
51
  let unifiedWithEquivalence;
43
52
 
@@ -129,6 +129,18 @@ export default class Substitution {
129
129
  return resolved;
130
130
  }
131
131
 
132
+ matchName(name) {
133
+ const nameMatches = false;
134
+
135
+ return nameMatches;
136
+ }
137
+
138
+ getReplacementNode() {
139
+ const replacementNode = null;
140
+
141
+ return replacementNode;
142
+ }
143
+
132
144
  unifyWithEquivalence(equivalence) {
133
145
  let unifiedWithEquivalence = false;
134
146