Agda Proof Assistant Language
agda.readthedocs.io
2
Leaving SiteNav
External Link Disclaimer
You are about to visit agda.readthedocs.io. This website is not operated by us. We are not responsible for its content or privacy practices.
About this website
Agda is a dependently typed functional programming language and interactive proof assistant, where programs serve as mathematical proofs through the Curry-Howard correspondence. Originally developed by Ulf Norell at Chalmers University of Technology in Sweden in 2007 (with earlier versions by Catarina Coquand in 1999), Agda is widely used in both programming language research and formal verification of mathematical theorems. Key features: dependent types enabling types to depend on values, allowing extremely precise specifications where a type can encode arbitrary program properties. Interactive development through an Emacs and VS Code mode where the user writes types and the system assists in filling in program (proof) holes. Mixfix operators allowing operators of arbitrary arity and shape, supporting natural mathematical notation. Record types with dependent fields, modules, and record update syntax. Universe levels to prevent Girard paradox, with explicit polymorphism over universe levels. Inductive families and data types with indexed families for expressing invariants in data structures. Coinduction and sized types for defining and reasoning about infinite data structures and corecursive functions. Pattern matching and with-abstraction for case analysis. Reflection and metaprogramming for generating code programmatically. Termination and positivity checking ensuring well-founded recursive definitions. Standard library providing common data structures, proofs, and abstractions. Backends for compiling extracted code to Haskell, JavaScript, and Epic. Used extensively in research for certified programming, category theory formalization, and type theory education.
Statistics
2
Views
0
Clicks
0
Like
0
Dislike