跳到主要内容
10.1145/503272.503275acm会议文章/章节视图摘要出版物页面波普尔会议记录会议集合
第条

采矿规范

出版:2002年1月1日 出版历史记录
  • 获取引文提醒
  • 摘要

    程序验证是提高程序质量的一种很有前途的方法,因为它可以搜索所有可能的程序执行中的特定错误。然而,需要正式描述正确的行为或错误是广泛采用程序验证的主要障碍,因为程序员历来不愿意编写正式规范。自动化制定规范的过程将消除程序验证的障碍,并提高其实用性。本文描述了规范挖掘是一种机器学习方法,用于发现代码在与应用程序接口或抽象数据类型交互时必须遵守的协议的正式规范。从一个工作程序调试得足够好以揭示正确协议的强烈提示这一假设出发,我们的工具通过观察程序执行并将频繁的交互模式简明扼要地总结为捕获时间和数据依赖性的状态机来推断规范。这些状态机可以由程序员进行检查,以完善规范并识别错误,还可以被自动验证工具用来查找错误。我们在采矿工具方面的初步经验很有希望。我们学习到的规范不仅捕获了正确的协议,还发现了严重的错误。

    工具书类

    [1]
    Thomas Ball、Rupak Majumdar、Todd Millstein和Sriram K.Rajamani。C程序的自动谓词抽象。《2001年ACM SIGPLAN编程语言设计与实现会议记录》,ACM SIGPLAN通告第36卷,第203-213页,2001年7月。]]
    [2]
    Thomas Ball和Sriram K.Rajamani。自动验证接口的临时安全属性。第八届国际SPIN软件模型检查研讨会论文集,计算机科学课堂讲稿,第2057页,第103-122页,2001年5月。]]
    [3]
    托马斯·鲍尔和斯里拉姆·拉贾马尼。Bebop:一个路径敏感的过程间数据流引擎。在2001年ACM SIGPLAN-SOGSOFT软件工具和工程程序分析研讨会的会议记录中,ACM SIGPLAN通知,第97-103页,2001年7月。]]
    [4]
    A.W.Biermann和J.A.Feldman。从有限状态机的行为样本合成有限状态机。IEEE计算机学报,21:591-5971972。]]
    [5]
    威廉·布什(William R.Bush)、乔纳森·平卡斯(Jonathan D.Pincus)和大卫·西拉夫(David J.Sielaff)。用于查找动态编程错误的静态分析器。软件实践与经验,30:775-802,2000年。]]
    [6]
    Andy Chou、Junfeng Yang、Benjamin Chelf、Seth Hallem和Dawson Engler。操作系统错误的实证研究。第18届ACM操作系统原理研讨会(SOSP18)会议记录,第73-88页,2001年10月。]]
    [7]
    道格拉斯·E·科默和大卫·L·史蒂文斯。使用TCP/IP进行互联。客户端-服务器编程和应用程序,BSD套接字版本。Prentice-Hall,Englewood Cliffs,NJ 07632,USA,1993年。]]
    [8]
    乔纳森·库克和亚历山大·沃尔夫。从基于事件的数据中发现软件过程模型。ACM软件工程与方法汇刊,7(3):215-2491998年7月。]]
    [9]
    Robert DeLine和Manuel Fahndrich。在低级软件中实施高级协议。《SIGPLAN’01编程语言设计与实现(PLDI)会议记录》,第59-69页,2001年6月。]]
    [10]
    道森·恩格尔(Dawson Engler)、大卫·于晨(David Yu Chen)、赛斯·哈勒姆(Seth Hallem)、安迪·周(Andy Chou)和本杰明·切尔夫(Benjamin Chelf)。错误作为异常行为:推断系统代码中错误的一般方法。第18届ACM操作系统原理研讨会(SOSP18)会议记录,第57-72页,2001年10月。]]
    [11]
    迈克尔·恩斯特(Michael D.Ernst)、杰克·科克雷尔(Jake Cockrell)、威廉·格里斯沃尔德(William G.Griswold)和大卫·诺特金(David Notkin)。动态发现可能的程序不变量以支持程序进化。IEEE软件工程学报,27(2):1-252001年2月。]]
    [12]
    科马克·弗拉纳根(Cormac Flanagan)和K.Rustan M.Leino。胡迪尼是ESC/java的注释助手。《2001年FME国际研讨会:提高软件生产率的正式方法》,LNCS,2001年第1卷。]]
    [13]
    Anup K.Ghosh、Christoph Michael和Michael Shatz。基于学习程序行为的实时入侵检测系统。在RAID 2000中,《计算机科学讲义》第1907卷,第93-1092000页。]]
    [14]
    E马克黄金。语言识别在限制范围内。信息与控制,10:447-4741967。]]
    [15]
    米歇尔·冈德兰和米歇尔·米努克斯。图形和算法。约翰·威利父子公司,1984年。]]
    [16]
    迈克尔·卡恩斯(Michael Kearns)、伊莎·曼苏尔(Yishay Mansour)、达娜·罗恩(Dana Ron)、罗尼特·鲁宾菲尔德(Ronitt Rubinfeld)、罗伯特·夏皮雷(Robert E.Schapire)和琳达·塞利(Linda Sellie)。关于离散分布的可学习性。1994年第二十届ACM计算理论研讨会论文集,第273-282页。]]
    [17]
    詹姆斯·拉鲁斯(James R.Larus)和埃里克·施纳尔(Eric Schnarr)。EEL:机器相关的可执行文件编辑。1995年6月,《SIGPLAN’95编程语言设计与实现(PLDI)会议记录》,第291-300页。]]
    [18]
    Christoph Michael和Anup Ghosh。使用有限自动机挖掘入侵检测的执行数据:初步报告。在RAID 2000中,计算机科学课堂讲稿第1907卷,第66-79页,2000年。]]
    [19]
    威廉·格里斯沃尔德·迈克尔·恩斯特(William G.Griswold Michael D.Ernst)、亚当·切斯勒(Adam Czeisler)和大卫·诺特金(David Notkin)。快速检测相关程序不变量。2000年6月第22届国际软件工程会议论文集。]]
    [20]
    凯文·墨菲(Kevin P.Murphy)。被动学习有限自动机。技术报告96-04-017,圣菲研究所,1996年。]]
    [21]
    阿南德·拉曼(Anand Raman)、彼得·安德烈(Peter Andreae)和乔恩·帕特里克(Jon Patrick)。用于pfsa推理的波束搜索算法。模式分析与应用,1(2),1998年。]]
    [22]
    Anand V.Raman和Jon D.Patrick。推导PFSA的sk-strings方法。1997年第14届机器学习国际会议(ICML97)上关于自动归纳、语法推理和语言习得的研讨会论文集。]]
    [23]
    S.P.Reiss和M.Renieris,编码程序执行。2001年5月12日至19日,加利福尼亚州洛斯阿拉米托斯,第23届国际软件工程会议记录(ICSE-01),第221-232页。IEEE计算机协会。]]
    [24]
    达娜·罗恩(Dana Ron)、约拉姆·辛格(Yoram Singer)和纳夫塔利·蒂什比(Naftali Tishby)。关于非循环概率有限自动机的可学习性和使用。《第八届计算学习理论年会论文集》,第31-40页。ACM出版社,纽约州纽约市,1995年。]]
    [25]
    大卫·罗森塔尔。客户端间通信约定手册(ICCCM),2.0版。X Consortium,Inc.和Sun Microsystems,1994年。X11R6分发的一部分。]]
    [26]
    Robert Endre Tarjan。一个好的但不是线性的集合并集算法的效率。美国医学会杂志,22(2):215-2251975。]]
    [27]
    大卫·瓦格纳和德鲁·迪恩。通过静态分析进行入侵检测。2001年IEEE安全与隐私研讨会论文集,2001年5月。]]

    引用人

    查看全部

    建议

    评论

    信息和贡献者

    问询处

    发布于

    封面图片ACM会议
    POPL'02:第29届ACM SIGPLAN-SIGACT编程语言原理研讨会会议记录
    2002年1月
    351页
    国际标准图书编号:1581134509
    内政部:10.1145/503272
    • 封面图片ACM SIGPLAN注意事项
      ACM SIGPLAN通知 第37卷第1期
      2002年1月
      342页
      国际标准编号:0362-1340
      EISSN公司:1558-1160
      内政部:10.1145/565816
      期刊目录
    如果复制品不是为了盈利或商业利益而制作或分发的,并且复制品的第一页载有本通知和完整引文,则允许免费制作本作品的全部或部分数字或硬拷贝以供个人或课堂使用。必须尊重ACM以外的其他人对本作品组成部分的版权。允许用信用证进行摘要。要以其他方式复制或重新发布、在服务器上发布或重新分发到列表,需要事先获得特定许可和/或收取费用。从请求权限[电子邮件保护]

    赞助商

    出版商

    计算机协会

    美国纽约州纽约市

    出版历史记录

    出版:2002年1月1日

    权限

    请求对此文章的权限。

    检查更新

    限定符

    • 第条

    会议

    POPL02:2002年第29届ACM SIGPLAN-SIGACT编程语言原理年会
    2002年1月16日至18日
    俄勒冈州波特兰市

    接受率

    POPL'02论文接受率128份中的28份,22%;
    4130份提交文件的总体接受率为824份,20%

    即将召开的会议

    流行乐'25
    第52届ACM SIGPLAN编程语言原理年会
    2025年1月19日至25日
    丹佛,有限公司,美国

    贡献者

    其他指标

    文献计量学和引文

    文献计量学

    文章指标

    • 下载次数(过去12个月)142
    • 下载次数(最近6周)15

    其他指标

    引文

    引用人

    查看全部
    • (2024)基于可伸缩树的注册自动机学习系统构建和分析的工具和算法10.1007/978-3-031-57249-4_5(87-108)在线发布日期:2024年4月6日
    • (2024)汽车行业开发过程中的正式运行时错误检测验证、模型检查和抽象解释10.1007/978-3-031-50524-9_1(3-26)在线发布日期:2024年1月15日
    • (2024)度量时态逻辑中高效可监控公式的合成验证、模型检查和抽象解释10.1007/978-3-031-50521-8_13(264-288)在线发布日期:2024年1月15日
    • (2023)数据库应用程序的访问控制:超越策略实施第19届操作系统热点研讨会会议记录10.1145/3593856.3595905(223-230)在线发布日期:2023年6月22日
    • (2023)比较综合:通过查询学习接近最优的网络设计美国计算机学会程序设计语言会议录10.1145/35711977:POPL(91-120)在线发布日期:2023年1月11日
    • (2023)雕刻UI测试以生成API测试和API规范第45届国际软件工程会议记录10.1109/ICSE48619.2023.00167(1971-1982)在线发布日期:2023年5月14日
    • (2023)PURLTL:从测试中的不完整痕迹中挖掘LTL规范2023年第38届IEEE/ACM国际自动化软件工程会议(ASE)10.1109/ASE56229.2023.00202(1766-1770)在线发布日期:2023年9月11日
    • (2023)代码搜索引擎和本地图书馆API使用的实证研究经验软件工程10.1007/s10664-023-10304赫兹28:3在线发布日期:2023年4月13日
    • (2023)线性时序逻辑的规范草图自动化验证和分析技术10.1007/978-3-031-45332-8_2(26-48)在线发布日期:1923年10月19日
    • (2022)行为异常API文档和实现之间的混合推理方法及其应用第37届IEEE/ACM自动化软件工程国际会议论文集10.1145/3551349.3560434(1-13)在线发布日期:2022年10月10日
    • 显示更多引用者

    视图选项

    获取访问权限

    登录选项

    完全访问权限

    查看选项

    PDF格式

    以PDF文件查看或下载。

    PDF格式

    电子阅读器

    使用联机查看电子阅读器.

    电子阅读器

    媒体

    数字

    其他

    桌子

    分享

    分享

    共享此出版物链接

    在社交媒体上分享