Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
T
tlatools
Manage
Activity
Members
Labels
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
general
stups
tlatools
Commits
71923f44
Commit
71923f44
authored
Jul 10, 2019
by
Markus Alexander Kuppe
Browse files
Options
Downloads
Patches
Plain Diff
Clarify why CostModelCreator can skip actions with identical location
when reporting. [Documentation][TLC]
parent
5ce3e6c1
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
tlatools/src/tlc2/tool/coverage/CostModelCreator.java
+7
-1
7 additions, 1 deletion
tlatools/src/tlc2/tool/coverage/CostModelCreator.java
with
7 additions
and
1 deletion
tlatools/src/tlc2/tool/coverage/CostModelCreator.java
+
7
−
1
View file @
71923f44
...
...
@@ -335,6 +335,12 @@ public class CostModelCreator extends ExplorerVisitor {
}
// Order next-state actions based on location to print in order of location.
// Note that Action[] actions may contain action instances with identical
// location which is the case for actions that are evaluated in the scope of a
// Context, i.e. \E s \in ProcSet: action(s) \/ ...
// However, actions with identical location share the ActionWrapper instance
// which is why we can non-deterministically choose to report one of it without
// producing bogus results (see CostModelCreator.preVisit(ExploreNode) above).
final
Action
[]
actions
=
tool
.
getActions
();
final
Set
<
CostModel
>
reported
=
new
HashSet
<>();
final
Set
<
Action
>
sortedActions
=
new
TreeSet
<>(
new
Comparator
<
Action
>()
{
...
...
@@ -352,7 +358,7 @@ public class CostModelCreator extends ExplorerVisitor {
}
for
(
Action
invariant
:
tool
.
getInvariants
())
{
//TODO M
ight have
to be ordered similar to next-state actions above.
//TODO M
ay need
to be ordered similar to next-state actions above.
invariant
.
cm
.
report
();
}
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment