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.
- package/lib/context/file.js +1 -8
- package/lib/context/local.js +1 -7
- package/lib/context/localMeta.js +5 -22
- package/lib/metaLemma.js +4 -4
- package/lib/metaLemmaMetatheorem.js +25 -9
- package/lib/metatheorem.js +4 -4
- package/lib/substitution/metastatementForMetavariable.js +20 -1
- package/lib/verifier/nodes/metaLevel.js +2 -2
- package/lib/verify/metaConsequent.js +2 -2
- package/lib/verify/metaDerivation.js +12 -12
- package/lib/verify/metaLemma.js +5 -5
- package/lib/verify/metaSuppositions.js +2 -2
- package/lib/verify/metaproof.js +3 -3
- package/lib/verify/metastatement/qualified.js +11 -4
- package/lib/verify/metatheorem.js +5 -5
- package/lib/verify/metavariableAgainstMetastatement.js +2 -2
- package/lib/verify/ruleDerivation.js +3 -3
- package/package.json +4 -4
- package/src/context/file.js +0 -6
- package/src/context/local.js +0 -2
- package/src/context/localMeta.js +4 -24
- package/src/metaLemma.js +1 -1
- package/src/metaLemmaMetatheorem.js +27 -5
- package/src/metatheorem.js +1 -1
- package/src/substitution/metastatementForMetavariable.js +28 -0
- package/src/verifier/nodes/metaLevel.js +1 -1
- package/src/verify/metaConsequent.js +1 -1
- package/src/verify/metaDerivation.js +10 -11
- package/src/verify/metaLemma.js +6 -5
- package/src/verify/metaSuppositions.js +1 -1
- package/src/verify/metaproof.js +2 -2
- package/src/verify/metastatement/qualified.js +15 -6
- package/src/verify/metatheorem.js +6 -5
- package/src/verify/metavariableAgainstMetastatement.js +1 -1
- package/src/verify/ruleDerivation.js +2 -2
- package/lib/utilities/metaEquivalences.js +0 -15
- package/src/utilities/metaEquivalences.js +0 -5
package/src/verify/metaproof.js
CHANGED
|
@@ -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,
|
|
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 (
|
|
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
|
-
|
|
37
|
+
const verifiedAhead = true;
|
|
37
38
|
|
|
38
|
-
|
|
39
|
-
|
|
39
|
+
return verifiedAhead;
|
|
40
|
+
});
|
|
40
41
|
|
|
41
|
-
|
|
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
|
|
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.
|
|
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,
|
|
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
|
-
|
|
97
|
+
substitutions = null,
|
|
98
98
|
qualifiedMetastatementNode = childNode; ///
|
|
99
99
|
|
|
100
|
-
qualifiedMetastatementVerified = verifyQualifiedMetastatement(qualifiedMetastatementNode,
|
|
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
|