Skip to content

Merge changes into p-token#733

Closed
Stevengre wants to merge 4 commits into
feature/p-tokenfrom
master
Closed

Merge changes into p-token#733
Stevengre wants to merge 4 commits into
feature/p-tokenfrom
master

Conversation

@Stevengre
Copy link
Copy Markdown
Contributor

No description provided.

tothtamas28 and others added 4 commits October 8, 2025 10:27
The [`bitRangeInt` equation in
`domains.md`](https://github.com/runtimeverification/k/blob/c376de7d91e5f14cff13b7e32e1c997983a2859b/k-distribution/include/kframework/builtin/domains.md?plain=1#L1438)
uses partial bit-shift symbols and is therefore not applied by booster.
A better alternative is to use the `truncate` function locally defined
in `mir-semantics`. Expressions are equivalent:

```
bitRangeInt(VAL, 0, WIDTH)
      (def)      == (VAL >>Int 0) modInt (1 <<Int WIDTH)
      (>> 0)     == VAL modInt (1 <<Int WIDTH)
  (mod via mask) == VAL &Int ((1<<Int WIDTH) -Int 1) == truncate(VAL, WIDTH, Unsigned)
```

Also marking some relevant simplifications as smt-lemmas.

Altogether, this avoids a number of observed fall-backs in p-token
execution.
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.

3 participants