Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP Improved cover analysis output #308

Closed
wants to merge 5 commits into from
Closed

WIP Improved cover analysis output #308

wants to merge 5 commits into from

Conversation

Kukovec
Copy link
Collaborator

@Kukovec Kukovec commented Oct 29, 2020

For example, given

--------------------------- MODULE test -------------------------------------

EXTENDS Integers

VARIABLE x,y

Init == x = 1 /\ y = 1

A1 == x' = 1 \/ x' = 2
A2 == x' = 3 \/ x' = 4
B1 == y' = 1 \/ y = 2
B2 == x' = 1 /\ (y' = 3 \/ y' = 4)

Next == 
    \/ A1 /\ B1
    \/ A1 /\ B2
    \/ A2 /\ B1
    \/ A2 /\ B2

=============================================================================

the new output is

test.tla:7:9-7:13   : Init may update x
test.tla:7:18-7:22  : Init may update y
test.tla:9:7-9:12   :   A1 may update x
test.tla:9:17-9:22  :   A1 may update x
test.tla:10:7-10:12 :   A2 may update x
test.tla:10:17-10:22:   A2 may update x
test.tla:11:7-11:12 :   B1 may update y
test.tla:12:18-12:23:   B2 may update y
test.tla:12:28-12:33:   B2 may update y

test.tla:7:9-7:22   : Init always updates: x, y
test.tla:9:7-9:22   :   A1 always updates: x
test.tla:10:7-10:22 :   A2 always updates: x
test.tla:11:7-11:21 :   B1 sometimes does not update: y 	 [WARNING!] 
test.tla:12:7-12:34 :   B2 always updates: y

Closes #298.

@Kukovec Kukovec requested a review from konnov October 29, 2020 14:54
@Kukovec
Copy link
Collaborator Author

Kukovec commented Oct 29, 2020

Side-note, I see some tests are failing because source information for operators is unavailable, this is an indication of an unrelated underlying bug.

@shonfeder
Copy link
Contributor

shonfeder commented Oct 29, 2020

Side-note, I see some tests are failing because source information for operators is unavailable, this is an indication of an unrelated underlying bug.

I suggest we fix the underling but here, or else in a separate PR that we merge in ahead of this one. We don't want to break the integration tests on the development branch, because it could then hide other regressions that show up later (prior to getting in the proper fix).

@Kukovec
Copy link
Collaborator Author

Kukovec commented Oct 29, 2020

The reordering of passes to accommodate the new cover analysis (specifically, addressing the incompatibility with inlining, which now deletes operator definitions from the module) should get its own PR, so this one should be put on hold until all bugs arising from the reordering are isolated, as not to get saturated with commits not related to cover analysis.

@shonfeder shonfeder changed the title Improved cover analysis output WIP Improved cover analysis output Nov 2, 2020
@shonfeder
Copy link
Contributor

(Marked as WIP so it doesn't show in our daily alerts for stale PRs) :)

@konnov
Copy link
Collaborator

konnov commented Dec 2, 2020

What is the status of this PR?

@Kukovec
Copy link
Collaborator Author

Kukovec commented Dec 4, 2020

What is the status of this PR?

Since other PRs (#343, previously #347) are linked to bugs and are thus more pressing, work on this will resume after #343 closes.

@Kukovec
Copy link
Collaborator Author

Kukovec commented Dec 11, 2020

#366 removed the need for cover analysis, so I'm scrapping this PR.

@Kukovec Kukovec closed this Dec 11, 2020
@konnov konnov deleted the jk/coverUX branch March 29, 2021 20:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEATURE] Friendly assignment analysis
3 participants