Metavariables
Content created by Fredrik Bakke, Fernando Chu and Egbert Rijke.
Created on 2023-04-27.
Last modified on 2024-02-07.
module reflection.metavariables where
Imports
open import elementary-number-theory.natural-numbers open import foundation.booleans open import foundation.identity-types open import foundation.universe-levels open import lists.lists open import primitives.strings
Idea
The Metavariable-Agda
type represents metavariables in Agda.
Definition
postulate Metavariable-Agda : UU lzero {-# BUILTIN AGDAMETA Metavariable-Agda #-} primitive primMetaEquality : Metavariable-Agda → Metavariable-Agda → bool primMetaLess : Metavariable-Agda → Metavariable-Agda → bool primShowMeta : Metavariable-Agda → String primMetaToNat : Metavariable-Agda → ℕ primMetaToNatInjective : (a b : Metavariable-Agda) → primMetaToNat a = primMetaToNat b → a = b data Blocker-Agda : UU lzero where any-Blocker-Agda : list Blocker-Agda → Blocker-Agda all-Blocker-Agda : list Blocker-Agda → Blocker-Agda metavariable-Blocker-Agda : Metavariable-Agda → Blocker-Agda {-# BUILTIN AGDABLOCKER Blocker-Agda #-} {-# BUILTIN AGDABLOCKERANY any-Blocker-Agda #-} {-# BUILTIN AGDABLOCKERALL all-Blocker-Agda #-} {-# BUILTIN AGDABLOCKERMETA metavariable-Blocker-Agda #-}
Recent changes
- 2024-02-07. Fredrik Bakke. Deduplicate definitions (#1022).
- 2023-12-02. Fernando Chu and Fernando Chu. Update reflection for 2.6.4 (#962).
- 2023-10-21. Egbert Rijke and Fredrik Bakke. Formatting of postulates (#870).
- 2023-05-01. Fredrik Bakke. Refactor 2, the sequel to refactor (#581).
- 2023-04-27. Fernando Chu, Fernando Chu, Fernando Chu and Fredrik Bakke. Reflection and solvers (#571).