Semantyka i Weryfikacja Programów - Laboratorium 7



Podobne dokumenty
Semantyka i Weryfikacja Programów - Laboratorium 2 Działania na ułamkach, krotki i rekordy

2. Funktory TTL cz.2

Programy współbieżne

FUNKCJA KWADRATOWA. RÓWNANIA I NIERÓWNOŚCI DRUGIEGO STOPNIA.

Algebra Boola i podstawy systemów liczbowych. Ćwiczenia z Teorii Układów Logicznych, dr inż. Ernest Jamro. 1. System dwójkowy reprezentacja binarna

4.6. Gramatyki regularne

2. FUNKCJE WYMIERNE Poziom (K) lub (P)

Wymagania edukacyjne matematyka klasa 2 zakres podstawowy 1. SUMY ALGEBRAICZNE

Podstawy programowania obiektowego

WYMAGANIA EDUKACYJNE Z MATEMATYKI W KLASIE IIc ZAKRES PODSTAWOWY I ROZSZERZONY

ZADANIA OTWARTE. Są więc takie same. Trzeba jeszcze pokazać, że wynoszą one 2b, gdyż taka jest długość krawędzi dwudziestościanu.

Metoda sił jest sposobem rozwiązywania układów statycznie niewyznaczalnych, czyli układów o nadliczbowych więzach (zewnętrznych i wewnętrznych).

Wymagania edukacyjne matematyka klasa 2b, 2c, 2e zakres podstawowy rok szkolny 2015/ Sumy algebraiczne

Iloczyn skalarny

ZADANIA Z ZAKRESU SZKOŁY PODSTAWOWEJ, GIMNAZJUM I SZKOŁY ŚREDNIEJ

a) b) Rys Schemat ideowo-konstrukcyjny układu do przykładu 6.1 a) i jego schemat blokowy

XI. Rachunek całkowy funkcji wielu zmiennych. 1. Całka podwójna Całka podwójna po prostokącie. Oznaczenia:

KONKURS MATEMATYCZNY dla uczniów gimnazjów w roku szkolnym 2012/13. Propozycja punktowania rozwiązań zadań

Weryfikacja modelowa jest analizą statyczną logiki modalnej

G i m n a z j a l i s t ó w

PODSTAWY BAZ DANYCH Wykład 3 2. Pojęcie Relacyjnej Bazy Danych

ZADANIA ZAMKNIĘTE. Zadanie 1 (1p). Ile wynosi 0,5% kwoty 120 mln zł? A. 6 mln zł B. 6 tys. zł C. 600 tys. zł D. 60 tys. zł

usuwa niewymierność z mianownika wyrażenia typu

Wymagania kl. 2. Uczeń:

Temat lekcji Zakres treści Osiągnięcia ucznia

Materiały diagnostyczne z matematyki poziom podstawowy

Oznaczenia: K wymagania konieczne; P wymagania podstawowe; R wymagania rozszerzające; D wymagania dopełniające; W wymagania wykraczające

Równania i nierówności kwadratowe z jedną niewiadomą

MATeMAtyka 3 inf. Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych. Zakres podstawowy i rozszerzony. Dorota Ponczek, Karolina Wej

Legenda. Optymalizacja wielopoziomowa Inne typy bramek logicznych System funkcjonalnie pełny

Wymagania na ocenę dopuszczającą z matematyki klasa II Matematyka - Babiański, Chańko-Nowa Era nr prog. DKOS /02

Wykład 2. Granice, ciągłość, pochodna funkcji i jej interpretacja geometryczna

4.3. Przekształcenia automatów skończonych

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY VIII w roku szkolnym 2015/2016

WYMAGANIA I KRYTERIA OCENIANIA Z MATEMATYKI W 3 LETNIM LICEUM OGÓLNOKSZTAŁCĄCYM

Chapter 1: Boolean Logic

Matematyczne Podstawy Informatyki

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA POSZCZEGÓLNYCH ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI POZIOM PODSTAWOWY KLASA 2

Podstawy układów logicznych

Rozwiązania maj 2017r. Zadania zamknięte

Propozycja przedmiotowego systemu oceniania wraz z określeniem wymagań edukacyjnych (zakres podstawowy)

