Skip to content

Commit 9f655ad

Browse files
authored
Merge pull request #1 from he7d3r/fix-typos
Improve spelling across game
2 parents efac91b + 7163971 commit 9f655ad

11 files changed

Lines changed: 31 additions & 31 deletions

File tree

.i18n/en/Game.pot

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ msgid "You have now completed Vector Space World! The theorems proven here will
161161
msgstr ""
162162

163163
#: Game.Levels.LinearIndependenceSpanWorld.Level01
164-
msgid "`Finset.sum` is how we difine summing over a set. It uses Mathlib's `Finset` Type, which means that we\n"
164+
msgid "`Finset.sum` is how we define summing over a set. It uses Mathlib's `Finset` Type, which means that we\n"
165165
"can only sum over arbitrary finite sets. The syntax is as follows: With a additive group or field `K`, some Type `T`,\n"
166166
"some `s : Finset T`, and some `f : T → K`, `Finset.sum s (fun x => f x)` sums `f x` over all `x ∈ s`."
167167
msgstr ""
@@ -958,7 +958,7 @@ msgstr ""
958958
#: Game.Levels.InnerProductWorld.Level06
959959
msgid "One of the most important theorems in linear algebra is orthogonal decomposition. This allows you to\n"
960960
"represent a vector as a scalar multiple of one vector, along with a vector orthogonal to that vector.\n"
961-
"This includes the concepts of projections and othogonal components.\n"
961+
"This includes the concepts of projections and orthogonal components.\n"
962962
"\n"
963963
"## The Goal\n"
964964
"In this level, we are given two vectors, `u` and `v`. `u` is the vector we want to rewrite, and `v`\n"
@@ -1815,7 +1815,7 @@ msgid "## Vector Space Definition\n"
18151815
"to get it as `0 • w + 0 • w`. Lastly, cancelling out a `0 • w` on each side gets `0 = 0 • w`.\n"
18161816
"\n"
18171817
"However, this proof relies on our assumptions and constructs the goal from them. This can be done in\n"
1818-
"Lean, however, it requires using the `have` tactic, and is unnescessarily complex. In Lean, proofs are\n"
1818+
"Lean, however, it requires using the `have` tactic, and is unnecessarily complex. In Lean, proofs are\n"
18191819
"often done backwards, working from the goal and creating the hypotheses.\n"
18201820
"\n"
18211821
"Doing the proof backwards thus must first involve adding `0 • w` to both sides of the goal, undoing\n"
@@ -1853,7 +1853,7 @@ msgid "## Vector Space Definition\n"
18531853
"\n"
18541854
"### Note on simp and linarith\n"
18551855
"\n"
1856-
"In this world, we are primarilly proving simple statements about vector spaces. This is exactly what\n"
1856+
"In this world, we are primarily proving simple statements about vector spaces. This is exactly what\n"
18571857
"the `simp` and `linarith` tactics are meant to do. In fact, the `simp` tactic alone would be able to\n"
18581858
"solve the first three levels of this world. Because of this, you will not be able to use those tactics\n"
18591859
"in this world.\n"
@@ -1881,7 +1881,7 @@ msgstr ""
18811881
msgid "`linear_combination_unique` is a proof that representation as a linear combination of a linearly independent\n"
18821882
"set of vectors is unique. It takes in two subsets of a linearly independent set, along with two functions\n"
18831883
"representing the linear combinations. The functions must be zero outside of the sets, and their sums\n"
1884-
"must be equal. In this case, this prooves that functions will be equal."
1884+
"must be equal. In this case, this proves that functions will be equal."
18851885
msgstr ""
18861886

