Zulip Chat Archive

Stream: mathlib4

Topic: where aesop is discouraged


Elif Uskuplu (Feb 08 2026 at 22:56):

Are there situations where aesop is discouraged in Mathlib PRs even if it closes the goal? For example, are there cases where reviewers would prefer simp, exact, omega, or a more explicit proof over a working aesop call? I'm curious about both style conventions and practical concerns like compile time.

Eric Wieser (Feb 09 2026 at 00:02):

For a single line proof, it is often much better to use exact as that make it clearer what refactors are possible.

Monica Omar (Feb 09 2026 at 00:06):

if simp or simp_all can do the job, then that's better than aesop

Violeta Hernández (Feb 11 2026 at 14:22):

In my experience grind can solve a lot of the same goals aesop can, and when it does it's often noticeably faster.

Edward van de Meent (Feb 11 2026 at 14:32):

in my cayley graph PR (#35084) both mulCayley_adj and mulCayley_eq_erase_one are solved by aesop but not grind after unfolding the definition... i wonder why

Vlad Tsyrklevich (Feb 11 2026 at 18:32):

in mulCayley_adj, try? succeeds after simp and simp? shows that the missing lemma is fromRel_adj (e.g. unfold mulCayley; grind [fromRel_adj, eq_inv_mul_iff_mul_eq] succeeds.)

For the second I only got it work with an intermediate simp and I am at the edge of my grind knowledge to say more

  unfold mulCayley
  simp only [fromRel, Set.mem_diff]
  grind [mul_one]

Last updated: Feb 28 2026 at 14:05 UTC