• DocumentCode
    2419862
  • Title

    Proving the correctness of concurrent robot software

  • Author

    Kazanzides, Peter ; Kouskoulas, Yanni ; Deguet, Anton ; Shao, Zhong

  • Author_Institution
    Dept. of Comput. Sci., Johns Hopkins Univ., Baltimore, MD, USA
  • fYear
    2012
  • fDate
    14-18 May 2012
  • Firstpage
    4718
  • Lastpage
    4723
  • Abstract
    Component-based software has been proposed as a methodology for improving software reuse and has increasingly been adopted by robot software developers. At the same time, robot systems typically have real-time performance requirements and performance gains can often be obtained by multi-threading. It is challenging, however, to create correct multi-threaded software, especially when standard mutual exclusion primitives, such as mutexes and semaphores, are eschewed in favor of more efficient, lock-free mechanisms. It is even more difficult to find these errors, as they can remain dormant for years until triggered by just the “right” conditions. Our approach, therefore, is to apply Formal Methods to reason about the correctness of these mechanisms. As a first step, we adopted a recently-developed program logic called History for Local Rely/Guarantee (HLRG) and applied it to prove the correctness (after first finding and fixing an error) of one such mechanism in the open source cisst software package. This strategy is not specific to cisst and can be applied to other packages.
  • Keywords
    control engineering computing; formal logic; formal verification; multi-threading; object-oriented programming; public domain software; robots; software packages; software reusability; HLRG; History for Local Rely/Guarantee; component-based software; concurrent robot software; formal methods; lock-free mechanisms; multithreaded software; mutexes; mutual exclusion primitives; open source cisst software package; performance gains; program logic; real-time performance requirements; robot software developers; semaphores; software reusability; History; Indexes; Message systems; Real time systems; Robots; Software; Vectors;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Robotics and Automation (ICRA), 2012 IEEE International Conference on
  • Conference_Location
    Saint Paul, MN
  • ISSN
    1050-4729
  • Print_ISBN
    978-1-4673-1403-9
  • Electronic_ISBN
    1050-4729
  • Type

    conf

  • DOI
    10.1109/ICRA.2012.6225285
  • Filename
    6225285