WEKTORY skalary wektory W ogólnym przypadku, aby określić wektor, należy znać:

Kodowanie liczb. Kodowanie stałopozycyjne liczb całkowitych. Niech liczba całkowita a ma w systemie dwójkowym postać: Kod prosty

Kombinacyjne układy logiczne (A 2)

Rys Wyrównanie spostrzeżeń zawarunkowanych jednakowo dokładnych C. KRAKOWIANY

Grażyna Nowicka, Waldemar Nowicki BADANIE RÓWNOWAG KWASOWO-ZASADOWYCH W ROZTWORACH ELEKTROLITÓW AMFOTERYCZNYCH

Szczegółowe wymagania edukacyjne z matematyki, klasa 2C, poziom podstawowy

H. Dąbrowski, W. Rożek Próbna matura, grudzień 2014 r. CKE poziom rozszerzony 1. Zadanie 15 różne sposoby jego rozwiązania

4. RACHUNEK WEKTOROWY

Macierz. Wyznacznik macierzy. Układ równań liniowych

Wymagania edukacyjne z matematyki Klasa IIB. Rok szkolny 2013/2014 Poziom podstawowy

MATURA 2014 z WSiP. Zasady oceniania zadań

Lista 4 Deterministyczne i niedeterministyczne automaty

Autor: Zbigniew Tuzimek Opracowanie wersji elektronicznej: Tomasz Wdowiak

Zadania. I. Podzielność liczb całkowitych

mgh. Praca ta jest zmagazynowana w postaci energii potencjalnej,

Realizacje zmiennych są niezależne, co sprawia, że ciąg jest ciągiem niezależnych zmiennych losowych,

2. PODSTAWY STATYKI NA PŁASZCZYŹNIE

Wprowadzenie: Do czego służą wektory?

Bardzo krótki wstęp do elektroniki cyfrowej

WEKTORY skalary wektory W ogólnym przypadku, aby określić wektor, należy znać:

WYKŁAD 7 CYFROWE UKŁADY SCALONE

WYZNACZNIKI. . Gdybyśmy rozważali układ dwóch równań liniowych, powiedzmy: Takie układy w matematyce nazywa się macierzami. Przyjmijmy definicję:

JĘZYKI FORMALNE I AUTOMATY SKOŃCZONE

KARTA WZORÓW MATEMATYCZNYCH. (a + b) c = a c + b c. p% liczby a = p a 100 Liczba x, której p% jest równe a 100 a p

Dorota Ponczek, Karolina Wej. MATeMAtyka 2. Plan wynikowy. Zakres podstawowy

1 Wprowadzenie do automatów

Technikum Nr 2 im. gen. Mieczysława Smorawińskiego w Zespole Szkół Ekonomicznych w Kaliszu

f(x)dx (1.7) b f(x)dx = F (x) = F (b) F (a) (1.2)

Wymagania na poszczególne oceny z matematyki w Zespole Szkół im. St. Staszica w Pile. Kl. II poziom podstawowy

Analiza matematyczna i algebra liniowa

Wymagania edukacyjne z matematyki FUNKCJE dopuszczającą dostateczną dobrą bardzo dobrą

PEWNIK DEDEKINDA i jego najprostsze konsekwencje

O pewnych zgadnieniach optymalizacyjnych O pewnych zgadnieniach optymalizacyjnych

Wykład 6 Dyfrakcja Fresnela i Fraunhofera

Zwróć uwagę. Czytaj uważnie treści zadań i polecenia. W razie potrzeby przeczytaj je kilka razy.

DZIAŁ 2. Figury geometryczne

Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych klasa druga zakres podstawowy

zestaw DO ĆWICZEŃ z matematyki

Wyznacznikiem macierzy kwadratowej A stopnia n nazywamy liczbę det A określoną następująco:

Znajdowanie analogii w geometrii płaskiej i przestrzennej

ROZWIĄZYWANIE MAŁYCH TRÓJKĄTÓW SFERYCZNYCH

Wymagania edukacyjne z matematyki

Jest błędem odwołanie się do zmiennej, której nie przypisano wcześniej żadnej wartości.

Wprowadzenie do Sieci Neuronowych Łańcuchy Markowa

Klucz odpowiedzi do zadań zamkniętych oraz schemat oceniania

