diff --git a/100.html b/100.html index 27c8721904..3164f70f86 100644 --- a/100.html +++ b/100.html @@ -62,7 +62,7 @@
In pell.eq_pell
, d
is defined to be a*a - 1
for an arbitrary a > 1
.
it also has a generalized version, by showing that every Euclidean domain is a unique factorization domain, and showing that the integers form a Euclidean domain.
@@ -1377,7 +1377,7 @@My plan was to live code, then clean-up and add documentation and generate notes with DocGen4. This worked very well for a month, with a lot of questions and my adapting explanations. Once the projects started the decoupling of lectures and evaluation led to a sharp drop in attendance. I course corrected and made lectures into project demo/help/live-coding. Advanced students explaining what they had done and less advanced explained what they had, where they were stuck, what they needed etc and I (and their fellow students) helped them get unstuck. This is working well. Next time I teach I will transition earlier and in a more planned way to this mode.
` }, - 10: { summary: `Masters course for computer science students with the first half of the term consisting of a hands-on introduction to Lean 4 and type theory and the second half consisting of the students working on either a semantics/compiler project or a formalisation of a graph theory problem.
+ 10: { summary: `We are a korespondenční seminář (lit. "correspondence seminar" in the sense of a seminar arranged by exchanging letters and emails) called M&M, which is something like an online course for math-olympiad highschoolers, under the hood of the Faculty of Mathematics and Physics of Charles University in Prague. All our texts are written in Czech; it is also the language of our in-person meetings. Lean is one of our three topics for the school year 2023/2024. There will be five volumes with Lean assignments, six volumes in total. We use Lean 4. Syllabus: (1) the very basics of functional programming; (2) lists; (3) elementary algebraic manipulations; (4) logic; (5) induction.
+`, website: "https://mam.mff.cuni.cz/", material: "None", repository: "https://github.com/madvorak/lean-mam", notes: `None`, experiences: `We currently have 41 active participants (counting students who solved at least three Lean exercises). Grading solutions doesn't take much time. Creating materials does.
+` }, + + 11: { summary: `Masters course for computer science students with the first half of the term consisting of a hands-on introduction to Lean 4 and type theory and the second half consisting of the students working on either a semantics/compiler project or a formalisation of a graph theory problem.
`, website: "https://pp.ipd.kit.edu/lehre/SS2022/tba/?lang=de", material: "None", repository: "https://github.com/IPDSnelting/tba-2022", notes: `The website is partially German, includes more slides and the project descriptions.
`, experiences: `This was already the second year we used Lean 4 and it was good to do it in person again after teaching exclusively online due to Covid the year before. We had different levels of learning speed among the students but in the end everybody go the point where they intuitively could use Lean. Some students were really eager to golf every proof.
` }, - 11: { summary: `Our intro to proofs course. (Fall 2020) Lean was about 1/3 of the course. (Fall 2022) A second iteration using Lean 4.
+ 12: { summary: `Our intro to proofs course. (Fall 2020) Lean was about 1/3 of the course. (Fall 2022) A second iteration using Lean 4.
`, website: "https://300.f22.matthewrobertballard.com/", material: "None", repository: "None", notes: `None`, experiences: `None` }, - 12: { summary: `This course introduces students to the theory of propositional and first-order logic, shows them how to implement fundamental logical algorithms in Lean 4, and shows them how to use automated reasoning tools.
+ 13: { summary: `This course introduces students to the theory of propositional and first-order logic, shows them how to implement fundamental logical algorithms in Lean 4, and shows them how to use automated reasoning tools.
`, website: "https://www.cs.cmu.edu/~mheule/15217-f21/", material: "https://avigad.github.io/lamr/logic_and_mechanized_reasoning.pdf", repository: "https://github.com/avigad/lamr", notes: `None`, experiences: `None` }, - 13: { summary: `Short module introducing proof to 1st year undergraduates using Lean3 - in French. We used proof-term style in Lean.
+ 14: { summary: `Short module introducing proof to 1st year undergraduates using Lean3 - in French. We used proof-term style in Lean.
`, website: "None", material: "None", repository: "https://github.com/ftranminh/Esisar_MA121_HA_lean_2023", notes: `1st year students, 6 x 1,5h
`, experiences: `The course is project-based; the students must write three projects on undergraduate mathematics. The lectures are me live Lean coding, solving the sorrys in the repo. I'm teaching the course again in 2024 and then it will be in Lean 4.
+ 15: { summary: `The course is project-based; the students must write three projects on undergraduate mathematics. The lectures are me live Lean coding, solving the sorrys in the repo. I'm teaching the course again in 2024 and then it will be in Lean 4.
`, website: "https://www.ma.imperial.ac.uk/~buzzard/xena/formalising-mathematics-2023/index.html", material: "None", repository: "https://github.com/ImperialCollegeLondon/formalising-mathematics-2023", notes: `None`, experiences: `None` }, - 15: { summary: `A 1-semester course aimed at graduate students in algebra and related topics at Edinburgh, Heriot-Watt and Glasgow universities. Aimed to approach Lean as mathematicians and future formalisers, establishing proficiency in tactic mode. For the first part of the course we learned the basics of first-order logic in Lean using the tutorials project, before discussing some basics of types and type classes to talk about formalising algebra. Also made use of lftcm2020 exercise sheets, and MiL. Concluded with a hackathon working on some group projects.
+ 16: { summary: `A graduate course in mathematical logic taken mostly by MA and PhD students in mathematics and offered every other year (Fall 2016+2n, n=0,1,2,3,4). Model theory, computability theory, set theory. In particular syntax and semantics of first order logic; incompleteness, completeness, and compactness theorems; Loewenheim-Skolem theorems; computable and computably enumerable sets; axioms of set theory; ordinals and cardinals. Since 2020 I include Lean exercises and projects, and some discussion of type theory. For example, formalization of part of Gödel's theorems is included at https://github.com/bjoernkjoshanssen/math654/blob/main/g%C3%B6del-beta-homework.lean
+`, website: "https://math.hawaii.edu/wordpress/bjoern/math-654-fall-2022/", material: "None", repository: "https://github.com/bjoernkjoshanssen/math654", notes: `None`, experiences: `The students are willing and able to learn Lean. Including Lean showcases logic as a vibrant rather than dormant area of study. As projects in 2022 students created formalizations of exercise solutions for my book "Automatic complexity", some of which are included at https://github.com/bjoernkjoshanssen/diophantine-lemma
+` }, + + 17: { summary: `A 1-semester course aimed at graduate students in algebra and related topics at Edinburgh, Heriot-Watt and Glasgow universities. Aimed to approach Lean as mathematicians and future formalisers, establishing proficiency in tactic mode. For the first part of the course we learned the basics of first-order logic in Lean using the tutorials project, before discussing some basics of types and type classes to talk about formalising algebra. Also made use of lftcm2020 exercise sheets, and MiL. Concluded with a hackathon working on some group projects.
`, website: "https://www.maths.ed.ac.uk/~pkinnear/leancourse/", material: "None", repository: "None", notes: `None`, experiences: `We tried to avoid touching on too much type theory early on to get people confidently interacting with Lean quickly. In retrospect, it would have been good to cover this in more depth (albeit only later in the course, after establishing confidence interacting with Lean) to aid in dealing with the inevitable issues that arise when formalising an interesting piece of mathematics. Also, we originally aimed for the outcome of the course to be group projects working on mathlib contributions, but would now say that re-framing the goal as formalising something new in a format that is useful to you as a learner (e.g. as a worksheet/interactive part of a textbook) is a better goal pedagogically (and could still lead to, e.g., a mathlib contribution in the process even if that isn't the explicit goal).
` }, - 16: { summary: `This course introduces computer science students to propositional logic, predicate logic and modal logic. The course uses two formal proof systems: natural deduction (exam) and Lean (homework assignments).
+ 18: { summary: `This course introduces computer science students to propositional logic, predicate logic and modal logic. The course uses two formal proof systems: natural deduction (exam) and Lean (homework assignments).
`, website: "https://studiegids.vu.nl/en/2022-2023/courses/X_401015", material: "https://leanprover.github.io/logic_and_proof/logic_and_proof.pdf", repository: "None", notes: `None`, experiences: `None` }, - 17: { summary: `Since January 2019, I am using Lean to teach first year undergrad double major maths/CS students how to find and write mathematical proofs. I first did it alone and then with Frédéric Bourgeois and Christine Paulin. The main mathematical topic of this course is elementary real analysis, especially the theory of convergent sequences and continuous functions. Since 2021 I use a controlled natural language for input in order to facilitate transferring Lean proofs to pen and paper proofs.
+ 19: { summary: `Since January 2019, I am using Lean to teach first year undergrad double major maths/CS students how to find and write mathematical proofs. I first did it alone and then with Frédéric Bourgeois and Christine Paulin. The main mathematical topic of this course is elementary real analysis, especially the theory of convergent sequences and continuous functions. Since 2021 I use a controlled natural language for input in order to facilitate transferring Lean proofs to pen and paper proofs.
`, website: "https://www.imo.universite-paris-saclay.fr/~patrick.massot/enseignement/", material: "None", repository: "https://github.com/PatrickMassot/MDD154/", notes: `This course really works well, and it will probably continue for a long time. The idea to use controlled natural language tactics seems a lot more efficient than the native syntax to ensure students improve at pen and paper proofs.
` }, - 18: { summary: `The aim of the course is to learn some Lean 3 using easy mathemtics (such as divisibility, \sqrt 2 \notin \Q, and the pigeonwhole principle). The course is in German and was taught in summer 2023 for one full semester with weekly homeworks. We met once a week, discussed upcoming topics and started to work on the next exercises in class. The manuscript contains an extended cheat sheet for Lean tactics.
+ 20: { summary: `The aim of the course is to learn some Lean 3 using easy mathemtics (such as divisibility, \sqrt 2 \notin \Q, and the pigeonwhole principle). The course is in German and was taught in summer 2023 for one full semester with weekly homeworks. We met once a week, discussed upcoming topics and started to work on the next exercises in class. The manuscript contains an extended cheat sheet for Lean tactics.
`, website: "https://github.com/pfaffelh/schulmathematik_mit_lean/", material: "https://github.com/pfaffelh/schulmathematik_mit_lean/blob/master/Manuskript/skript.pdf", repository: "None", notes: `None`, experiences: `The course was intended for students in mathematics who want to become teachers, but was also taken by other math students. Only using Prop-types in the first few lessons was a good idea, in my opinion. The students liked the interactive feeling even of the simple proofs. Weekly homeworks were made quite consistently, the dropout-rate (among ~15 students) was low.
` }, - 19: { summary: `It is a standard course on general topology in the Mathematics degree. It is taught in spanish, so the material in the repo uses spanish too. It is not a course about Lean: Lean is only used as a complement, to help students grab the steps of rigourous proofs. The usage of Lean is totally optional for the students.
+ 21: { summary: `It is a standard course on general topology in the Mathematics degree. It is taught in spanish, so the material in the repo uses spanish too. It is not a course about Lean: Lean is only used as a complement, to help students grab the steps of rigourous proofs. The usage of Lean is totally optional for the students.
`, website: "https://sia.unizar.es/doa/consultaPublica/look[conpub]MostrarPubGuiaDocAs?entradaPublica=true&idiomaPais=es.ES&_anoAcademico=2023&_codAsignatura=27008", material: "None", repository: "https://github.com/miguelmarco/topologia_general_lean", notes: `None`, experiences: `The course is still ongoing, so we still don't have evidence of success. We decided to use Lean3 instead of Lean4 because of the easyness to install the trylean
bundle, but will reconsider this decision next year. Students seem to be uninterested and/or scared at the beginning, but as i had shown how to use it to prove some example exercises, some have shown more interest. We plan to do an introductory seminar for those that want to learn how to use it.
A graduate course in mathematical logic taken mostly by MA and PhD students in mathematics and offered every other year (Fall 2016+2n, n=0,1,2,3,4). Model theory, computability theory, set theory. In particular syntax and semantics of first order logic; incompleteness, completeness, and compactness theorems; Loewenheim-Skolem theorems; computable and computably enumerable sets; axioms of set theory; ordinals and cardinals. Since 2020 I include Lean exercises and projects, and some discussion of type theory. For example, formalization of part of Gödel's theorems is included at https://github.com/bjoernkjoshanssen/math654/blob/main/g%C3%B6del-beta-homework.lean
-`, website: "https://math.hawaii.edu/wordpress/bjoern/math-654-fall-2022/", material: "https://github.com/bjoernkjoshanssen/math654", repository: "None", notes: `None`, experiences: `The students are willing and able to learn Lean. Including Lean showcases logic as a vibrant rather than dormant area of study. As projects in 2022 students created formalizations of exercise solutions for my book "Automatic complexity", some of which are included at https://github.com/bjoernkjoshanssen/diophantine-lemma
-` }, - - 21: { summary: `This was taught as a third-year undergraduate course. We spent a little more than half the semester working through the first 6 chapters of Mathematics in Lean with weekly homework assignments. Students did a small independent project at the halfway point, and a larger one at the end.
+ 22: { summary: `This was taught as a third-year undergraduate course. We spent a little more than half the semester working through the first 6 chapters of Mathematics in Lean with weekly homework assignments. Students did a small independent project at the halfway point, and a larger one at the end.
`, website: "None", material: "https://leanprover-community.github.io/mathematics_in_lean/mathematics_in_lean.pdf", repository: "https://github.com/leanprover-community/mathematics_in_lean", notes: `None`, experiences: `None` }, - 22: { summary: `An Introduction To Proofs course at Johns Hopkins in Fall 2022 entirely in Lean (teaching and assessment) culminating in the proof of Yoneda Lemma.
+ 23: { summary: `An Introduction To Proofs course at Johns Hopkins in Fall 2022 entirely in Lean (teaching and assessment) culminating in the proof of Yoneda Lemma.
`, website: "https://sinhp.github.io/teaching/2022-introduction-to-proofs-with-Lean", material: "None", repository: "https://github.com/sinhp/ProofLab", notes: `None`, experiences: `None` }, - 23: { summary: `This is a game-based introduction to undergraduate pure mathematics, starting with equations, natural numbers, logic, sets, function, real numbers and sequences with draft sections on groups. A book is being written to accompany the game. The next iteration of the game will be in Lean 4.
+ 24: { summary: `This is a game-based introduction to undergraduate pure mathematics, starting with equations, natural numbers, logic, sets, function, real numbers and sequences with draft sections on groups. A book is being written to accompany the game. The next iteration of the game will be in Lean 4.
`, website: "https://gihanmarasingha.github.io/modern-maths-pages/", material: "None", repository: "None", notes: `None`, experiences: `None` }, - 24: { summary: `This is an introduction to logic and mathematical reasoning for a general audience. It was taught in the philosophy department at CMU twice.
+ 25: { summary: `This is an introduction to logic and mathematical reasoning for a general audience. It was taught in the philosophy department at CMU twice.
`, website: "None", material: "https://leanprover.github.io/logic_and_proof/", repository: "None", notes: `None`, experiences: `None` }, };