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

[GemCutter] Commutativity Condition Synthesis #696

Merged
merged 231 commits into from
Nov 18, 2024
Merged

Conversation

maul-esel
Copy link
Contributor

Based on @ebbima's thesis, this branch adds support for synthesis and proofs of commutativity conditions to GemCutter's CEGAR loop.

ebbima and others added 30 commits November 28, 2023 16:01
fixes and moved some code from CommutativityConditionChecker's constructor to checkConditionalCommutativity(...)
Checker classes now return a List<IPredicate> representing a proof of infeasibility,
ConditionalCommutativityInterpolantProvider as implementation of the generalizatonApproach
missing for integration:
- criterion
- independenceRelation
- SemanticIndependenceConditionGenerator
…onditionalCommutativityChecker

(not sure if implementations are as intended and enough in order to work for the generator)
integrated usage of interpolants of mCopy for independence checking and condition generation
integrated detection of infeasible subrun
fixed missing usage of subrun instead of mRun
- Let ConditionalCommutativityChecker work with Word<L> and list of
  control configurations, rather than IRun.
- This allows to remove the hack of special DebugPredicate handling in
   PartialOrderCegarLoop#getControlConfigurationsFromCounterexample
- It also avoids computing the same control configurations multiple times.
- use ISleepSetStateFactory to extract sleep set from state
- remove obsolete (?) sleep set check in ConditionalCommutativityChecker
@maul-esel maul-esel requested a review from ebbima November 17, 2024 11:54
@maul-esel maul-esel merged commit 1c162eb into dev Nov 18, 2024
2 checks passed
@maul-esel maul-esel deleted the wip/dk/conditional-comm branch November 18, 2024 18:32
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.

2 participants