Conversation
There was a problem hiding this comment.
Pull request overview
This PR adds "explainability" features to increase the understandability of analysis results. The main contribution is a fixpoint history tracking mechanism implemented as an abstract state. This allows users to see how abstract values evolve during fixpoint iterations.
Key changes include:
- Introduction of
upchainanddownchainoperations to distinguish fixpoint traversal from general lattice operations (lub/glb) - Implementation of
HistoryStateandHistoryDomainclasses that wrap existing lattices to track fixpoint iteration history - Refactoring all fixpoint implementations to use the new operations
Reviewed changes
Copilot reviewed 51 out of 53 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| Lattice.java | Adds upchain and downchain interface methods with comprehensive documentation |
| BaseLattice.java | Provides default implementations that delegate to lubAux/glbAux |
| HistoryState.java | New class implementing history tracking with recursive stack structure |
| HistoryDomain.java | New domain wrapper that delegates operations while preserving history |
| CompoundState.java | Implements new operations by delegating to composed states |
| Various fixpoint classes | Replace lub/glb calls with upchain/downchain in join operations |
| Test files | Add tests for history tracking, rename test method, update test infrastructure |
| IMP test cases | Formatting fixes (whitespace) and new JSON output files for history tests |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
lisa/lisa-sdk/src/main/java/it/unive/lisa/analysis/Lattice.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 296 out of 491 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 296 out of 491 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 157 out of 551 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Adding features to increase the understandability of the results.
Implemented features
Closes #334