Algebra of programming in Agda: Dependent types for relational program derivation

被引:23
|
作者
Mu, Shin-Cheng [1 ]
Ko, Hsiang-Shang [2 ]
Jansson, Patrik [3 ,4 ]
机构
[1] Acad Sinica, Inst Informat Sci, Taipei, Taiwan
[2] Natl Taiwan Univ, Dept Comp Sci & Informat Engn, Taipei, Taiwan
[3] Chalmers Univ Technol, Dept Comp Sci & Engn, Gothenburg, Sweden
[4] Univ Gothenburg, Gothenburg, Sweden
关键词
D O I
10.1017/S0956796809007345
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Relational program derivation is the technique of stepwise refining a relational specification to a program by algebraic rules. The program thus obtained is correct by construction. Meanwhile, dependent type theory is rich enough to express various correctness properties to be verified by the type checker. We have developed a library, AoPA (Algebra of Programming in Agda), to encode relational derivations in the dependently typed programming language Agda. A program is Coupled with an algebraic derivation whose correctness is guaranteed by the type system. Two non-trivial examples are presented: an optimisation problem and a derivation of quicksort in which well-founded recursion is used to model terminating hylomorphisms in a language with inductive types.
引用
收藏
页码:545 / 579
页数:35
相关论文
共 50 条
  • [41] Dependent Types for Multi-Rate Flows in Synchronous Programming (System Description)
    Blair, William
    Xi, Hongwei
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2017, (241): : 36 - 44
  • [42] Study on derivation from large-amplitude size dependent internal resonances of homogeneous and FG rod-types
    Jamali, Somaye
    Nazemnezhad, Reza
    ADVANCES IN NANO RESEARCH, 2024, 16 (02) : 111 - 125
  • [43] The open calculus of constructions (Part I): An equational type theory with dependent types for programming, specification, and interactive theorem proving
    Stehr, MO
    FUNDAMENTA INFORMATICAE, 2005, 68 (1-2) : 131 - 174
  • [44] The open calculus of constructions (Part II): An equational type theory with dependent types for programming, specification, and interactive theorem proving
    Stehr, MO
    FUNDAMENTA INFORMATICAE, 2005, 68 (03) : 249 - 288
  • [45] SIMULTANEOUS SEQUENCE AND PROGRAM-PLANNING DURING THE MANUFACTURE OF VARYING PRODUCT TYPES WITH WHOLE-NUMBER LINEAR-PROGRAMMING
    ADAM, D
    ZEITSCHRIFT FUR BETRIEBSWIRTSCHAFT, 1963, 33 (04): : 233 - 245
  • [46] A Preliminary Study of the Population-Adjusted Effectiveness of Substance Abuse Prevention Programming: Towards Making IOM Program Types Comparable
    Shamblen, Stephen R.
    Derzon, James H.
    JOURNAL OF PRIMARY PREVENTION, 2009, 30 (02): : 89 - 107
  • [47] A Preliminary Study of the Population-Adjusted Effectiveness of Substance Abuse Prevention Programming: Towards Making IOM Program Types Comparable
    Stephen R. Shamblen
    James H. Derzon
    The Journal of Primary Prevention, 2009, 30 : 89 - 107
  • [48] A non-canonical MiT/TFE-dependent NRF2 program is a druggable vulnerability in multiple cancer types
    Luo, Xinbo
    Lutterbach, Bart
    Pancholi, Priya
    Choi, Yeon Sook
    Liu, Xiao
    Munson, Phillip
    Faisal, Saqib
    Whipple, David A.
    Smith, Robert A.
    Weiner, Warren S.
    Johnson, David K.
    Boukhali, Myriam
    Persky, Nicole S.
    Rees, Matthew G.
    Kitajima, Shunsuke
    Barbie, David
    Roy, Anuradha
    Baltezor, Michael
    Rajewski, Lian
    McGuinness, William
    Haslam, John
    Sadagopan, Ananthan
    Yoon, Charles H.
    Johannessen, Cory M.
    Lian, Christine G.
    Hornick, Jason L.
    Viswanathan, Srinivas R.
    Liu, David
    Nienaber, Vicki
    Haas, Wilhelm
    Schoenen, Frank J.
    Fisher, David E.
    Haq, Rizwan
    CANCER RESEARCH, 2023, 83 (07)
  • [49] A Step-by-Step Derivation of a Generalized Model Coupled With Questions Formulation Technique to Teach Different Types of dc Motors and Its Impact on Student Performance, the Course, and the Program
    Al-Olimat, Khalid S.
    IEEE TRANSACTIONS ON EDUCATION, 2022, 65 (02) : 184 - 190
  • [50] JMJD1C forms condensate to facilitate a RUNX1-dependent gene expression program shared by multiple types of AML cells
    Chen, Qian
    Wang, Saisai
    Zhang, Juqing
    Xie, Min
    Lu, Bin
    He, Jie
    Zhen, Zhuoran
    Li, Jing
    Zhu, Jiajun
    Li, Rong
    Li, Pilong
    Wang, Haifeng
    Vakoc, Christopher R.
    Roeder, Robert G.
    Chen, Mo
    PROTEIN & CELL, 2025,