WYKŁAD 5. Typy macierzy, działania na macierzach, macierz układu równań. Podstawowe wiadomości o macierzach

Macierz. Wyznacznik macierzy. Układ równań liniowych

Wykªad 8. Pochodna kierunkowa.

Wymagania edukacyjne na poszczególne oceny z matematyki w klasie II poziom rozszerzony

Wspomaganie obliczeń za pomocą programu MathCad

WYMAGANIA I KRYTERIA OCENIANIA DO EGZAMINU POPRAWKOWEGO MATEMATYKA. Zakresie podstawowym i rozszerzonym. Klasa II rok szkolny 2011/2012

Semantyka i Weryfikacja Programów - Laboratorium 3

system identyfikacji wizualnej forma podstawowa karta A03 część A znak marki

Wykład 2. Funkcja logarytmiczna. Definicja logarytmu: Własności logarytmu: Logarytm naturalny: Funkcje trygonometryczne

Co można zrobić za pomocą maszyny Turinga? Wszystko! Maszyna Turinga potrafi rozwiązać każdy efektywnie rozwiązywalny problem algorytmiczny!

Elementy znajdujące się w opakowaniu mogą różnić się w zależności od kraju, w którym zakupiono urządzenie. Przewód zasilający do gniazdka ściennego

ELEKTRONIKA CYFROWA. Materiały y pomocnicze do wykład sem.. 1

KRYTERIA OCENIANIA ODPOWIEDZI Próbna Matura z OPERONEM. Matematyka. Poziom rozszerzony. Listopad Wskazówki do rozwiązania zadania =

Układ elektrohydrauliczny do badania siłowników teleskopowych i tłokowych

Transkrypt:

