{-# OPTIONS --safe #-} module Cubical.Categories.Presheaf.NonPresheaf.Forget where open import Cubical.Foundations.Prelude open import Cubical.Foundations.HLevels open import Cubical.Categories.Category open import Cubical.Categories.Instances.Sets open import Cubical.Categories.Constructions.Product open import Cubical.Categories.Functor open import Cubical.Categories.NaturalTransformation open import Cubical.Categories.Presheaf.Base open Category open Functor open NatTrans private variable ℓ ℓ' ℓS : Level NonPresheaf : Category ℓ ℓ' → (ℓS : Level) → Type (ℓ-max ℓ (ℓ-suc ℓS)) NonPresheaf C ℓS = ob C → hSet ℓS NonPresheafCategory : Category ℓ ℓ' → (ℓS : Level) → Category (ℓ-max ℓ (ℓ-suc ℓS)) (ℓ-max ℓ ℓS) NonPresheafCategory C ℓS = ΠC (ob C) (λ _ → SET ℓS) ForgetPresheaf : (C : Category ℓ ℓ') → Functor (PresheafCategory C ℓS) (NonPresheafCategory C ℓS) F-ob (ForgetPresheaf C) pshX = F-ob pshX F-hom (ForgetPresheaf C) {pshX} {pshY} pshF = N-ob pshF F-id (ForgetPresheaf C) {pshX} = refl F-seq (ForgetPresheaf C) {pshX} {pshY} {pshZ} pshF pshG = refl