diff --git a/server/leanserver/GameServer/FileWorker.lean b/server/leanserver/GameServer/FileWorker.lean index a705bf4..1d1af42 100644 --- a/server/leanserver/GameServer/FileWorker.lean +++ b/server/leanserver/GameServer/FileWorker.lean @@ -72,7 +72,7 @@ def compileProof (inputCtx : Parser.InputContext) (snap : Snapshot) (hasWidgets let (tacticStx, cmdParserState, msgLog, endOfWhitespace) := MyModule.parseTactic inputCtx pmctx snap.mpState snap.msgLog couldBeEndSnap let cmdPos := tacticStx.getPos?.getD 0 - if Parser.isEOI tacticStx then + if Parser.isTerminalCommand tacticStx then let endSnap : Snapshot := { beginPos := cmdPos stx := tacticStx diff --git a/server/leanserver/lake-manifest.json b/server/leanserver/lake-manifest.json index b2e4207..1e31dae 100644 --- a/server/leanserver/lake-manifest.json +++ b/server/leanserver/lake-manifest.json @@ -1 +1 @@ -{"version": 4, "packagesDir": "./lake-packages", "packages": []} +{"version": 4, "packagesDir": "lake-packages", "packages": []} diff --git a/server/leanserver/lean-toolchain b/server/leanserver/lean-toolchain index 1060ced..c76d115 100644 --- a/server/leanserver/lean-toolchain +++ b/server/leanserver/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2023-01-16 +leanprover/lean4:nightly-2023-01-29 diff --git a/server/testgame/TestGame/Levels/Induction/L01_Simp.lean b/server/testgame/TestGame/Levels/Induction/L01_Simp.lean index 0abb0fa..8eef726 100644 --- a/server/testgame/TestGame/Levels/Induction/L01_Simp.lean +++ b/server/testgame/TestGame/Levels/Induction/L01_Simp.lean @@ -36,6 +36,8 @@ lemma sum_const_add (n : ℕ) : (∑ i in Fin n, 0) = 0 := by Mit `simp?` anstatt `simp` kannst du zudem schauen, welche Lemmas von `simp` benutzt wurde. " +open BigOperators + Statement "Zeige dass $\\sum_{i = 0} ^ {n-1} (0 + 0) = 0$." (n : ℕ) : (∑ i : Fin n, (0 + 0)) = 0 := by diff --git a/server/testgame/TestGame/Levels/Induction/L02_Sum.lean b/server/testgame/TestGame/Levels/Induction/L02_Sum.lean index 3c08230..224ec3c 100644 --- a/server/testgame/TestGame/Levels/Induction/L02_Sum.lean +++ b/server/testgame/TestGame/Levels/Induction/L02_Sum.lean @@ -25,6 +25,8 @@ vom Typ `Fin n`, das heisst, man muss diesen eigentlich immer mit `(i : ℕ)` als natürliche Zahl verwenden. " +open BigOperators + Statement "Zeige dass $\\sum_{i=0}^{n-1} (i + 1) = n + \\sum_{i=0}^{n-1} i$." (n : ℕ) : ∑ i : Fin n, ((i : ℕ) + 1) = n + (∑ i : Fin n, (i : ℕ)) := by diff --git a/server/testgame/TestGame/Levels/Induction/L03_Induction.lean b/server/testgame/TestGame/Levels/Induction/L03_Induction.lean index ba5b7cf..108c0a8 100644 --- a/server/testgame/TestGame/Levels/Induction/L03_Induction.lean +++ b/server/testgame/TestGame/Levels/Induction/L03_Induction.lean @@ -29,6 +29,8 @@ Für den Induktionsschritt braucht man fast immer zwei technische Lemmas: -- Note: I don't want to deal with Nat-division, so I stated it as `2 * ... = ...` instead. +open BigOperators + Statement "Zeige $\\sum_{i = 0}^n i = \\frac{n \\cdot (n + 1)}{2}$." (n : ℕ) : 2 * (∑ i : Fin (n + 1), ↑i) = n * (n + 1) := by diff --git a/server/testgame/TestGame/Levels/Induction/L04_SumOdd.lean b/server/testgame/TestGame/Levels/Induction/L04_SumOdd.lean index e35e16b..e796abd 100644 --- a/server/testgame/TestGame/Levels/Induction/L04_SumOdd.lean +++ b/server/testgame/TestGame/Levels/Induction/L04_SumOdd.lean @@ -15,6 +15,8 @@ Introduction Hier nochmals eine Übung zur Induktion. " +open BigOperators + Statement "Zeige folgende Gleichung zur Summe aller ungeraden Zahlen: diff --git a/server/testgame/TestGame/Levels/Induction/L10_Bernoulli.lean b/server/testgame/TestGame/Levels/Induction/L10_Bernoulli.lean index 8828b15..02e4c0b 100644 --- a/server/testgame/TestGame/Levels/Induction/L10_Bernoulli.lean +++ b/server/testgame/TestGame/Levels/Induction/L10_Bernoulli.lean @@ -16,6 +16,7 @@ TODO: Induktion (& induktion vs rcases) " +open BigOperators example (x : ℕ) (n : ℕ) : 1 + n * x ≤ (x + 1) ^ n := by induction' n with n hn @@ -33,10 +34,11 @@ example (n : ℕ) : (∑ i : Fin (n + 1), ↑(2 * i - 1)) = n ^ 2 := by Statement "Zeige $\\sum_{i = 0}^n i = \\frac{n ⬝ (n + 1)}{2}$." (n : ℕ) : (∑ i : Fin (n + 1), ↑i) = n * (n + 1) / 2 := by - apply hh1 - induction' n with n hn - simp sorry + -- apply hh1 + -- induction' n with n hn + -- simp + -- sorry -- rw [Fin.sum_univ_castSucc] -- simp [nat_succ] -- rw [mul_add, hn] diff --git a/server/testgame/TestGame/Levels/Induction/T00_Sum.lean b/server/testgame/TestGame/Levels/Induction/T00_Sum.lean index f6b3b58..be78477 100644 --- a/server/testgame/TestGame/Levels/Induction/T00_Sum.lean +++ b/server/testgame/TestGame/Levels/Induction/T00_Sum.lean @@ -14,6 +14,7 @@ Introduction " " +open BigOperators Statement "Zeige $\\sum_{i = 0}^n i^3 = (\\sum_{i = 0}^n i^3)^2$." diff --git a/server/testgame/lake-manifest.json b/server/testgame/lake-manifest.json index d5603ab..3f13d49 100644 --- a/server/testgame/lake-manifest.json +++ b/server/testgame/lake-manifest.json @@ -1,34 +1,10 @@ {"version": 4, - "packagesDir": "./lake-packages", + "packagesDir": "lake-packages", "packages": [{"git": - {"url": "https://github.com/xubaiw/CMark.lean", - "subDir?": null, - "rev": "2cc7cdeef67184f84db6731450e4c2b258c28fe8", - "name": "CMark", - "inputRev?": "main"}}, - {"git": - {"url": "https://github.com/leanprover/lake", - "subDir?": null, - "rev": "d0b530530f14dde97a547b03abf87eee06360d60", - "name": "lake", - "inputRev?": "master"}}, - {"git": - {"url": "https://github.com/leanprover/doc-gen4", - "subDir?": null, - "rev": "09dbebed9ca85368152bb5146ef6f1271b1be425", - "name": "doc-gen4", - "inputRev?": "main"}}, - {"git": - {"url": "https://github.com/mhuisi/lean4-cli", - "subDir?": null, - "rev": "5a858c32963b6b19be0d477a30a1f4b6c120be7e", - "name": "Cli", - "inputRev?": "nightly"}}, - {"git": {"url": "https://github.com/leanprover-community/mathlib4.git", "subDir?": null, - "rev": "98bc5f26ea463d9583f601c84518c95643c0ea14", + "rev": "774069a73cae9148d941b09c267b465d3f7d7737", "name": "mathlib", "inputRev?": "master"}}, {"git": @@ -40,31 +16,13 @@ {"git": {"url": "https://github.com/JLimperg/aesop", "subDir?": null, - "rev": "645e92db52499582bb31984396a5e41772241012", + "rev": "ccff5d4ae7411c5fe741f3139950e8bddf353dea", "name": "aesop", "inputRev?": "master"}}, - {"git": - {"url": "https://github.com/hargonix/LeanInk", - "subDir?": null, - "rev": "2447df5cc6e48eb965c3c3fba87e46d353b5e9f1", - "name": "leanInk", - "inputRev?": "doc-gen"}}, {"path": {"name": "GameServer", "dir": "./../leanserver"}}, - {"git": - {"url": "https://github.com/xubaiw/Unicode.lean", - "subDir?": null, - "rev": "6dd6ae3a3839c8350a91876b090eda85cf538d1d", - "name": "Unicode", - "inputRev?": "main"}}, {"git": {"url": "https://github.com/leanprover/std4", "subDir?": null, - "rev": "04b3c9831e0c141713a70e68af7e40973ec9a1ff", + "rev": "cda27d551340756d5ed6f9b83716a9db799c5537", "name": "std", - "inputRev?": "main"}}, - {"git": - {"url": "/home/jeugster/Documents/Lean/duper", - "subDir?": null, - "rev": "d0fb397d96483c90969c725ad5ea307cc02bdf7d", - "name": "duper", "inputRev?": "main"}}]} diff --git a/server/testgame/lakefile.lean b/server/testgame/lakefile.lean index 98ba429..9ea11dc 100644 --- a/server/testgame/lakefile.lean +++ b/server/testgame/lakefile.lean @@ -6,12 +6,6 @@ require GameServer from ".."/"leanserver" require mathlib from git "https://github.com/leanprover-community/mathlib4.git"@"master" -require duper from git - "/home/jeugster/Documents/Lean/duper"@"main" - ---set_option tactic.hygienic false ---set_option autoImplicit false - package TestGame @[default_target] diff --git a/server/testgame/lean-toolchain b/server/testgame/lean-toolchain index 1060ced..c76d115 100644 --- a/server/testgame/lean-toolchain +++ b/server/testgame/lean-toolchain @@ -1 +1 @@ -leanprover/lean4:nightly-2023-01-16 +leanprover/lean4:nightly-2023-01-29