18871887
#: Game.Levels.VectorSpaceWorld.Level03
@@ -2049,7 +2049,7 @@ msgid "This is the \"boss level\" of the Linear Independence and Span World. Thi
20492049
"\n"
20502050
"### The `funext` tactic\n"
20512051
"The `funext` tactic lets you prove statements about functions. It works similarly to the `intro` tactic,\n"
2052-
"where you introduce an arbitrary object, but instead of introducing from a `∀` statment, it works if\n"
2052+
"where you introduce an arbitrary object, but instead of introducing from a `∀` statement, it works if\n"
20532053
"you have a goal of the form `f = g`, where `funext x` will change the goal to the form `f x = g x`, and\n"
20542054
"give you an arbitrary `x` in the domain of `f` and `g`.\n"
20552055
"\n"
@@ -2224,7 +2224,7 @@ msgid "## Summary\n"
22242224
"\n"
22252225
"## Example\n"
22262226
"\n"
2227-
"If `h : ∃ (a : ℝ), a * a = 0` is a hypothesis, thatn `cases' h with a ha` will create a variable\n"
2227+
"If `h : ∃ (a : ℝ), a * a = 0` is a hypothesis, then `cases' h with a ha` will create a variable\n"
22282228
"`a : Nat` and a hypothesis `ha : a * a = 0`"
22292229
msgstr ""
22302230

@@ -2416,7 +2416,7 @@ msgid "In this level, we will introduce two tactics: `intro`, and `exact`\n"
24162416
"say `h: P` and we must construct a proof of `Q` from it.\n"
24172417
"\n"
24182418
"### Intro\n"
2419-
"This idea is exatly what the `intro` tactic does. If the goal is of the form `P → Q`, `intro h` will\n"
2419+
"This idea is exactly what the `intro` tactic does. If the goal is of the form `P → Q`, `intro h` will\n"
24202420
"create a new hypothesis `h: P`, and change the goal into `Q`.\n"
24212421
"\n"
24222422
"### Exact\n"
@@ -2695,7 +2695,7 @@ msgid "In this level, the goal is to prove `x ≤ 1 + x`. This requires understa
26952695
"clearly also true when working with real numbers. This is because the theorem \"le_iff_exists_add\"\n"
26962696
"does not work with the real numbers, so the proof would be slightly different.\n"
26972697
"\n"
2698-
"We have this statment as a theorem, \"le_iff_exists_add\".\n"
2698+
"We have this statement as a theorem, \"le_iff_exists_add\".\n"
26992699
"\n"
27002700
"However, note that this theorem will rewrite the goal to have a `∃` symbol. In this case, we have to\n"
27012701
"find a number that satisfies a certain property. Once you find such a number, you can use the `use`\n"
@@ -2732,12 +2732,12 @@ msgid "`linear_independent_v` means that a set of vectors is linearly independen
27322732
msgstr ""
27332733

27342734
#: Game.Levels.TutorialWorld.Level10
2735-
msgid "The `induction` tactic is a powerful tool to help you to prove statments involving natural numbers.\n"
2735+
msgid "The `induction` tactic is a powerful tool to help you to prove statements involving natural numbers.\n"
27362736
"It splits a proof into two cases: a base case and an inductive step. The base case is the smallest\n"
27372737
"natural number you need to prove the proof for. The inductive step proves the theorem for all other\n"
27382738
"numbers. In the inductive step, you can assume the theorem holds for some value `n`, and must then\n"
27392739
"prove that it holds for `n + 1`, also written as `Nat.succ n`, the successor of `n`. Induction can\n"
2740-
"also be used to prove theorems about objects indexed my natural numbers, such as vectors whose\n"
2740+
"also be used to prove theorems about objects indexed by natural numbers, such as vectors whose\n"
27412741
"dimension can be described by a natural number.\n"
27422742
"\n"
27432743
"The syntax for the `induction` tactic in Lean 4 is `induction n with | zero => ... | succ n h => ...`.\n"

