import Adam.Metadata import Std.Tactic.RCases set_option tactic.hygienic false Game "Adam" World "Proposition" Level 11 Title "Und" Introduction " Langsam wird die Schlange kürzer. Die nächste Formalosophin, ebenfalls häkelnd, hat folgendes Anliegen. " Statement "" (A B C : Prop) (h : A ∧ (B ∧ C)) : B := by Hint " **Du** Jetzt müssen wir wohl die Annahme de-konstruieren. **Robo** Ja, genau. Das geht am einfachsten mit `rcases {h} with ⟨h₁, h₂⟩`. **Du** Moment, wie schreib ich *das* denn hier auf? **Robo** Die bleiden Klammern schreibst Du als `\\<` und `\\>`, oder gleichzeitig als `\\<>`. Und h₁ schreibst Du einfach als `h\\1`. Aber Du kannst Dir auch einfach andere Namen für `h₁` und `h₂`, zum Beispiel `rcases {h} with ⟨hA, hBC⟩` " Branch rcases h with ⟨h₁, h₂⟩ Hint "**Robo** Das sieht doch schon besser aus! Gleich nochmal!" rcases h with ⟨_, ⟨g , _⟩⟩ Hint (hidden := true) "**Robo** Du hast einen Beweis dafür in den *Annahmen*." assumption Conclusion " **Robo** Du hättest das übrigens auch direkt verschachtelt schreiben können: `rcases h with ⟨h₁, ⟨h₂ , h₃⟩⟩`. " NewTactic rcases DisabledTactic tauto