occam-verify-cli 1.0.842 → 1.0.847

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 (87) hide show
  1. package/lib/context/bounded.js +18 -18
  2. package/lib/context/branching.js +8 -3
  3. package/lib/context/ephemeral.js +44 -71
  4. package/lib/context/file/nominal.js +18 -24
  5. package/lib/context/synoptic.js +135 -128
  6. package/lib/context.js +49 -31
  7. package/lib/element/assertion/contained.js +6 -3
  8. package/lib/element/assertion/defined.js +11 -4
  9. package/lib/element/assertion/property.js +6 -3
  10. package/lib/element/assertion/satisfies.js +6 -3
  11. package/lib/element/assertion/subproof.js +6 -3
  12. package/lib/element/assertion/type.js +5 -5
  13. package/lib/element/assumption/metaLevel.js +12 -10
  14. package/lib/element/assumption.js +2 -2
  15. package/lib/element/derivation.js +1 -8
  16. package/lib/element/equality.js +3 -3
  17. package/lib/element/equivalence.js +1 -8
  18. package/lib/element/error.js +1 -8
  19. package/lib/element/hypothesis.js +2 -2
  20. package/lib/element/judgement.js +15 -11
  21. package/lib/element/metaType.js +2 -2
  22. package/lib/element/metavariable.js +30 -35
  23. package/lib/element/parameter.js +2 -2
  24. package/lib/element/procedureCall.js +2 -2
  25. package/lib/element/procedureReference.js +2 -2
  26. package/lib/element/proof.js +1 -8
  27. package/lib/element/proofAssertion/premise.js +4 -3
  28. package/lib/element/proofAssertion/supposition.js +4 -3
  29. package/lib/element/section.js +1 -8
  30. package/lib/element/signature.js +2 -2
  31. package/lib/element/statement.js +2 -2
  32. package/lib/element/subDerivation.js +1 -8
  33. package/lib/element/subproof.js +1 -8
  34. package/lib/element/substitution/frame.js +20 -6
  35. package/lib/element/substitution/reference.js +20 -6
  36. package/lib/element/substitution/statement.js +19 -5
  37. package/lib/element/substitution/term.js +19 -5
  38. package/lib/element/substitution.js +12 -7
  39. package/lib/element/typePrefix.js +2 -2
  40. package/lib/process/unify.js +7 -2
  41. package/lib/utilities/element.js +3 -5
  42. package/lib/utilities/json.js +1 -15
  43. package/lib/utilities/synoptic.js +126 -0
  44. package/package.json +1 -1
  45. package/src/context/bounded.js +23 -23
  46. package/src/context/branching.js +12 -2
  47. package/src/context/ephemeral.js +94 -110
  48. package/src/context/file/nominal.js +18 -34
  49. package/src/context/synoptic.js +195 -150
  50. package/src/context.js +66 -42
  51. package/src/element/assertion/contained.js +8 -3
  52. package/src/element/assertion/defined.js +15 -4
  53. package/src/element/assertion/property.js +8 -3
  54. package/src/element/assertion/satisfies.js +10 -4
  55. package/src/element/assertion/subproof.js +8 -3
  56. package/src/element/assertion/type.js +10 -8
  57. package/src/element/assumption/metaLevel.js +13 -8
  58. package/src/element/assumption.js +2 -2
  59. package/src/element/derivation.js +0 -11
  60. package/src/element/equality.js +3 -3
  61. package/src/element/equivalence.js +0 -11
  62. package/src/element/error.js +0 -11
  63. package/src/element/hypothesis.js +2 -2
  64. package/src/element/judgement.js +22 -14
  65. package/src/element/metaType.js +2 -2
  66. package/src/element/metavariable.js +5 -13
  67. package/src/element/parameter.js +2 -2
  68. package/src/element/procedureCall.js +2 -2
  69. package/src/element/procedureReference.js +2 -2
  70. package/src/element/proof.js +0 -11
  71. package/src/element/proofAssertion/premise.js +3 -1
  72. package/src/element/proofAssertion/supposition.js +3 -1
  73. package/src/element/section.js +0 -11
  74. package/src/element/signature.js +2 -2
  75. package/src/element/statement.js +2 -2
  76. package/src/element/subDerivation.js +0 -11
  77. package/src/element/subproof.js +0 -11
  78. package/src/element/substitution/frame.js +31 -11
  79. package/src/element/substitution/reference.js +31 -11
  80. package/src/element/substitution/statement.js +33 -13
  81. package/src/element/substitution/term.js +31 -11
  82. package/src/element/substitution.js +16 -11
  83. package/src/element/typePrefix.js +2 -2
  84. package/src/process/unify.js +11 -4
  85. package/src/utilities/element.js +3 -6
  86. package/src/utilities/json.js +0 -12
  87. package/src/utilities/synoptic.js +105 -0
@@ -1,7 +1,19 @@
1
1
  "use strict";
2
2
 