Game/Levels/InnerProductWorld/Level06.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Title "Orthogonal Decomposition"
1010
Introduction "
1111
One of the most important theorems in linear algebra is orthogonal decomposition. This allows you to
1212
represent a vector as a scalar multiple of one vector, along with a vector orthogonal to that vector.
13-
This includes the concepts of projections and othogonal components.
13+
This includes the concepts of projections and orthogonal components.
1414
1515
## The Goal
1616
In this level, we are given two vectors, `u` and `v`. `u` is the vector we want to rewrite, and `v`
@@ -25,7 +25,7 @@ is trivial, since we are adding and subtracting the same vector to `u` on the ri
2525

2626
/--
2727
`ortho_decom` is a proof that given vectors `u v : V` and `h : v ≠ 0`, then `orthogonal (u - (⟪u,v⟫ / (‖v‖^2)) • v) v`.
28-
This allows you to rewrite `u` as a scalar multiple of `v` added to a vector orthogonal to `v`.
28+
This allows you to rewrite `u` as a scalar multiple of `v` added to a vector orthogonal to `v`.
2929
-/
3030
TheoremDoc LinearAlgebraGame.ortho_decom as "ortho_decom" in "Inner Product"
3131

Game/Levels/LinearIndependenceSpanWorld/Level01.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ and a function `f : V → K`, such that `x` is the sum over `s` of `f(v) • v`.
5757
DefinitionDoc is_linear_combination as "is_linear_combination"
5858

5959
/--
60-
`Finset.sum` is how we difine summing over a set. It uses Mathlib's `Finset` Type, which means that we
60+
`Finset.sum` is how we define summing over a set. It uses Mathlib's `Finset` Type, which means that we
6161
can only sum over arbitrary finite sets. The syntax is as follows: With a additive group or field `K`, some Type `T`,
6262
some `s : Finset T`, and some `f : T → K`, `Finset.sum s (fun x => f x)` sums `f x` over all `x ∈ s`.
6363
-/

Game/Levels/LinearIndependenceSpanWorld/Level07.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ goal into two subgoals: one where you have a hypothesis `hv : v = 0`, and anothe
4040
4141
### The `funext` tactic
4242
The `funext` tactic lets you prove statements about functions. It works similarly to the `intro` tactic,
43-
where you introduce an arbitrary object, but instead of introducing from a `∀` statment, it works if
43+
where you introduce an arbitrary object, but instead of introducing from a `∀` statement, it works if
4444
you have a goal of the form `f = g`, where `funext x` will change the goal to the form `f x = g x`, and
4545
give you an arbitrary `x` in the domain of `f` and `g`.
4646
@@ -176,7 +176,7 @@ TheoremDoc Finset.notMem_union as "notMem_union" in "Sets"
176176
`linear_combination_unique` is a proof that representation as a linear combination of a linearly independent
177177
set of vectors is unique. It takes in two subsets of a linearly independent set, along with two functions
178178
representing the linear combinations. The functions must be zero outside of the sets, and their sums
179-
must be equal. In this case, this prooves that functions will be equal.
179+
must be equal. In this case, this proves that functions will be equal.
180180
-/
181181
TheoremDoc LinearAlgebraGame.linear_combination_unique as "linear_combination_unique" in "Vector Spaces"
182182

Game/Levels/LinearIndependenceSpanWorld/Level08.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ Statement linear_independent_insert_of_not_in_span
165165
(hS : linear_independent_v K V S)
166166
(hv_not_span : v ∉ span K V S):
167167
linear_independent_v K V (S ∪ {v}) := by
168-
Hint "First, unfold the definitions, intro the variables and hypotheses we need, and simp where nescessary"
168+
Hint "First, unfold the definitions, intro the variables and hypotheses we need, and simp where necessary"
169169
Hint "Linear independence means: if a linear combination equals zero, all coefficients must be zero."
170170
Hint (hidden := true) "Try `unfold linear_independent_v at *`"
171171
unfold linear_independent_v at *
@@ -178,7 +178,7 @@ Statement linear_independent_insert_of_not_in_span
178178
Hint (hidden := true) "Try `simp at hv_not_span`"
179179
simp at hv_not_span
180180

