Pushing a quiver structure along a map #
Given a map σ : V → W and a Quiver instance on V, this files defines a Quiver instance
on W by associating to each arrow v ⟶ v' in V an arrow σ v ⟶ σ v' in W.
The Quiver instance obtained by pushing arrows of V along the map σ : V → W
Equations
- Quiver.Push x = W
Instances For
instance
Quiver.instNonemptyPush
{V : Type u_1}
{W : Type u_2}
(σ : V → W)
[h : Nonempty W]
:
Nonempty (Quiver.Push σ)
Equations
- ⋯ = h
inductive
Quiver.PushQuiver
{V : Type u}
[Quiver V]
{W : Type u₂}
(σ : V → W)
:
W → W → Type (max u u₂ v)
The quiver structure obtained by pushing arrows of V along the map σ : V → W
- arrow: {V : Type u} → [inst : Quiver V] → {W : Type u₂} → {σ : V → W} → {X Y : V} → (X ⟶ Y) → Quiver.PushQuiver σ (σ X) (σ Y)
Instances For
instance
Quiver.instQuiverPush
{V : Type u_1}
[Quiver V]
{W : Type u_2}
(σ : V → W)
:
Quiver (Quiver.Push σ)
Equations
- Quiver.instQuiverPush σ = { Hom := Quiver.PushQuiver σ }
The prefunctor induced by pushing arrows via σ
Equations
- Quiver.Push.of σ = { obj := σ, map := fun {X Y : V} (f : X ⟶ Y) => Quiver.PushQuiver.arrow f }
Instances For
@[simp]
theorem
Quiver.Push.of_obj
{V : Type u_1}
[Quiver V]
{W : Type u_2}
(σ : V → W)
:
(Quiver.Push.of σ).obj = σ
noncomputable def
Quiver.Push.lift
{V : Type u_1}
[Quiver V]
{W : Type u_2}
(σ : V → W)
{W' : Type u_3}
[Quiver W']
(φ : V ⥤q W')
(τ : W → W')
(h : ∀ (x : V), φ.obj x = τ (σ x))
:
Quiver.Push σ ⥤q W'
Given a function τ : W → W' and a prefunctor φ : V ⥤q W', one can extend τ to be
a prefunctor W ⥤q W' if τ and σ factorize φ at the level of objects, where W is given
the pushforward quiver structure Push σ.
Equations
- One or more equations did not get rendered due to their size.
Instances For
theorem
Quiver.Push.lift_comp
{V : Type u_1}
[Quiver V]
{W : Type u_2}
(σ : V → W)
{W' : Type u_3}
[Quiver W']
(φ : V ⥤q W')
(τ : W → W')
(h : ∀ (x : V), φ.obj x = τ (σ x))
:
Quiver.Push.of σ ⋙q Quiver.Push.lift σ φ τ h = φ
theorem
Quiver.Push.lift_unique
{V : Type u_1}
[Quiver V]
{W : Type u_2}
(σ : V → W)
{W' : Type u_3}
[Quiver W']
(φ : V ⥤q W')
(τ : W → W')
(h : ∀ (x : V), φ.obj x = τ (σ x))
(Φ : Quiver.Push σ ⥤q W')
(Φ₀ : Φ.obj = τ)
(Φcomp : Quiver.Push.of σ ⋙q Φ = φ)
:
Φ = Quiver.Push.lift σ φ τ h