CYK算法

✍ dations ◷ 2025-07-01 11:26:24 #算法,形式语言,分析算法

CYK算法(英语:Cocke–Younger–Kasami algorithm,缩写为CYK algorithm)是由约翰·科克,Younger和嵩忠雄(日语:嵩忠雄)共同研究出来大约发表于1965年的一个算法,它是一个用来判定任意给定的字符串   w Σ {\displaystyle ~w\in \Sigma ^{*}} i:= 1 n V i , i := { X V   |   X σ i   i n   P } {\displaystyle V_{i,i}:=\{X\in V~|~X\rightarrow \sigma _{i}~in~P\}} l:= 1 n-1 i:= 1 n-l   V i , i + l := {\displaystyle ~V_{i,i+l}:=\varnothing } k:= i i+l-1   V i , i + l := V i , i + l { X   |   X Y Z , Y V i , k , Z V k + 1 , i + l } {\displaystyle ~V_{i,i+l}:=V_{i,i+l}\cup \{X~|~X\rightarrow YZ,Y\in V_{i,k},Z\in V_{k+1,i+l}\}} S V 1 , n {\displaystyle S\in V_{1,n}} accept reject

扩展CYK算法

简介

对于上述CYK算法作一个小改动,也就是说记住每次的k,就可以自动产生一个由该上下文无关语言的推导树。

 i:= 1  n                                V                      i            ,            i                          :=        {        X                V                           |                         X                          σ                      i                                   i        n                 P        }              {\displaystyle V_{i,i}:=\{X\in V~|~X\rightarrow \sigma _{i}~in~P\}}   l:= 1  n-1     i:= 1  n-l                                                V                      i            ,            i            +            l                          :=                      {\displaystyle ~V_{i,i+l}:=\varnothing }   k:= i  i+l-1                                                    V                      i            ,            i            +            l                          :=                  V                      i            ,            i            +            l                                  {        (        X        ,        k        )                           |                         X                Y        Z        ,        Y                          V                      i            ,            k                          ,        Z                          V                      k            +            1            ,            i            +            l                          }              {\displaystyle ~V_{i,i+l}:=V_{i,i+l}\cup \{(X,k)~|~X\rightarrow YZ,Y\in V_{i,k},Z\in V_{k+1,i+l}\}}                               k        :        (        S        ,        k        )                          V                      1            ,            n                                {\displaystyle \exists k:(S,k)\in V_{1,n}}   accept  reject

通过对下面的方法递归运行就可以生成推导树。

Tree(X,i,j):    i=j  RETURN                                        σ                      i                                {\displaystyle ~\sigma _{i}}     选择一个 k 使                     (        X        ,        k        )                          V                      i            ,            j                                {\displaystyle (X,k)\in V_{i,j}}      选择 Y 和 Z 使                     X                Y        Z        ,        Y                          V                      i            ,            k                          ,        Z                          V                      k            +            1            ,            j                                {\displaystyle X\rightarrow YZ,Y\in V_{i,k},Z\in V_{k+1,j}}      RETURN Tree(X,Tree(Y,i,k),Tree(Z,k+1,j))

例子

给定一个乔姆斯基范式的上下文无关文法   G = ( { S , A , B , C } , { a , b } , S , P ) {\displaystyle ~G=(\lbrace S,A,B,C\rbrace ,\lbrace a,b\rbrace ,S,P)} ,其中规则 P 如下:

问:字符串 bbabaa 能不能通过该文法产生?

CYK算法可以通过一个表格来运算,表中 i 列 j 行表示由哪几个非终结符可以产生字字符串 σ i σ j {\displaystyle \sigma _{i}\dots \sigma _{j}}

如果在表格的最左下角一格中有文法的开始非终结符 S ,那么字符串 bbabaa 就能由上面给出文法 G 产生。

相关

  • 教宗教宗(拉丁语:Papa),或译教皇(华语圈外国家如韩国、日本、越南与部分教外人士目前仍沿用之),是罗马主教,同时为普世天主教会领袖与梵蒂冈城国国家元首,传统上被认为是圣伯多禄宗徒之位
  • 折射在物理学中,折射是指波在穿越介质或经历介质的渐次变化时传播方向上的改变。 光的折射是最容易观察的折射现象,不过其他像是声音和海浪也都会有折射的性质。而一个波的折射程
  • 东亚的都市以下列出东亚的主要都市及其人口数:根据世界银行(World Bank)公布的“东亚都市景观变化”报告,2000年到2010年,东亚地区的都市人口新增近2亿人,东亚地区人口数超越10万的都会区已
  • 低温保存深低温保存或超低温保存(英语: cryopreservation),指将生物、生命组织、或细胞等有机物质和其他物质在摄氏零下196度或以下的低温保存的一种科技。一般来说,深低温保存是泛指
  • 曹如晶曹如晶(韩语:조여정,1981年2月10日-),韩国女演员,名字常被译为赵如晶、赵汝贞等。曹如晶最早亮相是在1997年于CeCI时装杂志担任模特儿,初期的电视剧作品包括1998年《我如何呢?(朝鲜语:
  • 权力归花儿权力归花儿(英语:Flower power,亦称为花的力量、权力归花或权力归花的精神)是在1960年代末至1970年代初美国反文化活动的口号,标志着消极抵抗和非暴力思想。它是源于反越战运动。
  • 赫芭·艾哈迈德赫芭·艾哈迈德(Heba Ahmed,1985年1月1日-)是一名埃及划船运动员,主攻女子单人双桨和女子双人双桨项目。她曾获得非洲划船锦标赛女子单人双桨亚军。
  • 莫雷阿航空1121号班机空难在2007年8月9日,莫雷阿航空1121号班机在法属波利尼西亚莫雷阿岛上的他梅尔机场起飞不久后便坠毁。机上20名乘客和机组人员全部罹难,是这家成立于1968年的航空公司39年历史的首
  • 森道伯森 道伯(1867年12月2日-1931年1月19日),生于日本水户,汉方医学家,属于后世派,开创了一贯堂医学这个流派。森道伯之父白石文兵卫为水户藩藩士,他的幼名是白石舍彦,以新吉为户籍名。在
  • 美属萨摩亚国家公园美属萨摩亚国家公园位于美属萨摩亚,是太平洋上天然良港之一。主要的岛屿有布图拉岛、Ofu岛和Ta'ū岛。 该地于1988年成为国家公园,1993年9月9日由美国国家公园管理局向当地政