prbnmcn-basic-structures

Base package for prbnmcn-* packages
Library prbnmcn-basic-structures
type 'a obj := 'a t
type ('a, 'b) t

The type of morphisms from a tensor indexed by 'a to a tensor indexed by 'b.

val underlying : ( 'a, 'b ) t -> 'a m -> 'b m

Get the map on positions underlying the shape morphism.

val domain : ( 'a, 'b ) t -> 'a obj

domain m is the domain of the morphism m, ie a tensor indexed by 'a.

val range : ( 'a, 'b ) t -> 'b obj

range m is the range of the morphism m, ie a tensor indexed by 'b.

val identity : 'a obj -> ( 'a, 'a ) t

identity s is the identity morphism at the shape s.

val compose : ( 'a, 'b ) t -> ( 'b, 'c ) t -> ( 'a, 'c ) t

compose is sequential morphism composition.