open import Level open import Function open import Data.Unit open import Data.Product open import Data.Nat hiding (fold) open import Data.Fin hiding (fold) open import Chapter2.Logic open import Chapter6.IDesc open import Chapter6.IDesc.Fixpoint open import Chapter6.IDesc.InitialAlgebra open import Chapter10.Ornament module Chapter10.Ornament.Algebra {ℓ k : Level} {I K : Set k} {D : func ℓ K K} {u : I → K} (o : orn D u u) where open import Chapter10.Ornament.CartesianMorphism o ornAlgebra : Alg ⟦ o ⟧orn (μ D ∘ u) ornAlgebra xs = ⟨ forgetNat xs ⟩ forgetOrnament : {i : I} → μ ⟦ o ⟧orn i → μ D (u i) forgetOrnament = fold ⟦ o ⟧orn ornAlgebra