Skip to content

Deep kernel reduction detected after simp #5724

@tobiasgrosser

Description

@tobiasgrosser

Prerequisites

Please put an X between the brackets as you perform the following steps:

Description

The following lean code leads to a deep kernel reduction detected error in Lean.

theorem minimal6 : ∀ (x : BitVec 32),
  ((some x).bind fun x =>
    (if False then none else some (x.sshiftRight 1)).bind fun x' =>
      some (x'.sshiftRight 1))
  = (some x) := by
  intro x
  simp only [Option.some_bind]
  sorry

Steps to Reproduce

  1. Copy into lean
  2. Observe the red line under the theorem name

Expected behavior: [Clear and concise description of what you expect to happen]

  • simp should apply the lemma
  • the proof should be marked as sorry with an orange line under the theorem name
  • no kernel error

Versions

"4.12.0-nightly-2024-10-15"

Impact

Add 👍 to issues you consider important. If others are impacted by this issue, please ask them to add 👍 to it.

This issue was reduced by @lfrenot.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P-mediumWe may work on this issue if we find the timebugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions