Reasoning about Function Objects

被引:0
|
作者
Nordio, Martin [1 ]
Calcagno, Cristiano [2 ,3 ]
Meyer, Bertrand [1 ]
Mueller, Peter [1 ]
Tschannen, Julian [1 ]
机构
[1] ETH, Zurich, Switzerland
[2] Monoidics Ltd, London, England
[3] Imperial Coll, London, England
来源
OBJECTS, MODELS, COMPONENTS, PATTERNS | 2010年 / 6141卷
基金
英国工程与自然科学研究理事会;
关键词
C-NUMBER; LOGIC; VERIFICATION; INVARIANTS; PROGRAMS; EIFFEL;
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Modern object-oriented languages support higher-order implementations through function objects such as delegates in C#, agents in Eiffel, or closures in Scala. Function objects bring a new level of abstraction to the object-oriented programming model, and require a comparable extension to specification and verification techniques. We introduce a verification :methodology that extends function objects with auxiliary side-effect free (pure) methods to model logical artifacts: preconditions, postconditions and modifies clauses. These pure methods can be used to specify client code abstractly, that is, independently from specific instantiations of the function objects. To demonstrate the feasibility of our approach, we have implemented an automatic prover, which verifies several non-trivial examples.
引用
收藏
页码:79 / +
页数:3
相关论文
共 50 条
  • [21] Reasoning about action in polynomial time
    Drakengren, T
    Bjäreland, M
    ARTIFICIAL INTELLIGENCE, 1999, 115 (01) : 1 - 24
  • [22] Practical Reasoning About Complex Activities
    Guerrero, Esteban
    Lindgren, Helena
    ADVANCES IN PRACTICAL APPLICATIONS OF CYBER-PHYSICAL MULTI-AGENT SYSTEMS: THE PAAMS COLLECTION, PAAMS 2017, 2017, 10349 : 82 - 94
  • [23] Reasoning about Natural Strategic Ability
    Jamroga, Wojciech
    Malvone, Vadim
    Murano, Aniello
    AAMAS'17: PROCEEDINGS OF THE 16TH INTERNATIONAL CONFERENCE ON AUTONOMOUS AGENTS AND MULTIAGENT SYSTEMS, 2017, : 714 - 722
  • [24] Reasoning About Properties: A Computational Theory
    Khemlani, Sangeet
    Johnson-Laird, P. N.
    PSYCHOLOGICAL REVIEW, 2022, 129 (02) : 289 - 312
  • [25] Reasoning about sequences of memory states
    Brochenin, Remi
    Demri, Stephane
    Lozes, Etienne
    ANNALS OF PURE AND APPLIED LOGIC, 2009, 161 (03) : 305 - 323
  • [26] Equational Reasoning About Quantum Protocols
    Gay, Simon J.
    Puthoor, Ittoop V.
    REVERSIBLE COMPUTATION, RC 2015, 2015, 9138 : 155 - 170
  • [27] Being and Change: Reasoning About Invariance
    de Boer, Frank S.
    de Gouw, Stijn
    CORRECT SYSTEM DESIGN: SYMPOSIUM IN HONOR OF ERNST-RUDIGER OLDEROG ON THE OCCASION OF HIS 60TH BIRTHDAY, 2015, 9360 : 191 - 204
  • [28] REASONING ABOUT SYSTEMS WITH MANY PROCESSES
    GERMAN, SM
    SISTLA, AP
    JOURNAL OF THE ACM, 1992, 39 (03) : 675 - 735
  • [29] Modular Reasoning about Heap Paths via Effectively Propositional Formulas
    Itzhaky, Shachar
    Banerjee, Anindya
    Immerman, Neil
    Lahav, Ori
    Nanevski, Aleksandar
    Sagiv, Mooly
    ACM SIGPLAN NOTICES, 2014, 49 (01) : 385 - 396
  • [30] Calculus of Cooperation and Game-Based Reasoning about Protocol Privacy
    More, Sara Miner
    Naumov, Pavel
    ACM TRANSACTIONS ON COMPUTATIONAL LOGIC, 2012, 13 (03)