Analysis I, Section 10.3: Monotone functions and derivatives

I have attempted to make the translation as faithful a paraphrasing as possible of the original text. When there is a choice between a more idiomatic Lean solution and a more faithful translation, I have generally chosen the latter. In particular, there will be places where the Lean code could be "golfed" to be more elegant and idiomatic, but I have consciously avoided doing so.

Main constructions and results of this section:

namespace Chapter10

Proposition 10.3.1 / Exercise 10.3.1

theorem declaration uses 'sorry'derivative_of_monotone (X:Set ) {x₀:} (hx₀: ClusterPt x₀ (.principal (X \ {x₀}))) {f: } (hmono: Monotone f) (hderiv: DifferentiableWithinAt f X x₀) : derivWithin f X x₀ 0 := X:Set x₀:hx₀:ClusterPt x₀ (Filter.principal (X \ {x₀}))f: hmono:Monotone fhderiv:DifferentiableWithinAt f X x₀derivWithin f X x₀ 0 All goals completed! 🐙
theorem declaration uses 'sorry'derivative_of_antitone (X:Set ) {x₀:} (hx₀: ClusterPt x₀ (.principal (X \ {x₀}))) {f: } (hmono: Antitone f) (hderiv: DifferentiableWithinAt f X x₀) : derivWithin f X x₀ 0 := X:Set x₀:hx₀:ClusterPt x₀ (Filter.principal (X \ {x₀}))f: hmono:Antitone fhderiv:DifferentiableWithinAt f X x₀derivWithin f X x₀ 0 All goals completed! 🐙

Proposition 10.3.3 / Exercise 10.3.4

theorem declaration uses 'sorry'strictMono_of_positive_derivative {a b:} (hab: a < b) {f: } (hderiv: DifferentiableOn f (.Icc a b)) (hpos: x Set.Ioo a b, derivWithin f (.Icc a b) x > 0) : StrictMonoOn f (.Icc a b) := a:b:hab:a < bf: hderiv:DifferentiableOn f (Set.Icc a b)hpos: x Set.Ioo a b, derivWithin f (Set.Icc a b) x > 0StrictMonoOn f (Set.Icc a b) All goals completed! 🐙
theorem declaration uses 'sorry'strictAnti_of_negative_derivative {a b:} (hab: a < b) {f: } (hderiv: DifferentiableOn f (.Icc a b)) (hneg: x Set.Ioo a b, derivWithin f (.Icc a b) x < 0) : StrictAntiOn f (.Icc a b) := a:b:hab:a < bf: hderiv:DifferentiableOn f (Set.Icc a b)hneg: x Set.Ioo a b, derivWithin f (Set.Icc a b) x < 0StrictAntiOn f (Set.Icc a b) All goals completed! 🐙

Example 10.3.2

declaration uses 'sorry'example : f : , Continuous f StrictMono f ¬ DifferentiableAt f 0 := f, Continuous f StrictMono f ¬DifferentiableAt f 0 All goals completed! 🐙

Exercise 10.3.3

declaration uses 'sorry'example : f: , StrictMono f Differentiable f deriv f 0 = 0 := f, StrictMono f Differentiable f deriv f 0 = 0 All goals completed! 🐙

Exercise 10.3.5

declaration uses 'sorry'example : (X : Set ) (f : ), DifferentiableOn f X ( x X, derivWithin f X x > 0) ¬ StrictMonoOn f X := X f, DifferentiableOn f X (∀ x X, derivWithin f X x > 0) ¬StrictMonoOn f X All goals completed! 🐙
end Chapter10