module NCILL.Types where

open import Data.Nat

-- TYPES
------------------------------------------------------------------------

data Ty : Set where
  κ    :   Ty
  _⊸_  : Ty  Ty  Ty
  _⊸ʳ_ : Ty  Ty  Ty -- either reversed, or argument on the right.
  _⊗_  : Ty  Ty  Ty
  _⊕_  : Ty  Ty  Ty
  _&_  : Ty  Ty  Ty
  ♯1   : Ty
  ♯0   : Ty
  ♯⊤   : Ty

infixr 8  _⊸_
infixr 8  _⊸ʳ_
infixr 9  _⊕_
infixr 10 _&_
infixr 11 _⊗_