Agda: A dependently typed functional programming language and proof assistant
Agda is a dependently typed functional programming language: It has inductive families, which are similar to Haskell's GADTs, but they can be indexed by values and not just types. It also has parameterised modules, mixfix operators, Unicode characters, and an interactive Emacs interface (the type checker can assist in the development of your code).
Agda is also a proof assistant: It is an interactive system for writing and checking proofs. Agda is based on intuitionistic type theory, a foundational system for constructive mathematics developed by the Swedish logician Per Martin-Löf. It has many similarities with other proof assistants based on dependent types, such as Coq, Epigram and NuPRL.
This package includes both a command-line program (agda) and an
Emacs mode. If you want to use the Emacs mode you can set it up by
running agda-mode setup
(see the README).
Note that the Agda package does not follow the package versioning policy, because it is not intended to be used by third-party packages.
[Skip to Readme]
Modules
[Index] [Quick Jump]
- Agda
- Auto
- Agda.Benchmarking
- Compiler
- Agda.Compiler.Backend
- Agda.Compiler.CallCompiler
- Agda.Compiler.Common
- JS
- MAlonzo
- Agda.Compiler.ToTreeless
- Treeless
- Agda.Compiler.Treeless.AsPatterns
- Agda.Compiler.Treeless.Builtin
- Agda.Compiler.Treeless.Compare
- Agda.Compiler.Treeless.EliminateDefaults
- Agda.Compiler.Treeless.EliminateLiteralPatterns
- Agda.Compiler.Treeless.Erase
- Agda.Compiler.Treeless.GuardsToPrims
- Agda.Compiler.Treeless.Identity
- Agda.Compiler.Treeless.NormalizeNames
- Agda.Compiler.Treeless.Pretty
- Agda.Compiler.Treeless.Simplify
- Agda.Compiler.Treeless.Subst
- Agda.Compiler.Treeless.Uncase
- Agda.Compiler.Treeless.Unused
- Agda.ImpossibleTest
- Interaction
- Agda.Interaction.AgdaTop
- Agda.Interaction.BasicOps
- Agda.Interaction.CommandLine
- Agda.Interaction.EmacsCommand
- Agda.Interaction.EmacsTop
- Agda.Interaction.FindFile
- Highlighting
- Agda.Interaction.Highlighting.Common
- Agda.Interaction.Highlighting.Dot
- Agda.Interaction.Highlighting.Emacs
- Agda.Interaction.Highlighting.Generate
- Agda.Interaction.Highlighting.HTML
- Agda.Interaction.Highlighting.JSON
- Agda.Interaction.Highlighting.LaTeX
- Agda.Interaction.Highlighting.Precise
- Agda.Interaction.Highlighting.Range
- Agda.Interaction.Highlighting.Vim
- Agda.Interaction.Imports
- Agda.Interaction.InteractionTop
- Agda.Interaction.JSONTop
- Agda.Interaction.Library
- Agda.Interaction.MakeCase
- Agda.Interaction.Monad
- Agda.Interaction.Options
- Agda.Interaction.Response
- Agda.Interaction.SearchAbout
- Agda.Main
- Syntax
- Agda.Syntax.Abstract
- Agda.Syntax.Builtin
- Agda.Syntax.Common
- Agda.Syntax.Concrete
- Agda.Syntax.DoNotation
- Agda.Syntax.Fixity
- Agda.Syntax.IdiomBrackets
- Agda.Syntax.Info
- Agda.Syntax.Internal
- Agda.Syntax.Literal
- Agda.Syntax.Notation
- Agda.Syntax.Parser
- Agda.Syntax.Position
- Agda.Syntax.Reflected
- Scope
- Translation
- Agda.Syntax.Treeless
- Termination
- Agda.TheTypeChecker
- TypeChecking
- Agda.TypeChecking.Abstract
- Agda.TypeChecking.CheckInternal
- Agda.TypeChecking.CompiledClause
- Agda.TypeChecking.Constraints
- Agda.TypeChecking.Conversion
- Agda.TypeChecking.Coverage
- Agda.TypeChecking.Datatypes
- Agda.TypeChecking.DeadCode
- Agda.TypeChecking.DisplayForm
- Agda.TypeChecking.DropArgs
- Agda.TypeChecking.Empty
- Agda.TypeChecking.Errors
- Agda.TypeChecking.EtaContract
- Agda.TypeChecking.EtaExpand
- Agda.TypeChecking.Forcing
- Agda.TypeChecking.Free
- Agda.TypeChecking.Functions
- Agda.TypeChecking.Generalize
- Agda.TypeChecking.IApplyConfluence
- Agda.TypeChecking.Implicit
- Agda.TypeChecking.Injectivity
- Agda.TypeChecking.Inlining
- Agda.TypeChecking.InstanceArguments
- Agda.TypeChecking.Irrelevance
- Agda.TypeChecking.Level
- Agda.TypeChecking.LevelConstraints
- Agda.TypeChecking.MetaVars
- Agda.TypeChecking.Monad
- Agda.TypeChecking.Monad.Base
- Agda.TypeChecking.Monad.Benchmark
- Agda.TypeChecking.Monad.Builtin
- Agda.TypeChecking.Monad.Caching
- Agda.TypeChecking.Monad.Closure
- Agda.TypeChecking.Monad.Constraints
- Agda.TypeChecking.Monad.Context
- Agda.TypeChecking.Monad.Debug
- Agda.TypeChecking.Monad.Env
- Agda.TypeChecking.Monad.Imports
- Agda.TypeChecking.Monad.MetaVars
- Agda.TypeChecking.Monad.Mutual
- Agda.TypeChecking.Monad.Open
- Agda.TypeChecking.Monad.Options
- Agda.TypeChecking.Monad.Signature
- Agda.TypeChecking.Monad.SizedTypes
- Agda.TypeChecking.Monad.State
- Agda.TypeChecking.Monad.Statistics
- Agda.TypeChecking.Monad.Trace
- Agda.TypeChecking.Names
- Patterns
- Agda.TypeChecking.Polarity
- Agda.TypeChecking.Positivity
- Agda.TypeChecking.Pretty
- Agda.TypeChecking.Primitive
- Agda.TypeChecking.ProjectionLike
- Agda.TypeChecking.Quote
- Agda.TypeChecking.ReconstructParameters
- Agda.TypeChecking.RecordPatterns
- Agda.TypeChecking.Records
- Agda.TypeChecking.Reduce
- Agda.TypeChecking.Rewriting
- Rules
- Agda.TypeChecking.Serialise
- Agda.TypeChecking.SizedTypes
- Agda.TypeChecking.Sort
- Agda.TypeChecking.Substitute
- Agda.TypeChecking.SyntacticEquality
- Agda.TypeChecking.Telescope
- Agda.TypeChecking.Unquote
- Agda.TypeChecking.Warnings
- Agda.TypeChecking.With
- Utils
- Agda.Utils.AffineHole
- Agda.Utils.AssocList
- Agda.Utils.Bag
- Agda.Utils.Benchmark
- Agda.Utils.BiMap
- Agda.Utils.Char
- Agda.Utils.Cluster
- Agda.Utils.Either
- Agda.Utils.Empty
- Agda.Utils.Environment
- Agda.Utils.Except
- Agda.Utils.Favorites
- Agda.Utils.FileName
- Agda.Utils.Float
- Agda.Utils.Function
- Agda.Utils.Functor
- Agda.Utils.Geniplate
- Graph
- Agda.Utils.Hash
- Agda.Utils.HashMap
- Haskell
- Agda.Utils.IO
- Agda.Utils.IORef
- Agda.Utils.Impossible
- Agda.Utils.IndexedList
- IntSet
- Agda.Utils.Lens
- Agda.Utils.List
- Agda.Utils.ListT
- Agda.Utils.Map
- Agda.Utils.Maybe
- Agda.Utils.Memo
- Agda.Utils.Monad
- Agda.Utils.Monoid
- Agda.Utils.NonemptyList
- Agda.Utils.Null
- Agda.Utils.POMonoid
- Parser
- Agda.Utils.PartialOrd
- Agda.Utils.Permutation
- Agda.Utils.Pointer
- Agda.Utils.Pretty
- Agda.Utils.SemiRing
- Agda.Utils.Singleton
- Agda.Utils.Size
- Agda.Utils.String
- Agda.Utils.Suffix
- Agda.Utils.Three
- Agda.Utils.Time
- Agda.Utils.Trie
- Agda.Utils.Tuple
- Agda.Utils.TypeLevel
- Agda.Utils.TypeLits
- Agda.Utils.Update
- Agda.Utils.VarSet
- Agda.Utils.Warshall
- Agda.Utils.WithDefault
- Agda.Utils.Zipper
- Agda.Version
- Agda.VersionCommit
Flags
Manual Flags
Name | Description | Default |
---|---|---|
cpphs | Use cpphs instead of cpp. | Disabled |
debug | Enable debugging features that may slow Agda down. | Disabled |
Automatic Flags
Name | Description | Default |
---|---|---|
enable-cluster-counting | Enable the --count-clusters flag. (If enable-cluster-counting is False, then the --count-clusters flag triggers an error message.) | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- Agda-2.6.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 2.2.0, 2.2.2, 2.2.4, 2.2.6, 2.2.8, 2.2.10, 2.3.0, 2.3.0.1, 2.3.2, 2.3.2.1, 2.3.2.2, 2.4.0, 2.4.0.1, 2.4.0.2, 2.4.2, 2.4.2.1, 2.4.2.2, 2.4.2.3, 2.4.2.4, 2.4.2.5, 2.5.1, 2.5.1.1, 2.5.1.2, 2.5.2, 2.5.3, 2.5.4, 2.5.4.1, 2.5.4.2, 2.6.0, 2.6.0.1, 2.6.1, 2.6.1.1, 2.6.1.2, 2.6.1.3, 2.6.2, 2.6.2.1, 2.6.2.2, 2.6.3, 2.6.4, 2.6.4.1, 2.6.4.2, 2.6.4.3, 2.7.0, 2.7.0.1 (info) |
---|---|
Change log | CHANGELOG.md |
Dependencies | aeson (>=0.11.3.0 && <1.5), Agda, array (>=0.5.1.0 && <0.6), async (>=2.2 && <2.3), base (>=4.8.0.0 && <4.13), binary (>=0.7.3.0 && <0.9), blaze-html (>=0.8 && <0.10), boxes (>=0.1.3 && <0.2), bytestring (>=0.10.6.0 && <0.11), containers (>=0.5.6.2 && <0.7), data-hash (>=0.2.0.0 && <0.3), deepseq (>=1.4.1.1 && <1.5), directory (>=1.2.2.0 && <1.4), EdisonCore (==1.3.1.1 || >=1.3.2.1 && <1.4), edit-distance (>=0.2.1.2 && <0.3), equivalence (>=0.3.2 && <0.4), exceptions (>=0.8 && <0.11), filemanip (>=0.3.6.2 && <0.4), filepath (>=1.4.0.0 && <1.5), geniplate-mirror (>=0.6.0.6 && <0.8), gitrev (>=1.3.1 && <2.0), hashable (>=1.2.1.0 && <1.3), hashtables (>=1.2.0.2 && <1.3), haskeline (>=0.7.2.1 && <0.8), ieee754 (>=0.7.8 && <0.9), mtl (>=2.2.1 && <2.3), murmur-hash (>=0.1 && <0.2), pretty (>=1.1.2.0 && <1.2), process (>=1.2.3.0 && <1.7), regex-tdfa (>=1.2.2 && <1.3), semigroups (>=0.18 && <0.19), split (>=0.2.0.0 && <0.2.3.4), stm (>=2.4.4 && <2.6), strict (>=0.3.2 && <0.4), template-haskell (>=2.10.0.0 && <2.15), text (>=1.2.3.0 && <1.3), text-icu (>=0.7 && <0.8), time (>=1.5.0.1 && <1.9), transformers (==0.4.2.0 || ==0.5.2.0 || ==0.5.5.0 || ==0.5.6.2), unordered-containers (>=0.2.5.0 && <0.3), uri-encode (>=1.5.0.4 && <1.6), Win32 (>=2.3.1.0 && <2.7), zlib (>=0.4.0.1 && <0.7) [details] |
Tested with | ghc ==7.10.3, ghc ==8.0.2, ghc ==8.2.2, ghc ==8.4.4, ghc ==8.6.4 |
License | LicenseRef-OtherLicense |
Author | Agda 2 was originally written by Ulf Norell, partially based on code from Agda 1 by Catarina Coquand and Makoto Takeyama, and from Agdalight by Ulf Norell and Andreas Abel. Agda 2 is currently actively developed mainly by Andreas Abel, Guillaume Allais, Jesper Cockx, Nils Anders Danielsson, Philipp Hausmann, Fredrik Nordvall Forsberg, Ulf Norell, Víctor López Juan, Andrés Sicard-Ramírez, and Andrea Vezzosi. Further, Agda 2 has received contributions by, amongst others, Stevan Andjelkovic, Marcin Benke, Jean-Philippe Bernardy, Guillaume Brunerie, James Chapman, Dominique Devriese, Péter Diviánszky, Olle Fredriksson, Adam Gundry, Daniel Gustafsson, Kuen-Bang Hou (favonia), Patrik Jansson, Alan Jeffrey, Wolfram Kahl, Wen Kokke, Fredrik Lindblad, Francesco Mazzoli, Stefan Monnier, Darin Morrison, Guilhem Moulin, Nicolas Pouillard, Nobuo Yamashita, Christian Sattler, and Makoto Takeyama and many more. |
Maintainer | Ulf Norell <ulfn@chalmers.se> |
Category | Dependent types |
Home page | http://wiki.portal.chalmers.se/agda/ |
Bug tracker | https://github.com/agda/agda/issues |
Source repo | head: git clone https://github.com/agda/agda.git this: git clone https://github.com/agda/agda.git(tag v2.6.0) |
Uploaded | by AndresSicardRamirez at 2019-04-12T11:13:26Z |
Distributions | Arch:2.6.4.1, Debian:2.6.1, Fedora:2.6.4.1, FreeBSD:2.4.2.3, LTSHaskell:2.7.0.1, NixOS:2.7.0.1, Stackage:2.7.0.1 |
Reverse Dependencies | 8 direct, 1 indirect [details] |
Executables | agda-mode, agda |
Downloads | 65018 total (534 in the last 30 days) |
Rating | 2.75 (votes: 10) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Last success reported on 2019-04-12 [all 1 reports] |