UniMate AI

COMP4161

高级软件验证专题

6 学分难度 超难

课程定位 COMP4161/9161 是 UNSW 计算机专业最具‘数学信仰’的顶级硬核课。在关键安全系统(如航天、医疗、内核开发)中,常规测试已不足以保证零 Bug。这门课解决了软件科学的终极命题:如何利用‘形式化证明 (Formal Proof)’在数学上百分之百地确信代码是正确的?它是通往高级编译器开发、高安全性系统架构、及顶级研究机构(如 Data61, seL4 团队)的唯一通道。它将编程彻底升华为‘构造数学证明’的过程。 技术栈与学习内容 课程以 Isabelle/HOL(高阶逻辑交互式定理证明器)为核心工具。学习内容涵盖:自然演绎、高阶逻辑语义、函数式编程的形式化建模、归纳证明技巧、引理与定理的结构化撰写、以及针对复杂数据结构与算法(如红黑树、排序算法)的正确性验证。此外,课程引入了自动化证明策略及其在工业级内核(seL4)验证中的真实应用。学生将学习如何利用计算机辅助证明来消灭一切边界错误。 课程结构 10 周理论高压与交互式证明实操结合。前三周夯实逻辑推演基础,中期全面攻克 HOL 建模与引理构造,后期转向大型软件系统的分层验证。评估体系极具智力挑战:包含每周的‘逻辑迷宫’级 Lab、两个要求达到科研严谨性的证明项目(Assignment,涉及证明一个非平凡算法的完整属性)、以及一场极其考验符号掌控能力的期末综合大考。该课极其看重‘证明的优雅性与零死角逻辑’。 适合人群 计算机专业大四、荣誉学位或研究生。必须具备极其深厚的离散数学和函数式编程基础。如果你对‘绝对真理’痴迷、或者想参与 seL4 级别的神级项目,这门课是你的归宿。建议每周投入 25 小时以上,做好‘为了一个引理思考两天’的准备。

Course decision

选课先看

先看考核重心、截止节奏和入门要求,再决定这门课是否适合你的学期安排。

考核总权重

100%

3 项考核

最高单项

40%

Final Examination

期末考试

以官方 outline 为准

Hurdle

1 项

需要单独满足

Deadline map

考核时间线

按截止周排列作业节点;持续考核会保留在下方完整考核结构中。

Week 9

Algorithmic Verification Project

35%

独立证明一个具有挑战性的数据结构或算法(如 Huffman 树)的完整正确性。

Week 10

Weekly Interaction Labs

25%

在 Isabelle 界面完成的每周证明挑战,强调独立构造引理的能力。

Week 11

Final Examination

40%

极具区分度的理论与实操结合笔试,包含大量手写逻辑规则推导与证明树构造。

Syllabus

每周大纲

默认只展示每周独有的知识重点;节奏、考核、Tutorial 和避坑信息按需展开。

  1. 1

    逻辑与 Isabelle 导论

    自然演绎法复习,Isabelle 环境搭建,简单命题逻辑证明规则。

  2. 2

    高阶逻辑 (HOL) 基础

    λ-演算在 HOL 中的作用,类型系统,全称与存在量词的交互推导。

  3. 3

    函数式建模与递归证明

    在 Isabelle 中定义递归函数,结构归纳法 (Structural Induction) 核心技巧。

  4. 4

    自动化证明策略

    Simp, Auto, Blast 等 Tactics 的底层逻辑,如何引导搜索器解决复杂引理。

  5. 5

    数据结构形式化

    列表、集合与树的属性描述,证明排序算法的单调性与排列一致性。

  6. 6

    灵活性周 (Flex Week)

    复习归纳法逻辑,冲刺第一个大型算法验证 Assignment,调试证明脚本。

  7. 7

    高阶证明:引理库建设

    如何拆解大型定理为微小引理,处理无限结构与共归纳初步。

  8. 8

    Hoare 逻辑与命令式代码验证

    前置条件、后置条件与不变性,利用 Weakest Precondition 证明 C 语言片段。

  9. 9

    系统级验证:seL4 案例分析

    微内核完整性证明架构,抽象规范 vs 实现代码的一致性映射。

  10. 10

    证明优化与全课总结

    减少证明步骤,提高脚本可读性;全学期逻辑版图闭环大复盘。

Assessment

考核结构

Weekly Interaction Labs

在 Isabelle 界面完成的每周证明挑战,强调独立构造引理的能力。

25%

Week 10

Algorithmic Verification Project

独立证明一个具有挑战性的数据结构或算法(如 Huffman 树)的完整正确性。

35%

Week 9

Final ExaminationHurdle

极具区分度的理论与实操结合笔试,包含大量手写逻辑规则推导与证明树构造。

40%

Week 11

From Seniors

学长留下的

基础信息谁都查得到,真正值钱的是过来人的经验。

学姐说

比你早一年的学长留下的真实经验 —— ChatGPT 给不了。

这门课还没有学长经验,你可以是第一个 —— 注册后在课内分享。

往年考点 / 踩坑

这门课暂无往年考点记录。

毕业生去向(整体)

下面是匠人学院毕业生整体去过的公司分布(来自脱敏校友证言)。这是全平台的总体去向,不代表选这门课的人一定去这些公司。

统计自 317 份脱敏校友证言

Deloitte

6 位校友

岗位:Graduate Program · Graduate Consulting · Platform Engineer · Web developer · Platform engineer

Zerologix

4 位校友

岗位:Frontend Dev · junior frontend developer · Front-end Developer · Full Stack Developer

Servian

4 位校友

岗位:Full-stack Developer · Data Engineer · Consultant

关于这块数据,我们说实话

雇主墙来自脱敏毕业生证言(testimonials)的整体分布,无法关联到具体学员或其所选课程;仅作为毕业生去向的总体社会证明展示。

我们没有"某位学长选了这门课、后来进了哪家公司"这种可查询的个人去向档案 —— 校友证言是脱敏的,无法关联到具体的人或他选过的课。所以这里只给整体分布,不给个人路径,不编。