occam-verify-cli 0.0.263 → 0.0.264

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/bin/ruleNames.js CHANGED
@@ -4,7 +4,7 @@ const TERM_RULE_NAME = "term",
4
4
  TYPE_RULE_NAME = "type",
5
5
  ARGUMENT_RULE_NAME = "argument",
6
6
  METAVARIABLE_RULE_NAME = "metavariable",
7
- META_SUBLEMMA_RULE_NAME = "metaSublemma",
7
+ META_CONDITIONAL_PROOF_RULE_NAME = "metaConditionalProof",
8
8
  QUALIFIED_METASTATEMENT_RULE_NAME = "qualifiedMetastatement",
9
9
  UNQUALIFIED_METASTATEMENT_RULE_NAME = "unqualifiedMetastatement";
10
10
 
@@ -13,7 +13,7 @@ module.exports = {
13
13
  TYPE_RULE_NAME,
14
14
  ARGUMENT_RULE_NAME,
15
15
  METAVARIABLE_RULE_NAME,
16
- META_SUBLEMMA_RULE_NAME,
16
+ META_CONDITIONAL_PROOF_RULE_NAME,
17
17
  QUALIFIED_METASTATEMENT_RULE_NAME,
18
18
  UNQUALIFIED_METASTATEMENT_RULE_NAME
19
19
  };
@@ -6,99 +6,99 @@ const MetaproofContext = require("../context/metaproof"),
6
6
  verifyUnqualifiedMetastatement = require("../verify/metastatement/unqualified");
7
7
 
8
8
  const { nodeQuery, nodesQuery } = require("../utilities/query"),
9
- { META_SUBLEMMA_RULE_NAME, QUALIFIED_METASTATEMENT_RULE_NAME, UNQUALIFIED_METASTATEMENT_RULE_NAME } = require("../ruleNames");
9
+ { META_CONDITIONAL_PROOF_RULE_NAME, QUALIFIED_METASTATEMENT_RULE_NAME, UNQUALIFIED_METASTATEMENT_RULE_NAME } = require("../ruleNames");
10
10
 
11
- const metaAntecedentNodeQuery = nodeQuery("/metaSublemma/metaAntecedent!"),
12
- metaDerivationNodeQuery = nodeQuery("/metaSublemma/metaDerivation!"),
11
+ const metaAntecedentNodeQuery = nodeQuery("/metaConditionalProof/metaAntecedent!"),
12
+ metaDerivationNodeQuery = nodeQuery("/metaConditionalProof/metaDerivation!"),
13
13
  metaDerivationChildNodesQuery = nodesQuery("/metaDerivation/*"),
14
- qualifiedMetastatementNodeQuery = nodeQuery("/metaSublemma/qualifiedMetastatement!"),
15
- unqualifiedMetastatementNodeQuery = nodeQuery("/metaSublemma/unqualifiedMetastatement!");
14
+ qualifiedMetastatementNodeQuery = nodeQuery("/metaConditionalProof/qualifiedMetastatement!"),
15
+ unqualifiedMetastatementNodeQuery = nodeQuery("/metaConditionalProof/unqualifiedMetastatement!");
16
16
 
