Zulip Chat Archive

Stream: lean4

Topic: Implicit Binder Predicate


Kenny Lau (Oct 04 2025 at 08:57):

Currently, in Mathlib, the predicate of "subset" is defined as:

 a⦄, a  s₁  a  s₂

Note that we currently have "binder predicates", i.e.:

 a  s₁, a  s₂

But these two versions differ in the explicitness of a. I wonder if we should support either of the following syntaxes:

  • ∀ ⦃a⦄ ∈ s₁, a ∈ s₂
  • ∀ ⦃a ∈ s₁⦄, a ∈ s₂

Yaël Dillies (Oct 04 2025 at 09:12):

This is a very common use case and it has been suggested before that ∀ a ∈ s, p a could actually just mean ∀ ⦃a⦄, a ∈ s → p a. Indeed, the other (=current) interpretation ∀ a, a ∈ s → p a seems to be heuristically never useful


Last updated: Dec 20 2025 at 21:32 UTC