occam-verify-cli 0.0.959 → 0.0.960

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 (92) hide show
  1. package/bin/action/verify.js +16 -5
  2. package/bin/utilities/releaseContext.js +5 -8
  3. package/lib/context/file.js +38 -14
  4. package/lib/context/release.js +82 -52
  5. package/lib/frame.js +3 -3
  6. package/lib/index.js +5 -5
  7. package/lib/metavariable.js +9 -9
  8. package/lib/proofStep.js +15 -15
  9. package/lib/releaseContext/create.js +8 -9
  10. package/lib/releaseContext/initialise.js +67 -0
  11. package/lib/rule.js +5 -5
  12. package/lib/substitution/statementForMetavariable.js +8 -8
  13. package/lib/substitution/termForVariable.js +6 -6
  14. package/lib/substitution.js +7 -7
  15. package/lib/substitutions.js +7 -7
  16. package/lib/topLevelAssertion.js +5 -5
  17. package/lib/unifier/equality.js +7 -7
  18. package/lib/unifier/intrinsicLevel.js +4 -4
  19. package/lib/unifier/metaLevel.js +10 -10
  20. package/lib/unifier/statementWithCombinator.js +147 -0
  21. package/lib/unifier/{termAgainstConstructor.js → termWithConstructor.js} +17 -17
  22. package/lib/unify/conclusionWithStatement.js +34 -0
  23. package/lib/unify/consequentWithStatement.js +34 -0
  24. package/lib/unify/metavariableWithStatement.js +74 -0
  25. package/lib/unify/premiseWithProofStep.js +41 -0
  26. package/lib/unify/premisesWithProofSteps.js +31 -0
  27. package/lib/unify/statementAtainstStatement.js +6 -6
  28. package/lib/unify/statementWithMetaType.js +48 -0
  29. package/lib/unify/suppositionWithProffStep.js +41 -0
  30. package/lib/unify/suppositionsWithProofSteps.js +31 -0
  31. package/lib/unify/termWithTerm.js +21 -0
  32. package/lib/unify/termWithType.js +32 -0
  33. package/lib/unify/variableWithTerm.js +54 -0
  34. package/lib/verify/error.js +2 -2
  35. package/lib/verify/judgement.js +3 -3
  36. package/lib/verify/metavariable.js +4 -4
  37. package/lib/verify/statement/qualified.js +51 -51
  38. package/lib/verify/statement.js +18 -18
  39. package/lib/verify/statementAsCombinator.js +2 -2
  40. package/lib/verify/term.js +25 -25
  41. package/package.json +1 -1
  42. package/src/context/file.js +42 -17
  43. package/src/context/release.js +84 -45
  44. package/src/frame.js +2 -2
  45. package/src/index.js +1 -1
  46. package/src/metavariable.js +6 -6
  47. package/src/proofStep.js +14 -14
  48. package/src/releaseContext/create.js +8 -16
  49. package/src/releaseContext/{verify.js → initialise.js} +32 -23
  50. package/src/rule.js +4 -4
  51. package/src/substitution/statementForMetavariable.js +7 -7
  52. package/src/substitution/termForVariable.js +4 -4
  53. package/src/substitution.js +5 -5
  54. package/src/substitutions.js +5 -5
  55. package/src/topLevelAssertion.js +4 -4
  56. package/src/unifier/equality.js +6 -6
  57. package/src/unifier/intrinsicLevel.js +3 -3
  58. package/src/unifier/metaLevel.js +9 -9
  59. package/src/unifier/{statementAgainstCombinator.js → statementWithCombinator.js} +12 -12
  60. package/src/unifier/{termAgainstConstructor.js → termWithConstructor.js} +9 -9
  61. package/src/unify/{conclusionAgainstStatement.js → conclusionWithStatement.js} +3 -3
  62. package/src/unify/{consequentAgainstStatement.js → consequentWithStatement.js} +3 -3
  63. package/src/unify/{metavariableAgainstStatement.js → metavariableWithStatement.js} +12 -12
  64. package/src/unify/{premiseAgainstProofStep.js → premiseWithProofStep.js} +5 -5
  65. package/src/unify/{premisesAgainstProofSteps.js → premisesWithProofSteps.js} +3 -3
  66. package/src/unify/statementAtainstStatement.js +4 -4
  67. package/src/unify/{statementAgainstMetaType.js → statementWithMetaType.js} +5 -5
  68. package/src/unify/{suppositionAgainstProofStep.js → suppositionWithProffStep.js} +5 -5
  69. package/src/unify/{suppositionsAgainstProofSteps.js → suppositionsWithProofSteps.js} +3 -3
  70. package/src/unify/{termAgainstTerm.js → termWithTerm.js} +4 -4
  71. package/src/unify/{termAgainstType.js → termWithType.js} +4 -4
  72. package/src/unify/{variableAgainstTerm.js → variableWithTerm.js} +5 -5
  73. package/src/verify/error.js +1 -1
  74. package/src/verify/judgement.js +3 -3
  75. package/src/verify/metavariable.js +3 -3
  76. package/src/verify/statement/qualified.js +50 -50
  77. package/src/verify/statement.js +17 -17
  78. package/src/verify/statementAsCombinator.js +1 -1
  79. package/src/verify/term.js +24 -24
  80. package/lib/releaseContext/verify.js +0 -66
  81. package/lib/unifier/statementAgainstCombinator.js +0 -147
  82. package/lib/unify/conclusionAgainstStatement.js +0 -34
  83. package/lib/unify/consequentAgainstStatement.js +0 -34
  84. package/lib/unify/metavariableAgainstStatement.js +0 -74
  85. package/lib/unify/premiseAgainstProofStep.js +0 -41
  86. package/lib/unify/premisesAgainstProofSteps.js +0 -31
  87. package/lib/unify/statementAgainstMetaType.js +0 -48
  88. package/lib/unify/suppositionAgainstProofStep.js +0 -41
  89. package/lib/unify/suppositionsAgainstProofSteps.js +0 -31
  90. package/lib/unify/termAgainstTerm.js +0 -21
  91. package/lib/unify/termAgainstType.js +0 -32
  92. package/lib/unify/variableAgainstTerm.js +0 -54
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
- export default function verifyReleaseContext(dependency, dependentName, dependentReleased, context) {
4
- let releaseContextVerified = false;
3
+ export default function initialiseReleaseContext(dependency, dependentName, dependentReleased, context) {
4
+ let releaseContextInitialised = false;
5
5
 
6
6
  const { releaseContextMap } = context,
7
7
  dependencyName = dependency.getName(),
@@ -11,44 +11,37 @@ export default function verifyReleaseContext(dependency, dependentName, dependen
11
11
  if (releaseContext === null) {
12
12
  const { log } = context;
13
13
 
14
- log.error(`Unable to verify the '${dependencyName}' dependency's context because it has not been created.`);
14
+ log.warning(`Unable to initialise the '${dependencyName}' ontext because it has not been created.`);
15
15
  } else {
16
- const verified = releaseContext.isVerified();
16
+ releaseContextInitialised = releaseContext.isInitialised();
17
17
 
18
- if (verified) {
19
- releaseContextVerified = true;
20
- } else {
18
+ if (!releaseContextInitialised) {
21
19
  const released = releaseContext.isReleased();
22
20
 
23
21
  if (!released && dependentReleased) {
24
22
  const { log } = context;
25
23
 
26
- log.error(`Unable to verify the '${dependencyName}' dependency's context because its '${dependentName}' dependent is a package.`);
24
+ log.warning(`Unable to initialise the '${dependencyName}' dependency's context because its '${dependentName}' dependent is a package.`);
27
25
  } else {
28
- const dependencies = releaseContext.getDependencies();
26
+ const dependencyReleaseContextsInitialised = initialiseDependencyReleaseContexts(dependency, releaseContext, released, context);
29
27
 
30
- dependentName = dependencyName; ///
28
+ if (dependencyReleaseContextsInitialised) {
29
+ const { log } = context,
30
+ releaseContexts = retrieveReleaseContexts(releaseContext, releaseContextMap);
31
31
 
32
- dependentReleased = released; ///
32
+ log.debug(`Initialising the '${dependencyName}' context...`);
33
33
 
34
- releaseContextVerified = dependencies.everyDependency((dependency) => { ///
35
- const releaseContextVerified = verifyReleaseContext(dependency, dependentName, dependentReleased, context);
34
+ releaseContextInitialised = releaseContext.initialise(releaseContexts);
36
35
 
37
- if (releaseContextVerified) {
38
- return true;
39
- }
40
- });
41
-
42
- if (releaseContextVerified) {
43
- const releaseContexts = retrieveReleaseContexts(releaseContext, releaseContextMap);
44
-
45
- releaseContext.verify(releaseContexts);
36
+ releaseContextInitialised ?
37
+ log.info(`...initialised the '${dependencyName}' context.`) :
38
+ log.warning(`...unable to initialise the '${dependencyName}' context.`);
46
39
  }
47
40
  }
48
41
  }
49
42
  }
50
43
 
51
- return releaseContextVerified;
44
+ return releaseContextInitialised;
52
45
  }
53
46
 
54
47
  function retrieveReleaseContexts(releaseContext, releaseContextMap) {
@@ -87,3 +80,19 @@ function retrieveReleaseContexts(releaseContext, releaseContextMap) {
87
80
 
88
81
  return releaseContexts;
89
82
  }
83
+
84
+ function initialiseDependencyReleaseContexts(dependency, releaseContext, released, context) {
85
+ const dependencyName = dependency.getName(),
86
+ dependentName = dependencyName, ///
87
+ dependencies = releaseContext.getDependencies(),
88
+ dependentReleased = released, ///
89
+ dependencyReleaseContextsInitialised = dependencies.everyDependency((dependency) => { ///
90
+ const releaseContextInitialised = initialiseReleaseContext(dependency, dependentName, dependentReleased, context);
91
+
92
+ if (releaseContextInitialised) {
93
+ return true;
94
+ }
95
+ });
96
+
97
+ return dependencyReleaseContextsInitialised;
98
+ }
package/src/rule.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  import Substitutions from "./substitutions";
4
- import unifyPremisesAgainstProofSteps from "./unify/premisesAgainstProofSteps";
5
- import unifyConclusionAgainstStatement from "./unify/conclusionAgainstStatement";
4
+ import unifyPremisesWithProofSteps from "./unify/premisesWithProofSteps";
5
+ import unifyConclusionWithStatement from "./unify/conclusionWithStatement";
6
6
 
7
7
  export default class Rule {
8
8
  constructor(labels, premises, conclusion, fileContext) {
@@ -37,11 +37,11 @@ export default class Rule {
37
37
  proofStepsB = proofSteps, ///
38
38
  fileContextA = this.fileContext, ///
39
39
  localContextB = localContext, ///
40
- premisesUnified = unifyPremisesAgainstProofSteps(premisesA, proofStepsB, substitutions, fileContextA, localContextB);
40
+ premisesUnified = unifyPremisesWithProofSteps(premisesA, proofStepsB, substitutions, fileContextA, localContextB);
41
41
 
42
42
  if (premisesUnified) {
43
43
  const conclusionA = this.conclusion, ///
44
- conclusionUnified = unifyConclusionAgainstStatement(conclusionA, statementNode, substitutions, fileContextA, localContextB);
44
+ conclusionUnified = unifyConclusionWithStatement(conclusionA, statementNode, substitutions, fileContextA, localContextB);
45
45
 
46
46
  statementUnified = conclusionUnified; ///
47
47
  }
@@ -3,7 +3,7 @@
3
3
  import shim from "../shim";
4
4
  import Substitution from "../substitution";
5
5
  import TermForVariableSubstitution from "./termForVariable";
6
- import unifyStatementAgainstStatement from "../unify/statementAtainstStatement";
6
+ import unifyStatementWithStatement from "../unify/statementAtainstStatement";
7
7
 
8
8
  import { nodeQuery } from "../utilities/query";
9
9
  import { matchStatementModuloBrackets, bracketedStatementChildNodeFromStatementNode } from "../utilities/match";
@@ -74,8 +74,8 @@ export default class StatementForMetavariableSubstitution extends Substitution {
74
74
  return statementNodeMatches;
75
75
  }
76
76
 
77
- unifyAgainstEquivalence(equivalence, substitutions, localContextA, localContextB) {
78
- let unifiedAgainstEquivalence = false; ///
77
+ unifyWithEquivalence(equivalence, substitutions, localContextA, localContextB) {
78
+ let unifiedWithEquivalence = false; ///
79
79
 
80
80
  const metavariableNode = metavariableNodeQuery(this.statementNode);
81
81
 
@@ -89,10 +89,10 @@ export default class StatementForMetavariableSubstitution extends Substitution {
89
89
  nodeB = metavariableNode, ///
90
90
  unified = metaLevelUnifier.unify(nodeA, nodeB, substitutions, localContextA, localContextB);
91
91
 
92
- unifiedAgainstEquivalence = unified; ///
92
+ unifiedWithEquivalence = unified; ///
93
93
  }
94
94
 
95
- return unifiedAgainstEquivalence;
95
+ return unifiedWithEquivalence;
96
96
  }
97
97
 
98
98
  asString(localContextA, localContextB) {
@@ -156,9 +156,9 @@ function unifyStatement(statementNodeA, statementNodeB, substitution, substituti
156
156
 
157
157
  statementUnified = statementNodeAMatchesStatementNodeB; ///
158
158
  } else {
159
- const statementUnifiedAgainstStatement = unifyStatementAgainstStatement(statementNodeA, statementNodeB, substitution, substitutions, localContextA, localContextB);
159
+ const statementUnifiedWithStatement = unifyStatementWithStatement(statementNodeA, statementNodeB, substitution, substitutions, localContextA, localContextB);
160
160
 
161
- statementUnified = statementUnifiedAgainstStatement; ///
161
+ statementUnified = statementUnifiedWithStatement; ///
162
162
  }
163
163
 
164
164
  return statementUnified;
@@ -51,8 +51,8 @@ export default class TermForVariableSubstitution extends Substitution {
51
51
  return matchesVariableNode;
52
52
  }
53
53
 
54
- unifyAgainstEquivalence(equivalence, substitutions, localContextA, localContextB) {
55
- let unifiedAgainstEquivalence;
54
+ unifyWithEquivalence(equivalence, substitutions, localContextA, localContextB) {
55
+ let unifiedWithEquivalence;
56
56
 
57
57
  const equivalenceMatchesVariableNode = equivalence.matchVariableNode(this.variableNode);
58
58
 
@@ -60,11 +60,11 @@ export default class TermForVariableSubstitution extends Substitution {
60
60
  const equivalenceMatchesTermNode = equivalence.matchTermNode(this.termNode);
61
61
 
62
62
  if (equivalenceMatchesTermNode) {
63
- unifiedAgainstEquivalence = true;
63
+ unifiedWithEquivalence = true;
64
64
  }
65
65
  }
66
66
 
67
- return unifiedAgainstEquivalence;
67
+ return unifiedWithEquivalence;
68
68
  }
69
69
 
70
70
  asString(localContextA, localContextB) {
@@ -25,15 +25,15 @@ export default class Substitution {
25
25
  return matchesMetavariableNode;
26
26
  }
27
27
 
28
- unifyAgainstEquivalences(equivalences, substitutions, localContextA, localContextB) {
29
- const unifiedAgainstEquivalences = equivalences.some((equivalence) => {
30
- const substitutionUnifiedAgainstEquivalence = this.unifyAgainstEquivalence(equivalence, substitutions, localContextA, localContextB);
28
+ unifyWithEquivalences(equivalences, substitutions, localContextA, localContextB) {
29
+ const unifiedWithEquivalences = equivalences.some((equivalence) => {
30
+ const substitutionUnifiedWithEquivalence = this.unifyWithEquivalence(equivalence, substitutions, localContextA, localContextB);
31
31
 
32
- if (substitutionUnifiedAgainstEquivalence) {
32
+ if (substitutionUnifiedWithEquivalence) {
33
33
  return true;
34
34
  }
35
35
  });
36
36
 
37
- return unifiedAgainstEquivalences;
37
+ return unifiedWithEquivalences;
38
38
  }
39
39
  }
@@ -55,17 +55,17 @@ export default class Substitutions {
55
55
  localContextB.trace(`Removed the '${substitutionString}' substitution.`, substitutionNode);
56
56
  }
57
57
 
58
- unifyAgainstEquivalences(equivalences, localContextA, localContextB) {
59
- const unifiedAgainstEquivalences = this.everySubstitution((substitution) => {
58
+ unifyWithEquivalences(equivalences, localContextA, localContextB) {
59
+ const unifiedWithEquivalences = this.everySubstitution((substitution) => {
60
60
  const substitutions = this, ///
61
- substitutionUnifiedAgainstEquivalence = substitution.unifyAgainstEquivalences(equivalences, substitutions, localContextA, localContextB);
61
+ substitutionUnifiedWithEquivalence = substitution.unifyWithEquivalences(equivalences, substitutions, localContextA, localContextB);
62
62
 
63
- if (substitutionUnifiedAgainstEquivalence) {
63
+ if (substitutionUnifiedWithEquivalence) {
64
64
  return true;
65
65
  }
66
66
  });
67
67
 
68
- return unifiedAgainstEquivalences;
68
+ return unifiedWithEquivalences;
69
69
  }
70
70
 
71
71
  snapshot() {
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  import Substitutions from "./substitutions";
4
- import unifyConsequentAgainstStatement from "./unify/consequentAgainstStatement";
5
- import unifySuppositionsAgainstProofSteps from "./unify/suppositionsAgainstProofSteps";
4
+ import unifyConsequentWithStatement from "./unify/consequentWithStatement";
5
+ import unifySuppositionsWithProofSteps from "./unify/suppositionsWithProofSteps";
6
6
 
7
7
  export default class TopLevelAssertion {
8
8
  constructor(labels, suppositions, consequent, substitutions, fileContext) {
@@ -42,11 +42,11 @@ export default class TopLevelAssertion {
42
42
  fileContextA = this.fileContext, ///
43
43
  suppositionsA = this.suppositions, ///
44
44
  localContextB = localContext, ///
45
- suppositionsUnified = unifySuppositionsAgainstProofSteps(suppositionsA, proofStepsB, substitutions, fileContextA, localContextB);
45
+ suppositionsUnified = unifySuppositionsWithProofSteps(suppositionsA, proofStepsB, substitutions, fileContextA, localContextB);
46
46
 
47
47
  if (suppositionsUnified) {
48
48
  const consequentA = this.consequent, ///
49
- consequentUnified = unifyConsequentAgainstStatement(consequentA, statementNode, substitutions, fileContextA, localContext);
49
+ consequentUnified = unifyConsequentWithStatement(consequentA, statementNode, substitutions, fileContextA, localContext);
50
50
 
51
51
  statementUnified = consequentUnified; ///
52
52
  }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import Unifier from "../unifier";
4
- import unifyTermAgainstTerm from "../unify/termAgainstTerm";
4
+ import unifyTermWithTerm from "../unify/termWithTerm";
5
5
 
6
6
  import { nodeQuery } from "../utilities/query";
7
7
 
@@ -25,14 +25,14 @@ class EqualityUnifier extends Unifier {
25
25
  nodeQueryA: termNodeQuery,
26
26
  nodeQueryB: termNodeQuery,
27
27
  unify: (termNodeA, termNodeB, localContext) => {
28
- let termUnifiedAgainstTerm;
28
+ let termUnifiedWithTerm;
29
29
 
30
30
  const leftTermNode = termNodeA, ///
31
31
  rightTermNode = termNodeB; ///
32
32
 
33
- termUnifiedAgainstTerm = unifyTermAgainstTerm(leftTermNode, rightTermNode, localContext);
33
+ termUnifiedWithTerm = unifyTermWithTerm(leftTermNode, rightTermNode, localContext);
34
34
 
35
- if (!termUnifiedAgainstTerm) {
35
+ if (!termUnifiedWithTerm) {
36
36
  const nonTerminalNodeA = termNodeA, ///
37
37
  nonTerminalNodeB = termNodeB, ///
38
38
  nonTerminalNodeAChildNodes = nonTerminalNodeA.getChildNodes(),
@@ -41,10 +41,10 @@ class EqualityUnifier extends Unifier {
41
41
  childNodesB = nonTerminalNodeBChildNodes, ///
42
42
  childNodesVerified = equalityUnifier.unifyChildNodes(childNodesA, childNodesB, localContext);
43
43
 
44
- termUnifiedAgainstTerm = childNodesVerified; ///
44
+ termUnifiedWithTerm = childNodesVerified; ///
45
45
  }
46
46
 
47
- return termUnifiedAgainstTerm;
47
+ return termUnifiedWithTerm;
48
48
  }
49
49
  }
50
50
  ];
@@ -2,7 +2,7 @@
2
2
 
3
3
  import shim from "../shim";
4
4
  import Unifier from "../unifier";
5
- import unifyVariableAgainstTerm from "../unify/variableAgainstTerm";
5
+ import unifyVariableWithTerm from "../unify/variableWithTerm";
6
6
 
7
7
  import { nodeQuery } from "../utilities/query";
8
8
 
@@ -28,9 +28,9 @@ class IntrinsicLevelUnifier extends Unifier {
28
28
  nodeQueryB: termNodeQuery,
29
29
  unify: (termVariableNodeA, termNodeB, substitutions, localContextA, localContextB) => {
30
30
  const variableNodeA = termVariableNodeA, ///
31
- variableUnifiedAgainstTerm = unifyVariableAgainstTerm(variableNodeA, termNodeB, substitutions, localContextA, localContextB);
31
+ variableUnifiedWithTerm = unifyVariableWithTerm(variableNodeA, termNodeB, substitutions, localContextA, localContextB);
32
32
 
33
- return variableUnifiedAgainstTerm;
33
+ return variableUnifiedWithTerm;
34
34
  }
35
35
  }
36
36
  ];
@@ -2,8 +2,8 @@
2
2
 
3
3
  import shim from "../shim";
4
4
  import Unifier from "../unifier";
5
- import unifyVariableAgainstTerm from "../unify/variableAgainstTerm";
6
- import unifyMetavariableAgainstStatement from "../unify/metavariableAgainstStatement";
5
+ import unifyVariableWithTerm from "../unify/variableWithTerm";
6
+ import unifyMetavariableWithStatement from "../unify/metavariableWithStatement";
7
7
 
8
8
  import { nodeQuery } from "../utilities/query";
9
9
 
@@ -31,15 +31,15 @@ class MetaLevelUnifier extends Unifier {
31
31
  nodeQueryA: statementNodeQuery,
32
32
  nodeQueryB: statementNodeQuery,
33
33
  unify: (statementNodeA, statementNodeB, substitutions, localContextA, localContextB) => {
34
- let statementUnifiedAgainstStatement;
34
+ let statementUnifiedWithStatement;
35
35
 
36
36
  const metavariableNodeA = metavariableNodeQuery(statementNodeA);
37
37
 
38
38
  if (metavariableNodeA !== null) {
39
39
  const substitutionNodeA = substitutionNodeQuery(statementNodeA),
40
- metavariableUnifiedAgainstStatement = unifyMetavariableAgainstStatement(metavariableNodeA, statementNodeB, substitutionNodeA, substitutions, localContextA, localContextB);
40
+ metavariableUnifiedWithStatement = unifyMetavariableWithStatement(metavariableNodeA, statementNodeB, substitutionNodeA, substitutions, localContextA, localContextB);
41
41
 
42
- statementUnifiedAgainstStatement = metavariableUnifiedAgainstStatement; ///
42
+ statementUnifiedWithStatement = metavariableUnifiedWithStatement; ///
43
43
  } else {
44
44
  const nonTerminalNodeA = statementNodeA, ///
45
45
  nonTerminalNodeB = statementNodeB, ///
@@ -49,10 +49,10 @@ class MetaLevelUnifier extends Unifier {
49
49
  childNodesB = nonTerminalNodeBChildNodes, ///
50
50
  childNodesVerified = metaLevelUnifier.unifyChildNodes(childNodesA, childNodesB, substitutions, localContextA, localContextB);
51
51
 
52
- statementUnifiedAgainstStatement = childNodesVerified; ///
52
+ statementUnifiedWithStatement = childNodesVerified; ///
53
53
  }
54
54
 
55
- return statementUnifiedAgainstStatement;
55
+ return statementUnifiedWithStatement;
56
56
  }
57
57
  },
58
58
  {
@@ -60,9 +60,9 @@ class MetaLevelUnifier extends Unifier {
60
60
  nodeQueryB: termNodeQuery,
61
61
  unify: (termVariableNodeA, termNodeB, substitutions, localContextA, localContextB) => {
62
62
  const variableNodeA = termVariableNodeA, ///
63
- variableUnifiedAgainstTerm = unifyVariableAgainstTerm(variableNodeA, termNodeB, substitutions, localContextA, localContextB);
63
+ variableUnifiedWithTerm = unifyVariableWithTerm(variableNodeA, termNodeB, substitutions, localContextA, localContextB);
64
64
 
65
- return variableUnifiedAgainstTerm;
65
+ return variableUnifiedWithTerm;
66
66
  }
67
67
  }
68
68
  ];
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  import Unifier from "../unifier";
4
- import unifyTermAgainstType from "../unify/termAgainstType";
5
- import unifyStatementAgainstMetaType from "../unify/statementAgainstMetaType";
4
+ import unifyTermWithType from "../unify/termWithType";
5
+ import unifyStatementWithMetaType from "../unify/statementWithMetaType";
6
6
 
7
7
  import { nodeQuery } from "../utilities/query";
8
8
 
@@ -11,17 +11,17 @@ const termNodeQuery = nodeQuery("/term!"),
11
11
  metaTypeNodeQuery = nodeQuery("/metaType!"),
12
12
  statementNodeQuery = nodeQuery("/statement!");
13
13
 
14
- class StatementAgainstCombinatorUnifier extends Unifier {
14
+ class StatementWithCombinatorUnifier extends Unifier {
15
15
  unify(statementNode, combinatorStatementNode, localContext) {
16
- let statementUnifiedAgainstCombinator;
16
+ let statementUnifiedWithCombinator;
17
17
 
18
18
  const nonTerminalNodeA = statementNode, ///
19
19
  nonTerminalNodeB = combinatorStatementNode, ///
20
20
  nonTerminalNodeUnified = this.unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext);
21
21
 
22
- statementUnifiedAgainstCombinator = nonTerminalNodeUnified; ///
22
+ statementUnifiedWithCombinator = nonTerminalNodeUnified; ///
23
23
 
24
- return statementUnifiedAgainstCombinator;
24
+ return statementUnifiedWithCombinator;
25
25
  };
26
26
 
27
27
  static maps = [
@@ -31,9 +31,9 @@ class StatementAgainstCombinatorUnifier extends Unifier {
31
31
  unify: (statementNodeA, metaTypeNodeB, localContext) => {
32
32
  const metaTypeNode = metaTypeNodeB, ///
33
33
  statementNode = statementNodeA, ///
34
- statementUnifiedAgainstMetaType = unifyStatementAgainstMetaType(statementNode, metaTypeNode, localContext);
34
+ statementUnifiedWithMetaType = unifyStatementWithMetaType(statementNode, metaTypeNode, localContext);
35
35
 
36
- return statementUnifiedAgainstMetaType;
36
+ return statementUnifiedWithMetaType;
37
37
  }
38
38
  },
39
39
  {
@@ -42,14 +42,14 @@ class StatementAgainstCombinatorUnifier extends Unifier {
42
42
  unify: (termNodeA, typeNodeB, localContext) => {
43
43
  const termNode = termNodeA, ///
44
44
  typeNode = typeNodeB, ///
45
- termUnifiedAgainstType = unifyTermAgainstType(termNode, typeNode, localContext);
45
+ termUnifiedWithType = unifyTermWithType(termNode, typeNode, localContext);
46
46
 
47
- return termUnifiedAgainstType;
47
+ return termUnifiedWithType;
48
48
  }
49
49
  }
50
50
  ];
51
51
  }
52
52
 
53
- const statementAgainstCombinatorUnifier = new StatementAgainstCombinatorUnifier();
53
+ const statementWithCombinatorUnifier = new StatementWithCombinatorUnifier();
54
54
 
55
- export default statementAgainstCombinatorUnifier;
55
+ export default statementWithCombinatorUnifier;
@@ -1,24 +1,24 @@
1
1
  "use strict";
2
2
 
3
3
  import Unifier from "../unifier";
4
- import unifyTermAgainstType from "../unify/termAgainstType";
4
+ import unifyTermWithType from "../unify/termWithType";
5
5
 
6
6
  import { nodeQuery } from "../utilities/query";
7
7
 
8
8
  const termNodeQuery = nodeQuery("/term"),
9
9
  typeNodeQuery = nodeQuery("/type");
10
10
 
11
- class TermAgainstConstructorUnifier extends Unifier {
11
+ class TermWithConstructorUnifier extends Unifier {
12
12
  unify(termNode, constructorTermNode, localContext) {
13
- let termUnifiedAgainstConstructor;
13
+ let termUnifiedWithConstructor;
14
14
 
15
15
  const nonTerminalNodeA = termNode, ///
16
16
  nonTerminalNodeB = constructorTermNode, ///
17
17
  nonTerminalNodeUnified = this.unifyNonTerminalNode(nonTerminalNodeA, nonTerminalNodeB, localContext);
18
18
 
19
- termUnifiedAgainstConstructor = nonTerminalNodeUnified; ///
19
+ termUnifiedWithConstructor = nonTerminalNodeUnified; ///
20
20
 
21
- return termUnifiedAgainstConstructor;
21
+ return termUnifiedWithConstructor;
22
22
  };
23
23
 
24
24
  static maps = [
@@ -28,14 +28,14 @@ class TermAgainstConstructorUnifier extends Unifier {
28
28
  unify: (termNodeA, typeNodeB, localContext) => {
29
29
  const termNode = termNodeA, ///
30
30
  typeNode = typeNodeB, ///
31
- termUnifiedAgainstType = unifyTermAgainstType(termNode, typeNode, localContext);
31
+ termUnifiedWithType = unifyTermWithType(termNode, typeNode, localContext);
32
32
 
33
- return termUnifiedAgainstType;
33
+ return termUnifiedWithType;
34
34
  }
35
35
  }
36
36
  ];
37
37
  }
38
38
 
39
- const termAgainstConstructorUnifier = new TermAgainstConstructorUnifier();
39
+ const termWithConstructorUnifier = new TermWithConstructorUnifier();
40
40
 
41
- export default termAgainstConstructorUnifier;
41
+ export default termWithConstructorUnifier;
@@ -2,7 +2,7 @@
2
2
 
3
3
  import LocalContext from "../context/local";
4
4
 
5
- export default function unifyConclusionAgainstStatement(conclusionA, statementNodeB, substitutions, fileContextA, localContextB) {
5
+ export default function unifyConclusionWithStatement(conclusionA, statementNodeB, substitutions, fileContextA, localContextB) {
6
6
  let conclusionUnified = false;
7
7
 
8
8
  const conclusionAStatementNode = conclusionA.getStatementNode();
@@ -15,7 +15,7 @@ export default function unifyConclusionAgainstStatement(conclusionA, statementNo
15
15
 
16
16
  substitutions.snapshot();
17
17
 
18
- localContextB.trace(`Unifying the '${statementStringB}' statement against the conclusion's '${statementStringA}' statement...`, statementNodeB);
18
+ localContextB.trace(`Unifying the '${statementStringB}' statement with the conclusion's '${statementStringA}' statement...`, statementNodeB);
19
19
 
20
20
  const statementUnified = conclusionA.unifyStatement(statementNodeB, substitutions, localContextA, localContextB);
21
21
 
@@ -26,7 +26,7 @@ export default function unifyConclusionAgainstStatement(conclusionA, statementNo
26
26
  substitutions.rollback(localContextA, localContextB);
27
27
 
28
28
  if (conclusionUnified) {
29
- localContextB.debug(`...unified the '${statementStringB}' statement against the conclusion's '${statementStringA}' statement.`, statementNodeB);
29
+ localContextB.debug(`...unified the '${statementStringB}' statement with the conclusion's '${statementStringA}' statement.`, statementNodeB);
30
30
  }
31
31
  }
32
32
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  import LocalContext from "../context/local";
4
4
 
5
- export default function unifyConsequentAgainstStatement(consequentA, statementNodeB, substitutions, fileContextA, localContextB) {
5
+ export default function unifyConsequentWithStatement(consequentA, statementNodeB, substitutions, fileContextA, localContextB) {
6
6
  let consequentUnified = false;
7
7
 
8
8
  const consequentAStatementNode = consequentA.getStatementNode();
@@ -15,7 +15,7 @@ export default function unifyConsequentAgainstStatement(consequentA, statementNo
15
15
 
16
16
  substitutions.snapshot();
17
17
 
18
- localContextB.trace(`Unifying the '${statementStringB}' statement against the consequent's '${statementStringA}' statement...`, statementNodeB);
18
+ localContextB.trace(`Unifying the '${statementStringB}' statement with the consequent's '${statementStringA}' statement...`, statementNodeB);
19
19
 
20
20
  const statementUnified = consequentA.unifyStatement(statementNodeB, substitutions, localContextA, localContextB);
21
21
 
@@ -26,7 +26,7 @@ export default function unifyConsequentAgainstStatement(consequentA, statementNo
26
26
  substitutions.rollback(localContextA, localContextB);
27
27
 
28
28
  if (consequentUnified) {
29
- localContextB.debug(`...unified the '${statementStringB}' statement against the consequent's '${statementStringA}' statement.`, statementNodeB);
29
+ localContextB.debug(`...unified the '${statementStringB}' statement with the consequent's '${statementStringA}' statement.`, statementNodeB);
30
30
  }
31
31
  }
32
32
 
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
 
3
3
  import TermForVariableSubstitution from "../substitution/termForVariable";
4
- import unifyStatementAgainstStatement from "../unify/statementAtainstStatement";
4
+ import unifyStatementWithStatement from "../unify/statementAtainstStatement";
5
5
  import StatementForMetavariableSubstitution from "../substitution/statementForMetavariable";
6
6
 
7
7
  import { nodeQuery } from "../utilities/query";
8
8
 
9
9
  const metavariableNodeQuery = nodeQuery("/statement/metavariable");
10
10
 
11
- export default function unifyMetavariableAgainstStatement(metavariableNodeA, statementNodeB, substitutionNodeA, substitutions, localContextA, localContextB) {
12
- let metavariableUnifiedAgainstStatement = false;
11
+ export default function unifyMetavariableWithStatement(metavariableNodeA, statementNodeB, substitutionNodeA, substitutions, localContextA, localContextB) {
12
+ let metavariableUnifiedWithStatement = false;
13
13
 
14
14
  const substitution = substitutions.findSubstitution((substitution) => {
15
15
  const substitutionMatchesMetavariableNodeA = substitution.matchMetavariableNode(metavariableNodeA);
@@ -28,10 +28,10 @@ export default function unifyMetavariableAgainstStatement(metavariableNodeA, sta
28
28
  localContext = localContextB, ///
29
29
  substitution = termForVariableSubstitution, ///
30
30
  statementNodeA = substitutionStatementNode, ///
31
- statementUnifiedAgainstStatement = unifyStatementAgainstStatement(statementNodeA, statementNodeB, substitution, substitutions, localContext, localContext);
31
+ statementUnifiedWithStatement = unifyStatementWithStatement(statementNodeA, statementNodeB, substitution, substitutions, localContext, localContext);
32
32
 
33
- if (statementUnifiedAgainstStatement) {
34
- metavariableUnifiedAgainstStatement = true;
33
+ if (statementUnifiedWithStatement) {
34
+ metavariableUnifiedWithStatement = true;
35
35
  }
36
36
  } else {
37
37
  const substitutionSubstitution = substitution.getSubstitution();
@@ -43,16 +43,16 @@ export default function unifyMetavariableAgainstStatement(metavariableNodeA, sta
43
43
 
44
44
  const localContext = localContextB, ///
45
45
  substitution = substitutionSubstitution,
46
- statementUnifiedAgainstStatement = unifyStatementAgainstStatement(statementNodeA, statementNodeB, substitution, substitutions, localContext, localContext);
46
+ statementUnifiedWithStatement = unifyStatementWithStatement(statementNodeA, statementNodeB, substitution, substitutions, localContext, localContext);
47
47
 
48
- if (statementUnifiedAgainstStatement) {
49
- metavariableUnifiedAgainstStatement = true;
48
+ if (statementUnifiedWithStatement) {
49
+ metavariableUnifiedWithStatement = true;
50
50
  }
51
51
  } else {
52
52
  const substitutionMatchesStatementNodeB = substitution.matchStatementNode(statementNodeB);
53
53
 
54
54
  if (substitutionMatchesStatementNodeB) {
55
- metavariableUnifiedAgainstStatement = true;
55
+ metavariableUnifiedWithStatement = true;
56
56
  }
57
57
  }
58
58
  }
@@ -72,11 +72,11 @@ export default function unifyMetavariableAgainstStatement(metavariableNodeA, sta
72
72
  substitutions.addSubstitution(substitution, localContextA, localContextB);
73
73
  }
74
74
 
75
- metavariableUnifiedAgainstStatement = true;
75
+ metavariableUnifiedWithStatement = true;
76
76
  }
77
77
  }
78
78
 
79
- return metavariableUnifiedAgainstStatement;
79
+ return metavariableUnifiedWithStatement;
80
80
  }
81
81
 
82
82
  function metavariableFromStatementNode(statementNode, localContext) {
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { subproofNodeAsSubproofString } from "../utilities/unify";
4
4
 
5
- export default function unifyPremiseAgainstProofStep(premiseA, proofStepB, substitutions, localContextA, localContextB) {
5
+ export default function unifyPremiseWithProofStep(premiseA, proofStepB, substitutions, localContextA, localContextB) {
6
6
  let premiseUnified = false;
7
7
 
8
8
  const premiseAStatementNode = premiseA.getStatementNode();
@@ -20,12 +20,12 @@ export default function unifyPremiseAgainstProofStep(premiseA, proofStepB, subst
20
20
  if (subproofNodeB !== null) {
21
21
  const subproofStringB = subproofNodeAsSubproofString(subproofNodeB, localContextB);
22
22
 
23
- localContextB.trace(`Unifying the '${subproofStringB}' subproof against the premise's '${statementStringA}' statement...`, subproofNodeB);
23
+ localContextB.trace(`Unifying the '${subproofStringB}' subproof with the premise's '${statementStringA}' statement...`, subproofNodeB);
24
24
 
25
25
  const subproofUnified = premiseA.unifySubproof(subproofNodeB, substitutions, localContextA, localContextB);
26
26
 
27
27
  if (subproofUnified) {
28
- localContextB.debug(`...unified the '${subproofStringB}' subproof against the premise's '${statementStringA}' statement.`, subproofNodeB);
28
+ localContextB.debug(`...unified the '${subproofStringB}' subproof with the premise's '${statementStringA}' statement.`, subproofNodeB);
29
29
 
30
30
  premiseUnified = true;
31
31
  }
@@ -34,12 +34,12 @@ export default function unifyPremiseAgainstProofStep(premiseA, proofStepB, subst
34
34
  if (statementNodeB !== null) {
35
35
  const statementStringB = localContextB.nodeAsString(statementNodeB);
36
36
 
37
- localContextB.trace(`Unifying the '${statementStringB}' statement against the premise's '${statementStringA}' statement...`, statementNodeB);
37
+ localContextB.trace(`Unifying the '${statementStringB}' statement with the premise's '${statementStringA}' statement...`, statementNodeB);
38
38
 
39
39
  const statementUnified = premiseA.unifyStatement(statementNodeB, substitutions, localContextA, localContextB);
40
40
 
41
41
  if (statementUnified) {
42
- localContextB.debug(`...unified the '${statementStringB}' statement against the premise's '${statementStringA}' statement.`, statementNodeB);
42
+ localContextB.debug(`...unified the '${statementStringB}' statement with the premise's '${statementStringA}' statement.`, statementNodeB);
43
43
 
44
44
  premiseUnified = true;
45
45
  }