runtimeverification / runtimeverification/haskell-backend

RPC server error - most likely "marking term as simplified with unsimplified children"

Open
#3,572 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Haskell
Stars
224
Forks
43
PR merge metrics
No merged PRs in 30d

Description

I attempted to dump the RPC response at some point, and I think that it mentioned the error in the title.

The bug report is here, hopefully it is enough for reproducing the issue:
bug-report.tar.gz

In case it's useful, a pyk-based script shows the following stack trace:

Traceback (most recent call last):
  File "/home/virgil/.cache/pypoetry/virtualenvs/induction-Ivfuvf73-py3.10/lib/python3.10/site-packages/pyk/kore/rpc.py", line 372, in _request
    return self._client.request(method, **params)
  File "/home/virgil/.cache/pypoetry/virtualenvs/induction-Ivfuvf73-py3.10/lib/python3.10/site-packages/pyk/kore/rpc.py", line 141, in request
    self._check(data)
  File "/home/virgil/.cache/pypoetry/virtualenvs/induction-Ivfuvf73-py3.10/lib/python3.10/site-packages/pyk/kore/rpc.py", line 153, in _check
    raise JsonRpcError(**response['error'])
pyk.kore.rpc.JsonRpcError: Server error: crashed

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/virgil/k-induction/induction/src/induction/induction.py", line 251, in <module>
    main(sys.argv[1:])
  File "/home/virgil/k-induction/induction/src/induction/induction.py", line 247, in main
    run_induction_proof(claim, definition_dir)
  File "/home/virgil/k-induction/induction/src/induction/induction.py", line 227, in run_induction_proof
    kcfg = prover.advance_proof(
  File "/home/virgil/.cache/pypoetry/virtualenvs/induction-Ivfuvf73-py3.10/lib/python3.10/site-packages/pyk/proof/reachability.py", line 114, in advance_proof
    depth, cterm, next_cterms = kcfg_explore.cterm_execute(
  File "/home/virgil/.cache/pypoetry/virtualenvs/induction-Ivfuvf73-py3.10/lib/python3.10/site-packages/pyk/kcfg/explore.py", line 120, in cterm_execute
    er = kore_client.execute(kore, max_depth=depth, cut_point_rules=cut_point_rules, terminal_rules=terminal_rules)
  File "/home/virgil/.cache/pypoetry/virtualenvs/induction-Ivfuvf73-py3.10/lib/python3.10/site-packages/pyk/kore/rpc.py", line 402, in execute
    result = self._request('execute', **params)
  File "/home/virgil/.cache/pypoetry/virtualenvs/induction-Ivfuvf73-py3.10/lib/python3.10/site-packages/pyk/kore/rpc.py", line 375, in _request
    raise KoreClientError(message=err.message, code=err.code, data=err.data) from err

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with bug-report.tar.gz and the pyk-based reproduction described in the issue. Follow the RPC execute path shown in pyk/kore/rpc.py and the induction call chain through induction/src/induction/induction.py. Done means the supplied reproduction no longer causes the RPC server to crash with the reported simplification error.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell, python
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.