occam-verify-cli 1.0.405 → 1.0.414

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 (122) hide show
  1. package/lib/context/file.js +3 -3
  2. package/lib/context/local.js +3 -3
  3. package/lib/context/release.js +2 -2
  4. package/lib/context/temporary.js +103 -54
  5. package/lib/mixins/statement/verify.js +2 -2
  6. package/lib/mixins/step/unify.js +2 -2
  7. package/lib/node/argument.js +2 -2
  8. package/lib/node/assumption.js +6 -6
  9. package/lib/node/frame.js +19 -7
  10. package/lib/node/judgement.js +8 -1
  11. package/lib/node/statement.js +34 -15
  12. package/lib/node/substitution/term.js +3 -11
  13. package/lib/node/term.js +20 -8
  14. package/lib/nonTerminalNode.js +3 -3
  15. package/lib/ontology/assertion/contained.js +7 -7
  16. package/lib/ontology/assertion/defined.js +8 -8
  17. package/lib/ontology/assertion/subproof.js +3 -3
  18. package/lib/ontology/assumption.js +49 -45
  19. package/lib/ontology/combinator.js +3 -3
  20. package/lib/ontology/constructor.js +3 -3
  21. package/lib/ontology/equality.js +4 -4
  22. package/lib/ontology/equivalence.js +2 -2
  23. package/lib/ontology/frame.js +37 -12
  24. package/lib/ontology/judgement.js +13 -6
  25. package/lib/ontology/metavariable.js +75 -76
  26. package/lib/ontology/propertyRelation.js +2 -2
  27. package/lib/ontology/reference.js +33 -4
  28. package/lib/ontology/signature.js +2 -2
  29. package/lib/ontology/statement.js +33 -8
  30. package/lib/ontology/step.js +4 -4
  31. package/lib/ontology/substitution/frame.js +13 -15
  32. package/lib/ontology/substitution/statement.js +31 -32
  33. package/lib/ontology/substitution/term.js +26 -25
  34. package/lib/ontology/substitution.js +2 -2
  35. package/lib/ontology/substitutions.js +4 -4
  36. package/lib/ontology/term.js +26 -12
  37. package/lib/ontology/variable.js +2 -2
  38. package/lib/process/equate.js +322 -0
  39. package/lib/process/unify.js +623 -0
  40. package/lib/process/verify.js +332 -0
  41. package/lib/utilities/brackets.js +3 -8
  42. package/lib/utilities/context.js +4 -14
  43. package/lib/utilities/json.js +18 -1
  44. package/lib/utilities/pass.js +68 -0
  45. package/lib/utilities/substitutions.js +11 -16
  46. package/package.json +2 -2
  47. package/src/context/file.js +2 -2
  48. package/src/context/local.js +2 -2
  49. package/src/context/release.js +1 -1
  50. package/src/context/temporary.js +124 -54
  51. package/src/mixins/statement/verify.js +3 -1
  52. package/src/mixins/step/unify.js +0 -1
  53. package/src/node/argument.js +1 -1
  54. package/src/node/assumption.js +4 -4
  55. package/src/node/frame.js +19 -5
  56. package/src/node/judgement.js +7 -0
  57. package/src/node/statement.js +35 -13
  58. package/src/node/substitution/term.js +4 -14
  59. package/src/node/term.js +20 -6
  60. package/src/nonTerminalNode.js +1 -1
  61. package/src/ontology/assertion/contained.js +6 -6
  62. package/src/ontology/assertion/defined.js +7 -7
  63. package/src/ontology/assertion/subproof.js +1 -1
  64. package/src/ontology/assumption.js +52 -57
  65. package/src/ontology/combinator.js +1 -1
  66. package/src/ontology/constructor.js +1 -1
  67. package/src/ontology/equality.js +3 -3
  68. package/src/ontology/equivalence.js +1 -1
  69. package/src/ontology/frame.js +44 -10
  70. package/src/ontology/judgement.js +8 -3
  71. package/src/ontology/metavariable.js +108 -102
  72. package/src/ontology/propertyRelation.js +3 -2
  73. package/src/ontology/reference.js +39 -1
  74. package/src/ontology/signature.js +3 -3
  75. package/src/ontology/statement.js +38 -4
  76. package/src/ontology/step.js +7 -7
  77. package/src/ontology/substitution/frame.js +13 -17
  78. package/src/ontology/substitution/statement.js +45 -48
  79. package/src/ontology/substitution/term.js +19 -19
  80. package/src/ontology/substitution.js +3 -2
  81. package/src/ontology/substitutions.js +3 -3
  82. package/src/ontology/term.js +26 -5
  83. package/src/ontology/variable.js +3 -2
  84. package/src/process/equate.js +212 -0
  85. package/src/process/unify.js +634 -0
  86. package/src/process/verify.js +204 -0
  87. package/src/utilities/brackets.js +2 -11
  88. package/src/utilities/context.js +1 -21
  89. package/src/utilities/json.js +19 -0
  90. package/src/utilities/{unifier.js → pass.js} +17 -1
  91. package/src/utilities/substitutions.js +10 -20
  92. package/lib/unifier/equantional.js +0 -170
  93. package/lib/unifier/intrinsicLevel.js +0 -144
  94. package/lib/unifier/metaLevel.js +0 -197
  95. package/lib/unifier/metavariable.js +0 -140
  96. package/lib/unifier/statementWithCombinator.js +0 -177
  97. package/lib/unifier/termWithConstructor.js +0 -145
  98. package/lib/unifier.js +0 -241
  99. package/lib/utilities/arguments.js +0 -28
  100. package/lib/utilities/frame.js +0 -18
  101. package/lib/utilities/metavariable.js +0 -18
  102. package/lib/utilities/statement.js +0 -18
  103. package/lib/utilities/unification.js +0 -109
  104. package/lib/utilities/unifier.js +0 -51
  105. package/lib/utilities/variable.js +0 -18
  106. package/lib/verifier/combinator.js +0 -158
  107. package/lib/verifier.js +0 -219
  108. package/src/unifier/equantional.js +0 -90
  109. package/src/unifier/intrinsicLevel.js +0 -52
  110. package/src/unifier/metaLevel.js +0 -151
  111. package/src/unifier/metavariable.js +0 -50
  112. package/src/unifier/statementWithCombinator.js +0 -114
  113. package/src/unifier/termWithConstructor.js +0 -56
  114. package/src/unifier.js +0 -183
  115. package/src/utilities/arguments.js +0 -21
  116. package/src/utilities/frame.js +0 -13
  117. package/src/utilities/metavariable.js +0 -13
  118. package/src/utilities/statement.js +0 -13
  119. package/src/utilities/unification.js +0 -136
  120. package/src/utilities/variable.js +0 -13
  121. package/src/verifier/combinator.js +0 -72
  122. package/src/verifier.js +0 -150
