Zulip Chat Archive
Stream: general
Topic: apply fails to synthesize type class instance
Yury G. Kudryashov (Dec 27 2019 at 07:01):
Hi, I'm trying to understand why compilation of #1828 fails. I noticed the following (works in master branch, no need to checkout PR branch):
- At the top of the proof of
normed_ring_top_monoid, if we replaceapply squeeze_zerowithapply tendsto_of_tendsto_of_tendsto_of_le_of_le, it fails. - Same location,
apply tendsto_of_tendsto_of_tendsto_of_le_of_le tendsto_const_nhdssucceeds but addspartial_order ℝandorderable_topology ℝto the list of goals.
#check @tendsto_of_tendsto_of_tendsto_of_le_of_le 350:1: tendsto_of_tendsto_of_tendsto_of_le_of_le : ∀ {α : Type u_5} {β : Type u_6} [_inst_1 : topological_space α] [_inst_2 : partial_order α] [t : orderable_topology α] {f g h : β → α} {b : filter β} {a : α}, tendsto g b (𝓝 a) → tendsto h b (𝓝 a) → {b : β | g b ≤ f b} ∈ b → {b : β | f b ≤ h b} ∈ b → tendsto f b (𝓝 a)
Is it important that it says t : orderable_topology α, not _inst_3 : orderable_topology α?
Yury G. Kudryashov (Dec 27 2019 at 08:51):
It seems that rw is_open_iff_generate_intervals fails but rw [@is_open_iff_generate_intervals _ _ _ _] works.
Yury G. Kudryashov (Dec 27 2019 at 09:12):
Does it happen because orderable_topology takes topological_space and partial_order as arguments?
Patrick Massot (Dec 27 2019 at 10:29):
This is a known issue: apply is very bad at finding type class instances. Usually you can use refine instead (after figuring out how many underscores you need).
Patrick Massot (Dec 27 2019 at 10:34):
I'll have a look at your specific issue.
Yury G. Kudryashov (Dec 27 2019 at 10:34):
Then I'll probably drop #1828. Restricting squeeze_zero to reals make it possible to use apply squeeze_zero.
Patrick Massot (Dec 27 2019 at 10:42):
Do you have any use case besides reals?
Yury G. Kudryashov (Dec 27 2019 at 10:45):
No, I just felt that algebra/ordered is a better place for this lemma. Since it breaks apply, I think it's better to just drop the PR.
Patrick Massot (Dec 27 2019 at 10:45):
Ok
Patrick Massot (Dec 27 2019 at 10:46):
About the derivative extension PR, you are right that there are many small holes in the API. All those lemmas about closure could have more variation and also continuous_on versions.
Last updated: May 02 2025 at 03:31 UTC