跳到主要内容
10.1145/3209108.3209109acm会议文章/章节视图摘要出版物页面低收入国家会议记录会议集合
研究论文
开放式访问

持续推理:衡量形式化方法的影响

出版:2018年7月9日出版历史

摘要

本文描述了在连续推理中的工作,其中关于(变化的)代码库的形式化推理是以一种反映工业中越来越多的软件开发迭代、连续模型的方式进行的。我们建议,连续推理的进步将允许形式推理扩展到更多程序和更多程序员。本文描述了连续推理的基本原理,概述了行业内的一些成功案例,并提出了科学界的工作方向。

工具书类

  1. A.Albarghouthi、I.Dillig和A.Gurfinkel。最大规格综合。2016年,POPL。谷歌学者谷歌学者数字图书馆数字图书馆
  2. G.Amnions、R.Bodík和J.R.Larus。采矿规范。在POPL中,第4-16页。ACM,2002年。谷歌学者谷歌学者数字图书馆数字图书馆
  3. T.Ball、E.Bounimova、B.Cook、V.Levin、J.Lichtenberg、C.McGarvey、B.Ondrusek、S.K.Rajamani和A.Ustuner。对设备驱动程序进行全面的静态分析。在Eurosys,第73-852006页。谷歌学者谷歌学者数字图书馆数字图书馆
  4. L.Beringer、A.Petcher、K.Q.Ye和A.W.Appel。已验证OpenSSL HMAC的正确性和安全性。在2015年USENIX安全研讨会上。谷歌学者谷歌学者数字图书馆数字图书馆
  5. S.Blackshear和P.O'Hearn。开源赛车D:大规模快速静态比赛检测。code.facebook.com博客帖子。谷歌学者谷歌学者
  6. C.Cadar和K.Sen.软件测试的符号执行:三十年后。Commun公司。ACM,56(2):82-902013年。谷歌学者谷歌学者数字图书馆数字图书馆
  7. C.Calcagno、D.Distefano、J.Dubreil、D.Gabi、P.Hooimeijer、M.Luca、P.W.O'Hearn、I.Papakonstantinou、J.Purbrick和D.Rodriguez。快速进行软件验证。在NASA正式方法研讨会上,2015年第3-11页。谷歌学者谷歌学者交叉引用交叉引用
  8. C.Calcagno、D.Distefano和P.O'Hearn。公开来源的脸书推断:在发货之前识别错误。code.facebook.com博客帖子,2015年6月11日。谷歌学者谷歌学者
  9. C.Calcagno、D.Distefano、P.O'Hearn和H.Yang。足迹分析:发现前提条件的形状分析。在SAS,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  10. C.Calcagno、D.Distefano、P.W.O'Hearn和H.Yang。通过双向拉伸进行成分形状分析。J.ACM,58(6):262011年。谷歌学者谷歌学者数字图书馆数字图书馆
  11. Q.Cao、L.Beringer、A.Gruetter、J.Dods和A.W.Appel。一种用于验证C程序正确性的分离逻辑工具。自动推理杂志。,2018谷歌学者谷歌学者数字图书馆数字图书馆
  12. S.A.Carr、F.Logozzo和M.Payer。使用ccbot自动插入合同。IEEE传输。软件工程,43(8):701-7142017。谷歌学者谷歌学者数字图书馆数字图书馆
  13. T.Chajed、H.Chen、A.Chlipala、M.F.Kaashoek、N.Zeldovich和D.Ziegler。使用崩溃Hoare逻辑验证文件系统:崩溃时的正确性。Commun公司。ACM,60(4):75-842017年。谷歌学者谷歌学者数字图书馆数字图书馆
  14. R.Chapman和F.Schanda。我们到了吗?用SPARK证明工业定理20年。ITP,第17-26页,2014年。谷歌学者谷歌学者交叉引用交叉引用
  15. R.Chapman、N.White和J.Woodcock。敏捷方法能为高完整性软件开发带来什么?CACM,60(10),2017年。谷歌学者谷歌学者数字图书馆数字图书馆
  16. A.Chlipala。大多数是计算分离逻辑中低级程序的自动验证。在PLDI中,第234-245页,2011年。谷歌学者谷歌学者数字图书馆数字图书馆
  17. C.Y.Cho、V.D’Silva和D.Song。BLITZ:针对真实程序的组合边界模型检查。在ASE中,第136-146页,2013年。谷歌学者谷歌学者数字图书馆数字图书馆
  18. A.周。工业静态分析。POPL'14邀请演讲。http://popl.mpi-sws.org/2014/andy.pdf。谷歌学者谷歌学者
  19. A.Chudnov、N.Collins、B.Cook、J.Dodds、B.Huffman和C.Mac-Carthaigh、S.Magill、E.Mertens、E.Mullen、S.Tasiran、A.Tomb和E.Westbrook。亚马逊s2n的持续正式验证。CAV,2018年。谷歌学者谷歌学者
  20. E.M.Clarke、O.Grumberg、S.Jha、Y.Lu和H.Veith。反例引导的抽象细化。在CAV中,第154-1692000页。谷歌学者谷歌学者数字图书馆数字图书馆
  21. E.M.Clarke、D.Kroening和F.Lerda。用于检查ANSI-C程序的工具。在TACAS中,第168-176页,2004年。谷歌学者谷歌学者交叉引用交叉引用
  22. S.A.库克。程序验证公理系统的健全性和完整性。SIAM J.计算。,7(1):70--90, 1978.谷歌学者谷歌学者数字图书馆数字图书馆
  23. P.库索和R.库索。抽象解释:通过构造或近似不动点对程序进行静态分析的统一格模型。第四次持久性有机污染物排放清单,第238-2521977页。谷歌学者谷歌学者数字图书馆数字图书馆
  24. P.库索和R.库索。模块化静态程序分析。在CC中,第159-178页,2002年。谷歌学者谷歌学者数字图书馆数字图书馆
  25. P.Cousot、R.Cousot、M.Fähndrich和F.Logozzo。必要前提条件的自动推断。在VMCAI中,第128-148页,2013年。谷歌学者谷歌学者数字图书馆数字图书馆
  26. P.Cousot、R.Cousot、J.Feret、L.Mauborgne、A.Miné、D.Monniaux和X.Rival。ASTRéE分析仪。第14届员工持股计划,第21-30页,2005年。谷歌学者谷歌学者数字图书馆数字图书馆
  27. A.Das、S.K.Lahiri、A.Lal和Y.Li。天使验证:精确验证模未知。在CAV(1)中,《计算机科学讲义》第9206卷,第324-342页。斯普林格,2015年。谷歌学者谷歌学者数字图书馆数字图书馆
  28. L.de Moura和N.Björner。Z3:高效的SMT求解器。在TACAS中,第337-340页。施普林格,2008年。谷歌学者谷歌学者数字图书馆数字图书馆
  29. D.Detlefs、G.Nelson和J.B.Saxe。简化:用于程序检查的定理证明器。美国医学会期刊,52(3):365-4732005。谷歌学者谷歌学者数字图书馆数字图书馆
  30. I.Dillig、T.Dillich、A.Aiken和M.Sagiv。用于堆操作程序的精确而紧凑的模块化过程摘要。在PLDI,2011年。谷歌学者谷歌学者数字图书馆数字图书馆
  31. T.Dinsdale-Young、L.Birkedal、P.Gardner、M.J.Parkinson和H.Yang。视图:并发程序的组合推理。在POPL中,第287--300页,2013年。谷歌学者谷歌学者数字图书馆数字图书馆
  32. L.N.Q.Do、K.Ali、B.Livshits、E.Bodden、J.Smith和E.R.Murphy-Hill。实时静态分析。ISSTA,第307-317页,2017年。谷歌学者谷歌学者数字图书馆数字图书馆
  33. R.Dockins、A.Foltzer、J.Hendrix、B.Huffman、D.McNamee和A.Tomb。使用软件分析工作台构建程序的语义模型。在VSTTE中,第56-72页,2016年。谷歌学者谷歌学者交叉引用交叉引用
  34. M.D.Ernst、J.H.Perkins、P.J.Guo、S.McCamant、C.Pacheco、M.S.Tschantz和C.Xiao。动态检测可能不变量的daikon系统。科学。计算。程序。,69(1-3):35--45, 2007.谷歌学者谷歌学者数字图书馆数字图书馆
  35. D.G.Feitelson、E.Frachtenberg和K.L.Beck。Facebook的开发和部署。互联网计算,IEEE,17(4):2013年8月17日。谷歌学者谷歌学者数字图书馆数字图书馆
  36. B.菲茨杰拉德和K.-J.斯托尔。持续软件工程:路线图和议程。《系统与软件杂志》,2017年。谷歌学者谷歌学者交叉引用交叉引用
  37. R.贾科巴齐。模块化逻辑程序的溯源分析。1994年国际逻辑程序设计研讨会论文集,第377-392页。麻省理工学院出版社,1994年。谷歌学者谷歌学者数字图书馆数字图书馆
  38. P.戈德弗里德。合成动态测试生成。在POPL,2007年。谷歌学者谷歌学者数字图书馆数字图书馆
  39. P.Godefroid、M.Y.Levin和D.A.Molnar。自动白盒模糊测试。NDSS,2008年。谷歌学者谷歌学者
  40. M.Harman和P.O'Hearn。从初创企业到规模化企业:测试和验证的静态和动态程序分析中的开放问题和挑战(主题论文)。在2018年国际源代码分析和操作工作会议上。谷歌学者谷歌学者
  41. C.Hawblitzel、J.Howell、M.Kapritsos、J.R.Lorch、B.Parno、M.L.Roberts、S.T.V.Setty和B.Zill。Ironfleet:证明实际分布式系统的安全性和活性。Commun公司。ACM,60(7):83-922017年。谷歌学者谷歌学者数字图书馆数字图书馆
  42. C.A.R.霍尔。过程和参数:公理方法。编辑E.Engler,《代数语言语义研讨会》,第102-116页。施普林格,1971年。数学课堂笔记。188谷歌学者谷歌学者交叉引用交叉引用
  43. C.A.R.霍尔。验证编译器:对计算研究的巨大挑战。美国医学会期刊,50(1):63-692003。谷歌学者谷歌学者数字图书馆数字图书馆
  44. T.Hoare、B.Möller、G.Struth和I.Wehrman。并发Kleene代数及其基础。J.日志。阿尔盖布。程序。,80(6), 2011.谷歌学者谷歌学者交叉引用交叉引用
  45. C.B.Jones、P.W.O'Hearn和J.Woodcock。验证软件:一个巨大的挑战。IEEE计算机,39(4):93-952006。谷歌学者谷歌学者数字图书馆数字图书馆
  46. I.T.卡西奥斯。动态框架理论。正式Asp。计算。,23(3):267--288, 2011.谷歌学者谷歌学者数字图书馆数字图书馆
  47. J.C.金。程序验证器。在1971年国际知识产权联合会大会上(1)。谷歌学者谷歌学者
  48. G.Klein、J.Andronick、K.Elphinstone、G.Heiser、D.Cock、P.Derrin、D.Elkaduwe、K.Engelhardt、R.Kolanski、M.Norrish、T.Sewell、H.Tuch和S.Winwood。sel4:操作系统内核的正式验证。Commun公司。ACM,53(6):107-1152010年。谷歌学者谷歌学者数字图书馆数字图书馆
  49. S.K.Lahiri、K.Vaswani和C.A.R.Hoare。差异静态分析:机遇、应用和挑战。在软件工程研究的未来研讨会上,第201-204页,2010年。谷歌学者谷歌学者数字图书馆数字图书馆
  50. C.Larman和V.R.Basili。迭代和增量开发:简要历史。IEEE计算机,36(6):47-562003。谷歌学者谷歌学者数字图书馆数字图书馆
  51. J.R.Larus、T.Ball、M.Das、R.DeLine、M.Fähndrich、J.D.Pincus、S.K.Rajamani和R.Venkatapathy。校正软件。IEEE软件,21(3):92--1002004。谷歌学者谷歌学者数字图书馆数字图书馆
  52. K.R.M.莱诺。与dafny进行可访问的软件验证。IEEE软件,34(6):94-972017。谷歌学者谷歌学者交叉引用交叉引用
  53. K.R.M.Leino和M.Moskal。可用的自动验证。在可用验证车间。http://fm.csl.sri.com/UV10/, 2010.谷歌学者谷歌学者
  54. K.Mao、M.Harman和Y.Jia。Sapienz:android应用程序的多目标自动化测试。ISSTA,第94-105页。ACM,2016年。谷歌学者谷歌学者数字图书馆数字图书馆
  55. K.L.McMillan。克雷格插值在模型检验中的应用。在TACAS中,第1-12页,2005年。谷歌学者谷歌学者数字图书馆数字图书馆
  56. B.P.Miller、L.Fredriksen和B.So。UNIX实用程序可靠性的实证研究。Commun公司。美国医学会,33(12):32-441990年。谷歌学者谷歌学者数字图书馆数字图书馆
  57. D.A.Naumann博士。为霍尔逻辑推导出尖锐的适应规则,1999年。史蒂文斯理工学院,CS Rept 9906。谷歌学者谷歌学者
  58. P.O’Hearn、J.Reynolds和H.Yang。关于改变数据结构的程序的局部推理。第15届CSL,第1-19页,2001年。谷歌学者谷歌学者数字图书馆数字图书馆
  59. 阿米尔·普努利。并发程序的时间语义。西奥。计算。科学。,13:45--60, 1981.谷歌学者谷歌学者交叉引用交叉引用
  60. D·A·拉莫斯和D·R·恩格勒。受约束的符号执行:真实代码的正确性检查。在USENIX安全研讨会上,第49-64页,2015年。谷歌学者谷歌学者数字图书馆数字图书馆
  61. T.W.Reps、S.Horwitz和S.Sagiv。通过图形可达性进行精确的过程间数据流分析。在POPL中,第49-61页,1995年。谷歌学者谷歌学者数字图书馆数字图书馆
  62. J.C.雷诺兹。类型、抽象和参数多态性。在IFIP大会上,第513-5231983页。谷歌学者谷歌学者
  63. J.C.雷诺兹。分离逻辑:用于共享可变数据结构的逻辑。第17届LICS,第55-742002页。谷歌学者谷歌学者数字图书馆数字图书馆
  64. C.Sadowski、E.Aftandilian、A.Eagle、L.Miller-Cushon和C.Jaspan。在谷歌构建静态分析工具的经验教训。CACM,2018年。谷歌学者谷歌学者数字图书馆数字图书馆
  65. M.N.Seghir和D.Kroening。反例引导的前提推理。在ESOP中,第7792卷,第451-471页,2013年。谷歌学者谷歌学者数字图书馆数字图书馆
  66. F.W.Vaandrager。模型学习。Commun公司。ACM,60(2):86-952017年。谷歌学者谷歌学者数字图书馆数字图书馆
  67. F.Xu,M.Fu,X.Feng,X.Zhang,H.Zhang和Z.Li。一个实用的抢占式操作系统内核验证框架。CAV,2016年。谷歌学者谷歌学者
  68. H.Yang、O.Lee、J.Berdine、C.Calcagno、B.Cook、D.Distefano和P.W.O'Hearn。系统代码的可缩放形状分析。在CAV,2008年。谷歌学者谷歌学者数字图书馆数字图书馆
  69. G.Yorsh、E.Yahav和S.Chandra。生成准确简明的程序摘要。在POPL中,第221-234页。ACM,2008年。谷歌学者谷歌学者数字图书馆数字图书馆

索引术语

  1. 持续推理:衡量形式化方法的影响

    建议

    评论

    登录选项

    检查您是否可以通过登录凭据或您的机构访问本文。

    登录

    完全访问权限

    • 发布于

      封面图片ACM会议
      LICS’18:第33届ACM/IEEE计算机科学逻辑年会论文集
      2018年7月
      960页
      国际标准图书编号:9781450355834
      内政部:10.1145/3209108

      版权所有©2018所有者/作者

      本作品根据Creative Commons Attribution International 4.0许可证授权。

      出版商

      计算机协会

      美国纽约州纽约市

      出版历史

      • 出版:2018年7月9日

      检查更新

      作者标记

      限定符

      • 研究论文
      • 研究
      • 推荐有限公司

      接受率

      总体验收率143属于386提交文件,37%

    PDF格式

    以PDF文件查看或下载。

    PDF格式

    电子阅读器

    使用eReader联机查看。

    电子阅读器