@@ -289,7 +289,7 @@ we declare vectors as follows:
289289
290290\begin{SaveVerbatim}{vect}
291291
292−data Vect : Set -> Nat -> Set where
292+data Vect : Type -> Nat -> Type where
293293 Nil : Vect a O
294294 (::) : a -> Vect a k -> Vect a (S k)
295295
@@ -305,7 +305,7 @@ Ambiguous constructor names can normally be resolved from context.
305305This declares a family of types, and so the form of the declaration is rather
306306different from the simple type declarations above. We explicitly state the type
307307of the type constructor \tTC{Vect} --- it takes a type and a \tTC{Nat} as an
308−argument, where \tTC{Set} stands for the type of types. We say that \tTC{Vect}
308+argument, where \tTC{Type} stands for the type of types. We say that \tTC{Vect}
309309is \emph{parameterised} by a type, and \emph{indexed} over \tTC{Nat}. Each
310310constructor targets a different part of the family of types. \tDC{Nil} can only
311311be used to construct vectors with zero length, and \tDC{::} to construct
@@ -370,7 +370,7 @@ They are declared as follows (again, in the prelude):
370370
371371\begin{SaveVerbatim}{findecl}
372372
373−data Fin : Nat -> Set where
373+data Fin : Nat -> Type where
374374 fO : Fin (S k)
375375 fS : Fin k -> Fin (S k)
376376
@@ -433,7 +433,7 @@ arguments to \texttt{index}. We could also write the type of \texttt{index} as:
433433
434434\begin{SaveVerbatim}{vindeximpty}
435435
436−index : {a:Set} -> {n:Nat} -> Fin n -> Vect a n -> a
436+index : {a:Type} -> {n:Nat} -> Fin n -> Vect a n -> a
437437
438438\end{SaveVerbatim}
439439\useverb{vindeximpty}
@@ -481,7 +481,7 @@ definition, which defines a predicate on vectors:
481481
482482\begin{SaveVerbatim}{elem}
483483
484−data Elem : a -> Vect a n -> Set where
484+data Elem : a -> Vect a n -> Type where
485485 here : {x:a} -> {xs:Vect a n} -> Elem x (x :: xs)
486486 there : {x,y:a} -> {xs:Vect a n} -> Elem x xs -> Elem x (y :: xs)
487487
@@ -513,7 +513,7 @@ ordering of any implicit arguments which can appear within the block:
513513\begin{SaveVerbatim}{elemusing}
514514
515515using (x:a, y:a, xs:Vect a n)
516− data Elem : a -> Vect a n -> Set where
516+ data Elem : a -> Vect a n -> Type where
517517 here : Elem x (x :: xs)
518518 there : Elem x xs -> Elem x (y :: xs)
519519
@@ -674,7 +674,7 @@ We have already seen the \texttt{List} and \texttt{Vect} data types:
674674
675675data List a = Nil | (::) a (List a)
676676
677−data Vect : Set -> Nat -> Set where
677+data Vect : Type -> Nat -> Type where
678678 Nil : Vect a O
679679 (::) : a -> Vect a k -> Vect a (S k)
680680
@@ -858,8 +858,8 @@ the value of the first element:
858858
859859\begin{SaveVerbatim}{sigma}
860860
861−data Exists : (A : Set) -> (P : A -> Set) -> Set where
862− Ex_intro : {P : A -> Set} -> (a : A) -> P a -> Exists A P
861+data Exists : (A : Type) -> (P : A -> Type) -> Type where
862+ Ex_intro : {P : A -> Type} -> (a : A) -> P a -> Exists A P
863863
864864\end{SaveVerbatim}
865865\useverb{sigma}
@@ -951,7 +951,7 @@ value is true:
951951
952952\begin{SaveVerbatim}{sotype}
953953
954−data so : Bool -> Set where
954+data so : Bool -> Type where
955955 oh : so True
956956
957957\end{SaveVerbatim}
@@ -1112,7 +1112,7 @@ can represent a person's name and age in a record:
11121112
11131113\begin{SaveVerbatim}{recsimpl}
11141114
1115−record Person : Set where
1115+record Person : Type where
11161116 MkPerson : (name : String) ->
11171117 (age : Int) -> Person
11181118
@@ -1165,7 +1165,7 @@ the record as a whole. For example:
11651165
11661166\begin{SaveVerbatim}{deprec}
11671167
1168−record Class : Set where
1168+record Class : Type where
11691169 ClassInfo : (students : Vect Person n) ->
11701170 (className : String) ->
11711171 Class