17
17
  function verifyMetaDerivation(metaDerivationNode, context) {
18
18
  const derived = true;
19
19
 
20
20
  context.setDerived(derived);
21
21
 
22
- const metaSublemmaChildNodes = metaDerivationChildNodesQuery(metaDerivationNode),
23
- metaSublemmaChildNodesVerified = metaSublemmaChildNodes.every((metaSublemmaChildNode) => {
24
- let metaSublemmaChildNodeVerified;
22
+ const metaConditionalProofChildNodes = metaDerivationChildNodesQuery(metaDerivationNode),
23
+ metaConditionalProofChildNodesVerified = metaConditionalProofChildNodes.every((metaConditionalProofChildNode) => {
24
+ let metaConditionalProofChildNodeVerified;
25
25
 
26
- const ruleName = metaSublemmaChildNode.getRuleName();
26
+ const ruleName = metaConditionalProofChildNode.getRuleName();
27
27
 
28
28
  switch (ruleName) {
29
- case META_SUBLEMMA_RULE_NAME: {
30
- const metaSublemmaNode = metaSublemmaChildNode, ///
31
- metaSublemmaVerified = verifyMetaSublemma(metaSublemmaNode, context);
29
+ case META_CONDITIONAL_PROOF_RULE_NAME: {
30
+ const metaConditionalProofNode = metaConditionalProofChildNode, ///
31
+ metaConditionalProofVerified = verifyMetaConditionalProof(metaConditionalProofNode, context);
32
32
 
33
- metaSublemmaChildNodeVerified = metaSublemmaVerified; ///
33
+ metaConditionalProofChildNodeVerified = metaConditionalProofVerified; ///
34
34
 
35
35
  break;
36
36
  }
37
37
 
38
38
  case QUALIFIED_METASTATEMENT_RULE_NAME: {
39
- const qualifiedMetastatementNode = metaSublemmaChildNode, ///
39
+ const qualifiedMetastatementNode = metaConditionalProofChildNode, ///
40
40
  qualifiedMetastatementVerified = verifyQualifiedMetastatement(qualifiedMetastatementNode, context);
41
41
 
42
- metaSublemmaChildNodeVerified = qualifiedMetastatementVerified; ///
42
+ metaConditionalProofChildNodeVerified = qualifiedMetastatementVerified; ///
43
43
 
44
44
  break;
45
45
  }
46
46
 
47
47
  case UNQUALIFIED_METASTATEMENT_RULE_NAME: {
48
- const unqualifiedMetastatementNode = metaSublemmaChildNode, ///
48
+ const unqualifiedMetastatementNode = metaConditionalProofChildNode, ///
49
49
  unqualifiedMetastatementVerified = verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, context);
50
50
 
51
- metaSublemmaChildNodeVerified = unqualifiedMetastatementVerified; ///
51
+ metaConditionalProofChildNodeVerified = unqualifiedMetastatementVerified; ///
52
52
 
53
53
  break;
54
54
  }
55
55
  }
56
56
 
57
- return metaSublemmaChildNodeVerified;
57
+ return metaConditionalProofChildNodeVerified;
58
58
  }),
59
- metaDerivationVerified = metaSublemmaChildNodesVerified; ///
59
+ metaDerivationVerified = metaConditionalProofChildNodesVerified; ///
60
60
 
61
61
  return metaDerivationVerified;
62
62
  }
63
63
 
64
64
  module.exports = verifyMetaDerivation;
65
65
 
66
- function verifyMetaSublemma(metaSublemmaNode, context) {
67
- let metaSublemmaVerified = false;
66
+ function verifyMetaConditionalProof(metaConditionalProofNode, context) {
67
+ let metaConditionalProofVerified = false;
68
68
 
69
69
  const metaproofContext = MetaproofContext.fromContext(context);
70
70
 
71
71
  context = metaproofContext; ///
72
72
 
73
- const metaAntecedentNode = metaAntecedentNodeQuery(metaSublemmaNode),
73
+ const metaAntecedentNode = metaAntecedentNodeQuery(metaConditionalProofNode),
74
74
  metaAntecedentVerified = verifyMetaAntecedent(metaAntecedentNode, context);
75
75
 
76
76
  if (metaAntecedentVerified) {
77
77
  let metaDerivationVerified = true;
78
78
 
79
- const metaDerivationNode = metaDerivationNodeQuery(metaSublemmaNode);
79
+ const metaDerivationNode = metaDerivationNodeQuery(metaConditionalProofNode);
80
80
 
81
81
  if (metaDerivationNode !== null) {
82
82
  metaDerivationVerified = verifyMetaDerivation(metaDerivationNode, context);
83
83
  }
84
84
 
85
85
  if (metaDerivationVerified) {
86
- const qualifiedMetastatementNode = qualifiedMetastatementNodeQuery(metaSublemmaNode),
87
- unqualifiedMetastatementNode = unqualifiedMetastatementNodeQuery(metaSublemmaNode);
86
+ const qualifiedMetastatementNode = qualifiedMetastatementNodeQuery(metaConditionalProofNode),
87
+ unqualifiedMetastatementNode = unqualifiedMetastatementNodeQuery(metaConditionalProofNode);
88
88
 
89
89
  if (qualifiedMetastatementNode !== null) {
90
90
  const qualifiedMetastatementVerified = verifyQualifiedMetastatement(qualifiedMetastatementNode, context);
91
91
 
92
- metaSublemmaVerified = qualifiedMetastatementVerified; ///
92
+ metaConditionalProofVerified = qualifiedMetastatementVerified; ///
93
93
  }
94
94
 
95
95
  if (unqualifiedMetastatementNode !== null) {
96
96
  const unqualifiedMetastatementVerified = verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, context);
97
97
 
98
- metaSublemmaVerified = unqualifiedMetastatementVerified; ///
98
+ metaConditionalProofVerified = unqualifiedMetastatementVerified; ///
99
99
  }
100
100
  }
101
101
  }
102
102
 
103
- return metaSublemmaVerified;
103
+ return metaConditionalProofVerified;
104
104
  }
@@ -1,48 +1,28 @@
1
1
  "use strict";
2
2
 
3
- const Rule = require("../../rule"),
4
- verifyLabels = require("../../verify/labels"),
5
- verifyConclusion = require("../../verify/conclusion"),
3
+ const verifyConclusion = require("../../verify/conclusion"),
6
4
  verifyPremiseOrPremises = require("../../verify/premiseOrPremises");
7
5
 
8
- const { first } = require("../../utilities/array"),
9
- { nodeQuery, nodesQuery } = require("../../utilities/query");
6
+ const { nodeQuery } = require("../../utilities/query");
10
7
 
11
- const labelNodesQuery = nodesQuery("/rule/label"),
12
- conclusionNodeQuery = nodeQuery("/inferenceConditional/conclusion!"),
8
+ const conclusionNodeQuery = nodeQuery("/inferenceConditional/conclusion!"),
13
9
  premiseOrPremisesNodeQuery = nodeQuery("/inferenceConditional/premise|premises!"),
14
10
  inferenceConditionalNodeQuery = nodeQuery("/rule/inferenceConditional!");
15
11
 
16
- function verifyInferenceConditionalRule(ruleNode, rules, context) {
12
+ function verifyInferenceConditionalRule(ruleNode, premises, conclusions, context) {
17
13
  let inferenceConditionalRuleVerified = false;
18
14
 
19
15
  const inferenceConditionalNode = inferenceConditionalNodeQuery(ruleNode);
20
16
 
21
17
  if (inferenceConditionalNode !== null) {
22
- const labels = [],
23
- labelNodes = labelNodesQuery(ruleNode),
24
- labelsVerified = verifyLabels(labelNodes, labels, context);
25
-
26
- if (labelsVerified) {
27
- const premises = [],
28
- premiseOrPremisesNode = premiseOrPremisesNodeQuery(inferenceConditionalNode),
29
- premiseOrPremisesVerified = verifyPremiseOrPremises(premiseOrPremisesNode, premises, context);
30
-
31
- if (premiseOrPremisesVerified) {
32
- const conclusions = [],
33
- conclusionNode = conclusionNodeQuery(inferenceConditionalNode),
34
- conclusionVerified = verifyConclusion(conclusionNode, conclusions, context);
35
-
36
- if (conclusionVerified) {
37
- const firstConclusion = first(conclusions),
38
- conclusion = firstConclusion, ///
39
- rule = Rule.fromPremisesConclusionAndLabels(premises, conclusion, labels);
40
-
41
- rules.push(rule);
42
-
43
- inferenceConditionalRuleVerified = true;
44
- }
45
- }
18
+ const premiseOrPremisesNode = premiseOrPremisesNodeQuery(inferenceConditionalNode),
19
+ premiseOrPremisesVerified = verifyPremiseOrPremises(premiseOrPremisesNode, premises, context);
20
+
21
+ if (premiseOrPremisesVerified) {
22
+ const conclusionNode = conclusionNodeQuery(inferenceConditionalNode),
23
+ conclusionVerified = verifyConclusion(conclusionNode, conclusions, context);
24
+
25
+ inferenceConditionalRuleVerified = conclusionVerified;
46
26
  }
47
27
  }
48
28
 
@@ -1,39 +1,28 @@
1
1
  "use strict";
2
2
 
3
- const Rule = require("../../rule"),
4
- Conclusion = require("../../conclusion"),
5
- verifyLabels = require("../../verify/labels"),
3
+ const Conclusion = require("../../conclusion"),
6
4
  verifyUnqualifiedMetastatement = require("../../verify/metastatement/unqualified");
7
5
 
8
- const { nodeQuery, nodesQuery } = require("../../utilities/query");
6
+ const { nodeQuery } = require("../../utilities/query");
9
7
 
10
- const labelNodesQuery = nodesQuery("/rule/label"),
11
- metastatementNodeQuery = nodeQuery("/*/metastatement"),
8
+ const metastatementNodeQuery = nodeQuery("/*/metastatement"),
12
9
  unqualifiedMetastatementNodeQuery = nodeQuery("/rule/unqualifiedMetastatement!");
13
10
 
14
- function verifyUnqualifiedMetastatementRule(ruleNode, rules, context) {
11
+ function verifyUnqualifiedMetastatementRule(ruleNode, premises, conclusions, context) {
15
12
  let unqualifiedMetastatementRuleVerified = false;
16
13
 
17
14
  const unqualifiedMetastatementNode = unqualifiedMetastatementNodeQuery(ruleNode);
18
15
 
19
16
  if (unqualifiedMetastatementNode !== null) {
20
- const labels = [],
21
- labelNodes = labelNodesQuery(ruleNode),
22
- labelsVerified = verifyLabels(labelNodes, labels, context);
17
+ const unqualifiedMetastatementVerified = verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, context);
23
18
 
24
- if (labelsVerified) {
25
- const unqualifiedMetastatementVerified = verifyUnqualifiedMetastatement(unqualifiedMetastatementNode, context);
19
+ if (unqualifiedMetastatementVerified) {
20
+ const metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode),
21
+ conclusion = Conclusion.fromMetastatementNode(metastatementNode);
26
22
 
27
- if (unqualifiedMetastatementVerified) {
28
- const metastatementNode = metastatementNodeQuery(unqualifiedMetastatementNode),
29
- conclusion = Conclusion.fromMetastatementNode(metastatementNode),
30
- premises = [],
31
- rule = Rule.fromPremisesConclusionAndLabels(premises, conclusion, labels);
23
+ conclusions.push(conclusion);
32
24
 
33
- rules.push(rule);
34
-
35
- unqualifiedMetastatementRuleVerified = true;
36
- }
25
+ unqualifiedMetastatementRuleVerified = true;
37
26
  }
38
27
  }
39
28
 
@@ -2,7 +2,9 @@
2
2
 
3
3
  const { loggingUtilities } = require("necessary");
4
4
 
5
- const verifyMetaproof = require("../verify/metaproof"),
5
+ const Rule = require("../rule"),
6
+ verifyLabels = require("../verify/labels"),
7
+ verifyMetaproof = require("../verify/metaproof"),
6
8
  MetaproofContext = require("../context/metaproof"),
7
9
  verifyInferenceConditionalRule = require("../verify/rule/inferenceConditional"),
8
10
  verifyUnqualifiedMetastatementRule = require("../verify/rule/unqualifiedMetastatement");
@@ -24,13 +26,20 @@ function verifyRule(ruleNode, context) {
24
26
 
25
27
  log.debug(`Verifying the '${labelsString}' rule...`);
26
28
 
29
+ const labels = [],
30
+ labelsVerified = verifyLabels(labelNodes, labels, context);
31
+
32
+ if (labelsVerified) {
33
+ }
34
+
27
35
  const metaproofContext = MetaproofContext.fromContext(context);
28
36
 
29
37
  context = metaproofContext; ///
30
38
 
31
- const rules = [],
32
- inferenceConditionalRuleVerified = verifyInferenceConditionalRule(ruleNode, rules, context),
33
- unqualifiedMetastatementRuleVerified = verifyUnqualifiedMetastatementRule(ruleNode, rules, context);
39
+ const premises = [],
40
+ conclusions = [],
41
+ inferenceConditionalRuleVerified = verifyInferenceConditionalRule(ruleNode, premises, conclusions, context),
42
+ unqualifiedMetastatementRuleVerified = verifyUnqualifiedMetastatementRule(ruleNode, premises, conclusions, context);
34
43
 
35
44
  if (inferenceConditionalRuleVerified || unqualifiedMetastatementRuleVerified) {
36
45
  const metaproofNode = metaproofNodeQuery(ruleNode);
@@ -47,8 +56,9 @@ function verifyRule(ruleNode, context) {
47
56
  }
48
57
 
49
58
  if (ruleVerified) {
50
- const firstRule = first(rules),
51
- rule = firstRule; ///
59
+ const firstConclusion = first(conclusions),
60
+ conclusion = firstConclusion, ///
61
+ rule = Rule.fromPremisesConclusionAndLabels(premises, conclusion, labels);
52
62
 
53
63
  context.addRule(rule);
54
64
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-verify-cli",
3
3
  "author": "James Smith",
4
- "version": "0.0.263",
4
+ "version": "0.0.264",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-verify-cli",
7
7
  "description": "Occam's Verifier",
@@ -12,10 +12,10 @@
12
12
  "dependencies": {
13
13
  "argumentative": "^2.0.15",
14
14
  "necessary": "^11.0.40",
15
- "occam-custom-grammars": "^5.0.344",
15
+ "occam-custom-grammars": "^5.0.345",
16
16
  "occam-dom": "^3.0.171",
17
17
  "occam-grammar-utilities": "^7.0.66",
18
- "occam-grammars": "^1.0.311",
18
+ "occam-grammars": "^1.0.312",
19
19
  "occam-open-cli": "^5.0.37",
20
20
  "occam-parsers": "^16.0.122"
21
21
  },