runtimeverification / haskell-backend

The symbolic execution engine powering the K Framework
BSD 3-Clause "New" or "Revised" License
210 stars 42 forks source link

Simplification - Improvement Proposals #3440

Open ana-pantilie opened 1 year ago

ana-pantilie commented 1 year ago

One major component of the Haskell backend is the simplifier. It takes care of:

We'd like to know what users' experiences with the simplifier are and what changes they would like to see.

Any ideas are welcome, so feel free to "think big". For example, I would like to be able to step through the simplification procedure, like a "functional" kore-repl.

hjorthjort commented 1 year ago

I would like to be able to quickly test if a simplification applies to an expression. From a user perspective, being able to click on a subexpression in my configuration, and then write a simplification for it and see if it applies, then being able to go back to the original configuration and see if it applies would be magnificent.

On the backend side I suspect this means being able to:

Essentially, being able to inject, manipulate and store points of execution and rules, in a way that is reliable and makes it easy to try things out, roll back, etc.

PetarMax commented 1 year ago

Branching on function rules

See https://github.com/runtimeverification/k/issues/3108#issuecomment-1408576344.