Semntyk i Weryfikj Progrmów - Lortorium 7 Weryfikj twierdzeń logiznyh Cel. Celem ćwizeni jest zpoznnie się z metodą utomtyznego dowodzeni twierdzeń, tzn. weryfikji, zy dne twierdzenie jest tutologią (twierdzenie prwdziwe nzyw się tutologią). Przykłdmi tkih prolemów są: - dowodzenie twierdzeń w klsyznym ujęiu, tzn. zy z złożeni wynik tez (implikj) - dnie równowżnośi wyrżeń (np. wzory uprszzjąe) - weryfikj, zy progrm dje wynik zgodny ze swą speyfikją - weryfikj, zy shemt elektronizny, n którym m yć wzorowny progrm, relizuje wymgną funkję. Podstwowy progrm utomtyznego weryfiktor tutologii zprezentowno n wykłdzie 5 i nstępnyh. Poniżej podno wersję zmodyfikowną, wygodniejszą w użyiu i optymlniejszą pod względem zsu olizeń. Niżej omówiono jedynie różnie w stosunku do wersji oryginlnej oprogrmowni. Deklrj typu dnyh prop Wprowdzono infiksowe konstruktory typu i zdefiniowno ih priorytety, Uzupełniono typ prop o symolizną prwdę i fłsz. Ułtwi to symolizne zpisywnie wyrżeń rhunku zdń. infix 6 **; infix 5 ++; dttype prop = At of string (* tom *)!! of prop (* negj *) ++ of prop * prop (* lterntyw - sum *) ** of prop * prop (* koniunkj - ilozyn *) T F; (* symolizne prwd i flsz *) Przykłd Poniżej zdefiniowno tomy i zpisno symoliznie wyrżenie p or q nd r. vl p = At "p"; vl q = At "q"; vl r = At "r"; vl wyrz = p ++ q ** r; (* uzyie nwisow nie jest koniezne *) Implikj i równowżność. Zdefiniowno je infiksowo jko funkje o odpowiednih prioryteth: infix 4 --> ; fun p --> q =!!p ++ q; infix 4 <=> ; fun p<=>q = p ** q ++!!p **!! q; Przeksztłenie do normlnej formy negyjnej. Funkję nnf weryfiktor uzupełniono o nowe wrinty z wprowdzonymi konstruktormi T i F. fun nnf (At ) = At nnf (!!(At )) =!!(At ) nnf (!!T) = F (* zprzezenie prwdy jest flszem *) nnf (!!F) = T nnf T = T (* rk negji, konstruktor pozostje *) nnf F = F nnf (!!(!! p)) = nnf p (* podwojn negj *) nnf (!!((p++q))) = nnf (!!p **!!q) (* negj sumy,ilozyn negji *) nnf (!!((p**q)) = nnf (!!p ++!!q) nnf (p**q) = (nnf p) ** (nnf q) nnf (p++q) = (nnf p) ++ (nnf q); - -

Knonizn form koniunkyjn. Przytozone niżej funkje roz i nf nie wymgją wprowdzeni zmin. fun roz(p,q**r) = roz(p,q) ** roz(p,r) (* p+q*r = (p+q)*(p+r) *) roz(q**r,p) = roz(q,p) ** roz(r,p) (* q*r+p = (q+p)*(r+p) *) roz(p,q) = p ++ q ; (* zden skldnik nie jest koniunkj *) fun nf (p ++ q) = roz(nf p, nf q) (* Alt zstpione przez roz (j.w.) *) nf (p ** q) = (nf p) ** (nf q) (* rozkld skldnikow ilozynu *) nf p = p; (* pojedynzy tom lu stl *) Przeieg weryfikji. W lterntywh opróz tomów i ih negji występują terz konstruktor T i F. Sprwdznie poprwnośi wykonuje się w dwóh etph:. Sprwdzenie z pomoą podnej niżej funkji hk_lt, zy w lterntywie znjduje się T (wtedy jest on tutologią). (* sprwdzenie, zy w lterntywie znjduje się T *) fun hk_lt (T) = true (* tk, lterntyw jest tutologi *) hk_lt(p++q) = (hk_lt p) orelse (hk_lt q) hk_lt _ = flse;. Wyznzenie zęśi wspólnej list tomów znegownyh i nieznegownyh, podonie jk w dotyhzsowym weryfiktorze. Funkje neg i pos uzupełniono o wrinty z nowymi konstruktormi T i F (le są one pomijne). exeption NieCNF; (* wyrzenie nie przeksztlone do CNF *) fun pos (At ) = [] pos (!! (At _)) = [] pos (p++q) = pos p @ pos q pos T = [] pos F = [] pos _ = rise NieCNF; fun neg (At _) = [] neg (!! (At )) = [] neg (p ++ q) = neg p @ neg q neg T = [] neg F = [] neg _ = rise NieCNF; infix mem; fun x mem [] = flse x mem (y::l) = (x=y) orelse (x mem l); (* zes wspoln dwu list *) fun inter ([],ys)=[] inter (x::xs,ys) = if x mem ys then x::inter(xs,ys) else inter(xs,ys); Funkj sprwdzją (* funkj sprwdzj *) fun tut (p**q) = tut p ndlso tut q(* p,q - zynniki Kon *) tut p = (hk_lt p) orelse ([] <> inter(pos p, neg p)); fun hek(s) = tut (nf (nnf (s))); (* ziorz funkj *) Cły przedstwiony wyżej progrm znjduje się w złązonym pliku l_5.sml. - -

Przykłdy P.. Dowód twierdzeni Prwdziwość koniunkji implikuje prwdziwość lterntywy, tzn. p q ( p + q) vl p = At "p" nd q = At "q"; (* deklrje symoli jko tomy *) vl tw = p ** q --> (p ++ q); (* symolizny zpis twierdzeni *) hek tw; (* utomtyzn weryfikj *) P.. Równowżność wzorów A. Wykznie, że wyrżenie p + p p + q jest prwdziwe (true) dl dowolnyh p, q vl wyr = p ++!! (p **!!(p ++ q)); (* zpis wyrżeni *) hek wyr; (* weryfikj *) B. Sprwdzenie, że wyrżeni p q i ( p q) ( q p) są równowżne. vl wz = p <=> q; (* pierwszy wzor *) vl wz = (p-->q) ** (q-->p); (* drugi *) vl tw = wz <=> wz; (* twierdzenie o ih rownowznośi *) hek tw; (* weryfikj *) P.. Sterownie logizne Dny jest mikrokomputerowy ukłd START-STOP włązni i wyłązni pewnej mszyny. s t r t s t n s t o p µ P o u t M s t n Speyfikj progrmu m postć: OUT = ( START + STAN) STOP Sterownie jest relizowne przez progrm mikroproesor w dziedzinie oolowskiej. Jego zpis zgodny z metodą FBD (zo. wykł. 6) jest reprezentowny w posti rmek AND, OR, NOT (loków funkyjnyh) w posti ukłdu s t r t s t n O R y A N D o u t s t o p N O T y Niżej podno przykłdowy progrm relizująy tkie sterownie (wrtość logizn true, flse). (* funkje iliotezne występująe n shemie *) fun OR(x,x) = x orelse x; fun AND(x,x) = x ndlso x; fun NOT(x) = not x; (* funkj steruj *) fun strt_stop(strt, stn, stop) = let vl y = OR(strt,stn) (* wyjśie loku pierwszego *) vl y = NOT(stop) (* wyjśie loku drugiego *) vl y = AND(y,y); (* wyjśie loku trzeiego *) in y end; (* olizenie wyjsi ukldu - sterowni *) vl out = strt_stop(true, flse, flse); (* rezultt ool *) - -

Weryfikj progrmu sterująego Relizj i weryfikj w dziedzinie symoliznej jest nstępują: (* definij tomów reprezentujyh sygnly *) vl START = At "strt" nd STOP = At "stop" nd STAN = At "stn"; (* funkje symolizne *) fun OR_S(X,X) = X++X; fun AND_S(X,X) = X**X; fun NOT_S(X) =!!X; (* symolizne wykonnie odpowidje funkji strt_stop*) vl Y = OR_S(START,STAN); vl Y = NOT_S(STOP); vl Y = AND_S(Y,Y); vl OUT = Y; (* symolizny rezultt wykonni progrmu *) vl SPEC_OUT = (START ++ STAN) **!! STOP; (* speyfikj symolizn *) (* twierdzenie o rownowznosi speyfikji i wyniku *) vl tw = SPEC_OUT <=> OUT; hek tw; (* weryfikj - rezulttem jest true *) P. 4. Shemty elektronizne Progrmy relizująe funkje zezpiezeń są zęsto wzorowne n sprwdzonyh rozwiąznih sprzętowyh. N poniższyh rysunkh pokzno kolejno: ) ideę funkjonowni multiplekser 4: (4WE, WY) ) symol logizny multiplekser ) relizję funkji y = + + 4) relizję funkji y = d + d + d + d + d + d + d + d () () out S S () (4) S S MUX out S S MUX S S MUX y d y - 4 -

