LNSKt 系统的规则定义、可推导性编码与切割消除
1. LNSKt 规则集定义
为了从左式得到右式,我们定义了 nslcext 和 nclcrule 。 nslcext 用于将给定上下文 G 扩展到线性嵌套序列(LNS) ls 的左侧,而 nclcrule 用于扩展由 b2lrules 定义的规则实例集合,允许通过 nslcext 统一地将上下文添加到前提和结论中。
以下是相关定义:
Definition nslclext W (G ls : list W) := G ++ ls.
Inductive nslclrule W (sr : rlsT (list W)) : rlsT (list W) :=
| NSlclctxt : forall ps c G, sr ps c ->
nslclrule sr (map (nslclext G) ps) (nslclext G c).
如果 r 是 nslclrule W sr 类型,那么它一定是通过向 sr 的某个规则实例的所有前提和结论添加(可能为空的)上下文得到的。
基于此,我们可以通过以下 LNSKt_rules 定义完整的 LNSKt 规则集: <
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



