Teoria informacji/TI Ćwiczenia 1: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Aneczka (dyskusja | edycje)
Nie podano opisu zmian
Stromy (dyskusja | edycje)
Nie podano opisu zmian
Linia 1: Linia 1:
Ćwiczenia dotyczące kodów.
Poniższe ćwiczenia służą oswojeniu się z pojęciem kodu:


{{cwiczenie||Ćwiczenie 1|
 
{{cwiczenie|[Definicja kodu]|Ćwiczenie 1|
Mamy dane zbiory:
Mamy dane zbiory:
:{0,01,11}
:{0,01,11}
Linia 13: Linia 14:
:Które są bezprefiskowe?  
:Które są bezprefiskowe?  
:Które są maksymalne bezprefiksowe? }}
:Które są maksymalne bezprefiksowe? }}


{{rozwiazanie|||  
{{rozwiazanie|||  
Linia 27: Linia 27:
}}
}}


{{cwiczenie||Ćwiczenie 2|
 
{{cwiczenie|[Rozpoznawanie kodów]|Ćwiczenie 2|
Czy istnieje algorytm, który dla dowolnego skończonego zbioru X nad alfabetem <math>\Sigma</math> stwierdza czy X jest kodem?}}
Czy istnieje algorytm, który dla dowolnego skończonego zbioru X nad alfabetem <math>\Sigma</math> stwierdza czy X jest kodem?}}


Linia 62: Linia 63:
  '''end''';
  '''end''';


Powyższy algorytm generuje wszystkie krótkie sufiksy ciągów możliwych do uzyskania przy pomocy słów ze zbioru X. Jeśli w którymś momencie trafi na słowo puste, oznacza to że zbiór X nie jest ciągiem.
Powyższy algorytm generuje wszystkie krótkie sufiksy ciągów możliwych do uzyskania przy pomocy słów ze zbioru X. Jeśli w którymś momencie trafi na słowo puste, oznacza to że zbiór X nie jest kodem.
</div>
</div>
</div>
</div>




{{cwiczenie||Ćwiczenie 3|
{{cwiczenie|[Nieskończone kody]|Ćwiczenie 3|
Definicja kodu nie zakłada że zawiera on skończenie wiele słów. Przykładem nieskończonego kodu jest zbiór <math>\{ 0^n1 | n \in \mathbb{N}\}</math>.
 
Udowodnij że każdy nieskończony kod również spełnia nierówność Krafta.}}
 
{{rozwiazanie|||
<div class="mw-collapsible mw-made=collapsible mw-collapsed">
<div class="mw-collapsible-content" style="display:none">
Załóżmy przeciwnie, że dla pewnego nieskończonego kodu X mamy <math>\sum_{s \in S} \frac{1}{r^{\ell (s)}}=1+\varepsilon</math>. Rozważmy kolejne podzbiory <math>X_1, X_2 \ldots</math> zbioru X zawierające słowa długości co najwyżej 1, 2, itd.
Odpowiadający im ciąg sum Krafta <math>K_1, K_2, \ldots</math> jest zdefiniowany przez <math>K_i=\sum_{s \in S \, \ell (s) \le i} \frac{1}{r^{\ell (s)}}</math>. Z założenia <math>\lim_{n \to \infty}K_n=1+\varepsilon</math>, a więc dla pewnego ''n'' mamy <math>K_n \ge 1 + \frac{\varepsilon}{2}</math>. Skończony zbiór <math>X_n</math> nie spełnia zatem nierówności Krafta, czyli nie jest kodem. Kodem nie może być więc żaden jego nadzbiór.
</div>
</div>
}}
 
 
{{cwiczenie|[Maksymalne kody]|Ćwiczenie 4|
Załóżmy że X jest maksymalnym zbiorem bezprefiksowym nad alfabetem <math>\Sigma</math> (żaden jego nadzbiór nie jest bezprefiskowy). Czy w takim przypadku nierówność Krafta zamienia się w równość (tzn. <math>\sum_{s \in X} \frac{1}{r^{\ell (s)}} = 1</math>)? }}
Załóżmy że X jest maksymalnym zbiorem bezprefiksowym nad alfabetem <math>\Sigma</math> (żaden jego nadzbiór nie jest bezprefiskowy). Czy w takim przypadku nierówność Krafta zamienia się w równość (tzn. <math>\sum_{s \in X} \frac{1}{r^{\ell (s)}} = 1</math>)? }}



Wersja z 11:13, 5 sie 2006

Poniższe ćwiczenia służą oswojeniu się z pojęciem kodu:


Ćwiczenie [Definicja kodu]

Mamy dane zbiory:

{0,01,11}
{0,11,10}
{00,01,10}
{00,001,100}
{1,010,110,001,000,101}

Określ:

Które z nich są kodami?
Które są bezprefiskowe?
Które są maksymalne bezprefiksowe?

Rozwiązanie

{{{3}}}


Ćwiczenie [Rozpoznawanie kodów]

Czy istnieje algorytm, który dla dowolnego skończonego zbioru X nad alfabetem Σ stwierdza czy X jest kodem?

Wskazowka

Rozwiązanie


Ćwiczenie [Nieskończone kody]

Definicja kodu nie zakłada że zawiera on skończenie wiele słów. Przykładem nieskończonego kodu jest zbiór {0n1|n}.

Udowodnij że każdy nieskończony kod również spełnia nierówność Krafta.

Rozwiązanie

{{{3}}}


Ćwiczenie [Maksymalne kody]

Załóżmy że X jest maksymalnym zbiorem bezprefiksowym nad alfabetem Σ (żaden jego nadzbiór nie jest bezprefiskowy). Czy w takim przypadku nierówność Krafta zamienia się w równość (tzn. sX1r(s)=1)?

Wskazowka

Rozwiązanie