occam-verify-cli 0.0.878 → 0.0.880

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 (37) hide show
  1. package/lib/context/file.js +1 -8
  2. package/lib/context/local.js +1 -7
  3. package/lib/context/localMeta.js +5 -22
  4. package/lib/metaLemma.js +4 -4
  5. package/lib/metaLemmaMetatheorem.js +25 -9
  6. package/lib/metatheorem.js +4 -4
  7. package/lib/substitution/metastatementForMetavariable.js +20 -1
  8. package/lib/verifier/nodes/metaLevel.js +2 -2
  9. package/lib/verify/metaConsequent.js +2 -2
  10. package/lib/verify/metaDerivation.js +12 -12
  11. package/lib/verify/metaLemma.js +5 -5
  12. package/lib/verify/metaSuppositions.js +2 -2
  13. package/lib/verify/metaproof.js +3 -3
  14. package/lib/verify/metastatement/qualified.js +11 -4
  15. package/lib/verify/metatheorem.js +5 -5
  16. package/lib/verify/metavariableAgainstMetastatement.js +2 -2
  17. package/lib/verify/ruleDerivation.js +3 -3
  18. package/package.json +4 -4
  19. package/src/context/file.js +0 -6
  20. package/src/context/local.js +0 -2
  21. package/src/context/localMeta.js +4 -24
  22. package/src/metaLemma.js +1 -1
  23. package/src/metaLemmaMetatheorem.js +27 -5
  24. package/src/metatheorem.js +1 -1
  25. package/src/substitution/metastatementForMetavariable.js +28 -0
  26. package/src/verifier/nodes/metaLevel.js +1 -1
  27. package/src/verify/metaConsequent.js +1 -1
  28. package/src/verify/metaDerivation.js +10 -11
  29. package/src/verify/metaLemma.js +6 -5
  30. package/src/verify/metaSuppositions.js +1 -1
  31. package/src/verify/metaproof.js +2 -2
  32. package/src/verify/metastatement/qualified.js +15 -6
  33. package/src/verify/metatheorem.js +6 -5
  34. package/src/verify/metavariableAgainstMetastatement.js +1 -1
  35. package/src/verify/ruleDerivation.js +2 -2
  36. package/lib/utilities/metaEquivalences.js +0 -15
  37. package/src/utilities/metaEquivalences.js +0 -5
@@ -6,11 +6,11 @@ import { nodeQuery } from "../utilities/query";
6
6
 
7
7
  const metaDerivationNodeQuery = nodeQuery("/metaproof/metaDerivation!");
8
8
 
