Concolic Explorer
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 32/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- python
- Área
- compilers, testing-qa
Línea de trabajo
The issue names ConcolicExplorer, Checker, generate_proof_trace, and guided_execute, but no files or tests. Start by locating those entry points and tracing the existing LLVM-backed execution flow. Done means the worklist explores satisfiable remainders to completion, reports UNKNOWN as UndecidedObligation, and respects the stated deterministic-semantics and missing-rule limitations.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
ConcolicExplorer builds the proof the Checker validates: a concrete seed names one path, the Checker folds it into edges plus a remainder, and that remainder's model is the next seed — repeated until no satisfiable remainder is left.
worklist ← [ (root, get_model(φ)) ] # an open node + a concrete seed for it
while worklist:
(node, seed) ← worklist.pop()
τ ← generate_proof_trace(seed) # run the seed on the LLVM backend → rule sequence
S ← node
loop:
r ← guided_execute(S, τ) # fold edges; stop at first SAT remainder or trace end
record r.edge
case r:
SAT remainder (guard g): # taken rule covers only part of S
record branch g (→ r.S')
worklist.push( (node ∧ ¬g, r.model) ) # still-uncovered region: more guards to find
S, τ ← r.S', τ[r.consumed:] # continue along the taken branch
UNKNOWN:
emit UndecidedObligation; break
TRACE END:
close S' (cover to target / loop, terminal, or Failed counterexample); break
# worklist empty ⇒ every remainder unsatisfiable or covered ⇒ all paths covered
Limitations
- Non-deterministic semantics. Concrete execution takes one rule per state (by priority), so it can never witness several rules applying to the same concrete state — hence the deterministic-semantics scope.
- Rules missing from the concrete trace. Some rules never fire in concrete execution (e.g. symbolic-only
[symbolic]rules and lemmas), so the LLVM trace cannot name them; the symbolic side must supply them itself. This may need composable symbolic execution to ensure the concolic execution only works for thesrcwithout theassumeinstructions in thetest.
- Lenguaje dominante
- Python
- Estrellas
- 591
- Forks
- 163
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de runtimeverification/k
-
Introduce composable symbolic execution interface in pyxQuizá libre de nuevo @Stevengre la tomó hace 99 días y no hay ningún pull request abierto. Abierto
runtimeverification/k#4939 · 1 asignado ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 30/100
runtimeverification/k#4936 ·
-
Accelerating all-path reachability proofs with one-path reachability proofsQuizá libre de nuevo @Stevengre la tomó hace 104 días y no hay ningún pull request abierto. Abiertotype:epic
runtimeverification/k#4934 · 4 comentarios · 1 asignado ·
-
Support progressive depth halving as a generic policy in `Prover.advance_proof`Quizá libre de nuevo @Stevengre la tomó hace 124 días y no hay ningún pull request abierto. Abierto
runtimeverification/k#4924 · 1 asignado ·
-
area:haskell-backend area:llvm-backend priority:p2 status:icebox type:feature
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
runtimeverification/k#4904 ·
Todos los issues de runtimeverification/k
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
kornia/kornia#5263 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Metadata correction for W16-5400Abiertoapproved correction metadata
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
acl-org/acl-anthology#10133 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
BasedHardware/omi#20084 ·
Los mantenedores suelen responder en 1 día
-
bug needs-acceptance wg/evaluation-quality
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
vllm-project/semantic-router#4424 ·
Los mantenedores suelen responder en 1 día