类型级计算与哈夫曼编码解码的实现
1. 列表表达式简化器
在处理列表表达式时,我们可以使用简化器来优化表达式的表示。简化器的核心在于对列表操作进行重关联和映射操作的展开,以得到更简洁的表达式。
1.1 单步简化函数
单步简化函数 Lr-simp-step 用于对列表表达式进行一步简化。以下是该函数的定义:
Lr-simp-step : {A : Set}(t : Lr A) Ñ Lr A
Lr-simp-step ((t1a ++r t1b) ++r t2) = t1a ++r (t1b ++r t2)
Lr-simp-step ((x ::r t1) ++r t2) = x ::r (t1 ++r t2)
Lr-simp-step ([]r ++r t2) = t2
Lr-simp-step ((l r) ++r t2) with is-emptyr t2
Lr-simp-step ((l r) ++r t2) | tt = l r
Lr-simp-step ((l r) ++r t2) | ff = ((l r) ++r t2)
Lr-simp-step ((mapr f t1) ++r t2) with is-emptyr t2
Lr-simp-step ((mapr f t1) ++r t2) | tt = mapr f t1
Lr-simp-step ((mapr f t1) ++r t2) | ff = ((mapr f t1) ++r t2)
Lr-simp-step (mapr f (t1 ++r t2)) =
(mapr f t1) ++r (ma
类型级计算与哈夫曼编解码实现
超级会员免费看
订阅专栏 解锁全文
1571

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



