Definition Functor (C D : Category) := SpecializedFunctor C D.
Parameter TerminalCategory : SpecializedCategory unit.
Definition focus A (_ : A) := True.
Definition CommaCategory_Object (A : Category) (S : Functor TerminalCategory A) : Type. assert (Hf : focus ((S tt) = (S tt))) by constructor. let C1 := constr:(CObject) in let C2 := constr:(fun C => @Object (CObject C) C) in
unify C1 C2; idtac C1 C2. Show Universes.
progress change @CObject with (fun C => @Object (CObject C) C) in *. simpl in *. matchtype of Hf with
| focus ?V => exact V end. Defined.
Definition Build_SliceCategory (A : Category) (F : Functor TerminalCategory A) := @Build_SpecializedCategory (CommaCategory_Object F). Parameter SetCat : @SpecializedCategory Set.
Set Printing Universes. Check (fun (A : Category) (F : Functor TerminalCategory A) => @Build_SpecializedCategory (CommaCategory_Object F)) SetCat. (* (fun (A : Category (* Top.68 *))
(F : Functor (* Set Top.68 *) TerminalCategory A) =>
{| |}) SetCat (* Top.68 *)
: forall
F : Functor (* Set Top.68 *) TerminalCategory SetCat (* Top.68 *), let Object := CommaCategory_Object (* Top.68 Top.69 Top.68 *) F in
SpecializedCategory (* Top.69 *)
(CommaCategory_Object (* Top.68 Top.69 Top.68 *) F) *) Check @Build_SliceCategory SetCat. (* Toplevel input, characters 0-34: Error: Universe inconsistency (cannot enforce Top.51 <= Set because Set
< Top.51). *) End Version1.
Module Version2. SetImplicitArguments. Set Universe Polymorphism.
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.