电子邮件:我在麻省理工大学的姓
办公地址:
32-G886型麻省理工学院CSAIL,统计中心瓦萨尔街32号剑桥MA 02139美国
研究兴趣
我对编程语言和验证、交互式定理证明、语言设计、编译器、规范和软件工程感兴趣。
目前,我正在研究基岩2项目。它包括一个非常简单的类C源语言,一个程序逻辑,以及一个编译器RISC-V型机器代码,由指定风险cv-cq。我们小组的另一个项目,卡米,开发了RISC-V处理器,并证明了其正确性风险cv-cqspec,它使我们能够证明关于整个软件栈行为的端到端定理。该项目的第一个里程碑是物联网灯泡,我们在PLDI’21上展示了它(参见纸张和视频). 早些时候,我还在2019年RISC-V峰会,你可以找到录像在这里.
难以将未定义的行为和非确定性结合起来?➔尝试全语义学!
在Bedrock2上工作时,我的同事安德烈斯·埃尔布森我提出了一种编程语言语义风格,我们认为这种风格在有未定义行为和不确定性而不是使用传统的smallstep或bigstep操作语义。稍晚一点,我们的顾问亚当·克利帕拉与…聊天亚瑟·查古埃罗(Arthur Charguéraud)他们发现他也发现了同样的语义学风格,但在函数式语言中使用它,而我们在命令式语言中则使用它。我们一起写了一篇关于它的论文,你可以找到预印本在这里,或者如果你喜欢简短的介绍,你也可以看看这个博客文章.
过去的项目
- 我当时正在参观托比·默里博士在墨尔本大学花10周时间为C编写信息流控制证明
- 在为期六个月的硕士论文实习期间,我与Andrew Appel教授普林斯顿大学的小组,改进他们的证明自动化策略验证的软件工具链,并使用它验证AES加密实施mbed TLS的
- 我在EPFL攻读硕士期间,曾与马丁·奥德斯基教授合作斯卡拉实验室在从属对象类型项目,Scala类型系统核心的形式化,在纸上写证明并使用证明助手Twelf公司和Coq公司
- 在EPFL的一个类项目中,我参与了里昂,Viktor Kuncak教授的Scala程序验证和合成工具组
- 在Scala实验室工作期间,我为发呆的,一个新的Scala编译器,用作研究Scala的新语言概念和编译器技术的研究平台
- 在我的学士论文中,我用PLT兑换
出版物
[9] |
Samuel Gruetter、Viktor Fukala和Adam Chlipala。交互式验证助手中的实时验证。PLDI’24(即将出现)2024年6月。 [ PDF格式 |代码 ] |
[8] |
安德烈斯·埃尔布森(Andres Erbsen)、杰德·菲利浦(Jade Philipoom)、达斯汀·贾姆纳(Dustin Jamner)、阿什利·林(Ashley Lin)、塞缪尔·格鲁特(Samuel Gruetter)、,Clément Pit-Claudel和Adam Chlipala。密码的基础集成验证服务器。PLDI’24(即将出现)2024年6月。 [ PDF格式 |代码 ] |
[7] |
托马斯·布尔盖特(Thomas Bourgeat)、伊恩·克莱斯特(Ian Clester)、安德烈斯·埃布森(Andres Erbsen)、塞缪尔·格鲁特(Samuel Gruetter)、普拉塔普·辛格(Pratap Singh)、,安迪·赖特和亚当·克利帕拉。灵活的教学——通过抽象单数设置语义(经验报告)。美国计算机学会程序设计语言会议录,7(ICFP):192:108--192:124,2023年8月。 [ 内政部 |PDF格式 |代码 ] |
[6] |
亚瑟·查古埃罗(Arthur Charguéraud)、亚当·克利帕拉(Adam Chlipala)、安德烈斯·埃尔布森(Andres Erbsen)和塞缪尔·格鲁特(Samuel Gruetter)。全能语义学:平稳处理非决定论。程序设计语言与系统学报,2023年3月45日(1):5:1--5:43。 [ 内政部 |PDF格式 |代码 ] |
[5] |
安德烈斯·埃尔布森(Andres Erbsen)、塞缪尔·格鲁特(Samuel Gruetter)、乔温·崔(Joonon Choi)、克拉克·伍德(Clark Wood)和亚当·克利帕拉(Adam Chlipala)。跨软件和硬件的集成验证简单嵌入式系统。PLDI’212021年6月。 [ 内政部 |PDF格式 |代码 ] |
[4] |
曹勤祥(Qinxiang Cao)、贝林格(Lennart Beringer)、格鲁特(Samuel Gruetter)、多兹(Josiah Dodds)和安德鲁(Andrew W。阿佩尔。VST-Floyd:验证正确性的分离逻辑工具C程序。自动化推理杂志,61(1-4):367--4222018年6月。 [ 内政部 |PDF格式 |代码 ] |
[三] |
Samuel Gruetter和Toby Murray。短文:走向信息流推理Real-World C代码。在2017年编程研讨会会议记录安全语言和分析——2017年公共安全标准,第43-48页,2017年,美国得克萨斯州达拉斯。ACM出版社。 [ 内政部 |PDF格式 |代码 ] |
[2] |
Samuel Gruetter、Daniel Graf和Benjamin Schmid。看着他们战斗!瑞士创意任务锦标赛信息学奥林匹克。信息学奥林匹克运动会,10(1):73--85,2016年7月。 [ 内政部 |PDF格式 |代码 ] |
[1] |
纳达·阿明(Nada Amin)、塞缪尔·格鲁特(Samuel Gruetter)、马丁·奥德斯基(Martin Odersky)、蒂亚克·隆普夫(Tiark Rompf)和桑德罗·斯塔基(Sandro Stucki)。依赖对象类型的本质。改变世界的成功列表:专用论文菲利普·沃德勒60岁生日致辞,第249--272页,2016年。 [ 内政部 |PDF格式 |代码 ] |
预打印和报告
[9] |
Samuel Gruetter、Thomas Bourgeat和Adam Chlipala。验证不支持硬件的软件仿真说明。2024年3月。 [ PDF格式 |代码 ] |
[8] |
塞缪尔·格鲁特。Coq猜想的反例。CoqPL’19公司2019年1月。 【PDF格式 |代码 ] |
[7] |
Samuel Gruetter和Toby C。默里。VST Flow:关于真实世界的细粒度低级推理C代码。墨尔本大学技术报告2017年9月。 [ PDF格式 |代码 ] |
[6] |
塞缪尔·格鲁特。改进被验证人的Coq证明自动化策略软件工具链,基于验证C的案例研究AES加密算法的实现。普林斯顿大学EPFL硕士论文2017年4月。 [ PDF格式 |代码 ] |
[5] |
塞缪尔·格鲁特。将Scala连接到DOT。EPFL理学硕士学期项目2016年6月。 [ PDF格式 |代码 ] |
[4] |
塞缪尔·格鲁特。存在量化超过的依赖对象类型物体。研究报告,EPFL2015年7月。 [ PDF格式 |代码 ] |
[三] |
塞缪尔·格鲁特。改进Leon的终止检查程序。项目报告,EPFL2015年6月。 [ PDF格式 |代码 ] |
[2] |
塞缪尔·格鲁特。机械检查型安全防护。EPFL理学硕士学期项目2014年6月。 [ PDF格式 |代码 ] |
[1] |
塞缪尔·格鲁特。类型系统的探索。EPFL理学学士学期项目2013年6月。 [ PDF格式 |代码 ] |
教育类
行业经验
- 2021年夏:在谷歌研究中心银橡项目,使用卧室2正式验证中使用的外围设备的驱动程序OpenTitan公司信任根,并将软件正确性证明与硬件正确性证明连接起来
- 2019年夏季:与鲁斯坦·莱诺亚马逊自动化推理小组(Amazon’s Automated Reasoning Group)Amazon的S3加密客户端在Dafny中,一种支持验证的编程语言。编写并验证了与现实系统(如Amazon的S3存储服务)交互的软件规范
- 2015年秋季:在伯尔尼Netcetera AG进行为期6个月的软件工程实习,在scrum团队中工作,开发具有Java/Oracle DB/Spring后端和AngularJS/TypeScript前端的Web应用程序
- 2012年夏季:在印度班加罗尔埃森哲公司的Java实习,开发了一个web界面,JSF/Enterprise JavaBeans可以监控数百个服务器和数据库