9
- export default function verifyMetaproof(metaproofNode, conclusion, localMetaproof) {
9
+ export default function verifyMetaproof(metaproofNode, conclusion, substitutions, localMetaproof) {
10
10
  let metaproofVerified = false;
11
11
 
12
12
  const metaDerivationNode = metaDerivationNodeQuery(metaproofNode),
13
- metaDerivationVerified = verifyMetaDerivation(metaDerivationNode, localMetaproof);
13
+ metaDerivationVerified = verifyMetaDerivation(metaDerivationNode, substitutions, localMetaproof);
14
14
 
15
15
  if (metaDerivationVerified) {
16
16
  const lastMetaproofStep = localMetaproof.getLastMetaproofStep();
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
 
3
3
  import verifyMetastatement from "../metastatement";
4
+ import verifyMetavariableAgainstMetastatement from "../../verify/metavariableAgainstMetastatement";
4
5
 
5
6
  import { nodeQuery } from "../../utilities/query";
6
7
 
7
8
  const metastatementNodeQuery = nodeQuery("/qualifiedMetastatement/metastatement!"),
8
9
  referenceMetavariableNodeQuery = nodeQuery("/qualifiedMetastatement/reference!/metavariable!");
9
10
 
10
- export default function verifyQualifiedMetastatement(qualifiedMetastatementNode, metavariableReferences, assignments, derived, localMetaContext) {
11
+ export default function verifyQualifiedMetastatement(qualifiedMetastatementNode, substitutions, assignments, derived, localMetaContext) {
11
12
  let qualifiedMetastatementVerified = false;
12
13
 
13
14
  const metastatementNode = metastatementNodeQuery(qualifiedMetastatementNode);
@@ -27,18 +28,26 @@ export default function verifyQualifiedMetastatement(qualifiedMetastatementNode,
27
28
 
28
29
  qualifiedMetastatementVerified = ruleMatchesMetastatement; ///
29
30
  } else {
30
- if (metavariableReferences) {
31
+ if (substitutions !== null) {
31
32
  const metavariableNode = referenceMetavariableNode, ///
32
33
  metavariablePresent = localMetaContext.isMetavariablePresentByMetavariableNode(metavariableNode, localMetaContext);
33
34
 
34
35
  if (metavariablePresent) {
35
36
  const metastatementVerified = verifyMetastatement(metastatementNode, assignments, derived, localMetaContext, () => {
36
- const verifiedAhead = true;
37
+ const verifiedAhead = true;
37
38
 
38
- return verifiedAhead;
39
- });
39
+ return verifiedAhead;
40
+ });
40
41
 
41
- qualifiedMetastatementVerified = metastatementVerified; ///
42
+ if (metastatementVerified) {
43
+ const metavariableVerifiedAgainstMetastatement = verifyMetavariableAgainstMetastatement(metavariableNode, metastatementNode, substitutions, () => {
44
+ const verifiedAhead = true;
45
+
46
+ return verifiedAhead;
47
+ });
48
+
49
+ qualifiedMetastatementVerified = metavariableVerifiedAgainstMetastatement; ///
50
+ }
42
51
  }
43
52
  }
44
53
  }
@@ -28,23 +28,24 @@ export default function verifyMetatheorem(metatheoremNode, fileContext) {
28
28
  labelsVerified = verifyLabels(labelsNode, labels, fileContext);
29
29
 
30
30
  if (labelsVerified) {
31
- const metaSuppositions = [],
31
+ const substitutions = [],
32
+ metaSuppositions = [],
32
33
  metaSuppositionNodes = metaSuppositionsNodeQuery(metatheoremNode),
33
- metaSuppositionsVerified = verifyMetaSuppositions(metaSuppositionNodes, metaSuppositions, localMetaContext);
34
+ metaSuppositionsVerified = verifyMetaSuppositions(metaSuppositionNodes, metaSuppositions, substitutions, localMetaContext);
34
35
 
35
36
  if (metaSuppositionsVerified) {
36
37
  const metaConsequents = [],
37
38
  metaConsequentNode = metaConsequentNodeQuery(metatheoremNode),
38
- metaConsequentVerified = verifyMetaConsequent(metaConsequentNode, metaConsequents, localMetaContext);
39
+ metaConsequentVerified = verifyMetaConsequent(metaConsequentNode, metaConsequents, substitutions, localMetaContext);
39
40
 
40
41
  if (metaConsequentVerified) {
41
42
  const metaproofNode = metaproofNodeQuery(metatheoremNode),
42
43
  firstMetaConsequent = first(metaConsequents),
43
44
  metaConsequent = firstMetaConsequent, ///
44
- metaproofVerified = verifyMetaproof(metaproofNode, metaConsequent, localMetaContext);
45
+ metaproofVerified = verifyMetaproof(metaproofNode, metaConsequent, substitutions, localMetaContext);
45
46
 
46
47
  if (metaproofVerified) {
47
- const metatheorem = Metatheorem.fromLabelsMetaSuppositionsMetaConsequentAndFileContext(labels, metaSuppositions, metaConsequent, fileContext);
48
+ const metatheorem = Metatheorem.fromLabelsMetaSuppositionsMetaConsequentSubstitutionsAndFileContext(labels, metaSuppositions, metaConsequent, substitutions, fileContext);
48
49
 
49
50
  fileContext.addMetatheorem(metatheorem);
50
51
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  import MetastatementForMetavariableSubstitution from "../substitution/metastatementForMetavariable";
4
4
 
5
- export default function verifyMetavariableAgainstMetastatement(metavariableNode, metastatementNode, substitutions, localContextA, localMetaContextB, verifyAhead) {
5
+ export default function verifyMetavariableAgainstMetastatement(metavariableNode, metastatementNode, substitutions, verifyAhead) {
6
6
  let metavariableVerifiedAgainstMetastatement = false;
7
7
 
8
8
  const substitution = substitutions.find((substitution) => {
@@ -94,10 +94,10 @@ function verifyChild(childNode, localMetaContext) {
94
94
 
95
95
  const derived = true,
96
96
  assignments = [],
97
- metavariableReferences = true,
97
+ substitutions = null,
98
98
  qualifiedMetastatementNode = childNode; ///
99
99
 
100
- qualifiedMetastatementVerified = verifyQualifiedMetastatement(qualifiedMetastatementNode, metavariableReferences, assignments, derived, localMetaContext);
100
+ qualifiedMetastatementVerified = verifyQualifiedMetastatement(qualifiedMetastatementNode, substitutions, assignments, derived, localMetaContext);
101
101
 
102
102
  if (qualifiedMetastatementVerified) {
103
103
  const assignmentAssigned = assignAssignment(assignments, localMetaContext);
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "mergeMetaEquivalences", {
6
- enumerable: true,
7
- get: function() {
8
- return mergeMetaEquivalences;
9
- }
10
- });
11
- function mergeMetaEquivalences(metaEquivalencesA, metaEquivalencesB, localMetaContext) {
12
- debugger;
13
- }
14
-
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvbWV0YUVxdWl2YWxlbmNlcy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlTWV0YUVxdWl2YWxlbmNlcyhtZXRhRXF1aXZhbGVuY2VzQSwgbWV0YUVxdWl2YWxlbmNlc0IsIGxvY2FsTWV0YUNvbnRleHQpIHtcbiAgZGVidWdnZXJcbn1cbiJdLCJuYW1lcyI6WyJtZXJnZU1ldGFFcXVpdmFsZW5jZXMiLCJtZXRhRXF1aXZhbGVuY2VzQSIsIm1ldGFFcXVpdmFsZW5jZXNCIiwibG9jYWxNZXRhQ29udGV4dCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBRWdCQTs7O2VBQUFBOzs7QUFBVCxTQUFTQSxzQkFBc0JDLGlCQUFpQixFQUFFQyxpQkFBaUIsRUFBRUMsZ0JBQWdCO0lBQzFGLFFBQVE7QUFDViJ9
@@ -1,5 +0,0 @@
1
- "use strict";
2
-
3
- export function mergeMetaEquivalences(metaEquivalencesA, metaEquivalencesB, localMetaContext) {
4
- debugger
5
- }