Logika Hoare a z jawnymi aktualizacjami stanu
|
|
- Dawid Maciej Wójtowicz
- 9 lat temu
- Przeglądów:
Transkrypt
1 Logika Hoare a z jawnymi aktualizacjami stanu Instytut Informatyki, Uniwersytet Wrocławski 25 października 2010
2 Plan prezentacji 1 Wprowadzenie 2 Logika Hoare a Floyda 3 4 Prezentacja programu KeY Hoare 5 Informacje końcowe
3 Gramatyka języka while P rogram ::= (Statement)? Statement ::= EmptyStatement AssignmentStatement CompoundStatement ConditionalStatement LoopStatement EmptyStatement ::= ; AssignStatement ::= Location = Expression ; CompoundStatement ::= Statement Statement ConditionalStatement ::= if ( BooleanExp ) { Statement } else { Statement } LoopStatement ::= while ( BooleanExp ) { Statement } Expression ::= BooleanExp IntExp BooleanExp ::= IntExp ComparisonOp IntExp IntExp == IntExp BooleanExp BooleanOp BooleanExp!BooleanExp Location true false IntExp ::= IntExp IntOp IntExp Z Location ComparisonOp ::= < <= >= > BooleanOp ::= & == IntOp ::= * / % + -
4 Logika Hoare a Floyda Zwana także logiką Hoare a lub semantyką aksjomatyczną. System formalny służący do wnioskowania o poprawności programów. Wprowadzony w roku 1969 przez sir Charlesa Antony ego Richarda Hoare a (wynalazcę Quicksorta, laureata Nagrody Turinga w 1980 r.), idea została wzięta z pracy z 1967 r. Roberta W Floyda (twórcy algorytmu Floyda Warshalla, laureata Nagrody Turinga w 1978 r.) dotyczącej analizy schematów blokowych.
5 Semantyka formalna Pamięć Pamięć utożsamiamy z funkcją przypisującą adresom zmiennych ich wartości. Bieżący stan pamięci możemy opisać jako natomiast zbiór stanów pamięci to π : Location (Z {true, false}), Π = (Z {true, false}) Location. Program W naszym rozumieniu, programy są częściowymi funkcjami modyfikującymi pamięć: [σ ] : Π Π takimi, że dom([σ ]) = {π Π program σ uruchomiony w stanie π się zatrzyma}.
6 Naturalna semantyka operacyjna Relacja przejścia Relacja przejścia naturalnej semantyki operacyjnej określa, że jeśli pewien program σ uruchomimy w pamięci π to otrzymamy pamięć π. σ, π π, gdzie : (Π Π) Π Π. Notację tą rozszerzamy na ewaluację wyrażeń arytmetycznych oraz boolowskich σ, e i n, σ, e b b, gdzie e i : IntExp, n Z gdzie e b : BooleanExp, b {true, false}
7 Reguły naturalnej semantyki operacyjnej skip ;, π π e, π v assignment x = e;, π π[x/v] composition s 1, π π s 2, π π s 1 s 2, π π conditionalt b, π true s 1, π π if(b){s 1 }else{s 2 }, π π conditionalf b, π false s 2, π π if(b){s 1 }else{s 2 }, π π loopt b, π true s, π π while(b){s}, π π while(b){s}, π π b, π false loopf while(b){s}, π π
8 Formuły logiki Hoare a Trójki Hoare a Formuły logiki Hoare a przedstawiamy w postaci trójek {ϕ} σ {ψ} gdzie ϕ i ψ są zamkniętymi formułami pierwszego rzędu, zaś σ jest programem. Prawdziwość formuł Formuła jest prawdziwa w sensie częściowej poprawności (co zapisujemy = {ϕ}σ{ψ}), jeśli σ : Π Π. π, π : Π. π = ϕ σ, π π π = ψ. Formuła jest prawdziwa w sensie całkowitej poprawności (co zapisujemy = [ϕ]σ[ψ]), jeśli σ : Π Π. π : Π. π : Π. π = ϕ σ, π π π = ψ.
9 Reguły logiki Hoare a skip {P } ; {P } assignment {P [x/e]} x = e; {P } {P } s 1 {R} {R} s 2 {Q} composition {P } s 1 s 2 {Q} {P & b = true} s 1 {Q} {P & b = false} s 2 {Q} conditional {P } if(b){s 1 }else{s 2 } {Q} loop {I & b = true} s {I} {I} while(b){s} {I & b = false} P > Q {Q} s {R} weakeningleft {P } s {R} weakeningright {P } s {Q} Q > R {P } s {R} oracle P 1 1 poprawna formuła pierwszego rzędu
10 Reguły logiki Hoare a skip {P } ; {P } assignment {P [x/e]} x = e; {P } {P } s 1 {R} {R} s 2 {Q} composition {P } s 1 s 2 {Q} {P & b = true} s 1 {Q} {P & b = false} s 2 {Q} conditional {P } if(b){s 1 }else{s 2 } {Q} loop {I & b = true} s {I} {I} while(b){s} {I & b = false} P > Q {Q} s {R} weakeningleft {P } s {R} weakeningright {P } s {Q} Q > R {P } s {R} oracle P 1 loop T {I & b = true & dec = dec } s {I & dec 0 & dec < dec } {I} while(b){s} {I & b = false} 1 poprawna formuła pierwszego rzędu
11 Dedukcja asercji {y >= 0} z = 0; n = y; while (n > 0) { z = z + x; n = n - 1; } {z = x y}
12 Dedukcja asercji {y >= 0} z = 0; {y >= 0 & z = 0} n = y; while (n > 0) { } z = z + x; n = n - 1; } {z = x y}
13 Dedukcja asercji {y >= 0} z = 0; {y >= 0 & z = 0} n = y; {y >= 0 & z = 0 & n = y} while (n > 0) { } z = z + x; n = n - 1; } {z = x y}
14 Dedukcja asercji {y >= 0} z = 0; {y >= 0 & z = 0} n = y; {y >= 0 & z = 0 & n = y} {n >= 0 & z = x (y n) } while (n > 0) { z = z + x; } n = n - 1; {n >= 0 & z = x (y n) } {z = x y}
15 Dedukcja asercji {y >= 0} z = 0; {y >= 0 & z = 0} n = y; {y >= 0 & z = 0 & n = y} {n >= 0 & z = x (y n) } while (n > 0) { {n >= 0 & z = x (y n) & n > 0 } z = z + x; n = n - 1; {n >= 0 & z = x (y n) } } {n >= 0 & z = x (y n) &!n > 0} {z = x y}
16 Dedukcja asercji {y >= 0} z = 0; {y >= 0 & z = 0} n = y; {y >= 0 & z = 0 & n = y} {n >= 0 & z = x (y n) } while (n > 0) { {n >= 0 & z = x (y n) & n > 0 } z = z + x; {n 1 >= 0 & z = x (y (n 1)) } n = n - 1; {n >= 0 & z = x (y n) } } {n >= 0 & z = x (y n) &!n > 0} {z = x y}
17 Dedukcja asercji {y >= 0} z = 0; {y >= 0 & z = 0} n = y; {y >= 0 & z = 0 & n = y} {n >= 0 & z = x (y n) } while (n > 0) { {n >= 0 & z = x (y n) & n > 0 } {n 1 >= 0 & z + x = x (y (n 1)) } z = z + x; {n 1 >= 0 & z = x (y (n 1)) } n = n - 1; {n >= 0 & z = x (y n) } } {n >= 0 & z = x (y n) &!n > 0} {z = x y}
18 Dedukcja asercji {y >= 0} z = 0; {y >= 0 & z = 0} n = y; {y >= 0 & z = 0 & n = y} {n >= 0 & z = x (y n) & n = n } while (n > 0) { {n >= 0 & z = x (y n) & n > 0 & n = n } {n 1 >= 0 & z + x = x (y (n 1)) & n = n } z = z + x; {n 1 >= 0 & z = x (y (n 1)) & n 1 < n } n = n - 1; {n >= 0 & z = x (y n) & n < n & n >= 0} } {n >= 0 & z = x (y n) &!n > 0} {z = x y}
19 Najsłabsze warunki wstępne Definicja Najsłabszy warunek wstępny dla programu σ i formuły ψ (co oznaczamy jako wp(σ, ψ)) jest to formuła ϕ taka, że ( = {ϕ} σ {ψ} ) ( γ. = {γ} σ {ψ} (γ ϕ)) wp(;, ψ) wp(x = e;, ψ) wp(s 1 s 2, ψ) wp(if(b){s 1 }else{s 2 }, ψ) wp(while(b){s}, ψ) = ψ = ψ[x/e] = wp(s 1, wp(s 2, ψ)) = (b wp(s 1, ψ)) ( b wp(s 2, ψ)) = ( b ψ) (b wp(s, wp(while(b){s}, ψ)))
20 Logika Hoare a z jawnymi aktualizacjami stanu Wykorzystywana w programie KeY Hoare tak, aby mogła stanowić wsparcie dla kursów nauczających formalnej weryfikacji programów.
21 Dlaczego modyfikować logikę Hoare a Powody Ze względu na regułę dla przypisania, zazwyczaj explicite wyznacza się najsłabszy warunek wstępny, a potem przeprowadza się wnioskowanie wstecz co jest nieintuicyjne. Reguła dla złożenia rozdziela dowód i wymaga określenia pośredniego stanu, często również stosując wnioskowanie od tyłu. Ręczne tworzenie dowodów (nawet dla małych programów) jest żmudne i często obarczone błędami takie dowody nie będą poprawne dla automatycznej weryfikacji. Zmiana formuły wymaga użycia reguł wnioskowania dla formuł i ponownego jej napisania. Nie jest łatwo przypisać węzeł w drzewie dowodu konkretnemu miejscu w programie.
22 Aktualizacje stanu Definicja Aktualizacją jest wyrażenie postaci: Location := F OLT erm a. Jeśli U i V są aktualizacjami stanu to są nimi też: U, V (aktualizacja szeregowa) i U V (aktualizacja równoległa). a term formuły pierwszego rzędu Aktualizacje równoległe Niech U = l 1 := t 1... l m := t m i załóżmy, że znajdujemy się w stanie obliczeń π. Wtedy aktualizacje zmienią stan na π U taki, że { π(l) jeśli l / {l1,..., l π U = m } t k jeśli l = l k oraz l / {l k+1,..., l m } Lemat Dla każdej aktualizacji U istnieje aktualizacja równoległa V taka, że U i V są równoważne (tzn. dla każdego stanu π zachodzi π U = π V ).
23 Aktualizacje stanu c.d. Lemat Dla każdych aktualizacji U i x := t aktualizacje U, x := t i U x := U(t) są równoważne. Trójki Hoare a z aktualizacjami stanu Trójki takie zamieniają się w czwórki i mają postać {ϕ} [U] σ {ψ}, gdzie ϕ, ψ, σ są takie jak przy logice Hoare a, zaś U jest aktualizacją nad sygnaturą ϕ i σ. Semantyka takiej czwórki jest następująca: Dla każdego stanu π spełniającego ϕ, jeśli uruchomimy program σ w stanie π U wtedy, jeśli się zakończy, to stan końcowy będzie spełniał warunek ψ.
24 Reguły logiki Hoare a ze aktualizacjami stanu exit assignment P U(Q) {P } [U] {Q} {P } [U, x := e] s {Q} {P } [U] x = e; s {Q} skip {P } [U] s {Q} {P } [U] ; s {Q} {P & U(b = true)} [U] s 1 s {Q} {P & U(b = false)} [U] s 2 s {Q} conditional {P } [U] if(b){s 1 }else{s 2 }s {Q} loop P U(I) {I & b = true} [] s 1 {I} {I & b = false} [] s {Q} {P } [U] while(b){s 1 }s {Q}
25 Reguły zmian stanu Niech x będzie zmienną programu, t termem logiki pierwszego rzędu, P równoległą aktualizacją postaci l 1 := t 1,..., l m := t m, y zmienną logiczną, F n-arną funkcją, spójnikiem logicznym, zaś λ kwantyfikatorem. U, x := t = U x { := U(t) x jeśli l / {l1,..., l P (x) = m } t k jeśli x = l k oraz l / {l k+1,..., l m } U(y) = y U(F (t 1,..., t m )) = F (U(t 1 ),..., U(t n )) U(P Q) = U(P ) U(Q)) U(λy. P ) = λy. U(P ), y / free(u)
26 Prezentacja programu KeY Hoare Środowisko pozwalające na dowodzenie poprawności programów (częściowej, całkowitej oraz ze względu na pesymistyczny czas działania) napisanych w podzbiorze języka Java.
27 Materiały Strona programu Bezpośrednie odnośniki Automatyczny instalator : webstart/key-hoare.jnlp Tutorial: Przykłady: examples zip
28 Interfejs Zarządzanie plikami KeY Hoare akceptuje pliki z rozszerzeniem.key (zwyczajowo zawierające jedynie specyfikację problemu) oraz.proof w których znajduje się dodatkowo dowód (lub jego część). Program pozwala również na zapisywanie aktualnie przeprowadzanego dowodu w pliku.proof. Najważniejsze składowe Po lewej w zakładce Proof znajduje się drzewo dowodu w którym możemy oglądać już wykonane kroki oraz wybierać zadania do udowodnienia (oznaczone jako OPEN GOAL i pokolorowane na czerwono). Główne okno zatytułowane jest Inner Node jeśli oglądamy fragment odpowiadający już wykonanemu krokowi dowodu lub Current Goal wtedy wyświetlany jest cel, który aktualnie wymaga udowodnienia.
29 Dowodzenie Aplikacja reguł logiki Hoare a Jeśli cel jest trójką Hoare a z aktualizacjami stanu, czyli ma formę {...} [...]... {...} wtedy należy najechać kursorem nad kwadratowe nawiasy i po wciśnięciu prawego przycisku wybrać z menu odpowiednią regułę do zastosowania (zawsze będzie dostępna tylko jedna z wymienionych): assignment, exit, skip, conditional lub Loop Invariant. W przypadku pętli pojawi się dodatkowe okno w którym należy podać jej niezmiennik. Gdy dowodzona jest całkowita poprawność, pokaże się także drugie okno, przeznaczone na term stanowiący miarę pętli. Dowodzenie formuł logicznych Jeśli cel jest postaci -... wtedy należy najechać kursorem na znak - i po wciśnięciu prawego przycisku wybrać opcję Apply rules automatically here.
30 Dowodzenie c.d. Automatyzacja dowodu W zakładce Proof Search Strategy można (po ustawieniu odpowiedniego limitu czasowego) zaznaczyć opcję Autoresume strategy. Wtedy cele będące formułami logicznymi będą rozwiązywane natychmiast, bez potrzeby ingerencji użytkownika. Polecenia aplikacji reguł logiki Hoare a wciąż trzeba wydawać ręcznie.
31 Struktura plików.key \functions { Deklaracja stałych, np. int startval; } \programvariables { Deklaracja wszystkich wykorzystywanych zmiennych. } \hoare Sekcja zawierająca trójkę Hoare a z aktualizacjami stanu. Możliwe komendy: hoare dla częściowej poprawności, hoaretotal dla całkowitej, hoareet dla czasu wykonania. { { Warunek wstępny } [ Inicjująca aktualizacja (w formie równoległej) ] \[{ Kod programu }\] { Warunek końcowy } }
32 Częściowa poprawność: multiplication.key \functions { } \programvariables { int n, x, y, z; } \hoare { {y >= 0} \[{ z = 0; n = y; while (n>0) { z = z + x; n = n-1; } }\] {z = x * y} }
33 Częściowa poprawność: multiplication.key \functions { } \programvariables { int n, x, y, z; } \hoare { {y >= 0} \[{ z = 0; n = y; while (n>0) { z = z + x; n = n-1; } }\] {z = x * y} } Niezmiennik: n >= 0 & z = x * (y - n)
34 Reguły dla całkowitej poprawności loop T P U(I & dec >= 0) {I & b = true & dec = dec } [] s 1 {I & dec 0 & dec < dec } {I & b = false} [] s {Q} {P } [U] while(b){s 1 }s {Q}
35 Całkowita poprawność: countdowntotal.key \functions { int startval; } \programvariables { int timer; } \hoaretotal { { startval >= 0 } [timer := startval] \[{ while (timer>0) { timer = timer -1; } }\] { timer = 0 } }
36 Całkowita poprawność: countdowntotal.key \functions { int startval; } \programvariables { int timer; } \hoaretotal { { startval >= 0 } [timer := startval] \[{ while (timer>0) { timer = timer -1; } }\] { timer = 0 } } Niezmiennik: timer >= 0 Miara: timer
37 Reguły dla czasu wykonania exit ET assignment ET P U(Q) {P } [U] {Q} conditional ET loop ET {P } [U, x := e, et := et + 1] s {Q} {P } [U] x = e; s {Q} skip ET {P } [U, et := et + 1] s {Q} {P } [U] ; s {Q} {P & U(b = true)} [U, et := et + 1] s 1 s {Q} {P & U(b = false)} [U, et := et + 1] s 2 s {Q} {P } [U] if(b){s 1 }else{s 2 }s {Q} P U(I & dec >= 0) {I & b = true & dec = dec } [et := et + 1] s 1 {I & dec 0 & dec < dec } {I & b = false} [et := et + 1] s {Q} {P } [U] while(b){s 1 }s {Q} et odpowiada specjalnemu licznikowi executiontime którego wartość można ustawić na przed wykonaniem programu.
38 Czas wykonania: countdownexecutiontime.key \functions { int startval; } \programvariables { int timer; } \hoareet { { startval >= 0 & executiontime = 0} [timer := startval] \[{ while (timer>0) { timer = timer -1; } }\] { timer = 0 & executiontime = 2*startVal + 1} }
39 Czas wykonania: countdownexecutiontime.key \functions { int startval; } \programvariables { int timer; } \hoareet { { startval >= 0 & executiontime = 0} [timer := startval] \[{ while (timer>0) { timer = timer -1; } }\] { timer = 0 & executiontime = 2*startVal + 1} } Niezmiennik: timer>=0 & executiontime = 2*(startVal-timer) Miara: timer
40 Zadania na koniec multiplicationtotal
41 Zadania na koniec multiplicationtotal Niezmiennik: n >= 0 & z = x * (y - n) Miara: n
42 Zadania na koniec multiplicationtotal Niezmiennik: n >= 0 & z = x * (y - n) Miara: n multiplicationexecutiontime Warunek początkowy: y >= 0 & executiontime=0 Warunek końcowy: z = x * y & executiontime = 3 * y + 3
43 Zadania na koniec multiplicationtotal Niezmiennik: n >= 0 & z = x * (y - n) Miara: n multiplicationexecutiontime Warunek początkowy: y >= 0 & executiontime=0 Warunek końcowy: z = x * y & executiontime = 3 * y + 3 Niezmiennik: n >= 0 & z = x * (y - n) & executiontime = 3 * (y - n) + 2 Miara: n
44 Zadania na koniec multiplicationtotal Niezmiennik: n >= 0 & z = x * (y - n) Miara: n multiplicationexecutiontime Warunek początkowy: y >= 0 & executiontime=0 Warunek końcowy: z = x * y & executiontime = 3 * y + 3 Niezmiennik: n >= 0 & z = x * (y - n) & executiontime = 3 * (y - n) + 2 Miara: n Do obejrzenia/udowodnienia max.key gcd.key arraysort.key
45 Bibliografia Rainer Hähnle, Richard Bubel, A Hoare-Style Calculus with Explicit State Updates, Departament of Computer Science and Engineering, Chalmers University of Technologic and Göteborg University K. R. Apt, E.-R. Olderog, Verification of Sequential and Concurrent Programs, Springer-Verlag New York, Inc Mateusz Styrczula, Programowanie. Notatki do wykładów, Instytut Informatyki, Uniwersytet Wrocławski P. Urzyczyn, Materiały do wykładu z semantyki, Instytut Informatyki, Uniwersytet Warszawski Wikipedia contributors, Wikipedia, The Free Encyclopedia, [Internet]
46 Koniec
Podstawy Informatyki. Algorytmy i ich poprawność
Podstawy Informatyki Algorytmy i ich poprawność Błędy Błędy: językowe logiczne Błędy językowe Związane ze składnią języka Wykrywane automatycznie przez kompilator lub interpreter Prosty sposób usuwania
Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017
Logika Stosowana Wykład 1 - Logika zdaniowa Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 30 Plan wykładu 1 Język
Wstęp do programowania
Wstęp do programowania Złożoność obliczeniowa, poprawność programów Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. XII Jesień 2013 1 / 20 Złożoność obliczeniowa Problem Ile czasu
Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017
Logika Stosowana Wykład 2 - Logika modalna Część 2 Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 27 Plan wykładu
Poprawność semantyczna
Poprawność składniowa Poprawność semantyczna Poprawność algorytmu Wypisywanie zdań z języka poprawnych składniowo Poprawne wartościowanie zdań języka, np. w języku programowania skutki wystąpienia wyróżnionych
Wstęp do Programowania potok funkcyjny
Wstęp do Programowania potok funkcyjny Marcin Kubica 2010/2011 Outline 1 Kilka podstawowych pojęć Definition Programy imperatywne zmieniają stan, czyli wartości zmiennych. Asercja = warunek logiczny, który
Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.
Plan Procedura decyzyjna Reguły α i β - algorytm Plan Procedura decyzyjna Reguły α i β - algorytm Logika obliczeniowa Instytut Informatyki 1 Procedura decyzyjna Logiczna konsekwencja Teoria aksjomatyzowalna
Metody dowodzenia twierdzeń i automatyzacja rozumowań Systemy aksjomatyczne I
Metody dowodzenia twierdzeń i automatyzacja rozumowań Systemy aksjomatyczne I Mariusz Urbański Instytut Psychologii UAM Mariusz.Urbanski@.edu.pl OSTRZEŻENIE Niniejszy plik nie zawiera wykładu z Metod dowodzenia...
Metoda Tablic Semantycznych
Procedura Plan Reguły Algorytm Logika obliczeniowa Instytut Informatyki Plan Procedura Reguły 1 Procedura decyzyjna Logiczna równoważność formuł Logiczna konsekwencja Procedura decyzyjna 2 Reguły α, β,
Programowanie w języku Python. Grażyna Koba
Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i
4 Klasyczny rachunek zdań
4 Klasyczny rachunek zdań Elementy Logiki i Teorii Mnogości 2015/2016 Spis najważniejszych tautologii: (a) p p prawo wyłączonego środka (b) ( p) p prawo podwójnej negacji (c) p q q p (d) p q q p prawo
Wykład 11b. System aksjomatyczny Klasycznego Rachunku Predykatów. Aksjomaty i reguły inferencyjne
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykład 11b. System aksjomatyczny Klasycznego Rachunku Predykatów. Aksjomaty i reguły inferencyjne Istnieje wiele systemów aksjomatycznych
Wprowadzenie do programowania współbieżnego
Wprowadzenie do programowania współbieżnego Marcin Engel Instytut Informatyki Uniwersytet Warszawski Zamiast wstępu... Zamiast wstępu... Możliwość wykonywania wielu akcji jednocześnie może ułatwić tworzenie
Microsoft EXCEL SOLVER
Microsoft EXCEL SOLVER 1. Programowanie liniowe z wykorzystaniem dodatku Microsoft Excel Solver Cele Po ukończeniu tego laboratorium słuchacze potrafią korzystając z dodatku Solver: formułować funkcję
Elementy logiki. Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń
Elementy logiki Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń 1 Klasyczny Rachunek Zdań 1.1 Spójniki logiczne Zdaniem w sensie logicznym nazywamy wyrażenie, które jest
Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak
Indukcja Materiały pomocnicze do wykładu wykładowca: dr Magdalena Kacprzak Charakteryzacja zbioru liczb naturalnych Arytmetyka liczb naturalnych Jedną z najważniejszych teorii matematycznych jest arytmetyka
Adam Meissner.
Instytut Automatyki i Inżynierii Informatycznej Politechniki Poznańskiej Adam Meissner Adam.Meissner@put.poznan.pl http://www.man.poznan.pl/~ameis SZTUCZNA INTELIGENCJA Podstawy logiki pierwszego rzędu
Rozkłady zajęć- notatki
Rozkłady zajęć- notatki... 1 Wprowadzanie notatek... 1 Zapisanie notatki... 2 Notatka zawierające grafikę... 2 Słowa kluczowe... 3 Drukowanie notatek... 4 Rozkłady zajęć- notatki To rozszerzenie dostępne
Składnia rachunku predykatów pierwszego rzędu
Początek Gramatyka Kwantyfikatory Poprawność Logika obliczeniowa Instytut Informatyki Początek Gramatyka Kwantyfikatory Poprawność Plan wykładu 1 Na (dobry) początek Zrozumieć słowa Oswoić znaki 2 Gramatyka
Paradygmaty dowodzenia
Paradygmaty dowodzenia Sprawdzenie, czy dana formuła rachunku zdań jest tautologią polega zwykle na obliczeniu jej wartości dla 2 n różnych wartościowań, gdzie n jest liczbą zmiennych zdaniowych tej formuły.
RACHUNEK ZDAŃ 7. Dla każdej tautologii w formie implikacji, której poprzednik również jest tautologią, następnik także jest tautologią.
Semantyczne twierdzenie o podstawianiu Jeżeli dana formuła rachunku zdań jest tautologią i wszystkie wystąpienia pewnej zmiennej zdaniowej w tej tautologii zastąpimy pewną ustaloną formułą, to otrzymana
Gramatyki atrybutywne
Gramatyki atrybutywne, część 1 (gramatyki S-atrybutywne Teoria kompilacji Dr inŝ. Janusz Majewski Katedra Informatyki Gramatyki atrybutywne Do przeprowadzenia poprawnego tłumaczenia, oprócz informacji
3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki.
1. Podaj definicję informatyki. 2. W jaki sposób można definiować informatykę? 3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki. 4. Co to jest algorytm? 5. Podaj neumanowską architekturę
Algorytmy i struktury danych
Algorytmy i struktury danych 4. Łódź 2018 Suma szeregu harmonicznego - Wpisz kod programu w oknie edycyjnym - Zapisz kod w pliku harmonic.py - Uruchom skrypt (In[1]: run harmonic.py) - Ten program wykorzystuje
Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika
Warsztaty AVR Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR Dariusz Wika 1.Krótki wstęp: Eclipse to rozbudowane środowisko programistyczne, które dzięki możliwości instalowania
napisać konstrukcję instrukcji decyzyjnej If wraz z jej rozwinięciem Else i ElseIf; podać definicję algorytmu z rozgałęzieniami;
1 TEMAT LEKCJI: Algorytmy z rozgałęzieniami. 2 CELE WYRAŻONE OPERACYJNIE: 2.1 Wiadomości: Uczeń potrafi: napisać konstrukcję instrukcji decyzyjnej If wraz z jej rozwinięciem Else i ElseIf; podać definicję
LABORATORIUM SYSTEMÓW POMIAROWYCH KTP IR PW MATERIAŁY POMOCNICZE DO ĆWICZENIA 1 SYMULATOR SYSTEMU POMIAROWEGO W STANDARDZIE IEC-625.
LABORATORIUM SYSTEMÓW POMIAROWYCH KTP IR PW MATERIAŁY POMOCNICZE DO ĆWICZENIA 1 SYMULATOR SYSTEMU POMIAROWEGO W STANDARDZIE IEC-625.1 Warszawa 2001 SYMULATOR SYSTEMU POMIAROWEGO W STANDARDZIE IEC-625.1
SimplySign logowanie i rejestracja na komputerze oraz dodanie certyfikatu do programu Płatnik
SimplySign logowanie i rejestracja na komputerze oraz dodanie certyfikatu do programu Płatnik 1. INSTALACJA CERTYFIKATU SIMPLY SIGN W MAGAZYNIE SYSTEMOWYM. W celu użytkowania certyfikatu SimplySign na
Robert Barański, AGH, KMIW MathScript and Formula Nodes v1.0
MathScript i Formula Nodes (MathScript and Formula Nodes) Formula Node w oprogramowaniu LabVIEW jest wygodnym, tekstowym węzłem, który można użyć do wykonywania skomplikowanych operacji matematycznych
Algorytm. Krótka historia algorytmów
Algorytm znaczenie cybernetyczne Jest to dokładny przepis wykonania w określonym porządku skończonej liczby operacji, pozwalający na rozwiązanie zbliżonych do siebie klas problemów. znaczenie matematyczne
Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki
Informatyka I Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2019 1 Plan wykładu
Wykład 2. Poprawność algorytmów
Wykład 2 Poprawność algorytmów 1 Przegląd Ø Poprawność algorytmów Ø Podstawy matematyczne: Przyrost funkcji i notacje asymptotyczne Sumowanie szeregów Indukcja matematyczna 2 Poprawność algorytmów Ø Algorytm
Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej. Laboratorium przyrządów wirtualnych. Ćwiczenie 3
Politechnika Łódzka Instytut Systemów Inżynierii Elektrycznej Laboratorium przyrządów wirtualnych Ćwiczenie 3 Wykorzystanie technologii ActiveX do rejestracji danych z przyrządów wirtualnych 1. Wstęp Do
Matematyka Dyskretna. Andrzej Szepietowski. 25 czerwca 2002 roku
Matematyka Dyskretna Andrzej Szepietowski 25 czerwca 2002 roku Rozdział 1 Poprawność programów Jeżeli projektujemy algorytmy lub piszemy programy, to ważne jest pytanie, czy nasz algorytm lub program
Podstawowe Pojęcia. Semantyczne KRZ
Logika Matematyczna: Podstawowe Pojęcia Semantyczne KRZ I rok Językoznawstwa i Informacji Naukowej UAM 2006-2007 Jerzy Pogonowski Zakład Logiki Stosowanej UAM http://www.logic.amu.edu.pl Dodatek: ściąga
25 lutego 2013, godzina 23: 57 strona 1. P. Urzyczyn: Materia ly do wyk ladu z semantyki. Logika Hoare a
25 lutego 2013, godzina 23: 57 strona 1 P. Urzyczyn: Materia ly do wyk ladu z semantyki Logika Hoare a Rozważamy najprostszy model imperatywnego jezyka programowania z jednym typem danych. Wartości tego
Metody Kompilacji Wykład 3
Metody Kompilacji Wykład 3 odbywa się poprzez dołączenie zasad(reguł) lub fragmentów kodu do produkcji w gramatyce. Włodzimierz Bielecki WI ZUT 2 Na przykład, dla produkcji expr -> expr 1 + term możemy
Przypisy i przypisy końcowe
- 1 - Przypisy i przypisy końcowe Przypisami nazywamy pewne teksty służące do podawania wyjaśnień, komentarzy, odsyłaczy do tekstu, do bibliografii itp. Edytor WORD rozróżnia dwa rodzaje przypisów: przypisy
Internet Semantyczny i Logika II
Internet Semantyczny i Logika II Ontologie Definicja Grubera: Ontologia to formalna specyfikacja konceptualizacji pewnego obszaru wiedzy czy opisu elementów rzeczywistości. W Internecie Semantycznym językiem
Instrukcja obsługi programu PLOMP PLUS FM
Instrukcja obsługi programu PLOMP PLUS FM Edata Polska Sp. z o.o. ul. Puławska 314 02-819 Warszawa Tel 22 545-32-40 Fax 22 678-60-29 biuro@edatapolska.pl Ver 1.04 Aplikacja PLOMP PLUS FM przeznaczona jest
Myślenie w celu zdobycia wiedzy = poznawanie. Myślenie z udziałem rozumu = myślenie racjonalne. Myślenie racjonalne logiczne statystyczne
Literatura: podstawowa: C. Radhakrishna Rao, Statystyka i prawda, 1994. G. Wieczorkowska-Wierzbińska, J. Wierzbiński, Statystyka. Od teorii do praktyki, 2013. A. Aczel, Statystyka w zarządzaniu, 2002.
Instrukcja instalacji certyfikatu kwalifikowanego w programie Płatnik. wersja 1.8
Instrukcja instalacji certyfikatu kwalifikowanego w programie Płatnik wersja 1.8 Spis treści 1. INSTALACJA CERTYFIKATU Z KARTY KRYPTOGRAFICZNEJ W MAGAZYNIE SYSTEMOWYM... 3 Wczytanie danych z karty CryptoCERTUM...
Aplikacje WWW - laboratorium
Aplikacje WWW - laboratorium Serwlety Celem ćwiczenia jest przygotowanie kilku prostych serwletów ilustrujących możliwości tej technologii. Poszczególne ćwiczenia prezentują sposób przygotowania środowiska,
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ
Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ 1 Inferencyjna równoważność formuł Definicja 9.1. Formuła A jest
Słowem wstępu. Część rodziny języków XSL. Standard: W3C XSLT razem XPath 1.0 XSLT Trwają prace nad XSLT 3.0
Słowem wstępu Część rodziny języków XSL Standard: W3C XSLT 1.0-1999 razem XPath 1.0 XSLT 2.0-2007 Trwają prace nad XSLT 3.0 Problem Zakładane przez XML usunięcie danych dotyczących prezentacji pociąga
Rachunek zdań i predykatów
Rachunek zdań i predykatów Agnieszka Nowak 14 czerwca 2008 1 Rachunek zdań Do nauczenia :! 1. ((p q) p) q - reguła odrywania RO 2. reguła modus tollens MT: ((p q) q) p ((p q) q) p (( p q) q) p (( p q)
Synchronizator plików (SSC) - dokumentacja
SZARP http://www.szarp.org Synchronizator plików (SSC) - dokumentacja Wersja pliku: $Id: ssc.sgml 4420 2007-09-18 11:19:02Z schylek$ > 1. Witamy w programie SSC Synchronizator plików (SZARP Sync Client,
JAO - Wprowadzenie do Gramatyk bezkontekstowych
JAO - Wprowadzenie do Gramatyk bezkontekstowych Definicja gramatyki bezkontekstowej Podstawowymi narzędziami abstrakcyjnymi do opisu języków formalnych są gramatyki i automaty. Gramatyka bezkontekstowa
ForPascal Interpreter języka Pascal
Akademia Podlaska w Siedlcach Wydział Nauk Ścisłych Instytut Informatyki ForPascal Interpreter języka Pascal Przedmiot: Sieci i Systemy Wirtualne Informatyka IV Prowadzący: dr Krzysztof Trojanowski Grupa:
Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 1. Programowanie komputerowe
Wydział Zarządzania AGH Katedra Informatyki Stosowanej Podstawy VBA cz. 1 Programowanie 1 Program wykładu Struktura programu Instrukcja przypisania Wprowadzanie danych Wyprowadzanie wyników Instrukcja
Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)
Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie
Wstęp do logiki. Klasyczny Rachunek Zdań III
Wstęp do logiki Klasyczny Rachunek Zdań III Przypomnijmy: Logika: = Teoria form (schematów, reguł) poprawnych wnioskowań. Wnioskowaniem nazywamy jakąkolwiek skończoną co najmniej dwuwyrazową sekwencję
Tworzenie pliku źródłowego w aplikacji POLTAX2B.
Tworzenie pliku źródłowego w aplikacji POLTAX2B. Po utworzeniu spis przekazów pocztowych klikamy na ikonę na dole okna, przypominającą teczkę. Następnie w oknie Export wybieramy format dokumentu o nazwie
Logika Temporalna i Automaty Czasowe
Modelowanie i Analiza Systemów Informatycznych Logika Temporalna i Automaty Czasowe (7) Automaty czasowe NuSMV Paweł Głuchowski, Politechnika Wrocławska wersja 2.3 Treść wykładu NuSMV NuSMV symboliczny
Kadry Optivum, Płace Optivum
Kadry Optivum, Płace Optivum Jak seryjnie przygotować wykazy absencji pracowników? W celu przygotowania pism zawierających wykazy nieobecności pracowników skorzystamy z mechanizmu Nowe wydruki seryjne.
Podstawy programowania Laboratorium. Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji
Podstawy programowania Laboratorium Ćwiczenie 2 Programowanie strukturalne podstawowe rodzaje instrukcji Instrukcja warunkowa if Format instrukcji warunkowej Przykład 1. if (warunek) instrukcja albo zestaw
kodowanienaekranie.pl
Temat: Naucz się tekstowego języka Python z Codey Rocky - część 1 Zdarzenia kl7-8 Szkoła Podstawowa Przedmiot: informatyka Autor: Sylwester Zasoński Czas trwania: 1h lekcyjna Cele ogólne: Rozwijanie kompetencji
Definicje. Algorytm to:
Algorytmy Definicje Algorytm to: skończony ciąg operacji na obiektach, ze ściśle ustalonym porządkiem wykonania, dający możliwość realizacji zadania określonej klasy pewien ciąg czynności, który prowadzi
Badania operacyjne Instrukcja do c wiczen laboratoryjnych Rozwiązywanie problemów programowania liniowego z użyciem MS Excel + Solver
Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Wydział Techniki Morskiej i Transportu Katedra Konstrukcji, Mechaniki i Technologii Okręto w Badania operacyjne Instrukcja do c wiczen laboratoryjnych
DBE DataBase Engineering
Loader PI dla mmedica Instrukcja instalacji interfejsu Przychodni Internetowej (Loader PI) w wersji DEMO dla programu mmedica. DBE DataBase Engineering Firma z którą pracują najlepsi Wrocław 2009 PL-PI-INS001-122009
procesów Współbieżność i synchronizacja procesów Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Abstrakcja programowania współbieżnego Instrukcje atomowe i ich przeplot Istota synchronizacji Kryteria poprawności programów współbieżnych
Techniki informacyjne dla wnioskowania oraz generowania, reprezentacji i zarządzania wiedzą
Zakład Zaawansowanych Technik Informacyjnych (Z-6) Techniki informacyjne dla wnioskowania oraz generowania, reprezentacji i zarządzania wiedzą Zadanie nr 2 Relacyjne systemy dedukcyjne: teoria i zastosowania
Podstawy Sztucznej Inteligencji (PSZT)
Podstawy Sztucznej Inteligencji (PSZT) Paweł Wawrzyński Wnioskowanie logiczne i systemy eksperckie Systemy posługujące się logiką predykatów: część 3/3 Dzisiaj Uogólnienie Poprawność i pełność wnioskowania
Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej:
Interfejs w MFC 1. Tworzenie nowego projektu Wybieramy File->New->Project Wybieramy aplikację MFC->MFC Application jak na rysunku poniżej: Następnie wybieramy opcje jak na rysunku: Następnie wybieramy
Logika Stosowana. Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta. Marcin Szczuka. Instytut Informatyki UW
Logika Stosowana Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika
Site Installer v2.4.xx
Instrukcja programowania Site Installer v2.4.xx Strona 1 z 12 IP v1.00 Spis Treści 1. INSTALACJA... 3 1.1 Usunięcie poprzedniej wersji programu... 3 1.2 Instalowanie oprogramowania... 3 2. UŻYTKOWANIE
Np. Olsztyn leży nad Łyną - zdanie prawdziwe, wartość logiczna 1 4 jest większe od 5 - zdanie fałszywe, wartość logiczna 0
ĆWICZENIE 1 Klasyczny Rachunek Zdań (KRZ): zdania w sensie logicznym, wartości logiczne, spójniki logiczne, zmienne zdaniowe, tabele prawdziwościowe dla spójników logicznych, formuły, wartościowanie zbioru
Hoare Advanced Homework Assistant
Aleksy Schubert 1 Tadeusz Sznuk 2 1 alx@mimuw.edu.pl 2 tsznuk@mimuw.edu.pl 3 października 2013 Cele projektu Cel Przeniesienie nauczania semantyki na wydziale w XXI wiek. Na początek chcemy się skupić
Optimizing Programs with Intended Semantics
Interaktywna optymalizacja programów 26 kwietnia 2010 Spis treści Spis treści Wstęp Omówienie zaproponowanego algorytmu na przykładzie Wewnętrzna reprezentacja reguł dotyczących optymalizacji Wybrane szczegóły
Semantyka rachunku predykatów
Relacje Interpretacja Wartość Spełnialność Logika obliczeniowa Instytut Informatyki Relacje Interpretacja Wartość Plan Plan Relacje O co chodzi? Znaczenie w logice Relacje 3 Interpretacja i wartościowanie
Podstawy programowania w Pythonie
Podstawy programowania w Pythonie Wykład 5 dr Andrzej Zbrzezny Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 7 listopada 2012 dr Andrzej Zbrzezny (IMI AJD) Podstawy programowania
Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)
Podstawy programowania w języku Visual Basic dla Aplikacji (VBA) Instrukcje Język Basic został stworzony w 1964 roku przez J.G. Kemeny ego i T.F. Kurtza z Uniwersytetu w Darthmouth (USA). Nazwa Basic jest
Metody dowodzenia twierdzeń i automatyzacja rozumowań Tabele syntetyczne: definicje i twierdzenia
Metody dowodzenia twierdzeń i automatyzacja rozumowań Tabele syntetyczne: definicje i twierdzenia Mariusz Urbański Instytut Psychologii UAM Mariusz.Urbanski@.edu.pl Metoda tabel syntetycznych (MTS) MTS
Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Pętle. Programowanie komputerowe
Wydział Zarządzania AGH Katedra Informatyki Stosowanej Pętle 1 Program wykładu Pojęcie pętli Pętla FOR Pętla DO LOOP Pętle zagnieżdżone 2 Pojęcie pętli Suma lub iloczyn dowolnych n liczb wprowadzanych
Internet Semantyczny. Logika opisowa
Internet Semantyczny Logika opisowa Ontologie Definicja Grubera: Ontologia to formalna specyfikacja konceptualizacji pewnego obszaru wiedzy czy opisu elementów rzeczywistości. W Internecie Semantycznym
Lekcja 3: Elementy logiki - Rachunek zdań
Lekcja 3: Elementy logiki - Rachunek zdań S. Hoa Nguyen 1 Materiał a) Zdanie proste, złożone b) Spójniki logiczne (funktory zdaniotwórcze):,,,,, (alternatywa wykluczająca - XOR). c) Tautologia, zdanie
1 Podstawowe oznaczenia
Poniżej mogą Państwo znaleźć skondensowane wiadomości z wykładu. Należy je traktować jako przegląd pojęć, które pojawiły się na wykładzie. Materiały te nie są w pełni tożsame z tym co pojawia się na wykładzie.
Wstęp do programowania
Wstęp do programowania Literatura David Harel. Rzecz o istocie informatyki. Algorytmika. Wydawnictwa Naukowo-Techniczne. Wydanie trzecie. Seria: Klasyka informatyki. Warszawa 2000. Niklaus Wirth. Algorytmy
Rachunek zdań. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak
Rachunek zdań Materiały pomocnicze do wykładu wykładowca: dr Magdalena Kacprzak RACHUNEK ZDAŃ Zdania Definicja Zdanie jest to stwierdzenie w języku naturalnym, któremu można przypisać wartość prawdy lub
TwinCAT 3 konfiguracja i uruchomienie programu w języku ST lokalnie
TwinCAT 3 konfiguracja i uruchomienie programu w języku ST lokalnie 1. Uruchomienie programu TwinCAT 3: a) Kliknąć w start i wpisać wpisać frazę twincat. b) Kliknąć w ikonę jak poniżej: 2. Wybrać w menu
Przeszukiwanie z nawrotami. Wykład 8. Przeszukiwanie z nawrotami. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 238 / 279
Wykład 8 J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 238 / 279 sformułowanie problemu przegląd drzewa poszukiwań przykłady problemów wybrane narzędzia programistyczne J. Cichoń, P. Kobylański
Matematyczne Podstawy Informatyki
Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Gramatyki bezkontekstowe I Gramatyką bezkontekstową
Laboratorium. Szyfrowanie algorytmami Vernam a oraz Vigenere a z wykorzystaniem systemu zaimplementowanego w układzie
Laboratorium Szyfrowanie algorytmami Vernam a oraz Vigenere a z wykorzystaniem systemu zaimplementowanego w układzie programowalnym FPGA. 1. Zasada działania algorytmów Algorytm Vernam a wykorzystuje funkcję
Dodatek. Instrukcja instalacji i konfiguracji. dla Subiekt nexo. Wersja:
Dodatek dla Subiekt nexo Instrukcja instalacji i konfiguracji Wersja: 1.0.1., ul. Zwoleńska 127 lok. 32, 04-761 Warszawa Spis treści 1. Informacje ogólne... 3 O programie... 3 Wymagania systemowe i sprzętowe...
WOJEWÓDZTWO PODKARPACKIE
WOJEWÓDZTWO PODKARPACKIE UNIA EUROPEJSKA EUROPEJSKI FUNDUSZ ROZWOJU REGIONALNEGO Instrukcja instalacji generatora wniosku o dofinansowanie projektu ze środków EFRR w ramach I osi priorytetowej Regionalnego
Monoidy wolne. alfabetem. słowem długością słowa monoidem wolnym z alfabetem Twierdzenie 1.
3. Wykłady 3 i 4: Języki i systemy dedukcyjne. Klasyczny rachunek zdań. 3.1. Monoidy wolne. Niech X będzie zbiorem niepustym. Zbiór ten będziemy nazywać alfabetem. Skończony ciąg elementów alfabetu X będziemy
Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane:
Wykład 4 grafy Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, E zbiór krawędzi, Grafy dzielimy na grafy skierowane i nieskierowane: Formalnie, w grafach skierowanych E jest podzbiorem
Projekt ZSWS. Instrukcja uŝytkowania narzędzia SAP Business Explorer Analyzer. 1 Uruchamianie programu i raportu. Tytuł: Strona: 1 z 31
Strona: 1 z 31 Explorer Analyzer 1 Uruchamianie programu i raportu PoniŜsze czynności uruchamiają program Bex Analyzer oraz wybrany raport z hurtowni danych. 1. uruchom z menu Start>Programy>Business Explorer>Analyzer
Dowody założeniowe w KRZ
Dowody założeniowe w KRZ Jerzy Pogonowski Zakład Logiki Stosowanej UAM www.logic.amu.edu.pl pogon@amu.edu.pl w styczniu 2007 Jerzy Pogonowski (MEG) Dowody założeniowe w KRZ w styczniu 2007 1 / 10 Dowody
PROGRAMOWALNE STEROWNIKI LOGICZNE
PROGRAMOWALNE STEROWNIKI LOGICZNE I. Wprowadzenie Klasyczna synteza kombinacyjnych i sekwencyjnych układów sterowania stosowana do automatyzacji dyskretnych procesów produkcyjnych polega na zaprojektowaniu
1. Tworzenie nowego projektu.
Załącznik do Instrukcji 1. Tworzenie nowego projektu. Wybieramy opcję z menu głównego New->QNX C Project. Wprowadzamy nazwę przechodzimy do następnego kroku NEXT. Wybieramy platformę docelową oraz warianty
Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki
Informatyka I Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2018 Operacje relacji (porównania) A
Wykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Pomoc do programu Oferent
Pomoc do programu Oferent Co to jest Oferent Oferent jest bezpłatną aplikacją internetową (z możliwością instalacji na komputerze) pozwalającą na przygotowanie kosztorysu ofertowego, jego wydrukowanie
programu Neofon instrukcja obsługi Spis treści
instrukcja obsługi programu Neofon Spis treści... 2 Główne okno aplikacji... 3 Panel dolny... 4 Klawiatura numeryczna... 5 Regulacja głośności... 6 Książka adresowa... 7 Okno dodawania/edycji kontaktu...
Program szkolenia PODSTAWY VBA (VISUAL BASIC FOR APPLICATIONS) I FORMULARZE.
Program szkolenia PODSTAWY VBA (VISUAL BASIC FOR APPLICATIONS) I FORMULARZE SZKOLENIE JEST DLA OSÓB, KTÓRE: znają program Microsoft Excel na poziomie średniozaawansowanym, chcą poznać ogólne zasady tworzenia
Instrukcja aktualizacji oprogramowania. Wersja dokumentu: 01i00 Aktualizacja:
Instrukcja aktualizacji oprogramowania Wersja dokumentu: 01i00 Aktualizacja: 2016-03-11 Uwagi Inne dokumenty dotyczące obsługi urządzeń można pobrać ze strony energetyka.itr.org.pl Przed aktualizacją oprogramowania
Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PODSTAWOWY.
Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PODSTAWOWY SZKOLENIE JEST DLA OSÓB, KTÓRE: nigdy wcześniej nie programowały lub nie miały styczności z programowaniem od dłuższego czasu,
Wstęp do informatyki- wykład 7
1 Wstęp do informatyki- wykład 7 Operatory przypisania, złożone operatory przypisania, Pętla while i do..while Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania.