occam-verify-cli 1.0.633 → 1.0.635

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.
@@ -9,8 +9,8 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _occamlanguages = require("occam-languages");
12
- var _context = require("../utilities/context");
13
12
  var _elements = require("../elements");
13
+ var _context = require("../utilities/context");
14
14
  function _array_like_to_array(arr, len) {
15
15
  if (len == null || len > arr.length) len = arr.length;
16
16
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
@@ -25,6 +25,35 @@ function _assert_this_initialized(self) {
25
25
  }
26
26
  return self;
27
27
  }
28
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
29
+ try {
30
+ var info = gen[key](arg);
31
+ var value = info.value;
32
+ } catch (error) {
33
+ reject(error);
34
+ return;
35
+ }
36
+ if (info.done) {
37
+ resolve(value);
38
+ } else {
39
+ Promise.resolve(value).then(_next, _throw);
40
+ }
41
+ }
42
+ function _async_to_generator(fn) {
43
+ return function() {
44
+ var self = this, args = arguments;
45
+ return new Promise(function(resolve, reject) {
46
+ var gen = fn.apply(self, args);
47
+ function _next(value) {
48
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
49
+ }
50
+ function _throw(err) {
51
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
52
+ }
53
+ _next(undefined);
54
+ });
55
+ };
56
+ }
28
57
  function _call_super(_this, derived, args) {
29
58
  derived = _get_prototype_of(derived);
30
59
  return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));
@@ -168,7 +197,99 @@ function _is_native_reflect_construct() {
168
197
  return !!result;
169
198
  })();
170
199
  }
200
+ function _ts_generator(thisArg, body) {
201
+ var f, y, t, _ = {
202
+ label: 0,
203
+ sent: function() {
204
+ if (t[0] & 1) throw t[1];
205
+ return t[1];
206
+ },
207
+ trys: [],
208
+ ops: []
209
+ }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
210
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
211
+ return this;
212
+ }), g;
213
+ function verb(n) {
214
+ return function(v) {
215
+ return step([
216
+ n,
217
+ v
218
+ ]);
219
+ };
220
+ }
221
+ function step(op) {
222
+ if (f) throw new TypeError("Generator is already executing.");
223
+ while(g && (g = 0, op[0] && (_ = 0)), _)try {
224
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
225
+ if (y = 0, t) op = [
226
+ op[0] & 2,
227
+ t.value
228
+ ];
229
+ switch(op[0]){
230
+ case 0:
231
+ case 1:
232
+ t = op;
233
+ break;
234
+ case 4:
235
+ _.label++;
236
+ return {
237
+ value: op[1],
238
+ done: false
239
+ };
240
+ case 5:
241
+ _.label++;
242
+ y = op[1];
243
+ op = [
244
+ 0
245
+ ];
246
+ continue;
247
+ case 7:
248
+ op = _.ops.pop();
249
+ _.trys.pop();
250
+ continue;
251
+ default:
252
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
253
+ _ = 0;
254
+ continue;
255
+ }
256
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
257
+ _.label = op[1];
258
+ break;
259
+ }
260
+ if (op[0] === 6 && _.label < t[1]) {
261
+ _.label = t[1];
262
+ t = op;
263
+ break;
264
+ }
265
+ if (t && _.label < t[2]) {
266
+ _.label = t[2];
267
+ _.ops.push(op);
268
+ break;
269
+ }
270
+ if (t[2]) _.ops.pop();
271
+ _.trys.pop();
272
+ continue;
273
+ }
274
+ op = body.call(thisArg, _);
275
+ } catch (e) {
276
+ op = [
277
+ 6,
278
+ e
279
+ ];
280
+ y = 0;
281
+ } finally{
282
+ f = t = 0;
283
+ }
284
+ if (op[0] & 5) throw op[1];
285
+ return {
286
+ value: op[0] ? op[1] : void 0,
287
+ done: true
288
+ };
289
+ }
290
+ }
171
291
  var _Subproof;
