阿巴迪 - 莱诺对象逻辑的指称语义与安全类型语言设计
1. 阿巴迪 - 莱诺逻辑的可靠性证明
在阿巴迪 - 莱诺逻辑中,我们可以定义判断的语义并证明关键引理。
- 有效性定义 :$\Gamma \models a : A :: T$ 当且仅当对于所有存储规范 $\Sigma \in RecLoc(Spec)$,对于所有 $\rho \in ||\Gamma|| {\Sigma}$ 和所有 $\sigma \in [[\Sigma]]$,如果 $[[a]] {\rho \sigma} = (v, \sigma’)$,那么 $(v, \sigma’) \in [[[\Gamma] \vdash A]] {\rho}$ 且 $(\pi {Val}(\sigma), v, \pi_{Val}(\sigma’)) \in [[[\Gamma] \vdash T]] {\rho}$。
- 可靠性和不变性引理 :假设
- (H1) $\Gamma \vdash a : A :: T$
- (H2) $\Sigma \in RecLoc(Spec)$ 是一个存储规范
- (H3) $\rho \in ||\Gamma|| {\Sigma}$
则存在 $\varphi \in [St \times SF \times Spec \rightharpoonup Spec \times SF]$,使得对于所有 $\Sigma’ \succeq \Sigma$ 和所有 $(\sigma’, \varphi’) \in fix(\Phi)