Skip to content

Add documentation on goto-analyzer to the manual #6444

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

Merged

Conversation

martin-cs
Copy link
Collaborator

I have promised this to (in order of oldest promise) @tautschnig @remi-delmas-3000 @jimgrundy and @vmihalko . If any of you have a chance to look at this and say whether it is what you wanted / needed / hoped for then I would be very grateful.

@codecov
Copy link

codecov bot commented Nov 8, 2021

Codecov Report

Merging #6444 (d554aa8) into develop (06350a0) will decrease coverage by 1.78%.
The diff coverage is n/a.

❗ Current head d554aa8 differs from pull request most recent head 2d2a3f3. Consider uploading reports for the commit 2d2a3f3 to get more accurate results

@@             Coverage Diff             @@
##           develop    #6444      +/-   ##
===========================================
- Coverage    77.79%   76.01%   -1.79%     
===========================================
  Files         1568     1527      -41     
  Lines       180317   164465   -15852     
===========================================
- Hits        140285   125013   -15272     
+ Misses       40032    39452     -580     
Impacted Files Coverage Δ
unit/unit_tests.cpp 0.00% <0.00%> (-100.00%) ⬇️
src/util/find_symbols.h 0.00% <0.00%> (-100.00%) ⬇️
src/goto-cc/linker_script_merge.h 0.00% <0.00%> (-100.00%) ⬇️
src/goto-instrument/document_properties.cpp 0.00% <0.00%> (-89.35%) ⬇️
src/goto-instrument/uninitialized.cpp 0.00% <0.00%> (-87.76%) ⬇️
src/analyses/uninitialized_domain.cpp 0.00% <0.00%> (-81.09%) ⬇️
src/goto-cc/linker_script_merge.cpp 0.00% <0.00%> (-79.23%) ⬇️
src/goto-instrument/horn_encoding.cpp 0.00% <0.00%> (-72.28%) ⬇️
src/analyses/uninitialized_domain.h 0.00% <0.00%> (-55.56%) ⬇️
...olvers/flattening/c_bit_field_replacement_type.cpp 46.66% <0.00%> (-53.34%) ⬇️
... and 1254 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a914ead...2d2a3f3. Read the comment docs.

fix-point, then it will perform the task the user has chosen.

`--show`
: Displays a domain for every instruction in the GOTO binary. The
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🦁 domain or abstract value?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It displays the whole ai_domaint object. I am referring to this as the domain. In cases (in VSD) where I am talking about single abstract_objectt's I am calling them abstract values. Do you feel this is the correct terminology?


`--show-on-source`
: The source code of the program is displayed line-by-line with the
abstract domains corresponding to each location displayed between
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🦁

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As with the original 🦁


The histories described above are used to keep track of where in the
computation needs to be explored. The most precise option is to keep
one domain for every history but in some cases, to save memory and
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🦁

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As the original 🦁 above.

@martin-cs
Copy link
Collaborator Author

@peterschrammel thank you for the review and feedback; very helpful. What do you mean by ":lion:"?

@chrisr-diffblue
Copy link
Contributor

@peterschrammel thank you for the review and feedback; very helpful. What do you mean by "🦁"?

I think its a reference back to one of his previous comments "🦁 domain or abstract value?" - i.e. that comment applies everywhere else he's used the same emoij.

@martin-cs
Copy link
Collaborator Author

Aaaaahhhhhhh; thank you @chrisr-diffblue

@chrisr-diffblue
Copy link
Contributor

Either that, or its a warning you are pulling a lions tail 😁

@jimgrundy
Copy link
Collaborator

@martin-cs Thank you!

Copy link
Collaborator

@tautschnig tautschnig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!!

@martin-cs martin-cs force-pushed the feature/goto-analyzer-documentation branch from d554aa8 to 45fe2ed Compare November 22, 2021 18:17
@martin-cs
Copy link
Collaborator Author

@peterschrammel only the 🦁 issues remain then I can merge. Let me know!

Copy link
Collaborator

@jimgrundy jimgrundy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great. For those options that are unsound, can we get some warning in the output too incase someone uses them without reading the manual (perish the thought).

Copy link
Member

@peterschrammel peterschrammel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine with me

@martin-cs martin-cs force-pushed the feature/goto-analyzer-documentation branch from 45fe2ed to 2d2a3f3 Compare June 15, 2022 12:40
@martin-cs martin-cs requested a review from chris-ryder as a code owner June 15, 2022 12:40
@martin-cs
Copy link
Collaborator Author

@tautschnig @peterschrammel @chris-ryder The only failing tests are from the code coverage which has dropped because documentation seems to be included in the "percentage covered" metric. Do you mind if I just merge it?

@tautschnig
Copy link
Collaborator

@tautschnig @peterschrammel @chris-ryder The only failing tests are from the code coverage which has dropped because documentation seems to be included in the "percentage covered" metric. Do you mind if I just merge it?

No concerns from my side!

@martin-cs
Copy link
Collaborator Author

Thanks; I'll merge and if anyone knows how to remove documentation from the coverage count (or how we should test the documentation?) then I will have a go at fixing that in another PR.

@martin-cs martin-cs merged commit 26d87c4 into diffblue:develop Jun 17, 2022
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.

5 participants