Zulip Chat Archive

Stream: new members

Topic: Mathlib name. Just checking the meaning(s)


Eric Taucher (Feb 11 2022 at 21:22):

On the StackExchange site there is a need for tags for Mathlib. My understanding is that for Lean 3 there is Mathlib and for Lean 4 there is Mathlib 4. Is this correct? Also there are no other things that could be confused with mathlib or would such tags need Lean with them, e.g. lean-mathlib?

Kyle Miller (Feb 11 2022 at 21:32):

Not answering the question, but in the wild when I mention mathlib, I tend to write lean/mathlib, to recognize there are two parts coming together (so a sort of Stallman-like approach, where he writes GNU/Linux).

I do this mainly to help people who only have heard about Lean to know to search for mathlib, too.

Anne Baanen (Feb 11 2022 at 23:00):

At the moment there is a mathlib 4, but I'd describe that more as the future version of mathlib being developed in a separate repository instead of an independent project. The expectation is that the whole community will switch eventually.

I don't expect mathlib by itself will be confusing in the context of the Proof Assistant site. Although the name mathlib is generic enough that lean-mathlib is also fine for me. A quick search shows:

Anne Baanen (Feb 11 2022 at 23:01):

Kyle Miller said:

I tend to write lean/mathlib, to recognize there are two parts coming together (so a sort of Stallman-like approach, where he writes GNU/Linux).

I'd like to interject for a moment...

Jason Rute (Feb 11 2022 at 23:16):

I see this with a lot of proof assistants. metamath is a completely generic logic-agnostic proof assistant, but metamath/set.mm is based on ZFC. I guess Isabelle already goes by Isabelle/HOL but most people probably mean Isabelle/HOL/AFP. I don't know about Coq though... When people say Lean vs Coq, they usually mean Lean/mathlib vs Coq, but I guess that is the point since Coq has many libraries.

Eric Taucher (Feb 12 2022 at 09:58):

For those interested in tags on the StackExchange site. The associated meta question about mathlib tag names is here.

Alex J. Best (Feb 12 2022 at 10:25):

Does AFP contain a lot of user-contributed tactics though? I often find it hard to use lean without mathlib because there are just so many tactics, automation and linters that are very useful that you can only get by adding a mathlib dependency, even if I want to write something that doesn't involve mathematics at all!
In that sense it seems Lean and mathlib might be a bit more closely tied than just a proof assistant and a mathemtics library for it.

Kevin Buzzard (Feb 12 2022 at 12:54):

Furthermore I would imagine that disassociating the tactics from the maths would be very hard work. Tactics like nlinarith will no doubt use a lot of stuff in the earlier parts of mathlib.

Kevin Buzzard (Feb 12 2022 at 12:55):

I wonder to what extent the fact that lean is written in lean has made our lives easier here. I think the Coq community doesn't have this luxury.

Karl Palmskog (Feb 13 2022 at 16:20):

Kevin Buzzard said:

I wonder to what extent the fact that lean is written in lean has made our lives easier here. I think the Coq community doesn't have this luxury.

Coq users can metaprogram in Coq itself and thus write tactics/plugins/extensions in Coq, via MetaCoq: https://github.com/MetaCoq/metacoq

Karl Palmskog (Feb 13 2022 at 16:44):

also, on the topic of Coq vs. its libraries. Coq now has a fully working -noinit option that avoids loading any part of the Coq standard library at startup. This is used most prominently by the Coq-HoTT library, but other libraries such as MathComp are also usable in this way (though not officially like Coq-HoTT).

Eric Taucher (Feb 13 2022 at 17:33):

I created the tag lean-mathlib

Eric Taucher (Feb 13 2022 at 17:33):

Only time will tell if this is the wrong way or the right way to name it.


Last updated: Dec 20 2023 at 11:08 UTC