Bird Meertens Formalism--homomorphism -part 2

Bird Meertens Formalism--homomorphism 

上一篇有点长,我分开来写

↑#:定义为返回长度较长的序列。长度相同时返回字典序小的。

长度对++有分配率

x ++ (y # z) = (x ++ y) # (x ++ z)
(x # y) ++ z = (x ++ z) # (y ++ z)
  
(x ++ )· ↑# / = # / · (x ++ )

(++ x)· ↑# / = # / · (++ x)

练习:证明 # / · (all p)is a homomorphism

· (all p)

 

= ↑·++/ (X++/ (p -> [[id]o]o,[]o)*)*

= ↑/ (↑/ · X++/ (p -> [[id]o]o,[]o)*)*

= ↑/ (↑/ · X++/ (p -> [[id]o]o,[]o)*)*

 =↑· (++ · (/∗ ·(→ [[id]o]o[ ]o))

这一步利用了 ++ 对 ↑/ 分配

原来是对一个列表 X++/ 也就是先用++/叉积再求最长的

这样的列表形如 [ [ [ 2 ] ] , [ [  4 ] ] , [ [ 6 ] ] ]

X++/ 后变成了 [ [ 2 , 4 , 6 ] ] , ↑#/ 后变成 [ 2 , 4 , 6 ]

而先 (↑#/)* 它会变成 [ [ 1 ] , [ 1 ] , [ 1 ] ]

然后再++/ 就变成了 [ 1 , 1 , 1 ]

二者是等价的

可以继续化成

=↑· (++ · (/ · → [[id]o]o[ ]o))

也就是说对一个数x,如果满足p 

就变成 [ [ x ] ] ,然后 ↑/ 变成 [ x ]

如果不满足 p

那么就变成 [ ] ,    / 变成 Kw = - inf

所以可以化为

= ↑· (++ · (→ [id]o, Kw))  

 

Existence Lemma

存在引理

The list function h is a homomorphism iff the implication
h v = h x h w = h y h (v ++ w) = h (x ++ y)
holds for all lists v, w, x, y

证明:

左推右

设 h = ⊕/ · f*

 

 

posted @ 2021-12-28 21:57  liankewei123456  阅读(52)  评论(0编辑  收藏  举报