3
+ import { arrayUtilities } from "necessary";
4
+
3
5
  import Context from "../context";
4
6
 
7
+ import { compressTerms,
8
+ compressFrames,
9
+ compressEqualities,
10
+ compressJudgements,
11
+ compressAssertions,
12
+ compressStatements,
13
+ compressReferences,
14
+ compressAssumptions,
15
+ compressMetavariables,
16
+ compressSubstitutions,} from "../utilities/synoptic";
5
17
  import { termsFromJSON,
6
18
  framesFromJSON,
7
19
  termsToTermsJSON,
@@ -23,6 +35,8 @@ import { termsFromJSON,
23
35
  metavariablesToMetavariablesJSON,
24
36
  substitutionsToSubstitutionsJSON } from "../utilities/json";
25
37
 
38
+ const { push } = arrayUtilities;
39
+
26
40
  export default class EphemeralContext extends Context {
27
41
  constructor(context, terms, frames, equalities, judgements, assertions, statements, references, assumptions, metavariables, substitutions) {
28
42
  super(context);
@@ -39,153 +53,123 @@ export default class EphemeralContext extends Context {
39
53
  this.substitutions = substitutions;
40
54
  }
41
55
 
42
- getTerms() {
43
- let terms;
44
-
56
+ getTerms(terms = []) {
45
57
  const context = this.getContext();
46
-
47
- terms = context.getTerms();
48
-
49
- terms = [ ///
50
- ...this.terms,
51
- ...terms
52
- ];
53
-
58
+
59
+ push(terms, this.terms);
60
+
61
+ context.getTerms(terms);
62
+
63
+ compressTerms(context);
64
+
54
65
  return terms;
55
66
  }
56
67
 
57
- getFrames() {
58
- let frames;
59
-
68
+ getFrames(frames = []) {
60
69
  const context = this.getContext();
61
-
62
- frames = context.getFrames();
63
-
64
- frames = [ ///
65
- ...this.frames,
66
- ...frames
67
- ];
68
-
70
+
71
+ push(frames, this.frames);
72
+
73
+ context.getFrames(frames);
74
+
75
+ compressFrames(context);
76
+
69
77
  return frames;
70
78
  }
71
79
 
72
- getEqualities() {
73
- let equalities;
74
-
80
+ getEqualities(equalities = []) {
75
81
  const context = this.getContext();
76
-
77
- equalities = context.getEqualities();
78
-
79
- equalities = [ ///
80
- ...this.equalities,
81
- ...equalities
82
- ];
83
-
82
+
83
+ push(equalities, this.equalities);
84
+
85
+ context.getEqualities(equalities);
86
+
87
+ compressEqualities(context);
88
+
84
89
  return equalities;
85
90
  }
86
91
 
87
- getJudgements() {
88
- let judgements;
89
-
92
+ getJudgements(judgements = []) {
90
93
  const context = this.getContext();
91
-
92
- judgements = context.getJudgements();
93
-
94
- judgements = [ ///
95
- ...this.judgements,
96
- ...judgements
97
- ];
98
-
94
+
95
+ push(judgements, this.judgements);
96
+
97
+ context.getJudgements(judgements);
98
+
99
+ compressJudgements(context);
100
+
99
101
  return judgements;
100
102
  }
101
103
 
102
- getStatements() {
103
- let statements;
104
-
104
+ getStatements(statements = []) {
105
105
  const context = this.getContext();
106
-
107
- statements = context.getStatements();
108
-
109
- statements = [ ///
110
- ...this.statements,
111
- ...statements
112
- ];
113
-
106
+
107
+ push(statements, this.statements);
108
+
109
+ context.getStatements(statements);
110
+
111
+ compressStatements(context);
112
+
114
113
  return statements;
115
114
  }
116
115
 
117
- getAssertions() {
118
- let assertions;
119
-
116
+ getAssertions(assertions = []) {
120
117
  const context = this.getContext();
121
-
122
- assertions = context.getAssertions();
123
-
124
- assertions = [ ///
125
- ...this.assertions,
126
- ...assertions
127
- ];
128
-
118
+
119
+ push(assertions, this.assertions);
120
+
121
+ context.getAssertions(assertions);
122
+
123
+ compressAssertions(context);
124
+
129
125
  return assertions;
130
126
  }
131
127
 
132
- getReferences() {
133
- let references;
134
-
128
+ getReferences(references = []) {
135
129
  const context = this.getContext();
136
-
137
- references = context.getReferences();
138
-
139
- references = [ ///
140
- ...this.references,
141
- ...references
142
- ];
143
-
130
+
131
+ push(references, this.references);
132
+
133
+ context.getReferences(references);
134
+
135
+ compressReferences(context);
136
+
144
137
  return references;
145
138
  }
146
139
 
147
- getAssumptions() {
148
- let assumptions;
149
-
140
+ getAssumptions(assumptions = []) {
150
141
  const context = this.getContext();
151
-
152
- assumptions = context.getAssumptions();
153
-
154
- assumptions = [ ///
155
- ...this.assumptions,
156
- ...assumptions
157
- ];
158
-
142
+
143
+ push(assumptions, this.assumptions);
144
+
145
+ context.getAssumptions(assumptions);
146
+
147
+ compressAssumptions(context);
148
+
159
149
  return assumptions;
160
150
  }
161
151
 
162
- getMetavariables() {
163
- let metavariables;
164
-
152
+ getMetavariables(metavariables = []) {
165
153
  const context = this.getContext();
166
-
167
- metavariables = context.getMetavariables();
168
-
169
- metavariables = [ ///
170
- ...this.metavariables,
171
- ...metavariables
172
- ];
173
-
154
+
155
+ push(metavariables, this.metavariables);
156
+
157
+ context.getMetavariables(metavariables);
158
+
159
+ compressMetavariables(context);
160
+
174
161
  return metavariables;
175
162
  }
176
163
 
177
- getSubstitutions() {
178
- let substitutions;
179
-
164
+ getSubstitutions(substitutions = []) {
180
165
  const context = this.getContext();
181
-
182
- substitutions = context.getSubstitutions();
183
-
184
- substitutions = [ ///
185
- ...this.substitutions,
186
- ...substitutions
187
- ];
188
-
166
+
167
+ push(substitutions, this.substitutions);
168
+
169
+ context.getSubstitutions(substitutions);
170
+
171
+ compressSubstitutions(context);
172
+
189
173
  return substitutions;
190
174
  }
191
175
 
@@ -13,12 +13,10 @@ import { findMetaTypeByMetaTypeName } from "../../metaTypes";
13
13
  import { typesFromJSON,
14
14
  rulesFromJSON,
15
15
  axiomsFromJSON,
16
- lemmasFromJSON,
17
16
  typesToTypesJSON,
18
17
  theoremsFromJSON,
19
18
  rulesToRulesJSON,
20
19
  axiomsToAxiomsJSON,
21
- metaLemmasFromJSON,
22
20
  conjecturesFromJSON,
23
21
  combinatorsFromJSON,
24
22
  typePrefixesFromJSON,
@@ -232,67 +230,53 @@ export default class NominalFileContext extends FileContext {
232
230
  return this.declaredVariables;
233
231
  }
234
232
 
235
- getDeclaredMetavariables(includeRelease = true) {
233
+ getDeclaredMetavariables() {
236
234
  return this.declaredMetavariables;
237
235
  }
238
236
 
239
- getTerms() {
240
- const terms = [];
237
+ getDeclaredJudgements() {
238
+ const declaredJudgements = [];
241
239
 
242
- return terms;
240
+ return declaredJudgements;
243
241
  }
244
242
 
245
- getFrames() {
246
- const frames = [];
243
+ getTerms(terms = []) {
244
+ return terms;
245
+ }
247
246
 
247
+ getFrames(frames = []) {
248
248
  return frames;
249
249
  }
250
250
 
251
- getEqualities() {
252
- const equalities = [];
253
-
251
+ getEqualities(equalities = []) {
254
252
  return equalities;
255
253
  }
256
254
 
257
- getJudgements() {
258
- const judgements = [];
259
-
255
+ getJudgements(judgements = []) {
260
256
  return judgements;
261
257
  }
262
258
 
263
- getAssertions() {
264
- const assertions = [];
265
-
259
+ getAssertions(assertions = []) {
266
260
  return assertions;
267
261
  }
268
262
 
269
- getStatements() {
270
- const statements = [];
271
-
263
+ getStatements(statements = []) {
272
264
  return statements;
273
265
  }
274
266
 
275
- getReferences() {
276
- const references = [];
277
-
267
+ getReferences(references = []) {
278
268
  return references;
279
269
  }
280
270
 
281
- getAssumptions() {
282
- const assumptions = [];
283
-
271
+ getAssumptions(assumptions = []) {
284
272
  return assumptions;
285
273
  }
286
274
 
287
- getMetavariables() {
288
- const metavariables = [];
289
-
275
+ getMetavariables(metavariables = []) {
290
276
  return metavariables;
291
277
  }
292
278
 
293
- getSubstitutions() {
294
- const substitutions = [];
295
-
279
+ getSubstitutions(substitutions = []) {
296
280
  return substitutions;
297
281
  }
298
282
 
@@ -819,8 +803,8 @@ export default class NominalFileContext extends FileContext {
819
803
 
820
804
  typesFromJSON(json, this.types, fileContext);
821
805
 
822
- this.lemmas = lemmasFromJSON(json, fileContext);
823
- this.metaLemmas = metaLemmasFromJSON(json, fileContext);
806
+ this.lemmas = [];
807
+ this.metaLemmas = [];
824
808
 
825
809
  this.declaredMetavariables = declaredMetavariablesFromJSON(json, fileContext);
826
810
  this.declaredVariables = declaredVariablesFromJSON(json, fileContext);