Speyfikj i relizj multiplekser Speyfikję możn zpisć jko y=!s!s x +!s s x +!s s x + s s x. Relizj multiplekser w dziedzinie oolowskiej jest nstępują: fun mux4(s,s,x,x,x,x) = if not s ndlso not s then x else if s ndlso not s then x else if not s ndlso s then x else x; Speyfikję możn zpisć symoliznie stosują pomonize wielowejśiowe funkje koniunkji i lterntywy. (* relizj symolizn funkji wielowejsiowyh *) fun OR4_S(X,X,X,X4) = X ++ X ++ X ++ X4; fun AND_S(X,X,X) = X ** X ** X; fun MUX4_S(S,S,X,X,X,X) = OR4_S( AND_S(!! S,!!S, X), AND_S( S,!!S, X), AND_S(!! S, S, X), AND_S( S, S, X) ); Sprwdzenie relizji funkji z rys. (* relizj symolizn funkji z rys. *) vl A = At "A" nd B = At "B" nd C = At "C"; vl ukld = MUX4_S(B, A, F, T, C,!!C); (* speyfikj *) vl spe = A ** B **!!C ++ A **!!B ** C ++!!A ** B; (* twierdzenie *) vl tw = ukld <=> spe; (* sprwdzenie *) hek tw; Rezulttem jest true, o potwierdz poprwność relizji. Sprwdzenie relizji funkji z rys. 4 (* relizj symolizn funkji z rys.4 *) vl A = At "A" nd B = At "B" nd C = At "C" nd D = At "D"; fun NAND_S(X,X) =!! (X ** X); (* definij funkji NAND *) vl Y = NAND_S(!!C,D); vl Y = MUX4_S(B, A, F, Y,!!C, Y); (* speyfikj *) vl spe = A ** B ** C ** D ++!!A ** B ** C ** D ++!!A ** B **!!C **!!D ++!!A ** B ** C **!!D ++ A **!!B **!!C **!!D ++ A **!!B **!!C ** D ++ A ** B **!!C **!!D ++ A ** B ** C **!!D ; (* twierdzenie *) vl tw = Y <=> spe; hek tw; (* sprwdzenie - trw dlugo ok. sekund!!!*) Poleeni - 5 -

