Formal derivation and automatic generation of sorting algorithms

被引:0
|
作者
Shi Haihe [1 ]
Shi Haipeng [1 ]
Xue Jinyun [1 ]
机构
[1] Chinese Acad Sci, Inst Software, Beijing 100080, Peoples R China
关键词
sorting; formal derivation; loop invariant; automatic generation;
D O I
暂无
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Sorting has a broad range of application. For both practical and theoretical reasons, sorting is one of the most widely studied problems in algorithm design. The paper presents our new formal methods and techniques, through which the ideas behind QuickSort algorithm are revealed naturally from a common formal sorting specification, and then its loop invariant and nonrecursive algorithmic solution are produced mechanically, despite that developing the loop invariant of recursive problem is a difficult task. Furthermore, instead of fresh formal derivation, the other two sorting algorithms, Selection Sort and Bubble Sort, are easily achieved by applying different problem partition to QuickSort case. By means of tools their executable language programs can automatically be generated. The whole formal development process that starts from a high-level specification and results in provably correct sorting algorithmic programs, is mechanizable and unified, meanwhile provides the basis for the construction of a system for algorithm design from formal specifications.
引用
下载
收藏
页码:311 / 316
页数:6
相关论文
共 50 条
  • [1] DERIVATION OF SORTING ALGORITHMS FROM A SPECIFICATION
    DROMEY, RG
    COMPUTER JOURNAL, 1987, 30 (06): : 512 - 518
  • [2] FORMAL TRANSFORMATION OF STRUCTURED SORTING ALGORITHMS
    TSEITLIN, GE
    PROGRAMMING AND COMPUTER SOFTWARE, 1985, 11 (02) : 118 - 127
  • [3] Automatic formal derivation of the oscillation condition
    Ratier, N
    Couteleau, L
    Brendel, R
    Guillemot, P
    PROCEEDINGS OF THE 1997 IEEE INTERNATIONAL FREQUENCY CONTROL SYMPOSIUM, 1997, : 925 - 931
  • [4] Formal derivation of spanning trees algorithms
    Abrial, JR
    Cansell, D
    Méry, D
    ZB 2003: FORMAL SPECIFICATION AND DEVELOPMENT IN Z AND B, 2003, 2651 : 457 - 476
  • [5] Install-time system for automatic generation of optimized parallel sorting algorithms
    Olszewski, M
    Voss, M
    PDPTA '04: PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED PROCESSING TECHNIQUES AND APPLICATIONS, VOLS 1-3, 2004, : 17 - 23
  • [6] Formal derivation of algorithms:: The triangular Sylvester equation
    Quintana-Ortí, ES
    van de Geijn, RA
    ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2003, 29 (02): : 218 - 243
  • [7] Formal derivation of two parallel rendering algorithms
    Theoharis, T
    Abdallah, AE
    INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED PROCESSING TECHNIQUES AND APPLICATIONS, VOLS I-V, PROCEEDINGS, 1999, : 1444 - 1450
  • [8] Introducing Formal Derivation into the Design and Analysis of Algorithms
    Shi, Haipeng
    Shi, Haihe
    ICCSSE 2009: PROCEEDINGS OF 2009 4TH INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE & EDUCATION, 2009, : 1322 - +
  • [9] Generating algorithms plus loop invariants by formal derivation
    Shi, Haihe
    Du, Dawei
    Xue, Jinyun
    7TH IEEE/ACIS INTERNATIONAL CONFERENCE ON COMPUTER AND INFORMATION SCIENCE IN CONJUNCTION WITH 2ND IEEE/ACIS INTERNATIONAL WORKSHOP ON E-ACTIVITY, PROCEEDINGS, 2008, : 496 - +
  • [10] Automatic generation of a parallel sorting algorithm
    Garber, Brian A.
    Hoeflinger, Dan
    Li, Xiaoming
    Garzarin, Maria Jesus
    Padua, David
    2008 IEEE INTERNATIONAL SYMPOSIUM ON PARALLEL & DISTRIBUTED PROCESSING, VOLS 1-8, 2008, : 2540 - 2544