Skip to content
This repository was archived by the owner on Apr 22, 2026. It is now read-only.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GCat

A graphical proof assistant for categories.

Some notes

Product as property

It might seem at first that having the rule

⊢ x : Obj, y : Obj
------------------
⊢ x×y : Obj

is a good idea but I don't think so in the end:

  • being a product is a property rather than structure for an object (we don't want to have a particular choice) [for morphisms having structure is not that bad because we are up-to-equality in 1-categories]
  • we cannot always take the product of two objects, so that we would need to condition the use of the above rule on a predicate has-product(x,y)
  • we would like to have a rule which says that whenever we have an object x×y then we can construct an arrow π₁ : x×y → x, which means that π₁ depends on the fact that we have an object of the form x×y, and therefore does not take a context as argument (a context can only bind variables not patterns)
  • we can implicitly cast a record into its main value

For the terminal object, uniqueness is better phrased as f = g rather than f = arr (the second requires us using transitivity of equality...).

About

A graphical proof assistant for categories.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages