fix missing lemma docs from statement names
This commit is contained in:
@@ -20,7 +20,8 @@ aber er möchte, dass du ihm das hier und jetzt nochmals von Grund auf zeigst.
|
||||
open Function
|
||||
|
||||
--TODO: This is a really hard proof
|
||||
Statement bijective_iff_has_inverse "" {A B : Type} (f : A → B) :
|
||||
-- bijective_iff_has_inverse
|
||||
Statement "" {A B : Type} (f : A → B) :
|
||||
Bijective f ↔ ∃ g, LeftInverse g f ∧ RightInverse g f := by
|
||||
constructor
|
||||
intro h
|
||||
|
||||
@@ -19,7 +19,9 @@ aber er möchte, dass du ihm das hier und jetzt nochmals von Grund auf zeigst.
|
||||
|
||||
open Function
|
||||
set_option pp.rawOnError true
|
||||
Statement bijective_iff_has_inverse "" {A B : Type} (f : A → B) :
|
||||
|
||||
-- bijective_iff_has_inverse
|
||||
Statement {A B : Type} (f : A → B) :
|
||||
Bijective f ↔ ∃ g, LeftInverse g f ∧ RightInverse g f := by
|
||||
Branch
|
||||
exfalso
|
||||
|
||||
@@ -27,7 +27,8 @@ local notation "ℝ²" => Fin 2 → ℝ
|
||||
|
||||
open Submodule Set Finsupp
|
||||
|
||||
Statement mem_span_of_mem
|
||||
-- mem_span_of_mem
|
||||
Statement
|
||||
"Zeige, dass $x \\in M$ auch Element von der $K$-linearen Hülle
|
||||
\\langle M \\rangle ist."
|
||||
{V K : Type _} [Field K] [AddCommMonoid V]
|
||||
|
||||
@@ -19,7 +19,7 @@ Introduction
|
||||
Sofort taucht das nächste Blatt auf. Anscheinend hatten sie sich auf einen Kompromiss geeinigt.
|
||||
"
|
||||
|
||||
Statement odd_square (n : ℕ) (h : Odd n) : Odd (n ^ 2) := by
|
||||
Statement (n : ℕ) (h : Odd n) : Odd (n ^ 2) := by
|
||||
Hint (hidden := true) "**Robo**: mit `rcases h with ⟨r, hr⟩` kannst du wieder
|
||||
das `r` nehmen, das laut Annahme existieren muss.
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ erklärt mir doch folgendes:
|
||||
|
||||
open Set
|
||||
|
||||
Statement mem_univ "" {A : Type} (x : A) : x ∈ (univ : Set A) := by
|
||||
Statement Set.mem_univ "" {A : Type} (x : A) : x ∈ (univ : Set A) := by
|
||||
Hint "**Du**: Also `A` ist ein `Type`, `x` ist ein Element in `A`…
|
||||
|
||||
**Robo** … und `univ` ist die Menge aller Elemente in `A`.
|
||||
|
||||
@@ -18,7 +18,7 @@ Ihr zieht also durch die Gegend und redet mit den Leuten. Ein Junge rennt zu euc
|
||||
|
||||
open Set
|
||||
|
||||
Statement not_mem_empty "" {A : Type} (x : A) :
|
||||
Statement Set.not_mem_empty "" {A : Type} (x : A) :
|
||||
x ∉ (∅ : Set A) := by
|
||||
Hint "**Du**: Kein Element ist in der leeren Menge enthalten? Das ist ja alles
|
||||
tautologisches Zeugs...
|
||||
|
||||
@@ -31,7 +31,7 @@ aufteilen.
|
||||
|
||||
open Set Subset
|
||||
|
||||
Statement subset_empty_iff {A : Type _} (s : Set A) :
|
||||
Statement Set.subset_empty_iff {A : Type _} (s : Set A) :
|
||||
s ⊆ ∅ ↔ s = ∅ := by
|
||||
Hint "**Du**: Ja, die einzige Teilmenge der leeren Menge ist die leere Menge.
|
||||
Das ist doch eine Tautologie?
|
||||
|
||||
@@ -22,7 +22,7 @@ Zeige folgendes Lemma, welches wir gleich brauchen werden:
|
||||
open Set
|
||||
|
||||
|
||||
Statement eq_empty_iff_forall_not_mem
|
||||
Statement Set.eq_empty_iff_forall_not_mem
|
||||
""
|
||||
{A : Type _} (s : Set A) :
|
||||
s = ∅ ↔ ∀ x, x ∉ s := by
|
||||
|
||||
@@ -21,8 +21,7 @@ Zeige dass die beiden Ausdrücke äquivalent sind:
|
||||
|
||||
open Set
|
||||
|
||||
Statement nonempty_iff_ne_empty
|
||||
""
|
||||
Statement Set.nonempty_iff_ne_empty
|
||||
{A : Type _} (s : Set A) :
|
||||
s.Nonempty ↔ s ≠ ∅ := by
|
||||
Hint "Am besten fängst du mit `unfold Set.Nonempty` an."
|
||||
|
||||
@@ -42,7 +42,6 @@ open Set
|
||||
#check mem_compl_iff
|
||||
|
||||
Statement
|
||||
""
|
||||
(A B C : Set ℕ) : (A \ B)ᶜ ∩ (C \ B)ᶜ = ((univ \ A) \ C) ∪ (univ \ Bᶜ) := by
|
||||
rw [←compl_union]
|
||||
rw [←union_diff_distrib]
|
||||
|
||||
@@ -22,7 +22,7 @@ open Fin
|
||||
|
||||
open BigOperators
|
||||
|
||||
Statement odd_arithmetic_sum
|
||||
Statement
|
||||
"$\\sum_{i = 0}^n (2n + 1) = n ^ 2$."
|
||||
(n : ℕ) : (∑ i : Fin n, (2 * (i : ℕ) + 1)) = n ^ 2 := by
|
||||
Hint "**Robo**: Das funktioniert genau gleich wie zuvor, viel Glück."
|
||||
|
||||
Reference in New Issue
Block a user