<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Calculemus (Posts about Lean4Challenge)</title><link>https://jaalonso.github.io/calculemus/</link><description></description><atom:link href="https://jaalonso.github.io/calculemus/en/categories/lean4challenge.xml" rel="self" type="application/rss+xml"></atom:link><language>en</language><copyright>Contents © 2026 &lt;a href="mailto:"&gt;José A. Alonso&lt;/a&gt; 
&lt;a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;
&lt;img alt="Creative Commons License BY-NC-SA"
style="border-width:0; margin-bottom:12px;"
src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png"&gt;&lt;/a&gt;</copyright><lastBuildDate>Thu, 15 Oct 2026 09:29:14 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Lean 4 for mathematicians: a teacher's guide</title><link>https://jaalonso.github.io/calculemus/en/posts/2026/10/10-lean_4_para_matematicos_guia_docente/</link><dc:creator>José A. Alonso</dc:creator><description>&lt;div&gt;&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Who it is for.&lt;/strong&gt; This guide is aimed at teachers who want to introduce Lean 4 to mathematics students who are used to writing proofs on paper but have no previous programming experience. No prior knowledge of computer science is required.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Philosophy of the course.&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;em&gt;Lean is a proof notebook that talks back.&lt;/em&gt; You write an argument and the computer tells you, step by step, what is missing. It is presented as a patient interlocutor, not as a programming language.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Mathematics first, syntax later.&lt;/em&gt; Each topic starts from a proof the student already knows how to do on paper and translates it into Lean.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;No installation at the beginning.&lt;/em&gt; The first three sessions can be done in the browser. Local installation comes when the student already wants to carry on alone.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;You learn by reading the proof state.&lt;/em&gt; The central skill is not memorizing tactics, but reading the goals window (the &lt;em&gt;infoview&lt;/em&gt;) the way one reads a blackboard.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Making mistakes is cheap.&lt;/em&gt; The red error is information, not a failure.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Structure.&lt;/strong&gt; Eight topics of about 2 hours each (theory and practice mixed). Each topic has two parts: the &lt;strong&gt;content&lt;/strong&gt; (what the student sees) and the &lt;strong&gt;teaching tips&lt;/strong&gt; (notes for the teacher with key ideas, typical mistakes, ...).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Convention.&lt;/strong&gt; All the examples start with &lt;code&gt;import Mathlib.Tactic&lt;/code&gt;, Lean's library of tactics. The code blocks can be pasted as they are into the editor.&lt;/p&gt;
&lt;table border="2" cellspacing="0" cellpadding="6" rules="all" frame="border"&gt;


&lt;colgroup&gt;
&lt;col class="org-right"&gt;

&lt;col class="org-left"&gt;

&lt;col class="org-left"&gt;
&lt;/colgroup&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th scope="col" class="org-right"&gt;Topic&lt;/th&gt;
&lt;th scope="col" class="org-left"&gt;Title&lt;/th&gt;
&lt;th scope="col" class="org-left"&gt;Central idea&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td class="org-right"&gt;1&lt;/td&gt;
&lt;td class="org-left"&gt;First contact&lt;/td&gt;
&lt;td class="org-left"&gt;A theorem is a type; a proof is a term&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td class="org-right"&gt;2&lt;/td&gt;
&lt;td class="org-left"&gt;Propositional logic&lt;/td&gt;
&lt;td class="org-left"&gt;Connectives and the tactics that handle them&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td class="org-right"&gt;3&lt;/td&gt;
&lt;td class="org-left"&gt;Quantifiers and sets&lt;/td&gt;
&lt;td class="org-left"&gt;∀, ∃, membership, inclusion&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td class="org-right"&gt;4&lt;/td&gt;
&lt;td class="org-left"&gt;Equality and calculation&lt;/td&gt;
&lt;td class="org-left"&gt;&lt;code&gt;rw&lt;/code&gt;, &lt;code&gt;calc&lt;/code&gt;, &lt;code&gt;ring&lt;/code&gt;, &lt;code&gt;linarith&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td class="org-right"&gt;5&lt;/td&gt;
&lt;td class="org-left"&gt;Induction and recursion&lt;/td&gt;
&lt;td class="org-left"&gt;Natural numbers, sums, recursive definitions&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td class="org-right"&gt;6&lt;/td&gt;
&lt;td class="org-left"&gt;Your own definitions&lt;/td&gt;
&lt;td class="org-left"&gt;&lt;code&gt;def&lt;/code&gt;, &lt;code&gt;structure&lt;/code&gt;, limits&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td class="org-right"&gt;7&lt;/td&gt;
&lt;td class="org-left"&gt;Finding your way around Mathlib&lt;/td&gt;
&lt;td class="org-left"&gt;Looking up lemmas without knowing them by heart&lt;/td&gt;
&lt;/tr&gt;

&lt;tr&gt;
&lt;td class="org-right"&gt;8&lt;/td&gt;
&lt;td class="org-left"&gt;Final project&lt;/td&gt;
&lt;td class="org-left"&gt;Formalizing a result of your own&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

&lt;hr&gt;
&lt;p&gt;&lt;a href="https://jaalonso.github.io/calculemus/en/posts/2026/10/10-lean_4_para_matematicos_guia_docente/"&gt;Read more…&lt;/a&gt; (20 min remaining to read)&lt;/p&gt;&lt;/div&gt;</description><category>Lean4Challenge</category><guid>https://jaalonso.github.io/calculemus/en/posts/2026/10/10-lean_4_para_matematicos_guia_docente/</guid><pubDate>Sat, 10 Oct 2026 08:00:00 GMT</pubDate></item></channel></rss>