occam-verify-cli 0.0.1059 → 0.0.1063
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/assertion/contained.js +185 -0
- package/lib/assertion/defined.js +187 -0
- package/lib/assertion/subproof.js +3 -3
- package/lib/assertion/type.js +13 -6
- package/lib/context/release.js +5 -5
- package/lib/declaration.js +6 -50
- package/lib/equality.js +6 -7
- package/lib/equivalence.js +3 -2
- package/lib/frame.js +160 -64
- package/lib/metavariable.js +20 -7
- package/lib/mixins/statement/verify.js +24 -32
- package/lib/statement.js +58 -4
- package/lib/substitution/statement.js +17 -2
- package/lib/term.js +46 -3
- package/lib/variable.js +6 -2
- package/lib/verifier/intrinsicLevel.js +4 -4
- package/lib/verifier/metaLevel.js +4 -4
- package/lib/verifier/substitution.js +161 -0
- package/lib/verifier/topLevel.js +4 -4
- package/package.json +3 -3
- package/src/assertion/contained.js +172 -0
- package/src/assertion/defined.js +188 -0
- package/src/assertion/subproof.js +3 -2
- package/src/assertion/type.js +18 -7
- package/src/context/release.js +5 -7
- package/src/declaration.js +49 -49
- package/src/equality.js +7 -8
- package/src/equivalence.js +3 -1
- package/src/frame.js +204 -59
- package/src/metavariable.js +35 -11
- package/src/mixins/statement/verify.js +30 -42
- package/src/statement.js +85 -4
- package/src/substitution/statement.js +22 -2
- package/src/term.js +61 -3
- package/src/variable.js +7 -2
- package/src/verifier/intrinsicLevel.js +3 -3
- package/src/verifier/metaLevel.js +3 -3
- package/src/verifier/substitution.js +75 -0
- package/src/verifier/topLevel.js +3 -3
- package/lib/verify/assertion/contained.js +0 -107
- package/lib/verify/assertion/defined.js +0 -98
- package/lib/verify/assertion/subproof.js +0 -16
- package/src/verify/assertion/contained.js +0 -134
- package/src/verify/assertion/defined.js +0 -120
- package/src/verify/assertion/subproof.js +0 -9
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import Substitution from "../substitution";
|
|
4
|
+
import substitutionVerifier from "../verifier/substitution";
|
|
4
5
|
|
|
5
6
|
import { nodeQuery } from "../utilities/query";
|
|
6
7
|
import { substitutionNodeFromSubstitutionString } from "../utilities/node";
|
|
@@ -18,6 +19,25 @@ export default class StatementSubstitution extends Substitution {
|
|
|
18
19
|
return this.node;
|
|
19
20
|
}
|
|
20
21
|
|
|
22
|
+
verify(assignments, stated, localContext) {
|
|
23
|
+
let verified;
|
|
24
|
+
|
|
25
|
+
const statementSubstitutionString = this.string; ///
|
|
26
|
+
|
|
27
|
+
localContext.trace(`Verifying the '${statementSubstitutionString}' statement substitution...`);
|
|
28
|
+
|
|
29
|
+
const substitutionNode = this.node, ///
|
|
30
|
+
substitutionVerified = substitutionVerifier.verify(substitutionNode, assignments, stated, localContext);
|
|
31
|
+
|
|
32
|
+
verified = substitutionVerified; ///
|
|
33
|
+
|
|
34
|
+
if (verified) {
|
|
35
|
+
localContext.debug(`...verified the '${statementSubstitutionString}' statement substitution.`);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return verified;
|
|
39
|
+
}
|
|
40
|
+
|
|
21
41
|
toJSON() {
|
|
22
42
|
const string = this.getString(),
|
|
23
43
|
json = {
|
|
@@ -50,10 +70,10 @@ export default class StatementSubstitution extends Substitution {
|
|
|
50
70
|
const substitutionNode = substitutionNodeQuery(statementNode);
|
|
51
71
|
|
|
52
72
|
if (substitutionNode) {
|
|
53
|
-
const node = substitutionNode,
|
|
73
|
+
const node = substitutionNode, ///
|
|
54
74
|
string = fileContext.nodeAsString(substitutionNode);
|
|
55
75
|
|
|
56
|
-
statementSubstitution = new
|
|
76
|
+
statementSubstitution = new StatementSubstitution(string, node);
|
|
57
77
|
}
|
|
58
78
|
|
|
59
79
|
return statementSubstitution;
|
package/src/term.js
CHANGED
|
@@ -8,12 +8,15 @@ import verifyMixins from "./mixins/term/verify";
|
|
|
8
8
|
import termAsConstructorVerifier from "./verifier/termAsConstructor";
|
|
9
9
|
|
|
10
10
|
import { objectType } from "./type";
|
|
11
|
-
import { nodesQuery } from "./utilities/query"
|
|
11
|
+
import { nodeQuery, nodesQuery } from "./utilities/query"
|
|
12
12
|
import { termNodeFromTermString } from "./utilities/node";
|
|
13
|
+
import { variableNameFromVariableNode } from "./utilities/name";
|
|
13
14
|
|
|
14
15
|
const { filter } = arrayUtilities;
|
|
15
16
|
|
|
16
|
-
const
|
|
17
|
+
const termNodeQuery = nodeQuery("/*/term[0]"),
|
|
18
|
+
variableNodeQuery = nodeQuery("/term/variable!"),
|
|
19
|
+
variableNodesQuery = nodesQuery("//variable");
|
|
17
20
|
|
|
18
21
|
class Term {
|
|
19
22
|
constructor(string, node, type) {
|
|
@@ -45,12 +48,27 @@ class Term {
|
|
|
45
48
|
return matches;
|
|
46
49
|
}
|
|
47
50
|
|
|
51
|
+
getVariable(localContext) {
|
|
52
|
+
let variable = null;
|
|
53
|
+
|
|
54
|
+
const variableNode = variableNodeQuery(this.node);
|
|
55
|
+
|
|
56
|
+
if (variableNode !== null) {
|
|
57
|
+
const variableName = variableNameFromVariableNode(variableNode);
|
|
58
|
+
|
|
59
|
+
variable = localContext.findVariableByVariableName(variableName);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
return variable;
|
|
63
|
+
}
|
|
64
|
+
|
|
48
65
|
getVariables(localContext) {
|
|
49
66
|
const variables = [],
|
|
50
67
|
variableNodes = variableNodesQuery(this.node);
|
|
51
68
|
|
|
52
69
|
variableNodes.forEach((variableNode) => {
|
|
53
|
-
const
|
|
70
|
+
const variableName = variableNameFromVariableNode(variableNode),
|
|
71
|
+
variable = localContext.findVariableByVariableName(variableName),
|
|
54
72
|
variablesIncludesVariable = variables.includes(variable);
|
|
55
73
|
|
|
56
74
|
if (!variablesIncludesVariable) {
|
|
@@ -263,6 +281,46 @@ class Term {
|
|
|
263
281
|
|
|
264
282
|
return term;
|
|
265
283
|
}
|
|
284
|
+
|
|
285
|
+
static fromDefinedAssertionNode(definedAssertionNode, localContext) {
|
|
286
|
+
let term = null;
|
|
287
|
+
|
|
288
|
+
const termNode = termNodeQuery(definedAssertionNode);
|
|
289
|
+
|
|
290
|
+
if (termNode !== null) {
|
|
291
|
+
const variableNode = variableNodeQuery(termNode);
|
|
292
|
+
|
|
293
|
+
if (variableNode !== null) {
|
|
294
|
+
const node = termNode, ///
|
|
295
|
+
string = localContext.nodeAsString(node),
|
|
296
|
+
type = null;
|
|
297
|
+
|
|
298
|
+
term = new Term(string, node, type);
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
return term;
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
static fromContainedAssertionNode(containedAssertionNode, localContext) {
|
|
306
|
+
let term = null;
|
|
307
|
+
|
|
308
|
+
const termNode = termNodeQuery(containedAssertionNode);
|
|
309
|
+
|
|
310
|
+
if (termNode !== null) {
|
|
311
|
+
const variableNode = variableNodeQuery(termNode);
|
|
312
|
+
|
|
313
|
+
if (variableNode !== null) {
|
|
314
|
+
const node = termNode, ///
|
|
315
|
+
string = localContext.nodeAsString(node),
|
|
316
|
+
type = null;
|
|
317
|
+
|
|
318
|
+
term = new Term(string, node, type);
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
return term;
|
|
323
|
+
}
|
|
266
324
|
}
|
|
267
325
|
|
|
268
326
|
Object.assign(shim, {
|
package/src/variable.js
CHANGED
|
@@ -8,13 +8,12 @@ import { nodeQuery } from "./utilities/query";
|
|
|
8
8
|
import { objectType } from "./type";
|
|
9
9
|
import { variableNameFromVariableNode} from "./utilities/name";
|
|
10
10
|
import { variableNodeFromVariableString } from "./utilities/node";
|
|
11
|
-
import local from "./context/local";
|
|
12
11
|
|
|
13
12
|
const typeNodeQuery = nodeQuery("/variableDeclaration/type"),
|
|
14
13
|
variableNodeQuery = nodeQuery("/variableDeclaration/variable"),
|
|
15
14
|
termVariableNodeQuery = nodeQuery("/term/variable");
|
|
16
15
|
|
|
17
|
-
|
|
16
|
+
class Variable {
|
|
18
17
|
constructor(localContext, string, node, name, type) {
|
|
19
18
|
this.localContext = localContext; ///
|
|
20
19
|
this.string = string;
|
|
@@ -253,6 +252,12 @@ export default class Variable {
|
|
|
253
252
|
}
|
|
254
253
|
}
|
|
255
254
|
|
|
255
|
+
Object.assign(shim, {
|
|
256
|
+
Variable
|
|
257
|
+
});
|
|
258
|
+
|
|
259
|
+
export default Variable;
|
|
260
|
+
|
|
256
261
|
function typeFromJSON(json, fileContext) {
|
|
257
262
|
let { type } = json;
|
|
258
263
|
|
|
@@ -9,14 +9,14 @@ const termNodeQuery = nodeQuery("/term!");
|
|
|
9
9
|
|
|
10
10
|
class IntrinsicLevelVerifier extends Verifier {
|
|
11
11
|
verify(node, localContext) {
|
|
12
|
-
let
|
|
12
|
+
let verifiedAtIntrinsicLevel;
|
|
13
13
|
|
|
14
14
|
const nonTerminalNode = node, ///
|
|
15
15
|
nonTerminalNodeVerified = this.verifyNonTerminalNode(nonTerminalNode, localContext);
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
verifiedAtIntrinsicLevel = nonTerminalNodeVerified; ///
|
|
18
18
|
|
|
19
|
-
return
|
|
19
|
+
return verifiedAtIntrinsicLevel;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
static maps = [
|
|
@@ -10,15 +10,15 @@ const termNodeQuery = nodeQuery("/term!"),
|
|
|
10
10
|
|
|
11
11
|
class MetaLevelVerifier extends Verifier {
|
|
12
12
|
verify(node, assignments, stated, localContext) {
|
|
13
|
-
let
|
|
13
|
+
let verifiedAtMetaLevel;
|
|
14
14
|
|
|
15
15
|
const nonTerminalNode = node, ///
|
|
16
16
|
childNodes = nonTerminalNode.getChildNodes(),
|
|
17
17
|
nonTerminalNodeVerified = this.verifyChildNodes(childNodes, assignments, stated, localContext);
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
verifiedAtMetaLevel = nonTerminalNodeVerified; ///
|
|
20
20
|
|
|
21
|
-
return
|
|
21
|
+
return verifiedAtMetaLevel;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
static maps = [
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import shim from "../shim";
|
|
4
|
+
import Verifier from "../verifier";
|
|
5
|
+
|
|
6
|
+
import { nodeQuery } from "../utilities/query";
|
|
7
|
+
|
|
8
|
+
const termNodeQuery = nodeQuery("/term"),
|
|
9
|
+
frameNodeQuery = nodeQuery("/frame"),
|
|
10
|
+
variableNodeQuery = nodeQuery("/variable"),
|
|
11
|
+
metavariableNodeQuery = nodeQuery("/metavariable");
|
|
12
|
+
|
|
13
|
+
class SubstitutionVerifier extends Verifier {
|
|
14
|
+
verify(substitutionNode, assignments, stated, localContext) {
|
|
15
|
+
let substitutionVerified;
|
|
16
|
+
|
|
17
|
+
const nonTerminalNode = substitutionNode, ///
|
|
18
|
+
nonTerminalNodeVerified = this.verifyNonTerminalNode(nonTerminalNode, assignments, stated, localContext);
|
|
19
|
+
|
|
20
|
+
substitutionVerified = nonTerminalNodeVerified; ///
|
|
21
|
+
|
|
22
|
+
return substitutionVerified;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
static maps = [
|
|
26
|
+
{
|
|
27
|
+
nodeQuery: metavariableNodeQuery,
|
|
28
|
+
verify: (metavariableNode, assignments, stated, localContext) => {
|
|
29
|
+
const { Metavariable } = shim,
|
|
30
|
+
metavariable = Metavariable.fromMetavariableNode(metavariableNode, localContext),
|
|
31
|
+
metavariableVerified = metavariable.verify(localContext);
|
|
32
|
+
|
|
33
|
+
return metavariableVerified;
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
nodeQuery: variableNodeQuery,
|
|
38
|
+
verify: (variableNode, assignments, stated, localContext) => {
|
|
39
|
+
const { Variable } = shim,
|
|
40
|
+
variable = Variable.fromVariableNode(variableNode, localContext),
|
|
41
|
+
variableVerified = variable.verify(localContext);
|
|
42
|
+
|
|
43
|
+
return variableVerified;
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
nodeQuery: frameNodeQuery,
|
|
48
|
+
verify: (frameNode, assignments, stated, localContext) => {
|
|
49
|
+
const { Frame } = shim,
|
|
50
|
+
frame = Frame.fromFrameNode(frameNode, localContext),
|
|
51
|
+
frameVerified = frame.verify(localContext);
|
|
52
|
+
|
|
53
|
+
return frameVerified;
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
nodeQuery: termNodeQuery,
|
|
58
|
+
verify: (termNode, assignments, stated, localContext) => {
|
|
59
|
+
const { Term } = shim,
|
|
60
|
+
term = Term.fromTermNode(termNode, localContext),
|
|
61
|
+
termVerified = term.verify(localContext, () => {
|
|
62
|
+
const verifiedAhead = true;
|
|
63
|
+
|
|
64
|
+
return verifiedAhead;
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
return termVerified;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
];
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const substitutionVerifier = new SubstitutionVerifier();
|
|
74
|
+
|
|
75
|
+
export default substitutionVerifier;
|
package/src/verifier/topLevel.js
CHANGED
|
@@ -34,14 +34,14 @@ const errorNodeQuery = nodeQuery("/error"),
|
|
|
34
34
|
|
|
35
35
|
class TopLevelVerifier extends Verifier {
|
|
36
36
|
verify(node, fileContext) {
|
|
37
|
-
let
|
|
37
|
+
let verifiedAtTopLevel;
|
|
38
38
|
|
|
39
39
|
const nonTerminalNode = node, ///
|
|
40
40
|
nonTerminalNodeVerified = this.verifyNonTerminalNode(nonTerminalNode, fileContext);
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
verifiedAtTopLevel = nonTerminalNodeVerified; ///
|
|
43
43
|
|
|
44
|
-
return
|
|
44
|
+
return verifiedAtTopLevel;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
static maps = [
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return verifyContainedAssertion;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../../verifier/metaLevel"));
|
|
12
|
-
var _assertion = require("../../utilities/assertion");
|
|
13
|
-
var _query = require("../../utilities/query");
|
|
14
|
-
function _interop_require_default(obj) {
|
|
15
|
-
return obj && obj.__esModule ? obj : {
|
|
16
|
-
default: obj
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
var termVariableNodeQuery = (0, _query.nodeQuery)("/containedAssertion/term/variable!"), frameMetavariableNodeQuery = (0, _query.nodeQuery)("/containedAssertion/frame/metavariable!"), statementVariableNodesQuery = (0, _query.nodesQuery)("/containedAssertion/statement//variable"), statementMetavariableNodesQuery = (0, _query.nodesQuery)("/containedAssertion/statement//metavariable");
|
|
20
|
-
var verifyContainedAssertionFunctions = [
|
|
21
|
-
verifyDerivedContainedAssertion,
|
|
22
|
-
verifyStatedContainedAssertion
|
|
23
|
-
];
|
|
24
|
-
function verifyContainedAssertion(containedAssertionNode, assignments, stated, localContext) {
|
|
25
|
-
var containedAssertionVerified = false;
|
|
26
|
-
var containedAssertionString = localContext.nodeAsString(containedAssertionNode), savedStated = stated; ///
|
|
27
|
-
localContext.trace("Verifying the '".concat(containedAssertionString, "' contained assertion..."), containedAssertionNode);
|
|
28
|
-
assignments = null; ///
|
|
29
|
-
stated = true; ///
|
|
30
|
-
var verified = _metaLevel.default.verify(containedAssertionNode, assignments, stated, localContext);
|
|
31
|
-
stated = savedStated; ///
|
|
32
|
-
if (verified) {
|
|
33
|
-
containedAssertionVerified = verifyContainedAssertionFunctions.some(function(verifyContainedAssertionFunction) {
|
|
34
|
-
var containedAssertionVerified = verifyContainedAssertionFunction(containedAssertionNode, assignments, stated, localContext);
|
|
35
|
-
if (containedAssertionVerified) {
|
|
36
|
-
return true;
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
if (containedAssertionVerified) {
|
|
41
|
-
localContext.debug("...verified the '".concat(containedAssertionString, "' contained assertion."), containedAssertionNode);
|
|
42
|
-
}
|
|
43
|
-
return containedAssertionVerified;
|
|
44
|
-
}
|
|
45
|
-
function verifyDerivedContainedAssertion(containedAssertionNode, assignments, stated, localContext) {
|
|
46
|
-
var derivedContainedAssertionVerified = false;
|
|
47
|
-
if (!stated) {
|
|
48
|
-
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
49
|
-
localContext.trace("Verifying the '".concat(containedAssertionString, "' derived contained assertion..."), containedAssertionNode);
|
|
50
|
-
var assertionNegated = (0, _assertion.isAssertionNegated)(containedAssertionNode), frameMetavariableNode = frameMetavariableNodeQuery(containedAssertionNode), termVariableNode = termVariableNodeQuery(containedAssertionNode), negated = assertionNegated; ///
|
|
51
|
-
if (false) {
|
|
52
|
-
///
|
|
53
|
-
} else if (frameMetavariableNode !== null) {
|
|
54
|
-
var statementMetavariableNodes = statementMetavariableNodesQuery(containedAssertionNode), frameMetavariableNodeMatchesStatementMetavariableNode = statementMetavariableNodes.some(function(statementMetavariableNode) {
|
|
55
|
-
var frameMetavariableNodeMatchesStatementMetavariableNode = frameMetavariableNode.match(statementMetavariableNode);
|
|
56
|
-
if (frameMetavariableNodeMatchesStatementMetavariableNode) {
|
|
57
|
-
return true;
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
if (!negated) {
|
|
61
|
-
if (frameMetavariableNodeMatchesStatementMetavariableNode) {
|
|
62
|
-
derivedContainedAssertionVerified = true;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
if (negated) {
|
|
66
|
-
if (!frameMetavariableNodeMatchesStatementMetavariableNode) {
|
|
67
|
-
derivedContainedAssertionVerified = true;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
} else if (termVariableNode !== null) {
|
|
71
|
-
var statementVariableNodes = statementVariableNodesQuery(containedAssertionNode), termVariableNodeMatchesStatementVariableNode = statementVariableNodes.some(function(statementVariableNode) {
|
|
72
|
-
var termVariableNodeMatchesStatementVariableNode = termVariableNode.match(statementVariableNode);
|
|
73
|
-
if (termVariableNodeMatchesStatementVariableNode) {
|
|
74
|
-
return true;
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
if (!negated) {
|
|
78
|
-
if (termVariableNodeMatchesStatementVariableNode) {
|
|
79
|
-
derivedContainedAssertionVerified = true;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
if (negated) {
|
|
83
|
-
if (!termVariableNodeMatchesStatementVariableNode) {
|
|
84
|
-
derivedContainedAssertionVerified = true;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
if (derivedContainedAssertionVerified) {
|
|
89
|
-
localContext.debug("...verified the '".concat(containedAssertionString, "' derived contained assertion."), containedAssertionNode);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return derivedContainedAssertionVerified;
|
|
93
|
-
}
|
|
94
|
-
function verifyStatedContainedAssertion(containedAssertionNode, assignments, stated, localContext) {
|
|
95
|
-
var statedContainedAssertionVerified;
|
|
96
|
-
if (stated) {
|
|
97
|
-
var containedAssertionString = localContext.nodeAsString(containedAssertionNode);
|
|
98
|
-
localContext.trace("Verifying the '".concat(containedAssertionString, "' stated contained assertion..."), containedAssertionNode);
|
|
99
|
-
statedContainedAssertionVerified = true;
|
|
100
|
-
if (statedContainedAssertionVerified) {
|
|
101
|
-
localContext.debug("...verified the '".concat(containedAssertionString, "' stated contained assertion."), containedAssertionNode);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
return statedContainedAssertionVerified;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2NvbnRhaW5lZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IG1ldGFMZXZlbFZlcmlmaWVyIGZyb20gXCIuLi8uLi92ZXJpZmllci9tZXRhTGV2ZWxcIjtcblxuaW1wb3J0IHsgaXNBc3NlcnRpb25OZWdhdGVkIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9hc3NlcnRpb25cIjtcbmltcG9ydCB7IG5vZGVRdWVyeSwgbm9kZXNRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcblxuY29uc3QgdGVybVZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi90ZXJtL3ZhcmlhYmxlIVwiKSxcbiAgICAgIGZyYW1lTWV0YXZhcmlhYmxlTm9kZVF1ZXJ5ID0gbm9kZVF1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi9mcmFtZS9tZXRhdmFyaWFibGUhXCIpLFxuICAgICAgc3RhdGVtZW50VmFyaWFibGVOb2Rlc1F1ZXJ5ID0gbm9kZXNRdWVyeShcIi9jb250YWluZWRBc3NlcnRpb24vc3RhdGVtZW50Ly92YXJpYWJsZVwiKSxcbiAgICAgIHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzUXVlcnkgPSBub2Rlc1F1ZXJ5KFwiL2NvbnRhaW5lZEFzc2VydGlvbi9zdGF0ZW1lbnQvL21ldGF2YXJpYWJsZVwiKTtcblxuY29uc3QgdmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb25zID0gW1xuICB2ZXJpZnlEZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uLFxuICB2ZXJpZnlTdGF0ZWRDb250YWluZWRBc3NlcnRpb25cbl07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gZmFsc2U7XG5cbiAgY29uc3QgY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgc2F2ZWRTdGF0ZWQgPSBzdGF0ZWQ7IC8vL1xuXG4gIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBjb250YWluZWQgYXNzZXJ0aW9uLi4uYCwgY29udGFpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgYXNzaWdubWVudHMgPSBudWxsOyAvLy9cblxuICBzdGF0ZWQgPSB0cnVlOyAgLy8vXG5cbiAgY29uc3QgdmVyaWZpZWQgPSBtZXRhTGV2ZWxWZXJpZmllci52ZXJpZnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICBzdGF0ZWQgPSBzYXZlZFN0YXRlZDsgLy8vXG5cbiAgaWYgKHZlcmlmaWVkKSB7XG4gICAgY29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB2ZXJpZnlDb250YWluZWRBc3NlcnRpb25GdW5jdGlvbnMuc29tZSgodmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb24pID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uRnVuY3Rpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaWYgKGNvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgbG9jYWxDb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7Y29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nfScgY29udGFpbmVkIGFzc2VydGlvbi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcbiAgfVxuXG4gIHJldHVybiBjb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5RGVyaXZlZENvbnRhaW5lZEFzc2VydGlvbihjb250YWluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlcml2ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmICghc3RhdGVkKSB7XG4gICAgY29uc3QgY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBkZXJpdmVkIGNvbnRhaW5lZCBhc3NlcnRpb24uLi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGNvbnN0IGFzc2VydGlvbk5lZ2F0ZWQgPSBpc0Fzc2VydGlvbk5lZ2F0ZWQoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgZnJhbWVNZXRhdmFyaWFibGVOb2RlID0gZnJhbWVNZXRhdmFyaWFibGVOb2RlUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdGVybVZhcmlhYmxlTm9kZSA9IHRlcm1WYXJpYWJsZU5vZGVRdWVyeShjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICBuZWdhdGVkID0gYXNzZXJ0aW9uTmVnYXRlZDsgLy8vXG5cbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAoZnJhbWVNZXRhdmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgICBjb25zdCBzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlcyA9IHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzUXVlcnkoY29udGFpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgICBmcmFtZU1ldGF2YXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSA9IHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGVzLnNvbWUoKHN0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgZnJhbWVNZXRhdmFyaWFibGVOb2RlTWF0Y2hlc1N0YXRlbWVudE1ldGF2YXJpYWJsZU5vZGUgPSBmcmFtZU1ldGF2YXJpYWJsZU5vZGUubWF0Y2goc3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgICAgICAgaWYgKGZyYW1lTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKGZyYW1lTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAobmVnYXRlZCkge1xuICAgICAgICBpZiAoIWZyYW1lTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGVybVZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc3RhdGVtZW50VmFyaWFibGVOb2RlcyA9IHN0YXRlbWVudFZhcmlhYmxlTm9kZXNRdWVyeShjb250YWluZWRBc3NlcnRpb25Ob2RlKSxcbiAgICAgICAgICAgIHRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlID0gc3RhdGVtZW50VmFyaWFibGVOb2Rlcy5zb21lKChzdGF0ZW1lbnRWYXJpYWJsZU5vZGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgdGVybVZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRWYXJpYWJsZU5vZGUgPSB0ZXJtVmFyaWFibGVOb2RlLm1hdGNoKHN0YXRlbWVudFZhcmlhYmxlTm9kZSk7XG5cbiAgICAgICAgICAgICAgaWYgKHRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuXG4gICAgICBpZiAoIW5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKHRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpZiAobmVnYXRlZCkge1xuICAgICAgICBpZiAoIXRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlKSB7XG4gICAgICAgICAgZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICAgIGxvY2FsQ29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke2NvbnRhaW5lZEFzc2VydGlvblN0cmluZ30nIGRlcml2ZWQgY29udGFpbmVkIGFzc2VydGlvbi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZGVyaXZlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuXG5mdW5jdGlvbiB2ZXJpZnlTdGF0ZWRDb250YWluZWRBc3NlcnRpb24oY29udGFpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KSB7XG4gIGxldCBzdGF0ZWRDb250YWluZWRBc3NlcnRpb25WZXJpZmllZDtcblxuICBpZiAoc3RhdGVkKSB7XG4gICAgY29uc3QgY29udGFpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIGxvY2FsQ29udGV4dC50cmFjZShgVmVyaWZ5aW5nIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZWQgY29udGFpbmVkIGFzc2VydGlvbi4uLmAsIGNvbnRhaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgc3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQgPSB0cnVlO1xuXG4gICAgaWYgKHN0YXRlZENvbnRhaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtjb250YWluZWRBc3NlcnRpb25TdHJpbmd9JyBzdGF0ZWQgY29udGFpbmVkIGFzc2VydGlvbi5gLCBjb250YWluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5Q29udGFpbmVkQXNzZXJ0aW9uIiwidGVybVZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwiZnJhbWVNZXRhdmFyaWFibGVOb2RlUXVlcnkiLCJzdGF0ZW1lbnRWYXJpYWJsZU5vZGVzUXVlcnkiLCJub2Rlc1F1ZXJ5Iiwic3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZXNRdWVyeSIsInZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9ucyIsInZlcmlmeURlcml2ZWRDb250YWluZWRBc3NlcnRpb24iLCJ2ZXJpZnlTdGF0ZWRDb250YWluZWRBc3NlcnRpb24iLCJjb250YWluZWRBc3NlcnRpb25Ob2RlIiwiYXNzaWdubWVudHMiLCJzdGF0ZWQiLCJsb2NhbENvbnRleHQiLCJjb250YWluZWRBc3NlcnRpb25WZXJpZmllZCIsImNvbnRhaW5lZEFzc2VydGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInNhdmVkU3RhdGVkIiwidHJhY2UiLCJ2ZXJpZmllZCIsIm1ldGFMZXZlbFZlcmlmaWVyIiwidmVyaWZ5Iiwic29tZSIsInZlcmlmeUNvbnRhaW5lZEFzc2VydGlvbkZ1bmN0aW9uIiwiZGVidWciLCJkZXJpdmVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiLCJhc3NlcnRpb25OZWdhdGVkIiwiaXNBc3NlcnRpb25OZWdhdGVkIiwiZnJhbWVNZXRhdmFyaWFibGVOb2RlIiwidGVybVZhcmlhYmxlTm9kZSIsIm5lZ2F0ZWQiLCJzdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlcyIsImZyYW1lTWV0YXZhcmlhYmxlTm9kZU1hdGNoZXNTdGF0ZW1lbnRNZXRhdmFyaWFibGVOb2RlIiwic3RhdGVtZW50TWV0YXZhcmlhYmxlTm9kZSIsIm1hdGNoIiwic3RhdGVtZW50VmFyaWFibGVOb2RlcyIsInRlcm1WYXJpYWJsZU5vZGVNYXRjaGVzU3RhdGVtZW50VmFyaWFibGVOb2RlIiwic3RhdGVtZW50VmFyaWFibGVOb2RlIiwic3RhdGVkQ29udGFpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWlCQTs7O2VBQXdCQTs7O2dFQWZNO3lCQUVLO3FCQUNHOzs7Ozs7QUFFdEMsSUFBTUMsd0JBQXdCQyxJQUFBQSxnQkFBUyxFQUFDLHVDQUNsQ0Ms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
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return verifyDefinedAssertion;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../../verifier/metaLevel"));
|
|
12
|
-
var _query = require("../../utilities/query");
|
|
13
|
-
var _assertion = require("../../utilities/assertion");
|
|
14
|
-
var _name = require("../../utilities/name");
|
|
15
|
-
function _interop_require_default(obj) {
|
|
16
|
-
return obj && obj.__esModule ? obj : {
|
|
17
|
-
default: obj
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
var variableNodeQuery = (0, _query.nodeQuery)("/definedAssertion/term/variable!"), metavariableNodeQuery = (0, _query.nodeQuery)("/definedAssertion/frame/metavariable!");
|
|
21
|
-
var verifyDefinedAssertionFunctions = [
|
|
22
|
-
verifyDerivedDefinedAssertion,
|
|
23
|
-
verifyStatedDefinedAssertion
|
|
24
|
-
];
|
|
25
|
-
function verifyDefinedAssertion(definedAssertionNode, assignments, stated, localContext) {
|
|
26
|
-
var definedAssertionVerified;
|
|
27
|
-
var definedAssertionString = localContext.nodeAsString(definedAssertionNode), savedStated = stated; ///;
|
|
28
|
-
localContext.trace("Verifying the '".concat(definedAssertionString, "' defined assertion..."), definedAssertionNode);
|
|
29
|
-
assignments = null; ///
|
|
30
|
-
stated = true; ///
|
|
31
|
-
var verified = _metaLevel.default.verify(definedAssertionNode, assignments, stated, localContext);
|
|
32
|
-
stated = savedStated; ///
|
|
33
|
-
if (verified) {
|
|
34
|
-
definedAssertionVerified = verifyDefinedAssertionFunctions.some(function(verifyDefinedAssertionFunction) {
|
|
35
|
-
var definedAssertionVerified = verifyDefinedAssertionFunction(definedAssertionNode, assignments, stated, localContext);
|
|
36
|
-
if (definedAssertionVerified) {
|
|
37
|
-
return true;
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
if (definedAssertionVerified) {
|
|
42
|
-
localContext.debug("...verified the '".concat(definedAssertionString, "' defined assertion."), definedAssertionNode);
|
|
43
|
-
}
|
|
44
|
-
return definedAssertionVerified;
|
|
45
|
-
}
|
|
46
|
-
function verifyDerivedDefinedAssertion(definedAssertionNode, assignments, stated, localContext) {
|
|
47
|
-
var derivedDefinedAssertionVerified = false;
|
|
48
|
-
if (!stated) {
|
|
49
|
-
var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
|
|
50
|
-
localContext.trace("Verifying the '".concat(definedAssertionString, "' derived defined assertion..."), definedAssertionNode);
|
|
51
|
-
var assertionNegated = (0, _assertion.isAssertionNegated)(definedAssertionNode), metavariableNode = metavariableNodeQuery(definedAssertionNode), variableNode = variableNodeQuery(definedAssertionNode);
|
|
52
|
-
if (false) {
|
|
53
|
-
///
|
|
54
|
-
} else if (metavariableNode !== null) {
|
|
55
|
-
var metavariableName = (0, _name.metavariableNameFromMetavariableNode)(metavariableNode), metavariableDefinedByMetavariableName = localContext.isMetavariableDefinedByMetavariableName(metavariableName);
|
|
56
|
-
if (!assertionNegated) {
|
|
57
|
-
if (metavariableDefinedByMetavariableName) {
|
|
58
|
-
derivedDefinedAssertionVerified = true;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
if (assertionNegated) {
|
|
62
|
-
if (!metavariableDefinedByMetavariableName) {
|
|
63
|
-
derivedDefinedAssertionVerified = true;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
} else if (variableNode !== null) {
|
|
67
|
-
var variable = localContext.findVariableByVariableNode(variableNode), variableDefined = localContext.isVariableDefined(variable);
|
|
68
|
-
if (!assertionNegated) {
|
|
69
|
-
if (variableDefined) {
|
|
70
|
-
derivedDefinedAssertionVerified = true;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
if (assertionNegated) {
|
|
74
|
-
if (!variableDefined) {
|
|
75
|
-
derivedDefinedAssertionVerified = true;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
if (derivedDefinedAssertionVerified) {
|
|
80
|
-
localContext.debug("...verified the '".concat(definedAssertionString, "' derived defined assertion."), definedAssertionNode);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
return derivedDefinedAssertionVerified;
|
|
84
|
-
}
|
|
85
|
-
function verifyStatedDefinedAssertion(definedAssertionNode, assignments, stated, localContext) {
|
|
86
|
-
var statedDefinedAssertionVerified;
|
|
87
|
-
if (stated) {
|
|
88
|
-
var definedAssertionString = localContext.nodeAsString(definedAssertionNode);
|
|
89
|
-
localContext.trace("Verifying the '".concat(definedAssertionString, "' stated defined assertion..."), definedAssertionNode);
|
|
90
|
-
statedDefinedAssertionVerified = true;
|
|
91
|
-
if (statedDefinedAssertionVerified) {
|
|
92
|
-
localContext.debug("...verified the '".concat(definedAssertionString, "' stated defined assertion."), definedAssertionNode);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
return statedDefinedAssertionVerified;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL2RlZmluZWQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBtZXRhTGV2ZWxWZXJpZmllciBmcm9tIFwiLi4vLi4vdmVyaWZpZXIvbWV0YUxldmVsXCI7XG5cbmltcG9ydCB7IG5vZGVRdWVyeSB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvcXVlcnlcIjtcbmltcG9ydCB7IGlzQXNzZXJ0aW9uTmVnYXRlZCB9IGZyb20gXCIuLi8uLi91dGlsaXRpZXMvYXNzZXJ0aW9uXCI7XG5pbXBvcnQgeyBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUgfSBmcm9tIFwiLi4vLi4vdXRpbGl0aWVzL25hbWVcIjtcblxuY29uc3QgdmFyaWFibGVOb2RlUXVlcnkgPSBub2RlUXVlcnkoXCIvZGVmaW5lZEFzc2VydGlvbi90ZXJtL3ZhcmlhYmxlIVwiKSxcbiAgICAgIG1ldGF2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi9kZWZpbmVkQXNzZXJ0aW9uL2ZyYW1lL21ldGF2YXJpYWJsZSFcIik7XG5cbmNvbnN0IHZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbnMgPSBbXG4gIHZlcmlmeURlcml2ZWREZWZpbmVkQXNzZXJ0aW9uLFxuICB2ZXJpZnlTdGF0ZWREZWZpbmVkQXNzZXJ0aW9uXG5dO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uKGRlZmluZWRBc3NlcnRpb25Ob2RlLCBhc3NpZ25tZW50cywgc3RhdGVkLCBsb2NhbENvbnRleHQpIHtcbiAgbGV0IGRlZmluZWRBc3NlcnRpb25WZXJpZmllZDtcblxuICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgIHNhdmVkU3RhdGVkID0gc3RhdGVkOyAvLy87XG5cbiAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZWZpbmVkIGFzc2VydGlvbi4uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICBhc3NpZ25tZW50cyA9IG51bGw7IC8vL1xuXG4gIHN0YXRlZCA9IHRydWU7ICAvLy9cblxuICBjb25zdCB2ZXJpZmllZCA9IG1ldGFMZXZlbFZlcmlmaWVyLnZlcmlmeShkZWZpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICBzdGF0ZWQgPSBzYXZlZFN0YXRlZDsgLy8vXG5cbiAgaWYgKHZlcmlmaWVkKSB7XG4gICAgZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdmVyaWZ5RGVmaW5lZEFzc2VydGlvbkZ1bmN0aW9ucy5zb21lKCh2ZXJpZnlEZWZpbmVkQXNzZXJ0aW9uRnVuY3Rpb24pID0+IHtcbiAgICAgIGNvbnN0IGRlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbihkZWZpbmVkQXNzZXJ0aW9uTm9kZSwgYXNzaWdubWVudHMsIHN0YXRlZCwgbG9jYWxDb250ZXh0KTtcblxuICAgICAgaWYgKGRlZmluZWRBc3NlcnRpb25WZXJpZmllZCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGlmIChkZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQpIHtcbiAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVmaW5lZCBhc3NlcnRpb24uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuICB9XG5cbiAgcmV0dXJuIGRlZmluZWRBc3NlcnRpb25WZXJpZmllZDtcbn1cblxuZnVuY3Rpb24gdmVyaWZ5RGVyaXZlZERlZmluZWRBc3NlcnRpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IGZhbHNlO1xuXG4gIGlmICghc3RhdGVkKSB7XG4gICAgY29uc3QgZGVmaW5lZEFzc2VydGlvblN0cmluZyA9IGxvY2FsQ29udGV4dC5ub2RlQXNTdHJpbmcoZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgbG9jYWxDb250ZXh0LnRyYWNlKGBWZXJpZnlpbmcgdGhlICcke2RlZmluZWRBc3NlcnRpb25TdHJpbmd9JyBkZXJpdmVkIGRlZmluZWQgYXNzZXJ0aW9uLi4uYCwgZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgY29uc3QgYXNzZXJ0aW9uTmVnYXRlZCA9IGlzQXNzZXJ0aW9uTmVnYXRlZChkZWZpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgbWV0YXZhcmlhYmxlTm9kZSA9IG1ldGF2YXJpYWJsZU5vZGVRdWVyeShkZWZpbmVkQXNzZXJ0aW9uTm9kZSksXG4gICAgICAgICAgdmFyaWFibGVOb2RlID0gdmFyaWFibGVOb2RlUXVlcnkoZGVmaW5lZEFzc2VydGlvbk5vZGUpO1xuXG4gICAgaWYgKGZhbHNlKSB7XG4gICAgICAvLy9cbiAgICB9IGVsc2UgaWYgKG1ldGF2YXJpYWJsZU5vZGUgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IG1ldGF2YXJpYWJsZU5hbWUgPSBtZXRhdmFyaWFibGVOYW1lRnJvbU1ldGF2YXJpYWJsZU5vZGUobWV0YXZhcmlhYmxlTm9kZSksXG4gICAgICAgICAgICBtZXRhdmFyaWFibGVEZWZpbmVkQnlNZXRhdmFyaWFibGVOYW1lID0gbG9jYWxDb250ZXh0LmlzTWV0YXZhcmlhYmxlRGVmaW5lZEJ5TWV0YXZhcmlhYmxlTmFtZShtZXRhdmFyaWFibGVOYW1lKTtcblxuICAgICAgaWYgKCFhc3NlcnRpb25OZWdhdGVkKSB7XG4gICAgICAgIGlmIChtZXRhdmFyaWFibGVEZWZpbmVkQnlNZXRhdmFyaWFibGVOYW1lKSB7XG4gICAgICAgICAgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGFzc2VydGlvbk5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKCFtZXRhdmFyaWFibGVEZWZpbmVkQnlNZXRhdmFyaWFibGVOYW1lKSB7XG4gICAgICAgICAgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHZhcmlhYmxlTm9kZSAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgdmFyaWFibGUgPSBsb2NhbENvbnRleHQuZmluZFZhcmlhYmxlQnlWYXJpYWJsZU5vZGUodmFyaWFibGVOb2RlKSxcbiAgICAgICAgICAgIHZhcmlhYmxlRGVmaW5lZCA9IGxvY2FsQ29udGV4dC5pc1ZhcmlhYmxlRGVmaW5lZCh2YXJpYWJsZSk7XG5cbiAgICAgIGlmICghYXNzZXJ0aW9uTmVnYXRlZCkge1xuICAgICAgICBpZiAodmFyaWFibGVEZWZpbmVkKSB7XG4gICAgICAgICAgZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGFzc2VydGlvbk5lZ2F0ZWQpIHtcbiAgICAgICAgaWYgKCF2YXJpYWJsZURlZmluZWQpIHtcbiAgICAgICAgICBkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChkZXJpdmVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgZGVyaXZlZCBkZWZpbmVkIGFzc2VydGlvbi5gLCBkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGRlcml2ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQ7XG59XG5cbmZ1bmN0aW9uIHZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb24oZGVmaW5lZEFzc2VydGlvbk5vZGUsIGFzc2lnbm1lbnRzLCBzdGF0ZWQsIGxvY2FsQ29udGV4dCkge1xuICBsZXQgc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xuXG4gIGlmIChzdGF0ZWQpIHtcbiAgICBjb25zdCBkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nID0gbG9jYWxDb250ZXh0Lm5vZGVBc1N0cmluZyhkZWZpbmVkQXNzZXJ0aW9uTm9kZSk7XG5cbiAgICBsb2NhbENvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7ZGVmaW5lZEFzc2VydGlvblN0cmluZ30nIHN0YXRlZCBkZWZpbmVkIGFzc2VydGlvbi4uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcblxuICAgIHN0YXRlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCA9IHRydWU7XG5cbiAgICBpZiAoc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkKSB7XG4gICAgICBsb2NhbENvbnRleHQuZGVidWcoYC4uLnZlcmlmaWVkIHRoZSAnJHtkZWZpbmVkQXNzZXJ0aW9uU3RyaW5nfScgc3RhdGVkIGRlZmluZWQgYXNzZXJ0aW9uLmAsIGRlZmluZWRBc3NlcnRpb25Ob2RlKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGVkRGVmaW5lZEFzc2VydGlvblZlcmlmaWVkO1xufVxuIl0sIm5hbWVzIjpbInZlcmlmeURlZmluZWRBc3NlcnRpb24iLCJ2YXJpYWJsZU5vZGVRdWVyeSIsIm5vZGVRdWVyeSIsIm1ldGF2YXJpYWJsZU5vZGVRdWVyeSIsInZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbnMiLCJ2ZXJpZnlEZXJpdmVkRGVmaW5lZEFzc2VydGlvbiIsInZlcmlmeVN0YXRlZERlZmluZWRBc3NlcnRpb24iLCJkZWZpbmVkQXNzZXJ0aW9uTm9kZSIsImFzc2lnbm1lbnRzIiwic3RhdGVkIiwibG9jYWxDb250ZXh0IiwiZGVmaW5lZEFzc2VydGlvblZlcmlmaWVkIiwiZGVmaW5lZEFzc2VydGlvblN0cmluZyIsIm5vZGVBc1N0cmluZyIsInNhdmVkU3RhdGVkIiwidHJhY2UiLCJ2ZXJpZmllZCIsIm1ldGFMZXZlbFZlcmlmaWVyIiwidmVyaWZ5Iiwic29tZSIsInZlcmlmeURlZmluZWRBc3NlcnRpb25GdW5jdGlvbiIsImRlYnVnIiwiZGVyaXZlZERlZmluZWRBc3NlcnRpb25WZXJpZmllZCIsImFzc2VydGlvbk5lZ2F0ZWQiLCJpc0Fzc2VydGlvbk5lZ2F0ZWQiLCJtZXRhdmFyaWFibGVOb2RlIiwidmFyaWFibGVOb2RlIiwibWV0YXZhcmlhYmxlTmFtZSIsIm1ldGF2YXJpYWJsZU5hbWVGcm9tTWV0YXZhcmlhYmxlTm9kZSIsIm1ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUiLCJpc01ldGF2YXJpYWJsZURlZmluZWRCeU1ldGF2YXJpYWJsZU5hbWUiLCJ2YXJpYWJsZSIsImZpbmRWYXJpYWJsZUJ5VmFyaWFibGVOb2RlIiwidmFyaWFibGVEZWZpbmVkIiwiaXNWYXJpYWJsZURlZmluZWQiLCJzdGF0ZWREZWZpbmVkQXNzZXJ0aW9uVmVyaWZpZWQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWdCQTs7O2VBQXdCQTs7O2dFQWRNO3FCQUVKO3lCQUNTO29CQUNrQjs7Ozs7O0FBRXJELElBQU1DLG9CQUFvQkMsSUFBQUEsZ0JBQVMsRUFBQyxxQ0FDOUJDLHdCQUF3QkQsSUFBQUEsZ0JBQVMsRUFBQztBQUV4QyxJQUFNRSxrQ0FBa0M7SUFDdENDO0lBQ0FDO0NBQ0Q7QUFFYyxTQUFTTix1QkFBdUJPLG9CQUFvQixFQUFFQyxXQUFXLEVBQUVDLE1BQU0sRUFBRUMsWUFBWTtJQUNwRyxJQUFJQztJQUVKLElBQU1DLHlCQUF5QkYsYUFBYUcsWUFBWSxDQUFDTix1QkFDbkRPLGNBQWNMLFFBQVEsSUFBSTtJQUVoQ0MsYUFBYUss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
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
var _metaLevel = /*#__PURE__*/ _interop_require_default(require("../../verifier/metaLevel"));
|
|
6
|
-
function _interop_require_default(obj) {
|
|
7
|
-
return obj && obj.__esModule ? obj : {
|
|
8
|
-
default: obj
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
var verifySubproofAssertionFunctions = [
|
|
12
|
-
verifyDerivedSubproofAssertion,
|
|
13
|
-
verifyStatedSubproofAssertion
|
|
14
|
-
];
|
|
15
|
-
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy92ZXJpZnkvYXNzZXJ0aW9uL3N1YnByb29mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgbWV0YUxldmVsVmVyaWZpZXIgZnJvbSBcIi4uLy4uL3ZlcmlmaWVyL21ldGFMZXZlbFwiO1xuXG5jb25zdCB2ZXJpZnlTdWJwcm9vZkFzc2VydGlvbkZ1bmN0aW9ucyA9IFtcbiAgdmVyaWZ5RGVyaXZlZFN1YnByb29mQXNzZXJ0aW9uLFxuICB2ZXJpZnlTdGF0ZWRTdWJwcm9vZkFzc2VydGlvblxuXTtcblxuIl0sIm5hbWVzIjpbInZlcmlmeVN1YnByb29mQXNzZXJ0aW9uRnVuY3Rpb25zIiwidmVyaWZ5RGVyaXZlZFN1YnByb29mQXNzZXJ0aW9uIiwidmVyaWZ5U3RhdGVkU3VicHJvb2ZBc3NlcnRpb24iXSwibWFwcGluZ3MiOiJBQUFBOzs7O2dFQUU4Qjs7Ozs7O0FBRTlCLElBQU1BLG1DQUFtQztJQUN2Q0M7SUFDQUM7Q0FDRCJ9
|