Контрольная работа по "Основам трансляции"

Автор: Пользователь скрыл имя, 27 Января 2013 в 05:09, контрольная работа

Краткое описание

Вопрос:
Обоснуйте необходимость разработки новых формальных языков и трансляторов.
Ответ:
Есть две причины, почему приходиться разрабатывать новые языки и соответственно, трансляторы с них:
а) Универсальный язык не всегда удобен в конкретной узкой области – или громоздок, или не подходит модель, взятая за его основу, или…
б) САПР создается для конечных пользователей – конструкторов и технологов, следовательно, взаимодействие с САПР должно вестись на удобном для пользователя языке. Конструкторы и технологи не обязаны знать программирование. Элементы вновь созданного языка должны быть близки к области, в которой работают конструкторы. Пользователь должен легко оперировать знакомыми и понятными ему терминами.

Файлы: 1 файл

контрольная ОТ.doc

— 192.50 Кб (Скачать)

 

Решение задач  по курсу «Основы трансляции».

 

  1. Дана грамматика. Построить вывод заданной цепочки.

 

a) S ® T | T+S | T-S b) S ® aSBC | abC

T ® F | F*T  CB ® BC

F ® a | b  bB ® bb

Цепочка   a-b*a+b  bC ® bc

cC ® cc

Цепочка   aaabbbccc

 

Решение:

а)

S®T-S®F-S®F-T+S®F-F*T+S®a-b*T+S®a-b*a+b

   1        2        3             4                5                6 

Правила, которые  использовали:

1) S ® T-S

2) T ® F

3) S ® T+S

4) T ® F*T

5) F ® a | b

6) S ® T; T ® F; F ® a | b

б)

S ® aSBC®aaSBCBC ®aaSBBCC ®aaabCBBCC ®aaabBCBCC

    1            2                    3                   4                       5

®aaabBBCCC ®aaabbbCCC ®aaabbbcCC®aaabbbccc

6                        7                       8                    9

Правила, которые использовали:

1) S ® aSBC 

2) S ® aSBC

3) CB ® BC

4) S ® abC

5) CB ® BC

6) CB ® BC

7) bB ® bb

8) bC ® bc

9) cC ® cc

 

  1. Построить все сентенциальные формы для грамматики с правилами:

S ® A+B | B+A

A ® a

B ® b

Решение:

Сентенциальные формы:

A+B®a+B

A+B®A+b

B+A®b+A

B+A®B+a

 

3.  К какому типу по Хомскому относится данная грамматика? Какой язык она порождает? Каков тип языка?

 

a) S ® APA 

P ® + | -  

A ® a | b

Решение:

Данная грамматика относиться ко 2-типу (контекстно-свободный)

Язык: L={a+a, a-a, b+b, b-b, a-b, a+b, b-a, b+a} это пример конечного языка, состоящего из восьми цепочек.

 

b) S ® aQb | e

Q ® cSc

Решение:

Данная грамматика относиться к 3-типу (автоматный)

   Язык: L={(a)n,(c)2n,(b)n| n>=1} это пример языка содержащего бесконечное количество цепочек.

 

c) S ® 1B 

B ® B0 | 1

Решение:

Данная грамматика относиться ко 2-типу (контекстно-свободный)

     Язык: L={ цепочки из 0 и 1 с числом 1 на один больше} это пример языка содержащего бесконечное количество цепочек.

 

d)  S ® A | SA | SB 

A ® a 

          B ® b

Решение:

Данная грамматика относиться к 2-типу (контекстно-свободный)

   Язык: L={ любые цепочки из a и b | a≥1} это пример языка содержащего бесконечное количество цепочек.

 

 

  1.  Построить грамматику, порождающую язык :
  1. L = { an bm | n, m >= 1}

Решение:

R1: S®aSb|ab; G1={{a,b},{S},S,R1}

R2: S®AB, A®aA|a, B®Bb|b; G1={{a,b},{S,A,B},S,R2}

 

  1. L = { acbcgc | a, b, g - любые цепочки из a и b}

Решение:

R1: S®AcAcAc, A®aA | bA | B, B® a | b; G1={{a,b,c},{S, A, B },S,R1}

 

  1. L = { an bm | n ¹ m ; n, m >= 0}

R1: S®ASb , Sb®a | ε, A®a , AS®b | ε ; G1={{a,b},{S, A},S,R1}

 

 

  1. L = { (a2m bm)n | m >= 1, n >= 0}

Решение:

R1: S®aaAbS | ε, A®aaAb | ε ; G1={{a,b},{S, A},S,R1}

 

  1. L = { ^ | n >= 1}

Решение:

R1: S®aaAaa ^ , A®aAaa | ε ; G1={{a},{S, A},S,R1}

 

  1. L = { | n >= 1}

Решение:

