Zulip Chat Archive
Stream: nightly-testing
Topic: Fallout from lean#7717 in Aesop
Kim Morrison (Apr 02 2025 at 09:17):
Just trying to bump Aesop to v4.19.0-rc1, but ran into trouble from @Kyle Miller's lean#7717. I'm surprised this didn't fail Mathlib's nightly-testing, however...
(@Kyle Miller, could you have a look?)
Kim Morrison (Apr 02 2025 at 09:17):
(Pinging @Jannis Limperg for visibility, too.)
Kim Morrison (Apr 02 2025 at 09:19):
% lake build
info: batteries: checking out revision '5a56dfa58c18a1c4c485e5e630f9035e56c0952b'
✖ [81/163] Building Aesop.BaseM
trace: .> LEAN_PATH=././.lake/packages/batteries/.lake/build/lib/lean:././.lake/build/lib/lean /Users/kim/projects/lean/lean4-2/build/release/stage1/bin/lean ././././Aesop/BaseM.lean -R ./././. -o ././.lake/build/lib/lean/Aesop/BaseM.olean -i ././.lake/build/lib/lean/Aesop/BaseM.ilean -c ././.lake/build/ir/Aesop/BaseM.c --json
error: ././././Aesop/BaseM.lean:46:42: unknown constant 'Aesop.RPINFCache.mk._flat_ctor'
error: Lean exited with code 1
✖ [158/163] Building Aesop.Script.StructureDynamic
trace: .> LEAN_PATH=././.lake/packages/batteries/.lake/build/lib/lean:././.lake/build/lib/lean /Users/kim/projects/lean/lean4-2/build/release/stage1/bin/lean ././././Aesop/Script/StructureDynamic.lean -R ./././. -o ././.lake/build/lib/lean/Aesop/Script/StructureDynamic.olean -i ././.lake/build/lib/lean/Aesop/Script/StructureDynamic.ilean -c ././.lake/build/ir/Aesop/Script/StructureDynamic.c --json
error: ././././Aesop/Script/StructureDynamic.lean:142:17: unknown constant 'Aesop.GoalWithMVars.mk._flat_ctor'
error: ././././Aesop/Script/StructureDynamic.lean:164:21: unknown constant 'Aesop.Script.TacticState.mk._flat_ctor'
error: Lean exited with code 1
Kyle Miller (Apr 02 2025 at 10:55):
I'm not seeing any error @Kim Morrison:
% git checkout bump_to_v4.19.0-rc1
branch 'bump_to_v4.19.0-rc1' set up to track 'origin/bump_to_v4.19.0-rc1'.
Switched to a new branch 'bump_to_v4.19.0-rc1'
% cat lean-toolchain
leanprover/lean4:v4.19.0-rc1
% lake build
info: downloading https://github.com/leanprover/lean4/releases/download/v4.19.0-rc1/lean-4.19.0-rc1-darwin_aarch64.tar.zst
Total: 399.9 MiB Speed: 34.3 MiB/s
info: installing /Users/kmill/.elan/toolchains/leanprover--lean4---v4.19.0-rc1
info: batteries: checking out revision '5a56dfa58c18a1c4c485e5e630f9035e56c0952b'
Build completed successfully.
Kim Morrison (Apr 02 2025 at 11:04):
Indeed, after a lake clean and restarting VS Code, lake build
is working for me too.
Kim Morrison (Apr 02 2025 at 11:06):
The PR is failing in tests. @Kyle Miller do you have an opinion about the test in NormSimpUnchangedMVarAssigned?
I think perhaps the (new) failure is just fine, and we delete the test?
Kyle Miller (Apr 02 2025 at 11:15):
Do you know what the test is supposed to be testing?
With pp.explicit
, I've gotten as far as seeing that the old state before aesop
was
⊢ ∀ (x : Unit),
@Eq Unit (@Foo.f Unit (@Foo.mk Unit (fun x ↦ Unit.unit) ?x) x) (@Foo.f Unit (@Foo.mk Unit (fun x ↦ Unit.unit) ?x) x)
but the new state is
⊢ Unit → () = ()
Kyle Miller (Apr 02 2025 at 11:17):
Here's a way we can preserve that state:
class Foo (α : Type u) where
f : α → α
p : True
class Bar (α : Type u) where
toFoo : Foo α
eq : ∀ x : α, Foo.f x = Foo.f x
def bar : Bar Unit where
toFoo := { f := fun _ => (), p := ?x }
eq := by aesop
Kim Morrison (Apr 02 2025 at 11:17):
Okay, but I agree with you that I don't see why we'd want to do that...
Kim Morrison (Apr 02 2025 at 11:18):
I will comment out that test in the PR, and we can ask @Jannis Limperg what they want to do with it.
Kyle Miller (Apr 02 2025 at 11:21):
Yeah, let's comment it out @Kim Morrison.
@Jannis Limperg In this code block, why does aesop solve for the ?x
metavariable? I think it's not supposed to. At least, if you do aesop?
it gives intro x; rfl
, which doesn't solve that metavariable.
Last updated: May 02 2025 at 03:31 UTC