我在编程语言课程中遇到一个令我困惑的问题。
提供无上下文语法以生成以下语言
L = {a i b j c k | 0< = i< = j< = i + k}
我完全不熟悉这种表示法。我似乎无法在书中找到任何内容或关于它的笔记,我也不知道如何查询谷歌的答案。
如果你认识到它,它叫什么,它意味着什么?
答案 0 :(得分:2)
a ^我只是意味着重复了一次。所以a ^ 2 = aa,b ^ 10 = bbbbbbbbbb等等。
答案 1 :(得分:0)
通常,
{}
表示“一套”|
表示“这样”我不知道a
,b
,c
是什么。 i
和j
是非负数,大于或等于零。通常,这些字母是为整数保留的。
i <= i + k
表示k也是非负数。
如果a
,b
和c
是实数,那么在我看来,L
只是一组实数。然而,它似乎是一种非常人为和精心设计的方式。那就像是邪恶博士杀死奥斯汀权力的阴谋。
所以你有“a次幂到次幂的时间b到功率j的时间c到功率j,使得i,j和k为正,j大于或等于i ......”等等。