Agdatypes
Agdatypes are the data types defined within the Agda programming language, a dependently typed functional language used for programming and formal verification. The term combines the name Agda with data types and is often used to refer to algebraic data types defined in Agda, including more expressive dependent variants known as inductive families.
Agda supports declaring data types with constructors that build values in a type-safe way. A defining feature
Common examples of Agdatypes include natural numbers, lists, and vectors. For instance, a simple natural number
Pattern matching is used to define functions on Agdatypes, and recursion must satisfy the language’s termination
Historically, Agda and its type system emerged to support constructive mathematics and formal verification, with Agdatypes