kompile should disallow duplicate productions
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 45/100
Research direction
Start by running kompile tmp.k with the reproduction input to confirm the duplicate productions are accepted. Trace the kompile validation path for duplicate productions; done means this input fails to compile with an error while valid definitions continue to compile.
Written by the indexing model from the issue text.
Description
K Version
$ kompile --version
K version: v5.1.219-0-g30d285a844-dirty
Description
kompile should give an error on definitions with more than one duplicate production
Input Files
module TMP
imports BOOL
imports INT
imports K-EQUAL
syntax KItem ::= a(Int)
syntax Int ::= f(Int) [function, functional]
syntax Int ::= f(Int) [function, functional, smtlib(asdf)]
rule f(0) => 0
rule f(_) => 1 [owise]
rule f(_) >Int -1 => true [simplification, smt-lemma]
rule a(X) => .K requires f(X) >=Int -1
endmodule
Reproduction Steps
kompile tmp.k
Expected Behavior
The above file should not compile successfully.
- Dominant language
- Python
- Stars
- 591
- Forks
- 163
- PR merge metrics
- No merged PRs in 30d
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.
More from runtimeverification/k
-
runtimeverification/k#4939 · 1 assignee ·
-
Concolic Explorer Open
Difficulty 5/5 Over a week Newbie friendliness 32/100
runtimeverification/k#4937 ·
-
Difficulty 5/5 Over a week Newbie friendliness 30/100
runtimeverification/k#4936 ·
-
type:epic
runtimeverification/k#4934 · 4 comments · 1 assignee ·
-
runtimeverification/k#4924 · 1 assignee ·
All issues in runtimeverification/k
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
bancolombia/sentinel#23 ·
-
test md OpenCI
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
langchain-ai/deepagents#6450 ·
-
bug client
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100