Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1007/978-3-642-03359-9_6guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

A Brief Overview of Agda --- A Functional Language with Dependent Types

Published: 20 August 2009 Publication History
  • Get Citation Alerts
  • Abstract

    We give an overview of Agda, the latest in a series of dependently typed programming languages developed in Gothenburg. Agda is based on Martin-Löf's intuitionistic type theory but extends it with numerous programming language features. It supports a wide range of inductive data types, including inductive families and inductive-recursive types, with associated flexible pattern-matching. Unlike other proof assistants, Agda is not tactic-based. Instead it has an Emacs-based interface which allows programming by gradual refinement of incomplete type-correct terms.

    References

    [1]
    Agda wiki page, http://wiki.portal.chalmers.se/agda/
    [2]
    Bertot, Y., Castéran, P.: Interactive Theorem Proving and Program Development. In: Coq'Art: The Calculus of Inductive Constructions. Springer, Heidelberg (2004).
    [3]
    Bove, A., Dybjer, P.: Dependent types at work. In: Barbosa, L., Bove, A., Pardo, A., Pinto, J.S. (eds.) LerNet ALFA Summer School 2008. LNCS, vol. 5520, pp. 57-99. Springer, Heidelberg (to appear, 2009).
    [4]
    Coquand, T., Huet, G.: The calculus of constructions. Information and Computation 76, 95-120 (1988).
    [5]
    Dybjer, P.: Inductive families. Formal Aspects of Computing 6, 440-465 (1994).
    [6]
    Dybjer, P.: A general formulation of simultaneous inductive-recursive definitions in type theory. Journal of Symbolic Logic 65(2) (June 2000).
    [7]
    Dybjer, P., Setzer, A.: Indexed induction-recursion. Journal of Logic and Algebraic Programming 66(1), 1-49 (2006).
    [8]
    Epigram homepage, http://www.e-pig.org
    [9]
    Gonthier, G.: The four colour theorem: Engineering of a formal proof. In: Kapur, D. (ed.) ASCM 2007. LNCS, vol. 5081, p. 333. Springer, Heidelberg (2008).
    [10]
    Gordon, M., Milner, R., Wadsworth, C.: Edinburgh LCF. In: Kahn, G. (ed.) Semantics of Concurrent Computation. LNCS, vol. 70. Springer, Heidelberg (1979).
    [11]
    Martin-Löf, P.: Constructive mathematics and computer programming. In: Logic, Methodology and Philosophy of Science, VI, 1979, pp. 153-175. North-Holland, Amsterdam (1982).
    [12]
    Martin-Löf, P.: Intuitionistic Type Theory. Bibliopolis, Napoli (1984).
    [13]
    Nordström, B., Petersson, K., Smith, J.M.: Programming in Martin-Löf's Type Theory. An Introduction. Oxford University Press, Oxford (1990).
    [14]
    Norell, U.: Towards a practical programming language based on dependent type theory. PhD thesis, Chalmers University of Technology (2007).
    [15]
    Norell, U.: Dependently typed programming in Agda. In: Lecture Notes from the Summer School in Advanced Functional Programming (2008) (to appear).

    Cited By

    View all
    • (2024)Automated Verification of Fundamental Algebraic LawsProceedings of the ACM on Programming Languages10.1145/36564088:PLDI(766-789)Online publication date: 20-Jun-2024
    • (2024)Formalizing the ∞-Categorical Yoneda LemmaProceedings of the 13th ACM SIGPLAN International Conference on Certified Programs and Proofs10.1145/3636501.3636945(274-290)Online publication date: 9-Jan-2024
    • (2024)A Natural Formalized Proof LanguageTheoretical Aspects of Software Engineering10.1007/978-3-031-64626-3_26(446-464)Online publication date: 29-Jul-2024
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image Guide Proceedings
    TPHOLs '09: Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
    August 2009
    515 pages
    ISBN:9783642033582
    • Editors:
    • Stefan Berghofer,
    • Tobias Nipkow,
    • Christian Urban,
    • Makarius Wenzel

    Publisher

    Springer-Verlag

    Berlin, Heidelberg

    Publication History

    Published: 20 August 2009

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 11 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Automated Verification of Fundamental Algebraic LawsProceedings of the ACM on Programming Languages10.1145/36564088:PLDI(766-789)Online publication date: 20-Jun-2024
    • (2024)Formalizing the ∞-Categorical Yoneda LemmaProceedings of the 13th ACM SIGPLAN International Conference on Certified Programs and Proofs10.1145/3636501.3636945(274-290)Online publication date: 9-Jan-2024
    • (2024)A Natural Formalized Proof LanguageTheoretical Aspects of Software Engineering10.1007/978-3-031-64626-3_26(446-464)Online publication date: 29-Jul-2024
    • (2024)Tableaux for Automated Reasoning in Dependently-Typed Higher-Order LogicAutomated Reasoning10.1007/978-3-031-63498-7_6(86-104)Online publication date: 3-Jul-2024
    • (2023)What's in a Bag?: An “Application Proving Interface” for Finite Bags and its ImplementationProceedings of the 35th Symposium on Implementation and Application of Functional Languages10.1145/3652561.3652563(1-13)Online publication date: 29-Aug-2023
    • (2023)A simulator of Solidity-style smart contracts in the theorem prover AgdaProceedings of the 2023 6th International Conference on Blockchain Technology and Applications10.1145/3651655.3651656(1-11)Online publication date: 15-Dec-2023
    • (2023)Shape-Constrained Array Programming with Size-Dependent TypesProceedings of the 11th ACM SIGPLAN International Workshop on Functional High-Performance and Numerical Computing10.1145/3609024.3609412(29-41)Online publication date: 30-Aug-2023
    • (2023)Type-Checking CRDT ConvergenceProceedings of the ACM on Programming Languages10.1145/35912767:PLDI(1365-1388)Online publication date: 6-Jun-2023
    • (2023)Defunctionalization with Dependent TypesProceedings of the ACM on Programming Languages10.1145/35912417:PLDI(516-538)Online publication date: 6-Jun-2023
    • (2023)Admissible Types-to-PERs Relativization in Higher-Order LogicProceedings of the ACM on Programming Languages10.1145/35712357:POPL(1214-1245)Online publication date: 11-Jan-2023
    • Show More Cited By

    View Options

    View options

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media