{-# OPTIONS --without-K --exact-split --safe #-} module Fragment.Algebra.Signature where open import Data.Nat using (ℕ) record Signature : Set₁ where field ops : ℕ → Set open Signature public data ExtendedOp (Σ : Signature) (O : ℕ → Set) : ℕ → Set where newₒ : ∀ {n} → O n → ExtendedOp Σ O n oldₒ : ∀ {n} → ops Σ n → ExtendedOp Σ O n _⦅_⦆ : (Σ : Signature) → (ℕ → Set) → Signature Σ ⦅ O ⦆ = record { ops = ExtendedOp Σ O }