Skip to content

typos fixes and removal of unneed hypothesis - 10.3 10.4#503

Merged
teorth merged 3 commits into
teorth:mainfrom
rkirov:upstream-typos-10-3-10-4
May 23, 2026
Merged

typos fixes and removal of unneed hypothesis - 10.3 10.4#503
teorth merged 3 commits into
teorth:mainfrom
rkirov:upstream-typos-10-3-10-4

Conversation

@rkirov
Copy link
Copy Markdown
Contributor

@rkirov rkirov commented May 22, 2026

No description provided.

rkirov and others added 3 commits May 21, 2026 19:16
Both strictMono_of_positive_derivative and strictAnti_of_negative_derivative
take a < b in their signatures but the resulting StrictMonoOn / StrictAntiOn
statement supplies the relevant ordering directly when applied, so this
hypothesis is redundant.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The hcluster : ClusterPt x₀ (.principal (X \ {x₀})) hypothesis is not used
in the proof. Same cleanup pattern as the recent Section 9.3 and 9.4
upstream commits.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The differentiability statements for x ↦ x^(1/n:ℝ) and friends fail at 0:
the cube-root example just above (¬ DifferentiableWithinAt (·^(1/3:ℝ)) (.Ici 0) 0)
demonstrates that 1/n is not always differentiable from the right at 0. The
intended domain throughout these exercises is .Ioi 0; with that change the
(hn: n > 0) hypothesis in 10.4.1 also becomes unnecessary (the n = 0 case
gives x^(1/0) = x^0 = 1, which is constant, so the derivative formula still
holds via Real's junk-value convention).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

/-- Proposition 10.3.3 / Exercise 10.3.4 -/
theorem strictMono_of_positive_derivative {a b:ℝ} (hab: a < b) {f:ℝ → ℝ}
theorem strictMono_of_positive_derivative {a b:ℝ} {f:ℝ → ℝ}
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

vacuously true even if a < b is not true.


/-- Exercise 10.4.1(a) -/
example {n:ℕ} (hn: n > 0) : ContinuousOn (fun x:ℝ ↦ x^(1/n:ℝ)) (.Ici 0) := by sorry
example {n:ℕ} : ContinuousOn (fun x:ℝ ↦ x^(1/n:ℝ)) (.Ioi 0) := by sorry
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

n = 0 is true due to garbage value of 1 / n but I can see an argument to keeping it even if not used in proof.

The Ici to Ioi change is just fixing a typo.

(hfXY: ∀ x ∈ X, f x ∈ Y) (hgYX: ∀ y ∈ Y, g y ∈ X)
(hgf: ∀ x ∈ X, g (f x) = x) (hfg: ∀ y ∈ Y, f (g y) = y)
{x₀ y₀ f'x₀: ℝ} (hx₀: x₀ ∈ X) (hfx₀: f x₀ = y₀) (hne : f'x₀ ≠ 0)
(hcluster: ClusterPt x₀ (.principal (X \ {x₀})))
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This assumption is not needed. Full proof without it - https://github.com/rkirov/analysis/blob/main/Analysis/Section_10_4.lean#L81-L113

@rkirov rkirov changed the title Upstream typos 10.3 10.4 typos fixes and removal of unneed hypothesis - 10.3 10.4 May 22, 2026
@teorth teorth merged commit abe748f into teorth:main May 23, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants