module Chapter5.Reornament.Examples.List (A : Set) where open import Data.Unit open import Data.Product open import Chapter2.IDesc.Fixpoint open import Chapter2.IDesc.Examples.Nat open import Chapter5.Ornament open import Chapter5.Ornament.Examples.List open import Chapter5.Reornament (ListO A) Vec : Nat → Set Vec n = μ reornD (tt , n) vnil : Vec ze vnil = ⟨ tt , tt ⟩ vcons : ∀{n} → A → Vec n → Vec (su n) vcons a xs = ⟨ (a , (tt , tt)) , xs , tt ⟩