occam-verify-cli 0.0.940 → 0.0.942

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.
Files changed (67) hide show
  1. package/lib/frame.js +2 -2
  2. package/lib/premise.js +3 -3
  3. package/lib/proofStep.js +4 -3
  4. package/lib/rule.js +10 -3
  5. package/lib/substitution/termForVariable.js +3 -3
  6. package/lib/substitutions.js +186 -0
  7. package/lib/supposition.js +3 -3
  8. package/lib/topLevelAssertion.js +13 -12
  9. package/lib/unify/metavariableAgainstStatement.js +4 -4
  10. package/lib/unify/variableAgainstTerm.js +4 -4
  11. package/lib/utilities/array.js +13 -1
  12. package/lib/verifier/metaLevel.js +7 -7
  13. package/lib/verifier/statementAsCombinator.js +13 -7
  14. package/lib/verifier/termAsConstructor.js +5 -5
  15. package/lib/verifier/topLevel.js +236 -0
  16. package/lib/verify/axiom.js +3 -2
  17. package/lib/verify/conjecture.js +5 -3
  18. package/lib/verify/declaration/metavariable.js +70 -4
  19. package/lib/verify/declaration/type.js +36 -3
  20. package/lib/verify/declaration/variable.js +38 -3
  21. package/lib/verify/error.js +18 -0
  22. package/lib/verify/file.js +7 -21
  23. package/lib/verify/lemma.js +4 -3
  24. package/lib/verify/metaLemma.js +3 -2
  25. package/lib/verify/metatheorem.js +3 -2
  26. package/lib/verify/metavariable.js +4 -26
  27. package/lib/verify/rule.js +3 -2
  28. package/lib/verify/statement.js +4 -26
  29. package/lib/verify/term.js +4 -23
  30. package/lib/verify/theorem.js +4 -3
  31. package/lib/verify/type.js +10 -57
  32. package/lib/verify/variable.js +10 -59
  33. package/package.json +5 -5
  34. package/src/frame.js +1 -1
  35. package/src/premise.js +2 -2
  36. package/src/proofStep.js +3 -2
  37. package/src/rule.js +19 -3
  38. package/src/substitution/termForVariable.js +2 -2
  39. package/src/substitutions.js +103 -0
  40. package/src/supposition.js +2 -2
  41. package/src/topLevelAssertion.js +22 -15
  42. package/src/unify/metavariableAgainstStatement.js +3 -3
  43. package/src/unify/variableAgainstTerm.js +3 -3
  44. package/src/utilities/array.js +15 -0
  45. package/src/verifier/metaLevel.js +7 -9
  46. package/src/verifier/statementAsCombinator.js +18 -9
  47. package/src/verifier/termAsConstructor.js +6 -7
  48. package/src/verifier/topLevel.js +160 -0
  49. package/src/verify/axiom.js +2 -1
  50. package/src/verify/conjecture.js +5 -2
  51. package/src/verify/declaration/metavariable.js +112 -2
  52. package/src/verify/declaration/type.js +48 -1
  53. package/src/verify/declaration/variable.js +50 -1
  54. package/src/verify/error.js +11 -0
  55. package/src/verify/file.js +8 -29
  56. package/src/verify/lemma.js +3 -2
  57. package/src/verify/metaLemma.js +2 -1
  58. package/src/verify/metatheorem.js +2 -1
  59. package/src/verify/metavariable.js +0 -22
  60. package/src/verify/rule.js +2 -1
  61. package/src/verify/statement.js +0 -25
  62. package/src/verify/term.js +0 -19
  63. package/src/verify/theorem.js +3 -2
  64. package/src/verify/type.js +6 -56
  65. package/src/verify/variable.js +6 -58
  66. package/lib/verify/declaration/topLevel.js +0 -75
  67. package/src/verify/declaration/topLevel.js +0 -101
@@ -1,75 +1,23 @@
1
1
  "use strict";
2
2
 
