-
Notifications
You must be signed in to change notification settings - Fork 44
Dynamic POR for Verification of Concurrent Programs with Loops
maul.esel edited this page Jan 13, 2023
·
6 revisions
...
- Sound sequentialization for concurrent program verification (https://dl.acm.org/doi/10.1145/3519939.3523727)
- Dynamic partial-order reduction for model checking software (https://dl.acm.org/doi/10.1145/1047659.1040315)
- Verification of Concurrent Programs Using Petri Net Unfoldings (https://link.springer.com/chapter/10.1007/978-3-030-67067-2_9)
- ...
- definition of "thread-equivalence" -- is it an equivalence, is it well-defined?
- problems with disabling actions "of other processes"
- one example where the algorithm seems to miss an equivalence class
- possible procedure contracts
- discussion of input requirements; formal definition of requirements on "threads" assignment (seems like simply an equivalence relation)
- pseudocode, in particular processes and preference order
- Ultimate setup
- why do equivalent words not always lead to the same states
- ICFGs: interprocedural control flow graphs, i.e., control flow graphs with special edges for fork and join
- replacement for "process" notion in DPOR: definition based solely on language (which can be checked on Petri net), or definition directly on Petri net structure
- Petri nets & Petri programs
- Ultimate setup
-
check failing example against proof of DPOR paper
-
correctness: think of procedure contracts & invariants
-
Dominik: read pseudocode with "seen" set
-
improve input requirements (define formally), pseudocode
-
look into Petri nets
- Theoretic Foundation of DPOR
- Input requirements
- Happens-before relation
- Translation of DPOR algorithm
- Correctness theorem
- Implementation
- Architecture Planning
- Clock Vectors
- DPOR algorithm
- Unit Tests & Debugging
- Integration Tests & Debugging
- Evaluation
- Thesis
- Home
- Ultimate Development
- Ultimate Build System
- Documentation
- Project Topics