Zulip Chat Archive

Stream: new members

Topic: Lean for teaching


Johannes Riesterer (Jul 05 2021 at 11:17):

Hello Everybody. Is there any material about how to use Lean and mathlib for an undergraduate lecture?

Kevin Buzzard (Jul 05 2021 at 12:00):

Can you ask this question in an appropriate thread, e.g. start a new one in the #Lean for teaching stream? This is a question about vectors.

Kevin Buzzard (Jul 05 2021 at 12:00):

@Johannes Riesterer

Eric Wieser (Jul 05 2021 at 12:01):

I'm starting to think that by disabling (no topic) we've made this type of mistake more common instead.

Eric Wieser (Jul 05 2021 at 12:02):

@Johannes Riesterer: you can edit your message above and change the topic name to move this to a new thread

Johan Commelin (Jul 05 2021 at 12:09):

@Johannes Riesterer Welcome! As Kevin pointed out, there is a #Lean for teaching stream where you can find some useful info.

Johan Commelin (Jul 05 2021 at 12:09):

Several people have taught courses using Lean. But I'm not sure there is a ready made package that you can use.

Johan Commelin (Jul 05 2021 at 12:10):

Do you have a specific direction you are interested in? Analyisis? Algebra? Discrete math? Type theory? Applications in computer science? Something else?

Johannes Riesterer (Jul 05 2021 at 12:10):

Thank you very much. And please excuse my clumsyness... it's the first time i am using zulip

Kevin Buzzard (Jul 05 2021 at 12:10):

Can you make your question much more precise? Is this a one-off lecture for UGs or part of an UG course? What level UGs? etc

Johannes Riesterer (Jul 05 2021 at 12:12):

multidimensional differentiation and integration - it is a course for computer scientists

Johannes Riesterer (Jul 05 2021 at 12:12):

and i thought nothing would motivate them more to learn proofs as programming :-) And i would love to get into the subject becuase i also think it is very interesting

Johan Commelin (Jul 05 2021 at 12:14):

Makes sense. Although experience suggests that learning Lean and maths at the same time seems pretty hard.

Johan Commelin (Jul 05 2021 at 12:14):

This is a bug. I would love to fix it.

Kevin Buzzard (Jul 05 2021 at 12:15):

Right -- my experience is that for students struggling with the material, introducing a computer proof system into the mix just makes things worse, because right now the learning curve is very steep

Johannes Riesterer (Jul 05 2021 at 12:15):

oh ok that sounds reasonable

Johan Commelin (Jul 05 2021 at 12:16):

Otoh, with CS students it might be a bit different. You might want to add it as an optional challenge.

Johan Commelin (Jul 05 2021 at 12:17):

One thing about mathlib: it is not developed with education in mind at all. It generally strives for the largest generality, and does not work out examples or special cases.

Johan Commelin (Jul 05 2021 at 12:17):

Integration theory is not developed for R\R first: it goes straight towards the Bochner integral. Something that 75% of working mathematicians have never even heard of.

Johannes Riesterer (Jul 05 2021 at 12:19):

oh ok. but it would be possible to go the "learning book" path? How much efford would it be?

Johannes Riesterer (Jul 05 2021 at 12:19):

for a lean newbie

Johan Commelin (Jul 05 2021 at 12:19):

Sure, that has been done. See e.g. the Mathematics in Lean book (which is only partly written, wip)

Johan Commelin (Jul 05 2021 at 12:20):

When are you planning to teach the course?

Johan Commelin (Jul 05 2021 at 12:20):

I would suggest to play with Lean for at least 1 semester before you dive into teaching with it.

Johannes Riesterer (Jul 05 2021 at 12:21):

it starts end of september

Johan Commelin (Jul 05 2021 at 12:22):

Hmm, then I would suggest that you play with lean, and maybe use it for another course somewhere in 2022.

Johannes Riesterer (Jul 05 2021 at 12:22):

ok that sounds like a plan :-)

Johan Commelin (Jul 05 2021 at 12:23):

I didn't have a CS background. It took me at least 6 months to get to the point that I would dare to teach with Lean :see_no_evil:

Johan Commelin (Jul 05 2021 at 12:23):

Situation is a bit better now. There is a lot more supporting material.

Johan Commelin (Jul 05 2021 at 12:23):

And maybe you have experience with other proof assistants? Or more CS background than I had :rofl:

Johannes Riesterer (Jul 05 2021 at 12:25):

well i have a lot of programming experience.... and i study Hott for some while now... i have a background as geometer and software developer. So it feels like the next step to do mathematics in such languages

Johannes Riesterer (Jul 05 2021 at 12:27):

and since i teach from time to time (lectureship only) mathematics for computer scientists this seems like a perfect match

Johannes Riesterer (Jul 05 2021 at 12:28):

at least perspectively

Johannes Riesterer (Jul 05 2021 at 12:29):

so thank you very much for your assessment.

Johan Commelin (Jul 05 2021 at 12:30):

I completely agree. And we need experiments like this, so that the system can become a better teaching tool!

Johan Commelin (Jul 05 2021 at 12:30):

Especially given your experience with HoTT and general programming experience, I think you should definitely try this, once you are comfy with Lean.

Johannes Riesterer (Jul 05 2021 at 12:31):

i will keep up with it

Johan Commelin (Jul 05 2021 at 12:32):

If you know a bit of French: here is a course on metric spaces and such, using Lean https://github.com/FredericLeRoux/LEAN_ESPACES_METRIQUES

Johan Commelin (Jul 05 2021 at 12:32):

Another popular thing, with CS students, is to go in the direction of software verification

Johan Commelin (Jul 05 2021 at 12:33):

See also https://lean-forward.github.io/logical-verification/2021

Johannes Riesterer (Jul 05 2021 at 12:34):

that helps a lot.... thank you.

Anne Baanen (Jul 05 2021 at 12:34):

I was just going to post that link :)

Johannes Riesterer (Jul 05 2021 at 12:34):

well i have to teach specific topics

Johannes Riesterer (Jul 05 2021 at 12:35):

so not too much freedom in selection of topics

Patrick Massot (Jul 05 2021 at 12:55):

It seems you still haven't found the Lean for teaching stream, you created a Lean for teaching topic in the new members stream.

Patrick Massot (Jul 05 2021 at 12:57):

(The conversations in Zulip have a 2-levels hierarchy: stream, topic). See in particular this recent topic for more pointers.

Patrick Massot (Jul 05 2021 at 12:57):

Including https://www.youtube.com/watch?v=mTLuON5eRZI&list=PLlF-CfQhukNnO8z3TcFcoKozif9gbl7Yt&index=23

Eric Wieser (Jul 05 2021 at 13:01):

(note that while you were able to move your message to a new topic to fix the initial Zulip mishap, only admins have the power to move topics between streams)

Johannes Riesterer (Jul 05 2021 at 13:05):

Thank you very much

Johannes Riesterer (Jul 05 2021 at 13:07):

very inspiring


Last updated: Dec 20 2023 at 11:08 UTC