Zaawansowane algorytmy i struktury danych/Ćwiczenia 15: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwaniaLinia 2: | Linia 2: | ||
{{kotwica|zadanie 1|}} | {{kotwica|zadanie 1|}} | ||
+ | Udowodnij lemat Zuppela-Schwartca podany poniżej. | ||
+ | {{lemat|[Zippela-Schwartza]||3= | ||
+ | Niech <math>p(x_1,\ldots, x_n)</math> będzie niezerowym wielomianem <math>n</math> zmiennych stopnia <math>d</math> nad ciałem <math>F</math>. Niech <math>S</math> będzie skończonym podzbiorem <math>F</math> oraz niech <math>r_1,\ldots, r_n</math> będą losowymi elementami z <math>S</math>, wtedy: | ||
+ | {{wzor2|1= | ||
+ | <math>\Pr[p(r_1,\ldots,r_n)=0] \le \frac{d}{|S|}.</math> | ||
+ | }} | ||
+ | }} | ||
<div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' | <div class="mw-collapsible mw-made=collapsible mw-collapsed">'''Rozwiązanie''' | ||
<div class="mw-collapsible-content" style="display:none"> | <div class="mw-collapsible-content" style="display:none"> | ||
+ | {{dowod|||3= | ||
+ | Dowód lematu przeprowadzimy przez indukcję po <math>n</math>. Dla <math>n=1</math> wielomian <math>p</math> może mieć co najwyżej <math>d</math> zer, co daje podstawę indukcji. Załóżmy teraz, że lemat ten zachodzi dla wszystkich wielomianów nad <math>n-1</math> zmiennymi. Możemy wtedy zapisać <math>p</math> jako wielomian <math>x_1</math>: | ||
+ | {{wzor2|1= | ||
+ | <math> | ||
+ | p(x_1,\ldots,x_n) = \sum_{i=0}^d x_i^d p_i(x_2,\ldots,x_n). | ||
+ | </math> | ||
+ | }} | ||
+ | |||
+ | Ponieważ <math>p</math> nie jest zerowy, to istnieje takie <math>i</math> dla którego <math>p_i</math> nie jest zerowy. Weźmy największe takie <math>i</math>. Wtedy <math>\deg p_i \le d-i</math>. Wybierzmy teraz losowo elementy <math>r_2,\ldots, r_n</math> z <math>S</math>. Z hipotezy indukcyjnej mamy: | ||
+ | |||
+ | {{wzor2|1= | ||
+ | <math> | ||
+ | \Pr[p_i(r_2,\ldots,r_n)=0] \le \frac{d-i}{|S|}. | ||
+ | </math> | ||
+ | }} | ||
+ | |||
+ | Jeżeli <math>p_i(r_2,\ldots,r_n) \neq 0</math>, to wtedy <math>p(x_1,r_2,\ldots,r_n)</math> ma stopień <math>i</math>, a więc | ||
+ | |||
+ | {{wzor2|1= | ||
+ | <math> | ||
+ | \Pr[p(r_1,r_2,\ldots,r_n)=0 | P_i(r_2,\ldots,r_n) \neq 0] \le \frac{i}{|S|}. | ||
+ | </math> | ||
+ | }} | ||
+ | |||
+ | Mamy więc: | ||
+ | |||
+ | {{wzor2|1= | ||
+ | <math> | ||
+ | \begin{array}{r@{}c@{}l} | ||
+ | \Pr[p(r_1,r_2,\ldots,r_n)=0] &=&\\ | ||
+ | &=& \Pr[P_i(r_2,\ldots,r_n) = 0] \Pr[p(r_1,r_2,\ldots,r_n)=0 | P_i(r_2,\ldots,r_n) = 0] +\\&+& | ||
+ | \Pr[P_i(r_2,\ldots,r_n) \neq 0] \Pr[p(r_1,r_2,\ldots,r_n)=0 | P_i(r_2,\ldots,r_n) \neq 0]\le\\ | ||
+ | &\le& | ||
+ | \Pr[P_i(r_2,\ldots,r_n) = 0] + \Pr[p(r_1,r_2,\ldots,r_n)=0 | P_i(r_2,\ldots,r_n) \neq 0] \le\\ | ||
+ | &\le& \frac{d-i}{|S|} + \frac{i}{|S|} = \frac{d}{|S|}. | ||
+ | \end{array} | ||
+ | </math> | ||
+ | }} | ||
+ | }} | ||
</div> | </div> | ||
</div> | </div> | ||
− | |||
== Zadanie 2 == | == Zadanie 2 == | ||
{{kotwica|zadanie 2|}} | {{kotwica|zadanie 2|}} | ||
− | + | Masz daną formułę logiczną w postaci DNF. Zaproponuj efektywny algorytm losowego generowania z rozkładem jednostajnym wartościowań ją spełniających? | |
Aktualna wersja na dzień 13:31, 29 wrz 2006
Zadanie 1
Udowodnij lemat Zuppela-Schwartca podany poniżej.
Lemat [Zippela-Schwartza]
Niech
będzie niezerowym wielomianem zmiennych stopnia nad ciałem . Niech będzie skończonym podzbiorem oraz niech będą losowymi elementami z , wtedy:
Rozwiązanie
Zadanie 2
Masz daną formułę logiczną w postaci DNF. Zaproponuj efektywny algorytm losowego generowania z rozkładem jednostajnym wartościowań ją spełniających?
Rozwiązanie
Zadanie 3
Rozwiązanie