Single-object quiver #
Single object quiver with a given arrows type.
Main definitions #
Given a type α, SingleObj α is the Unit type, whose single object is called star α, with
Quiver structure such that star α ⟶ star α is the type α.
An element x : α can be reinterpreted as an element of star α ⟶ star α using
toHom.
More generally, a list of elements of a can be reinterpreted as a path from star α to
itself using pathEquivList.
Equations
Equations
- Quiver.SingleObj.inst α = { Hom := fun (x x : Quiver.SingleObj α) => α }
Equip SingleObj α with a reverse operation.
Equations
- Quiver.SingleObj.hasReverse rev = { reverse' := fun {a b : Quiver.SingleObj α} => rev }
Instances For
Equip SingleObj α with an involutive reverse operation.
Equations
- Quiver.SingleObj.hasInvolutiveReverse rev h = { toHasReverse := Quiver.SingleObj.hasReverse rev, inv' := ⋯ }
Instances For
The type of arrows from star α to itself is equivalent to the original type α.
Equations
Instances For
Auxiliary definition for quiver.SingleObj.pathEquivList.
Converts a path in the quiver single_obj α into a list of elements of type a.
Instances For
Auxiliary definition for quiver.SingleObj.pathEquivList.
Converts a list of elements of type α into a path in the quiver SingleObj α.
Equations
Instances For
Paths in SingleObj α quiver correspond to lists of elements of type α.
Equations
- Quiver.SingleObj.pathEquivList = { toFun := Quiver.SingleObj.pathToList, invFun := Quiver.SingleObj.listToPath, left_inv := ⋯, right_inv := ⋯ }