A Generic Approach to the Verification of the Permutation Property of Sequential and Parallel Swap-Based Sorting Algorithms

被引:7
|
作者
Safari, Mohsen [1 ]
Huisman, Marieke [1 ]
机构
[1] Univ Twente, Formal Methods & Tools, Enschede, Netherlands
来源
关键词
Sorting algorithms; Deductive verification; Separation logic;
D O I
10.1007/978-3-030-63461-2_14
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Sorting is one of the fundamental operations in computer science, and many sequential and parallel algorithms have been proposed in the literature. Swap-based sorting algorithms are one category of sorting algorithms where elements are swapped repeatedly to achieve the desired order. Since these algorithms are widely used in practice, their (functional) correctness, i.e., proving sortedness and permutation properties, is of utmost importance. However, proving the permutation property using automated program verifiers is much more challenging as the formal definition of this property involves existential quantifiers. In this paper, we propose a generic pattern to verify the permutation property for any sequential and parallel swap-based sorting algorithm automatically. To demonstrate our approach, we use VerCors, a verification tool based on separation logic for concurrent and parallel programs, to verify the permutation property of bubble sort, selection sort, insertion sort, parallel odd-even transposition sort, quick sort, two in-place merge sorts and TimSort for any arbitrary size of input.
引用
收藏
页码:257 / 275
页数:19
相关论文
共 49 条
  • [31] Memristor-based parallel sorting approach using one-dimensional cellular automata
    Vourkas, I.
    Stathis, D.
    Sirakoulis, G. Ch.
    ELECTRONICS LETTERS, 2014, 50 (24) : 1819 - U183
  • [32] Extending an Agent-Based FMS Scheduling Approach with Parallel Genetic Algorithms
    Abaza, Ghada
    Badr, Iman
    Goehner, Peter
    Jeschke, Sabina
    IECON 2010 - 36TH ANNUAL CONFERENCE ON IEEE INDUSTRIAL ELECTRONICS SOCIETY, 2010,
  • [33] Benchmarking in Data Envelopment Analysis: An Approach Based on Genetic Algorithms and Parallel Programming
    Aparicio, Juan
    Lopez-Espin, Jose J.
    Martinez-Moreno, Raul
    Pastor, Jesus T.
    ADVANCES IN OPERATIONS RESEARCH, 2014, 2014
  • [34] Design of parallel implementations by means of abstract dynamic critical path based profiling of complex sequential algorithms
    Prihozhy, Anatoly
    Mlynek, Daniel
    INTEGRATED CIRCUIT AND SYSTEM DESIGN: POWER AND TIMING MODELING, OPTIMIZATION AND SIMULATION, 2006, 4148 : 1 - 11
  • [35] A Mathematical Model of Parallel Programs and an Approach to Verification of MPI Programs Based on the Proposed Model
    Mironov, A. M.
    AUTOMATIC CONTROL AND COMPUTER SCIENCES, 2022, 56 (07) : 762 - 777
  • [36] A Mathematical Model of Parallel Programs and an Approach to Verification of MPI Programs Based on the Proposed Model
    A. M. Mironov
    Automatic Control and Computer Sciences, 2022, 56 : 762 - 777
  • [37] A Generic Approach for Wheat Disease Classification and Verification Using Expert Opinion for Knowledge-Based Decisions
    Haider, Waleej
    Rehman, Aqeel-Ur
    Durrani, Nouman M.
    Rehman, Sadiq Ur
    IEEE ACCESS, 2021, 9 : 31104 - 31129
  • [38] An agent-based parallel approach for the job shop scheduling problem with genetic algorithms
    Asadzadeh, Leila
    Zamanifar, Kamran
    MATHEMATICAL AND COMPUTER MODELLING, 2010, 52 (11-12) : 1957 - 1965
  • [39] Fast parallel algorithms for finding elementary circuits of a directed graph: a GPU-based approach
    Benachour, Amira
    Yahiaoui, Said
    El Baz, Didier
    Nouali-Taboudjemat, Nadia
    Kheddouci, Hamamache
    JOURNAL OF SUPERCOMPUTING, 2023, 79 (05): : 4791 - 4819
  • [40] Fast parallel algorithms for finding elementary circuits of a directed graph: a GPU-based approach
    Amira Benachour
    Saïd Yahiaoui
    Didier El Baz
    Nadia Nouali-Taboudjemat
    Hamamache Kheddouci
    The Journal of Supercomputing, 2023, 79 : 4791 - 4819