{# —— Umami 统计(Cloud 版)—— #}

9.10

Coq

找到了一份不错的入门教程 迈克·纳哈斯的 Coq 教程(中文翻译) ,可惜的是,尽管作者从 2021.10.4 就开始翻译,最终只翻译了不到一半,只能看原文 Mike Nahas's Rocq (formerly known as Coq) Tutorial,好处是它提供了 Coq 源代码版本,可以边读边证明 —— 这一点和 Software Foundations 是一样的。

Coq 基于柯里-霍华德同构(Curry-Howard Isomorphism),在 Coq 里,命题是类型,命题的证明是这个类型的实例(在 Coq 里不叫 instance,而是 inhabitant)。要证明一个命题,就是要构造出一个该类型的实例。理解了这个底层逻辑后,就是学习各种策略(Tactics),同时了解各种类型的命题如何证明。然而,深入理解某些部分或许需要一点类型系统基础,例如依赖类型,Cic。

第一个自己写的证明:

Theorem negb_is_not : (forall a, Is_true (negb a) <-> (~(Is_true a))).
Proof.
  intros a.
  unfold iff.
  refine(conj _ _).

    case a.
      simpl.
      intro f.
      case f.

      simpl.
      intros t f.
      case f.

  
    case a.
      simpl.
      intros H.
      exact (H I).
      
      simpl.
      intros H.
      exact I.
Qed.

在知乎上看到一篇文章 Coq 里的排中律,由此了解到 PKU 开了一门 软件科学基础,就是仿了 CIS 5000,课程页面提供了 Software Foundations中文版,并且同样开放了所有讲义!

最后,对 Mike Nahas's Rocq Tutorial 提出改进意见:

在定理 thm_exists_basics 的证明中,simpl. 一步是无效的,因为没有提前 unfold basic_predicate,导致 simpl. 什么都做不了,据 GPT 所说,最后 exact I. 有效是因为 exact 策略会自动做内核的可换算性检查(convertibility check),听不懂~

教材

作为和班长熟悉的后果,中午被叫去教材科搬教材。说是搬教材,实际上就是清点数量,然后把教材搬到一米远的平板货车上。抽象的是,每个班都要派一个同学 “跟车”,就是爬上装书的栏板式货箱,跟着车一起到各个宿舍楼下分书。

跟车1.jpg

最终我承担了这个岗位,“跟车” 看起来和游街没什么区别,或许一个更现代的说法是 “公开处刑”,但我想取该词的本意,所以在这里反而不是很适合。

跟车2.jpg

每当抵达目的地时,都有一些同学在宿舍门前等待。在这个批次中,一共有 5 个班的教材,也就有 5 个 “跟车” 的同学。我的目的地 D19 被排在第二个,还有一个同学的目的地也是 D19,于是在宿舍门前等待的同学就更多。

到这里,短暂的游街算是结束了,我们能听见其中有些同学称这种车为 “翻斗车”。我因此兴奋了一会儿:自己居然坐上所谓的 “翻斗车” 了!可是上网查了才知道,翻斗车并不长这样,相差甚远,非常失望。

这学期只买了三本教材:《数学分析(上)》,《数学分析(中)》和 《国家安全教育读本》,程序设计课用的是上学期的数据结构教材,看来课程不会太简单。数学分析教材和微积分教材一样,是交大自编的,封面和封底都是蓝色硬壳,别具特色。

为了赶上搬教材,没空吃一顿正经的早中饭,结果是吃了两袋小浣熊方便面——宿舍唯一的零食。搬完书去水果店买了香蕉和一瓶荔枝味味全每日。当然,吃一堑长一智,这次把香蕉挂在了自行车把手上,没有再发生爆炸。

唯时代尔

在水源上刷今年的保研帖,一个电院 AI 的楼主因为 rank 不够,无缘推免,开始备战考研。今年的推免情况比往年惨烈,一大原因就是出国比例减少,顺延下来的推免名额就减少了。在帖子里看到,“我认识的北大图灵rank1都被鸽完了,正在找港新,清华智班的同学也可能去港新”,诶,cxs,带我走吧!

隔壁互联网秋招则是都在吐槽只发实习 offer,不太了解,不好评价

校园跑2.jpg

今天是六分配,在【体测】中能够获得【10 分】的好成绩!