Theorem: SciLean.HasSemiAdjoint.id_rule (SciLean/Core/FunctionPropositions/HasSemiAdjoint.lean)

State before:
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ HasSemiAdjoint K fun x => x
Tactic:
constructor
State after:
case semiAdjoint_exists
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ ∃ f', ∀ (x y : X), TestFunction x → ⟪y, x⟫_K = ⟪f' y, x⟫_K

case is_differentiable
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ SciLean.CDifferentiable K fun x => x

State before:
case semiAdjoint_exists
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ ∃ f', ∀ (x y : X), TestFunction x → ⟪y, x⟫_K = ⟪f' y, x⟫_K

case is_differentiable
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ SciLean.CDifferentiable K fun x => x
Tactic:
. apply Exists.intro (fun x => x) _
  simp
State after:
case is_differentiable
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ SciLean.CDifferentiable K fun x => x

State before:
case is_differentiable
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ SciLean.CDifferentiable K fun x => x
Tactic:
. fun_prop
State after:
no goals

State before:
case semiAdjoint_exists
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ ∃ f', ∀ (x y : X), TestFunction x → ⟪y, x⟫_K = ⟪f' y, x⟫_K
Tactic:
apply Exists.intro (fun x => x) _
State after:
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ ∀ (x y : X), TestFunction x → ⟪y, x⟫_K = ⟪(fun x => x) y, x⟫_K

State before:
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ ∀ (x y : X), TestFunction x → ⟪y, x⟫_K = ⟪(fun x => x) y, x⟫_K
Tactic:
simp
State after:
no goals

State before:
case is_differentiable
K : Type u_1
inst✝⁸ : RCLike K
X : Type u_2
inst✝⁷ : SemiInnerProductSpace K X
Y : Type ?u.11860
inst✝⁶ : SemiInnerProductSpace K Y
Z : Type ?u.11871
inst✝⁵ : SemiInnerProductSpace K Z
W : Type ?u.11882
inst✝⁴ : SemiInnerProductSpace K W
ι : Type ?u.11893
inst✝³ : IndexType ι
inst✝² : LawfulIndexType ι
inst✝¹ : DecidableEq ι
E : ι → Type ?u.11920
inst✝ : (i : ι) → SemiInnerProductSpace K (E i)
⊢ SciLean.CDifferentiable K fun x => x
Tactic:
fun_prop
State after:
no goals