occam-verify-cli 1.0.421 → 1.0.427

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 (272) hide show
  1. package/lib/action/verify.js +7 -3
  2. package/lib/context/file.js +8 -44
  3. package/lib/context/local.js +8 -26
  4. package/lib/context/nominal.js +64 -0
  5. package/lib/context/release.js +2 -2
  6. package/lib/context/temporary.js +6 -58
  7. package/lib/element/assertion/contained.js +303 -0
  8. package/lib/element/assertion/defined.js +318 -0
  9. package/lib/element/assertion/property.js +299 -0
  10. package/lib/element/assertion/satisfies.js +264 -0
  11. package/lib/element/assertion/subproof.js +178 -0
  12. package/lib/element/assertion/type.js +294 -0
  13. package/lib/{ontology → element}/assertion.js +9 -9
  14. package/lib/element/assumption.js +365 -0
  15. package/lib/element/axiom.js +332 -0
  16. package/lib/element/axiomLemmaTheoremConjecture.js +346 -0
  17. package/lib/element/conclusion.js +151 -0
  18. package/lib/{ontology → element}/conjecture.js +7 -14
  19. package/lib/element/declaration/combinator.js +161 -0
  20. package/lib/element/declaration/complexType.js +343 -0
  21. package/lib/element/declaration/constructor.js +193 -0
  22. package/lib/element/declaration/metavariable.js +193 -0
  23. package/lib/element/declaration/simpleType.js +240 -0
  24. package/lib/element/declaration/typePrefix.js +179 -0
  25. package/lib/element/declaration/variable.js +196 -0
  26. package/lib/{ontology → element}/declaration.js +9 -9
  27. package/lib/element/deduction.js +207 -0
  28. package/lib/element/derivation.js +96 -0
  29. package/lib/element/equality.js +275 -0
  30. package/lib/element/equivalence.js +316 -0
  31. package/lib/element/equivalences.js +264 -0
  32. package/lib/{ontology → element}/error.js +12 -12
  33. package/lib/element/frame.js +387 -0
  34. package/lib/element/hypothesis.js +195 -0
  35. package/lib/element/judgement.js +243 -0
  36. package/lib/element/label.js +198 -0
  37. package/lib/{ontology → element}/lemma.js +7 -7
  38. package/lib/{ontology → element}/metaLemma.js +8 -8
  39. package/lib/element/metaLemmaMetatheorem.js +234 -0
  40. package/lib/{ontology → element}/metaType.js +18 -11
  41. package/lib/{ontology → element}/metatheorem.js +8 -8
  42. package/lib/element/metavariable.js +459 -0
  43. package/lib/element/parameter.js +108 -0
  44. package/lib/element/premise.js +310 -0
  45. package/lib/element/procedureCall.js +243 -0
  46. package/lib/{ontology → element}/procedureReference.js +3 -3
  47. package/lib/{ontology → element}/proof.js +4 -4
  48. package/lib/element/property.js +128 -0
  49. package/lib/element/propertyRelation.js +195 -0
  50. package/lib/element/reference.js +304 -0
  51. package/lib/element/rule.js +373 -0
  52. package/lib/element/section.js +255 -0
  53. package/lib/element/signature.js +217 -0
  54. package/lib/element/statement/combinator/bracketed.js +166 -0
  55. package/lib/element/statement/combinator.js +105 -0
  56. package/lib/element/statement.js +386 -0
  57. package/lib/element/step.js +274 -0
  58. package/lib/element/subDerivation.js +137 -0
  59. package/lib/element/subproof.js +240 -0
  60. package/lib/element/substitution/frame.js +216 -0
  61. package/lib/{ontology → element}/substitution/reference.js +5 -4
  62. package/lib/{ontology → element}/substitution/statement.js +7 -6
  63. package/lib/element/substitution/term.js +265 -0
  64. package/lib/element/substitution.js +206 -0
  65. package/lib/element/substitutions.js +425 -0
  66. package/lib/element/supposition.js +323 -0
  67. package/lib/{ontology → element/term}/constructor/bracketed.js +11 -7
  68. package/lib/element/term/constructor.js +172 -0
  69. package/lib/element/term.js +322 -0
  70. package/lib/{ontology → element}/theorem.js +8 -8
  71. package/lib/element/type.js +490 -0
  72. package/lib/element/typePrefix.js +99 -0
  73. package/lib/element/variable.js +345 -0
  74. package/lib/elements.js +27 -0
  75. package/lib/mixins/statement/verify.js +14 -14
  76. package/lib/mixins/step/unify.js +12 -12
  77. package/lib/mixins/term/verify.js +4 -4
  78. package/lib/node/substitution/frame.js +15 -1
  79. package/lib/node/substitution/statement.js +37 -1
  80. package/lib/node/substitution/term.js +15 -1
  81. package/lib/preamble.js +63 -63
  82. package/lib/process/assign.js +58 -0
  83. package/lib/process/instantiate.js +68 -7
  84. package/lib/process/unify.js +26 -26
  85. package/lib/process/verify.js +21 -21
  86. package/lib/utilities/brackets.js +9 -18
  87. package/lib/utilities/customGrammar.js +1 -1
  88. package/lib/utilities/element.js +1128 -0
  89. package/lib/utilities/json.js +32 -32
  90. package/lib/utilities/node.js +49 -61
  91. package/lib/utilities/statement.js +83 -0
  92. package/lib/utilities/string.js +98 -56
  93. package/package.json +6 -6
  94. package/src/action/verify.js +8 -1
  95. package/src/context/file.js +9 -39
  96. package/src/context/local.js +5 -11
  97. package/src/context/nominal.js +30 -0
  98. package/src/context/release.js +1 -1
  99. package/src/context/temporary.js +6 -63
  100. package/src/{ontology → element}/assertion/contained.js +4 -25
  101. package/src/{ontology → element}/assertion/defined.js +7 -26
  102. package/src/{ontology → element}/assertion/property.js +7 -26
  103. package/src/{ontology → element}/assertion/satisfies.js +5 -53
  104. package/src/{ontology → element}/assertion/subproof.js +3 -32
  105. package/src/{ontology → element}/assertion/type.js +7 -26
  106. package/src/{ontology → element}/assertion.js +6 -6
  107. package/src/{ontology → element}/assumption.js +3 -27
  108. package/src/{ontology → element}/axiom.js +4 -11
  109. package/src/{ontology/topLevelAssertion.js → element/axiomLemmaTheoremConjecture.js} +9 -105
  110. package/src/{ontology → element}/conclusion.js +4 -19
  111. package/src/{ontology → element}/conjecture.js +4 -11
  112. package/src/{ontology → element}/declaration/combinator.js +3 -14
  113. package/src/{ontology → element}/declaration/complexType.js +3 -19
  114. package/src/{ontology → element}/declaration/constructor.js +3 -14
  115. package/src/{ontology → element}/declaration/metavariable.js +3 -39
  116. package/src/{ontology → element}/declaration/simpleType.js +3 -19
  117. package/src/{ontology → element}/declaration/typePrefix.js +3 -15
  118. package/src/{ontology → element}/declaration/variable.js +3 -14
  119. package/src/{ontology → element}/declaration.js +6 -6
  120. package/src/{ontology → element}/deduction.js +9 -22
  121. package/src/{ontology → element}/derivation.js +2 -32
  122. package/src/{ontology → element}/equality.js +18 -42
  123. package/src/{ontology → element}/equivalence.js +17 -2
  124. package/src/{ontology → element}/equivalences.js +1 -1
  125. package/src/{ontology → element}/error.js +8 -8
  126. package/src/{ontology → element}/frame.js +8 -56
  127. package/src/{ontology → element}/hypothesis.js +5 -5
  128. package/src/{ontology → element}/judgement.js +7 -7
  129. package/src/{ontology → element}/label.js +3 -3
  130. package/src/{ontology → element}/lemma.js +4 -4
  131. package/src/{ontology → element}/metaLemma.js +5 -5
  132. package/src/{ontology/topLevelMetaAssertion.js → element/metaLemmaMetatheorem.js} +11 -11
  133. package/src/{ontology → element}/metaType.js +11 -7
  134. package/src/{ontology → element}/metatheorem.js +5 -5
  135. package/src/{ontology → element}/metavariable.js +10 -60
  136. package/src/{ontology → element}/parameter.js +1 -1
  137. package/src/{ontology → element}/premise.js +14 -14
  138. package/src/{ontology → element}/procedureCall.js +4 -4
  139. package/src/{ontology → element}/procedureReference.js +1 -1
  140. package/src/{ontology → element}/proof.js +3 -3
  141. package/src/{ontology → element}/property.js +7 -15
  142. package/src/{ontology → element}/propertyRelation.js +5 -11
  143. package/src/{ontology → element}/reference.js +5 -19
  144. package/src/{ontology → element}/rule.js +13 -13
  145. package/src/{ontology → element}/section.js +10 -10
  146. package/src/{ontology → element}/signature.js +12 -15
  147. package/src/element/statement/combinator/bracketed.js +38 -0
  148. package/src/element/statement/combinator.js +59 -0
  149. package/src/{ontology → element}/statement.js +11 -27
  150. package/src/{ontology → element}/step.js +10 -44
  151. package/src/{ontology → element}/subDerivation.js +3 -24
  152. package/src/{ontology → element}/subproof.js +3 -43
  153. package/src/{ontology → element}/substitution/frame.js +4 -21
  154. package/src/{ontology → element}/substitution/reference.js +3 -3
  155. package/src/{ontology → element}/substitution/statement.js +6 -10
  156. package/src/{ontology → element}/substitution/term.js +7 -23
  157. package/src/{ontology → element}/substitutions.js +1 -1
  158. package/src/{ontology → element}/supposition.js +10 -10
  159. package/src/{ontology → element/term}/constructor/bracketed.js +12 -13
  160. package/src/element/term/constructor.js +82 -0
  161. package/src/{ontology → element}/term.js +6 -38
  162. package/src/{ontology → element}/theorem.js +5 -5
  163. package/src/{ontology → element}/type.js +17 -64
  164. package/src/{ontology → element}/typePrefix.js +8 -12
  165. package/src/{ontology → element}/variable.js +9 -20
  166. package/src/elements.js +13 -0
  167. package/src/mixins/statement/verify.js +4 -4
  168. package/src/mixins/step/unify.js +6 -6
  169. package/src/mixins/term/verify.js +3 -3
  170. package/src/node/substitution/frame.js +14 -0
  171. package/src/node/substitution/statement.js +40 -0
  172. package/src/node/substitution/term.js +15 -0
  173. package/src/preamble.js +62 -62
  174. package/src/process/assign.js +59 -0
  175. package/src/process/instantiate.js +67 -15
  176. package/src/process/unify.js +37 -39
  177. package/src/process/verify.js +20 -20
  178. package/src/utilities/brackets.js +12 -17
  179. package/src/utilities/customGrammar.js +3 -3
  180. package/src/utilities/element.js +1380 -0
  181. package/src/utilities/json.js +31 -31
  182. package/src/utilities/node.js +56 -64
  183. package/src/utilities/{context.js → statement.js} +10 -39
  184. package/src/utilities/string.js +120 -52
  185. package/lib/assignment/equality.js +0 -62
  186. package/lib/assignment/judgement.js +0 -62
  187. package/lib/assignment/variable.js +0 -64
  188. package/lib/context/bracketed/combinator.js +0 -121
  189. package/lib/context/bracketed/constructor.js +0 -121
  190. package/lib/context/bracketted.js +0 -86
  191. package/lib/context/partial/metavariable.js +0 -180
  192. package/lib/context/partial/statement.js +0 -180
  193. package/lib/context/partial/term.js +0 -192
  194. package/lib/context/partial/variable.js +0 -192
  195. package/lib/context/partial.js +0 -93
  196. package/lib/ontology/assertion/contained.js +0 -357
  197. package/lib/ontology/assertion/defined.js +0 -331
  198. package/lib/ontology/assertion/property.js +0 -313
  199. package/lib/ontology/assertion/satisfies.js +0 -302
  200. package/lib/ontology/assertion/subproof.js +0 -240
  201. package/lib/ontology/assertion/type.js +0 -308
  202. package/lib/ontology/assumption.js +0 -383
  203. package/lib/ontology/axiom.js +0 -339
  204. package/lib/ontology/combinator/bracketed.js +0 -202
  205. package/lib/ontology/combinator.js +0 -155
  206. package/lib/ontology/conclusion.js +0 -201
  207. package/lib/ontology/constructor.js +0 -185
  208. package/lib/ontology/declaration/combinator.js +0 -210
  209. package/lib/ontology/declaration/complexType.js +0 -393
  210. package/lib/ontology/declaration/constructor.js +0 -242
  211. package/lib/ontology/declaration/metavariable.js +0 -257
  212. package/lib/ontology/declaration/simpleType.js +0 -290
  213. package/lib/ontology/declaration/typePrefix.js +0 -228
  214. package/lib/ontology/declaration/variable.js +0 -245
  215. package/lib/ontology/deduction.js +0 -215
  216. package/lib/ontology/derivation.js +0 -155
  217. package/lib/ontology/equality.js +0 -288
  218. package/lib/ontology/equivalence.js +0 -295
  219. package/lib/ontology/equivalences.js +0 -264
  220. package/lib/ontology/frame.js +0 -419
  221. package/lib/ontology/hypothesis.js +0 -190
  222. package/lib/ontology/judgement.js +0 -248
  223. package/lib/ontology/label.js +0 -198
  224. package/lib/ontology/metavariable.js +0 -502
  225. package/lib/ontology/parameter.js +0 -108
  226. package/lib/ontology/premise.js +0 -310
  227. package/lib/ontology/procedureCall.js +0 -243
  228. package/lib/ontology/property.js +0 -166
  229. package/lib/ontology/propertyRelation.js +0 -202
  230. package/lib/ontology/reference.js +0 -315
  231. package/lib/ontology/rule.js +0 -373
  232. package/lib/ontology/section.js +0 -255
  233. package/lib/ontology/signature.js +0 -217
  234. package/lib/ontology/statement.js +0 -398
  235. package/lib/ontology/step.js +0 -295
  236. package/lib/ontology/subDerivation.js +0 -147
  237. package/lib/ontology/subproof.js +0 -265
  238. package/lib/ontology/substitution/frame.js +0 -261
  239. package/lib/ontology/substitution/term.js +0 -269
  240. package/lib/ontology/substitution.js +0 -206
  241. package/lib/ontology/substitutions.js +0 -425
  242. package/lib/ontology/supposition.js +0 -323
  243. package/lib/ontology/term.js +0 -351
  244. package/lib/ontology/topLevelAssertion.js +0 -431
  245. package/lib/ontology/topLevelMetaAssertion.js +0 -234
  246. package/lib/ontology/type.js +0 -556
  247. package/lib/ontology/typePrefix.js +0 -99
  248. package/lib/ontology/variable.js +0 -343
  249. package/lib/ontology.js +0 -27
  250. package/lib/utilities/assignments.js +0 -19
  251. package/lib/utilities/context.js +0 -101
  252. package/lib/utilities/subproof.js +0 -42
  253. package/lib/utilities/type.js +0 -40
  254. package/src/assignment/equality.js +0 -29
  255. package/src/assignment/judgement.js +0 -29
  256. package/src/assignment/variable.js +0 -34
  257. package/src/context/bracketed/combinator.js +0 -31
  258. package/src/context/bracketed/constructor.js +0 -31
  259. package/src/context/bracketted.js +0 -41
  260. package/src/context/partial/metavariable.js +0 -39
  261. package/src/context/partial/statement.js +0 -39
  262. package/src/context/partial/term.js +0 -49
  263. package/src/context/partial/variable.js +0 -49
  264. package/src/context/partial.js +0 -71
  265. package/src/ontology/combinator/bracketed.js +0 -38
  266. package/src/ontology/combinator.js +0 -72
  267. package/src/ontology/constructor.js +0 -105
  268. package/src/ontology.js +0 -13
  269. package/src/utilities/assignments.js +0 -11
  270. package/src/utilities/subproof.js +0 -56
  271. package/src/utilities/type.js +0 -35
  272. /package/src/{ontology → element}/substitution.js +0 -0
