# User:Michiexile/MATH198/Lecture 1

### From HaskellWiki

## Contents |

## 1 Welcome, administrativia

## 2 Introduction

Why this course? What will we cover? What do we require?

## 3 Category

A *graph* is a collection *G0* of *vertices* and a collection *G1* of *arrows*. The structure of the graph is captured in the existence of two functions, that we shall call *source* and *target*, both going from *G1* to *G0*. In other words, each arrow has a source and a target.

We denote by *Ar(v,w)* the collection of arrows with source *v* and target *w*.

A *category* is a graph with some special structure:

- Each
*Ar(v,w)*is a set and equipped with a composition operation*Ar(u,v) x Ar(v,w) -> Ar(u,w)*. In other words, any two arrows, such that the target of one is the source of the other, can be composed to give a new arrow with target and source from the ones left out.

*u -> v -> w => u -> w*

- The composition of arrows is associative.
- Each vertex
*v*has a dedicated arrow*1v*with source and target*v*, called the identity arrow. - Each identity arrow is a left- and right-identity for the composition operation.

### 3.1 Examples

- The empty category with no vertices and no arrows.
- The category
*1*with a single vertex and only its identity arrow. - The category
*2*with two objects, their identity arrows and the arrow*a -> b*.