Hayır, bu ifade doğru değil.
- yapımları ikisini de içerir: bir gramer varsayalım
- TAKİP (A) ∩ BİRİNCİ (β)Bu terminal olmayan
A
ileri yönlü TAKİP (A) ∩ içeren bir bağlamda ulaşılabilir olmasını gerektirir, çünkü gramer, bir kayma-azaltmak çakışma için oldukça yeterli değildir∅
İLK (β).
yüzden dilbilgisi azaltılmasını, ya da en azından herhangi ulaşılmaz ya faydasız yapımları içermemesi için ihtiyacımız olması halinde, bir kayma-azaltmak çatışmayı üretmek için yukarıdaki yeterli olduğunu. Ancak, yukarıdaki koşullar numaralı no'lu şartlar için gerekli değildir, çünkü vardiya ve indirmenin aynı terminal dışı, hatta "ilgili" terminal olmayanlar için geçerli olması gerekmez. Aşağıdaki basit dilbilgisi düşünün:
dilbilgisi (o ki, belirsiz değil)
ID . (
ID
çünkü
expr
düşürüldü olabilir ve daha sonra
stmt
veya
(
olabilir içerikli halde bir kayma-azaltmak çakışma var O
prog → stmt
prog → prog stmt
stmt → expr
stmt → func
expr → ID
expr → '(' expr ')'
func → ID '(' ')' stmt
func → ID '(' ')' stmt
'un parçası olarak kaydırılabilir.
bir yan nokta olsa da, TAKİP seti fazlalaştı sadece SLR (k) gramerlerin yapımında kullanılır.Kanonik LR (k) konstrüksiyonu - ve hatta LALR (k) inşası - tam bir lookahead hesabı yerine FOLLOW setinin kullanılmasının bir (varolmayan) vardiya-azaltmasını göstereceği gramer için başarılı bir şekilde parserler üretecektir. fikir ayrılığı. Biraz daha anlamlı olmayan terminali adlarla düzenlenmiş (benim kopyasında örnek 4.39) Ejderha kitabından alınmıştır klasik örneği,: Burada
stmt → lvalue '=' rvalue
stmt → rvalue
lvalue → '*' rvalue
lvalue → ID
rvalue → lvalue
, (rvalue) {=, $ olduğunu TAKİP} ve bunun sonucu olarak {stmt → lvalue · '=' rvalue
, rvalue → lvalue ·
}, rvalue
numaralı bir hatanın azaltılması mümkündür ve bu da yanlış bir kaydırma azaltma çakışmasına neden olur.
Evet, tanımlandığı gibi oldukça fazla. – tripleee
Bunun bir S/R çatışması olması gerekip gerekmediğini veya her S/R çatışmasının bu forma sahip olup olmadığını mı soruyorsunuz? – rici
@rici iyi nokta, demek istediğim her S/R çatışması bu formda –