ВУЗ:
Составители:
Рубрика:
Рассмотрим примеры -редукции (в прикладной варианте записи)
(х.х + 2у)(а) = а + 2у
(у.х + 2у)(а) = х + 2а
(х.(у.х + 2у))(а)(b) = (у.а + 2у)(b) = a + 2b
(x.((y.xy)u))( v.v) = (y.(v.v)y)u = (v.v)u
(x.((y.xy)u))( v.v) = (x.xu)(v.v) = (v.v)u
(x.xx) (x.xx) = (x.xx) (x.xx) = (x.xx) (x.xx) =…
((x.x*3) (y.if y > 4 then e = 2 else x/2) (y.y>2)) (5) = 2*5 = 10
(n.(x.x-n))(2) = x.x-2
(f.2*f(8) – f(f(8)))(half) = 2*8/2 – (8/2)/2 = 6 (half – половина).
7. Формальные грамматики
7.1. Понятие формальной грамматики
Формальная грамматика - это четверка G = <V
N
,V
T
, P, S >, в которой
V
N
- нетерминальный словарь (множество нетерминальных символов);
V
T
- терминальный словарь (множество терминальных символов ) ;
P - множество грамматических правил;
S V
N
- начальный нетерминальный символ.
Метаязык - язык, с помощью которого описывается язык:
::= - есть по определению;
| - “ исключающее или”;
< ... > - внутри – один нетерминальный символ ;
[ ] - необязательная часть;
, - запятая – разделитель при перечислении.
Пример: Построим грамматику G
1
:
<прог>::=<оп> | <оп>; <прог>
<оп>::=<пер> := <выр>
<пер>::=a | b | c
<выр>::=<пер> | <пер> <зн> <выр>
<зн>::= + | - | * | /
V = V
N
V
T
- обобщенный словарь.
V
*
- цепочка символов (строка, слово) из обобщенного словаря;
V
*
N
- цепочка символов (строка, слово) из нетерминального словаря;
V
*
T
- цепочка символов (строка, слово) из терминального словаря.
V - пустой символ, входит в обобщенный словарь.
Строка непосредственно порождает строку и обозначается: ,
— 72 —
Рассмотрим примеры -редукции (в прикладной варианте записи)
(х.х + 2у)(а) = а + 2у
(у.х + 2у)(а) = х + 2а
(х.(у.х + 2у))(а)(b) = (у.а + 2у)(b) = a + 2b
(x.((y.xy)u))( v.v) = (y.(v.v)y)u = (v.v)u
(x.((y.xy)u))( v.v) = (x.xu)(v.v) = (v.v)u
(x.xx) (x.xx) = (x.xx) (x.xx) = (x.xx) (x.xx) =…
((x.x*3) (y.if y > 4 then e = 2 else x/2) (y.y>2)) (5) = 2*5 = 10
(n.(x.x-n))(2) = x.x-2
(f.2*f(8) – f(f(8)))(half) = 2*8/2 – (8/2)/2 = 6 (half – половина).
7. Формальные грамматики
7.1. Понятие формальной грамматики
Формальная грамматика - это четверка G = , в которой
VN - нетерминальный словарь (множество нетерминальных символов);
VT - терминальный словарь (множество терминальных символов ) ;
P - множество грамматических правил;
S VN - начальный нетерминальный символ.
Метаязык - язык, с помощью которого описывается язык:
::= - есть по определению;
| - “ исключающее или”;
< ... > - внутри – один нетерминальный символ ;
[ ] - необязательная часть;
, - запятая – разделитель при перечислении.
Пример: Построим грамматику G1:
<прог>::=<оп> | <оп>; <прог>
<оп>::=<пер> := <выр>
<пер>::=a | b | c
<выр>::=<пер> | <пер> <зн> <выр>
<зн>::= + | - | * | /
V = VN VT - обобщенный словарь.
V* - цепочка символов (строка, слово) из обобщенного словаря;
V*N - цепочка символов (строка, слово) из нетерминального словаря;
V*T - цепочка символов (строка, слово) из терминального словаря.
V - пустой символ, входит в обобщенный словарь.
Строка непосредственно порождает строку и обозначается: ,
— 72 —
Страницы
- « первая
- ‹ предыдущая
- …
- 70
- 71
- 72
- 73
- 74
- …
- следующая ›
- последняя »
