Abstract Specifications for Concurrent Maps

被引:2
|
作者
Xiong, Shale [1 ]
Pinto, Pedro da Rocha [1 ]
Ntzik, Gian [1 ]
Gardner, Philippa [1 ]
机构
[1] Imperial Coll London, London, England
基金
英国工程与自然科学研究理事会;
关键词
LINEARIZABILITY; LOGIC;
D O I
10.1007/978-3-662-54434-1_36
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Despite recent advances in reasoning about concurrent data structure libraries, the largest implementations in java.util.concurrent have yet to be verified. The key issue lies in the development of modular specifications, which provide clear logical boundaries between clients and implementations. A solution is to use recent advances in fine-grained concurrency reasoning, in particular the introduction of abstract atomicity to concurrent separation logic reasoning. We present two specifications of concurrent maps, both providing the clear boundaries we seek. We show that these specifications are equivalent, in that they can be built from each other. We show how we can verify client programs, such as a concurrent set and a producer-consumer client. We also give a substantial first proof that the main operations of ConcurrentSkipListMap in java.util.concurrent satisfy the map specification. This work demonstrates that we now have the technology to verify the largest implementations in java.util.concurrent.
引用
收藏
页码:964 / 990
页数:27
相关论文
共 50 条
  • [41] COMMUNICATION PROTOCOL SPECIFICATIONS AND MODELS WITH ABSTRACT MACHINES
    POTIN, P
    TSI-TECHNIQUE ET SCIENCE INFORMATIQUES, 1983, 2 (03): : 191 - 206
  • [42] Probabilistic Modal Specifications (Invited Extended Abstract)
    Larsen, Kim G.
    Legay, Axel
    FORMAL ASPECTS OF COMPONENT SOFTWARE, 2014, 8348 : 1 - 4
  • [43] Formal verification of abstract system and protocol specifications
    Schneider, Axel
    Bluhm, Thomas
    Renner, Tobias
    Heinkel, Ulrich
    Knaeblein, Joachim
    Zavala, Reynaldo
    30TH ANNUAL IEEE/NASA SOFTWARE ENGINEERING WORKSHOP, PROCEEDINGS, 2006, : 207 - +
  • [44] Visualizing abstract data on maps
    Fuchs, G
    Schumann, H
    EIGHTH INTERNATIONAL CONFERENCE ON INFORMATION VISUALISATION, PROCEEDINGS, 2004, : 139 - 144
  • [45] Assignments and abstract moment maps
    Ginzburg, VL
    Guillemin, V
    Karshon, Y
    JOURNAL OF DIFFERENTIAL GEOMETRY, 1999, 52 (02) : 259 - 301
  • [46] Modular formal verification of specifications of concurrent systems
    Gradara, Sara
    Santone, Antonella
    Vaglini, Gigliola
    Villani, Maria Luisa
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2008, 18 (01): : 5 - 28
  • [47] SEMIAUTOMATIC GUIDED SYNTHESIS OF CONCURRENT SYSTEMS SPECIFICATIONS
    LEON, G
    CEA, J
    DELAFUENTE, A
    RODRIGUEZ, F
    MICROPROCESSING AND MICROPROGRAMMING, 1987, 21 (1-5): : 541 - 548
  • [48] Temporal linear logic specifications for concurrent processes
    Kanovich, M
    Ito, T
    12TH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 1997, : 48 - 57
  • [49] Verifying Concurrent Programs against Sequential Specifications
    Bouajjani, Ahmed
    Emmi, Michael
    Enea, Constantin
    Hamza, Jad
    PROGRAMMING LANGUAGES AND SYSTEMS, 2013, 7792 : 290 - 309
  • [50] Verification of concurrent code from synchronous specifications
    Hu, Kai
    Zhang, Teng
    Ding, Yi
    Zhu, Jian
    Talpin, Jean-Pierre
    SCIENCE OF COMPUTER PROGRAMMING, 2021, 206 (206)