期刊文献+

MSVL: a typed language for temporal logic programming

MSVL: a typed language for temporal logic programming
原文传递
导出
摘要 The development of types is an important but challenging issue in temporal logic programming. In this paper, we investigate how to formalize and implement types in the temporal logic programming language MSVL, which is an executable subset of projection temporal logic (PTL). Specifically, we extend MSVL with a few groups of types including basic data types, pointer types and struct types. On each type, we specify the domain of values and define some standard operations in terms of logic functions and predicates. Then, it is feasible to formalize statements of type declaration of program variables and statements of struct definitions as logic formulas. As the implementation of the theory, we extend the MSV toolkit with the support of modeling, simulation and verification of typed MSVL programs. Applications to the construction of AVL tree and ordered list show the practicality of the language. The development of types is an important but challenging issue in temporal logic programming. In this paper, we investigate how to formalize and implement types in the temporal logic programming language MSVL, which is an executable subset of projection temporal logic (PTL). Specifically, we extend MSVL with a few groups of types including basic data types, pointer types and struct types. On each type, we specify the domain of values and define some standard operations in terms of logic functions and predicates. Then, it is feasible to formalize statements of type declaration of program variables and statements of struct definitions as logic formulas. As the implementation of the theory, we extend the MSV toolkit with the support of modeling, simulation and verification of typed MSVL programs. Applications to the construction of AVL tree and ordered list show the practicality of the language.
机构地区 ICTT and ISN Lab
出处 《Frontiers of Computer Science》 SCIE EI CSCD 2017年第5期762-785,共24页 中国计算机科学前沿(英文版)
关键词 TYPE temporal logic programming MSVL type declaration struct definition type, temporal logic programming, MSVL, type declaration, struct definition
  • 相关文献

参考文献2

二级参考文献59

  • 1Onieva J, Zhou J, Lopez J. Multiparty nonrepudiation: a survey. ACM Computing Surveys (CSUR), 2008, 41(1): 5.
  • 2Asokan N, Schunter M, Waidner M. Optimistic protocols for fair ex- change. In: Proceedings of the 4th ACM conference on Computer and Communications Security. 1997, 7-17.
  • 3Dolev D, Yao A. On the security of public key protocols. IEEE Trans- actions on Information Theory, 1983, 29(2): 198-208.
  • 4Kremer S, Raskin J. A game-based verification of non-repudiation and fair exchange protocols. In: Proceedings of the 12th International Con- ference on Concurrency Theory. 2001, 551-565.
  • 5Anderson B, Hansen J, Lowry P, Summers S. Standards and verifica- tion for fair-exchange and atomicity in e-commerce transactions. Infor- mation Sciences, 2006, 176(8): 1045-1066.
  • 6Chadha R, Kremer S, Scedrov A. Formal analysis of multiparty con- tract signing. Journal of Automated Reasoning, 2006, 36(1): 39-83.
  • 7Zhang Y, Zbang C, Pang J, Mauw S. Game-based verification of multi-party contract signing protocols. In: Proceedings of the 6th Interna- tional Conference on Formal Aspects in Security and Trust. 2009, 186- 200.
  • 8Chen M, Wu K, Xu J, He E A new method for formalizing optimistic fair exchange protocols. In: Proceedings of the 12th Internationai Con- ference on Information and Communications Security. 2010, 251-265.
  • 9Gaber T, Zhang N. Fair and abuse-free contract signing protocol sup- porting fair license reselling. In: Proceedings of the 4th IFIP In- ternational Conference on New Technologies, Mobility and Security (NTMS). 2011, 1-7.
  • 10Chatterjee K, Raman V. Synthesizing protocols for digital contract signing. In: Proceedings of the 13th International Conference on Veri- fication, Model Checking, and Abstract Interpretation. 2012, 152-168.

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部