. Zweryfikuj formlnie podne niżej równowżnośi: d + d = d + d + d = d. Zrelizuj (nrysuj shemt) i zweryfikuj formlnie ukłd multiplekser zudownego wyłąznie z wielowejśiowyh rmek NAND. Wskzówki. Wykorzystj speyfikję ukłdu w posti lterntywy koniunkji. Skorzystj z tożsmośi:!( ) =! Zstosuj w prktye przeksztłeni: + =!(!(+)) =!(!!) - 6 -

Zdni do smodzielnego rozwiązni. Udowodnij, że z złożeni ( + ) ) wynik tez (implikj).. Sprwdź formlnie, zy prwdziwe są nstępująe wzory? ) + + = ) + = ) + = +. Jką funkję relizuje przedstwiony n poniższym rysunku ukłd? Wykż formlnie. S S MUX f 4. Sprwdź formlnie które z poniższyh wzorów są prwdziwe? ) [( p q) r] [ p ( q r)] ) [( p q) r] [( p q) q r)] 5. Sprwdź formlnie które z poniższyh wzorów są prwdziwe? ) ( p + q) p + r) q + r) ( p + q) p + r) ) q [( p + q) p] 6. Dekoder jest ukłdem o n wejśih i n wyjśih. Do dekoder :4 dołązono sygnły A, B. Zproponuj ukłd, który dołązony do wyjść dekoder odtworzy sygnły A,B. Wykż formlnie poprwność dziłni. 7. Wykż słuszność nstępująego rozumowni: DX A? B A B Jeśli student nie złoży projektu, to nie zlizy przedmiotu X. Jeśli student nie zlizy przedmiotu X, to nie przejdzie n nstępny rok. Ztem jeśli student przeszedł n nstępny rok, to znzy, że musił złożyć projekt z przedmiotu X. Wskzówk. Jko tomy możn przyjąć nstępująe zdni logizne: ) student skłd projekt, ) przedmiot X zlizony, ) student przehodzi n nstępny rok. - 7 -

8. Zproponuj ukłd, który 4-itowe słowo uzupełni 5-tym item przystośi (even), tzn. słowo oryginlne słowo z item przystośi Jką funkję logizną relizuje ukłd? Podj speyfikję i zweryfikuj formlnie. Wsk.: Użyj rmek EXOR 9. Wykż, że poniższy ukłd relizuje podną funkję. x = ( + d) x d. Koder m zmienić kod unitrny z n kod BCD. Jeżeli wyjśiom,,, d przyporządkowć wgi =, =, =4, d=8, to otrzymuje się nstępująe wyrżeni logizne =x +x +x 5 +x 7 +x 9 =x +x +x 6 +x 7 =x 4 +x 5 +x 6 +x 7 d=x 8 +x 9 x x x... x 9 d Zproponuj progrmową relizję koder i wykż, że odpowid on speyfikji. - 8 -

. Dw spośród sześiu sygnłów sterująyh odłąznikmi trnsformtorów i odłąznikiem sekyjnym w stji dwutrnsformtorowej mją postć x = +, z = e + + + + d + + d gdzie:, stny przekźników podnpięiowyh ( jest npięie (true)), d stny odłązników trnsformtorów ( zmknięty) e stn odłąznik sekyjnego ( zmknięty) x z sygnł otwierni odłąznik trnsformtor I ( otwiernie) sygnł zmykni odłąznik sekyjnego ( zmyknie). Nrysuj shemt złożony z dowolnyh rmek i zweryfikuj go.. Udowodnij formlnie, że nstępująe dw ukłdy kominyjnie nie generują identyznyh wyjść. Y Y d. Górny moduł wyświetlz 7-segmentowego jest zplny zgodnie z funkją x = d + d + d + Zproponuj ukłd złożony z multiplekser 4: i rmek, który zrelizuje tką funkję. Wykż formlnie jego poprwność. - 9 -