|
|
import Adam.Metadata
|
|
|
|
|
|
import Adam.Options.MathlibPart
|
|
|
|
|
|
set_option tactic.hygienic false
|
|
|
|
|
|
Game "Adam"
|
|
|
World "Function"
|
|
|
Level 5
|
|
|
|
|
|
Title ""
|
|
|
|
|
|
Introduction
|
|
|
"
|
|
|
Sofort hackt die ältere Gestalt nach:
|
|
|
"
|
|
|
open Set Function
|
|
|
|
|
|
example (f : ℤ → ℤ) (h : StrictMono f) : Injective f := by
|
|
|
apply StrictMono.injective
|
|
|
assumption
|
|
|
|
|
|
-- Odd.strictMono_pow
|
|
|
|
|
|
Statement "" : Injective (fun (n : ℤ) ↦ n^3 + (n + 3)) := by
|
|
|
Hint "**Du**: Hmm, das ist etwas schwieriger…
|
|
|
|
|
|
**Robo**: Aber ich hab einen Trick auf Lager:
|
|
|
Das Lemma `StrictMono.injective` sagt, dass jede strikt monotone Funktion injektive ist,
|
|
|
und ich habe das Gefühl Monotonie ist hier einfacher zu zeigen."
|
|
|
Hint (hidden := true) "**Robo**: `apply` ist wonach du suchst."
|
|
|
Branch
|
|
|
intro a b
|
|
|
Hint "**Robo**: Ich glaube, dieser Weg ist zu steinig. Fang doch nochmals von vorne an!"
|
|
|
intro ha
|
|
|
Hint "**Robo**: Ich glaube, dieser Weg ist zu steinig. Fang doch nochmals von vorne an!"
|
|
|
apply StrictMono.injective
|
|
|
Hint "**Du**: Jetzt möchte ich strikte Monotonie von `n ^ 3` und `n + 3` separat zeigen,
|
|
|
schliesslich scheint es mir als wär das zweite wieder einfach.
|
|
|
|
|
|
**Robo**: Dafür hab ich `StrictMono.add` bereit!"
|
|
|
apply StrictMono.add
|
|
|
Hint "**Du**: Hmm, darauf hab ich jetzt wenig Lust. Gibt's dafür auch was? Das gilt ja nur
|
|
|
wenn der Exponent ungerade ist.
|
|
|
|
|
|
**Robo**: Du könntest mal `Odd.strictMono_pow` versuchen…"
|
|
|
apply Odd.strictMono_pow
|
|
|
Hint (hidden := true) "**Du**: Ist das nicht ne Trivialität? Warte mal!"
|
|
|
trivial
|
|
|
Hint "**Du**: Ha! Und dieser Teil funktioniert sicher gleich wie Injektivität vorhin!"
|
|
|
intro a b
|
|
|
simp
|
|
|
|
|
|
NewDefinition Injective
|
|
|
NewLemma StrictMono.injective StrictMono.add Odd.strictMono_pow
|
|
|
LemmaTab "Function"
|
|
|
|
|
|
Conclusion "**Du**: Danke vielmals!
|
|
|
|
|
|
Und damit lässt das Wesen mitten im Gang stehen, wo es weiter über Injektivität nachdenkt."
|