package/src/verifier.js DELETED
@@ -1,150 +0,0 @@
1
- "use strict";
2
-
3
- import { nodeQuery } from "./utilities/query";
4
- import { isLastRemainingArgumentFunction } from "./utilities/arguments";
5
-
6
- const nonTerminalNodeQuery = nodeQuery("/*");
7
-
8
- export default class Verifier {
9
- verify(node, ...remainingArguments) {
10
- let verifies;
11
-
12
- const nodeVerifies = this.verifyNode(node, ...remainingArguments);
13
-
14
- verifies = nodeVerifies; ///
15
-
16
- return verifies;
17
- }
18
-
19
- verifyNode(node, ...remainingArguments) {
20
- let nodeVerifies;
21
-
22
- const nodeTerminalNode = node.isTerminalNode();
23
-
24
- if (nodeTerminalNode) {
25
- const terminalNode = node, ///
26
- terminalNodeVerifies = this.verifyTerminalNode(terminalNode, ...remainingArguments);
27
-
28
- nodeVerifies = terminalNodeVerifies; ///
29
- } else {
30
- const nonTerminalNode = node, ///
31
- nonTerminalNodeVerifies = this.verifyNonTerminalNode(nonTerminalNode, ...remainingArguments);
32
-
33
- nodeVerifies = nonTerminalNodeVerifies; ///
34
- }
35
-
36
- return nodeVerifies;
37
- }
38
-
39
- verifyChildNodes(childNodes, ...remainingArguments) {
40
- let childNodesVerify;
41
-
42
- const lastRemainingArgumentFunction = isLastRemainingArgumentFunction(remainingArguments);
43
-
44
- if (lastRemainingArgumentFunction) {
45
- const index = 0,
46
- childNodesVerifyAhead = this.verifyChildNodesAhead(index, childNodes, ...remainingArguments);
47
-
48
- childNodesVerify = childNodesVerifyAhead; ///
49
- } else {
50
- childNodesVerify = childNodes.every((childNode) => {
51
- const node = childNode, ///
52
- nodeVerifies = this.verifyNode(node, ...remainingArguments);
53
-
54
- if (nodeVerifies) {
55
- return true;
56
- }
57
- });
58
- }
59
-
60
- return childNodesVerify;
61
- }
62
-
63
- verifyTerminalNode(terminalNode, ...remainingArguments) {
64
- let terminalNodeVerifies;
65
-
66
- const lastRemainingArgumentFunction = isLastRemainingArgumentFunction(remainingArguments);
67
-
68
- if (lastRemainingArgumentFunction) {
69
- const verifyAhead = remainingArguments.pop(), ///
70
- verifiesAhead = verifyAhead();
71
-
72
- terminalNodeVerifies = verifiesAhead; ///
73
-
74
- remainingArguments.push(verifyAhead);
75
- } else {
76
- terminalNodeVerifies = true;
77
- }
78
-
79
- return terminalNodeVerifies;
80
- }
81
-
82
- verifyNonTerminalNode(nonTerminalNode, ...remainingArguments) {
83
- let nonTerminalNodeVerifies;
84
-
85
- let { maps } = this.constructor;
86
-
87
- maps = [ ///
88
- ...maps,
89
- {
90
- nodeQuery: nonTerminalNodeQuery,
91
- verify: (node, ...remainingArguments) => {
92
- let nonTerminalNodeVerifies;
93
-
94
- const childNodes = nonTerminalNode.getChildNodes(), ///
95
- childNodesVerify = this.verifyChildNodes(childNodes, ...remainingArguments);
96
-
97
- nonTerminalNodeVerifies = childNodesVerify; ///
98
-
99
- return nonTerminalNodeVerifies;
100
- }
101
- }
102
- ]
103
-
104
- let nodeVerifies = false;
105
-
106
- maps.some((map) => {
107
- const { nodeQuery, verify } = map;
108
-
109
- const node = nodeQuery(nonTerminalNode);
110
-
111
- if (node !== null) {
112
- nodeVerifies = verify(node, ...remainingArguments);
113
-
114
- return true;
115
- }
116
- });
117
-
118
- nonTerminalNodeVerifies = nodeVerifies; ///
119
-
120
- return nonTerminalNodeVerifies;
121
- }
122
-
123
- verifyChildNodesAhead(index, childNodes, ...remainingArguments) {
124
- let childNodesVerify;
125
-
126
- const verifyAhead = remainingArguments.pop(), ///
127
- childNodesLength = childNodes.length;
128
-
129
- if (index === childNodesLength) {
130
- const verifiesAhead = verifyAhead();
131
-
132
- childNodesVerify = verifiesAhead; ///
133
- } else {
134
- const childNode = childNodes[index],
135
- node = childNode, ///
136
- nodeVerifies = this.verifyNode(node, ...remainingArguments, () => {
137
- remainingArguments.push(verifyAhead);
138
-
139
- const aheadIndex = index + 1,
140
- childNodesVerifyAhead = this.verifyChildNodesAhead(aheadIndex, childNodes, ...remainingArguments);
141
-
142
- return childNodesVerifyAhead;
143
- });
144
-
145
- childNodesVerify = nodeVerifies; ///
146
- }
147
-
148
- return childNodesVerify;
149
- }
150
- }