Rewriting arrows and paths along vertex equalities #
This file defines Hom.cast and Path.cast (and associated lemmas) in order to allow
rewriting arrows and paths along equalities of their endpoints.
Rewriting arrows along equalities of vertices #
def
Quiver.Hom.cast
{U : Type u_1}
[Quiver U]
{u v u' v' : U}
(hu : u = u')
(hv : v = v')
(e : u ⟶ v)
:
Change the endpoints of an arrow using equalities.
Instances For
theorem
Quiver.Hom.cast_eq_cast
{U : Type u_1}
[Quiver U]
{u v u' v' : U}
(hu : u = u')
(hv : v = v')
(e : u ⟶ v)
:
cast hu hv e = _root_.cast ⋯ e
@[simp]
@[simp]
theorem
Quiver.Hom.cast_heq
{U : Type u_1}
[Quiver U]
{u v u' v' : U}
(hu : u = u')
(hv : v = v')
(e : u ⟶ v)
:
cast hu hv e ≍ e
Rewriting paths along equalities of vertices #
def
Quiver.Path.cast
{U : Type u_1}
[Quiver U]
{u v u' v' : U}
(hu : u = u')
(hv : v = v')
(p : Path u v)
:
Path u' v'
Change the endpoints of a path using equalities.
Instances For
theorem
Quiver.Path.cast_eq_cast
{U : Type u_1}
[Quiver U]
{u v u' v' : U}
(hu : u = u')
(hv : v = v')
(p : Path u v)
:
cast hu hv p = _root_.cast ⋯ p
@[simp]
@[simp]
@[simp]
theorem
Quiver.Path.cast_heq
{U : Type u_1}
[Quiver U]
{u v u' v' : U}
(hu : u = u')
(hv : v = v')
(p : Path u v)
:
cast hu hv p ≍ p