Theorem: SciLean.ContCDiffMapFD.FD_fst (SciLean/Core/FunctionSpaces/ContCDiffMapFD.lean)

State before:
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : Vec K X
Y : Type u_3
inst✝⁶ : Vec K Y
Z : Type ?u.18778
inst✝⁵ : Vec K Z
W : Type ?u.18789
inst✝⁴ : Vec K W
ι : Type ?u.18800
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.18827
inst✝ : (i : ι) → Vec K (E i)
n : ℕ∞
f : X ⟿FD[K,n] Y
x dx : X
⊢ (f.FD x dx).1 = f x
Tactic:
rw[← ContCDiffMapFD_eval_fwdDeriv]
State after:
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : Vec K X
Y : Type u_3
inst✝⁶ : Vec K Y
Z : Type ?u.18778
inst✝⁵ : Vec K Z
W : Type ?u.18789
inst✝⁴ : Vec K W
ι : Type ?u.18800
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.18827
inst✝ : (i : ι) → Vec K (E i)
n : ℕ∞
f : X ⟿FD[K,n] Y
x dx : X
⊢ (fwdDeriv K (fun x => f x) x dx).1 = f x

State before:
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : Vec K X
Y : Type u_3
inst✝⁶ : Vec K Y
Z : Type ?u.18778
inst✝⁵ : Vec K Z
W : Type ?u.18789
inst✝⁴ : Vec K W
ι : Type ?u.18800
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.18827
inst✝ : (i : ι) → Vec K (E i)
n : ℕ∞
f : X ⟿FD[K,n] Y
x dx : X
⊢ (fwdDeriv K (fun x => f x) x dx).1 = f x
Tactic:
unfold fwdDeriv
State after:
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : Vec K X
Y : Type u_3
inst✝⁶ : Vec K Y
Z : Type ?u.18778
inst✝⁵ : Vec K Z
W : Type ?u.18789
inst✝⁴ : Vec K W
ι : Type ?u.18800
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.18827
inst✝ : (i : ι) → Vec K (E i)
n : ℕ∞
f : X ⟿FD[K,n] Y
x dx : X
⊢ ((fun x => f x) x, ∂ (x:=x;dx), f x).1 = f x

State before:
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : Vec K X
Y : Type u_3
inst✝⁶ : Vec K Y
Z : Type ?u.18778
inst✝⁵ : Vec K Z
W : Type ?u.18789
inst✝⁴ : Vec K W
ι : Type ?u.18800
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.18827
inst✝ : (i : ι) → Vec K (E i)
n : ℕ∞
f : X ⟿FD[K,n] Y
x dx : X
⊢ ((fun x => f x) x, ∂ (x:=x;dx), f x).1 = f x
Tactic:
simp
State after:
no goals