potassco / potassco/constraint-handler
Brave/cautious reasoning for multi-literal values
Open
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 3
- Forks
- 0
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 20
Description
Consider the following program.
set_declare(dummy,x).
set_assign(dummy,x,val(int,0)).
1 { set_assign(dummy,x,val(int,1..3)) } 1.
The brave model should contain 3 elements: x -> { 0,1 }, x -> { 0,2 }, x -> { 0,3 }, and it shouldn't contain (for example) x -> { 0,1, 2, 3 }.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the implementation and tests for brave/cautious reasoning and multi-literal set_assign values. Reproduce the program from the issue, then trace how the three selected literals are combined. Done means the brave models are exactly the three mappings shown, without a model containing all values 0, 1, 2, and 3.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100