R1: S®aA , aA®aaAa, A®ε ; G1={{a},{S, A},S,R1}

 

  1. L = { | n >= 1}

Решение:

R1: S®aaaA , A®aaA, aA®ɛ ; G1={{a},{S, A},S,R1}

 

 

  1. К какому типу по Хомскому относится данная грамматика? Какой язык она порождает? Каков тип языка?

 

b) S ® Ab

A ® Aa | ba

Решение:

Данная грамматика относиться к 2-типу (контекстно-свободный)

   Язык: L={ banb | n≥1 } это пример языка содержащего бесконечное количество цепочек.

 

c) S ® 0A1 | 01 

0A ® 00A1  

A ® 01  

Решение:

Данная грамматика относиться к 1-типу (контекстно-зависимый)

   Язык: L={ цепочки из 0 и 1 с  одинаковым числом 0 и 1 } это пример  языка содержащего бесконечное количество цепочек.

 

d) S ® AB

AB ® BA

A ® a

B ® b

Решение:

Данная грамматика относиться ко 1-типу (контекстно-зависимый)

Язык: L={ab, ba} это пример конечного языка, состоящего из двух цепочек.

 

e) S ® A | B 

A ® aAb | 0  

B ® aBbb | 1

Решение:

Данная грамматика относиться ко 2-типу (контекстно-свободный)

   Язык: L={ an 0 bn | an 1 b2n | n≥0 } это пример языка содержащего бесконечное количество цепочек.

 

f) S ® 0A | 1S

A ® 0A | 1B

B ® 0B | 1B | ^

Решение: 

Данная грамматика относиться к 2-типу (контекстно-свободный)

Язык: L = {a^ | a Î {0,1}+} это пример языка содержащего бесконечное количество цепочек.

 

g) S ® 0S | S0 | D 

D ® DD | 1A | e  

A ® 0B | e  

B ® 0A | 0

Решение: 

Данная грамматика относиться к 2-типу (контекстно-свободный)

Язык: L = {a | a Î {0,1}*} это пример языка содержащего бесконечное количество цепочек.

 

h) S ® 0A | 1S | e

A ® 1A | 0B

B ® 0S | 1B

Решение:

Данная грамматика относиться к 2-типу (контекстно-свободный)

   Язык: L={ цепочки из 0 и 1 } это пример языка содержащего бесконечное количество цепочек.

 

i) S ® SS | A 

A ® a | bb  

Решение:

Данная грамматика относиться к 0-типу (рекурсивно-перечислимый)

Язык:  L = { an | a Î {a,b}+, n≥1}  это пример языка содержащего бесконечное количество цепочек.

 

j) S ® AB^

A ® a | cA

B ® bA

Решение:

Данная грамматика относиться к 3-типу (автоматный)

Язык: L={ (cmbacna^ | m≥0, n≥0 } это пример языка содержащего бесконечное количество цепочек.

 

k) S ® aBA | e 

B ® bSA 

AA ® c

Решение:

Данная грамматика относиться к 1-типу (контекстно-зависимый)

Язык: L={ (ba)ncn | n≥0 } это пример языка содержащего бесконечное количество цепочек.

 

l) S ® Ab | c

A ® Ba

B ® cS

Решение:

Данная грамматика относиться к 2-типу (контекстно-свободный)

Язык: L={ cm(ba)n | m=n+1 } это пример языка содержащего бесконечное количество цепочек.

 

6. Эквивалентны ли  грамматики с правилами :

 

а) S ® AB и S ® AS | SB | AB

A ® a | Aa A ® a

B ® b | Bb B ® b

 

b) S ® aSL | aL и S ® aSBc | abc

L ® Kc cB ® Bc

cK ® Kc bB ® bb

K ® b

Решение:

а)  Неэквивалентны (почти эквивалентны) 

б) Эквивалентны (так как порождают один и тот же язык)

 

7. Построить КС-грамматику, эквивалентную грамматике с правилами:

 

а) S ® aAb b) S ® AB | ABS

aA ® aaAb  AB ® BA

A ® e  BA ® AB

A ® a

B ® b

 

Решение:

а)  G={{a,b},{A,S},S,R}

R: S®aAb

A®aAb | ε

б) G={{a,b},{A,B,S},S,R}

R: S®aAb

A®aAb | ε

aAb®bAa

 

8. Построить регулярную  грамматику, эквивалентную грамматике  с правилами:

 

а) S ® A | AS b) S ® A.A

A ® a | bb  A ® B | BA

B ® 0 | 1

Решение:

а)  G={{a,b},{A,B,S},S,R}

R: S®A|AS|BS|B

A®a

B®bb

б) G={{a,b},{A,B,S},S,R}

R: S®A.A

A®0 | 1 | 0A | 1A




Информация о работе Контрольная работа по "Основам трансляции"