181-
Hint "We want to prove two seperate cases: v ∈ s and v ∉ s. If v ∉ s, then we know s ⊆ S, so since S
181+
Hint "We want to prove two separate cases: v ∈ s and v ∉ s. If v ∉ s, then we know s ⊆ S, so since S
182182
is linearly independent, so is s. If v ∈ s, then we have more work to do. "
183183
Hint "Strategy: Split based on whether the new vector v appears in our linear combination."
184184
Hint (hidden := true) "Try `by_cases hvIns : v ∈ s`"

Game/Levels/LinearIndependenceSpanWorld/Level09.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,7 @@ Statement remove_redundant_span
259259

260260
Hint "Now, let's consider the function we will be summing. To get a sum of `x`, we need two parts:
261261
the sum over `S` getting `x`, and the sum over `S \\ \{{w}}` to get `w`. This can be thought of as
262-
two seperate functions. The first function will be similar to `fx`, but since we do not know what
262+
two separate functions. The first function will be similar to `fx`, but since we do not know what
263263
`fx` is outside of `sx`, we must make this function `0` outside of `sx`. We can define this first
264264
function with a `let` statement"
265265
Hint "Mathematical insight: We're decomposing x = Σ(fx v • v) into two parts: contributions from S\\\{{w}} and from w itself."

Game/Levels/TutorialWorld/Level03.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ taking proofs of `P` to proofs of `Q`. In Lean, this means that we take an arbit
6666
say `h: P` and we must construct a proof of `Q` from it.
6767
6868
### Intro
69-
This idea is exatly what the `intro` tactic does. If the goal is of the form `P → Q`, `intro h` will
69+
This idea is exactly what the `intro` tactic does. If the goal is of the form `P → Q`, `intro h` will
7070
create a new hypothesis `h: P`, and change the goal into `Q`.
7171
7272
### Exact

Game/Levels/TutorialWorld/Level06.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ you have finished the level.
2525
2626
## Example
2727
28-
If `h : ∃ (a : ℝ), a * a = 0` is a hypothesis, thatn `cases' h with a ha` will create a variable
28+
If `h : ∃ (a : ℝ), a * a = 0` is a hypothesis, then `cases' h with a ha` will create a variable
2929
`a : Nat` and a hypothesis `ha : a * a = 0`
3030
3131
-/

Game/Levels/TutorialWorld/Level09.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ b = a + c. In this level, we have decided to use the natural numbers, although t
4242
clearly also true when working with real numbers. This is because the theorem \"le_iff_exists_add\"
4343
does not work with the real numbers, so the proof would be slightly different.
4444
45-
We have this statment as a theorem, \"le_iff_exists_add\".
45+
We have this statement as a theorem, \"le_iff_exists_add\".
4646
4747
However, note that this theorem will rewrite the goal to have a `∃` symbol. In this case, we have to
4848
find a number that satisfies a certain property. Once you find such a number, you can use the `use`

Game/Levels/TutorialWorld/Level10.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,12 @@ NewTactic induction
4242
NewTheorem Nat.add_succ
4343

4444
Introduction "
45-
The `induction` tactic is a powerful tool to help you to prove statments involving natural numbers.
45+
The `induction` tactic is a powerful tool to help you to prove statements involving natural numbers.
4646
It splits a proof into two cases: a base case and an inductive step. The base case is the smallest
4747
natural number you need to prove the proof for. The inductive step proves the theorem for all other
4848
numbers. In the inductive step, you can assume the theorem holds for some value `n`, and must then
4949
prove that it holds for `n + 1`, also written as `Nat.succ n`, the successor of `n`. Induction can
50-
also be used to prove theorems about objects indexed my natural numbers, such as vectors whose
50+
also be used to prove theorems about objects indexed by natural numbers, such as vectors whose
5151
dimension can be described by a natural number.
5252
5353
The syntax for the `induction` tactic in Lean 4 is `induction n with | zero => ... | succ n h => ...`.

0 commit comments

Comments
 (0)