Skip to content

Commit 2187e56

Browse files
authored
Merge pull request github#13513 from github/ginsbach/EvaluationOfInstantiations
mention how instantiation-nested predicates are treated in stratification and evaluation
2 parents f09c44f + e4e91c7 commit 2187e56

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

docs/codeql/ql-language-reference/ql-language-specification.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2046,6 +2046,8 @@ A valid stratification must include each predicate and type in the QL program th
20462046

20472047
A valid stratification must not include the same predicate in multiple layers.
20482048

2049+
Each non-abstract predicate has an associated body. For predicates inside *declared modules*, this is the predicate declaration. The body of an *instantiation-nested* predicate is the body of the *underlying nested* predicate where all references and calls have been substituted with the *instantiation-relative* entity or alias.
2050+
20492051
Formulas, variable declarations and expressions within a predicate body have a *negation polarity* that is positive, negative, or zero. Positive and negative are opposites of each other, while zero is the opposite of itself. The negation polarity of a formula or expression is then determined as follows:
20502052

20512053
- The body of a predicate is positive.

0 commit comments

Comments
 (0)