-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
change of variables by nondecreasing/nonincreasing function #1294
change of variables by nondecreasing/nonincreasing function #1294
Conversation
2cf5ce5
to
d5bcb9e
Compare
d5bcb9e
to
67af2d5
Compare
theories/ftc.v
Outdated
|
||
Lemma increasing_change F G a b : (a < b)%R -> | ||
{in `[a, b] &, {homo F : x y / (x < y)%R}} -> | ||
{within `[a, b], continuous F^`()} -> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The joy of boundary condition never ceases. The term F^`()
is defined as
Definition derive1 V (f : R -> V) (a : R) := lim ((fun h => h^-1 *: (f (h + a) - f a)) @ 0^').
which is taking the limit near 0 in R
. Which means F^`()
depends on values outside of [a,b]
. That's bad news if you want to consider F\_[a,b]
. which will not have a (full) derivative at a
.
Several ways to fix this
- The "right" way to fix this is have
derive1
considera
under different topologies. Shouldn't be too hard, but it's still kinda invasive. Maybe a ticket for this? - For a less invasive way, you can introduce another helper function
{within `[a, b], continuous F1} ->
{in `]a.b[, F1 = F^`()}
This forces F^`()
to have limits at its endpoints. That is F1 a = lim_(x -->a^+) F`^() x
which is what we want.
- We can also do
{within
]a.b[, continuous F^()}
+cvg (F`^() @ a^+)
I don't have a strong preference on which approach you take. It's not clear to me how much harder this will make the proof...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I had thought that {within `[a, b], continuous F^`()}
as `` {within [a, b], continuous F1} /\ {in
]a, b[, F1 = F^`()}`, but I hesitate to add a new function in the statement and make less convenient.
So, I think the first solution looks better.
I will try to define right/left derivation
Definition right_derive1 V (f : R -> V) (a : R) :=
lim ((fun h => h^-1 *: (f (h + a) - f a)) @ 0^'+).
Definition left_derive1 V (f : R -> V) (a : R) :=
lim ((fun h => h^-1 *: (f (h + a) - f a)) @ 0^'-).
and to change {within `[a, b], continuous F^`()}
to
{in `]a, b[, continuous F^`()}
and right_derive1 F
is right continuous at a
and left_derive1 F
is left continuous at b
.
Thank you for advice!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Theory wise, I think you'll end up needing to prove something along the lines of F^`() @a^+ --> L -> right_derive1 F a /\ F^`+() a = L
anyway (see https://math.stackexchange.com/questions/3301610/proving-differentiability-at-a-point-if-limit-of-derivative-exists-at-that-point). But engineering-wise I'm happy with whatever will lead you to the nicest theorem statement. Good luck!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I noticed that the necessary parts of boundary condition of F^`()
is that this converged, so I have changed hypothesis to cvg (F^`() @ a^'+/@ b^'-)
.
This seems easier to use as we don't necessarily have to consider one-sided derivatives.
a7a5504
to
96b725e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks much better with the fixed boundary conditions. A couple thoughts on potential improvements to the proofs, but nothing serious. Qed is Qed, after all. So I'm happy with it
69a1dd7
to
0e19a74
Compare
898b18d
to
9a9f82b
Compare
A couple of lemmas to move to more appropriate locations and we should be done. |
Still feels a bit long but at least all comments should be addressed. |
Co-authored-by: IshiguroYoshihiro <[email protected]>
ae46e0a
to
7b51186
Compare
…p#1294) * integration by substitution Co-authored-by: IshiguroYoshihiro <[email protected]> Co-authored-by: Reynald Affeldt <[email protected]>
Motivation for this change
add lemmas for integration by substitution with increasing/decreasing function.
some intermediate lemmas are admitted but proved in #1327Checklist
CHANGELOG_UNRELEASED.md
Reference: How to document
Reminder to reviewers