哥伦巴赫范式转换为NPDA规则:
1.首先增加开始转移和结束转移:
&(q0 ,ε , z)=(q1 , Sz)
& (q1 , ε , z)=(qf , z)
2.根据规则得到转移函数
形如A→aω,其中ω中的元素均是非终结符,
则增加状态:& (q1 , a , A)=(q1 , ω )
形如A→a,
则增加状态:& (q1 , a , A)=(q1 , ε )
例如文法
S→aA
A→aABC|bB|a
B→b
C→c
首先增加开始转移和结束转移
& (q0 , ε , z)=(q1 , Sz)
& (q1 , ε , z)=(qf , z)
然后根据规则得到转移规则
对于S→aA
& (q1 , a , S)=(q1 , A)
对于A→aABC|bB|a
& (q1 , a , A)=(q1 , ABC)
& (q1 , a , A)=(q1 , ε )
& (q1 , b , A)=(q1 , B)
对于B→b
& (q1 , b , B)=(q1 , ε)
对于C→c
& (q1 , c , C)=(q1 , ε)