@@ -1,23 +1,32 @@
1
1
  "use strict";
2
2
 
3
- import ontology from "../ontology";
4
- import EqualityAssignment from "../assignment/equality";
5
- import VariableAssignment from "../assignment/variable";
3
+ import elements from "../elements";
6
4
 
7
- import { define } from "../ontology";
5
+ import { define } from "../elements";
8
6
  import { equateTerms } from "../process/equate";
7
+ import { equalityAssignmentFromEquality, variableAssignmentFromVariable } from "../process/assign";
9
8
 
10
9
  export default define(class Equality {
11
- constructor(string, leftTerm, rightTerm) {
10
+ constructor(context, string, node, leftTerm, rightTerm) {
11
+ this.context = context;
12
12
  this.string = string;
13
+ this.node = node;
13
14
  this.leftTerm = leftTerm;
14
15
  this.rightTerm = rightTerm;
15
16
  }
16
17
 
18
+ getContext() {
19
+ return this.context;
20
+ }
21
+
17
22
  getString() {
18
23
  return this.string;
19
24
  }
20
25
 
26
+ getNode() {
27
+ return this.node;
28
+ }
29
+
21
30
  getLeftTerm() {
22
31
  return this.leftTerm;
23
32
  }
@@ -186,7 +195,7 @@ export default define(class Equality {
186
195
  return;
187
196
  }
188
197
 
189
- const { Variable } = ontology,
198
+ const { Variable } = elements,
190
199
  type = this.getType(),
191
200
  leftTermNode = this.leftTerm.getNode(),
192
201
  rightTermNode = this.rightTerm.getNode(),
@@ -199,7 +208,7 @@ export default define(class Equality {
199
208
 
200
209
  if (leftVariableNode !== null) {
201
210
  const leftVariable = Variable.fromVariableNodeAndType(leftVariableNode, type, context),
202
- leftVariableAssignment = VariableAssignment.fromVariable(leftVariable);
211
+ leftVariableAssignment = variableAssignmentFromVariable(leftVariable);
203
212
 
204
213
  assignment = leftVariableAssignment; ///
205
214
 
@@ -208,7 +217,7 @@ export default define(class Equality {
208
217
 
209
218
  if (rightVariableNode !== null) {
210
219
  const rightVariable = Variable.fromVariableNodeAndType(rightVariableNode, type, context),
211
- rightVariableAssignment = VariableAssignment.fromVariable(rightVariable);
220
+ rightVariableAssignment = variableAssignmentFromVariable(rightVariable);
212
221
 
213
222
  assignment = rightVariableAssignment; ///
214
223
 
@@ -216,7 +225,7 @@ export default define(class Equality {
216
225
  }
217
226
 
218
227
  const equality = this, //
219
- equalityAssignment = EqualityAssignment.fromEquality(equality);
228
+ equalityAssignment = equalityAssignmentFromEquality(equality);
220
229
 
221
230
  assignment = equalityAssignment; ///
222
231
 
@@ -224,37 +233,4 @@ export default define(class Equality {
224
233
  }
225
234
 
226
235
  static name = "Equality";
227
-
228
- static fromStatementNode(statementNode, context) {
229
- let equality = null;
230
-
231
- const equalityNode = statementNode.getEqualityNode();
232
-
233
- if (equalityNode !== null) {
234
- const node = equalityNode, ///
235
- string = context.nodeAsString(node),
236
- leftTerm = leftTermFromEqualityNode(equalityNode, context),
237
- rightTerm = rightTermFromEqualityNode(equalityNode, context);
238
-
239
- equality = new Equality(string, leftTerm, rightTerm);
240
- }
241
-
242
- return equality;
243
- }
244
236
  });
245
-
246
- function leftTermFromEqualityNode(equalityNode, context) {
247
- const { Term } = ontology,
248
- leftTermNode = equalityNode.getLeftTermNode(),
249
- leftTerm = Term.fromTermNode(leftTermNode, context);
250
-
251
- return leftTerm;
252
- }
253
-
254
- function rightTermFromEqualityNode(equalityNode, context) {
255
- const { Term } = ontology,
256
- rightTermNode = equalityNode.getRightTermNode(),
257
- rightTerm = Term.fromTermNode(rightTermNode, context);
258
-
259
- return rightTerm;
260
- }
@@ -2,16 +2,31 @@
2
2
 
3
3
  import { arrayUtilities } from "necessary";
4
4
 
5
- import { define } from "../ontology";
5
+ import { define } from "../elements";
6
6
  import { stripBracketsFromTermNode } from "../utilities/brackets";
7
7
 
8
8
  const { compress } = arrayUtilities;
9
9
 
10
10
  export default define(class Equivalence {
11
- constructor(terms) {
11
+ constructor(context, string, node,terms) {
12
+ this.context = context;
13
+ this.string = string;
14
+ this.node = node;
12
15
  this.terms = terms;
13
16
  }
14
17
 
18
+ getContext() {
19
+ return this.context;
20
+ }
21
+
22
+ getString() {
23
+ return this.string;
24
+ }
25
+
26
+ getNode() {
27
+ return this.node;
28
+ }
29
+
15
30
  getTerms() {
16
31
  return this.terms;
17
32
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { arrayUtilities } from "necessary";
4
4
 
5
- import { define } from "../ontology";
5
+ import { define } from "../elements";
6
6
  import { variablesFromTerm } from "./term";
7
7
 
8
8
  const { push, separate } = arrayUtilities;
@@ -1,26 +1,26 @@
1
1
  "use strict";
2
2
 
3
- import { define } from "../ontology";
3
+ import { define } from "../elements";
4
4
 
5
5
  export default define(class Error {
6
- constructor(context, node, string) {
6
+ constructor(context, string, node) {
7
7
  this.context = context;
8
- this.node = node;
9
8
  this.string = string;
9
+ this.node = node;
10
10
  }
11
11
 
12
12
  getContext() {
13
13
  return this.context;
14
14
  }
15
15
 
16
- getNode() {
17
- return this.node;
18
- }
19
-
20
16
  getString() {
21
17
  return this.string;
22
18
  }
23
19
 
20
+ getNode() {
21
+ return this.node;
22
+ }
23
+
24
24
  verify() {
25
25
  let verifies = false;
26
26
 
@@ -36,7 +36,7 @@ export default define(class Error {
36
36
  static fromErrorNode(errorNode, context) {
37
37
  const node = errorNode, ///
38
38
  string = context.nodeAsString(node),
39
- error = new Error(context, node, string);
39
+ error = new Error(context, string, node);
40
40
 
41
41
  return error;
42
42
  }
@@ -2,19 +2,19 @@
2
2
 
3
3
  import { arrayUtilities } from "necessary";
4
4
 
5
- import ontology from "../ontology";
5
+ import elements from "../elements";
6
6
 
7
- import { define } from "../ontology";
7
+ import { define } from "../elements";
8
8
  import { S, NOTHING } from "../constants";
9
+ import { frameFromFrameNode } from "../utilities/element";
9
10
  import { FRAME_META_TYPE_NAME } from "../metaTypeNames";
10
11
 
11
12
  const { first } = arrayUtilities;
12
13
 
13
14
  export default define(class Frame {
14
- constructor(string, node, tokens, assumptions) {
15
+ constructor(string, node, assumptions) {
15
16
  this.string = string;
16
17
  this.node = node;
17
- this.tokens = tokens;
18
18
  this.assumptions = assumptions;
19
19
  }
20
20
 
@@ -26,10 +26,6 @@ export default define(class Frame {
26
26
  return this.node;
27
27
  }
28
28
 
29
- getTokens() {
30
- return this.tokens;
31
- }
32
-
33
29
  getAssumptions() {
34
30
  return this.assumptions;
35
31
  }
@@ -305,30 +301,21 @@ export default define(class Frame {
305
301
  let frame = null;
306
302
 
307
303
  if (json !== null) {
308
- const { Assumption } =ontology,
304
+ const { Assumption } =elements,
309
305
  assumption = Assumption.fromJSON(json, context),
310
306
  assumptions = [
311
307
  assumption
312
308
  ],
313
309
  string = null,
314
- node = null,
315
- tokens = null;
310
+ node = null;
316
311
 
317
- frame = new Frame(string, node, tokens, assumptions);
312
+ frame = new Frame(string, node, assumptions);
318
313
  }
319
314
 
320
315
  return frame;
321
316
  }
322
317
 
323
- static fromFrameNode(frameNode, context) {
324
- let frame = null;
325
-
326
- if (frameNode !== null) {
327
- frame = frameFromFrameNode(frameNode, context);
328
- }
329
-
330
- return frame;
331
- }
318
+ static fromFrameNode(frameNode, context) { return frameFromFrameNode(frameNode, context); }
332
319
 
333
320
  static fromJudgementNode(judgementNode, context) {
334
321
  const frameNode = judgementNode.getFrameNode(),
@@ -348,43 +335,8 @@ export default define(class Frame {
348
335
 
349
336
  return frame;
350
337
  }
351
-
352
- static fromContainedAssertionNode(containedAssertionNode, context) {
353
- let frame = null;
354
-
355
- const frameNode = containedAssertionNode.getFrameNode();
356
-
357
- if (frameNode !== null) {
358
- frame = frameFromFrameNode(frameNode, context)
359
- }
360
-
361
- return frame;
362
- }
363
338
  });
364
339
 
365
- function frameFromFrameNode(frameNode, context) {
366
- const { Frame } = ontology,
367
- node = frameNode, ///
368
- string = context.nodeAsString(node),
369
- tokens = context.nodeAsTokens(node),
370
- assumptions = assumptionsFromFrameNode(frameNode, context),
371
- frame = new Frame(string, node, tokens, assumptions);
372
-
373
- return frame;
374
- }
375
-
376
- function assumptionsFromFrameNode(frameNode, context) {
377
- const { Assumption } = ontology,
378
- assumptionNodes = frameNode.getAssumptionNodes(),
379
- assumptions = assumptionNodes.map((assumptionNode) => {
380
- const assumption = Assumption.fromAssumptionNode(assumptionNode, context);
381
-
382
- return assumption;
383
- });
384
-
385
- return assumptions;
386
- }
387
-
388
340
  function assumptionsStringFromAssumptions(assumptions) {
389
341
  const assumptionsString = assumptions.reduce((assumptionsString, assumption) => {
390
342
  const assumptionString = assumption.getString();
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- import ontology from "../ontology";
3
+ import elements from "../elements";
4
+ import assignAssignments from "../process/assign";
4
5
 
5
- import { define } from "../ontology";
6
- import { assignAssignments } from "../utilities/assignments";
6
+ import { define } from "../elements";
7
7
  import { statementFromJSON, statementToStatementJSON } from "../utilities/json";
8
8
 
9
9
  export default define(class Hypothesis {
@@ -43,7 +43,7 @@ export default define(class Hypothesis {
43
43
  const assignmentsAssigned = assignAssignments(assignments, context);
44
44
 
45
45
  if (assignmentsAssigned) {
46
- const { Step } = ontology,
46
+ const { Step } = elements,
47
47
  step = Step.fromStatement(this.statement, context),
48
48
  stepOrSubproof = step; ///
49
49
 
@@ -113,7 +113,7 @@ export default define(class Hypothesis {
113
113
  }
114
114
 
115
115
  static fromHypothesisNode(hypothesisNode, context) {
116
- const { Statement } = ontology,
116
+ const { Statement } = elements,
117
117
  node = hypothesisNode, ///
118
118
  string = context.nodeAsString(node),
119
119
  statement = Statement.fromHypothesisNode(hypothesisNode, context),
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- import ontology from "../ontology";
4
- import JudgementAssignment from "../assignment/judgement";
3
+ import elements from "../elements";
5
4
 
6
- import { define } from "../ontology";
5
+ import { define } from "../elements";
6
+ import { judgementAssignmentFromJudgement } from "../process/assign";
7
7
 
8
8
  export default define(class Judgement {
9
9
  constructor(string, node, frame, assumption) {
@@ -142,8 +142,8 @@ export default define(class Judgement {
142
142
  }
143
143
 
144
144
  const judgement = this, ///
145
- judgementAssignment = JudgementAssignment.fromJudgement(judgement),
146
- assignment = judgementAssignment;
145
+ judgementAssignment = judgementAssignmentFromJudgement(judgement),
146
+ assignment = judgementAssignment; ///
147
147
 
148
148
  assignments.push(assignment);
149
149
  }
@@ -156,7 +156,7 @@ export default define(class Judgement {
156
156
  const judgementNode = statementNode.getJudgementNode();
157
157
 
158
158
  if (judgementNode !== null) {
159
- const { Frame, Assumption } = ontology,
159
+ const { Frame, Assumption } = elements,
160
160
  node = judgementNode, ///
161
161
  string = context.nodeAsString(node),
162
162
  frame = Frame.fromJudgementNode(judgementNode, context),
@@ -170,7 +170,7 @@ export default define(class Judgement {
170
170
  });
171
171
 
172
172
  function referenceFromMetavariable(metavariable, context) {
173
- const { Reference } = ontology,
173
+ const { Reference } = elements,
174
174
  metavariableNode = metavariable.getNode(),
175
175
  reference = Reference.fromMetavariableNode(metavariableNode, context);
176
176
 
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
- import ontology from "../ontology";
3
+ import elements from "../elements";
4
4
 
5
- import { define } from "../ontology";
5
+ import { define } from "../elements";
6
6
  import { metavariableFromJSON, metavariableToMetavariableJSON } from "../utilities/json";
7
7
 
8
8
  export default define(class Label {
@@ -97,7 +97,7 @@ export default define(class Label {
97
97
  }
98
98
 
99
99
  static fromLabelNode(labelNode, context) {
100
- const { Metavariable } = ontology,
100
+ const { Metavariable } = elements,
101
101
  metavariable = Metavariable.fromLabelNode(labelNode, context),
102
102
  label = new Label(context, metavariable);
103
103
 
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
- import TopLevelAssertion from "./topLevelAssertion";
3
+ import AxiomLemmaTheoremConjecture from "./axiomLemmaTheoremConjecture";
4
4
 
5
- import { define } from "../ontology";
5
+ import { define } from "../elements";
6
6
 
7
- export default define(class Lemma extends TopLevelAssertion {
7
+ export default define(class Lemma extends AxiomLemmaTheoremConjecture {
8
8
  verify() {
9
9
  let verifies;
10
10
 
@@ -36,7 +36,7 @@ export default define(class Lemma extends TopLevelAssertion {
36
36
 
37
37
  static fromLemmaNode(lemmaNode, context) {
38
38
  const node = lemmaNode, ///
39
- lemma = TopLevelAssertion.fromNode(Lemma, node, context);
39
+ lemma = AxiomLemmaTheoremConjecture.fromNode(Lemma, node, context);
40
40
 
41
41
  return lemma;
42
42
  }
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
- import TopLevelMetaAssertion from "./topLevelMetaAssertion";
3
+ import MetaLemmaMetatheorem from "./metaLemmaMetatheorem";
4
4
 
5
- import { define } from "../ontology";
5
+ import { define } from "../elements";
6
6
 
7
- export default define(class MetaLemma extends TopLevelMetaAssertion {
7
+ export default define(class MetaLemma extends MetaLemmaMetatheorem {
8
8
  verify() {
9
9
  let verifies;
10
10
 
@@ -30,11 +30,11 @@ export default define(class MetaLemma extends TopLevelMetaAssertion {
30
30
 
31
31
  static name = "MetaLemma";
32
32
 
33
- static fromJSON(json, context) { return TopLevelMetaAssertion.fromJSON(MetaLemma, json, context); }
33
+ static fromJSON(json, context) { return MetaLemmaMetatheorem.fromJSON(MetaLemma, json, context); }
34
34
 
35
35
  static fromMetaLemmaNode(metaLemmaNode, context) {
36
36
  const node = metaLemmaNode, ///
37
- metaLemma = TopLevelMetaAssertion.fromNode(MetaLemma, node, context);
37
+ metaLemma = MetaLemmaMetatheorem.fromNode(MetaLemma, node, context);
38
38
 
39
39
  return metaLemma;
40
40
  }
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
 
3
- import ontology from "../ontology";
3
+ import elements from "../elements";
4
4
  import LocalContext from "../context/local";
5
5
 
6
- import { proofFromProofNode, deductionFromDeductionNode, suppositionsFromSuppositionNodes } from "./topLevelAssertion";
6
+ import { proofFromProofNode, deductionFromDeductionNode, suppositionsFromSuppositionNodes } from "./axiomLemmaTheoremConjecture";
7
7
  import { labelFromJSON,
8
8
  labelToLabelJSON,
9
9
  deductionFromJSON,
@@ -13,11 +13,11 @@ import { labelFromJSON,
13
13
  suppositionsToSuppositionsJSON,
14
14
  substitutionsToSubstitutionsJSON } from "../utilities/json";
15
15
 
16
- export default class TopLevelMetaAssertion {
17
- constructor(context, node, string, label, suppositions, deduction, proof, substitutions) {
16
+ export default class MetaLemmaMetatheorem {
17
+ constructor(context, string, node, label, suppositions, deduction, proof, substitutions) {
18
18
  this.context = context;
19
- this.node = node;
20
19
  this.string = string;
20
+ this.node = node;
21
21
  this.label = label;
22
22
  this.suppositions = suppositions;
23
23
  this.deduction = deduction;
@@ -162,13 +162,13 @@ export default class TopLevelMetaAssertion {
162
162
  node = null,
163
163
  proof = null,
164
164
  string = stringFromLabelASuppositionsAndDeduction(label, suppositions, deduction),
165
- topLevelMetaAssertion = new Class(context, node, string, label, suppositions, deduction, proof, substitutions);
165
+ metaLemmaMetatheorem = new Class(context, string, node, label, suppositions, deduction, proof, substitutions);
166
166
 
167
- return topLevelMetaAssertion;
167
+ return metaLemmaMetatheorem;
168
168
  }
169
169
 
170
170
  static fromNode(Class, node, context) {
171
- const { Substitutions } = ontology,
171
+ const { Substitutions } = elements,
172
172
  topLevelAssertionNode = node, ///
173
173
  proofNode = topLevelAssertionNode.getProofNode(),
174
174
  labelNode = topLevelAssertionNode.getLabelNode(),
@@ -180,16 +180,16 @@ export default class TopLevelMetaAssertion {
180
180
  suppositions = suppositionsFromSuppositionNodes(suppositionNodes, context),
181
181
  substitutions = Substitutions.fromNothing(),
182
182
  string = stringFromLabelASuppositionsAndDeduction(label, suppositions, deduction),
183
- topLevelMetaAssertion = new Class(context, node, string, label, suppositions, deduction, proof, substitutions);
183
+ metaLemmaMetatheorem = new Class(context, string, node, label, suppositions, deduction, proof, substitutions);
184
184
 
185
- return topLevelMetaAssertion;
185
+ return metaLemmaMetatheorem;
186
186
  }
187
187
  }
188
188
 
189
189
  function labelFromLabelNode(labelNode, context) {
190
190
  let label = null;
191
191
 
192
- const { Label } = ontology;
192
+ const { Label } = elements;
193
193
 
194
194
  if (labelNode !== null) {
195
195
  label = Label.fromLabelNode(labelNode, context);
@@ -1,21 +1,25 @@
1
1
  "use strict";
2
2
 
3
- import { define } from "../ontology";
3
+ import { define } from "../elements";
4
4
  import { FRAME_META_TYPE_NAME, REFERENCE_META_TYPE_NAME, STATEMENT_META_TYPE_NAME } from "../metaTypeNames";
5
5
 
6
6
  class MetaType {
7
- constructor(name) {
7
+ constructor(string, node, name) {
8
+ this.string = string;
9
+ this.node = node;
8
10
  this.name = name;
9
11
  }
10
12
 
11
- getName() {
12
- return this.name;
13
+ getString() {
14
+ return this.string;
13
15
  }
14
16
 
15
- getString() {
16
- const string = this.name; ///
17
+ getNode() {
18
+ return this.node;
19
+ }
17
20
 
18
- return string;
21
+ getName() {
22
+ return this.name;
19
23
  }
20
24
 
21
25
  isEqualTo(metaType) {
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
- import TopLevelMetaAssertion from "./topLevelMetaAssertion";
3
+ import MetaLemmaMetatheorem from "./metaLemmaMetatheorem";
4
4
 
5
- import { define } from "../ontology";
5
+ import { define } from "../elements";
6
6
 
7
- export default define(class Metatheorem extends TopLevelMetaAssertion {
7
+ export default define(class Metatheorem extends MetaLemmaMetatheorem {
8
8
  verify() {
9
9
  let verifies;
10
10
 
@@ -30,11 +30,11 @@ export default define(class Metatheorem extends TopLevelMetaAssertion {
30
30
 
31
31
  static name = "Metatheorem";
32
32
 
33
- static fromJSON(json, context) { return TopLevelMetaAssertion.fromJSON(Metatheorem, json, context); }
33
+ static fromJSON(json, context) { return MetaLemmaMetatheorem.fromJSON(Metatheorem, json, context); }
34
34
 
35
35
  static fromMetatheoremNode(metatheoremNode, context) {
36
36
  const node = metatheoremNode, ///
37
- metatheorem = TopLevelMetaAssertion.fromNode(Metatheorem, node, context);
37
+ metatheorem = MetaLemmaMetatheorem.fromNode(Metatheorem, node, context);
38
38
 
39
39
  return metatheorem;
40
40
  }