def deriv_n (f : ℤ[X]) (n : ℕ) : ℤ[X] := polynomial.derivative ^[n] f
the zeroth derivative of polynomial $f$ is $f$ itself.
lemma zeroth_deriv (f : ℤ[X]) : deriv_n f 0 = f :=
deriv_n f n
We also used $f^{[n]}=\mathrm{id}$ and $\mathrm{id} x = x$.
rw deriv_n, simp only [id.def, function.iterate_zero],
f : ℤ[X]
⊢ deriv_n f 0 = f
no goals
the derivative of $f^{(n)}$ is $f^{(n+1)}$
lemma deriv_succ (f : ℤ[X]) (n : ℕ) : (deriv_n f n).derivative = (deriv_n f (n+1)) :=
rw [deriv_n, deriv_n, function.iterate_succ'],
f : ℤ[X],
n : ℕ
⊢ (deriv_n f n).derivative = deriv_n f (n + 1)
no goals
the $n$-th derivative of zero polynomial is $0$
lemma deriv_zero_p (n : ℕ) : deriv_n 0 n = 0 :=
simp
induction n with n hn; simp only [deriv_n, id.def, function.iterate_zero], rw <-deriv_n, assumption,
n : ℕ
⊢ deriv_n 0 n = 0
no goals
If the $n$-th coefficient of $f$ is $a_n$, then the $n$-th coefficient in $f^{(k)}$ is $\left(\prod_{i=0}^{k-1} (n+k-i)\right)a_{n+k}$
lemma deriv_n_coeff (f : ℤ[X]) (k : ℕ) : ∀ n : ℕ, (deriv_n f k).coeff n = (∏ i in finset.range k, (n+k-i)) * (f.coeff (n+k)) :=
induction k with k ih,
f : ℤ[X],
k : ℕ
⊢ ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k)
2 goals
case nat.zero
f : ℤ[X]
⊢ ∀ (n : ℕ), (deriv_n f 0).coeff n = (∏ (i : ℕ) in finset.range 0, (↑n + ↑0 - ↑i)) * f.coeff (n + 0)
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k)
⊢ ∀ (n : ℕ),
(deriv_n f k.succ).coeff n =
(∏ (i : ℕ) in finset.range k.succ, (↑n + ↑(k.succ) - ↑i)) * f.coeff (n + k.succ)
simp
.
simp only [add_zero, nat.nat_zero_eq_zero, one_mul, finset.range_zero, finset.prod_empty], rw deriv_n, simp only [forall_const, id.def, eq_self_iff_true, function.iterate_zero],
2 goals
case nat.zero
f : ℤ[X]
⊢ ∀ (n : ℕ), (deriv_n f 0).coeff n = (∏ (i : ℕ) in finset.range 0, (↑n + ↑0 - ↑i)) * f.coeff (n + 0)
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k)
⊢ ∀ (n : ℕ),
(deriv_n f k.succ).coeff n =
(∏ (i : ℕ) in finset.range k.succ, (↑n + ↑(k.succ) - ↑i)) * f.coeff (n + k.succ)
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k)
⊢ ∀ (n : ℕ),
(deriv_n f k.succ).coeff n =
(∏ (i : ℕ) in finset.range k.succ, (↑n + ↑(k.succ) - ↑i)) * f.coeff (n + k.succ)
intro m,
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k)
⊢ ∀ (n : ℕ),
(deriv_n f k.succ).coeff n =
(∏ (i : ℕ) in finset.range k.succ, (↑n + ↑(k.succ) - ↑i)) * f.coeff (n + k.succ)
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ (deriv_n f k.succ).coeff m =
(∏ (i : ℕ) in finset.range k.succ, (↑m + ↑(k.succ) - ↑i)) * f.coeff (m + k.succ)
rw [deriv_n, function.iterate_succ'], simp only [function.comp_app, int.coe_nat_succ], rw <-deriv_n,
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ (deriv_n f k.succ).coeff m =
(∏ (i : ℕ) in finset.range k.succ, (↑m + ↑(k.succ) - ↑i)) * f.coeff (m + k.succ)
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ (deriv_n f k).derivative.coeff m =
(∏ (i : ℕ) in finset.range k.succ, (↑m + (↑k + 1) - ↑i)) * f.coeff (m + k.succ)
rw polynomial.coeff_derivative, rw ih (m+1),
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ (deriv_n f k).derivative.coeff m =
(∏ (i : ℕ) in finset.range k.succ, (↑m + (↑k + 1) - ↑i)) * f.coeff (m + k.succ)
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ (∏ (i : ℕ) in finset.range k, (↑(m + 1) + ↑k - ↑i)) * f.coeff (m + 1 + k) * (↑m + 1) =
(∏ (i : ℕ) in finset.range k.succ, (↑m + (↑k + 1) - ↑i)) * f.coeff (m + k.succ)
rw finset.prod_range_succ, simp only [int.coe_nat_succ, int.nat_cast_eq_coe_nat],
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ (∏ (i : ℕ) in finset.range k, (↑(m + 1) + ↑k - ↑i)) * f.coeff (m + 1 + k) * (↑m + 1) =
(∏ (i : ℕ) in finset.range k.succ, (↑m + (↑k + 1) - ↑i)) * f.coeff (m + k.succ)
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ (∏ (i : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑i)) * f.coeff (m + 1 + k) * (↑m + 1) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
have triv : (∏ (x : ℕ) in finset.range k, ((m:ℤ) + 1 + ↑k - ↑x)) = ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x),
case nat.succ
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ (∏ (i : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑i)) * f.coeff (m + 1 + k) * (↑m + 1) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
2 goals
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ ∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv :
∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
⊢ (∏ (i : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑i)) * f.coeff (m + 1 + k) * (↑m + 1) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
{
2 goals
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ ∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv :
∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
⊢ (∏ (i : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑i)) * f.coeff (m + 1 + k) * (↑m + 1) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ ∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
apply congr_arg, ext, simp only [sub_left_inj], ring,
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ
⊢ ∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
no goals
}, rw triv,
no goals
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv :
∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + 1) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
replace triv : (m + 1 : ℤ) = (m + (k+1) - k:ℤ),
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv :
∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + 1) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
2 goals
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv :
∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
⊢ ↑m + 1 = ↑m + (↑k + 1) - ↑k
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : ↑m + 1 = ↑m + (↑k + 1) - ↑k
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + 1) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
{
2 goals
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv :
∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
⊢ ↑m + 1 = ↑m + (↑k + 1) - ↑k
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : ↑m + 1 = ↑m + (↑k + 1) - ↑k
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + 1) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv :
∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
⊢ ↑m + 1 = ↑m + (↑k + 1) - ↑k
rw add_sub_assoc, simp only [add_sub_cancel'],
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv :
∏ (x : ℕ) in finset.range k, (↑m + 1 + ↑k - ↑x) =
∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)
⊢ ↑m + 1 = ↑m + (↑k + 1) - ↑k
no goals
}, rw triv,
no goals
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : ↑m + 1 = ↑m + (↑k + 1) - ↑k
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + (↑k + 1) - ↑k) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
replace triv : f.coeff (m + 1 + k) = f.coeff (m + k.succ),
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : ↑m + 1 = ↑m + (↑k + 1) - ↑k
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + (↑k + 1) - ↑k) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
2 goals
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : ↑m + 1 = ↑m + (↑k + 1) - ↑k
⊢ f.coeff (m + 1 + k) = f.coeff (m + k.succ)
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : f.coeff (m + 1 + k) = f.coeff (m + k.succ)
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + (↑k + 1) - ↑k) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
{
2 goals
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : ↑m + 1 = ↑m + (↑k + 1) - ↑k
⊢ f.coeff (m + 1 + k) = f.coeff (m + k.succ)
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : f.coeff (m + 1 + k) = f.coeff (m + k.succ)
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + (↑k + 1) - ↑k) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : ↑m + 1 = ↑m + (↑k + 1) - ↑k
⊢ f.coeff (m + 1 + k) = f.coeff (m + k.succ)
rw nat.succ_eq_add_one, ring,
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : ↑m + 1 = ↑m + (↑k + 1) - ↑k
⊢ f.coeff (m + 1 + k) = f.coeff (m + k.succ)
no goals
},
no goals
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : f.coeff (m + 1 + k) = f.coeff (m + k.succ)
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + (↑k + 1) - ↑k) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
rw triv, ring,
f : ℤ[X],
k : ℕ,
ih : ∀ (n : ℕ), (deriv_n f k).coeff n = (∏ (i : ℕ) in finset.range k, (↑n + ↑k - ↑i)) * f.coeff (n + k),
m : ℕ,
triv : f.coeff (m + 1 + k) = f.coeff (m + k.succ)
⊢ (∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + 1 + k) * (↑m + (↑k + 1) - ↑k) =
((↑m + (↑k + 1) - ↑k) * ∏ (x : ℕ) in finset.range k, (↑m + (↑k + 1) - ↑x)) * f.coeff (m + k.succ)
no goals
Like first derivative, higher derivatives still respect addition
lemma deriv_n_add (p q :ℤ[X]) (n : ℕ) : (deriv_n (p+q) n) = (deriv_n p n) + (deriv_n q n) :=
For any polynomial $f$ with degree $d$, the $d+1$-th derivative is zero.
theorem deriv_too_much (f : ℤ[X]): (deriv_n f (f.nat_degree + 1)) = 0 :=
ext,
f : ℤ[X]
⊢ deriv_n f (f.nat_degree + 1) = 0
f : ℤ[X],
n : ℕ
⊢ (deriv_n f (f.nat_degree + 1)).coeff n = 0.coeff n
deriv_n_coeff
and all coefficient of zero polynomial is $0$.
rw deriv_n_coeff, simp only [int.coe_nat_succ, polynomial.coeff_zero, mul_eq_zero], right,
f : ℤ[X],
n : ℕ
⊢ (deriv_n f (f.nat_degree + 1)).coeff n = 0.coeff n
f : ℤ[X],
n : ℕ
⊢ f.coeff (n + (f.nat_degree + 1)) = 0
linarith
.
apply polynomial.coeff_eq_zero_of_nat_degree_lt, linarith,
f : ℤ[X],
n : ℕ
⊢ f.coeff (n + (f.nat_degree + 1)) = 0
no goals
if $i+1\le n$ then $n-(i+1)+1=n-i$
private lemma nat_sub_eq (n i : ℕ) (h : i + 1 ≤ n) : (n - (i + 1) + 1) = n - i :=
We have the pascal triangle
\[{n\choose k+1}+{n\choose k} = {n+1\choose k+1}\]
private lemma pascal_triangle (n k : ℕ) : (n.choose (k+1)) + (n.choose k) = (n+1).choose (k+1) :=
mathlib
defined binomial coefficient.
exact add_comm (nat.choose n (k + 1)) (nat.choose n k),
n k : ℕ
⊢ n.choose (k + 1) + n.choose k = (n + 1).choose (k + 1)
no goals
induction n with n IH,
p q : ℤ[X],
n : ℕ
⊢ deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
2 goals
case nat.zero
p q : ℤ[X]
⊢ deriv_n (p * q) 0 =
∑ (k : ℕ) in finset.range 1, ⇑polynomial.C ↑(0.choose k) * deriv_n p (0 - k) * deriv_n q k
case nat.succ
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ deriv_n (p * q) n.succ =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
zeroth_deriv
.
simp only [zeroth_deriv, nat.choose_self, int.cast_coe_nat, ring_hom.eq_int_cast, one_mul, nat.cast_one, finset.sum_singleton, finset.range_one],
2 goals
case nat.zero
p q : ℤ[X]
⊢ deriv_n (p * q) 0 =
∑ (k : ℕ) in finset.range 1, ⇑polynomial.C ↑(0.choose k) * deriv_n p (0 - k) * deriv_n q k
case nat.succ
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ deriv_n (p * q) n.succ =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
case nat.succ
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ deriv_n (p * q) n.succ =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
{
case nat.succ
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ deriv_n (p * q) n.succ =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
case nat.succ
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ deriv_n (p * q) n.succ =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
rw deriv_n, rw function.iterate_succ', dsimp, rw <-deriv_n,
case nat.succ
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ deriv_n (p * q) n.succ =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ (deriv_n (p * q) n).derivative =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
rw IH, simp only [polynomial.derivative_sum, polynomial.derivative_mul, zero_mul, polynomial.derivative_C, zero_add, polynomial.derivative_sum, polynomial.derivative_mul, zero_mul, polynomial.derivative_C, zero_add],
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ (deriv_n (p * q) n).derivative =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (b : ℕ) in
finset.range n.succ,
(⇑polynomial.C ↑(n.choose b) * (deriv_n p (n - b)).derivative * deriv_n q b +
⇑polynomial.C ↑(n.choose b) * deriv_n p (n - b) * (deriv_n q b).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
rw finset.sum_add_distrib,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (b : ℕ) in
finset.range n.succ,
(⇑polynomial.C ↑(n.choose b) * (deriv_n p (n - b)).derivative * deriv_n q b +
⇑polynomial.C ↑(n.choose b) * deriv_n p (n - b) * (deriv_n q b).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (x : ℕ) in
finset.range n.succ,
⇑polynomial.C ↑(n.choose x) * (deriv_n p (n - x)).derivative * deriv_n q x +
∑ (x : ℕ) in
finset.range n.succ,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
conv_lhs {rw finset.sum_range_succ', rw finset.sum_range_succ, simp only [zeroth_deriv, nat.choose_self, one_mul, nat.choose_zero_right, int.coe_nat_zero, nat.sub_self, polynomial.C_1, int.coe_nat_succ, nat.sub_zero, zero_add]},
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (x : ℕ) in
finset.range n.succ,
⇑polynomial.C ↑(n.choose x) * (deriv_n p (n - x)).derivative * deriv_n q x +
∑ (x : ℕ) in
finset.range n.succ,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
have eq :
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
∑ (i : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
polynomial.C (n.choose (i + 1):ℤ) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(deriv_n p n).derivative * q +
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(p * (deriv_n q n).derivative +
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
∑ (x : ℕ) in finset.range n, polynomial.C (n.choose x:ℤ) * deriv_n p (n - x) * (deriv_n q x).derivative) =
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (i : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
polynomial.C (n.choose (i + 1):ℤ) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1)) +
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (x : ℕ) in finset.range n, polynomial.C (n.choose x:ℤ) * deriv_n p (n - x) * (deriv_n q x).derivative) +
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
((deriv_n p n).derivative * q + (p * (deriv_n q n).derivative)) := by ring,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
rw [eq, <-finset.sum_add_distrib],
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
replace eq :
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (x : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(polynomial.C (n.choose (x + 1):ℤ) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
polynomial.C (n.choose x:ℤ) * deriv_n p (n - x) * (deriv_n q x).derivative)) =
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (x : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(polynomial.C (n.choose (x + 1):ℤ) * (deriv_n p (n - x)) * deriv_n q (x + 1) +
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
polynomial.C (n.choose x:ℤ) * deriv_n p (n - x) * (deriv_n q (x+1)))),
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
2 goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
{
2 goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
apply finset.sum_congr, exact rfl, intros i hi, simp only [deriv_succ, int.cast_coe_nat, ring_hom.eq_int_cast, add_left_inj], simp only [finset.mem_range] at hi,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative),
i : ℕ,
hi : i < n
⊢ ↑(n.choose (i + 1)) * deriv_n p (n - (i + 1) + 1) * deriv_n q (i + 1) =
↑(n.choose (i + 1)) * deriv_n p (n - i) * deriv_n q (i + 1)
replace hi : i + 1 ≤ n := hi,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative),
i : ℕ,
hi : i < n
⊢ ↑(n.choose (i + 1)) * deriv_n p (n - (i + 1) + 1) * deriv_n q (i + 1) =
↑(n.choose (i + 1)) * deriv_n p (n - i) * deriv_n q (i + 1)
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative),
i : ℕ,
hi : i + 1 ≤ n
⊢ ↑(n.choose (i + 1)) * deriv_n p (n - (i + 1) + 1) * deriv_n q (i + 1) =
↑(n.choose (i + 1)) * deriv_n p (n - i) * deriv_n q (i + 1)
rw nat_sub_eq _ _ hi,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
(deriv_n p n).derivative * q +
(p * (deriv_n q n).derivative +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (i : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose (i + 1)) * (deriv_n p (n - (i + 1))).derivative * deriv_n q (i + 1) +
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative),
i : ℕ,
hi : i + 1 ≤ n
⊢ ↑(n.choose (i + 1)) * deriv_n p (n - (i + 1) + 1) * deriv_n q (i + 1) =
↑(n.choose (i + 1)) * deriv_n p (n - i) * deriv_n q (i + 1)
no goals
}, rw eq,
no goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
replace eq :
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (x : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(polynomial.C (n.choose (x + 1):ℤ) * (deriv_n p (n - x)) * deriv_n q (x + 1) +
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
polynomial.C (n.choose x:ℤ) * deriv_n p (n - x) * (deriv_n q (x+1)))) =
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (x : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
((polynomial.C (n.choose (x + 1):ℤ) + polynomial.C (n.choose x:ℤ)) * (deriv_n p (n - x)) * deriv_n q (x + 1))),
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
2 goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
{
2 goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
apply congr_arg, rw function.funext_iff, intro i, ring,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * (deriv_n p (n - (x + 1))).derivative * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * (deriv_n q x).derivative) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1))
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
no goals
}, rw eq,
no goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
replace eq :
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (x : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
((polynomial.C (n.choose (x + 1):ℤ) + polynomial.C (n.choose x:ℤ)) * (deriv_n p (n - x)) * deriv_n q (x + 1))) =
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (x : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
((polynomial.C (n.choose (x + 1) + (n.choose x):ℤ)) * (deriv_n p (n - x)) * deriv_n q (x + 1))),
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
2 goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
{
2 goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
apply congr_arg, rw function.funext_iff, intro i, simp only [int.cast_add, ring_hom.eq_int_cast],
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
⇑polynomial.C ↑(n.choose x) * deriv_n p (n - x) * deriv_n q (x + 1)) =
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
no goals
}, rw eq,
no goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
replace eq :
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (x : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
((polynomial.C (n.choose (x + 1) + (n.choose x):ℤ)) * (deriv_n p (n - x)) * deriv_n q (x + 1))) =
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
(∑ (x : ℕ) in finset.range n,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
((polynomial.C ((n+1).choose (x + 1):ℤ)) * (deriv_n p (n - x)) * deriv_n q (x + 1))),
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
2 goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) =
∑ (x : ℕ) in finset.range n, ⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1)
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) =
∑ (x : ℕ) in finset.range n, ⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
{
2 goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) =
∑ (x : ℕ) in finset.range n, ⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1)
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) =
∑ (x : ℕ) in finset.range n, ⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) =
∑ (x : ℕ) in finset.range n, ⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1)
apply congr_arg, rw function.funext_iff, intro i, rw <-pascal_triangle, simp only [int.coe_nat_add],
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
(⇑polynomial.C ↑(n.choose (x + 1)) + ⇑polynomial.C ↑(n.choose x)) * deriv_n p (n - x) *
deriv_n q (x + 1) =
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) =
∑ (x : ℕ) in finset.range n, ⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1)
no goals
}, rw eq,
no goals
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) =
∑ (x : ℕ) in finset.range n, ⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
conv_rhs {rw finset.sum_range_succ', rw finset.sum_range_succ}, simp only [deriv_succ, zeroth_deriv, nat.succ_eq_add_one, nat.choose_self, int.cast_coe_nat, ring_hom.eq_int_cast, one_mul, nat.succ_sub_succ_eq_sub, nat.choose_zero_right, int.coe_nat_zero, nat.sub_self, int.cast_one, int.coe_nat_succ, nat.sub_zero, zero_add], ring,
p q : ℤ[X],
n : ℕ,
IH :
deriv_n (p * q) n =
∑ (k : ℕ) in finset.range n.succ, ⇑polynomial.C ↑(n.choose k) * deriv_n p (n - k) * deriv_n q k,
eq :
∑ (x : ℕ) in
finset.range n,
⇑polynomial.C (↑(n.choose (x + 1)) + ↑(n.choose x)) * deriv_n p (n - x) * deriv_n q (x + 1) =
∑ (x : ℕ) in finset.range n, ⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1)
⊢ ∑ (x : ℕ) in
finset.range n,
⇑polynomial.C ↑((n + 1).choose (x + 1)) * deriv_n p (n - x) * deriv_n q (x + 1) +
((deriv_n p n).derivative * q + p * (deriv_n q n).derivative) =
∑ (k : ℕ) in
finset.range n.succ.succ,
⇑polynomial.C ↑(n.succ.choose k) * deriv_n p (n.succ - k) * deriv_n q k
no goals
}
no goals
no goals
For a polynomial $f$ then if $n>0$, we have $f^{(n)}=f^{(n-1)}\times f'$
theorem poly_pow_deriv (f : ℤ[X]) (n : ℕ) (hn : n > 0) : (f ^ n).derivative = (polynomial.C (n:ℤ)) * (f ^ (n-1)) * f.derivative :=
fundamental theorem of calculus and integration by part is assumed. I am waiting for them to arrive in mathlib
and I will update this part and prove relatvent additional assumptions.
private lemma ftc1 (f : ℝ -> ℝ) {hf : measurable f} {hf2 : continuous f} (a b : ℝ) (h : a ≤ b) {hf3 : measure_theory.integrable_on f (set.Icc a b)} (x0 : ℝ) (hx0 : x0 ∈ set.Icc a b) :
has_deriv_at (λ (b : ℝ), ∫ (x : ℝ) in a..b, f x) (f x0) x0 :=
Let $f,g:\mathbb R\to\mathbb R$ be measurable and integral functions such that $\forall x\in(a,b),0\le f(x)\le g(x)$, then $$ \int_a^b f(x)\mathrm{d}x\le\int_a^b g(x)\mathrm{d}x $$
-- theorem integral_le_integral' (f g : ℝ -> ℝ) {h1 : measurable f ∧ measurable g ∧ measure_theory.integrable f ∧ measure_theory.integrable g} (a b : ℝ) (h : b ≥ a) (hf : ∀ x ∈ set.Icc a b, f x ≤ g x ∧ 0 ≤ f x) : (∫ x in set.Icc a b, f x) ≤ (∫ x in set.Icc a b, g x) :=
-- begin
-- -- `mathlib` has `measure_theory.integral_le_integral` built in, but it is not for set integral.
-- -- So we apply this theorem to `((set.Icc a b).indicator f)` and `((set.Icc a b).indicator g)`
-- -- `s.indicator f` is the function (λ x, if x ∈ s then f x else 0)
-- -- We need to prove `((set.Icc a b).indicator f)` and `((set.Icc a b).indicator g)` are measurable and integrable.
-- -- These are pretty much built in.
-- apply measure_theory.integral_mono,
-- exact h1.left,
-- -- apply @measure_theory.integral_le_integral ℝ _ ((set.Icc a b).indicator f) ((set.Icc a b).indicator g),
-- dsimp only [],
-- -- library_search [h1],
-- exact h1.2.2.1,
-- apply measurable.if, apply is_measurable_Icc,
-- dsimp, exact h1.1, exact measurable_zero,
-- apply measure_theory.integrable.integrable_on, exact h1.2.2.1,
-- simp [set.indicator],
-- apply measurable.if, apply is_measurable_Icc, dsimp, exact h1.2.1, exact measurable_zero,
-- apply measure_theory.integrable.integrable_on, exact h1.2.2.2,
-- intros c, simp [set.indicator], split_ifs, exact (hf c ⟨h_1.1, h_1.2⟩).1, exact le_refl 0,
-- end
integrations on a set $S$ of two identical functions are indentical
theorem same_integral {S : set ℝ} (f g : ℝ -> ℝ) : f = g -> (∫ x in S, f x) = ∫ x in S, g x :=
integrations of two identical functions are indentical
theorem same_integral' (f g : ℝ -> ℝ) : f = g -> (∫ x, f x) = ∫ x, g x :=
identical function have identical derivatives
theorem same_deriv (f g : ℝ -> ℝ) (x : ℝ) : f = g -> deriv f x = deriv g x := λ h, congr_fun (congr_arg deriv h) x
If forall $x\in(a,b), 0 \le f(x)\le c$ then $$ \int_a^b f\le (b-a)c $$
theorem integral_le_max_times_length (f : ℝ -> ℝ) {h1 : measurable f} (a b : ℝ) (h : b ≥ a) (c : ℝ)
(f_nonneg : ∀ x ∈ set.Icc a b, f x ≥ 0) (c_max : ∀ x ∈ set.Icc a b, f x ≤ c) :
(∫ x in a..b, f x) ≤ (b - a) * c :=
$$ \frac{\mathrm{d}\exp(t-x)}{\mathrm{d}x}=-\exp(t-x) $$
theorem deriv_exp_t_x (t : ℝ) : deriv (λ x, real.exp (t-x)) = -(λ x, real.exp (t-x)) :=
$$ \frac{\mathrm{d}-\exp(t-x)}{\mathrm{d}x}=\exp(t-x) $$
theorem deriv_exp_t_x' (t : ℝ) : (deriv (λ x, - (real.exp (t-x)))) = (λ x, real.exp (t-x)) :=
def I (f : ℤ[X]) (t : ℝ) (ht : t ≥ 0) : ℝ :=
t.exp * (∑ i in finset.range f.nat_degree.succ, (f_eval_on_ℝ (deriv_n f i) 0)) - (∑ i in finset.range f.nat_degree.succ, (f_eval_on_ℝ (deriv_n f i) t))
$I(0,t)$ is 0.
theorem II_0 (t : ℝ) (ht : t ≥ 0) : II 0 t ht = 0 :=
rw II, unfold f_eval_on_ℝ,
t : ℝ,
ht : t ≥ 0
⊢ II 0 t ht = 0
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * polynomial.eval x (polynomial.map ℤembℝ 0) = 0
simp only [mul_zero, polynomial.eval_zero, polynomial.map_zero],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * polynomial.eval x (polynomial.map ℤembℝ 0) = 0
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, 0 = 0
rw interval_integral.integral_of_le ht,
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, 0 = 0
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in set.Ioc 0 t, 0 = 0
apply measure_theory.integral_zero,
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in set.Ioc 0 t, 0 = 0
no goals
By integration by part we have:
\[I(f, t) = e^tf(0)-f(t)+I(f',t)\]
lemma II_integrate_by_part (f : ℤ[X]) (t : ℝ) (ht : t ≥ 0) :
(II f t ht) = (real.exp t) * (f_eval_on_ℝ f 0) - (f_eval_on_ℝ f t) + (II f.derivative t ht) :=
have eq : (∫ x in 0..t, (t - x).exp * f_eval_on_ℝ f x) = (∫ x in 0..t, f_eval_on_ℝ f x * (deriv (λ x, - (real.exp (t-x))) x)),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
rw interval_integral.integral_of_le ht,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in set.Ioc 0 t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
rw interval_integral.integral_of_le ht,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in set.Ioc 0 t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in set.Ioc 0 t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in set.Ioc 0 t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
apply same_integral, ext, simp only [deriv_exp_t_x'], ring,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in set.Ioc 0 t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in set.Ioc 0 t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
rw eq,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
replace eq := integrate_by_part (f_eval_on_ℝ f) (λ (x : ℝ), -(t - x).exp) 0 t ht,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
rw eq,
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
simp only [mul_one, neg_sub_neg, real.exp_zero, sub_zero, mul_neg_eq_neg_mul_symm, sub_self],
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t -
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
replace eq : (∫ x in 0..t, -(deriv (f_eval_on_ℝ f) x * (t - x).exp)) = ∫ x in 0..t, -((λ x, (deriv (f_eval_on_ℝ f) x * (t - x).exp)) x),
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t -
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
10 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t -
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
{
10 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t -
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
rw interval_integral.integral_of_le ht,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x =
f_eval_on_ℝ f t * (λ (x : ℝ), -real.exp (t - x)) t - f_eval_on_ℝ f 0 * (λ (x : ℝ), -real.exp (t - x)) 0 -
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (λ (x : ℝ), -real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
no goals
},
no goals
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t -
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
rw eq, rw interval_integral.integral_neg, simp only [sub_neg_eq_add], rw II,
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t -
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t + II f.derivative t ht
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t +
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t +
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
replace eq : (∫ (x : ℝ) in 0..t, (t - x).exp * f_eval_on_ℝ f.derivative x) = ∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * (t - x).exp,
9 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t +
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t +
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
10 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t +
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t +
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
{
10 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
⊢ f_eval_on_ℝ f 0 * real.exp t - f_eval_on_ℝ f t +
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x) =
real.exp t * f_eval_on_ℝ f 0 - f_eval_on_ℝ f t +
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
rw interval_integral.integral_of_le ht,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ ∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ ∫ (x : ℝ) in set.Ioc 0 t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
rw interval_integral.integral_of_le ht,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ ∫ (x : ℝ) in set.Ioc 0 t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in 0..t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ ∫ (x : ℝ) in set.Ioc 0 t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in set.Ioc 0 t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
apply same_integral, ext, ring, rw f_eval_on_ℝ,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x
⊢ ∫ (x : ℝ) in set.Ioc 0 t, real.exp (t - x) * f_eval_on_ℝ f.derivative x =
∫ (x : ℝ) in set.Ioc 0 t, deriv (f_eval_on_ℝ f) x * real.exp (t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ
⊢ real.exp (t - x) * polynomial.eval x (polynomial.map ℤembℝ f.derivative) =
deriv (f_eval_on_ℝ f) x * real.exp (t - x)
rw derivative_emb, rw <-polynomial.deriv,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ
⊢ real.exp (t - x) * polynomial.eval x (polynomial.map ℤembℝ f.derivative) =
deriv (f_eval_on_ℝ f) x * real.exp (t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ
⊢ real.exp (t - x) * deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x =
deriv (f_eval_on_ℝ f) x * real.exp (t - x)
have triv : deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x = deriv (f_eval_on_ℝ f) x,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ
⊢ real.exp (t - x) * deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x =
deriv (f_eval_on_ℝ f) x * real.exp (t - x)
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ
⊢ deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x = deriv (f_eval_on_ℝ f) x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ,
triv : deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x = deriv (f_eval_on_ℝ f) x
⊢ real.exp (t - x) * deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x =
deriv (f_eval_on_ℝ f) x * real.exp (t - x)
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ
⊢ deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x = deriv (f_eval_on_ℝ f) x
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ,
triv : deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x = deriv (f_eval_on_ℝ f) x
⊢ real.exp (t - x) * deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x =
deriv (f_eval_on_ℝ f) x * real.exp (t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ
⊢ deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x = deriv (f_eval_on_ℝ f) x
apply same_deriv, ext, rw f_eval_on_ℝ,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ
⊢ deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x = deriv (f_eval_on_ℝ f) x
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ,
triv : deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x = deriv (f_eval_on_ℝ f) x
⊢ real.exp (t - x) * deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x =
deriv (f_eval_on_ℝ f) x * real.exp (t - x)
rw triv, ring,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, -(deriv (f_eval_on_ℝ f) x * real.exp (t - x)) =
∫ (x : ℝ) in 0..t, -(λ (x : ℝ), deriv (f_eval_on_ℝ f) x * real.exp (t - x)) x,
x : ℝ,
triv : deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x = deriv (f_eval_on_ℝ f) x
⊢ real.exp (t - x) * deriv (λ (x : ℝ), polynomial.eval x (polynomial.map ℤembℝ f)) x =
deriv (f_eval_on_ℝ f) x * real.exp (t - x)
no goals
}, rw eq, ring,
no goals
8 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply polynomial.differentiable,
8 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
7 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply continuous.measurable,
7 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
7 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply @differentiable.continuous ℝ _ ℝ _ _ ℝ _ _ _ _,
7 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
7 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
rw f_eval_on_ℝ_deriv,
7 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
7 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f.derivative)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply polynomial.differentiable,
7 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f.derivative)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
6 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply continuous.measurable,
6 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
6 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply @differentiable.continuous ℝ _ ℝ _ _ ℝ _ _ _ _,
6 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
6 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply polynomial.differentiable,
6 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
rw f_eval_on_ℝ_deriv,
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (f_eval_on_ℝ f))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (f_eval_on_ℝ f.derivative)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply @differentiable.continuous ℝ _ ℝ _ _ ℝ _ _ _ _,
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (f_eval_on_ℝ f.derivative)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f.derivative)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply polynomial.differentiable,
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (f_eval_on_ℝ f.derivative)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply differentiable.neg,
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), real.exp (t - y))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
change differentiable ℝ (real.exp ∘ (λ (y : ℝ), (t - y))),
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), real.exp (t - y))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (real.exp ∘ λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply differentiable.comp,
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (real.exp ∘ λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ real.exp
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
exact real.differentiable_exp,
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ real.exp
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
have : (λ (y : ℝ), t - y) = (λ (y : ℝ), -(y-t)),
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
ext y, rw neg_sub, rw this, apply differentiable.neg,
5 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply differentiable.sub_const, exact differentiable_id',
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply continuous.measurable,
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
rw deriv_exp_t_x',
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (x : ℝ), real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
change continuous (real.exp ∘ (λ (y : ℝ), (t - y))),
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (x : ℝ), real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (real.exp ∘ λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply continuous.comp (real.continuous_exp) _,
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (real.exp ∘ λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply @differentiable.continuous ℝ _ ℝ _ _ ℝ _ _ _ _,
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
have : (λ (y : ℝ), t - y) = (λ (y : ℝ), -(y-t)),
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
ext y, rw neg_sub, rw this, apply differentiable.neg,
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply differentiable.sub_const, exact differentiable_id',
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply continuous.measurable,
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ measurable (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply continuous.neg _, exact normed_top_group,
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (x : ℝ), -real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (x : ℝ), real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
change continuous (real.exp ∘ (λ (y : ℝ), (t - y))),
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (x : ℝ), real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (real.exp ∘ λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply continuous.comp (real.continuous_exp) _,
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (real.exp ∘ λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply @differentiable.continuous ℝ _ ℝ _ _ ℝ _ _ _ _,
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
have : (λ (y : ℝ), t - y) = (λ (y : ℝ), -(y-t)),
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
ext y, rw neg_sub, rw this, apply differentiable.neg,
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
apply differentiable.sub_const, exact differentiable_id',
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
rw deriv_exp_t_x',
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (deriv (λ (x : ℝ), -real.exp (t - x)))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (x : ℝ), real.exp (t - x))
change continuous (real.exp ∘ (λ (y : ℝ), (t - y))),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (x : ℝ), real.exp (t - x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (real.exp ∘ λ (y : ℝ), t - y)
apply continuous.comp (real.continuous_exp) _,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (real.exp ∘ λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (y : ℝ), t - y)
apply @differentiable.continuous ℝ _ ℝ _ _ ℝ _ _ _ _,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ continuous (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
have : (λ (y : ℝ), t - y) = (λ (y : ℝ), -(y-t)),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ differentiable ℝ (λ (y : ℝ), t - y)
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), t - y)
ext y, rw neg_sub, rw this, apply differentiable.neg,
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x
⊢ (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), t - y)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), y - t)
apply differentiable.sub_const, exact differentiable_id',
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq :
∫ (x : ℝ) in 0..t, real.exp (t - x) * f_eval_on_ℝ f x =
∫ (x : ℝ) in 0..t, f_eval_on_ℝ f x * deriv (λ (x : ℝ), -real.exp (t - x)) x,
this : (λ (y : ℝ), t - y) = λ (y : ℝ), -(y - t)
⊢ differentiable ℝ (λ (y : ℝ), y - t)
no goals
Combine the theorem above with induction we get for all $m\in\mathbb N$
\[ I(f,t)=e^t\sum_{i=0}^m f^{(i)}(0)-\sum_{i=0}^m f^{(i)}(t) \]
lemma II_integrate_by_part_m (f : ℤ[X]) (t : ℝ) (ht : t ≥ 0) (m : ℕ) :
II f t ht = t.exp * (∑ i in finset.range (m+1), (f_eval_on_ℝ (deriv_n f i) 0)) - (∑ i in finset.range (m+1), f_eval_on_ℝ (deriv_n f i) t) + (II (deriv_n f (m+1)) t ht) :=
So the using if $f$ has degree $n$, then $f^{(n+1)}$ is zero we have the two definition of $I(f,t)$ agrees.
theorem II_eq_I (f : ℤ[X]) (t : ℝ) (ht : t ≥ 0) : II f t ht = I f t ht :=
\[\left|I(f,t)\right|\le \int_0^t \left|e^{t-x}f(x)\right|\mathrm{d}x\]
lemma abs_II_le1 (f : ℤ[X]) (t : ℝ) (ht : t ≥ 0) : abs (II f t ht) ≤ ∫ x in 0..t, abs ((t-x).exp * (f_eval_on_ℝ f x)) :=
By our construction the $n$-th coefficient of $\bar{f}$ is the absolute value of $n$-th coefficient of $f$
theorem bar_coeff (f : ℤ[X]) (n : ℕ) : (f_bar f).coeff n = abs (f.coeff n) :=
dsimp [f_bar], refl,
f : ℤ[X],
n : ℕ
⊢ (f_bar f).coeff n = abs (f.coeff n)
no goals
By our construction, $\bar{f}$ and $f$ has the same support
theorem bar_supp (f : ℤ[X]) : (f_bar f).1 = f.1 :=
dsimp [f_bar], refl,
f : ℤ[X]
⊢ (f_bar f).support = f.support
no goals
Since $\bar{f}$ and $f$ has the same support, they have the same degree.
theorem bar_same_deg (f : ℤ[X]) : (f_bar f).nat_degree = f.nat_degree :=
rw polynomial.degree, rw polynomial.degree, rw bar_supp,
f : ℤ[X]
⊢ (f_bar f).degree = f.degree
no goals
$\bar{0}=0$
theorem f_bar_0 : f_bar 0 = 0 :=
for any $f\in\mathbb Z$, if $\bar{f}=0$ then $f=0$
theorem f_bar_eq_0 (f : ℤ[X]) : f_bar f = 0 -> f = 0 :=
For any $x\in(0,t)$ $|f(x)|\le \bar{f}(t)$
lemma f_bar_ineq (f : ℤ[X]) (t : ℝ) (ht : t ≥ 0) : ∀ x ∈ set.Icc 0 t, abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t :=
have lhs : f_eval_on_ℝ f x = ∑ i in f.support, (f.coeff i : ℝ) * x ^ i,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
rw [f_eval_on_ℝ, polynomial.eval_map, polynomial.eval₂, finsupp.sum],
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ ∑ (a : ℕ) in f.support, ⇑ℤembℝ (⇑f a) * x ^ a = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
apply congr_arg, ext, norm_cast,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ ∑ (a : ℕ) in f.support, ⇑ℤembℝ (⇑f a) * x ^ a = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
rw lhs,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
have ineq1 : abs (∑ (i : ℕ) in f.support, (f.coeff i:ℝ) * x ^ i) ≤ ∑ i in f.support, (abs (f.coeff i:ℝ) * (x ^ i)),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
have ineq1' := @finset.abs_sum_le_sum_abs ℝ ℕ _ (λ i, (f.coeff i:ℝ) * (x ^ i)) f.support, simp only [] at ineq1',
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1)
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
have eq1 : ∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1) = ∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1)) * x ^ x_1,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1)
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1)
⊢ ∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1) =
∑ (x_1 : ℕ) in f.support, abs ↑(f.coeff x_1) * x ^ x_1
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1),
eq1 :
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1) =
∑ (x_1 : ℕ) in f.support, abs ↑(f.coeff x_1) * x ^ x_1
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1)
⊢ ∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1) =
∑ (x_1 : ℕ) in f.support, abs ↑(f.coeff x_1) * x ^ x_1
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1),
eq1 :
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1) =
∑ (x_1 : ℕ) in f.support, abs ↑(f.coeff x_1) * x ^ x_1
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1)
⊢ ∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1) =
∑ (x_1 : ℕ) in f.support, abs ↑(f.coeff x_1) * x ^ x_1
apply congr_arg, ext, rw abs_mul,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1)
⊢ ∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1) =
∑ (x_1 : ℕ) in f.support, abs ↑(f.coeff x_1) * x ^ x_1
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1),
x_1 : ℕ
⊢ abs ↑(f.coeff x_1) * abs (x ^ x_1) = abs ↑(f.coeff x_1) * x ^ x_1
rw @abs_of_nonneg ℝ _ (x^x_1) _, apply pow_nonneg, exact (set.mem_Icc.1 hx).1,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1),
x_1 : ℕ
⊢ abs ↑(f.coeff x_1) * abs (x ^ x_1) = abs ↑(f.coeff x_1) * x ^ x_1
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1),
eq1 :
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1) =
∑ (x_1 : ℕ) in f.support, abs ↑(f.coeff x_1) * x ^ x_1
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
rw eq1 at ineq1', exact ineq1',
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1' :
abs (∑ (x_1 : ℕ) in f.support, ↑(f.coeff x_1) * x ^ x_1) ≤
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1),
eq1 :
∑ (x_1 : ℕ) in f.support, abs (↑(f.coeff x_1) * x ^ x_1) =
∑ (x_1 : ℕ) in f.support, abs ↑(f.coeff x_1) * x ^ x_1
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
have rhs : f_eval_on_ℝ (f_bar f) t = ∑ i in (f_bar f).support, abs (f.coeff i:ℝ) * t ^ i,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
rw [f_eval_on_ℝ, polynomial.eval_map, polynomial.eval₂, finsupp.sum],
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ ∑ (a : ℕ) in (f_bar f).support, ⇑ℤembℝ (⇑(f_bar f) a) * t ^ a =
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
apply congr_arg, ext, norm_cast,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i
⊢ ∑ (a : ℕ) in (f_bar f).support, ⇑ℤembℝ (⇑(f_bar f) a) * t ^ a =
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
rw rhs,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
have ineq2 : ∑ (i : ℕ) in f.support, abs (f.coeff i:ℝ) * x ^ i ≤ ∑ i in (f_bar f).support, abs (f.coeff i:ℝ) * t ^ i,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
ineq2 :
∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
ineq2 :
∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
rw bar_supp, apply finset.sum_le_sum, intros n hn,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support
⊢ abs ↑(f.coeff n) * x ^ n ≤ abs ↑(f.coeff n) * t ^ n
suffices : x ^ n ≤ t ^ n,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support
⊢ abs ↑(f.coeff n) * x ^ n ≤ abs ↑(f.coeff n) * t ^ n
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support,
this : x ^ n ≤ t ^ n
⊢ abs ↑(f.coeff n) * x ^ n ≤ abs ↑(f.coeff n) * t ^ n
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support
⊢ x ^ n ≤ t ^ n
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support,
this : x ^ n ≤ t ^ n
⊢ abs ↑(f.coeff n) * x ^ n ≤ abs ↑(f.coeff n) * t ^ n
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support
⊢ x ^ n ≤ t ^ n
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support,
this : x ^ n ≤ t ^ n
⊢ abs ↑(f.coeff n) * x ^ n ≤ abs ↑(f.coeff n) * t ^ n
apply mul_le_mul, exact le_refl (abs ↑(polynomial.coeff f n)), exact this, apply pow_nonneg, exact (set.mem_Icc.1 hx).1, exact abs_nonneg ↑(polynomial.coeff f n),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support,
this : x ^ n ≤ t ^ n
⊢ abs ↑(f.coeff n) * x ^ n ≤ abs ↑(f.coeff n) * t ^ n
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support
⊢ x ^ n ≤ t ^ n
apply pow_le_pow_of_le_left, exact (set.mem_Icc.1 hx).1, exact (set.mem_Icc.1 hx).2,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
n : ℕ,
hn : n ∈ f.support
⊢ x ^ n ≤ t ^ n
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
ineq2 :
∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
ineq1
and ineq2
we are done.
exact le_trans ineq1 ineq2,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
lhs : f_eval_on_ℝ f x = ∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i,
ineq1 :
abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤ ∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i,
rhs : f_eval_on_ℝ (f_bar f) t = ∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i,
ineq2 :
∑ (i : ℕ) in f.support, abs ↑(f.coeff i) * x ^ i ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
⊢ abs (∑ (i : ℕ) in f.support, ↑(f.coeff i) * x ^ i) ≤
∑ (i : ℕ) in (f_bar f).support, abs ↑(f.coeff i) * t ^ i
no goals
have eq1 : (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) = abs ∘ (λ (x : ℝ), (real.exp (t - x) * f_eval_on_ℝ f x)) := by simp only [eq_self_iff_true], rw eq1,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ continuous (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x
⊢ continuous (abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have cont1 := real.continuous_abs,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x
⊢ continuous (abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs
⊢ continuous (abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have cont2 : continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs
⊢ continuous (abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
cont2 : continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
⊢ continuous (abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
cont2 : continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
⊢ continuous (abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have eq2 : (λ x : ℝ, real.exp (t-x)) = real.exp ∘ (λ x : ℝ, t - x), simp only [],
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have cont21 : continuous (λ x : ℝ, real.exp (t-x)), rw eq2,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have cont20 := real.continuous_exp,
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have cont201 : continuous (λ (x : ℝ), t - x),
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp
⊢ continuous (λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have eq3 : (λ (x : ℝ), t - x) = (λ (x : ℝ), (λ _, t) x - id x), ext, simp only [id], rw eq3,
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp
⊢ continuous (λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
eq3 : (λ (x : ℝ), t - x) = λ (x : ℝ), (λ (_x : ℝ), t) x - id x
⊢ continuous (λ (x : ℝ), (λ (_x : ℝ), t) x - id x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have cont3 : continuous (λ _ :ℝ, t), exact continuous_const,
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
eq3 : (λ (x : ℝ), t - x) = λ (x : ℝ), (λ (_x : ℝ), t) x - id x
⊢ continuous (λ (x : ℝ), (λ (_x : ℝ), t) x - id x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
eq3 : (λ (x : ℝ), t - x) = λ (x : ℝ), (λ (_x : ℝ), t) x - id x,
cont3 : continuous (λ (_x : ℝ), t)
⊢ continuous (λ (x : ℝ), (λ (_x : ℝ), t) x - id x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have cont3' : continuous (@id ℝ), exact continuous_id,
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
eq3 : (λ (x : ℝ), t - x) = λ (x : ℝ), (λ (_x : ℝ), t) x - id x,
cont3 : continuous (λ (_x : ℝ), t)
⊢ continuous (λ (x : ℝ), (λ (_x : ℝ), t) x - id x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
eq3 : (λ (x : ℝ), t - x) = λ (x : ℝ), (λ (_x : ℝ), t) x - id x,
cont3 : continuous (λ (_x : ℝ), t),
cont3' : continuous id
⊢ continuous (λ (x : ℝ), (λ (_x : ℝ), t) x - id x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have cont33 := continuous.sub cont3 cont3', assumption,
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
eq3 : (λ (x : ℝ), t - x) = λ (x : ℝ), (λ (_x : ℝ), t) x - id x,
cont3 : continuous (λ (_x : ℝ), t),
cont3' : continuous id
⊢ continuous (λ (x : ℝ), (λ (_x : ℝ), t) x - id x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
exact continuous.comp cont20 cont201,
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont20 : continuous real.exp,
cont201 : continuous (λ (x : ℝ), t - x)
⊢ continuous (real.exp ∘ λ (x : ℝ), t - x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
have cont4 : continuous (λ x , f_eval_on_ℝ f x),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), f_eval_on_ℝ f x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x)),
cont4 : continuous (λ (x : ℝ), f_eval_on_ℝ f x)
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
unfold f_eval_on_ℝ, exact polynomial.continuous (polynomial.map ℤembℝ f),
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x))
⊢ continuous (λ (x : ℝ), f_eval_on_ℝ f x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x)),
cont4 : continuous (λ (x : ℝ), f_eval_on_ℝ f x)
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x)),
cont4 : continuous (λ (x : ℝ), f_eval_on_ℝ f x)
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
exact continuous.mul cont21 cont4,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
eq2 : (λ (x : ℝ), real.exp (t - x)) = real.exp ∘ λ (x : ℝ), t - x,
cont21 : continuous (λ (x : ℝ), real.exp (t - x)),
cont4 : continuous (λ (x : ℝ), f_eval_on_ℝ f x)
⊢ continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
cont2 : continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
⊢ continuous (abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
exact continuous.comp cont1 cont2,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
eq1 :
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) =
abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x,
cont1 : continuous abs,
cont2 : continuous (λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
⊢ continuous (abs ∘ λ (x : ℝ), real.exp (t - x) * f_eval_on_ℝ f x)
no goals
$$ \int_0^t |e^{t-x}f(d)|\mathrm{d}x\le te^t\bar{f}(t) $$
private lemma II_le2' (f : ℤ[X]) (t : ℝ) (ht : t ≥ 0) : (∫ x in 0..t, abs ((t-x).exp * (f_eval_on_ℝ f x))) ≤ t * t.exp * (f_eval_on_ℝ (f_bar f) t) :=
integral_le_max_times_length
so we need to prove $|e^{t-x}f(x)|\le e^t\bar{f}(t)$
have ineq1 := integral_le_max_times_length ((λ x, abs ((t - x).exp * f_eval_on_ℝ f x))) 0 t ht (t.exp * f_eval_on_ℝ (f_bar f) t) _ _,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 :
∫ (x : ℝ) in 0..t, (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤
(t - 0) * (real.exp t * f_eval_on_ℝ (f_bar f) t)
⊢ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
simp only [sub_zero] at ineq1,
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 :
∫ (x : ℝ) in 0..t, (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤
(t - 0) * (real.exp t * f_eval_on_ℝ (f_bar f) t)
⊢ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 :
∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * (real.exp t * f_eval_on_ℝ (f_bar f) t)
⊢ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
have triv : t * (t.exp * f_eval_on_ℝ (f_bar f) t) = t * t.exp * f_eval_on_ℝ (f_bar f) t := by ring,
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 :
∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * (real.exp t * f_eval_on_ℝ (f_bar f) t)
⊢ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 :
∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * (real.exp t * f_eval_on_ℝ (f_bar f) t),
triv : t * (real.exp t * f_eval_on_ℝ (f_bar f) t) = t * real.exp t * f_eval_on_ℝ (f_bar f) t
⊢ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
rw triv at ineq1, exact ineq1,
4 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 :
∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * (real.exp t * f_eval_on_ℝ (f_bar f) t),
triv : t * (real.exp t * f_eval_on_ℝ (f_bar f) t) = t * real.exp t * f_eval_on_ℝ (f_bar f) t
⊢ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
{
3 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
refine continuous.measurable _,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ measurable (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ continuous (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
apply continuous_exp_f _ _ ht,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ continuous (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x))
no goals
},
no goals
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
intros x hx, simp only [ge_iff_le],
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ), x ∈ set.Icc 0 t → (λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≥ 0
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ 0 ≤ abs (real.exp (t - x) * f_eval_on_ℝ f x)
exact abs_nonneg (real.exp (t - x) * f_eval_on_ℝ f x),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ 0 ≤ abs (real.exp (t - x) * f_eval_on_ℝ f x)
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
{
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
intros x hx, simp only [set.indicator, set.mem_Icc],
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ ∀ (x : ℝ),
x ∈ set.Icc 0 t →
(λ (x : ℝ), abs (real.exp (t - x) * f_eval_on_ℝ f x)) x ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
rw abs_mul,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ abs (real.exp (t - x)) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
have triv : abs (t - x).exp = (t-x).exp, {
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ abs (real.exp (t - x)) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ abs (real.exp (t - x)) = real.exp (t - x)
apply abs_of_pos, exact (t - x).exp_pos,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t
⊢ abs (real.exp (t - x)) = real.exp (t - x)
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x)
⊢ abs (real.exp (t - x)) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
rw triv,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x)
⊢ abs (real.exp (t - x)) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x)
⊢ real.exp (t - x) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
have ineq1 := f_bar_ineq f t ht x hx,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x)
⊢ real.exp (t - x) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
⊢ real.exp (t - x) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
have ineq2 : (t - x).exp ≤ t.exp,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
⊢ real.exp (t - x) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
⊢ real.exp (t - x) ≤ real.exp t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t,
ineq2 : real.exp (t - x) ≤ real.exp t
⊢ real.exp (t - x) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
{
2 goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
⊢ real.exp (t - x) ≤ real.exp t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t,
ineq2 : real.exp (t - x) ≤ real.exp t
⊢ real.exp (t - x) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
⊢ real.exp (t - x) ≤ real.exp t
rw real.exp_le_exp, rw sub_le, simp only [sub_self], exact hx.1,
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t
⊢ real.exp (t - x) ≤ real.exp t
no goals
},
no goals
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t,
ineq2 : real.exp (t - x) ≤ real.exp t
⊢ real.exp (t - x) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
exact mul_le_mul ineq2 ineq1 (abs_nonneg _) (le_of_lt (real.exp_pos t)),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
x : ℝ,
hx : x ∈ set.Icc 0 t,
triv : abs (real.exp (t - x)) = real.exp (t - x),
ineq1 : abs (f_eval_on_ℝ f x) ≤ f_eval_on_ℝ (f_bar f) t,
ineq2 : real.exp (t - x) ≤ real.exp t
⊢ real.exp (t - x) * abs (f_eval_on_ℝ f x) ≤ real.exp t * f_eval_on_ℝ (f_bar f) t
no goals
},
no goals
no goals
$$|I(f,t)|\le te^t\bar{f}(t)$$
theorem abs_II_le2 (f : ℤ[X]) (t : ℝ) (ht : t ≥ 0) : abs (II f t ht) ≤ t * t.exp * (f_eval_on_ℝ (f_bar f) t) :=
abs_II_le1
and previous lemma.
have ineq1 := (abs_II_le1 f t ht),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0
⊢ abs (II f t ht) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 : abs (II f t ht) ≤ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x)
⊢ abs (II f t ht) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
have ineq2 := (II_le2' f t ht),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 : abs (II f t ht) ≤ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x)
⊢ abs (II f t ht) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 : abs (II f t ht) ≤ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x),
ineq2 : ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
⊢ abs (II f t ht) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
exact le_trans (abs_II_le1 f t ht) (II_le2' f t ht),
f : ℤ[X],
t : ℝ,
ht : t ≥ 0,
ineq1 : abs (II f t ht) ≤ ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x),
ineq2 : ∫ (x : ℝ) in 0..t, abs (real.exp (t - x) * f_eval_on_ℝ f x) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
⊢ abs (II f t ht) ≤ t * real.exp t * f_eval_on_ℝ (f_bar f) t
no goals