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 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