3
- import Variable from "../variable";
4
- import VariableAssignment from "../assignment/variable";
5
-
6
- import { objectType } from "../type";
7
-
8
- export default function verifyVariable(variableNode, typeNode, fileContext) {
3
+ export default function verifyVariable(variableNode, localContext, verifyAhead) {
9
4
  let variableVerified = false;
10
5
 
11
- const variableString = fileContext.nodeAsString(variableNode);
12
-
13
- fileContext.trace(`Verifying the '${variableString}' variable...`, variableNode);
14
-
15
- const variablePresent = fileContext.isVariablePresentByVariableNode(variableNode);
16
-
17
- if (variablePresent) {
18
- fileContext.debug(`The variable '${variableString}' is already present.`, variableNode);
19
- } else {
20
- let variable;
21
-
22
- if (typeNode === null) {
23
- const type = objectType;
24
-
25
- variable = Variable.fromVariableNodeAndType(variableNode, type);
26
- } else {
27
- const type = fileContext.findTypeByTypeNode(typeNode);
28
-
29
- if (type === null) {
30
- const typeString = fileContext.nodeAsString(typeNode);
31
-
32
- fileContext.debug(`The '${variableString}' variable's '${typeString}' type is not present.`, variableNode);
33
- } else {
34
- variable = Variable.fromVariableNodeAndType(variableNode, type);
35
- }
36
- }
37
-
38
- if (variable !== null) {
39
- const variableAssignment = VariableAssignment.fromVariable(variable),
40
- variableAssigned = variableAssignment.assign(fileContext);
41
-
42
- if (variableAssigned) {
43
- variableVerified = true;
44
- }
45
- }
46
- }
47
-
48
- if (variableVerified) {
49
- fileContext.debug(`...verified the '${variableString}' variable.`, variableNode);
50
- }
51
-
52
- return variableVerified;
53
- }
54
-
55
- export function verifyStandaloneVariable(variableNode, localContext, verifyAhead) {
56
- let standaloneVariableVerified = false;
57
-
58
6
  const variableString = localContext.nodeAsString(variableNode);
59
7
 
60
- localContext.trace(`Verifying the '${variableString}' standalone variable...`, variableNode);
8
+ localContext.trace(`Verifying the '${variableString}' variable...`, variableNode);
61
9
 
62
10
  const variablePresent = localContext.isVariablePresentByVariableNode(variableNode);
63
11
 
64
12
  if (variablePresent) {
65
13
  const verifiedAhead = verifyAhead();
66
14
 
67
- standaloneVariableVerified = verifiedAhead; ///
15
+ variableVerified = verifiedAhead; ///
68
16
  }
69
17
 
70
- if (standaloneVariableVerified) {
71
- localContext.debug(`...verified the '${variableString}' standalone variable.`, variableNode);
18
+ if (variableVerified) {
19
+ localContext.debug(`...verified the '${variableString}' variable.`, variableNode);
72
20
  }
73
21
 
74
- return standaloneVariableVerified;
22
+ return variableVerified;
75
23
  }
@@ -1,75 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return verifyTopLevelDeclaration;
9
- }
10
- });
11
- var _rule = /*#__PURE__*/ _interop_require_default(require("../../verify/rule"));
12
- var _axiom = /*#__PURE__*/ _interop_require_default(require("../../verify/axiom"));
13
- var _lemma = /*#__PURE__*/ _interop_require_default(require("../../verify/lemma"));
14
- var _theorem = /*#__PURE__*/ _interop_require_default(require("../../verify/theorem"));
15
- var _metaLemma = /*#__PURE__*/ _interop_require_default(require("../../verify/metaLemma"));
16
- var _conjecture = /*#__PURE__*/ _interop_require_default(require("../../verify/conjecture"));
17
- var _metatheorem = /*#__PURE__*/ _interop_require_default(require("../../verify/metatheorem"));
18
- var _type = /*#__PURE__*/ _interop_require_default(require("../../verify/declaration/type"));
19
- var _variable = /*#__PURE__*/ _interop_require_default(require("../../verify/declaration/variable"));
20
- var _combinator = /*#__PURE__*/ _interop_require_default(require("../../verify/declaration/combinator"));
21
- var _constructor = /*#__PURE__*/ _interop_require_default(require("../../verify/declaration/constructor"));
22
- var _metavariable = /*#__PURE__*/ _interop_require_default(require("../../verify/declaration/metavariable"));
23
- var _query = require("../../utilities/query");
24
- function _interop_require_default(obj) {
25
- return obj && obj.__esModule ? obj : {
26
- default: obj
27
- };
28
- }
29
- var ruleNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/rule!"), axiomNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/axiom!"), lemmaNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/lemma!"), theoremNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/theorem!"), metaLemmaNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/metaLemma!"), conjectureNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/conjecture!"), metatheoremNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/metatheorem!"), typeDeclarationNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/typeDeclaration!"), variableDeclarationNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/variableDeclaration!"), combinatorDeclarationNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/combinatorDeclaration!"), constructorDeclarationNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/constructorDeclaration!"), metavariableDeclarationNodeQuery = (0, _query.nodeQuery)("/topLevelDeclaration/metavariableDeclaration!");
30
- function verifyTopLevelDeclaration(topLevelDeclarationNode, fileContext) {
31
- var topLevelDeclarationVerified = false;
32
- var node = topLevelDeclarationNode, ruleNode = ruleNodeQuery(node), axiomNode = axiomNodeQuery(node), lemmaNode = lemmaNodeQuery(node), theoremNode = theoremNodeQuery(node), metaLemmaNode = metaLemmaNodeQuery(node), conjectureNode = conjectureNodeQuery(node), metatheoremNode = metatheoremNodeQuery(node), typeDeclarationNode = typeDeclarationNodeQuery(node), variableDeclarationNode = variableDeclarationNodeQuery(node), combinatorDeclarationNode = combinatorDeclarationNodeQuery(node), constructorDeclarationNode = constructorDeclarationNodeQuery(node), metavariableDeclarationNode = metavariableDeclarationNodeQuery(node);
33
- if (false) {
34
- ///
35
- } else if (ruleNode !== null) {
36
- var ruleVerified = (0, _rule.default)(ruleNode, fileContext);
37
- topLevelDeclarationVerified = ruleVerified; ///
38
- } else if (axiomNode !== null) {
39
- var axiomVerified = (0, _axiom.default)(axiomNode, fileContext);
40
- topLevelDeclarationVerified = axiomVerified; ///
41
- } else if (lemmaNode !== null) {
42
- var lemmaVerified = (0, _lemma.default)(lemmaNode, fileContext);
43
- topLevelDeclarationVerified = lemmaVerified; ///
44
- } else if (theoremNode !== null) {
45
- var theoremVerified = (0, _theorem.default)(theoremNode, fileContext);
46
- topLevelDeclarationVerified = theoremVerified; ///
47
- } else if (metaLemmaNode !== null) {
48
- var metaLemmaVerified = (0, _metaLemma.default)(metaLemmaNode, fileContext);
49
- topLevelDeclarationVerified = metaLemmaVerified; ///
50
- } else if (conjectureNode !== null) {
51
- var conjectureVerified = (0, _conjecture.default)(conjectureNode, fileContext);
52
- topLevelDeclarationVerified = conjectureVerified; ///
53
- } else if (metatheoremNode !== null) {
54
- var metatheoremVerified = (0, _metatheorem.default)(metatheoremNode, fileContext);
55
- topLevelDeclarationVerified = metatheoremVerified; ///
56
- } else if (typeDeclarationNode !== null) {
57
- var typeDeclarationVerified = (0, _type.default)(typeDeclarationNode, fileContext);
58
- topLevelDeclarationVerified = typeDeclarationVerified; ///
59
- } else if (variableDeclarationNode !== null) {
60
- var variableDeclarationVerified = (0, _variable.default)(variableDeclarationNode, fileContext);
61
- topLevelDeclarationVerified = variableDeclarationVerified; ///
62
- } else if (combinatorDeclarationNode !== null) {
63
- var combinatorDeclarationVerified = (0, _combinator.default)(combinatorDeclarationNode, fileContext);
64
- topLevelDeclarationVerified = combinatorDeclarationVerified; ///
65
- } else if (constructorDeclarationNode !== null) {
66
- var constructorDeclarationVerified = (0, _constructor.default)(constructorDeclarationNode, fileContext);
67
- topLevelDeclarationVerified = constructorDeclarationVerified; ///
68
- } else if (metavariableDeclarationNode !== null) {
69
- var metavariableDeclarationVerified = (0, _metavariable.default)(metavariableDeclarationNode, fileContext);
70
- topLevelDeclarationVerified = metavariableDeclarationVerified; ///
71
- }
72
- return topLevelDeclarationVerified;
73
- }
74
-
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvZGVjbGFyYXRpb24vdG9wTGV2ZWwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB2ZXJpZnlSdWxlIGZyb20gXCIuLi8uLi92ZXJpZnkvcnVsZVwiO1xuaW1wb3J0IHZlcmlmeUF4aW9tIGZyb20gXCIuLi8uLi92ZXJpZnkvYXhpb21cIjtcbmltcG9ydCB2ZXJpZnlMZW1tYSBmcm9tIFwiLi4vLi4vdmVyaWZ5L2xlbW1hXCI7XG5pbXBvcnQgdmVyaWZ5VGhlb3JlbSBmcm9tIFwiLi4vLi4vdmVyaWZ5L3RoZW9yZW1cIjtcbmltcG9ydCB2ZXJpZnlNZXRhTGVtbWEgZnJvbSBcIi4uLy4uL3ZlcmlmeS9tZXRhTGVtbWFcIjtcbmltcG9ydCB2ZXJpZnlDb25qZWN0dXJlIGZyb20gXCIuLi8uLi92ZXJpZnkvY29uamVjdHVyZVwiO1xuaW1wb3J0IHZlcmlmeU1ldGF0aGVvcmVtIGZyb20gXCIuLi8uLi92ZXJpZnkvbWV0YXRoZW9yZW1cIjtcbmltcG9ydCB2ZXJpZnlUeXBlRGVjbGFyYXRpb24gZnJvbSBcIi4uLy4uL3ZlcmlmeS9kZWNsYXJhdGlvbi90eXBlXCI7XG5pbXBvcnQgdmVyaWZ5VmFyaWFibGVEZWNsYXJhdGlvbiBmcm9tIFwiLi4vLi4vdmVyaWZ5L2RlY2xhcmF0aW9uL3ZhcmlhYmxlXCI7XG5pbXBvcnQgdmVyaWZ5Q29tYmluYXRvckRlY2xhcmF0aW9uIGZyb20gXCIuLi8uLi92ZXJpZnkvZGVjbGFyYXRpb24vY29tYmluYXRvclwiO1xuaW1wb3J0IHZlcmlmeUNvbnN0cnVjdG9yRGVjbGFyYXRpb24gZnJvbSBcIi4uLy4uL3ZlcmlmeS9kZWNsYXJhdGlvbi9jb25zdHJ1Y3RvclwiO1xuaW1wb3J0IHZlcmlmeU1ldGF2YXJpYWJsZURlY2xhcmF0aW9uIGZyb20gXCIuLi8uLi92ZXJpZnkvZGVjbGFyYXRpb24vbWV0YXZhcmlhYmxlXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgcnVsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90b3BMZXZlbERlY2xhcmF0aW9uL3J1bGUhXCIpLFxuICAgICAgYXhpb21Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdG9wTGV2ZWxEZWNsYXJhdGlvbi9heGlvbSFcIiksXG4gICAgICBsZW1tYU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90b3BMZXZlbERlY2xhcmF0aW9uL2xlbW1hIVwiKSxcbiAgICAgIHRoZW9yZW1Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdG9wTGV2ZWxEZWNsYXJhdGlvbi90aGVvcmVtIVwiKSxcbiAgICAgIG1ldGFMZW1tYU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90b3BMZXZlbERlY2xhcmF0aW9uL21ldGFMZW1tYSFcIiksXG4gICAgICBjb25qZWN0dXJlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3RvcExldmVsRGVjbGFyYXRpb24vY29uamVjdHVyZSFcIiksXG4gICAgICBtZXRhdGhlb3JlbU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90b3BMZXZlbERlY2xhcmF0aW9uL21ldGF0aGVvcmVtIVwiKSxcbiAgICAgIHR5cGVEZWNsYXJhdGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90b3BMZXZlbERlY2xhcmF0aW9uL3R5cGVEZWNsYXJhdGlvbiFcIiksXG4gICAgICB2YXJpYWJsZURlY2xhcmF0aW9uTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL3RvcExldmVsRGVjbGFyYXRpb24vdmFyaWFibGVEZWNsYXJhdGlvbiFcIiksXG4gICAgICBjb21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdG9wTGV2ZWxEZWNsYXJhdGlvbi9jb21iaW5hdG9yRGVjbGFyYXRpb24hXCIpLFxuICAgICAgY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90b3BMZXZlbERlY2xhcmF0aW9uL2NvbnN0cnVjdG9yRGVjbGFyYXRpb24hXCIpLFxuICAgICAgbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvdG9wTGV2ZWxEZWNsYXJhdGlvbi9tZXRhdmFyaWFibGVEZWNsYXJhdGlvbiFcIik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeVRvcExldmVsRGVjbGFyYXRpb24odG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KSB7XG4gIGxldCB0b3BMZXZlbERlY2xhcmF0aW9uVmVyaWZpZWQgPSBmYWxzZTtcblxuICBjb25zdCBub2RlID0gdG9wTGV2ZWxEZWNsYXJhdGlvbk5vZGUsIC8vL1xuICAgICAgICBydWxlTm9kZSA9IHJ1bGVOb2RlUXVlcnkobm9kZSksXG4gICAgICAgIGF4aW9tTm9kZSA9IGF4aW9tTm9kZVF1ZXJ5KG5vZGUpLFxuICAgICAgICBsZW1tYU5vZGUgPSBsZW1tYU5vZGVRdWVyeShub2RlKSxcbiAgICAgICAgdGhlb3JlbU5vZGUgPSB0aGVvcmVtTm9kZVF1ZXJ5KG5vZGUpLFxuICAgICAgICBtZXRhTGVtbWFOb2RlID0gbWV0YUxlbW1hTm9kZVF1ZXJ5KG5vZGUpLFxuICAgICAgICBjb25qZWN0dXJlTm9kZSA9IGNvbmplY3R1cmVOb2RlUXVlcnkobm9kZSksXG4gICAgICAgIG1ldGF0aGVvcmVtTm9kZSA9IG1ldGF0aGVvcmVtTm9kZVF1ZXJ5KG5vZGUpLFxuICAgICAgICB0eXBlRGVjbGFyYXRpb25Ob2RlID0gdHlwZURlY2xhcmF0aW9uTm9kZVF1ZXJ5KG5vZGUpLFxuICAgICAgICB2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSA9IHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlUXVlcnkobm9kZSksXG4gICAgICAgIGNvbWJpbmF0b3JEZWNsYXJhdGlvbk5vZGUgPSBjb21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlUXVlcnkobm9kZSksXG4gICAgICAgIGNvbnN0cnVjdG9yRGVjbGFyYXRpb25Ob2RlID0gY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGVRdWVyeShub2RlKSxcbiAgICAgICAgbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlID0gbWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlUXVlcnkobm9kZSk7XG5cbiAgaWYgKGZhbHNlKSB7XG4gICAgLy8vXG4gIH0gZWxzZSBpZiAocnVsZU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBydWxlVmVyaWZpZWQgPSB2ZXJpZnlSdWxlKHJ1bGVOb2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICB0b3BMZXZlbERlY2xhcmF0aW9uVmVyaWZpZWQgPSBydWxlVmVyaWZpZWQ7ICAvLy9cbiAgfSBlbHNlIGlmIChheGlvbU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBheGlvbVZlcmlmaWVkID0gdmVyaWZ5QXhpb20oYXhpb21Ob2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICB0b3BMZXZlbERlY2xhcmF0aW9uVmVyaWZpZWQgPSBheGlvbVZlcmlmaWVkOyAgLy8vXG4gIH0gZWxzZSBpZiAobGVtbWFOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgbGVtbWFWZXJpZmllZCA9IHZlcmlmeUxlbW1hKGxlbW1hTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgdG9wTGV2ZWxEZWNsYXJhdGlvblZlcmlmaWVkID0gbGVtbWFWZXJpZmllZDsgIC8vL1xuICB9IGVsc2UgaWYgKHRoZW9yZW1Ob2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdGhlb3JlbVZlcmlmaWVkID0gdmVyaWZ5VGhlb3JlbSh0aGVvcmVtTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgdG9wTGV2ZWxEZWNsYXJhdGlvblZlcmlmaWVkID0gdGhlb3JlbVZlcmlmaWVkOyAgLy8vXG4gIH0gZWxzZSBpZiAobWV0YUxlbW1hTm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG1ldGFMZW1tYVZlcmlmaWVkID0gdmVyaWZ5TWV0YUxlbW1hKG1ldGFMZW1tYU5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgIHRvcExldmVsRGVjbGFyYXRpb25WZXJpZmllZCA9IG1ldGFMZW1tYVZlcmlmaWVkOyAgLy8vXG4gIH0gZWxzZSBpZiAoY29uamVjdHVyZU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBjb25qZWN0dXJlVmVyaWZpZWQgPSB2ZXJpZnlDb25qZWN0dXJlKGNvbmplY3R1cmVOb2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICB0b3BMZXZlbERlY2xhcmF0aW9uVmVyaWZpZWQgPSBjb25qZWN0dXJlVmVyaWZpZWQ7ICAvLy9cbiAgfSBlbHNlIGlmIChtZXRhdGhlb3JlbU5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCBtZXRhdGhlb3JlbVZlcmlmaWVkID0gdmVyaWZ5TWV0YXRoZW9yZW0obWV0YXRoZW9yZW1Ob2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICB0b3BMZXZlbERlY2xhcmF0aW9uVmVyaWZpZWQgPSBtZXRhdGhlb3JlbVZlcmlmaWVkOyAgLy8vXG4gIH0gZWxzZSBpZiAodHlwZURlY2xhcmF0aW9uTm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IHR5cGVEZWNsYXJhdGlvblZlcmlmaWVkID0gdmVyaWZ5VHlwZURlY2xhcmF0aW9uKHR5cGVEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgIHRvcExldmVsRGVjbGFyYXRpb25WZXJpZmllZCA9IHR5cGVEZWNsYXJhdGlvblZlcmlmaWVkOyAgLy8vXG4gIH0gZWxzZSBpZiAodmFyaWFibGVEZWNsYXJhdGlvbk5vZGUgIT09IG51bGwpIHtcbiAgICBjb25zdCB2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlWYXJpYWJsZURlY2xhcmF0aW9uKHZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlLCBmaWxlQ29udGV4dCk7XG5cbiAgICB0b3BMZXZlbERlY2xhcmF0aW9uVmVyaWZpZWQgPSB2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQ7ICAvLy9cbiAgfSBlbHNlIGlmIChjb21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgY29tYmluYXRvckRlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlDb21iaW5hdG9yRGVjbGFyYXRpb24oY29tYmluYXRvckRlY2xhcmF0aW9uTm9kZSwgZmlsZUNvbnRleHQpO1xuXG4gICAgdG9wTGV2ZWxEZWNsYXJhdGlvblZlcmlmaWVkID0gY29tYmluYXRvckRlY2xhcmF0aW9uVmVyaWZpZWQ7ICAvLy9cbiAgfSBlbHNlIGlmIChjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGNvbnN0cnVjdG9yRGVjbGFyYXRpb25WZXJpZmllZCA9IHZlcmlmeUNvbnN0cnVjdG9yRGVjbGFyYXRpb24oY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgIHRvcExldmVsRGVjbGFyYXRpb25WZXJpZmllZCA9IGNvbnN0cnVjdG9yRGVjbGFyYXRpb25WZXJpZmllZDsgIC8vL1xuICB9IGVsc2UgaWYgKG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uTm9kZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQgPSB2ZXJpZnlNZXRhdmFyaWFibGVEZWNsYXJhdGlvbihtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUsIGZpbGVDb250ZXh0KTtcblxuICAgIHRvcExldmVsRGVjbGFyYXRpb25WZXJpZmllZCA9IG1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQ7ICAvLy9cbiAgfVxuXG4gIHJldHVybiB0b3BMZXZlbERlY2xhcmF0aW9uVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VG9wTGV2ZWxEZWNsYXJhdGlvbiIsInJ1bGVOb2RlUXVlcnkiLCJub2RlUXVlcnkiLCJheGlvbU5vZGVRdWVyeSIsImxlbW1hTm9kZVF1ZXJ5IiwidGhlb3JlbU5vZGVRdWVyeSIsIm1ldGFMZW1tYU5vZGVRdWVyeSIsImNvbmplY3R1cmVOb2RlUXVlcnkiLCJtZXRhdGhlb3JlbU5vZGVRdWVyeSIsInR5cGVEZWNsYXJhdGlvbk5vZGVRdWVyeSIsInZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlUXVlcnkiLCJjb21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlUXVlcnkiLCJjb25zdHJ1Y3RvckRlY2xhcmF0aW9uTm9kZVF1ZXJ5IiwibWV0YXZhcmlhYmxlRGVjbGFyYXRpb25Ob2RlUXVlcnkiLCJ0b3BMZXZlbERlY2xhcmF0aW9uTm9kZSIsImZpbGVDb250ZXh0IiwidG9wTGV2ZWxEZWNsYXJhdGlvblZlcmlmaWVkIiwibm9kZSIsInJ1bGVOb2RlIiwiYXhpb21Ob2RlIiwibGVtbWFOb2RlIiwidGhlb3JlbU5vZGUiLCJtZXRhTGVtbWFOb2RlIiwiY29uamVjdHVyZU5vZGUiLCJtZXRhdGhlb3JlbU5vZGUiLCJ0eXBlRGVjbGFyYXRpb25Ob2RlIiwidmFyaWFibGVEZWNsYXJhdGlvbk5vZGUiLCJjb21iaW5hdG9yRGVjbGFyYXRpb25Ob2RlIiwiY29uc3RydWN0b3JEZWNsYXJhdGlvbk5vZGUiLCJtZXRhdmFyaWFibGVEZWNsYXJhdGlvbk5vZGUiLCJydWxlVmVyaWZpZWQiLCJ2ZXJpZnlSdWxlIiwiYXhpb21WZXJpZmllZCIsInZlcmlmeUF4aW9tIiwibGVtbWFWZXJpZmllZCIsInZlcmlmeUxlbW1hIiwidGhlb3JlbVZlcmlmaWVkIiwidmVyaWZ5VGhlb3JlbSIsIm1ldGFMZW1tYVZlcmlmaWVkIiwidmVyaWZ5TWV0YUxlbW1hIiwiY29uamVjdHVyZVZlcmlmaWVkIiwidmVyaWZ5Q29uamVjdHVyZSIsIm1ldGF0aGVvcmVtVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhdGhlb3JlbSIsInR5cGVEZWNsYXJhdGlvblZlcmlmaWVkIiwidmVyaWZ5VHlwZURlY2xhcmF0aW9uIiwidmFyaWFibGVEZWNsYXJhdGlvblZlcmlmaWVkIiwidmVyaWZ5VmFyaWFibGVEZWNsYXJhdGlvbiIsImNvbWJpbmF0b3JEZWNsYXJhdGlvblZlcmlmaWVkIiwidmVyaWZ5Q29tYmluYXRvckRlY2xhcmF0aW9uIiwiY29uc3RydWN0b3JEZWNsYXJhdGlvblZlcmlmaWVkIiwidmVyaWZ5Q29uc3RydWN0b3JEZWNsYXJhdGlvbiIsIm1ldGF2YXJpYWJsZURlY2xhcmF0aW9uVmVyaWZpZWQiLCJ2ZXJpZnlNZXRhdmFyaWFibGVEZWNsYXJhdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBOEJBOzs7ZUFBd0JBOzs7MkRBNUJEOzREQUNDOzREQUNBOzhEQUNFO2dFQUNFO2lFQUNDO2tFQUNDOzJEQUNJOytEQUNJO2lFQUNFO2tFQUNDO21FQUNDO3FCQUVoQjs7Ozs7O0FBRTFCLElBQU1DLGdCQUFnQkMsSUFBQUEsZ0JBQVMsRUFBQywrQkFDMUJDLGlCQUFpQkQsSUFBQUEsZ0JBQVMsRUFBQyxnQ0FDM0JFLGlCQUFpQkYsSUFBQUEsZ0JBQVMsRUFBQyxnQ0FDM0JHLG1CQUFtQkgsSUFBQUEsZ0JBQVMsRUFBQyxrQ0FDN0JJLHFCQUFxQkosSUFBQUEsZ0JBQVMsRUFBQyxvQ0FDL0JLLHNCQUFzQkwsSUFBQUEsZ0JBQVMsRUFBQyxxQ0FDaENNLHVCQUF1Qk4sSUFBQUEsZ0JBQVMsRUFBQyxzQ0FDakNPLDJCQUEyQlAsSUFBQUEsZ0JBQVMsRUFBQywwQ0FDckNRLCtCQUErQlIsSUFBQUEsZ0JBQVMsRUFBQyw4Q0FDekNTLGlDQUFpQ1QsSUFBQUEsZ0JBQVMsRUFBQyxnREFDM0NVLGtDQUFrQ1YsSUFBQUEsZ0JBQVMsRUFBQyxpREFDNUNXLG1DQUFtQ1gsSUFBQUEsZ0JBQVMsRUFBQztBQUVwQyxTQUFTRiwwQkFBMEJjLHVCQUF1QixFQUFFQyxXQUFXO0lBQ3BGLElBQUlDLDhCQUE4QjtJQUVsQyxJQUFNQyxPQUFPSCx5QkFDUEksV0FBV2pCLGNBQWNnQixPQUN6QkUsWUFBWWhCLGVBQWVjLE9BQzNCRyxZQUFZaEIsZUFBZWEsT0FDM0JJLGNBQWNoQixpQkFBaUJZLE9BQy9CSyxnQkFBZ0JoQixtQkFBbUJXLE9BQ25DTSxpQkFBaUJoQixvQkFBb0JVLE9BQ3JDTyxrQkFBa0JoQixxQkFBcUJTLE9BQ3ZDUSxzQkFBc0JoQix5QkFBeUJRLE9BQy9DUywwQkFBMEJoQiw2QkFBNkJPLE9BQ3ZEVSw0QkFBNEJoQiwrQkFBK0JNLE9BQzNEVyw2QkFBNkJoQixnQ0FBZ0NLLE9BQzdEWSw4QkFBOEJoQixpQ0FBaUNJO0lBRXJFLElBQUksT0FBTztJQUNULEdBQUc7SUFDTCxPQUFPLElBQUlDLGFBQWEsTUFBTTtRQUM1QixJQUFNWSxlQUFlQyxJQUFBQSxhQUFVLEVBQUNiLFVBQVVIO1FBRTFDQyw4QkFBOEJjLGNBQWUsR0FBRztJQUNsRCxPQUFPLElBQUlYLGNBQWMsTUFBTTtRQUM3QixJQUFNYSxnQkFBZ0JDLElBQUFBLGNBQVcsRUFBQ2QsV0FBV0o7UUFFN0NDLDhCQUE4QmdCLGVBQWdCLEdBQUc7SUFDbkQsT0FBTyxJQUFJWixjQUFjLE1BQU07UUFDN0IsSUFBTWMsZ0JBQWdCQyxJQUFBQSxjQUFXLEVBQUNmLFdBQVdMO1FBRTdDQyw4QkFBOEJrQixlQUFnQixHQUFHO0lBQ25ELE9BQU8sSUFBSWIsZ0JBQWdCLE1BQU07UUFDL0IsSUFBTWUsa0JBQWtCQyxJQUFBQSxnQkFBYSxFQUFDaEIsYUFBYU47UUFFbkRDLDhCQUE4Qm9CLGlCQUFrQixHQUFHO0lBQ3JELE9BQU8sSUFBSWQsa0JBQWtCLE1BQU07UUFDakMsSUFBTWdCLG9CQUFvQkMsSUFBQUEsa0JBQWUsRUFBQ2pCLGVBQWVQO1FBRXpEQyw4QkFBOEJzQixtQkFBb0IsR0FBRztJQUN2RCxPQUFPLElBQUlmLG1CQUFtQixNQUFNO1FBQ2xDLElBQU1pQixxQkFBcUJDLElBQUFBLG1CQUFnQixFQUFDbEIsZ0JBQWdCUjtRQUU1REMsOEJBQThCd0Isb0JBQXFCLEdBQUc7SUFDeEQsT0FBTyxJQUFJaEIsb0JBQW9CLE1BQU07UUFDbkMsSUFBTWtCLHNCQUFzQkMsSUFBQUEsb0JBQWlCLEVBQUNuQixpQkFBaUJUO1FBRS9EQyw4QkFBOEIwQixxQkFBc0IsR0FBRztJQUN6RCxPQUFPLElBQUlqQix3QkFBd0IsTUFBTTtRQUN2QyxJQUFNbUIsMEJBQTBCQyxJQUFBQSxhQUFxQixFQUFDcEIscUJBQXFCVjtRQUUzRUMsOEJBQThCNEIseUJBQTBCLEdBQUc7SUFDN0QsT0FBTyxJQUFJbEIsNEJBQTRCLE1BQU07UUFDM0MsSUFBTW9CLDhCQUE4QkMsSUFBQUEsaUJBQXlCLEVBQUNyQix5QkFBeUJYO1FBRXZGQyw4QkFBOEI4Qiw2QkFBOEIsR0FBRztJQUNqRSxPQUFPLElBQUluQiw4QkFBOEIsTUFBTTtRQUM3QyxJQUFNcUIsZ0NBQWdDQyxJQUFBQSxtQkFBMkIsRUFBQ3RCLDJCQUEyQlo7UUFFN0ZDLDhCQUE4QmdDLCtCQUFnQyxHQUFHO0lBQ25FLE9BQU8sSUFBSXBCLCtCQUErQixNQUFNO1FBQzlDLElBQU1zQixpQ0FBaUNDLElBQUFBLG9CQUE0QixFQUFDdkIsNEJBQTRCYjtRQUVoR0MsOEJBQThCa0MsZ0NBQWlDLEdBQUc7SUFDcEUsT0FBTyxJQUFJckIsZ0NBQWdDLE1BQU07UUFDL0MsSUFBTXVCLGtDQUFrQ0MsSUFBQUEscUJBQTZCLEVBQUN4Qiw2QkFBNkJkO1FBRW5HQyw4QkFBOEJvQyxpQ0FBa0MsR0FBRztJQUNyRTtJQUVBLE9BQU9wQztBQUNUIn0=
@@ -1,101 +0,0 @@
1
- "use strict";
2
-
3
- import verifyRule from "../../verify/rule";
4
- import verifyAxiom from "../../verify/axiom";
5
- import verifyLemma from "../../verify/lemma";
6
- import verifyTheorem from "../../verify/theorem";
7
- import verifyMetaLemma from "../../verify/metaLemma";
8
- import verifyConjecture from "../../verify/conjecture";
9
- import verifyMetatheorem from "../../verify/metatheorem";
10
- import verifyTypeDeclaration from "../../verify/declaration/type";
11
- import verifyVariableDeclaration from "../../verify/declaration/variable";
12
- import verifyCombinatorDeclaration from "../../verify/declaration/combinator";
13
- import verifyConstructorDeclaration from "../../verify/declaration/constructor";
14
- import verifyMetavariableDeclaration from "../../verify/declaration/metavariable";
15
-
16
- import { nodeQuery } from "../../utilities/query";
17
-
18
- const ruleNodeQuery = nodeQuery("/topLevelDeclaration/rule!"),
19
- axiomNodeQuery = nodeQuery("/topLevelDeclaration/axiom!"),
20
- lemmaNodeQuery = nodeQuery("/topLevelDeclaration/lemma!"),
21
- theoremNodeQuery = nodeQuery("/topLevelDeclaration/theorem!"),
22
- metaLemmaNodeQuery = nodeQuery("/topLevelDeclaration/metaLemma!"),
23
- conjectureNodeQuery = nodeQuery("/topLevelDeclaration/conjecture!"),
24
- metatheoremNodeQuery = nodeQuery("/topLevelDeclaration/metatheorem!"),
25
- typeDeclarationNodeQuery = nodeQuery("/topLevelDeclaration/typeDeclaration!"),
26
- variableDeclarationNodeQuery = nodeQuery("/topLevelDeclaration/variableDeclaration!"),
27
- combinatorDeclarationNodeQuery = nodeQuery("/topLevelDeclaration/combinatorDeclaration!"),
28
- constructorDeclarationNodeQuery = nodeQuery("/topLevelDeclaration/constructorDeclaration!"),
29
- metavariableDeclarationNodeQuery = nodeQuery("/topLevelDeclaration/metavariableDeclaration!");
30
-
31
- export default function verifyTopLevelDeclaration(topLevelDeclarationNode, fileContext) {
32
- let topLevelDeclarationVerified = false;
33
-
34
- const node = topLevelDeclarationNode, ///
35
- ruleNode = ruleNodeQuery(node),
36
- axiomNode = axiomNodeQuery(node),
37
- lemmaNode = lemmaNodeQuery(node),
38
- theoremNode = theoremNodeQuery(node),
39
- metaLemmaNode = metaLemmaNodeQuery(node),
40
- conjectureNode = conjectureNodeQuery(node),
41
- metatheoremNode = metatheoremNodeQuery(node),
42
- typeDeclarationNode = typeDeclarationNodeQuery(node),
43
- variableDeclarationNode = variableDeclarationNodeQuery(node),
44
- combinatorDeclarationNode = combinatorDeclarationNodeQuery(node),
45
- constructorDeclarationNode = constructorDeclarationNodeQuery(node),
46
- metavariableDeclarationNode = metavariableDeclarationNodeQuery(node);
47
-
48
- if (false) {
49
- ///
50
- } else if (ruleNode !== null) {
51
- const ruleVerified = verifyRule(ruleNode, fileContext);
52
-
53
- topLevelDeclarationVerified = ruleVerified; ///
54
- } else if (axiomNode !== null) {
55
- const axiomVerified = verifyAxiom(axiomNode, fileContext);
56
-
57
- topLevelDeclarationVerified = axiomVerified; ///
58
- } else if (lemmaNode !== null) {
59
- const lemmaVerified = verifyLemma(lemmaNode, fileContext);
60
-
61
- topLevelDeclarationVerified = lemmaVerified; ///
62
- } else if (theoremNode !== null) {
63
- const theoremVerified = verifyTheorem(theoremNode, fileContext);
64
-
65
- topLevelDeclarationVerified = theoremVerified; ///
66
- } else if (metaLemmaNode !== null) {
67
- const metaLemmaVerified = verifyMetaLemma(metaLemmaNode, fileContext);
68
-
69
- topLevelDeclarationVerified = metaLemmaVerified; ///
70
- } else if (conjectureNode !== null) {
71
- const conjectureVerified = verifyConjecture(conjectureNode, fileContext);
72
-
73
- topLevelDeclarationVerified = conjectureVerified; ///
74
- } else if (metatheoremNode !== null) {
75
- const metatheoremVerified = verifyMetatheorem(metatheoremNode, fileContext);
76
-
77
- topLevelDeclarationVerified = metatheoremVerified; ///
78
- } else if (typeDeclarationNode !== null) {
79
- const typeDeclarationVerified = verifyTypeDeclaration(typeDeclarationNode, fileContext);
80
-
81
- topLevelDeclarationVerified = typeDeclarationVerified; ///
82
- } else if (variableDeclarationNode !== null) {
83
- const variableDeclarationVerified = verifyVariableDeclaration(variableDeclarationNode, fileContext);
84
-
85
- topLevelDeclarationVerified = variableDeclarationVerified; ///
86
- } else if (combinatorDeclarationNode !== null) {
87
- const combinatorDeclarationVerified = verifyCombinatorDeclaration(combinatorDeclarationNode, fileContext);
88
-
89
- topLevelDeclarationVerified = combinatorDeclarationVerified; ///
90
- } else if (constructorDeclarationNode !== null) {
91
- const constructorDeclarationVerified = verifyConstructorDeclaration(constructorDeclarationNode, fileContext);
92
-
93
- topLevelDeclarationVerified = constructorDeclarationVerified; ///
94
- } else if (metavariableDeclarationNode !== null) {
95
- const metavariableDeclarationVerified = verifyMetavariableDeclaration(metavariableDeclarationNode, fileContext);
96
-
97
- topLevelDeclarationVerified = metavariableDeclarationVerified; ///
98
- }
99
-
100
- return topLevelDeclarationVerified;
101
- }