292
+ var asyncEvery = _occamlanguages.asynchronousUtilities.asyncEvery;
172
293
  var _default = (0, _elements.define)((_Subproof = /*#__PURE__*/ function(Element) {
173
294
  _inherits(Subproof, Element);
174
295
  function Subproof(context, string, node, suppositions, subDerivation) {
@@ -230,24 +351,79 @@ var _default = (0, _elements.define)((_Subproof = /*#__PURE__*/ function(Element
230
351
  },
231
352
  {
232
353
  key: "verify",
233
- value: function verify(substitutions, assignments, context) {
234
- var _this = this;
235
- var verifies = false;
236
- (0, _context.scope)(function() {
237
- var suppositionsVerify = _this.suppositions.every(function(supposition) {
238
- var suppositionVerifies = supposition.verify(context);
239
- if (suppositionVerifies) {
240
- return true;
354
+ value: function verify(assignments, context) {
355
+ return _async_to_generator(function() {
356
+ var _this, verifies;
357
+ return _ts_generator(this, function(_state) {
358
+ switch(_state.label){
359
+ case 0:
360
+ _this = this;
361
+ verifies = false;
362
+ return [
363
+ 4,
364
+ (0, _context.asyncScope)(function() {
365
+ return _async_to_generator(function() {
366
+ var suppositionsVerify, subDerivationVerifies;
367
+ return _ts_generator(this, function(_state) {
368
+ switch(_state.label){
369
+ case 0:
370
+ suppositionsVerify = asyncEvery(this.suppositions, function(supposition) {
371
+ return _async_to_generator(function() {
372
+ var suppositionVerifies;
373
+ return _ts_generator(this, function(_state) {
374
+ switch(_state.label){
375
+ case 0:
376
+ return [
377
+ 4,
378
+ supposition.verify(assignments, context)
379
+ ];
380
+ case 1:
381
+ suppositionVerifies = _state.sent();
382
+ if (suppositionVerifies) {
383
+ return [
384
+ 2,
385
+ true
386
+ ];
387
+ }
388
+ return [
389
+ 2
390
+ ];
391
+ }
392
+ });
393
+ })();
394
+ });
395
+ if (!suppositionsVerify) return [
396
+ 3,
397
+ 2
398
+ ];
399
+ return [
400
+ 4,
401
+ this.subDerivation.verify(context)
402
+ ];
403
+ case 1:
404
+ subDerivationVerifies = _state.sent();
405
+ if (subDerivationVerifies) {
406
+ verifies = true;
407
+ }
408
+ _state.label = 2;
409
+ case 2:
410
+ return [
411
+ 2
412
+ ];
413
+ }
414
+ });
415
+ }).call(_this);
416
+ }, context)
417
+ ];
418
+ case 1:
419
+ _state.sent();
420
+ return [
421
+ 2,
422
+ verifies
423
+ ];
241
424
  }
242
425
  });
243
- if (suppositionsVerify) {
244
- var subDerivationVerifies = _this.subDerivation.verify(substitutions, context);
245
- if (subDerivationVerifies) {
246
- verifies = true;
247
- }
248
- }
249
- }, context);
250
- return verifies;
426
+ }).call(this);
251
427
  }
252
428
  },
253
429
  {
@@ -286,4 +462,4 @@ var _default = (0, _elements.define)((_Subproof = /*#__PURE__*/ function(Element
286
462
  return Subproof;
287
463
  }(_wrap_native_super(_occamlanguages.Element)), _define_property(_Subproof, "name", "Subproof"), _Subproof));
288
464
 
289
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3N1YnByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcIm9jY2FtLWxhbmd1YWdlc1wiO1xuXG5pbXBvcnQgeyBzY29wZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGV4dFwiO1xuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uL2VsZW1lbnRzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBTdWJwcm9vZiBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIHN1cHBvc2l0aW9ucywgc3ViRGVyaXZhdGlvbikge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSk7XG5cbiAgICB0aGlzLnN1cHBvc2l0aW9ucyA9IHN1cHBvc2l0aW9ucztcbiAgICB0aGlzLnN1YkRlcml2YXRpb24gPSBzdWJEZXJpdmF0aW9uO1xuICB9XG5cbiAgZ2V0U3VwcG9zaXRpb25zKCkge1xuICAgIHJldHVybiB0aGlzLnN1cHBvc2l0aW9ucztcbiAgfVxuXG4gIGdldFN1YkRlcml2YXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViRGVyaXZhdGlvbjtcbiAgfVxuXG4gIGdldFN1YnByb29mTm9kZSgpIHtcbiAgICBjb25zdCBub2RlID0gdGhpcy5nZXROb2RlKCksXG4gICAgICAgICAgc3VicHJvb2ZOb2RlID0gbm9kZTsgIC8vL1xuXG4gICAgcmV0dXJuIHN1YnByb29mTm9kZTtcbiAgfVxuXG4gIGdldExhc3RQcm9vZkFzc2VydGlvbigpIHsgcmV0dXJuIHRoaXMuc3ViRGVyaXZhdGlvbi5nZXRMYXN0UHJvb2ZBc3NlcnRpb24oKTsgfVxuXG4gIGdldFN0YXRlbWVudHMoKSB7XG4gICAgY29uc3QgbGFzdFByb29mQXNzZXJ0aW9uID0gdGhpcy5nZXRMYXN0UHJvb2ZBc3NlcnRpb24oKSxcbiAgICAgICAgICBzdXBwb3NpdGlvblN0YXRlbWVudHMgPSB0aGlzLnN1cHBvc2l0aW9ucy5tYXAoKHN1cHBvc2l0aW9uKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdXBwb3NpdGlvblN0YXRlbWVudCA9IHN1cHBvc2l0aW9uLmdldFN0YXRlbWVudCgpO1xuXG4gICAgICAgICAgICByZXR1cm4gc3VwcG9zaXRpb25TdGF0ZW1lbnQ7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgbGFzdFByb29mQXNzZXJ0aW9uU3RhdGVtZW50ID0gbGFzdFByb29mQXNzZXJ0aW9uLmdldFN0YXRlbWVudCgpLFxuICAgICAgICAgIHN0YXRlbWVudHMgPSBbXG4gICAgICAgICAgICAuLi5zdXBwb3NpdGlvblN0YXRlbWVudHMsXG4gICAgICAgICAgICBsYXN0UHJvb2ZBc3NlcnRpb25TdGF0ZW1lbnRcbiAgICAgICAgICBdO1xuXG4gICAgcmV0dXJuIHN0YXRlbWVudHM7XG4gIH1cblxuICBpc1Byb29mQXNzZXJ0aW9uKCkge1xuICAgIGNvbnN0IHByb29mQXNzZXJ0aW9uID0gZmFsc2U7XG5cbiAgICByZXR1cm4gcHJvb2ZBc3NlcnRpb247XG4gIH1cblxuICB2ZXJpZnkoc3Vic3RpdHV0aW9ucywgYXNzaWdubWVudHMsIGNvbnRleHQpIHtcbiAgICBsZXQgdmVyaWZpZXMgPSBmYWxzZTtcblxuICAgIHNjb3BlKCgpID0+IHtcbiAgICAgIGNvbnN0IHN1cHBvc2l0aW9uc1ZlcmlmeSA9IHRoaXMuc3VwcG9zaXRpb25zLmV2ZXJ5KChzdXBwb3NpdGlvbikgPT4ge1xuICAgICAgICBjb25zdCBzdXBwb3NpdGlvblZlcmlmaWVzID0gc3VwcG9zaXRpb24udmVyaWZ5KGNvbnRleHQpO1xuXG4gICAgICAgIGlmIChzdXBwb3NpdGlvblZlcmlmaWVzKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBpZiAoc3VwcG9zaXRpb25zVmVyaWZ5KSB7XG4gICAgICAgIGNvbnN0IHN1YkRlcml2YXRpb25WZXJpZmllcyA9IHRoaXMuc3ViRGVyaXZhdGlvbi52ZXJpZnkoc3Vic3RpdHV0aW9ucywgY29udGV4dCk7XG5cbiAgICAgICAgaWYgKHN1YkRlcml2YXRpb25WZXJpZmllcykge1xuICAgICAgICAgIHZlcmlmaWVzID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sIGNvbnRleHQpO1xuXG4gICAgcmV0dXJuIHZlcmlmaWVzO1xuICB9XG5cbiAgY29tcGFyZVN0YXRlbWVudChzdGF0ZW1lbnQsIGNvbnRleHQpIHtcbiAgICBjb25zdCBzdGF0ZW1lbnRVbmlmaWVzID0gZmFsc2U7XG5cbiAgICByZXR1cm4gc3RhdGVtZW50VW5pZmllcztcbiAgfVxuXG4gIHVuaWZ5V2l0aFNhdGlzZmllc0Fzc2VydGlvbihzYXRpc2ZpZXNBc3NlcnRpb24sIGNvbnRleHQpIHtcbiAgICBsZXQgdW5pZmllc1dpdGhTYXRpc2ZpZXNBc3NlcnRpb24gPSBmYWxzZTtcblxuICAgIGNvbnN0IHN1YnByb29mU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKSwgLy8vXG4gICAgICAgICAgc2F0aXNmaWVzQXNzZXJ0aW9uU3RyaW5nID0gc2F0aXNmaWVzQXNzZXJ0aW9uLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC50cmFjZShgVW5pZnlpbmcgdGhlICcke3N1YnByb29mU3RyaW5nfScgc3VicHJvb2Ygd2l0aCB0aGUgJyR7c2F0aXNmaWVzQXNzZXJ0aW9uU3RyaW5nfScgc2F0aXNmaWVzIGFzc2VydGlvbi4uLmApXG5cbiAgICBjb25zdCByZWZlcmVuY2UgPSBzYXRpc2ZpZXNBc3NlcnRpb24uZ2V0UmVmZXJlbmNlKCksXG4gICAgICAgICAgYXhpb20gPSBjb250ZXh0LmZpbmRBeGlvbUJ5UmVmZXJlbmNlKHJlZmVyZW5jZSk7XG5cbiAgICBpZiAoYXhpb20gIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IGF4aW9tU2F0aXNmaWFibGUgPSBheGlvbS5pc1NhdGlzZmlhYmxlKCk7XG5cbiAgICAgIGlmIChheGlvbVNhdGlzZmlhYmxlKSB7XG4gICAgICAgIGNvbnN0IHN1YnByb29mID0gdGhpcywgIC8vL1xuICAgICAgICAgICAgICBzdWJzdGl0dXRpb25zID0gW10sXG4gICAgICAgICAgICAgIHN0YXRlbWVudFVuaWZpZXMgPSBheGlvbS51bmlmeVN1YnByb29mKHN1YnByb29mLCBzdWJzdGl0dXRpb25zLCBjb250ZXh0KTtcblxuICAgICAgICBpZiAoc3RhdGVtZW50VW5pZmllcykge1xuICAgICAgICAgIGNvbnN0IHN1YnN0aXR1dGlvbnNDb21wYXJlID0gc2F0aXNmaWVzQXNzZXJ0aW9uLmNvbXBhcmVTdWJzdGl0dXRpb25zKHN1YnN0aXR1dGlvbnMsIGNvbnRleHQpO1xuXG4gICAgICAgICAgaWYgKHN1YnN0aXR1dGlvbnNDb21wYXJlKSB7XG4gICAgICAgICAgICB1bmlmaWVzV2l0aFNhdGlzZmllc0Fzc2VydGlvbiA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHVuaWZpZXNXaXRoU2F0aXNmaWVzQXNzZXJ0aW9uKSB7XG4gICAgICBjb250ZXh0LmRlYnVnKGAuLi51bmlmaWVkIHRoZSAnJHtzdWJwcm9vZlN0cmluZ30nIHN1YnByb29mIHdpdGggdGhlICcke3NhdGlzZmllc0Fzc2VydGlvblN0cmluZ30nIHNhdGlzZmllcyBhc3NlcnRpb24uYClcbiAgICB9XG5cbiAgICByZXR1cm4gdW5pZmllc1dpdGhTYXRpc2ZpZXNBc3NlcnRpb247XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiU3VicHJvb2ZcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlN1YnByb29mIiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJzdXBwb3NpdGlvbnMiLCJzdWJEZXJpdmF0aW9uIiwiZ2V0U3VwcG9zaXRpb25zIiwiZ2V0U3ViRGVyaXZhdGlvbiIsImdldFN1YnByb29mTm9kZSIsImdldE5vZGUiLCJzdWJwcm9vZk5vZGUiLCJnZXRMYXN0UHJvb2ZBc3NlcnRpb24iLCJnZXRTdGF0ZW1lbnRzIiwibGFzdFByb29mQXNzZXJ0aW9uIiwic3VwcG9zaXRpb25TdGF0ZW1lbnRzIiwibWFwIiwic3VwcG9zaXRpb24iLCJzdXBwb3NpdGlvblN0YXRlbWVudCIsImdldFN0YXRlbWVudCIsImxhc3RQcm9vZkFzc2VydGlvblN0YXRlbWVudCIsInN0YXRlbWVudHMiLCJpc1Byb29mQXNzZXJ0aW9uIiwicHJvb2ZBc3NlcnRpb24iLCJ2ZXJpZnkiLCJzdWJzdGl0dXRpb25zIiwiYXNzaWdubWVudHMiLCJ2ZXJpZmllcyIsInNjb3BlIiwic3VwcG9zaXRpb25zVmVyaWZ5IiwiZXZlcnkiLCJzdXBwb3NpdGlvblZlcmlmaWVzIiwic3ViRGVyaXZhdGlvblZlcmlmaWVzIiwiY29tcGFyZVN0YXRlbWVudCIsInN0YXRlbWVudCIsInN0YXRlbWVudFVuaWZpZXMiLCJ1bmlmeVdpdGhTYXRpc2ZpZXNBc3NlcnRpb24iLCJzYXRpc2ZpZXNBc3NlcnRpb24iLCJ1bmlmaWVzV2l0aFNhdGlzZmllc0Fzc2VydGlvbiIsInN1YnByb29mU3RyaW5nIiwiZ2V0U3RyaW5nIiwic2F0aXNmaWVzQXNzZXJ0aW9uU3RyaW5nIiwidHJhY2UiLCJyZWZlcmVuY2UiLCJnZXRSZWZlcmVuY2UiLCJheGlvbSIsImZpbmRBeGlvbUJ5UmVmZXJlbmNlIiwiYXhpb21TYXRpc2ZpYWJsZSIsImlzU2F0aXNmaWFibGUiLCJzdWJwcm9vZiIsInVuaWZ5U3VicHJvb2YiLCJzdWJzdGl0dXRpb25zQ29tcGFyZSIsImNvbXBhcmVTdWJzdGl0dXRpb25zIiwiZGVidWciLCJFbGVtZW50IiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBT0E7OztlQUFBOzs7OEJBTHdCO3VCQUVGO3dCQUNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
465
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3N1YnByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgeyBFbGVtZW50LCBhc3luY2hyb25vdXNVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuaW1wb3J0IHsgYXN5bmNTY29wZSB9IGZyb20gXCIuLi91dGlsaXRpZXMvY29udGV4dFwiO1xuXG5jb25zdCB7IGFzeW5jRXZlcnkgfSA9IGFzeW5jaHJvbm91c1V0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIFN1YnByb29mIGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgc3VwcG9zaXRpb25zLCBzdWJEZXJpdmF0aW9uKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlKTtcblxuICAgIHRoaXMuc3VwcG9zaXRpb25zID0gc3VwcG9zaXRpb25zO1xuICAgIHRoaXMuc3ViRGVyaXZhdGlvbiA9IHN1YkRlcml2YXRpb247XG4gIH1cblxuICBnZXRTdXBwb3NpdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3VwcG9zaXRpb25zO1xuICB9XG5cbiAgZ2V0U3ViRGVyaXZhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5zdWJEZXJpdmF0aW9uO1xuICB9XG5cbiAgZ2V0U3VicHJvb2ZOb2RlKCkge1xuICAgIGNvbnN0IG5vZGUgPSB0aGlzLmdldE5vZGUoKSxcbiAgICAgICAgICBzdWJwcm9vZk5vZGUgPSBub2RlOyAgLy8vXG5cbiAgICByZXR1cm4gc3VicHJvb2ZOb2RlO1xuICB9XG5cbiAgZ2V0TGFzdFByb29mQXNzZXJ0aW9uKCkgeyByZXR1cm4gdGhpcy5zdWJEZXJpdmF0aW9uLmdldExhc3RQcm9vZkFzc2VydGlvbigpOyB9XG5cbiAgZ2V0U3RhdGVtZW50cygpIHtcbiAgICBjb25zdCBsYXN0UHJvb2ZBc3NlcnRpb24gPSB0aGlzLmdldExhc3RQcm9vZkFzc2VydGlvbigpLFxuICAgICAgICAgIHN1cHBvc2l0aW9uU3RhdGVtZW50cyA9IHRoaXMuc3VwcG9zaXRpb25zLm1hcCgoc3VwcG9zaXRpb24pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN1cHBvc2l0aW9uU3RhdGVtZW50ID0gc3VwcG9zaXRpb24uZ2V0U3RhdGVtZW50KCk7XG5cbiAgICAgICAgICAgIHJldHVybiBzdXBwb3NpdGlvblN0YXRlbWVudDtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBsYXN0UHJvb2ZBc3NlcnRpb25TdGF0ZW1lbnQgPSBsYXN0UHJvb2ZBc3NlcnRpb24uZ2V0U3RhdGVtZW50KCksXG4gICAgICAgICAgc3RhdGVtZW50cyA9IFtcbiAgICAgICAgICAgIC4uLnN1cHBvc2l0aW9uU3RhdGVtZW50cyxcbiAgICAgICAgICAgIGxhc3RQcm9vZkFzc2VydGlvblN0YXRlbWVudFxuICAgICAgICAgIF07XG5cbiAgICByZXR1cm4gc3RhdGVtZW50cztcbiAgfVxuXG4gIGlzUHJvb2ZBc3NlcnRpb24oKSB7XG4gICAgY29uc3QgcHJvb2ZBc3NlcnRpb24gPSBmYWxzZTtcblxuICAgIHJldHVybiBwcm9vZkFzc2VydGlvbjtcbiAgfVxuXG4gIGFzeW5jIHZlcmlmeShhc3NpZ25tZW50cywgY29udGV4dCkge1xuICAgIGxldCB2ZXJpZmllcyA9IGZhbHNlO1xuXG4gICAgYXdhaXQgYXN5bmNTY29wZShhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBzdXBwb3NpdGlvbnNWZXJpZnkgPSBhc3luY0V2ZXJ5KHRoaXMuc3VwcG9zaXRpb25zLCBhc3luYyAoc3VwcG9zaXRpb24pID0+IHtcbiAgICAgICAgY29uc3Qgc3VwcG9zaXRpb25WZXJpZmllcyA9IGF3YWl0IHN1cHBvc2l0aW9uLnZlcmlmeShhc3NpZ25tZW50cywgY29udGV4dCk7XG5cbiAgICAgICAgaWYgKHN1cHBvc2l0aW9uVmVyaWZpZXMpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGlmIChzdXBwb3NpdGlvbnNWZXJpZnkpIHtcbiAgICAgICAgY29uc3Qgc3ViRGVyaXZhdGlvblZlcmlmaWVzID0gYXdhaXQgdGhpcy5zdWJEZXJpdmF0aW9uLnZlcmlmeShjb250ZXh0KTtcblxuICAgICAgICBpZiAoc3ViRGVyaXZhdGlvblZlcmlmaWVzKSB7XG4gICAgICAgICAgdmVyaWZpZXMgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gdmVyaWZpZXM7XG4gIH1cblxuICBjb21wYXJlU3RhdGVtZW50KHN0YXRlbWVudCwgY29udGV4dCkge1xuICAgIGNvbnN0IHN0YXRlbWVudFVuaWZpZXMgPSBmYWxzZTtcblxuICAgIHJldHVybiBzdGF0ZW1lbnRVbmlmaWVzO1xuICB9XG5cbiAgdW5pZnlXaXRoU2F0aXNmaWVzQXNzZXJ0aW9uKHNhdGlzZmllc0Fzc2VydGlvbiwgY29udGV4dCkge1xuICAgIGxldCB1bmlmaWVzV2l0aFNhdGlzZmllc0Fzc2VydGlvbiA9IGZhbHNlO1xuXG4gICAgY29uc3Qgc3VicHJvb2ZTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpLCAvLy9cbiAgICAgICAgICBzYXRpc2ZpZXNBc3NlcnRpb25TdHJpbmcgPSBzYXRpc2ZpZXNBc3NlcnRpb24uZ2V0U3RyaW5nKCk7XG5cbiAgICBjb250ZXh0LnRyYWNlKGBVbmlmeWluZyB0aGUgJyR7c3VicHJvb2ZTdHJpbmd9JyBzdWJwcm9vZiB3aXRoIHRoZSAnJHtzYXRpc2ZpZXNBc3NlcnRpb25TdHJpbmd9JyBzYXRpc2ZpZXMgYXNzZXJ0aW9uLi4uYClcblxuICAgIGNvbnN0IHJlZmVyZW5jZSA9IHNhdGlzZmllc0Fzc2VydGlvbi5nZXRSZWZlcmVuY2UoKSxcbiAgICAgICAgICBheGlvbSA9IGNvbnRleHQuZmluZEF4aW9tQnlSZWZlcmVuY2UocmVmZXJlbmNlKTtcblxuICAgIGlmIChheGlvbSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgYXhpb21TYXRpc2ZpYWJsZSA9IGF4aW9tLmlzU2F0aXNmaWFibGUoKTtcblxuICAgICAgaWYgKGF4aW9tU2F0aXNmaWFibGUpIHtcbiAgICAgICAgY29uc3Qgc3VicHJvb2YgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgICAgIHN1YnN0aXR1dGlvbnMgPSBbXSxcbiAgICAgICAgICAgICAgc3RhdGVtZW50VW5pZmllcyA9IGF4aW9tLnVuaWZ5U3VicHJvb2Yoc3VicHJvb2YsIHN1YnN0aXR1dGlvbnMsIGNvbnRleHQpO1xuXG4gICAgICAgIGlmIChzdGF0ZW1lbnRVbmlmaWVzKSB7XG4gICAgICAgICAgY29uc3Qgc3Vic3RpdHV0aW9uc0NvbXBhcmUgPSBzYXRpc2ZpZXNBc3NlcnRpb24uY29tcGFyZVN1YnN0aXR1dGlvbnMoc3Vic3RpdHV0aW9ucywgY29udGV4dCk7XG5cbiAgICAgICAgICBpZiAoc3Vic3RpdHV0aW9uc0NvbXBhcmUpIHtcbiAgICAgICAgICAgIHVuaWZpZXNXaXRoU2F0aXNmaWVzQXNzZXJ0aW9uID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodW5pZmllc1dpdGhTYXRpc2ZpZXNBc3NlcnRpb24pIHtcbiAgICAgIGNvbnRleHQuZGVidWcoYC4uLnVuaWZpZWQgdGhlICcke3N1YnByb29mU3RyaW5nfScgc3VicHJvb2Ygd2l0aCB0aGUgJyR7c2F0aXNmaWVzQXNzZXJ0aW9uU3RyaW5nfScgc2F0aXNmaWVzIGFzc2VydGlvbi5gKVxuICAgIH1cblxuICAgIHJldHVybiB1bmlmaWVzV2l0aFNhdGlzZmllc0Fzc2VydGlvbjtcbiAgfVxuXG4gIHN0YXRpYyBuYW1lID0gXCJTdWJwcm9vZlwiO1xufSk7XG4iXSwibmFtZXMiOlsiYXN5bmNFdmVyeSIsImFzeW5jaHJvbm91c1V0aWxpdGllcyIsImRlZmluZSIsIlN1YnByb29mIiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJzdXBwb3NpdGlvbnMiLCJzdWJEZXJpdmF0aW9uIiwiZ2V0U3VwcG9zaXRpb25zIiwiZ2V0U3ViRGVyaXZhdGlvbiIsImdldFN1YnByb29mTm9kZSIsImdldE5vZGUiLCJzdWJwcm9vZk5vZGUiLCJnZXRMYXN0UHJvb2ZBc3NlcnRpb24iLCJnZXRTdGF0ZW1lbnRzIiwibGFzdFByb29mQXNzZXJ0aW9uIiwic3VwcG9zaXRpb25TdGF0ZW1lbnRzIiwibWFwIiwic3VwcG9zaXRpb24iLCJzdXBwb3NpdGlvblN0YXRlbWVudCIsImdldFN0YXRlbWVudCIsImxhc3RQcm9vZkFzc2VydGlvblN0YXRlbWVudCIsInN0YXRlbWVudHMiLCJpc1Byb29mQXNzZXJ0aW9uIiwicHJvb2ZBc3NlcnRpb24iLCJ2ZXJpZnkiLCJhc3NpZ25tZW50cyIsInZlcmlmaWVzIiwiYXN5bmNTY29wZSIsInN1cHBvc2l0aW9uc1ZlcmlmeSIsInN1YkRlcml2YXRpb25WZXJpZmllcyIsInN1cHBvc2l0aW9uVmVyaWZpZXMiLCJjb21wYXJlU3RhdGVtZW50Iiwic3RhdGVtZW50Iiwic3RhdGVtZW50VW5pZmllcyIsInVuaWZ5V2l0aFNhdGlzZmllc0Fzc2VydGlvbiIsInNhdGlzZmllc0Fzc2VydGlvbiIsInVuaWZpZXNXaXRoU2F0aXNmaWVzQXNzZXJ0aW9uIiwic3VicHJvb2ZTdHJpbmciLCJnZXRTdHJpbmciLCJzYXRpc2ZpZXNBc3NlcnRpb25TdHJpbmciLCJ0cmFjZSIsInJlZmVyZW5jZSIsImdldFJlZmVyZW5jZSIsImF4aW9tIiwiZmluZEF4aW9tQnlSZWZlcmVuY2UiLCJheGlvbVNhdGlzZmlhYmxlIiwiaXNTYXRpc2ZpYWJsZSIsInN1YnByb29mIiwic3Vic3RpdHV0aW9ucyIsInVuaWZ5U3VicHJvb2YiLCJzdWJzdGl0dXRpb25zQ29tcGFyZSIsImNvbXBhcmVTdWJzdGl0dXRpb25zIiwiZGVidWciLCJFbGVtZW50IiwibmFtZSJdLCJtYXBwaW5ncyI6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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": "1.0.633",
4
+ "version": "1.0.635",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-verify-cli",
7
7
  "description": "Occam's Verifier",
@@ -13,12 +13,12 @@
13
13
  "argumentative": "^2.0.36",
14
14
  "necessary": "^17.0.9",
15
15
  "occam-file-system": "^6.0.505",
16
- "occam-furtle": "^3.0.113",
16
+ "occam-furtle": "^3.0.116",
17
17
  "occam-grammars": "^1.3.510",
18
- "occam-languages": "^0.0.83",
18
+ "occam-languages": "^0.0.88",
19
19
  "occam-lexers": "^23.1.34",
20
20
  "occam-model": "^1.0.494",
21
- "occam-nominal": "^1.0.40",
21
+ "occam-nominal": "^1.0.42",
22
22
  "occam-parsers": "^23.1.37"
23
23
  },
24
24
  "devDependencies": {
@@ -6,6 +6,8 @@ import { lexersUtilities, parsersUtilities } from "occam-nominal";
6
6
  import NominalLexer from "../nominal/lexer";
7
7
  import NominalParser from "../nominal/parser";
8
8
 
9
+ import { findMetaTypeByMetaTypeName } from "../metaTypes";
10
+
9
11
  const { nominalLexerFromNothing } = lexersUtilities,
10
12
  { nominalParserFromNothing } = parsersUtilities;
11
13
 
@@ -28,6 +30,12 @@ class NominalContext extends Context {
28
30
  return this.parser;
29
31
  }
30
32
 
33
+ findMetaTypeByMetaTypeName(metaTypeName) {
34
+ const metaType = findMetaTypeByMetaTypeName(metaTypeName);
35
+
36
+ return metaType;
37
+ }
38
+
31
39
  static fromNothing() {
32
40
  const context = null,
33
41
  lexer = nominalLexer, ///
@@ -24,9 +24,11 @@ export default define(class Conclusion extends Element {
24
24
  return conclusionNode;
25
25
  }
26
26
 
27
- verify(context) {
27
+ async verify(context) {
28
28
  let verifies = false;
29
29
 
30
+ await this.break(context);
31
+
30
32
  const conclusionString = this.getString(); ///
31
33
 
32
34
  context.trace(`Verifying the '${conclusionString}' conclusion...`);
@@ -24,9 +24,11 @@ export default define(class Deduction extends Element {
24
24
  return deductionNode;
25
25
  }
26
26
 
27
- verify(context) {
27
+ async verify(context) {
28
28
  let verifies = false;
29
29
 
30
+ await this.break(context);
31
+
30
32
  const deductionString = this.getString(); ///
31
33
 
32
34
  context.trace(`Verifying the '${deductionString}' deduction...`);
@@ -25,9 +25,11 @@ export default define(class Hypothesis extends Element {
25
25
  return hypothesisNode;
26
26
  }
27
27
 
28
- verify(context) {
28
+ async verify(context) {
29
29
  let verifies = false;
30
30
 
31
+ await this.break(context);
32
+
31
33
  const hypothesisString = this.getString(); ///
32
34
 
33
35
  context.trace(`Verifying the '${hypothesisString}' hypothesis...`);
@@ -66,7 +66,7 @@ export default define(class Section extends Element {
66
66
 
67
67
  if (hypothesesVerify) {
68
68
  const topLevelAssertion = (this.axiom || this.lemma || this.theorem || this.conjecture),
69
- topLevelAssertionVerifies = topLevelAssertion.verify(context);
69
+ topLevelAssertionVerifies = await topLevelAssertion.verify(context);
70
70
 
71
71
  if (topLevelAssertionVerifies) {
72
72
  topLevelAssertion.setHypotheses(this.hypotheses);
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
 
3
- import { Element } from "occam-languages";
4
3
  import { arrayUtilities } from "necessary";
5
-
6
- import assignAssignments from "../process/assign";
4
+ import { Element, asynchronousUtilities } from "occam-languages";
7
5
 
8
6
  import { define } from "../elements";
9
7
 
10
- const { last } = arrayUtilities;
8
+ import assignAssignments from "../process/assign";
9
+
10
+ const { last } = arrayUtilities,
11
+ { asyncEvery } = asynchronousUtilities;
11
12
 
12
13
  export default define(class SubDerivation extends Element {
13
14
  constructor(context, string, node, subproofOrProofAssertions) {
@@ -34,12 +35,12 @@ export default define(class SubDerivation extends Element {
34
35
  return lastProofAssertion;
35
36
  }
36
37
 
37
- verify(substitutions, context) {
38
+ async verify(context) {
38
39
  let verifies;
39
40
 
40
- verifies = this.subproofOrProofAssertions.every((subproofOrProofAssertion) => { ///
41
+ verifies = await asyncEvery(this.subproofOrProofAssertions, async (subproofOrProofAssertion) => { ///
41
42
  const assignments = [],
42
- subproofOrProofAssertionVarifies = subproofOrProofAssertion.verify(substitutions, assignments, context);
43
+ subproofOrProofAssertionVarifies = await subproofOrProofAssertion.verify(assignments, context);
43
44
 
44
45
  if (subproofOrProofAssertionVarifies) {
45
46
  assignAssignments(assignments, context);
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
- import { Element } from "occam-languages";
3
+ import { Element, asynchronousUtilities } from "occam-languages";
4
4
 
5
- import { scope } from "../utilities/context";
6
5
  import { define } from "../elements";
6
+ import { asyncScope } from "../utilities/context";
7
+
8
+ const { asyncEvery } = asynchronousUtilities;
7
9
 
8
10
  export default define(class Subproof extends Element {
9
11
  constructor(context, string, node, suppositions, subDerivation) {
@@ -52,12 +54,12 @@ export default define(class Subproof extends Element {
52
54
  return proofAssertion;
53
55
  }
54
56
 
55
- verify(substitutions, assignments, context) {
57
+ async verify(assignments, context) {
56
58
  let verifies = false;
57
59
 
58
- scope(() => {
59
- const suppositionsVerify = this.suppositions.every((supposition) => {
60
- const suppositionVerifies = supposition.verify(context);
60
+ await asyncScope(async () => {
61
+ const suppositionsVerify = asyncEvery(this.suppositions, async (supposition) => {
62
+ const suppositionVerifies = await supposition.verify(assignments, context);
61
63
 
62
64
  if (suppositionVerifies) {
63
65
  return true;
@@ -65,7 +67,7 @@ export default define(class Subproof extends Element {
65
67
  });
66
68
 
67
69
  if (suppositionsVerify) {
68
- const subDerivationVerifies = this.subDerivation.verify(substitutions, context);
70
+ const subDerivationVerifies = await this.subDerivation.verify(context);
69
71
 
70
72
  if (subDerivationVerifies) {
71
73
  verifies = true;