compute which tactics are available in which level
This commit is contained in:
@@ -39,4 +39,4 @@ Statement mem_univ
|
||||
trivial
|
||||
-- tauto
|
||||
|
||||
Tactics tauto trivial
|
||||
NewTactics tauto trivial
|
||||
|
||||
@@ -39,7 +39,7 @@ Statement subset_empty_iff
|
||||
intro h hA
|
||||
apply mem_univ -- or `trivial`.
|
||||
|
||||
Tactics intro trivial apply
|
||||
NewTactics intro trivial apply
|
||||
-- blocked: tauto simp
|
||||
|
||||
end MySet
|
||||
|
||||
@@ -54,8 +54,8 @@ Statement subset_empty_iff
|
||||
rcases a with ⟨h₁, h₂⟩
|
||||
assumption
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
end MySet
|
||||
|
||||
@@ -45,8 +45,8 @@ Statement eq_empty_iff_forall_not_mem
|
||||
rw [←subset_empty_iff]
|
||||
rfl -- This is quite a miracle :)
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
end MySet
|
||||
|
||||
@@ -30,6 +30,6 @@ Statement nonempty_iff_ne_empty
|
||||
push_neg
|
||||
rfl
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -26,6 +26,6 @@ Statement
|
||||
"" (A B : Set ℕ) : (A ∪ ∅) ∩ B = A ∩ (univ ∩ B) := by
|
||||
simp
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -30,6 +30,6 @@ Statement
|
||||
rw [←union_diff_distrib]
|
||||
rw [univ_union]
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -30,6 +30,6 @@ Statement
|
||||
rw [←not_mem_compl_iff]
|
||||
exact h4
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -22,7 +22,7 @@ man die de-Morganschen Regeln einfach selber beweisen könnten.
|
||||
|
||||
|
||||
Die meisten Aufgaben über Mengen sind eine Kombination von `rw` und `simp_rw` verschiedenster
|
||||
Lemmas in `import Mathlib.Data.Set`.
|
||||
NewLemmas in `import Mathlib.Data.Set`.
|
||||
|
||||
Die Taktik `simp_rw` funktioniert ähnlich wie `rw`, aber sie versucht jedes Lemma so oft
|
||||
wie möglich anzuwenden. Wir kennen also 4 etwas verwandte Optionen um Lemmas und Theoreme zu
|
||||
@@ -52,7 +52,7 @@ Statement
|
||||
rw [diff_eq_compl_inter]
|
||||
rw [inter_comm]
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
-- TODOs
|
||||
-- Lemmas compl_union compl_inter mem_compl_iff
|
||||
|
||||
@@ -33,6 +33,6 @@ Statement
|
||||
rw [Set.mem_diff]
|
||||
exact hx
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -32,6 +32,6 @@ Statement
|
||||
({4, 9} : Set ℕ) = Set.insert 4 {9} := by
|
||||
rfl
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -35,5 +35,5 @@ Statement
|
||||
simp_rw [mem_insert_iff, mem_singleton_iff] at *
|
||||
tauto
|
||||
|
||||
Tactics simp_rw intro tauto rw
|
||||
NewTactics simp_rw intro tauto rw
|
||||
--Lemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -32,6 +32,6 @@ Statement
|
||||
use 1
|
||||
ring
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -37,6 +37,6 @@ Statement
|
||||
assumption
|
||||
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -36,6 +36,6 @@ Statement
|
||||
ring
|
||||
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -34,6 +34,6 @@ Statement
|
||||
ring
|
||||
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -28,6 +28,6 @@ Statement
|
||||
{ x ∈ (S : Set ℤ) | 0 ≤ x} ⊆ S := by
|
||||
library_search
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -23,6 +23,6 @@ Statement
|
||||
use 1
|
||||
ring
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -22,6 +22,6 @@ open Set
|
||||
Statement
|
||||
"" : True := sorry
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -23,6 +23,6 @@ Statement
|
||||
use 1
|
||||
ring
|
||||
|
||||
Tactics constructor intro rw assumption rcases simp tauto trivial
|
||||
NewTactics constructor intro rw assumption rcases simp tauto trivial
|
||||
|
||||
Lemmas Subset.antisymm_iff empty_subset
|
||||
NewLemmas Subset.antisymm_iff empty_subset
|
||||
|
||||
@@ -54,8 +54,7 @@ Statement
|
||||
rw [←Set.union_diff_distrib]
|
||||
rw [Set.univ_union]
|
||||
|
||||
Tactics rw
|
||||
|
||||
NewTactics rw
|
||||
|
||||
example : 4 ∈ (univ : Set ℕ) := by
|
||||
trivial
|
||||
|
||||
Reference in New Issue
Block a user