Pytania dotyczące ogólnych metod i technik dowodzenia wielu twierdzeń. Pytając o dowód pojedynczego stwierdzenia, zamiast tego użyj tagów odnoszących się do tego, czego dotyczy dowód.
Załóżmy, że mamy prosty język, który składa się z terminów: truetrue\mathtt{true} falsefalse\mathtt{false} jeśli są warunkami, to podobnie jest zi ft1,t2,t3t1,t2,t3t_1,t_2,t_3ift1thent2elset3ift1thent2elset3\mathtt{if}\: t_1 \:\mathtt{then}\: t_2 \:\mathtt{else}\: t_3 Załóżmy teraz następujące logiczne reguły oceny: iftruethent2elset3→t2[E-IfTrue]iffalsethent2elset3→t3[E-IfFalse]t1→t′1ift1thent2elset3→ift′1thent2elset3[E-If]iftruethent2elset3→t2[E-IfTrue]iffalsethent2elset3→t3[E-IfFalse]t1→t1′ift1thent2elset3→ift1′thent2elset3[E-If] \begin{gather*} \dfrac{} {\mathtt{if}\: \mathtt{true} \:\mathtt{then}\: t_2 \:\mathtt{else}\: t_3 \to t_2} \text{[E-IfTrue]} \quad \dfrac{} {\mathtt{if}\: \mathtt{false} \:\mathtt{then}\: t_2 \:\mathtt{else}\: …
W pracy miałem za zadanie wnioskować o pewnych typach informacji o dynamicznym języku. Przepisuję sekwencje instrukcji na letwyrażenia zagnieżdżone , tak jak poniżej: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if …
Biorąc pod uwagę następujące równanie rekurencyjne T.( n ) = 2 T.( n2)) +nlognT(n)=2T(n2)+nlogn T(n) = 2T\left(\frac{n}{2}\right)+n\log nchcemy zastosować twierdzenie Master i zauważyć, że nlog2)( 2 )= n .nlog2(2)=n. n^{\log_2(2)} = n. Teraz sprawdzamy dwa pierwsze przypadki dla ε > 0ε>0\varepsilon > 0 , czyli czy n logn ∈ O …
W dyskusji wokół tego pytania Gilles poprawnie wspomina, że każdy dowód poprawności algorytmu wykorzystującego tablice musi udowodnić, że nie ma dostępu do tablicy poza granicami; w zależności od modelu środowiska wykonawczego spowoduje to błąd środowiska wykonawczego lub dostęp do elementów innych niż macierzowe. Jedną z powszechnych technik przeprowadzania takich dowodów …
Lemat pompujący dla zwykłych języków może być użyty do udowodnienia, że niektóre języki nie są regularne, a lemat pompujący dla języków bezkontekstowych (wraz z lematem Ogdena) może być użyty do udowodnienia, że niektóre języki nie są kontekstowe. Czy istnieje determinujący lemat dla deterministycznych języków bezkontekstowych? To znaczy, czy istnieje lemat …
Jedna z definicji zestawu wyliczalnego (ce, równoważnego rekurencyjnie wyliczalnemu, równoważnego semidecidable) jest następująca: A⊆Σ∗A⊆Σ∗A \subseteq \Sigma^* oznacza, że istnieje rozstrzygalny językV⊆Σ∗V⊆Σ∗V\subseteq \Sigma^* (zwany weryfikatorem) st dla wszystkichx∈Σ∗x∈Σ∗x\in \Sigma^* , IFF istnieje y ∈ Ď * st ⟨ x , y ⟩ ∈ V .x∈Ax∈Ax\in Ay∈Σ∗y∈Σ∗y\in\Sigma^*⟨x,y⟩∈V⟨x,y⟩∈V\langle x, y \rangle \in V …
Chcę przedstawić dowody dla części programu Haskell, który piszę w ramach mojej pracy magisterskiej. Jednak jak dotąd nie udało mi się znaleźć dobrej pracy referencyjnej. Książka wprowadzająca Grahama Huttona Programowanie w Haskell ( Google Books ) - którą czytam podczas nauki Haskell - porusza kilka technik rozumowania programów, takich jak …
Uczę się, jak konwertować NFA na DFA i chcę się upewnić, że robię to dobrze. Oczywiście powrót w innym kierunku nie jest niczym. Czy ktoś zna algorytm sprawdzający, czy DFA jest równoważne z NFA?
Biorąc pod uwagę program składający się ze zmiennych i instrukcji, które modyfikują te zmienne, oraz operację podstawową synchronizacji (monitor, mutex, Java zsynchronizowany lub blokada C #), czy można udowodnić, że taki program jest bezpieczny dla wątków? Czy istnieje nawet formalny model opisujący takie rzeczy, jak bezpieczeństwo wątków lub warunki wyścigowe?
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.