Rysunek 1: Informacja kontaktowa
|
|
- Eleonora Łukasik
- 6 lat temu
- Przeglądów:
Transkrypt
1 ËÝ Ø ÑÝ ØÝÔ Û Ð ÞÝ Û ÔÖÓ Ö ÑÓÛ Ò Ö Ñ ÒØÝ ÖÝÔØÙ ÈÖÓ º Ò Ö Û Åº È ØØ ÌÝÔ ÈÖÞ Ø ÙÑ ÞÝ È Û Ìº ÏÓ ÓÛ ¾ Ð ØÓÔ ¾¼¼ ½
2 ¾ ½ ÏËÌ È Rysunek 1: Informacja kontaktowa dr inż. Paweł T. Wojciechowski Instytut Informatyki, Politechnika Poznańska. Tel: Biuro: Centrum Wykładowe PP, p.5 ½ Ï ØÔ ÈÖÞÝ ÓÛ Þ ØÓ ÓÛ Ò Ý Ø Ñ Û ØÝÔ Û Ð ÞÝ Û ÔÖÓ Ö ÑÓÛ Ò ÔÖÞ Ø Û ÓÒÓ Ò Ð Þ º ÂÞÝ ÓÛ ÞÔ Þ ØÛÓ ËÝ Ø ÑÝ ØÝÔ Û Û ÒÝÑ Ò ÖÞ Þ Ñ Ó ÔÖÓ ØÓ¹ Û Ò ÞÔ ÞÒÝ ÞÝ Û Ó Û Þ Þ Ò ØÝÔÓÛ ÒÝ ÞÝ Ñ Ý Ý Ø ÞÔ ÞÒÝ ÔÖÞ Þ ÛÝ ÓÒÝÛ Ò Ó ÔÓÛ Ò ÓÒØÖÓÐ ÔÖ Û Þ µ Û Þ ÛÝ ÓÒ Ò ÔÖÓ Ö ÑÙº ÈÓÒ Û Ò Ø ÓÒØÖÓÐ Ò ÖÙ Þ ØÝÛÒÓ Û ÔÖ ØÝ Ø Ö ÞÓ Ò ¹ Û Ð ÞÔ ÞÒÝ Ò ØÝÔÓÛ ÒÝ ÞÝ Ûº ÈÖÞÝ Ñ Ò ØÝÔÓÛ Ò Ó ÞÔ ÞÒ Ó ÞÝ Ø ÄÁËȺ Æ ØÓÑ Ø ÞÝ Ñ Ð Ö ØÓ Û ÒØ Ò Ò ØÝÔÓÛ Ò Ó ÞÝ Ø ÖÝ Ò Ø ÞÔ ÞÒݺ Ý Þ Ô ÛÒ ÞÔ Þ ØÛÓ ØÝÔÓÛ Ò ÞÔ ÞÒ ÞÝ ÑÓ Ù ÝÛ ÓÑ Ò ¹ ÓÒØÖÓÐ Þ Ö ÛÒÓ Û Þ ÓÑÔ Ð ÓÒØÖÓÐ Û Þ ÛÝ ÓÒ Ò ÔÖÓ Ö ÑÙ ÓÐÛ Ò Ø Ò ØÓ Ô ÖÛ Þ º Á Ñ Ý Ý Ý Ø Ñ ØÝÔ Û ÑÔÐ Ñ ÒØÙ Ý Ð ÓÖÝØÑ ÞÒ ÖÓÞÛ ÞÝÛ ÐÒ Ò º Ð µ ÓÒØÖÓÐ Û Þ ÓÑÔ Ð Ó ÛÝ Ð Ñ ÒÓÛ Ò Û ÞÝ Ø Ò ÛÝ ÛÝØÝ¹ Û ÐÒÝ Û Ø Ô ÛÒÝ ÖÓ Þ Û ÛÝ ÛÝØÝÛ ÐÒÝ Ûµº Æ Ø Ö ÞÝ ÒÔº µ Þ ØÖÙ Ò ØÝÔÝ Ó Ò ÔÖ Ø Ò Ù ÔÖÞÝ ØÝÑ Ó ÖÓÒ ÞÔ ÞÒÝ ÞÝ Û Æ Ø Ö ÞÝ ÔÖÓ ØÓÛ Ò Ó ÞÔ ÞÒ Ò ÑÓÝ Þ ØÓ ÓÛ Ò Ý Ø ÑÙ ØÝÔ Û Ó ÑÓ Ó Þ Û Ð ÞÔ ÞÒ Ò Þ ÙÛ Ò Ò ÔÖÞ Û ÝÛ ÐÒ ÓÑ Ò ÞÝ Ó ØÓÛ ÞÞ ÐÒ Ò Ö ÓÒ Ò Ø Ò ÔÖÓ Ð Ñµº Ó ¹ ÞÝÑÝ Ø Ó ÔÖÞÝ Ò ÛÝ Þ Ò Ð ÞÙ ÓÑ Ò ÔÓÐ ÑÓÖ ÞÑÙ ÅÄ Þ ÞÑ Ò¹ ÒÝÑ Ö Ö Ò Ñ Ò º ÑÙØ Ð Ö Ö Ò µº Ì ÔÖÓ Ð ÑÝ ÞÒ ÞÒ ÔÖÞÝÞÝÒ Ý Ó ÖÓÞÛÓ Ù Ñ Ø Ñ ØÝ ÓÖÑ ÐÒ ÐÓ Ý Ø Ñ Û ØÝÔ Û ÑÓ Ò ÝÒ ÛØ Ý Ù ÓÛÓ Ò ÞÝ Ø ÞÔ ÞÒÝ ÔÓ ØÝÑ
3 Rysunek 2: Literatura 1. Wykłady: skrypt Systemy typów dla języków programowania. 2. Laboratoria: dokumentacja systemów i artykuły wskazane przez prowadza- cego. Inne (niewymagane): 1. Benjamin C. Pierce, Types and Programming Languages, MIT Press, Benjamin C. Pierce, ed., Advanced Topics in Types and Programming Languages, MIT Press, Robert Harper, Programming Languages: Theory and Practice, Draft dostępny na stronie WWW autora. 4. Glynn Winskel, The Formal Semantics of Programming Languages: An Introduction, MIT Press, Rysunek 3: Forma zaliczenia przedmiotu Wykłady: obecność na wykładach sprawdzian pisemny rozmowa zaliczeniowa przy wpisie do indeksu (jeśli potrzeba) Laboratoria: obecność na laboratoriach test i/lub projekt programistyczny
4 ½ ÏËÌ È Rysunek 4: Systemy komputerowe zawierajace błędy programistyczne nie sa godne zaufania. Zmniejszenie liczby błędów programistycznych zwiększy niezawodność systemów. Rysunek 5: Jak uniknać części błędów programistycznych? 1. Testowanie: trudne dla programów współbieżnych i rozproszonych, brak gwarancji, 2. Mechaniczne dowodzenie poprawności: daje się przeprowadzić dla małych programów w językach dla których istnieja udowadniacze twierdzeń (ang. theorem provers), 3. Sprawdzanie modelu (ang. model checking): utwórz model systemu i zastosuj go do symulacji i weryfikacji, 4. Dobre języki: oferuja prawidłowe abstrakcje, które uniemożliwiaja pewne błędy (np. garbage collector uniemożliwia błędy przydziału pamięci), 5. Systemy typów: potrafia udowodnić, że każde wykonanie dowolnego programu zachowuje dane własności, wyrażone jako typy, 6. Połaczyć różne metody, np. 3. i 5.
5 Rysunek 6: Systemy typów dla języków programowania Jedna z najbardziej użytecznych koncepcji w programowaniu jest pojęcie typu, używane do klasyfikowania rodzaju obiektów które sa manipulowane [przez programy]. Znaczaca część błędów programistycznych jest wykrywana przez implementację, która sprawdza zgodność typów zanim jeszcze program zostanie wykonany. Typy dostarczaja taksonomii która pomaga ludziom myśleć i komunikować się na temat programów komputerowych. R. Milner, Computing Tomorrow (CUP, 1996) Rysunek 7: Systemy typów dla języków programowania Co to sa systemy typów i do czego sa wykorzystywane? System typów jest syntaktyczna metoda udowadniania nieobecności pewnych zachowań programu przez klasyfikowanie fraz zgodnie z rodzajem wartości przez nie obliczanych. B. Pierce, Types and Programming Languages (MIT, 2002) Rysunek 8: Systemy typów dla języków programowania Praca nad systemami typów dla języków programowania dotyka obecnie wielu dziedzin informatyki, od projektowania i implementacji języków programowania do inżynierii oprogramowania, bezpieczeństwa sieci komputerowych, baz danych, i analizy systemów współbieżnych i rozproszonych. B. Pierce ed., Advanced Topics in Types and Programming Languages (MIT, 2005)
6 ½ ÏËÌ È Rysunek 9: Zastosowania systemów typów Detekcja błędów przez sprawdzanie typów: statycznie (dajace się rozstrzygnać błędy wykryte zanim programy sa wykonane) albo dynamicznie (błędy typowania wykryte podczas wykonania programu). Abstrahowanie i wspomaganie strukturalizacji dużych systemów. Dokumentacja. Efektywność. Bezpieczeństwo języka programowania. Rysunek 10: Językowe bezpieczeństwo (ang. safety) Nieformalna definicje bezpiecznego języka: Bezpieczny język to taki, który chroni swoje własne abstrakcje wysokiego poziomu [niezależnie od tego jaki legalny program byśmy w nim napisali]. Bezpieczny język jest kompletnie zdefiniowany przez swoja dokumentację programisty [raczej niż kompilator który używamy]. Bezpieczny język może pozwalać na wychwytywalne błędy (ang. trapped errors) [te które moga być bezproblemowo obsłużone], ale nie może pozwalać na niewychwytywalne błędy [czyli te które powoduja nieprzewidywalny krach programu].
7 Rysunek 11: Formalne systemy typów Zapewniaja precyzyjny, matematyczny opis nieformalnych systemów typów (takich jak te które pojawiaja się w dokumentacji większości typowanych języków). Stanowia podstawę twierdzeń o niezawodności systemu typów (ang. type soundness): każdy dobrze typowany program nie jest w stanie wyprodukować w czasie wykonania żadnych błędów (określonego rodzaju). Umożliwiaja rozdzielenie specyfikacji aspektów typowania danego języka od spraw algorytmicznych: formalny system typów może zdefiniować typowanie niezależnie od poszczególnych implementacji algorytmów sprawdzania typów. Rysunek 12: Zaawansowane zastosowania Przykładowo, zaprojektowano systemy typów do: 1. bezpiecznych operacji na wskaźnikach i zarzadzania pamięcia, 2. bezpiecznego wykonywania nieznanych programów ( sandboxes ), 3. unikania warunków wyścigu, np. bezpieczne zamki (ang. safe locking), 4. uzyskiwania atomowości w programach wielowatkowych, 5. unikania zakleszczenia, 6. kompozycji protokołów, np. typy sesyjne (ang. session types), 7. generacja kodu z dowodem (ang. proof-carrying code).
8 ½ ÏËÌ È Rysunek 13: Zaawansowane zastosowania Dość niezwykłe zastosowania systemów typów: 1. bezpieczne przetaczanie komunikatów (and. type-safe marshalling), 2. kontrola wersji oprogramowania, 3. bezpieczna dynamiczna aktualizacja kodu (ang. type-safe dynamic software updating), 4. weryfikacja reguł deklaratywnej synchronizacji. Nowe zastosowania pojawiaja się na bieżaco! Rysunek 14: Przykładowe narzędzia i języki 1. Objective Caml: popularny wariant języka ML 2. Java 1.5: generics (typy polimorficzne) 3. Java Programming Toolkit: Escjava - Extended Static Checker 4. Java Pathfinder: weryfikacja bytecode-u Java (NASA) 5. CCured: bezpieczne zarzadzanie pamięcia w języku C 6. Cyclone: bezpieczny dialekt języka C 7. XDuce: typowany język do przetwarzania XML 8. Scala: przetwarzanie XML, kompilowany do bytekodu Java 9. Pict i Nomadic Pict: statyczne typowanie komunikacji 10. Acute: bezpieczna komunikacja między programami
9 Rysunek 15: Typowe stwierdzenie w systemie typów (ang. typing judgement) jest relacja między środowiskiem typowania (Γ), frazami programu (M) i wyrażeniami typu (t), która zapisujemy Γ M : t i czytamy majac dane przypisanie typów do wolnych identyfikatorów frazy M wyspecyfikowane przez środowisko Γ, fraza M ma typ t. Na przykład f : int list int,b : bool (if b then f nil else 3) : int jest prawidłowym stwierdzeniem typowania w języku ML Ó ÝÒØ ØÝ Ñ ÒØÝ ÓÔ Ö Ý Ò Ø Ö ÓÔ Ù ÔÖÓ Ö ÑÝ Û ØÝÑ ¹ ÞÝ Ù Þ µ ÞÓ Ø Ò ÓÖÑ ÐÒ ÛÝ Ô Ý ÓÛ Ò º Á ØÓØ Ø Ó ÛÝ Ù Ø Û ØÔÒ Þ ÔÓÞÒ Ò Þ Ø ÓÖÑ Ð Þ ÓÖ Þ Þ ÐÙ ØÖÓÛ Ò Ù Ý º ËØ Ò Ö ÅÄ Å ÐÒ Ö ÌÓ Ø À ÖÔ Ö Å ÉÙ Ò ½ µ Ý Ô ÖÛ ÞÝÑ ÔÖÞÝ Ñ Ô ÒÓÛÝÑ ÖÓÛ Ó ÞÝ ÔÖÓ Ö ÑÓÛ Ò ÔÓ Ó ÓÑÔÐ ØÒ ÓÖÑ ÐÒ Ô Ý¹ Ð Ø Ö Ó Ò Þ ÛÓ ÒÓ Ý Ø ÑÙ ØÝÔ Û Ò º ØÝÔ ÓÙÒ Ò µ Ý ÔÖÞ ¹ Ñ ÓØ Ñ Û ÐÙ ÓÖÑ ÐÒÝ ÓÛÓ Ûº ËØÙ ÓÛ Ò ÓÖÑ ÐÒÝ Ý Ø Ñ Û ØÝÔ Û Ø Þ ØÖÙ ØÙÖ ÐÒ Ñ ÒØÝ ÓÔ Ö ¹ Ý Ò Ý ÛÝ Ô Ý ÓÛ ÓÖÑ ÐÒÝ Ý Ø Ñ ØÝÔ Û Ò Ð Ý ÔÓ Þ Ö ÓÑ Ø Û Ö Ù Ó Ò Ù Ý Ò Ó Ò ÖÓÛ Ò Ø Ó ÖÓ Þ Ù Ö ÐÙ ØÛ Ö Þ Ò ØÓ Ò Ð Þ ½ º Á ÐÒ Ö Ù Ý Ø ÔÓÛ ÒÒÝ ÔÓ Þ ØÖÙ ØÙÖ Ö ÞÝ M ÛÝ Ò ¹ ØÝÔÓÛ Ø º ÞÒ ÓÛ ØÝÔ µ ÔÓÔÖÞ Þ ÔÓ Þ Ò ÔÓ Ö ÞÝ Ö ÞÝ M ÑÓ Ý ØÝÔÓÛ Ò º Ì Û ÑÓ ÑÝ ØÙ Ñ Û Ó Þ Ø Û Ö Ù Ù ÖÙÒ ÓÛ ÒÝ ÝÒØ ØÝÞÒ º Ã Ý ÓÖÑ Ð ÞÓÛ Ð ÑÝ ÒÝ Ý Ø Ñ ØÝÔ Û Ø ÑÝ Û Ø Ò Ù ÓÛÓ Ò Ö ÞÙй Ø ØÝ ÓØÝÞ Ò Þ ÛÓ ÒÓ Ý Ø ÑÙ ØÝÔ Û Ò º ØÝÔ ÓÙÒ Ò µ ÔÖ Û Þ Ò ØÝÔ Û Ò º ØÝÔ Ò µ ØÝÔÓÛ ÐÒÓ Ò º ØÝÔ Ð ØÝµ ÓÖ Þ Ù ØÝÔ Û Ò º ØÝÔ Ò Ö Ò µ ØÖÞÝ Ó Ø ØÒ ÔÖÓ Ð ÑÝ ÓÔ Ò ÞÓ Ø Ý Ò Ð Þ ½ º
10 ½¼ ½ ÏËÌ È Rysunek 16: Różne notacje relacji typowania x ma typ integer styl ML (używany na wykładach): Ü ÒØ Ö styl Haskell: Ü ÒØ Ö styl C/Java: ÒØ Ö Ü Rysunek 17: Sprawdzanie, typowalność, oraz dedukcja typu Weźmy system typów dla języka programowania ze stwierdzeniami w formie Γ M : t. Problem sprawdzania typu: majac dane Γ, M i t, czy stwierdzenie Γ M : t dało by się wywieść (wyprowadzić) w tym systemie typów? Problem typowalności: majac dane Γ i M, czy jest jakikolwiek typ t dla którego stwierdzenie Γ M : t dało by się wywieść w tym systemie typów? Drugi problem jest zwykle trudniejszy niż pierwszy. Jego rozwiazanie zwykle pociaga za soba wymyślenie algorytmu dedukcji typu, który oblicza typ t dla każdego Γ i M (lub kończy się niepowodzeniem, jeśli takiego typu nie ma).
11 ½½ Rysunek 18: Polimorfizm = ma wiele typów Przeciażenie (ang. overloading) (lub ad-hoc polimorfizm): taki sam symbol oznacza operacje z nie majacymi nic wspólnego implementacjami. (Np. + może oznaczać zarówno dodanie liczb naturalnych, jak i konkatenację łańcuchów tekstowych.) Właczenie (ang. subsumption) t 1 <: t 2 : każda fraza M 1 : t 1 może być używana jako M 1 : t 2 bez narażania bezpieczeństwa. Parametryczny polimorfizm (ang. parametric polymorphism) ( generics ): takie samo wyrażenie przynależy do rodziny strukturalnie powiazanych typów. ¾ ÈÓÐ ÑÓÖ ÞÑ Û ÅÄ ÏÞ Ò ÓÖÑÝ Ø ØÝÞÒ Ó ØÝÔÓÛ Ò Ø Û ÞÝ Ù È Ð ÙÒ ÑÓ Ð Û Ý Ô ¹ Ò Ò ÖÝÞÒ Ó Ó Ùº Æ ÔÖÞÝ ÔÖÓ ÙÖ Ó ÓÖØÓÛ Ò Ð Ø Ò Ó ØÝÔÙ Ò ÑÓ Ý ÛÝ ÓÖÞÝ Ø Ò Ó Ð Ø ÒÒ Ó ØÝÔÙ ÒÝ º Ý Ó Ý Ò ØÙÖ ÐÒ Ñ ÔÓÐ ÑÓÖ ÞÒ ÔÖÓ ÙÖ ÓÖØÓÛ Ò Ø º Ø Ø Ö Þ ÒÓÐ µ Ò Ð Ø Þ Ö Ù Ö ÒÝ ØÝÔ Ûº Æ ÞÒ Þ Ò ÔÓÐ ÑÓÖ ÞÑÙ Ò º ÔÓÐÝÑÓÖÔ Ñµ Ð ÞÝ Û ÔÖÓ Ö ÑÓÛ Ò ÞÛÖ ¹ ÔÓ Ö Þ Ô ÖÛ ÞÝ ÙÛ ËØÖ Ý ½ µ ÒØÝ Ù Þ Ö Ö ÒÝ Ó ÞÒ Þ º ÅÓ ÑÝ ÛÝÛÓ ÙÒ ile ÒÔº Ó Ð ½ ¾ ÐÙ Ð Ð ÓØ º Æ ØÝÑ ÙÖ ÓÒ ÒØÖÙ ÑÝ Ò Ô Ö Ñ ØÖÝÞÒÝÑ ÔÓÐ ÑÓÖ ÞÑ º  ÒÝÑ Þ ÔÓ Ó Û Ó ÙÞÝ Ò Ø ÙÞÝÒ Ò Ô Ö Ñ ØÖÝÞ ØÝÔÙ ÔÐ ØÝÛÒ Þ ÝÒØ ØÝ ÞÝ º ÅÝ Ò ÔÓ ÖÞÝÑÝ Ò ÑÔÐ ØÝÛÒ Û Ö Ô Ö Ñ ØÖÝÞÒ Ó ÔÓÐ ÑÓÖ ÞÑÙ ÔÓ Ö Þ Ô ÖÛ ÞÝ Þ ÑÔÐ Ñ ÒØÓÛ Ò Û ÖÓ Þ Ò ÞÝ Û ÅÄ Ò ØÔÒ ÓÔØÓÛ Ò Þ Ò Þ Ò ÔÖÞÝ ÔÓ Ò ÞÛ Ò Ö Û Ò ÒÓÛ ÞÝ Û Ö ÞÝ Û Â Ú µº Ö ÞÝ Û ÞÝ Ù ÅÄ Þ Û Ö ÑÓ Ö ÞÓ Ò Û Ð Ò ÓÖÑ Ó ØÝÔ Ð ÓÖÝØÑ Ù ØÝÔ Û ÞÒ Ù Ò Ö Þ Ó ÐÒÝ ØÝÔ Ñ Øµ Ð Ó ÖÞ Ù ÓÖÑÓ¹ Û Ò Ö ÞÝ Þ Ø Ö Ó Û ÞÝ Ø ÒÒ ØÝÔÝ Ö ÞÝ ÑÓ Ý ÓØÖÞÝÑ Ò ÔÖÞ Þ Ô Ð ÞÓ¹ Û Ò ÞÑ ÒÒÝ ØÝÔÙº Ï Ð Þ Þ ÙÖ Ù ÔÖÞ Ø Û ÓÒ ÞÓ Ø Ò ÔÖ ÝÞÝ Ò ÓÖÑ Ð Þ Ý Ø ÑÙ ØÝÔ Û ÓÖ Þ ÞÛ Þ Ò Ó Þ Ò Ñ Ð ÓÖÝØÑÙ Ù ØÝÔÙ Ð Ñ Ó Ö Ñ ÒØÙ ÞÝ ÅÄ Ø ÖÝ Ò ÞÛ ÑÝ Å Ò ¹Åĺ
12 ½¾ ¾ ÈÇÄÁÅÇÊ Á Å Ï ÅÄ Rysunek 19: Przykład parametrycznego polimorfizmu W Objective Caml (OCaml), popularnej implementacji języka ML, funkcja Ð obliczajaca ilość elementów listy Ð Ø Ö Ð Ü Ñ Ø Ü Û Ø ¹ ¼ Ø ¹ ½ Ð Ø ma typ t list int dla wszystkich typów t. Rysunek 20: Zmienne typu i schematy typów dla Mini-ML Aby sformalizować wyrażenia takie jak funkcja ile ma typ t list int, dla wszystkich typów t jest naturalne, aby wprowadzić zmienne typu (ang. type variables) α (tj. zmienne które moga być zastępowane przez typy) i pisać ile : α(α list int). α(α list int) jest przykładem schematu typów (ang. type scheme).
13 ¾º½ ËÝ Ø Ñ ØÝÔ Û ÞÝ ÅÄ ½ Rysunek 21: Polimorfizmlet-zwiazanych zmiennych w ML Na przykład w wyrażeniu let f = λ x(x) in (f true) :: (f nil) funkcja λx(x) ma typ t t dla dowolnego typu t, a zmienna f do której ta funkcja jest przywiazana jest używana polimorficznie: - w (f true), f ma typ bool bool - w (f nil), f ma typ bool list bool list. Całościowo, wyrażenie to ma typ bool list. ¾º½ ËÝ Ø Ñ ØÝÔ Û ÞÝ ÅÄ Ý ÓÖÑ Ð ÞÓÛ Ý Ø Ñ ØÝÔ Û ÑÙ Ð ÑÝ ÛÔÖÓÛ Þ ÞÑ ÒÒ ØÝÔÙº ÁÒØ Ö ØÝÛÒÝ ÅÄ ÔÓ ØÝÔ α list int Ó ØÝÔ ÙÒ ileº Â Ò Û ÓÖÑ ÐÒÝÑ ÓÔ Ý Ø ÑÙ ØÝÔ Û ÓÒ ÞÒ Ø Ý Û ÒØÝ ÔÓ ØÝÔ Ý Û ÔÓ Û ÓÞÒ º ÈÖÞÝÞÝÒ Ø Ó Ø Û Û ØÝÔÓÛ Ò Ù ÐÓ ÐÒÝ Ð Ö ¹ ÞÓ º ÔÖÞÝ Ò Ð Þ ¾½º ÏÝÖ Ò (f true) :: (f nil) Ñ ØÝÔ bool list Ñ Ò Ô ÛÒ Þ Ó Ò Ó ØÝÔ ÞÑ ÒÒ fº ÅÓ Ð Û Û Ø Þ Ó Ò ÔÓ Þ ÒÓ Ò Ð Þ ¾¾º ÅÝ Ò Ö Þ Þ ÒØ Ö ÓÛ Ò Ø ÑÝ ÖÙ ÑÓ Ð ÛÓ Ý ÔÖÓÛ Þ ÓÒ Ó Ý Ø ÑÙ ØÝÔ Û Ø ÖÝ Ñ Ö ÞÓ Ù ÝØ ÞÒ Û ÒÓ º ÈÓÒ ÔÖÞ Ø Û ÑÝ Ö Ñ ØÝ ØÝÔ Û Ñ Ø Û ØÝÔÙ Ø Ö Þ ÑÝ Ù ÝÛ Û ÓÐ ÒÝ ÔÖÞÝ º Æ Ð Ý ÞÛÖ ÙÛ Ò Ò ØÔÙ ÔÖ ÛÝ Û Ó Ò Ò Ù Ó Ñ Ø Û ØÝÔÙ A(t) ½º ÈÖÞÝÔ Ý A Ø ÔÙ ØÝ A = {} Ø ÓÔÙ ÞÞ ÐÒÝ {}(t) Ø Ó ÖÞ Ù ÓÖÑÓÛ ÒÝÑ Ñ Ø Ñ ØÝÔÙº Þ ØÓ Þ ÑÝ Ô ØÖÞ Ò Þ ÓÖÝ ØÝ¹ Ô Û Ó Ò ÔÓ Þ Ö Þ ÓÖÙ Ñ Ø Û ØÝÔÙ ÒØÝ Ù ØÝÔ t Þ Ñ Ø Ñ ØÝÔÙ {}(t)º ¾º à ÔÓ Û Ò Û ØÝÔ t ÞÑ ÒÒ ØÝÔÙ α A Ø ÞÛ Þ Ò Û ¹ Ñ A(t)º Ì Û Þ Ò ÛÓÐÒ ÞÑ ÒÒ ØÝÔÙ Ò º Ö ØÝÔ Ú Ö Ð µ Ñ ØÙ ØÝÔ Û A(t) ØÓ Û ÞÝ Ø Ø ÞÑ ÒÒ ØÝÔÙ Ø Ö ÔÓ Û Û
14 ½ ¾ ÈÇÄÁÅÇÊ Á Å Ï ÅÄ Rysunek 22: Ad-hoc vs. parametryczny polimorfizm Ad-hoc polimorfizm: jeśli f : bool bool oraz f : bool list bool list, to (f true) :: (f nil) : bool list Parametric polimorfizm: Jeśli f : α(α α), to (f true) :: (f nil) : bool list Rysunek 23: Mini-ML typy i schematy typów Types t ::= α zmienna typu bool typ wartości logicznych t t typ funkcji t list typ list gdzie α przyjmuje wartości z ustalonego, przeliczalnego, nieskończonego zbioru TyVar. Schematy typów σ ::= A(t) gdzie A zmienia się po skończonych podzb. zbioru TyVar. Kiedy A = α 1,...,α n, piszemy A(t) jako α 1,...,α n (t).
15 ¾º½ ËÝ Ø Ñ ØÝÔ Û ÞÝ ÅÄ ½ t Ð Ø Ö Ò Û Ó ÞÓÒÝÑ Þ ÓÖÞ Aº ÞÑ ÒÒÝ ØÝÔÙ α(α α ) Ø α ºµ Æ ÔÖÞÝ Þ ÓÖ Ñ ÛÓÐÒÝ Ì ÞÛÝ Ð Û ÔÖÞÝÔ Ù ÓÒ ØÖÙ Û Ý ÞÑ ÒÒ Ò ÒØ Ö Ù Ò ÔÓ ÞÞ ÐÒ Ò ÞÛÝ ÞÛ Þ ÒÝ ÞÑ ÒÒÝ ØÝÔÙ Ý Ø ÞÝ Ò Þ ÑÓ ÑÝ ÑÙ ÞÑ Ò Ý ÙÒ Ò Ù ÛÝ Ò ÔÓ Þ ÔÓ Ø Û Ò ØÝÔ Û ÔÓ ÞÑ ÒÒ ØÝÔ Û ÒÒÝ ÞÑ ÒÒÝ Ó ØÝ ÑÝ Ò ÞÛ Ø Ö ÑÓ ÛÝ Ø Ô Û ÔÓ Ø Û ÒÝ ØÝÔ µº Ð Ø Ó Ø Þ ÑÝ ÒØÝ ÓÛ Ñ ØÝ ØÝÔ Û ÙÛÞ Ð Ò ÑÓ ¹ Ð Û Ð ¹ ÓÒÛ Ö ÞÑ ÒÒÝ ØÝÔÙ Û Þ ÒÝ ÔÖÞ Þ º Æ ÔÖÞÝ α(α α ) α (α α ) ÛÔ Ó Ø Ñ Ð ¹Ö ÛÒÓÞÒ ÞÒ Ð Ý ÑÓ Ý ØÓ ÓÛ Ò Þ Ñ ÒÒ º ÇÞÝÛ Ó ÞÓÒÝ Þ Ö wzt( A(t)) ÛÓÐÒÝ ÞÑ ÒÒÝ ØÝÔÙ Û Ñ ØÝÔÙ Ø Ó ÖÞ Þ Ò ÓÛ ÒÝ ÙÛÞ Ð Ò ¹ ÑÓ Ð Û Ð ¹ ÓÒÛ Ö ÞÛ Þ ÒÝ ÞÑ ÒÒÝ ØÝÔÙ Ø º Ô Ò Ö ÛÒÓÞ Ò ÔÖÞ Ñ ÒÓÛ Ò Ò ÞÛ ØÝ ÞÑ ÒÒÝ µº Þ ÑÝ Ø Ô wzt(t) Ñ Ò ÑÝ Ð Ó ÞÓÒÝ Þ Ö ÛÓÐÒÝ µ ÞÑ ÒÒÝ ØÝÔÙ ÛÝ ØÔÙ Ý Û tº º Ë Ñ ØÝ ØÝÔ Û Û ÅÄ Ò ØÝÔ Ñ Û Åĺ Ì Û Ò ÔÖÞÝ α α (α ) Ò Ø Ò Ó ÖÞ Ù ÓÖÑÓÛ ÒÝÑ ØÝÔ Ñ Û Å Ò ¹ÅÄ Ò Ó ÖÞ Ù ÓÖÑÓÛ ÒÝÑ Ñ Ø Ñ Û Å Ò ¹Åĺ ÅÓ ÑÝ ÓØÖÞÝÑ ØÝÔÝ Þ Ñ Ø Û ØÝÔÙ ÔÖÞ Þ Þ Ø ¹ Ô Ò ÞÑ ÒÒÝ ØÝÔÙ ÔÖÞ Þ ØÝÔݺ ÈÖÓ Ø ÔÖÞÝ Ý Ò Ö Ð Þ Â Ò α(α α) bool bool α(α α) α list α list α(α α) (α α ) (α α ). α(α α) (α α ) α. ØÓ Ð Ø Ó Û Þ Ø Ô Ò Ù Ò º Ù Ø ØÙØ ÓÒµ t[t /α] Þ Ò ÑÙ ÑÝ Þ Ø Ô Û ÞÝ Ø ÛÝ Ø Ô Ò Û t ÞÑ ÒÒ ØÝÔÙ α ÔÖÞ Þ t º Ì Û Ý t = α α ØÓ Ò Ñ Ø Ó ØÝÔÙ t Ð Ø Ö Ó t[t /α] Ý Ó Ý ØÝÔ Ñ (α α) αº ÈÓ ÔÖÓ ØÙ Ð Ø Ó Û ÖÞ Û ÝÒØ ØÝÞÒÝÑ t[t /α] = t t Û ÔÓ ÖÞ Û ÔÓÒ Ò Ö Þ Ö Ò Ó ÓÒ ØÖÙ ØÓÖ ³ ³ Ö ÛÒ ÓÒ Ö ØÒ Ö ÛÒ t µ ÔÓ Þ Ý Ø ØÓ Ò ÔÖ Û Û (α α) αºµ ÁÒÒÝ ÔÖÞÝ α 1,α 2 (α 1 α 2 ) α list bool.
16 ½ ¾ ÈÇÄÁÅÇÊ Á Å Ï ÅÄ Rysunek 24: Relacja generalizuj między schematami typów a typami Mówimy że schemat typu σ = α 1,...,α n (t ) generalizuje typ t, co zapisujemy σ t jeżeli t może być otrzymane z typu t przez równoczesne podstawienie pewnych typów t i pod zmienne typów α i (i = 1,..,n): t = t [t 1 /α 1,...,t n /α n ]. (Uwaga: Specyficzny wybór nazw zmiennych typu w σ nie wpływa na tę relację.) Odwrotna relacja jest zwana specjalizacja: typ t jest specjalizacja schematu typu σ, jeśli σ t.  ÓÐÛ α 1 (α 1 α 2 ) α list bool ÔÓÒ Û α 2 Ø ÛÓÐÒ ÞÑ ÒÒ ØÝÔÙ Û Ñ ØÝÔ Û α 1 (α 1 α 2 ) Û Ò ÑÓ Ý Þ ØÔÓÛ Ò ÔÓ Þ Ô Ð Þ º ËÐ ¾ ÔÖ Þ ÒØÙ ÓÖÑ ØÛ Ö Þ ØÝÔÓÛ Ò Ø Ö Þ ÑÝ Ù ÝÛ Ð Ý Þ ¹ ÐÙ ØÖÓÛ ÔÓÐ ÑÓÖ ÞÑ Û ÅÄ ÓÖ Þ ÛÒ Ó ÓÛ Ò ØÝÔÙº ÈÓÒ Û Þ ÑÝ Ö Ð ÔÓ ÙÛ ÝÒ Ñ Ý ÔÓ Þ Ö ØÝÔ Û ÞÝ ÅÄ Ó Ö Ò ÞÝÑÝ Ò Þ ÙÛ ÝÒ Ó ØÝÔÓÛ Ò Ð Ñ Ó ÔÓ Þ ÓÖÙ M ÛÝÖ ÞÝ ÅÄ Ò ÖÓÛ Ò Ó ÔÖÞ Þ Ö Ñ ¹ ØÝ Ò Ð Þ ¾ º ÓÑ ØÝ Ö Ù Ý Ò ÖÙ Ò Ù Ý Ò Ö Ð ØÝÔÓÛ Ò Û Å Ò ¹ÅÄ Ð ØÝ ÛÝÖ ÔÓ ÒÓ Ò Ð ¾ ¼º ÛÖ ÑÝ ÙÛ Ò Ò ØÔÙ ÖÞ ÞÝ Û Ý Ø Ñ ØÝÔ Û Ò Ð ¾ ¼º ½º Å Ò ÖÓ ÓÛ Ó Γ Ô Þ ÑÝ Γ,x : σ Ñ Ò ÑÝ Ð ÖÓ ÓÛ Ó ØÝÔÓÛ Ò Þ Þ Þ Ò dom(γ) {x} Ø Ö Ó ÛÞÓÖÓÛÙ x Ó σ Û ÔÓÞÓ Ø Ý ÔÖÞÝÔ Ø Γº Ã Ý Ù ÝÛ ÑÝ Ø ÒÓØ ØÓ Ò Ñ Ð Û ÝÑ ÔÖÞÝÔ Ù Þ x / dom(γ) ÞÓ º Ö Ù Ý Òµ Рص Ñ Ø µµº ¾º Ï Ö ÙÐ Òµ Ù ÝÛ ÑÝ Γ,x : t 1 Ó Ö Ø Ð Γ,x : {}(t 1 )º ÈÓ Ó Ò Û Ö ¹ ÙÐ Ñ Ø µ Γ,x 1 : t 1,x 2 : t 1 list Ø Ò ÔÖ Û ÓÞÒ Þ Γ,x 1 : {}(t 1 ),x 2 : {}(t 1 list)º È Ñ Ø ÑÝ Þ Ò ÖÓ ÓÛ Ó ØÝÔÓÛ Ò Ñ Ó ÛÞÓÖÓÛݹ Û ÞÑ ÒÒ Ó Ñ Ø Û ØÝÔÙ Ö Þ Ò Ó ØÝÔ Ûºµ
17 ¾º½ ËÝ Ø Ñ ØÝÔ Û ÞÝ ÅÄ ½ Rysunek 25: Stwierdzenie typowania w Mini-ML ma formę Γ M : t gdzie Środowisko typowania Γ jest skończona funkcja ze zmiennych do schematów typu. (Zapisujemy Γ = {x 1 : σ 1,...,x n : σ n } aby wskazać że Γ ma dziedzinę zdefiniowana jako dom(γ) = {x 1,...,x n } i odwzorowuje każde x i do schematu typów σ i dla i = 1..n.) M jest wyrażeniem w języku Mini-ML. t jest typem w Mini-ML. Rysunek 26: Wyrażenia w Mini-ML M ::= x zmienna true wartości logiczne false if M then M else M warunek λx(m) abstrakcja funkcji M M aplikacja funkcji let x = M in M lokalna deklaracja nil pusta lista M :: M konstruktor listy (list cons) match M with nil M x :: x M wybór po wzorcu
18 ½ ¾ ÈÇÄÁÅÇÊ Á Å Ï ÅÄ Rysunek 27: System typów Mini-ML (1/4) (var ) Γ x : t jeśli (x : σ) Γ oraz σ t (bool) Γ B : bool jeśli B {true,false} (if) Γ M 1 : bool Γ M 2 : t Γ M 3 : t Γ if M 1 then M 2 else M 3 : t º Ï Ö ÙРРص ÒÓØ wzt(γ) ÓÞÒ Þ Þ Ö Û ÞÝ Ø ÞÑ ÒÒÝ ØÝÔÙ ÔÓ ¹ Û Ý Ó ÛÓÐÒ Ò ÞÛ Þ Ò µ Û Ô ÛÒÝ Ñ Ø ØÝÔ Û ÔÖÞݹ Ô ÒÝ Û Γº Æ ÔÖÞÝ Ð Γ = {x 1 : σ 1,...,x n : σ n } ØÓ ÛØ Ý wzt(γ) = wzt(σ 1 )... wzt(σ n )ºµ Ì Û Þ Ö A = wzt(t 1 ) wzt(γ) Ù ÝØÝ Û Ø Ö ÙÐ Þ Û ÞÝ Ø ÞÑ ÒÒÝ ØÝÔÙ Û t 1 Ø Ö Ò ÛÝ ØÔÙ ÛÓÐÒ Û ÒÝÑ Ñ ØÝÔ Û ÔÖÞÝÔ ÒÝÑ Û Γº Ì ÞÛÝ Ð ÓÑ ØÝ Ö Ù Ý Ò Ð ¾ ¼ Ñ ØÝÞÒ Γ M t σ ÓÞÒ Þ ÓÛÓÐÒ Ó ÖÞ Ù ÓÖÑÓÛ Ò ÖÓ ÓÛ Ó ÛÝÖ Ò ØÝÔ Ñ Ø ØÝÔÙº ÓÑ ØÝ Ö Ù Ý Ù ÝÛ Ò Ó ÛÝ Ò ÖÓÛ Ò Ò Ù Ý Ò Ö Ð ØÝÔÓÛ Ò ÔÓ Þ ÓÖÙ Û ÞÝ Ø ÑÓ Ð ÛÝ ØÖ Γ M : σº Å Û ÑÝ ÔÓ ÞÞ ÐÒ ØÖ Γ M : σ Ø ÛÝÛÒ Ó ÓÛ ÐÒ ÐÙ Ù ÓÛ Ò ÐÒ ÐÙ Û Ò µ Û Ý Ø Ñ ØÝÔ Û Ð ØÒ ÓÛ Ù ÝÛ ÓÑ Ø Û Ö Ù Ý Ø ÑÙ ØÝÔ Ûº Ì Û Ö Ð ØÝÔÓÛ Ò Þ Ó Ò ØÝ ØÖ Ð Ø ÖÝ ØÒ Ø ÓÛ º Ã Ý Γ = {} Ô Þ ÑÝ ÝÒ M : σ Ð ÛÝÛÒ Ó ÓÛ {} M : σ Ñ Û ÑÝ ÛØ Ý ÛÝÖ Ò M ÓÒ Þ¹ Ò ÓÑ Ò Ø µ Ø ØÝÔÓÛ ÐÒ Û Å Ò ¹ÅÄ Þ Ñ Ø Ñ ØÝÔÙ σº ÈÖÞÝ Û ÖÝ Ù ÑÝ ÔÓ ÒÝ ÛÞ Ò Ò Ð Þ ¾½ ÔÖÞÝ ÔÓÐ ÑÓÖ ÞÑÙ ÞÑ ÒÒÝ let¹þû Þ ÒÝ Ñ ÖÞ ÞÝÛ ÔÓ ÒÝ Ø Ñ ØÝÔ Ø º let f = λx(x) in (f true) :: (f nil) : bool list. ÓÛ º ÈÓ Ô ÖÛ Þ Þ ÙÛ ÑÝ λx(x) : α(α α) ÔÓ ÞÙ ÔÓÒ ÞÝ ÓÛ Ú Ö µ Ù ÝÛ {}(α) α x : α x : α {} λx(x) : α α Òµ ½µ
19 ¾º½ ËÝ Ø Ñ ØÝÔ Û ÞÝ ÅÄ ½ Rysunek 28: System typów Mini-ML (2/4) (nil) Γ nil : t list (cons) Γ M 1 : t Γ M 2 : t list Γ M 1 :: M 2 : t list (match) Γ M 1 : t 1 list Γ M 2 : t 2 Γ,x 1 : t 1,x 2 : t 1 list M 3 : t 2 Γ match M 1 with nil M 2 x 1 :: x 2 M 3 : t 2 jeśli x 1,x 2 / dom(γ) oraz x 1 x 2 Rysunek 29: System typów Mini-ML (3/4) (fn) Γ,x : t 1 M : t 2 Γ λx(m) : t 1 t 2 jeśli x / dom(γ) (ap) Γ M 1 : t 1 t 2 Γ M 2 : t 1 Γ M 1 M 2 : t 2
20 ¾¼ ¾ ÈÇÄÁÅÇÊ Á Å Ï ÅÄ Rysunek 30: System typów Mini-ML (4/4) (let) Γ M 1 : σ Γ,x : σ M 2 : t Γ let x = M 1 in M 2 : t jeśli x / dom(γ) gdzie dla schematu typów σ = A(t 1 ), piszemy Γ M 1 : σ w znaczeniu Γ M 1 : t 1 oraz A = wzt(t 1 ) wzt(γ). Rysunek 31: System typów Mini-ML (var ) Γ x : t jeśli (x : σ) Γ oraz σ t (bool) Γ B : bool jeśli B {true,false} (fn) Γ,x : t 1 M : t 2 Γ λx(m) : t 1 t 2 jeśli x / dom(γ) (if) (nil) (cons) (match) Γ M 1 : bool Γ M 2 : t Γ M 3 : t Γ if M 1 then M 2 else M 3 : t Γ nil : t list Γ M 1 : t Γ M 2 : t list Γ M 1 :: M 2 : t list Γ M 1 : t 1 list Γ M 2 : t 2 Γ,x 1 : t 1,x 2 : t 1 list M 3 : t 2 Γ match M 1 with nil M 2 x 1 :: x 2 M 3 : t 2 jeśli x 1,x 2 / dom(γ) oraz x 1 x 2 (ap) Γ M 1 : t 1 t 2 Γ M 2 : t 1 Γ M 1 M 2 : t 2 (let) Γ M 1 : σ Γ,x : σ M 2 : t Γ let x = M 1 in M 2 : t jeśli x / dom(γ) gdzie dla schematu typów σ = A(t 1 ), piszemy Γ M 1 : σ w znaczeniu Γ M 1 : t 1 oraz A = wzt(t 1 ) wzt(γ).
21 ¾º¾ ÈÖÞÝ Ý Ù ØÝÔ Û ÖÞÒ ¾½ Æ ØÔÒ Þ ÙÛ ÑÝ ÔÓÒ Û α(α α) bool bool ØÓ ÔÖÞ Þ Ú Ö µ Ñ ÑÝ f : α(α α) f : bool bool. ÈÖÞ Þ ÓÓе Ñ ÑÝ Ø f : α(α α) true : bool ÔÐ Ù Ö Ù Ôµ Ó ØÝ Û ØÛ Ö Þ Ó Ø ÑÝ f : α(α α) f true : bool. ¾µ ÈÓ Ó Ò Ù ÝÛ Ôµ Ú Ö µ ÓÖ Þ Ò Ðµ Ñ ÑÝ ÔÐ Ù Ö Ù ÓÒ µ Ó ¾µ µ Ñ ÑÝ f : α(α α) f nil : bool list. µ f : α(α α) (f true) :: (f nil) : bool list. Æ ÓÒ ÑÓ ÑÝ ÔÐ ÓÛ Ö Ù Ð Øµ Ó Ø Ó ÓÖ Þ ½µ ÓÒ ÐÙ ÓÛ Ó Ò Ð Ó Ù ÓÛÓ Ò º ¾º¾ {} let f = λx(x) in (f true) :: (f nil) : bool list ÈÖÞÝ Ý Ù ØÝÔ Û ÖÞÒ Ö ÛÒÓ Ð Ô Ò Ó Ý Ø ÑÙ ØÝÔ Û ÞÝ ÅÄ Ö ÛÒ Ð Ý Ø ÑÙ ØÝÔ Û Ø ÖÝ Û Ò ÔÖÞ Ø Û Ð ÑÝ ÔÖÓ Ð Ñ ØÝÔÓÛ ÐÒÓ Ð ½ µ Ó ÞÙ Ý Ý ÓÛ ÐÒݺ Ó Û ÔÓ Ö Û ÞÝ Ø ÑÓ Ð ÛÝ Ñ Ø Û ØÝÔÙ Ø Ö ÑÓ ÔÓ Ò ÓÑ Ò Ø ÛÝÖ Ò Å Ò ¹ÅÄ ØÒ Ò Ö Þ Ó ÐÒÝ Ñ Ø ØÝÔÙ ØÓ Ø Ø Þ Ø Ö Ó Û ÞÝ Ø ÒÒ ÑÓ Ý ÓØÖÞÝÑ Ò ÔÖÞ Þ Þ Ø Ô Ò º Ò Ñ ÔÓ ÑÝ Ð Þ Ó Ø Ø ÔÓ ÑÝ Ð Ô Ý ÞÒÝ ÔÖÞÝ Û Ù ØÝÔÙ Û Ò ÞÝÑ Ý Ø Ñ ØÝÔ Ûº Å Ò ÖÓ ÓÛ Ó ØÝÔÓÛ Ò Γ ÛÝÖ Ò M ÑÓ ÑÝ Þ Ý ÓÛ ÞÝ ØÒ ÐÙ Ò Ñ Ø ØÝÔ Û σ Ð Ø Ö Ó Þ Ó Þ Γ M : σ ÈÓÑÓÒ Ó Û ØÝÑ Þ Ò Ù Ò ÖÙÒ ÓÛ Ò ÝÒØ ØÝÞÒ ÐÙ Ò Þ Ñ Û ØÖÙ ØÙÖ ÐÒ µ Ò ØÙÖ ÓÑ Ø Û Ö Ù Ò Ð ¾ ¼ Ð ÛÝÛ Γ M : A(t) ØÓ Ø Ð ÛÝÛ A = wzt(t) wzt(γ) ÓÖ Þ Γ M : t ØÓ ÛØ Ý Ò Ö Þ Þ ÛÒØÖÞÒ ÓÖÑ ÛÝÖ Ò M Ý ØÙ ÑÙ Ý Ó Ø ØÒ ÓÑ ÐÙ Ö Ù Ù ÝØ Û ÓÛÓ Þ ØÛ Ö Þ Ò Γ M : σ ÞÓ º Ó Ø ØÒ ÔÖÞÝ µº Ï ÓÒ Û Ò Ý ÔÖ Ù ÑÝ Þ Ù ÓÛ ÓÛ ØÛ Ö Þ Ò ØÝÔÓÛ Ò Γ M : σ Ó Ó Ù Ó ÖÝ ØÖÙ ØÙÖ ÛÝÖ Ò M Ó Ö Ð ÞØ Ø ÖÞ Û ÓÖ Þ ØÓ Ø Ö Ö Ù Ý Ñ Ý Ù ÝÛ Ò Û Ó ÛÞ ÓÖ Þ Ø Ö ÓÑ ØÝ Û Ó Ð º
22 ¾¾ ¾ ÈÇÄÁÅÇÊ Á Å Ï ÅÄ Rysunek 32: Dwa przykłady właczaj ace samo-aplikację M = let f = λx 1 (λx 2 (x 1 )) in f f M = (λf(f f)) λx 1 (λx 2 (x 1 )) Czy M i M sa typowalne w systemie typów Mini-ML? Rysunek 33: Szkielet drzewa dowodu dla let f = λx 1 (λx 2 (x 1 )) in f f (C3) x 1 : t 3,x 2 : t 5 x 1 : t 6 (C2) (C5) (C6) x 1 : t 3 λx 2 (x 1 ) : t 4 f : A(t 2 ) f : t 7 f : A(t 2 ) f : t 8 (C1) (C4) {} λx 1 (λx 2 (x 1 )) : t 2 f : A(t 2 ) f f : t 1 (C0) {} let f = λx 1 (λx 2 (x 1 )) in f f : t 1
23 ¾º¾ ÈÖÞÝ Ý Ù ØÝÔ Û ÖÞÒ ¾ Rysunek 34: Warunki generowane podczas dedukcji typu dla let f = λx 1 (λx 2 (x 1 )) in f f (C0) A = wzt(t 2 ) (C1) t 2 = t 3 t 4 (C2) t 4 = t 5 t 6 (C3) {}(t 3 ) t 6, tj. t 3 = t 6 (C4) t 7 = t 8 t 1 (C5) A(t 2 ) t 7 (C6) A(t 2 ) t 8 Æ ÔÖÞÝ Ð ÛÝÖ Ò M Ò Ð Þ ¾ ÓÐÛ ÓÛ M : A 1 (t 1 ) Þ ÓÑ Ø Û Ö Ù ÑÙ ÛÝ Ð ÖÞ ÛÓ Ò Ð Þ º ÏÞ ¼µ ÔÓÛ Ò Ò Ý ÛÝ Ø Ô Ò Ñ Ö Ù Ý Ð Øµ ÛÞ Ý ½µ ¾µ ÛÝ Ø Ô ¹ Ò Ñ Ö Ù Ý Òµ Ð µ µ µ ÛÝ Ø Ô Ò Ñ ÓÑ ØÙ Ú Ö µ ÛÞ µ ÛÝ Ø Ô Ò Ñ Ö Ù Ý Ôµº Ý ÖÞ ÞÝÛ Ý Ý ØÓ ÔÖ Û ÓÛ ÛÝ Ø Ô Ò ÑÙ Þ Ý Ô Ò ÓÒ Û ÖÙÒ ¼µ¹ µ ÛÝ ÞÞ ÐÒ ÓÒ Ò Ð Þ º Ì Û M Ø ØÝÔÓÛ ÐÒ ÛØ Ý ØÝÐ Ó ÛØ Ý Ý ÑÓ ÑÝ ÞÒ Ð õ ØÝÔÝ t 1 ººt 8 Ô Ò Û ÖÙÒ Ò Ð Þ º ÈÓ Ô ÖÛ Þ Þ ÙÛ ÑÝ ÑÔÐ Ù ÓÒ ½µ ¾µ t 2 = t 3 t 4 = t 3 (t 5 t 6 ) µ = t 6 (t 5 t 6 ). Ï Ø Ñ Ö Þ Ò t 5 t 6 ÞÑ ÒÒÝÑ ØÝÔÙ ÔÓÛ ÞÑÝ Ó ÔÓÛ Ò Ó α 2 α 1 º Û ÔÖÞ Þ (C0) A = wzt(t 2 ) = wzt(α 1 (α 2 α 1 )) = {α 1,α 2 }º ÏØ Ý µ µ µ ÛÝÑ α 1,α 2 (α 1 (α 2 α 1 )) t 8 t 1 ÓÖ Þ α 1,α 2 (α 1 (α 2 α 1 )) t 8. ÁÒÒÝÑ ÓÛÝ ÑÙ Þ ØÒ ØÝÔÝ t 9,...,t 12 Ø (C7) t 9 (t 10 t 9 ) = t 8 t 1 (C8) t 11 (t 12 t 11 ) = t 8.
24 ¾ ¾ ÈÇÄÁÅÇÊ Á Å Ï ÅÄ Ì Ö Þ µ ÑÓ Þ Ó Þ ØÝÐ Ó ÛØ Ý Ý Û t 9 = t 8 ÓÖ Þ t 10 t 9 = t 1 t 1 = t 10 t 9 = t 10 t 8 µ = t 10 (t 11 (t 12 t 11 )) Þ t 10 t 11 t 12 Ò ÞÛ Þ ÒÝÑ Û ÔÖÞ ÛÒÝÑ Ö Þ º Ï Ø Ñ Ö Þ Ð Ý Ý Ý ÓÒ ÞÑ ÒÒÝÑ ØÝÔÙ Ó ÔÓÛ Ò Ó α 3 α 4 α 5 ØÓ ÓÒ Ó Û ÑÓ ÑÝ Ô Ò Û ÞÝ Ø Û ÖÙÒ Þ Ð Ù Ò Ù A = {α 1,α 2 } t 1 = α 3 (α 4 (α 5 α 4 )) t 2 = α 1 (α 2 α 1 ) t 3 = α 1 t 4 = α 2 α 1 t 5 = α 2 t 6 = α 1 t 7 = (α 4 (α 5 α 4 )) (α 3 (α 4 (α 5 α 4 ))) t 8 = α 4 (α 5 α 4 ). Þ ØÝÑ ÛÝ ÓÖ Ñ Ð Ø ÔÖ Û ÓÛÝÑ ÓÛÓ Ñ ØÛ Ö Þ Ò {} let f = λx 1 (λx 2 (x 1 )) in f f : α 3 (α 4 (α 5 α 4 )) Ò ÔÓ Ø Û ÓÑ Ø Û ØÝÔÓÛ Ò Ö Ù Þ Ð Û ¾ ¼ Ø º Þ Ó Þ let f = λx 1 (λx 2 (x 1 )) in f f : α 3,α 4,α 5 (α 3 (α 4 (α 5 α 4 ))) µ  РÔÖÞ Þ ÑÝ ÔÖÞ Þ Ø Ò Ñ ÔÖÓ Ù ØÝÔÙ Ð ÛÝÖ Ò M Ò Ð Þ ¾ ØÓ ÛÝ Ò ÖÙ ÑÝ ÖÞ ÛÓ Þ Ø Û Û ÖÙÒ Û Ò Ð Þ º ÌÓ ÑÔÐ Ù Û ÞÞ ÐÒÓ ½ µ ½¾µ ½½µ t 7 = t 4 = t 6 = t 7 t 5. Ð Ò Ñ ØÝÔ Û t 5 t 7 Ô Ò Ý t 7 = t 7 t 5 ÔÓÒ Û t 7 t 5 Þ Û Ö ÔÖÞÝÒ ÑÒ Ò ÝÑ ÓÐ ³ ³ Û Ò t 7 º Ì Û ÑÓ ÑÝ Þ ÓÒ ÐÙ ÓÛ (λf (f f)) λx 1 (λx 2 (x 1 )) Ò Ø ØÝÔÓÛ ÐÒ Û Ö Ñ Ý Ø ÑÙ ØÝÔ Û Åĺ ¾º ÈÖÝÒÝÔ ÐÒ Ñ ØÝ ØÝÔ Û Ë Ñ Ø ØÝÔÙ α 3,α 4,α 5 (α 3 (α 4 (α 5 α 4 ))) Ò ØÝÐ Ó Ô Ò µ Ø ØÓ Û ØÓ¹ Ò Ö Þ Ó ÐÒÝ ÐÙ ÔÖÝÒÝÔ ÐÒÝ Ò º ÔÖ Ò Ô Ðµ Ñ Ø ØÝÔÙ Ð ÛÝÖ Ò let f = λx 1 (λx 2 (x 1 )) in f f Þ Ò ÓÛ ÒÓ Ò Ð Þ º Ò Ù ÝÛ ÔÖÞÝ ØÝÑ Ò ØÙÖ ÐÒ Ó ÖÓÞ Þ ÖÞ Ò Ö Ð Ò Ö Ð Þ ËÐ ¾ µ Ó Ö Ð Ò ÖÒ
25 ¾º ÈÖÝÒÝÔ ÐÒ Ñ ØÝ ØÝÔ Û ¾ Rysunek 35: Szkielet drzewa dowodu i warunków dla (λf(f f)) λx 1 (λx 2 (x 1 )) (C12) (C13) (C16) f : t 4 f : t 6 f : t 4 f : t 7 x 1 : t 8,x 2 : t 10 x 1 : t 11 (C11) (C15) f : t 4 f f : t 5 x 1 : t 8 λx 2 (x 1 ) : t 9 (C10) (C14) {} λf(f f) : t 2 {} λx 1 (λx 2 (x 1 )) : t 3 (C9) {} (λf(f f)) λx 1 (λx 2 (x 1 )) : t 1 Warunki : (C9) t 2 = t 3 t 1 (C10) t 2 = t 4 t 5 (C11) t 6 = t 7 t 5 (C12) {}(t 4 ) t 6, tj. t 4 = t 6 (C13) {}(t 4 ) t 7, tj. t 4 = t 7 (C14) t 3 = t 8 t 9 (C15) t 9 = t 10 t 11 (C16) {}(t 11 ) t 8, tj. t 11 = t 8
26 ¾ Ä ÇÊ ÌÅ Íà ÂÁ Ì È Ï Rysunek 36: Pryncypalny σ dla wyrażeń domkniętych System typów σ jest pryncypalnym (ang. principal) schematem typów domkniętego wyrażenia M w języku Mini-ML, jeśli (a) M : σ daje się udowodnić (b) dla wszystkich σ, jeśli M : σ daje się udowodnić, to wtedy σ σ gdzie z definicji σ σ zachodzi jeśli σ = A (t ) razem z A wzt(σ) = {} oraz σ t (zob. definicję na slajdzie 24). (Zauważmy, że ponieważ identyfikujemy schematy typów aż do alfa-konwersji -zwiazanych zmiennych typu, możemy zawsze spełnić warunek A wzt(σ) = {} przez odpowiednie przemianowanie zwiazanych zmiennych typu w schemacie σ.) Ñ ÞÝ ÓÑ Ò ØÝÑ µ Ñ Ø Ñ ØÝÔ Ûº Ï ÖØÓ Þ ÙÛ Ý Û Ó ÒÓ µ Þ ¹ Ó Þ Ó ÛÖÓØÒÓ Û ÖÙÒ Ù µ Ò Ð Þ Ð σ σ ÓÖ Þ M : σ ØÓ ÛØ Ý M : σ º ËÐ ÔÖÞ Ø Û ÛÒÝ Ö ÞÙÐØ Ø Ò Ø Ñ Ø ÔÖÓ Ð ÑÙ ØÝÔÓÛ ÐÒÓ ÛÝÖ Å Ò ¹Åĺ Ó Ø ÓÒ ÔÓ Ö Þ Ô ÖÛ ÞÝ Ù ÓÛÓ Ò ÓÒÝ Ð ÔÖÓ Ø Ó Ý Ø ÑÙ ØÝÔ Û Þ ÔÓÐ ÑÓÖ ÞÒÝ ÛÝÖ let ÔÖÞ Þ À Ò Ð Ý³ ½ µ ÖÓÞ Þ ÖÞÓÒÝ Ó Ô Ò Ó Ý Ø ÑÙ ÔÖÞ Þ Ñ ³ Å ÐÒ Ö³ ½ ¾µº Ð ÓÖÝØÑ Ù ØÝÔ Û Ð Ñ Ø Ó ÖÓÞ Þ Ù Ø Ò Þ ÓÛ Ò ÓÛÓ Ù ØÛ Ö Þ Ò À Ò Ð Ý¹ Ñ ¹Å ÐÒ Ö³ ÔÓ Ò Ó Ò Ð Þ ÔÖÞ Þ ÓÔ Ò Ð ÓÖÝØÑÙ pt Ó Ý ÓÛ Ò Ó ØÝÔÓÛ ÐÒÓ ÞÛÖ Ò Ò Ö Þ Ó ÐÒ Ó Ñ ØÙ ØÝÔÙº Ð ÓÖÝØÑ pt Ø Þ Ò ÓÛ ÒÝ Ö Ù¹ Ö ÒÝ Ò ÔÓ Þ ØÖÙ ØÙÖ ÛÝÖ Ó Þ Ó Þ Ò Ø ÓÛÓ ÞÓÒ ÔÖÞ Þ Ò Ù Ò ØÖÙ ØÙÖÞ ÛÝÖ µº  ÔÖÞÝ Ý Û ÖÓÞ Þ Ð ¾º¾ ÔÓÛ ÒÒÝ Ù ÖÓÛ Ð ÓÖÝØÑ ÞÒ Þ Ó Þ Ð Ý Ó ÙÒ ØÙ ÖÓÞÛ ÞÝÛ ÐÒÓ Ó ÞÓÒ Ó Þ ÓÖÙ Ö ÛÒ Ñ ÞÝ Ð Ö ÞÒÝÑ Ö Þ Ñ Ø Ý ÓÛ ÐÒ ÓÖ Þ ØÒ Ò Ö Þ Ó ÐÒ ÖÓÞÛ Þ Ò Ð ØÝÐ Ó ÖÓÞÛ Þ Ò ØÒ º Ì Ò Ø ÞÓ Ø Ó ÖÝØÝ ÔÖÞ Þ ÊÓ Ò ÓÒ³ ½ µ Ø ÐÙÞÓÛÝÑ Ò Ñ Û Û ÐÙ Ó ÒÓ Þ Ý Ó ÐÓ Ó Þ Ö Ò ÓÖÑ ØÝ ÑÓ Ò ØÙ ÛÝÑ Ò ØÖÞÝ ÔÖÞÝ Ý ÙØÓÑ ØÝÞÒ ÓÛÓ Þ Ò ØÛ Ö Þ ÔÖÓ Ö ÑÓÛ Ò Û ÐÓ ÓÞÝÛ Ý Ø ÑÝ ØÝÔ Ûµº ÓÖÑ Ð ÓÖÝØÑÙ ÙÒ nou Ó Ø Ö Ò Ñ Ó Þ ÔÖÞ Ø Û Ð º  ÓÐÛ Ò Þ ÑÝ
27 ¾ Rysunek 37: Twierdzenie (Hindley; Damas-Milner) Jeśli domknięte wyrażenie Mini-ML jest typowalne (tj. zachodzi M : σ dla jakiegoś schematu typów σ), to istnieje pryncypalny schemat typów dla M. Rzeczywiście, istnieje algorytm, który majac dane M jako parametr wejściowy, zdecyduje czy lub nie wyrażenie to jest typowalne, oraz zwróci pryncypalny schemat typów jeśli zachodzi to pierwsze. Rysunek 38: Unifikacja typów ML Istnieje algorytm nou który majac podane dwa typy Mini-ML t 1 i t 2 zdecyduje czy t 1 i t 2 sa unifikowalne (ang. unifiable), tj. czy istnieje zastapienie typu S Sub takie że (a) S(t 1 ) = S(t 2 ) Co więcej, jeśli one sa unifikowalne, nou(t 1,t 2 ) zwróci najbardziej ogólny unifikator S satysfakcjonujacy zarówno (a) jak i (b) dla wszystkich S Sub, jeśli S (t 1 ) = S (t 2 ), to wtedy S = TS dla jakiegoś T Sub. Przyjmujemy, że nou(t 1,t 2 ) = FAIL jeśli (i tylko wtedy) gdy t 1 i t 2 nie sa unifikowalne. ÔÖÞÝØ Þ ØÙØ ÑÔÐ Ñ ÒØ Ð ÓÖÝØÑÙ nou ÑÙ ÑÝ ÔÖÞÝÒ ÑÒ ÛÝ Ò ÒÓØ ¹ Ð Þ Ø Ô Ò ØÝÔ Û ÛÔÖÓÛ ÞÓÒ Ò Ð Þ º Ò ½ Ø Ô Ò ØÝÔ Ûµº Ø Ô Ò ØÝÔ Û Ò º ØÝÔ Ù Ø ØÙØ ÓÒµ S Ø ÓÛ Þ Ò ÓÛ Ò µ ÙÒ Þ ÞÑ ÒÒÝ ØÝÔÙ Ó ØÝÔ Û ÞÝ Å Ò ¹ÅÄ Þ Û ¹ ÒÓ S(α) = α Ð Û ÞÝ Ø ÓÔÖ Þ Ó ÞÓÒ Ð Þ Ý ÞÑ ÒÒÝ αº È Þ ÑÝ Sub Ñ Ò ÑÝ Ð Þ Ö Û ÞÝ Ø Ø ÙÒ º S Sub Ø ØÓ Ó ÞÓÒÝ Þ Ö ÞÑ ÒÒÝ dom(s) = {α TyVar S(α) α} Þ Þ Ò Þ ÓÖÙ Å Ò Þ Ø Ô Ò ØÝÔ Û S Ø Þ ØÓ ÓÛ Ò Þ Ø Ô Ò Ó ØÝÔÙ Ø Þ ¹ Ô ÝÛ ÒÝ S t Ø Û Ð dom(s) = {α 1,...,α n } S(α i ) Ø ØÝÔ Ñ t i Ð Ó
28 ¾ Ä ÇÊ ÌÅ Íà ÂÁ Ì È Ï Rysunek 39: Pryncypalny σ dla wyrażeń otwartych Rozwiazaniem dla problemu typowania Γ M :? jest para (S,σ) składajaca się z zastapienia typów S i schematu typów σ spełniajaca S Γ M : σ (gdzie S Γ = {x 1 : S σ 1,...,x n : S σ n }, jeśli Γ = {x 1 : σ 1,...,x n : σ n }). Takie rozwiazanie jest pryncypalne jeśli majac dane jakiekolwiek inne rozwiazanie, (S,σ ), istnieje jakieś T Sub z TS = S i Tσ σ. i = 1..n ÛØ Ý S t Ø ØÝÔ Ñ ÓØÖÞÝÑ ÒÝÑ ÔÖÞ Þ Ö ÛÒÓÞ Ò Þ Ø Ô Ò Ó ÛÝ Ø Ô Ò α i Û t ÔÖÞ Þ t i Ð Û ÞÝ Ø i = 1..nµ Ø º S t = t [t 1 /α 1,...,t n /α n ] Ù ÝÛ ÒÓØ Ð Þ Ø Ô Ò Ò Ð Þ ¾ º Æ Ó ÖÞÙ ÒÓØ ÔÓ ÔÖ Û ØÖÓÒ ÔÓÛÝ Þ ÓÖÑÙ Ý Þ ÑÝ ÛÓÐ Ð Ô Þ ØÓ ÓÛ Ò ÙÒ Þ Ø Ô Ò ØÝ¹ Ô Û S ÔÓ Ð Û ØÖÓÒ ØÝÔÙ Ó Ø Ö Ó Ø ÙÒ Ø Þ ØÓ ÓÛ Ò ÞÝÐ S t Þ Ñ Ø t Sµº Â Ó Ö ÞÙÐØ Ø ÓÑÔÓÞÝ TS Û Þ Ø Ô ØÝÔ Û S,T Sub ÓÞÒ Þ Ò Ô ÖÛ Þ ØÓ Ù S ÔÓØ Ñ T º ÏØ Ý Þ Ò TS Ø ÙÒ Ó ÛÞÓÖÓÛÙ ÞÑ ÒÒ ØÝÔÙ α ØÝÔÓÛ T(S(α)) ØÓ Ù ÑÝ Þ Ø Ô Ò ØÝÔÙ T Ó ØÝÔÙ S(α)µº ÙÛ ÑÝ ÙÒ TS Ô Ò Û ÖÙÒ Ó ÞÓÒÓ ÛÝÑ ÒÝ ÔÖÞ Þ Þ Ø Ô Ò Ñ ÑÝ TS Sub ØÝÞÒ dom(ts) dom(t) dom(s)º Ö Þ Ó ÐÒ Ð dom(s) = {α 1,...,α n } σ Ø Ñ Ø Ñ ØÝÔÙ Å Ò ¹ÅÄ ØÓ ÛØ Ý S σ Þ ÓÞÒ Þ Ö ÞÙÐØ Ø ÔÓ Ñ ÒÝ Ó ÛÓÐÒ Ó ÛÝ Ø Ô Ò α i Û σ ÔÖÞ Þ S(α i ) Ð i = 1..nµ ÞÑ Ò Ó ÔÓÛ Ò Ó Ò ÞÛÝ ÞÑ ÒÒÝ Ø Ñ Þ ØÓ ÓÒ ÞÒ º Æ Û Ø Ð Ó Ø Ø ÞÒ Þ ÒØ Ö ÓÛ Ò Ø ÑÝ ØÝÔÓÛ ÐÒÓ ÛÝÖ ÓÑ Ò ¹ ØÝ ÔÓÒ Û Ð ÓÖÝØÑ pt Ó Þ Ö ÙÖ ÒÝ Ò ÔÖÞ Þ ÔÓ ÛÝÖ Ò ÛÝÖ Ò Û ¹ ÓÛ Ó Ò Ù ÖÓÒÒ ÑÙ ÓÒ ÛÝ Ò ÖÓÛ ØÝÔÓÛ Ò Ð ÛÝÖ Þ ÛÓÐÒÝÑ ÞÑ Ò¹ ÒÝÑ º Ð Ø Ó Û ÑÙ ÑÝ Þ Ò ÓÛ ÞÒ Þ Ò ØÝÔÓÛ ÐÒÓ ÔÖÝÒÝÔ ÐÒÝ ¹ Ñ Ø Û ØÝÔ Û Ð ÛÝÖ ÓØÛ ÖØÝ Û Ó ÒÓ Ò ÔÙ Ø Ó ÖÓ ÓÛ ØÝÔÓÛ Ò º ÏÝÒ Ñ ÑÝ Ò Ð Þ º Ý Ó Ð ÞÝ ÔÖÝÒÝÔ ÐÒ Ñ ØÝ ØÝÔ Û ÛÝ Ø ÖÞ Ó Ð ÞÝ ³ÔÖÝÒÝÔ ÐÒ ÖÓÞÛ Þ Ò ³ Û Ò Ð Ù Ð Ø Ó Ð M Ø Û ÖÞ Þݹ Û ØÓ ÓÑ Ò Ø ØÓ ÛØ Ý ÓÐÛ ÔÖÝÒÝÔ ÐÒ ÖÓÞÛ Þ Ò (S,σ) Ð ÔÖÓ Ð ÑÙ ØÝÔÓÛ Ò {} M :? Ñ Û ÒÓ Ø σ Ø ÔÖÝÒÝÔ ÐÒÝÑ Ñ Ø Ñ ØÝÔ Û Ð M Û Ò Ð Ù º
29 ¾ Rysunek 40: Specyfikacja dla algorytmu typowania pt pt operuje na problemach typowalności Γ M :? (Γ - środowisko typowania, M - wyrażenie języka Mini-ML). pt albo zwraca parę (S,t) składajac a się z zastapienia typów S Sub oraz typu t Mini-ML, albo generuje wyjatek FAIL. jeśli Γ M :? ma rozwiazanie (zob. slajd 39), wtedy pt(γ M :?) zwraca (S,t) dla jakiegoś S i t; co więcej, ustalajac A = {wzt(t) wzt(s Γ)}, mamy że (S, A(t)) jest pryncypalnym rozwiazaniem dla problemu Γ M :?. jeśli Γ M :? nie ma rozwiazania, to wtedy pt(γ M :?) zwraca FAIL. ËÐ ¼ Þ Û Ö Û ÞÞ Û Ò Ø Ñ Ø Ø Ó Ó Ø ÛÝÑ Ò Ó Ð Ó¹ ÖÝØÑÙ ÔÖÝÒÝÔ ÐÒ Ó ØÝÔÓÛ Ò ptº Â Ò Þ ÑÓ Ð ÛÝ Ð ÓÖÝØÑ Û Ø Ó ÖÓ Þ Ù ÓÔ ÒÝ Ò ÓÖÑ ÐÒÝÑ Ô Ù Ó¹ Ó Ñ Þ ÔÓÑ Ò Ñ ÔÖÞÝÔ Û Ð nil ÓÒ Ûݹ Ö matchµ ÞÓ Ø Ò Þ ÓÛ ÒÝ Ò Ð ½ ¾º ÈÖÓ Þ Þ ÙÛ Ý Ò ØÔÙ ÔÙÒ ØÝ Û Ó Ò Ò Ù Ó ØÝ Ò ½º Í ÖÝ Þ ÑÝ Û ÞÝ Ø ÞÛ Þ Ò ÞÑ ÒÒ Û ÛÝÖ Ò ÞÛ Þ Ò ÞÑ ÒÒ ØÝÔÙ Û Ñ Ø ØÝÔ Û Ö Ò Ò Ó ÖÙ ÓÖ Þ Ó ¹ ÓÐÛ ÒÒÝ ÞÑ ÒÒÝ Û ÓÒØ º Ì Û Ð ÔÖÞÝ Ù Ð ÙÞÙÐ Ð ØÖ ÙÒ ÔÓ Ù Þ x / dom(γ) ÓÖ Þ Ð ÙÞÙÐ Ð ÞÑ ÒÒÝ Þ A wzt(γ) = {}º ¾º Ø Ô Ò ØÝÔ Û Id ÛÝ ØÔÙ Û Ð ÙÞÙÐ Ð ÞÑ ÒÒÝ Ð Û ÖØÓ ÓÓÐ Ò Ø Þ Ø Ô Ò Ñ ÒØÝÞÒÝÑ Ø Ö Ó ÛÞÓÖÓÛÙ ÞÑ ÒÒ ØÝÔÙ α Ò º º Æ ÔÓ Þ Ð ÑÝ Ð ÙÞÙÐ Ò Ð nil ÓÒ ÛÝÖ matchº º Æ Ð ÑÝ ÓÛÓ Ù Ò Ò Ð Þ ¾ Ø ÔÖ Û ÓÛ Ø º Ô Ò Ô Ý Ò Ð Þ ¼µº ÈÖ Û ÓÛÓ Ð ÓÖÝØÑÙ Þ Ð Ý Ó ØÓØÒ Û ÒÓ ØÝÔÓÛ Ò Å Ò ¹ÅÄ Ñ ÒÓÛ ØÝÔÓÛ Ò Ø Þ ÓÛ Ò ÔÖÞ Þ ÓÔ Ö Þ Ø Ô Ò ÞÑ ÒÒÝ ØÝÔ Û ÔÖÞ Þ ØÝÔݺ Ö Þ ØÝÛÒ Ð ÓÖÝØÑÝ ÛÝ ÓÖÞÝ ØÙ ÒÒ ÔÓ Ó Þ Ø Ô Ò ÙÒ ¹ ÞÙ Ò Ö Ð Ö ÛÒÓÛ ÒÓ Ò º ÕÙ Ú Ð Ò Ö Ð Ø ÓÒ µ ÖÙÒ ÓÛÝ
30 ¼ ÈÇÄÁÅÇÊ Á Æ Ì È Ê Ê Æ ÂÁ Rysunek 41: Wybrane klauzule w definicji algorytmu pt (1/2) Abstrakcje funkcji: pt(γ λx(m) :?) = let α = fresh in let (S,t) = pt(γ,x : α M :?) in (S,S(α) t) Aplikacje funkcji: pt(γ M 1 M 2 :?) = let (S 1,t 1 ) = pt(γ M 1 :?) in let (S 2,t 2 ) = pt(s 1 Γ M 2 :?) in let α = fresh in let S 3 = nou(s 2 t 1,t 2 α) in (S 3 S 2 S 1,S 3 (α)) Ý Ð ÞÒÝ Ö Û ÓÖ Þ Ð ÓÖÝØÑ ÞÒ ÓÛ Ò ÙÒ ÞÓ º ÒÔº Ê ÑÝ ¾¼¼¾ ÖÓÞ¹ Þ ¾º º¾µº Ï ØÝÑ Ó ÒÓ Ò Ù Ø Û È Ö ³ È Ö ¾¼¼¾ ÊÓÞ Þ ¾¾º µ ÑÓ ÑÝ ÞÓ ÞÝ ÔÓ Ó Ð ÓÖÝØÑ Û Ù ØÝÔ Û Ø Ö ÔÖ Þ ÒØÙ Ó Þ Ö Þ Ó ÐÒ Ó ÔÖÓ Ð ÑÙ Ò ÖÓÛ Ò ÖÓÞÛ ÞÝÛ Ò ÔÖÓ Ð Ñ Û Ó Ö Ò Þ Ò º ÓÒ ØÖ ÒØ ÔÖÓ Ð Ñ µº ÏÝ Ø ØÓ ÔÓ ÓÛÓÒ Ý Ó ÑÙ Þ ÖÓ Ð Ö ÒÝ Ð ÓÖÝØÑ Û Ù ØÝÔ Ûº º½ ÈÓÐ ÑÓÖ ÞÒ ØÝÔÝ Ö Ö Ò ÈÖÓ Ð Ñ ÈÖÞÝÔÓÑÒ ÑÝ Ó Þ Ï ØÔÙ Û ÒÝÑ Ð Ñ Ý Ø ÑÙ ØÝÔ Û Ø Þ Ô ÛÒ Ò ÞÔ Þ ØÛ Ð ½¼µ ÔÓÔÖÞ Þ Ö ÞÙÐØ ØÝ Ò Þ ÛÓ ÒÓ ØÝÔÓÛ Ò Ð ½½µº Æ Û Ø Ð ÞÝ ÔÖÓ Ö ÑÓÛ Ò Ø ÔÓÑÝ Ð ÒÝ Ó ÞÔ ÞÒÝ ÔÖÞ Þ ÛÓ Ó Ý Ø ÑÙ ØÝÔ Û ØÓ Û ÑÓ Þ ÖÞÝ Ó Þ ÐÒ Ý Ø Ó ÞÝ Þ Ò ÔÓ Ò Þ Ó Ó Ò ÑÓ Ö Þ Ñ Û Ò ÔÖÞ Û Þ ÒÝ ÔÓ ÔÖÓ Ù Ù Þ ÛÓ ÒÝ Ý Ø Ñ ØÝÔ Ûº Ï ØÝÑ ÖÓÞ Þ Ð ÔÓ ÖÞÝÑÝ Ò ÔÖÞÝ Ø Ó Þ Û Ø ÖÝ ÛÝ Ø Ô ÔÓ Þ ÓÔÖ ÓÛÝÛ Ò ÖÓ Þ ÒÝ ÞÝ Û Åĺ Û Ý ÞÝ Ø Ö Û Ò ÔÖÞÝ ÑÒÝ ÔÓ ØÓ ÅĹÓÛÝ ØÝÐ ÑÔÐ ØÝÛÒ ØÝÔÓÛ Ò Ó let¹þû Þ Ò Ó ÔÓÐ ÑÓÖ ÞÑÙ ÓÖ Þ ØÝÔÝ Ö Ö Ò º
31 º½ ÈÖÓ Ð Ñ ½ Rysunek 42: Wybrane klauzule w definicji algorytmu pt (2/2) Zmienne: pt(γ x :?) = let A(t) = Γ(x) in (Id,t) Wyrażenia let: let (S 1,t 1 ) = pt(γ M 1 :?) in let A = wzt(t 1 ) wzt(s 1 Γ) in pt(γ let x = M 1 in M 2 :?) = let (S 2,t 2 ) = pt(s 1 Γ,x : A(t 1 ) M 2 :?) in (S 2 S 1,t 2 ) Boolean (B = true,false): pt(γ B :?) = (Id,bool) Warunki: pt(γ if M 1 then M 2 else M 3 :?) = let (S 1,t 1 ) = pt(γ M 1 :?) in let S 2 = nou(t 1,bool) in let (S 3,t 3 ) = pt(s 2 S 1 Γ M 2 :?) in let (S 4,t 4 ) = pt(s 3 S 2 S 1 Γ M 3 :?) in let S 5 = nou(s 4 t 3,t 4 ) in (S 5 S 4 S 3 S 2 S 1,S 5 t 4 )
32 ¾ ÈÇÄÁÅÇÊ Á Æ Ì È Ê Ê Æ ÂÁ Rysunek 43: Typy i wyrażenia w ML dla referencji Typy t ::=... zob. slajd 23 unit typ elementu (ang. unit type) t ref typ referencji Wyrażenia M ::=... zob. slajd 26 () element (ang. unit) ref M utworzenie referencji!m dereferencja (odczyt) M := M przypisanie È ÖÛ Þ Þ Ò Ò Ù ÓÑ Û Ð ÑÝ Û ÖÓÞ Þ Ð ¾º ÖÙ Þ Ò Ò ÓØÝÞÝ ÑÔ Ö ØÝÛÒÝ ÞÝ ÅÄ Ø Ö ÞÙ Ò Þ ÓÐÒÓ Ó ÝÒ Ñ ÞÒ Ó ØÛÓÖÞ ¹ Ò Û Þ ÒÝ ÐÓ ÐÒ ÐÓ Ð Þ Ô Ñ Ø Ö ÑÓ Ý Þ Ô ÝÛ Ò Ó ÞÝØÝÛ Ò º ÊÓÞÔÓÞÒ ÑÝ ÔÖÞ Þ ÔÓ Ò Ð Ò Ò Ö Ù ØÝÔÓÛ Ò º ÊÓÞ Þ ÖÞÝÑÝ Ö ¹ Ñ ØÝ Ð ØÝÔ Û Å Ò ¹ÅÄ Ð ¾ µ Ó ØÝÔ Û ÖØÓ Ð Ñ ÒØÙ Ø º ØÝÔ Þ ÔÓ ÝÒÞ Û ÖØÓ ÙÒ Ø µ ÓÖ Þ ØÝÔÝ ÑÓ Ý ÓÛ ÐÒÝ µ Ö Ö Ò Ò º Ö Ö Ò ØÝÔ µ Ó ¹ ÔÓÛ Ò Ó ÖÓÞ Þ ÖÞÝÑÝ Ö Ñ ØÝ Ð ÛÝÖ Å Ò ¹ÅÄ Ð ¾ µ Ó Û ÖØÓ Ð Ñ ÒØÙ Ò º ÙÒ Ø Ú ÐÙ µ ÓÖ Þ ÓÔ Ö Ó ØÛÓÖÞ Ò Ó ÞÝØÝÛ Ò ÔÖÞÝÔ ÝÛ Ò Ö Ö Ò¹ º Ì Ó Ø ÔÓ Þ Ò Ò Ð Þ º Æ ÞÛ ÑÝ Ø ÓØÖÞÝÑ ÒÝ ÞÝ Å ¹Åĺ Ê Ù Ý ØÝÔÓÛ Ò Ð ØÝ ÒÓÛÝ ÓÖÑ ÛÝÖ ÔÓ ÒÓ Ò Ð Þ º ÈÖÞÝ ÇØÓ ÔÖÞÝ Ù Ý Ö Ù ØÝÔÓÛ Ò Þ Ð Ù º ÏÝÖ Ò ÔÓ Ò Ò Ð Þ Ñ ØÝÔ unitº ÓÛ º ÅÓ Ò ØÓ ÛÝ Ù ÓÛ ÔÖÞ Þ ÔÐ ÓÛ Ò Ö Ù Ý let Ð ¼µ ØÓ ØÛ Ö Þ {} ref λx(x) : (α α) ref r : α((α α) ref ) let u = (r := λx (ref!x )) in (!r)() : unit. È ÖÛ Þ Þ ØÛ Ö Þ Ñ Ò ØÔÙ Ý ÓÛ Ú Ö µ x : α x : α {} λx(x) : α α Òµ Ö µ {} ref λx(x) : (α α) ref
33 º½ ÈÖÓ Ð Ñ Rysunek 44: Dodatkowe reguły typowania dla Midi-ML (unit) Γ () : unit (ref) Γ M : t Γ ref M : t ref (get) Γ M : t ref Γ!M : t (set) Γ M 1 : t ref Γ M 2 : t Γ M 1 := M 2 : unit Rysunek 45: Przykład referencji To wyrażenie let r = ref λx(x) in let u = (r := λx (ref!x )) in (!r)() ma typ unit.
34 ÈÇÄÁÅÇÊ Á Æ Ì È Ê Ê Æ ÂÁ ÖÙ Þ ØÛ Ö Þ ÑÓ Ý Ù ÓÛÓ Ò ÓÒ ÔÖÞ Þ ÔÐ ÓÛ Ò Ö Ù Ý let Ó r : α((α α) ref ) r := λx (ref!x ) : unit r : α((α α) ref ),u : unit (!r)() : unit. µ µ È Þ Γ Ð ÖÓ ÓÛ ØÝÔÓÛ Ò {r : α((α α) ref )} ÓÛ (5) Ø Ò ØÔÙ Ý Γ,x : α ref x Ú Ö µ : α ref Γ,x : α ref!x ص : α Γ,x : α ref ref!x Ö µ : α ref Ú Ö µ Γ r : (α ref α ref ) ref Γ λx (ref!x Òµ ) : α ref α ref Γ r := λx (ref!x ص ) : unit ÈÓ Þ Ý ÓÛ µ ØÓ Ú Ö µ Γ,u : unit r : (unit : unit) ref ص Γ,u : unit!r : unit unit Γ,u : unit () : unit ÙÒ Øµ Ôµ Γ,u : unit (!r)() : unit  ÓÐÛ Ö Ù Ý ØÝÔÓÛ Ò Ð Ö Ö Ò ÛÝ Ý Þ Þ ÖÞÙØÙ ØÓ Ò Û ÔÓ Þ Ò Ù Þ ÔÓÔÖÞ Ò Ñ Ö Ù Ñ ØÝÔÓÛ Ò Û ÞÞ ÐÒÓ Þ Ö Ù Ð Øµ ÔÖÓ Ù Ù ÓÒ Ý Ø Ñ ØÝÔ Û Ð Ø Ö Ó Ò Þ ÛÓ ÒÓ Ý Ø ÑÙ ØÝÔ Û Ò ÔÖ Û Þ Û Ó Ò Ò Ù Ó Ñ ÒØÝ ÓÔ Ö Ý Ò ÞÝ Åĺ Ý ÔÖÞ ÓÒ Ó Ó Ó Þ ÖÓÞÛ ÑÝ Ó Þ Þ Ó Ý ÛÝÖ Ò Ò Ð Þ Ò ÞÛ ÑÝ M Ø Û ÐÙÓÛ Ò º Û ÐÙ ÛÝ ÓÒ Ò µ Ò Ö Þ Þ ÛÒØÖÞÒ Ó ÔÖÞÝÔ Ò let Û M ÙØÛÓÖÞÝ Û ÐÓ Ð Þ Ô Ñ ÔÖÞÝÔ Ò r Þ Û Ö Û ÖØÓ λx(x)º Û ÐÙ ÖÙ¹ Ó let¹þû Þ Ò Ù ØÙ ÐÒ Þ Û ÖØÓ r Ó Û ÖØÓ λx (ref!x ) ÞÛ Û ÖØÓ Ð Ñ ÒØÙ ÙÒ Ø Ú ÐÙ µ Þ u ½ º Æ ØÔÒ (!r)() Ø Û ÐÙÓÛ Ò º ÌÓ ÓÞÒ Þ ÔÐ ÓÛ Ò Þ Û ÖØÓ r ØÓ Ø ÙÒ λx (ref!x ) Ó Û ÖØÓ ()º ÌÓ Ò ØÓÑ Ø ÔÓÛÓ¹ Ù Û Ö ÞÙÐØ ÔÖ Û ÐÙÓÛ Ò!() Ø º Ö Ö Ò Þ Ó Ó Ò Ø ÐÓ Ð Þ Ô Ñ Û ÔÖ ÛÝ ÓÒ Ò Ò ÞÔ ÞÒ ÓÔ Ö Ø Ö ÔÓÛ ÒÒ Ý Ù ÛÝÓÒ ÔÖÞ ÛÝ ÓÒ Ò Ñ ÔÖÓ Ö ÑÙº ÏÝÖ Ö Þ ÓÖÑ ÐÒ Ñ ÑÝ M, {} FAIL Û Ý Ø Ñ ØÖ ÒÞÝ Þ Ò ÓÛ ÒÝÑ Ò Ð ÓÖ Þ Ò Ð Þ Ù ÝÛ ØÝÐÙ Û ÐÙ Ý Ò Ó ÓÒØ ØÙ ÏÖ Ø³ ÐÐ Ò³ ½ µµº ÃÓÒ ÙÖ Ý Ø ÑÙ ØÖ ÒÞÝ ÛÓ Ó ÖÓ Þ Ù ½ ÈÓÒ Û ÞÑ ÒÒ u Ò ÔÓ Û Û Ð ÛÝÖ Ò M Ò Ö Þ Û ÛÒØÖÞÒ ÛÝÖ Ò let Û M Ø ÝÒ ÔÓ Ó Ñ Þ Ó ÓÛ Ò Û Ò (r := λx (ref!x )); (!r)() Û Ö Ñ Ò ÞÝ ÅÄ Ø ÖÝ Ù ÝÛ ÑÝ Ð Ñ ÐÙ ØÖ ÔÖÞ Ø Û ÒÝ Þ Ò º
35 º¾ ÈÖÞÝÛÖ Ò Ò Þ ÛÓ ÒÓ Ý Ø ÑÙ ØÝÔ Û Rysunek 46: Tranzycje Midi-ML właczaj ace referencje (1/3)!x,s s(x),s!v, s FAIL jeśli x dom(s) x := V,s (),s[x V ] jeśli V nie jest zmienna V := V,s FAIL jeśli V nie jest zmienna ref V,s x,s[x V ] gdzie x / dom(s) gdzie V zmienia się po wartościach: V ::= x λx(m) () true false nil V :: V È Ö M,s Þ M Ø ÛÝÖ Ò Ñ ÅÄ Þ s Ø Ø Ò Ñ Ò º Ø Ø µ Þ ¹ Ò ÓÛ ÒÝÑ Ó Ó ÞÓÒ ÙÒ ÔÖÞÝÔÓÖÞ ÓÛÙ ÞÑ ÒÒÝÑ x ØÙØ ¹ ÝÑ Ù ÝÛ Ò Ó ÐÓ Ð Þ Ô Ñ µ ÝÒØ ØÝÞÒ Û ÖØÓ Ò º Ú ÐÙ µ V º ÅÓ Ð Û ÓÖÑ ØÝ V Ð Ò Þ Ó Ö Ñ ÒØÙ ÞÝ ÅÄ Þ Ò ÓÛ Ò Ò Ð Þ ºµ Ó Û Ý Ø Ô Ö ÑÓ Ý ÓÒ ÙÖ ÑÙ Ý Ô ¹ Ò ÓÒÝ Ò ØÔÙ Ý Û ÖÙÒ Ó Ö Ó Ù ÓÖÑÓÛ Ò ÞÑ ÒÒ ÛÓÐÒ ÛÝÖ Ò M ÓÖ Þ Û ÖØÓ s(x) Þ x ÔÖÞÝ ÑÙ Û ÖØÓ Þ dom(s)µ ÔÓÛ ÒÒÝ Ý Þ Û ÖØ Û Ó ÞÓÒÝÑ Þ ÓÖÞ dom(s)º ËÝÑ ÓÐ FAIL Ö ÔÖ Þ ÒØÙ Ý Û Þ ÛÝ ÓÒ Ò Ò º ÖÙÒ¹Ø Ñ ÖÖÓÖµº ÆÓØ s[x V ] Ù ÝØ Ò Ð Þ ÓÞÒ Þ Ø Ò Ó Þ Þ Ò Þ Ò ÓÛ Ò Ó dom(s) {x} Ó ÞÛ Ö Ð Ý x Ó V Û ÒÒÝÑ ÔÖÞÝÔ Ù Þ ÓÛÙ Ý sºµ ÓÑ ØÝ Ö Ù Ý Ò Ù Ý Ò Ò Ù Ý Ø Ñ ØÖ ÒÞÝ Ð Å ¹ÅÄ ÔÖÞ ¹ Ø Û ÓÒ Ò Ð ¹ º º¾ ÈÖÞÝÛÖ Ò Ò Þ ÛÓ ÒÓ Ý Ø ÑÙ ØÝÔ Û Ë ÒÓ ÔÖÓ Ð ÑÙ ÓÔ Ò Ó Û ÔÓÔÖÞ Ò Ñ ÔÓ ÖÓÞ Þ Ð Ð Ý Û ØÝÔÓÛ Ò ÛÝÖ Ø let r = ref M 1 in M 2 Ù ÝÛ Ö Ù Ý Ð Øµ ÔÓÞÛ Ð ÐÓ Ð Þ Ô Ñ ÞÛ Þ Ò Þµ r ÔÓ Ñ Ø ØÝÔ Û σ Ò Ö Ð ÞÙ Ý ØÝÔ Ö Ö Ò ØÝÔÙ
36 ÈÇÄÁÅÇÊ Á Æ Ì È Ê Ê Æ ÂÁ Rysunek 47: System tranzycji dla języka Midi-ML (2/3) if true then M 1 else M 2,s M 1,s if false then M 1 else M 2,s M 2,s if V then M 1 else M 2,s FAIL, jeśli V / {true,false} (λx(m)) V,s M[V /x],s V V,s FAIL, jeśli V nie jest abstrakcja funkcji let x = V in M,s M[V/x],s match nil with nil M x 1 :: x 2 M,s M,s match V 1 :: V 2 with nil M x 1 :: x 2 M,s M [V 1 /x 1,V 2 /x 2 ],s match V with nil M x 1 :: x 2 M,s FAIL, ani cons-wartościa jeśli V nie jest ani nil
37 º¾ ÈÖÞÝÛÖ Ò Ò Þ ÛÓ ÒÓ Ý Ø ÑÙ ØÝÔ Û Rysunek 48: System tranzycji dla języka Midi-ML (3/3) M,s M,s E[M ],s E[M ],s gdzie V przyjmuje wartości (ang. values): M,s FAIL E[M ],s FAIL V ::= x λx(m) () true false nil V :: V E przyjmuje konteksty ewaluacyjne (ang. evaluation contexts): E ::= if E then M else M E M V E let x = E in M E :: M V :: E match E with nil M x :: x M ref E!E E := M V := E i E[ M ] oznacza wyrażenie w języku Midi-ML, które powstało przez zamianę wszystkich wystapień w E na M. ÛÝÖ Ò M 1 º ÏÝ Ø Ô Ò r Û M 2 Ó ÒÓ Þ Ó Ø Ñ Þ ÐÓÒ ÐÓ Ð Þ Û ÐÙ M 2 ÑÓ ÔÓÛÓ ÓÛ ÔÖÞÝÔ Ò Ó Ø Þ ÐÓÒ ÐÓ Ð Þ Ó Ó Ö Ò Þ ÑÓ Ð ÛÝ ØÝÔ Ð ÞÝ ÛÝ Ø Ô rº Ð Þ ÖÙ ØÖÓÒÝ Ö Ù ØÝÔÓÛ Ò ÔÓÞÛ Ð ØÝÑ Û ÞÝ Ø Ñ ÛÝ Ø Ô Ò ÓÑ r Ñ ÓÛÓÐÒÝ ØÝÔ Ø ÖÝ Ø Ô Ð Þ Ñ ØÙ σ ØÓ Û Ò ÑÓ ÔÖÓÛ Þ Ó ÔÖÞÝÔ Ò ØÝÔ Û Ó ÛÝÖ Ø Ö Ò ÞÔ ÞÒ Ø ØÓ Û Þ Ð ÑÝ Û Ò ÞÝÑ ÔÖÞÝ Þ º ÅÓ ÑÝ ÙÒ Ò Ø Ó ÔÖÓ Ð ÑÙ ÔÖÞ Þ ÛÝÑÝ Ð Ò Ý Ø ÑÙ ØÝÔ Û Ø ÖÝ Þ ÔÓ Ò Ö Ð Þ ÞÑ ÒÒÝ ØÝÔÙ ÛÝ ØÔÙ Ý Û ØÝÔ Þ ÐÓÒÝ ÐÓ Ð Þ Ô Ñ º à РÔÓ Ó Û Ø Ó Þ Ò ÞÓ Ø Ó Þ ÔÖÓÔÓÒÓÛ ÒÝ Û Ð Ø Ö ØÙÖÞ ÞÓ º ÔÖÞ Ð Û ÏÖ Ø ½ µº  ÒÓ Þ ÖÓÞÛ Þ Þ ÔØÓÛ Ò Û ÓÖÝ Ò ÐÒ Ò ËØ Ò Ö ÓÛ Ó ÅÄ Þ ½ ¼ ÖÓ Ù Å ÐÒ Ö ÌÓ Ø À ÖÔ Ö ½ ¼µ ÞÓ Ø Ó Þ ÔÖÓÔÓÒÓ¹ Û Ò ÔÖÞ Þ ÌÓ Ø ³ Ó ½ ¼µº Ó ÓÒÓ ÔÓ Þ Ð Ò Þ ÓÖÙ ÞÑ ÒÒÝ ØÝÔÙ Ò Û ÔÖÞ Ð Þ ÐÒ Ò Ó ÞÓÒ µ ÔÓ ÓÛÝ ÔÐ ØÝÛÒ ÞÑ ÒÒ ØÝÔÙ ÔÖÞÝ Ö Ò ÞÛÝ αµ ÓÖ Þ ÑÔ Ö ØÝÛÒ ÞÑ ÒÒ ØÝÔÙ Ò ÞÛÝ αµº ÏØ Ý Ö Ù Ö µ Ø Ó Ö Ò ÞÓÒ ÔÖÞ Þ ÛÝÑ Ý t ÝÒ Þ ÔÖÞ Ó ÑÔ Ö ØÝÛÒ ÞÑ ÒÒ ØÝÔÙ ÒÒÝÑ ÓÛÝ ÔÖÝÒ¹ ÝÔ ÐÒÝ Ñ Ø ØÝÔÙ ÛÝÖ Ò λx(ref x) Ø α( α α ref ) Ö Þ Ò α(α α ref )º ÈÓÒ ØÓ Ó Ò ØÓØÒ Þ Ö Ù Ð Øµ Ð ¼µ Ø Ó Ö Ò ÞÓÒ ÔÖÞ Þ ÛÝÑ Ò Ý Ý Ñ Ø ØÝÔÙ σ = A(t) ÔÖÞÝÔ ÒÝ Ó ÛÝÖ Ò M 1 Ø Ø A Þ Û Ö ÑÔ Ö ØÝÛÒ ÞÑ ÒÒ ØÝÔÙ ØÓ M 1 ÑÙ Ý ÛØ Ý Û ÖØÓ Û Û ÞÞ ÐÒÓ Ó Û ÐÙ Ò ØÛÓÖÞÝ Û ÐÓ Ð Þ Ô Ñ µº ÌÓ ÖÓÞÛ Þ Ò Ø Ñ Þ Ð Ø Û ØÝÑ ÒÓÛÝÑ Ý Ø Ñ ØÝÔ Û ØÝÔÓÛ ÐÒÓ Ûݹ
38 ÈÇÄÁÅÇÊ Á Æ Ì È Ê Ê Æ ÂÁ Rysunek 49: Warunkowa reguła typowania dlalet-wyrażeń Γ M 1 : t 1 (letv) Γ,x : A(t 1 ) M 2 : t 2 Γ let x = M 1 in M 2 : t 2 (*) (*) jeśli jest spełnione że x / dom(γ) oraz {} gdy M 1 nie jest wartościa, A = wzt(t 1 ) wzt(γ) gdy M 1 jest wartościa. (Przypomnijmy, że wartości zdefiniowaliśmy następujaco V ::= x λx(m) () true false nil V :: V.) Ö Ò Þ ÔÖÞ Ý Ö Ö Ò Ø Ó Ò Ø Ñ Û Ø ÖÝÑ Ý Ø Ñ º Â Ò Ñ Ø Û Ý Ø Ñ ØÝÔ Û ÞÝÒ Ò Ø ØÝ Ö Ò Ñ ÞÝ ÛÝÖ Ò Ñ Ø Ö ÔÓ ÛÞ Ð Ñ Þ ÓÛ Ò Ö ÛÒÓÛ Ò Ø º Ø Ø Ö ÔÓÛ ÒÒÝ Ý ÓÒ¹ Ø ØÓÛÓ Û Û Ð ÒØÒ µº Ð ÔÖÞÝ Ù Ø Û Ð ÙÒ ÓÔ ÖÙ Ý Ò Ð Ø Ø Ö ÑÓ Ý Þ Ò ÓÛ Ò Û ÞÝ ØÓ ÙÒ Ý ÒÝÑ Ö Ñ Ò ÞÝ ÅÄ ÔÖÞ Þ Ö ¹ ÙÖ ÒÝ Ò Ò Ð Ø Ö Ñ Ö Þ ØÝÛÒ Ò Ù ÝÛ ÐÓ ÐÒÝ Ö Ö Ò º Æ Ø ØÝ Ð Ñ Ø ØÝÔ Û ÔÓÔÖÞ Ò Ò Ø ÞÝÑ Ò ÞØ Ø α(α list α list) ØÓ Ñ Ø Ñ ØÝÔ Û Ø Ó Ø ØÒ ÑÓ Ö ÛÒ Ó ÖÞ Ý ÒÒÝ Ñ Ø ØÝÔ Û α( α list α list)º Ì Û Ò Þ ÑÝ Û Ø Ò Ù ÝÛ Û Û Ö Ø ÙÒ Þ Ñ ÒÒ ÙØÓÖÞÝ ÔÓÒÓÛÒ ÔÖÞ ÑÝ Ð Ò Ò ËØ Ò Ö ÓÛ Ó ÅÄ Å ÐÒ Ö ÌÓ Ø À Ö¹ Ô Ö Å ÉÙ Òµ Þ ÖÓ Ù ½ Þ ÓÔØÓÛ Ð ÔÖÓ Ø Þ ÖÓÞÛ Þ Ò Þ ÔÖÓÔÓÒÓÛ Ò Ò ¹ Þ Ð Ò ÔÖÞ Þ ÏÖ Ø³ ½ µº Í ÙÛ ÓÒÓ ÖÓÞÖ Ò Ò Ñ ÞÝ ÔÐ ØÝÛÒÝÑ ÑÔ ¹ Ö ØÝÛÒÝÑ ÞÑ ÒÒÝÑ ØÝÔÙ Û Û ÞÝ Ø ÞÑ ÒÒ ØÝÔÙ ÑÔ Ö ØÝÛÒ Ó ÞÛÝÞ ÓÛÓ Ù ÝÛ Ò ÝÑ ÓÐ α,α µ ÔÓ Þ Ý ÙØÖÞÝÑ Ò Ø Ó Ö Ò ÞÓÒ Ó Û ÖØÓ ÓÖÑÙ Ö Ù Ý Ð Øµ Ø ÔÓ Þ ÒÓ Ò Ð Þ º Ì Û Ò Þ Û Ö¹ Ø Ó Ý Ø ÑÙ ØÝÔ Û ÞÙ Ó Ò Ò Ø Ñ ÓÖÑÙÐ ØÝÔÙ Ñ ØÙ ØÝÔ Û ÓÖ Þ ÖÓ ÓÛ ØÝÔÓÛ Ò ÛÞ Ò Þ Ö Ð ØÝÔÓÛ Ò Ò ÖÓÛ Ò Ò Ù Ý Ò ÔÖÞ Þ ÓÑ ØÝ Ö Ù Ý Ò Ð Þ ¾ ¼ Þ ÛÝ Ø Ñ ÔÐ ØÝÛÒÓ Ö Ù Ý Ð Øµ Ø Ó Ö Ò ÞÓÒ Û Ø ÔÓ ÔÓ Þ ÒÓ Ò Ð Þ º ÈÖÞÝ ÏÝÖ Ò Ò Ð Þ Ò Ø ØÝÔÓÛ ÐÒ Û Ý Ø Ñ ØÝÔ Û Ð Å ¹ ÅÄ ÓØÖÞÝÑ ÒÝÑ Û ÛÝÒ Ù Þ Ø Ô Ò Ö Ù Ý Ð Øµ ÔÖÞ Þ Û ÖÙÒ ÓÛ Ó Ö Ò Þ ¹ Û ÖØÓ Ö Ù Ð ØÚµ Þ Ò ÓÛ Ò Ò Ð Þ ÙØÖÞÝÑÙ Ò ÞÑ Ò ÓÒ Û ÞÝ Ø
39 º¾ ÈÖÞÝÛÖ Ò Ò Þ ÛÓ ÒÓ Ý Ø ÑÙ ØÝÔ Û ÒÒ ÓÑ ØÝ Ö Ù Ýµº ÓÛ º ÙÛ Ò ÓÖÑ Ø Ø Ó ÛÝÖ Ò Ó Ø ØÒ Ö Ù Ù ÝØ Û ÓÛÓ Þ Ó ØÝÔÓÛ ÐÒÓ ÑÙ Ó ÞÝ Ù Ý Ñ Ð ØÚµº ÔÓÛÓ Ù Ù ÓÞÒ Ó Û ÖÙÒ Ù Û Ø Ö ÙÐ ÓÖ Þ ØÙ ref λx(x) Ò Ø Û ÖØÓ Ö Ù ÑÙ Ý ÔÐ ÓÛ Ò Þ A = {}º ÌÓ ÔÓÛÓ Ù ÔÖ ØÝÔÓÛ Ò let u = (r := λx (ref!x )) in (!r)() µ Û ÖÓ ÓÛ Ù ØÝÔÓÛ Ò Γ = {r : (α α) ref }º Ð ØÓ Ò Ø ÑÓ Ð Û ÔÓÒ Û ÞÑ ÒÒ ØÝÔÙ α Ò Ø ÙÒ Û Ö ÐÒ Û ÒØÝ ÓÛ Ò αµ Û ØÝÑ ÖÓ ÓÛ Ù ÔÓ Þ Ý Û Ò Ø Ò ÞÑ ÒÒ r Û µ Ñ Û Ö Ò ÑÔÐ ÓÛ Ò ØÝÔÝ Ñ ÒÓÛ (α ref α ref ) ref ÓÖ Þ (unit unit) ref µº ÈÓÛÝ ÞÝ ÔÖÞÝ Ø Û ÓÛ ØÝÑ ÔÓÖÞ Ù Ð Ñ ÑÝ Û Þ Ó ¹ ÒÐ ÑÝ Ô Ò ÞÔ Þ ØÛÓ Þ ØÝÑ Ý Ø Ñ Ñ ØÝÔ Û Ð ÞÝ Å ¹ÅÄ Ç ÔÓ¹ Û Þ Ð Ý Û ÓÖÑ ÐÒÝÑ ÓÛÓ Þ Û ÒÓ Ò Þ ÛÓ ÒÓ Ý Ø ÑÙ ØÝÔ Û Ò º ØÝÔ ÓÙÒ Ò µ Þ Ò ÓÛ Ò Ò Ð Þ ½½º Ý Ù ÓÛÓ Ò Ø Ò Ö ÞÙÐØ Ø Ò Ð Ý ÛÔ ÖÛ ÓÖÑÙ ÓÛ Ò ØÝÔÓÛ Ò Ð Ó ÐÒÝ ÓÒ ÙÖ M,s Ý Ø Ò s Ò Ø ÔÙ ØÝ Û ÛÞ ÔÓ Þ ØÝÔÓÛ Ò Ø ÙØÖÞÝÑ Ò ÔÖÞ Þ ÖÓ ØÖ ÒÞÝ Ð ÓÒ ÙÖ ÑÓ Ý ØÝÔÓÛ Ò ØÓ Ò ÑÓ ÔÓÞÛÓÐ Ò ØÖ ÒÞÝ ÔÖÞ ¹ µ Ó Ø ÒÙ FAILº Û Û Ò ØÖ ÒÞÝ Ó Ø Ó ÖÓ Þ Ù Ó ÖÞ ØÝÔÓÛ Ò ÓÒ ÙÖ Ò Ý Ò ÑÓ ÔÖÓÛ Þ Ó ÓÒ ÙÖ FAILº Æ Ñ ÑÝ Þ Ù Ý ÔÓ ÞÞ Ý Ø Ó ÓÛÓ Ù Û ØÝÑ Ý ÐÙ ÛÝ Û Ó Ó Ý Þ ÒØ Ö ÓÛ Ò Ó Ý ÑÝ Ó ÏÖ Ø ÐÐ Ò ½ À ÖÔ Ö ½ µ Þ ÔÖÞÝ Ý ÔÓ Ó ÒÝ Ö ÞÙÐØ Ø Û Ò Þ ÛÓ ÒÓ Ý Ø ÑÙ ØÝÔ Ûº  ÓÐÛ Ö Ù ØÝÔÓÛ Ò Ð ØÚµ ÖÞ ÞÝÛ ÔÓÞÛ Ð Ò Ó Ò Ò Þ ÛÓ ¹ ÒÓ Ý Ø ÑÙ ØÝÔ Û Ð ÔÓÐ ÑÓÖ ÞÒÝ Ö Ö Ò Û ÔÖÞÝ ÑÒ ØÛÝ ÔÓ ØÓ ¹ Ò Ò ÓÞÒ Þ ØÓ Ô ÛÒ ÛÝÖ Ò Ò Þ Û Ö Ö Ö Ò Ø Ö ØÝÔÓÛ Ò Û ÓÖÝ Ò ÐÒÝÑ Ý Ø Ñ ØÝÔ Û ÞÝ ÅÄ Û ØÝÔÓÛ Ò Û Ý Ø Ñ Þ Û ÖÙÒ ÓÛ Ö Ù Ð ØÚµº ÏÖ Ø ½ ÖÓÞ Þ Ý º¾ º µ ÔÖÞ Ò Ð ÞÓÛ Ø Ó ÓÒ Û Ò ÛÝ Þ Ò ÞÞ µ Ò Ø ØÓ Þ Û Û Ù ÝÛ Ò Ù ËØ Ò Ö ÓÛ Ó ÅÄ Û ÔÖ ¹ ØÝ º
40 ¼ ÈÇÄÁÅÇÊ Á Æ Ì È Ê Ê Æ ÂÁ Rysunek 50: Niezawodność systemu typów dla Midi-ML Dla dowolnego domkniętego wyrażenia M w języku Midi-ML, jeśli istnieje jakiś schemat typów σ dla którego M : σ jest udowadnialne w systemie typów z warunkowa reguła typowania dla let (aksjomaty i reguły na Slajdach 27 29, 44 i 49), to wtedy ewaluacja M nie prowadzi do błędu, t.j. nie istnieje sekwencja tranzycji w formie M, {}... FAIL dla systemu tranzycji zdefiniowanego na slajdach (gdzie {} oznacza stan pusty).
Þ Á Ö Ø ØÙÖÝ ÓÑÔÙØ ÖÓÛÝ À Ö Ö ÔÖÓØÓ Ó Û Ð Ù ØÛ Ò ÔÖÓ Ù ÔÖÓ ØÓÛ Ò Û Ô Þ ÒÝ ÓÑÔÙØ ÖÓ¹ ÛÝ ÔÖÞÝ ØÓ Þ Ó Ò ÓÒ ÔÓ Û Ñ Ö ÔÖÓ Ø ØÖÙ ØÙÖ ÐÓ ÞÒ º Ç Ø Ø ÞÒ Þ Ý ÓÛ ÒÓ ÓÑÔÙØ ÖÓÛ Þ ÞÓÖ Ò ÞÓ¹ ÊÝ ÙÒ ½ Ï Ö ØÛÓÛ ØÖÙ ØÙÖ
Ð ÓÖÝØÑÝ ØÖÙ ØÙÖÝ ÒÝ Ñ Ø Ö Ý ÛÝ ÓÛ ËØÙ Þ ÓÞÒ ÈÂÏËÌÃ Á ËÌÊÍÃÌÍÊ Æ À Ä ÇÊ ÌÅ ÁÁ Ñ Ø Ö Ý ÔÓÑÓÒ Þ µ Ï Ã ÈÖÓ Ð Ñ ÛÝ ÞÙ Ò ÈÓÐ Ó Â ÔÓ ÏÝ Þ ËÞ Ó Ì Ò ÃÓÑÔÙØ ÖÓ
Á ËÌÊÍÃÌÍÊ Æ À Ä ÇÊ ÌÅ ÁÁ Ñ Ø Ö Ý ÔÓÑÓÒ Þ µ Ï Ã ÈÖÓ Ð Ñ ÛÝ ÞÙ Ò ÈÓÐ Ó Â ÔÓ ÏÝ Þ ËÞ Ó Ì Ò ÃÓÑÔÙØ ÖÓÛÝ Ï Ö Þ Û Ð ØÓÔ ¾¼¼ Ð ØÓÔ ¾¼¼ ËÐ ½ È Û Ê Ñ Ð Ð ÓÖÝØÑ Û ÒÝ ÒÝ Ð ÓÖÝØÑ ØÙÖÒ Ð ÔÖÓ Ð ÑÙ ¾¹ Ó Ó Ó Û Ð Ó Ð
ÔÖÓ Ù ÔÖÓ Ù Þ Ø ÑÒ Ñ Ø Ö ÞÔÓð Ö Ò Ø ÞÔÓð Ö Ò Ý Ò Û Ó Þ ÝÛ Ò Å ÔÓ ÞÙ Û Ò Ø ÔÓð Ö Ò Ý Ò Û Ó Þ ÝÛ Ò Ò Ð µ ÔÓ ÞÙ Û Ò ÑÒ Ñ Ø Ö ÈÓ ÞÙ Û Ò Ó ÑÓ ÐÙ ÑÓ Þ ÑÝ ÔÓ
ÈÓð Ö Ò ÔÓ ÞÙ Û Ò ÑÒ Ñ Ø Ö ÔÓÑ ÖÝ ÔÖÓÑ Ò ÓÛ Ò Ó Ñ ÞÒ Ó Ø Ð Ø ÖÒ Þ Ø ØÖÓ ÞÝ ÔÖÓ º Ö º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ Á ÏÝ ÎÁÁ æ ÊÅÁ æ È Å Ä æ Å˹¾ ÔÖÓ Ù ÔÖÓ Ù Þ Ø ÑÒ Ñ Ø Ö ÞÔÓð Ö Ò Ø ÞÔÓð Ö Ò Ý Ò Û Ó
ØÖ Ò ÔÓÖØ Û ÖØÓ ÔÖÞ ÛÓ Ò ÐÙ ÔÖÞ ÒÓ Þ Ò Û ÖØÓ Ô Ò ÒÝ ÔÓÞ Ó Ö Ñ Ô Þ ÐÒ ºÓ ÒÓ Ø Ó Ð Þ Ò ÓÛ ÔÖÞÝ Ø Ó Ó Ö Ð Ò Ð Ñ ØÙ ÔÖÞ ÓÛÝÛ ¹ ÒÝ ÐÙ ØÖ Ò ÔÓÖØÓÛ ÒÝ Û ÖØÓ
ÁÒ ØÖÙ Ó ÔÓ Ö ÓÛ ½ ¹¼ ¹¾¼¼ ½ ÈÓ Ø ÒÓÛ Ò Ó ÐÒ ï½ ÁÒ ØÖÙ Ó Ö Ð Þ Ý Ó ÖÓÒÝ Û ÖØÓ Ô Ò ÒÝ ÔÖÓÛ Þ Ò Ó ÔÓ Ö ÓØ Û Û Ù Ó ÙÑ ÒØÓÛ Ò ÓÔ Ö ÓÛÝ ÈÖÞ Þ Ù ÝØ Û Ò ØÖÙ Ó Ö Ð Ò ÖÓÞÙÑ Ô Þ ÐÒ Ô Þ ÐÒ Ñ Þ Ò ÓÛ È ÓØÖÓÛÓ Þ ÖÞ
Ï ØÔ ÈÖÞÝ Ý Ç ÐÒ Û ÒÓ Ó Þ Ò À Ð ¹ÈÓ Ø ÓÒ Ð Ø ÖÑ Ò Ý Ó ÁÒ Ò Ø Ñ ÖÝ ÃÓÔÞÝ Ï Ö Û ÍÒ Ú Ö ØÝ Û ØÒ ¾¼¼ ÖÝ ÃÓÔÞÝ À Ð ¹ÈÓ Ø ÓÒ Ð Ø ÖÑ Ò Ý Ó ÁÒ Ò Ø Ñ ½» ¼
Ï Ö Û ÍÒ Ú Ö ØÝ Û ØÒ ¾¼¼ ½» ¼ ÔÖÞÝ Ö Þ ÛÝÔ Ø Ö Ò Ö Ò Ó ÞÓÒÝ Ò ØÖ Ø ÔÓÞÝÝ ÒÝ Ò ¹ÔÓÞÝÝ ÒÝ Ò Ò ÛÝÒ ¹ ¹ ¾¼ ÑÝ ¹½ ¹½ ¹¾ ½¼ ¹¾ ¹½ ¹¾ ÓÒ ¹½ ¹ ¾» ¼ ÔÖÞÝ Ö Ô ÖÞÝ ØÓ Ö Ò Ó ÞÓÒÝ Ò ØÖ Ø ÔÓÞÝÝ ÒÝ Ò ¹ÔÓÞÝÝ ÒÝ Ò Ò ÛÝÒ
½ ÏÝ Ï Þ ð Û Ø ÛÓÐÙ Þ Ø Ð Ñ ÒØ ÖÒÝ Ï Þ ð Û Ø ÔÖÓ º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ ÞÝ Óð Û Þ ÐÒ ÁÒ ØÝØÙØ Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ ½ ÛÓÐÙ Ï Þ ð Û Ø ¾ Ñ ¾¼½ æ
½ ÏÝ Ï Þ ð Û Ø ÛÓÐÙ Þ Ø Ð Ñ ÒØ ÖÒÝ Ï Þ ð Û Ø ÔÖÓ º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ ÞÝ Óð Û Þ ÐÒ ÁÒ ØÝØÙØ Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ ½ ÛÓÐÙ Ï Þ ð Û Ø ¾ Ñ ¾¼½ æ Ôº½»¾ Ï Þ ð Û Ø ÛÓÐÙ Ï Þ ð Û Ø ÏÔÖÓÛ Þ Ò Ö Û Ø Ç ÐÒ
ÔÖÓ Ù ÔÖÓ Ù Þ Ø ÑÒ Ñ Ø Ö ÞÔÓð Ö Ò Ø ÞÔÓð Ö Ò Ý Ò Û Ó Þ ÝÛ Ò Å ÔÓ ÞÙ Û Ò Ø ÔÓð Ö Ò Ý Ò Û Ó Þ ÝÛ Ò Ò Ð µ ÔÓ ÞÙ Û Ò ÑÒ Ñ Ø Ö ÈÓ ÞÙ Û Ò Ó ÑÓ ÐÙ ÑÓ Þ ÑÝ ÔÓ
ÈÓð Ö Ò ÔÓ ÞÙ Û Ò ÑÒ Ñ Ø Ö ÔÓÑ ÖÝ ÔÖÓÑ Ò ÓÛ Ò Ó Ñ ÞÒ Ó Ø Ð Ø ÖÒ Þ Ø ØÖÓ ÞÝ ÔÖÓ º Ö º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ Á ÏÝ ÎÁÁ æ ÊÅÁ æ È Å Ä æ Å˹¾ ÔÖÓ Ù ÔÖÓ Ù Þ Ø ÑÒ Ñ Ø Ö ÞÔÓð Ö Ò Ø ÞÔÓð Ö Ò Ý Ò Û Ó
Ð ÓÖÝØÑÝ ØÖÙ ØÙÖÝ ÒÝ Ñ Ø Ö Ý ÛÝ ÓÛ ËØÙ Þ ÓÞÒ ÈÂÏËÌÃ Á ËÌÊÍÃÌÍÊ Æ À Ä ÇÊ ÌÅ ÁÁÁ Ñ Ø Ö Ý ÔÓÑÓÒ Þ µ Ï Ã ÈÖÓ Ð Ñ ÓÖØÓÛ Ò ÈÓÐ Ó Â ÔÓ ÏÝ Þ ËÞ Ó Ì Ò ÃÓÑÔÙØ Ö
Á ËÌÊÍÃÌÍÊ Æ À Ä ÇÊ ÌÅ ÁÁÁ Ñ Ø Ö Ý ÔÓÑÓÒ Þ µ Ï Ã ÈÖÓ Ð Ñ ÓÖØÓÛ Ò ÈÓÐ Ó Â ÔÓ ÏÝ Þ ËÞ Ó Ì Ò ÃÓÑÔÙØ ÖÓÛÝ Ï Ö Þ Û ½¼ Ð ØÓÔ ¾¼¼ ½¼ Ð ØÓÔ ¾¼¼ ËÐ ½ È Û Ê Ñ Ð Ð ÓÖÝØÑ ÓÖØÓÛ Ò ÔÖÞ Þ Ð Ð ÓÖÝØÑ ÓÖØÓÛ Ò ÔÖÞ Þ Û Ø
ÛÙÛÝÑ ÖÓÛÝ ÔÖ Ò ÂÓ ÒÒ ÀÓÖ ÂÓ ÒÒ ÀÓÖ ÛÙÛÝÑ ÖÓÛÝ ÔÖ Ò
½º Ò ¾º ÈÖÞÝ º Ï ÒÓ Ð ÓÖÝØÑÙ Þ ÒÓ Ù Ý Ó ÛÖ ÐÒ ÔÖÞ ÔÐ Ø Ò Ù ÐÒÓ µ º Ê Ó¹ Ð Û ÐÐ Þ º ÈÖ Ò Ð ÓÖÝØÑ Å º ÏÔÖÓÛ Þ Ò Ó Û ÐÓÛÝÑ ÖÓÛ Ó ÔÖ Ò Ò Ù Ý Ó Ò ÖÓÛ Ò Þ Û ØÓÖ ÐÓ ÓÛ Ó (, ) Ó ÔÓÛ Ò ÔÖ Ý ( ½, ½ ),( ¾, ¾ ),...
Þ Á Í Ù ÞÓÖ ÒØÓÛ Ò ÔÓ Þ Ò ÓÛÓ Ù Ù ÞÔÓ Þ Ò ÓÛ Ï Ö ØÛÝ ÑÓ Ó ÖÓÛ Û Ö ØÛÓÑ Ð ÝÑ Ó Ò ÔÓÞ ÓÑ ÛÝ Ù Ù ÞÔÓ Þ Ò ÓÛ Ù Ù ÛÝÑ ÔÓ Þ Ò º Ï Ù Ù ÓÛÝ ÞÓÖ ÒØÓÛ ÒÝ ÔÓ Þ Ò ÓÛÓ Ù ÝØ ÓÛÒ Ù Ù Ò Ô ÖÛ Ù Ø Ð ÔÓ Þ Ò ÔÓØ Ñ ÔÓ Þ Ò
ÁÒ ØÝØÙØ ÈÓ Ø Û ÁÒ ÓÖÑ ØÝ ÈÓÐ Ñ Æ Ù Ì ÑÔÓÖ ÐÒ Ô ØÝ ÔÐÓÖ ÒÝ Ñ ØÓ Ý Þ ÓÖ Û ÔÖÞÝ Ð ÓÒÝ ÊÇ ÈÊ Ï ÇÃÌÇÊËÃ ÙØÓÖ Ñ Ö È ÓØÖ ËÝÒ ÈÖÓÑÓØÓÖ ÈÖÓ º Ö º Ò º Ò ÖÞ Ë ÓÛÖÓÒ Ï Ö Þ Û ¾¼¼ Öº ËÔ ØÖ ½ Ï ØÔ ½º½ ÏÔÖÓÛ Þ Ò º º
f (n) lim n g (n) = a, f g
Á ËÌÊÍÃÌÍÊ Æ À Ä ÇÊ ÌÅ Á Ñ Ø Ö Ý ÔÓÑÓÒ Þ µ Ï Ã Ï ØÔ ÈÓÐ Ó Â ÔÓ ÏÝ Þ ËÞ Ó Ì Ò ÃÓÑÔÙØ ÖÓÛÝ Ï Ö Þ Û ½¾ Ô õ Þ ÖÒ ¾¼¼ ½¾ Ô õ Þ ÖÒ ¾¼¼ ËÐ ½ È Û Ê Ñ Ð ÛÝ Ù ÈÐ Ò ÒÓØ ÝÑÔØÓØÝÞÒ ÔÓ Ð ÓÖÝØÑÙ Ó ÞØ Ð ÓÖÝØÑÙ Þ Ó ÓÒÓ
ÈÐ Ò ÛÝ Ø Ô Ò ½ ¾ ÃÐ ÝÞÒ Ó Ð Þ Ò ÓÛ ÞØÙÞÒ ÒØ Ð Ò ÅÓ Ð Ó Ð Þ Ò ÓÛ ÞØÙÞÒ ÒØ Ð Ò Ë Ò ÙÖÓÒÓÛ ÏÒ Ó ÓÛ Ò Þ ÐÓ ÖÓÞÑÝØ Ð ÓÖÝØÑÝ ÛÓÐÙÝ Ò ÊÓÞÛ Þ Ò Ý ÖÝ ÓÛ ÝÒ Ñ
Ç Ð Þ Ò ÓÛ ÞØÙÞÒ ÒØ Ð Ò Â ÖÓ Û Ö ÈÓÐ Ø Ò Ï Ö Þ Û ÁÒ ØÝØÙØ ËÝ Ø Ñ Û Ð ØÖÓÒ ÞÒÝ Ï ÌÁ ÈÐ Ò ÛÝ Ø Ô Ò ½ ¾ ÃÐ ÝÞÒ Ó Ð Þ Ò ÓÛ ÞØÙÞÒ ÒØ Ð Ò ÅÓ Ð Ó Ð Þ Ò ÓÛ ÞØÙÞÒ ÒØ Ð Ò Ë Ò ÙÖÓÒÓÛ ÏÒ Ó ÓÛ Ò Þ ÐÓ ÖÓÞÑÝØ Ð ÓÖÝØÑÝ
ÈÖÞ ØÛ ÖÞ Ò Ø ØÙ Û ÈÓÛØ ÖÞ Ò áö Ò Óµ Þ Û Ò ÓÛ Ò Èʵ ÏÝ ¹ ÔÖÞ ØÛ ÖÞ Ò Ø ØÙ ÊÓ ÖØ ÆÓÛ ¾¼¼ áö Ò Óµ Þ Û Ò ÓÛ Ò Èʵ ½»
ÏÝ ¹ ÔÖÞ ØÛ ÖÞ Ò Ø ØÙ ÊÓ ÖØ ÆÓÛ ¾¼¼ ½» È Ò ÛÝ Ù Ó ÞÑ ÓÓ Ø Ö Ü ÓÓ Ø ÜÔÖ Ú ÓÓ Ø Ô Ö Ø ÈÖÞÝ ÓÛ Þ Ò Ò ÓÓ Û ÙÑ ¾» ÈÖÞ ØÛ ÖÞ Ò Ø ØÙ Û» ÔÖÞ ØÛ ÖÞ Ò Ø ØÙ ÙÒ ÓÒÛ ÖØÙ Þ ³ ÍØÛÓÖÞ Ò Þ Ý Ò ÔÓ Ø Û Ò Ô Ù ÒÙ Ø ÒØ ØÓ ½¾
ÍÒ Û Ö ÝØ Ø Ï Ö Þ Û ÏÝ Þ Å Ø Ñ ØÝ ÁÒ ÓÖÑ ØÝ Å Ò ËÔ Ý Û õò ÓÛÝ ØÖÙ ØÙÖ ÒÝ ÈÖ Ó ØÓÖ µ Å Ö Ò ÃÙ ÈÖÓÑÓØÓÖ ÔÖÓ º Ö º Â Ò Å Ý ½ ØÝÞÒ ¾¼¼¼
ÍÒ Û Ö ÝØ Ø Ï Ö Þ Û ÏÝ Þ Å Ø Ñ ØÝ ÁÒ ÓÖÑ ØÝ Å Ò ËÔ Ý Û õò ÓÛÝ ØÖÙ ØÙÖ ÒÝ ÈÖ Ó ØÓÖ µ Å Ö Ò ÃÙ ÈÖÓÑÓØÓÖ ÔÖÓ º Ö º Â Ò Å Ý ½ ØÝÞÒ ¾¼¼¼ ËÔ ØÖ ½ Ï ØÔ ½º½ Ì Þ ÔÖ Ý º º º º º º º º º º º º º º º º º º º º º
ÈÓÔÖ ÛÒ ÛÝ ÓÖÞÝ Ø Ò ÏÞÓÖ ÔÖÓ ØÓÛ áö Ò ÓµÞ Û Ò ÓÛ Ò ÔÖÓ Ö ÑÓÛ Ò Û ÏÝ ¾ ¹ Ø Ó ÛÞÓÖ ÔÖÓ ØÓÛ ÊÓ ÖØ ÆÓÛ ¾¼¼ áö Ò ÓµÞ Û Ò ÓÛ Ò ÔÖÓ Ö ÑÓÛ Ò Û ½»
ÏÝ ¾ ¹ Ø Ó ÛÞÓÖ ÔÖÓ ØÓÛ ÊÓ ÖØ ÆÓÛ ¾¼¼ ½» ÈÒ ÛÝ Ù ÔÓ Ø ÛÓÛ ÔÓ Û ÔÓÛØ ÖÞ Ò µ Ø Ó ÞÝÞÒ Ó ÞÒ ÔÓÛØ ÖÞ Ò µ Ö Þ Þ Þ Ò ÔÓÛØ ÖÞ Ò µ ÛÞÓÖ ÔÖÓ ØÓÛ Ò ØÓÒ ÔÖÓØÓØÝÔ ¾» Ö Ò Ö ¹ Ý Ò Þ Ô ÛÒ Ò ÞÛ Ó ÒÓ Ó Þ Ó ÜØ ÖÒ ÒØ Ü»»
ÃÓÑÔ Ð ØÖÓÒ ÞÒÝ ÈÓ ÖÞÒ ½º¼ ÏÝ Ò ÖÓÛ ÒÓ ÔÖÞ Þ ÓÜÝ Ò ½º º Ï ÂÙÒ ½½ ¼ ¾¼¼ ËÔ ØÖ ½ ÃÓÑÔ Ð ØÖÓÒ ÞÒÝ ½ ½º½ ÇÔ ÔÖÓ ØÙ º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º ½ ½º¾ Ð Ñ ÒØÝ
ÈÖ ÔÖÞ Ð Ñ Ó Ó ÒÝ Ø ÈÓ Ô ÙØÓÖ ÔÖ Ý ÈÖ Ø ÓØÓÛ Ó Ó ÒÝ ÔÖÞ Þ Ö ÒÞ ÒØ Ø ÈÓ Ô ÖÙ Ó ÔÖ
ÍÒ Û Ö ÝØ Ø Ï Ö Þ Û ÏÝ Þ Ð Å Ø Ñ ØÝ ÁÒ ÓÖÑ ØÝ Å Ò È Û Ð Å Ð ÒÞÙ ÆÖ Ð ÙÑÙ ½ ½ Ò Ð Þ ÑÔÐ Ñ ÒØ Ð Ò ÛÝ ÞÝ ÓÛ ÙÒ Ý ÒÝ ÈÖ Ñ Ø Ö Ò ÖÙÒ Ù ÁÆ ÇÊÅ Ì Ã ÈÖ ÛÝ ÓÒ Ò ÔÓ ÖÙÒ Ñ Ö Ð Ó Ë Ù ÖØ ÁÒ ØÝØÙØ ÁÒ ÓÖÑ ØÝ Ð ÄÓ ËØÓ
Þ ÑÒ ÑÒ Ñ Ø Ö Ö Å ØØ Ö ¹ ŵ ÓÐ À Å Ñ Å Þ Å Ñ Å Å Å ÛÓÐÙ Ï Þ ð Û Ø Ç Ò ÔÓÛ Þ Ò ÙÞÒ ÒÝÑ ÑÓ Ð Ñ ÛÓÐÙ Ï Þ ð Û Ø Ø ØÞÛº ÑÓ Ð Åº ÓÒ Ï Þ ð Û Ø ÛÝÔ Ò ãþûý ä Ñ
Þ Ø ØÖÓ ÞÝ ÔÖÓ º Ö º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ Á ÏÝ ÁÎ ÑÒ Ñ Ø Ö Û Ï Þ ð Û È ÖÛÓØÒ ÆÙ Ð Ó ÝÒØ Þ ÊÓØ Ð ØÝ ÓÖÑÓÛ Ò ØÖÙ ØÙÖ Ç Ð ÙÔ ÖÒÓÛ ÖÓÑ ÈÓ ÙÐÐ Ø ÐÙ Ø Öµ Þ ÑÒ ÑÒ Ñ Ø Ö Ö Å ØØ Ö ¹ ŵ ÓÐ À Å Ñ Å Þ
Ð ÓÖÝØÑÝ ØÖÙ ØÙÖÝ ÒÝ Ñ Ø Ö Ý ÛÝ ÓÛ ËØÙ Þ ÓÞÒ ÈÂÏËÌÃ Á ËÌÊÍÃÌÍÊ Æ À Ä ÇÊ ÌÅ ÁÎ Ñ Ø Ö Ý ÔÓÑÓÒ Þ µ Ï Ã ÒÝ ËØÖÙ ØÙÖÝ ÓÛÒ Ð ØÝ ÈÓÐ Ó Â ÔÓ ÏÝ Þ ËÞ Ó Ì Ò ÃÓÑ
Á ËÌÊÍÃÌÍÊ Æ À Ä ÇÊ ÌÅ ÁÎ Ñ Ø Ö Ý ÔÓÑÓÒ Þ µ Ï Ã ÒÝ ËØÖÙ ØÙÖÝ ÓÛÒ Ð ØÝ ÈÓÐ Ó Â ÔÓ ÏÝ Þ ËÞ Ó Ì Ò ÃÓÑÔÙØ ÖÓÛÝ Ï Ö Þ Û ¾ Ð ØÓÔ ¾¼¼ ¾ Ð ØÓÔ ¾¼¼ ËÐ ½ È Û Ê Ñ Ð ÓÔ Ö Ò Ð Ø Ð ÓÖÝØÑ Ë ÔÖÞ Ó Þ Ò Ö Ù Ð ÓÖÝØÑ Ë ÔÖÞ
ÈÖ ÔÖÞ Ñ Ó Ó ÒÝ Ø ÈÓ Ô ÙØÓÖ ÔÖ Ý ÈÖ Ø ÓØÓÛ Ó Ó ÒÝ ÔÖÞ Þ Ö ÒÞ ÒØ Ø ÈÓ Ô ÖÙ Ó ÔÖ
ÍÒ Û Ö ÝØ Ø Ï Ö Þ Û ÏÝ Þ Å Ø Ñ ØÝ ÁÒ ÓÖÑ ØÝ Å Ò Ñ Ã ÙÒ ÆÖ ÙÑÙ ½ ½ Ê ØÓÖÝÞ ÔÖÓ Ö Ñ Û Û ÞÝ Ù Â Ú ÈÖ Ñ Ø Ö Ò ÖÙÒ Ù ÁÆ ÇÊÅ Ì Ã ÈÖ ÛÝ ÓÒ Ò ÔÓ ÖÙÒ Ñ Ö Â Ò ÒÝ Å Ò Ö Þ Û Þ ÁÒ ØÝØÙØ ÁÒ ÓÖÑ ØÝ Ä Ô ¾¼¼½ ÈÖ ÔÖÞ Ñ
Þ ÈÖ ÛÓ ÀÙ Ð ÈÖÞ ÙÒ Ù Þ ÖÛ Ò Â ð Ð ðþö Ó ð Û Ø Ó Ð Ó Ä Ò Û Ð Û Û Ñ Û Þ Ö ÈÃË ½¾ ¾ ¼ ½ Ó ÖÛ ØÓÖ Ò Ø ÔÙ ÛÝ Ù Þ Ò Ð ½ ½ ¼ ½ Þµ ÔÖÞ ÙÒ Ù Þ ÖÛ Ò Ò º ãö Øäµ
Þ Ø ØÖÓ ÞÝ ÔÖÓ º Ö º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ Á ÏÝ ÁÁÁ Ï Ð ÏÝ Ù ÛÓÐÙ Ï Þ ð Û Ø ÈÖÓÑ Ò ÓÛ Ò Ø ÈÓÑ ÖÝ Ù ØÙ Å Þ ÈÖ ÛÓ ÀÙ Ð ÈÖÞ ÙÒ Ù Þ ÖÛ Ò Â ð Ð ðþö Ó ð Û Ø Ó Ð Ó Ä Ò Û Ð Û Û Ñ Û Þ Ö ÈÃË ½¾ ¾ ¼ ½
ËÞ ÐÓÒÝ ¹ ÔÓÛØ ÖÞ Ò ÈÖÓ Ð ÑÝ ÔÖÞÝ ØÓ ÓÛ Ò Ù Þ ÐÓÒ Û áö Ò Ó Þ Û Ò ÓÛ Ò ÔÖÓ Ö ÑÓÛ Ò Û Èʵ ÏÝ ½¼ ¹ Þ ÐÓÒÝ ÊÓ ÖØ ÆÓÛ ¾¼¼ áö Ò Ó Þ Û Ò ÓÛ Ò ÔÖÓ Ö ÑÓÛ Ò Û È
áö Ò Ó Þ Û Ò ÓÛ Ò ÔÖÓ Ö ÑÓÛ Ò Û Èʵ ÏÝ ½¼ ¹ Þ ÓÒÝ ÊÓ ÖØ ÆÓÛ ¾¼¼ ½» ÃÓ ÓÖÝØÑÝ ÈÓ Ò Þ Ò Ó ØÝÔÙ Ó ÒÔº ØÝµ ÓÖÝØÑÝ ÒÔº ÞÒ ÓÛ Ò Ò Û Þ Ó Ñ ÒØÙµ Å Ò ÞÑÝ Ñ ÒÙ Ö ÙÒ Ò Ó Ùº Û Ô Ò ÞÓÛ ÛÝ ÓÖÞÝ Ø Ò Þ ÓÒ Û ¾» à ÞÓÛ ÒÙ
Ð Ö Û Ø Ý Ò Û Ö ÞÓ Ò Û Ð Ñ ØÓÔÒ Ù ÔÓ Ð ÓÖ Û Ñ Ø Ö Â Ò Ð Ø Ó ÛÝ ÖÝ Ø Ø ØÖÙ Ò µ Ð Ö Û Ø Ý Ò Ï ÒÓð Ð Ö Û Ø Ý Ò Þ ÓÛÙ ÔÓ Ó Ò Ð Ð ØÖÓÑ Ò ØÝÞÒ ÔÓÖÙ Þ Þ Ø Ñ
Þ Ø ØÖÓ ÞÝ ÔÖÓ º Ö º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ Á ÏÝ ÁÎ ÈÓ ÞÙ Û Ò Ð Ö Û Ø Ý ÒÝ Ï½ ¼ ½ ÓÐ Ò ÔÖÞÝÔ È Ö Ô ØÝÛÝ ðò Ð Ö Û Ø Ý Ò Û Ö ÞÓ Ò Û Ð Ñ ØÓÔÒ Ù ÔÓ Ð ÓÖ Û Ñ Ø Ö Â Ò Ð Ø Ó ÛÝ ÖÝ Ø Ø ØÖÙ Ò µ Ð Ö Û
ÈÖÓÑ Ò ÓÛ Ò Ó Ñ ÞÒ Ï Ð Ô ØÑÓ ÖÝÞÒ º º ÖÒ ÏÝ ½
Þ Ø ØÖÓ ÞÝ ÔÖÓ º Ö º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ Á ÏÝ Ô ÖÝÑ ÒØ Í Ê ÈÖÓ Ø Â Å¹ ÍËÇ Ê ÓÛ Ø Ô Û ØÑÓ ÖÝÞÒÝ ÈÖÓÑ Ò ÓÛ Ò Ó Ñ ÞÒ Ï Ð Ô ØÑÓ ÖÝÞÒ º º ÖÒ ÏÝ ½ ÔÖÓÑ Ò ÓÛ Ò Þ Ö Ò ÓÛ ÔÖÞ Þ Ð ØÖÓÒÝ Û Ö Þ Ò Ù ÔÖÓ
Reguly. Wind = Weak Temp > 20 Outlook Rain PlayTennis = Y es
ËÞØÙÞÒ ÁÒØ Ð Ò ËÝ Ø ÑÝ ÓÖ Þ ½ Ï ÖÙÒ Ð ØÓÖ Û Ý Ð ØÓÖ Ö ÔÖ Þ ÒØÙ Ø Ø Û ÖØÓ ÃÓÒ ÙÒ ØÖÝ ÙØÙ Û ÖÙÒ Ó ÔÓÛ Ó ØÓÑ Ô Ò ÝÑ ÔÓ ÝÒÞ Ó Ð ØÓÖÝ Û ÞÝ Ø ÝÞ Ö Ù ÞÛ Þ Ò Ø Þ Ò ÝÞ Ã Reguly ÔÖÞÝÔ ÝÛ Ò Ó ØÓÑ Ô Ò ÝÑ Û ÖÙÒ Ö Ù
ËÔ ØÖ ½ Ð Þ Ö ÔÖ Ý ¾ ËÝ Ø ÑÝ ÔÐ Û Ý Ø ÑÝ ÓÔ Ö Ý Ò ¾º½ ÊÓÐ Ý Ø Ñ Û ÔÐ Û º º º º º º º º º º º º º º º º º º º º º º ¾º¾ Ê ÒÓÖÓ ÒÓ Ý Ø Ñ Û ÔÐ Û º º º º
ÊÓÞÛ ÑÔÐ Ñ ÒØ Ý Ø Ñ Û ÔÐ Û ÈÓÐ Ø Ò áð ÙØÓÖ Ò ÖÞ Ö ÞÓÛ ÈÖÓÑÓØÓÖ ÔÖÓ º Ö º Ò º Ò ÖÞ ÖÞÝÛ ÃÓÒ ÙÐØ ÒØ Ñ Ö Ò º È ÓØÖ Ã ÔÖÞÝ Ð ØÓÔ ¾¼¼½ ÖÓ Ù ËÔ ØÖ ½ Ð Þ Ö ÔÖ Ý ¾ ËÝ Ø ÑÝ ÔÐ Û Ý Ø ÑÝ ÓÔ Ö Ý Ò ¾º½ ÊÓÐ Ý Ø Ñ Û
ÃÓÒØ Ò ÖÝ Þ ÓÓ Ø ÓÓ Ø Ö Ô Ä Ö ÖÝ ÈÓÛØ ÖÞ Ò áö Ò Ó Þ Û Ò ÓÛ Ò ÔÖÓ Ö ÑÓÛ Ò Û Èʵ ÏÝ ½¾ ¹ ÓÒØ Ò ÖÝ Þ ÓÓ Ø ÊÓ ÖØ ÆÓÛ ¾¼¼ áö Ò Ó Þ Û Ò ÓÛ Ò ÔÖÓ Ö ÑÓÛ Ò Û È
áö Ò Ó Þ Û Ò ÓÛ Ò ÔÖÓ Ö ÑÓÛ Ò Û Èʵ ÏÝ ½¾ ¹ ÓÒØ Ò ÖÝ Þ ÓÓ Ø ÊÓ ÖØ ÆÓÛ ¾¼¼ ½» ½ ËÌÄ ¹ Ø Ò Ö ÓÛ Ð ÓØ Þ ÐÓÒ Û ÓÒØ Ò ÖÝ Ø Ö ØÓÖÝ Ð ÓÖÝØÑÝ ÙÒ ØÓÖÝ Ó º ÙÒ Ý Ò µ ÔØ ÖÝ ÌÛÓÖÞ Ò ÙÒ ØÓÖ Û ÖÞÒ Ò ÔÓ Ø Û ØÒ Ý ÙÒ Ñ
ØÓ ÔÖ Ù Ð ØÖÝÞÒ Ó ÈÖ Ó ÙÒÓ Þ Ò Ó Ò ÓÖ ØÓ ÔÖ Ù Ø Û ØÓÖ Ñ Ø Ö Ó ÖÙÒ ÛÝÞÒ Þ ØÝÞÒ Ó ØÓÖÙ ÔÓÖÙ Þ Ó ÙÒ Ù Ó ØÒ Óº ÛÖÓØ Û ØÓÖ Ó Ö Ð ÙÑÓÛÒ Ó ÖÙÒ ÖÙ Ù ÙÒ Ù Ó ØÒ
ÈÖ Ð ØÖÝÞÒÝ ÈÓÐ Ñ Ò ØÝÞÒ ½¼»½ Ò ÖÞ Ã Ô ÒÓÛ ØØÔ»»Ù Ö ºÙ º ÙºÔл Ù Ô ÒÓ» ÁÒ ØÝØÙØ ÞÝ ÍÒ Û Ö ÝØ Ø Â ÐÐÓ ÃÖ Û ¾¼½ ÈÖ Ð ØÖÝÞÒÝ Ø ØÓ ÙÔÓÖÞ ÓÛ ÒÝ ÖÙ ÙÒ Û Ð ØÖÝÞÒÝ º ÊÙ ÙÒ Û ÑÓ Ñ Ñ Û ÔÖÞ ÛÓ Ò Û Ô ÛÒÝ Û ÖÙÒ Ö ÛÒ
Ñ ÒÒ Û È ÖÐÙ Ñ ÒÒ ÌÝÔ Ò ÈÖÞÝ Ò Þ Ò Ë Ð Ö Ð ÈÓ ÝÒÞ Û ÖØÓ Ð Þ ÐÙ Ò Ô µ Ì Ð Ø Ð Ä Ø Û ÖØÓ Ò ÓÛ Ò Ð Þ Ñ À Þ ± ±Þ ÓÖ ÖÙÔ Û ÖØÓ Ò ÓÛ Ò Ò Ô Ñ ÈÖÓ ÙÖ ² ²ÞÖÓ Ö
È ÊÄ ¹ ÞÝ Ó Ô Ò È ÖÐ ØÓ Ö Ò Ø ÙÑ Þݺ Ð ØÝ Ø ÖÞÝ Ó Þ Ð Û ÐÙ È ÖÐ Ø ÈÖ ØÝÞÒÝÑ ÂÞÝ Ñ Ó ÏÝ Û Ê ÔÓÖØ Û Ò º ÈÖ Ø Ð ÜØÖ Ø ÓÒ Ò Ê ÔÓÖØ Ä Ò Ù µº Â Ò Ð ÔÖ Û Þ ÛÝ Ñ Ó Ò Û È ÖÐ ØÓ È ØÓÐÓ ÞÒ Ð ØÝÞÒ ÊÓ Ø Ä Ò Û ØÝÞÒ
ÏÝ Ö Ò ÖÙÒ Û ÛÓÐÙ Ö Ò ÓÛ Â ÖÓ Û Ö ÈÓÐ Ø Ò Ï Ö Þ Û ÁÒ ØÝØÙØ ËÝ Ø Ñ Û Ð ØÖÓÒ ÞÒÝ ¹Ñ Ð Ö Ð ºÔÛº ÙºÔÐ Ñ Ò Ö ÙÑ Ù ÁÒØ Ð ÒØÒÝ ËÝ Ø Ñ Û Ï ÔÓÑ Ò ÝÞ ÈÓÐ Ø Ò ÈÓ
ÏÝ Ö Ò ÖÙÒ Û ÛÓÐÙ Ö Ò ÓÛ Â ÖÓ Û Ö ÈÓÐ Ø Ò Ï Ö Þ Û ÁÒ ØÝØÙØ ËÝ Ø Ñ Û Ð ØÖÓÒ ÞÒÝ ¹Ñ Ð Ö Ð ºÔÛº ÙºÔÐ Ñ Ò Ö ÙÑ Ù ÁÒØ Ð ÒØÒÝ ËÝ Ø Ñ Û Ï ÔÓÑ Ò ÝÞ ÈÓÐ Ø Ò ÈÓÞÒ ¾ º½½º¾¼½¼ ÈÐ Ò ÔÖ Þ ÒØ ½ ¾ Ð ÓÖÝØÑ ÛÓÐÙÝ ÒÝ Ó ÖÓÞ
LVI Olimpiada Fizyczna zawody III stopnia
LV Olimpiada Fizyczna zawody stopnia Zadanie 1 Piłka uderza w poziomą podłogę pod kątem α z prędkością v 0. Współczynnik tarcia piłki o podłogę jest równy µ. W jakiej odległości od miejsca pierwszego uderzenia
System ALVINN. 30 Output. Units. 4 Hidden. Units. 30x32 Sensor Input Retina. Straight Ahead. Sharp Right. Sharp Left
ËÞØÙÞÒ ÁÒØ Ð Ò ËÝ Ø ÑÝ ÓÖ Þ ½ System ALVINN ÄÎÁÆÆ ÔÖÓÛ Þ ÑÓ ÔÓ ÙØÓ ØÖ Þ Þ ÞÝ Ó ¼ Ñ Ð Ò Ó Þ Ò Sharp Left Straight Ahead Sharp Right 30 Output Units 4 Hidden Units 30x32 Sensor Input Retina ¾ www.wisewire.com,
pomiary teoria #pomiarow N
ÞÝ Á Å Ò ÔÖÓ º Ö º Ð Ò Ö Ð Ô ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ Á ÏÝ Á Ã Ò Ñ ØÝ ÈÓÑ ÖÝ ÞÝÞÒ Ù ÒÓ Ø ËÁ Ý ÔÓÑ ÖÓÛ Ã Ò Ñ ØÝ ÔÓ ÔÓ Ø ÛÓÛ µ ÔÙÒ Ø Ñ Ø Ö ÐÒÝ Ù Ó Ò Ò Ù Û Ô ÖÞ ÒÝ µ ØÓÖ ÔÖ Óð ð ÔÖÞÝ Ô Þ Ò ÊÙ ÒÓ Ø ÒÝ
Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ Ï Ô Þ Ò Ô ÖÝÑ ÒØÝ ¾ Ñ Ö ¾¼½ Ï Þ ð Û Ø µæ Ôº¾»
ÏÝ Ô ÖÝÑ ÒØÝ Ï Ô Þ Ò Þ Ø Ð Ñ ÒØ ÖÒÝ Ï Þ ð Û Ø ÔÖÓ º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ ÁÒ ØÝØÙØ ÞÝ Óð Û Þ ÐÒ Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ Ï Ô Þ Ò Ô ÖÝÑ ÒØÝ ¾ Ñ Ö ¾¼½ æ Ôº½» Ï Þ ð Û Ø Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ Ï Ô Þ Ò Ô ÖÝÑ
ÏÝ Ô ÖÝÑ ÒØÝ Ï Ô Þ Ò Þ Ø Ð Ñ ÒØ ÖÒÝ Ï Þ ð Û Ø ÔÖÓ º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ ÁÒ ØÝØÙØ ÞÝ Óð Û Þ ÐÒ Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ Ï Ô Þ Ò Ô ÖÝÑ ÒØÝ ¾ Ñ Ö ¾
ÏÝ Ô ÖÝÑ ÒØÝ Ï Ô Þ Ò Þ Ø Ð Ñ ÒØ ÖÒÝ Ï Þ ð Û Ø ÔÖÓ º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ ÁÒ ØÝØÙØ ÞÝ Óð Û Þ ÐÒ Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ ¾ Ñ Ö ¾¼½ æ Ôº½» Ï Þ ð Û Ø Þ ð ãû Þ ÑÝä Ó Þ ÝÛ Ò Þ Ø Â Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ ¾ Ñ
Þ ð ãû Þ ÑÝä Ó Þ ÝÛ Ò Þ Ø Â Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ Ï Ô Þ Ò Ô ÖÝÑ ÒØÝ ½ Ð ØÓÔ ¾¼½ Ï Þ ð Û Ø µæ Ôº¾»
Þ Ø Ð Ñ ÒØ ÖÒÝ Ï Þ ð Û Ø ÙÑ Ò Ø Û Ð ÏÝ Ï Ô Þ Ò Ô ÖÝÑ ÒØÝ ÔÖÓ º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ ÁÒ ØÝØÙØ ÞÝ Óð Û Þ ÐÒ Þ Ø Ð Ñ ÒØ ÖÒÝ ÏÝ Ï Ô Þ Ò Ô ÖÝÑ ÒØÝ ½ Ð ØÓÔ ¾¼½ æ Ôº½» Ï Þ ð Û Ø Þ ð ãû Þ ÑÝä Ó Þ ÝÛ
ÊÇ ÆÁÃ ÄÍ ÍËÃÁ ÌÓÑ ¾ Þº ¾ ¾¼½ ÒÒ ÙÞ ÅÍ Ã Â ÃÇ Æ Ê Á ÃË Ì ÌÇÏ ÆÁ Å áä ÆÁ Å Ì Å Ì Æ Ç Ï ÍÃ ÂÁ Á Ã Ï Û ØÐ Û Ô Þ ÒÝ ÓÒ Ô Ô Ó ÞÒÝ ÛÝ ÓÛ Ò Ø ØÝÞÒ Ñ Ò ÐÙ Û Þ
ÊÇ ÆÁÃ ÄÍ ÍËÃÁ ÌÓÑ ¾ Þº ¾ ¾¼½ ÒÒ ÙÞ ÅÍ Ã Â ÃÇ Æ Ê Á ÃË Ì ÌÇÏ ÆÁ Å áä ÆÁ Å Ì Å Ì Æ Ç Ï ÍÃ ÂÁ Á Ã Ï Û ØÐ Û Ô Þ ÒÝ ÓÒ Ô Ô Ó ÞÒÝ ÛÝ ÓÛ Ò Ø ØÝÞÒ Ñ Ò ÐÙ Û Þ ØÖÓÒÒ ÓÖÑÓÛ Ò Ó Ó ÓÛÓ Þ ÓÛ º Â Ó ÒØ Ö ÐÒ Þ Ø ÛÝ ÓÛ
Ç ÐÒ ÒÖ ½ DoCelu Ä ØÓÔ ¾¼¼¾ º º º Ó Þ ÑÝ Û ÞÝ Ý Ó ÒÓ Û ÖÝ ÔÓÞÒ Ò ËÝÒ Ó Ó Ó Ñ Ó ÓÒ Ó ÓÖÓ Ò ÑÝ Ó ÛÝÑ Ö Û Ô Ò ÖÝ ØÙ ÓÛ º º º Â ÞÙ ÞÛÝ Ý ÂÓ ÒÒ Ö ØÓÔ ÐÙÑ Ö
Ç ÐÒ ÒÖ ½ DoCelu Ä ØÓÔ ¾¼¼¾ º º º Ó Þ ÑÝ Û ÞÝ Ý Ó ÒÓ Û ÖÝ ÔÓÞÒ Ò ËÝÒ Ó Ó Ó Ñ Ó ÓÒ Ó ÓÖÓ Ò ÑÝ Ó ÛÝÑ Ö Û Ô Ò ÖÝ ØÙ ÓÛ º º º  ÞÙ ÞÛÝ Ý ÂÓ ÒÒ Ö ØÓÔ ÐÙÑ Ö Ø Ô ÓÒ Ö Û Ð Ù ÓÛ ÔÖ ÙÖ ÓÖ ÔÓ Ù ÙÛ ÐÒ Ò ½ º¼ º½ ¼
Sieci neuronowe: pomysl
ËÞØÙÞÒ ÁÒØ Ð Ò ËÝ Ø ÑÝ ÓÖ Þ ½ ØÓ Þ ÞÙÑ ÓÒ Ó õ ØÖ ÒÙ ÔÓÞ ÓÑ ÔÓØ Ò Ù Ð ØÖÝÞÒ Ó ËÝ Ò Ý ÓÑ Ö Sieci neuronowe: pomysl Æ Ð ÓÛ Ò Ñ Þ Ù Þ Ó Ó ÓÑ Ö Ò ÙÖÓÒÓÛÝ Axonal arborization Synapse Axon from another cell Dendrite
A(T)= A(0)=D(0)+E(0).
2 ÅÓ Ð ØÖÙ ØÙÖ ÐÒ ÈÓ ØÖÙ ØÙÖ ÐÒ ÓÔ ÖØ Ø Ò ÔÖ Ù ÓÛÝ ÑÓ ÐÙ ÛÝ Ò Ó Þ ÖÞ Ò Ò ÖÙØÛ Û ÔÓÛ Þ Ò Ù Þ Þ Û Ñ Þ Ó Þ ÝÑ Û Ó Ö ÖÓÞ¹ Û Ò ÖÑݺ Å Û Ò ÔÖÓ ÖÝÞÝ Ó Ö Ø ÖÞ Ö ÝØÓÛÝÑ ÛÝÒ Þ Ö Ù ÓØ Û Ò Ö ÙÐÓÛ Ò ÞÓ ÓÛ Þ º ÙÒ ÓÒÓÛ
Ã Ø ÖÞÝÒ Â ÑÖÓÞ ÊÇ ÆÁà ÄÍ ÍËÃÁ ÌÓÑ ¾ Þº ¾ ¾¼½ ÏÈÁË ÆÁ Ï ÃÊ ÂÇ Ê Æ ÍÃÇÏ Á ÄÇÆÇ ÊËÃÁ ËÌÍ Á Á ÄÁÇÌ ÃÇ Æ Ï À ØÓÖ ÏÓ Û Þ Å Ð ÓØ ÈÙ Ð ÞÒ Ï Å Èµ Ѻ ݹ ÔÖ Ò Æ
Ã Ø ÖÞÝÒ Â ÑÖÓÞ ÊÇ ÆÁà ÄÍ ÍËÃÁ ÌÓÑ ¾ Þº ¾ ¾¼½ ÏÈÁË ÆÁ Ï ÃÊ ÂÇ Ê Æ ÍÃÇÏ Á ÄÇÆÇ ÊËÃÁ ËÌÍ Á Á ÄÁÇÌ ÃÇ Æ Ï À ØÓÖ ÏÓ Û Þ Å Ð ÓØ ÈÙ Ð ÞÒ Ï Å Èµ Ѻ ݹ ÔÖ Ò ÆÓÖÛ Û ÐÓÒ ÖÞ ½ Öº Ý Û Ñ ÓØÛ ÖØÓ Ô ÖÛ Þ ÔÙ Ð ÞÒ ÛÝÔÓ
ÈÖÓ Ö ÑÓÛ Ò ÔÐ ÓÛÝ ÍÒ Û Ö ÝØ Ø Å Ö ÙÖ ¹Ë Ó ÓÛ ÏÝ Þ Å Ø Ñ ØÝ ÞÝ ÁÒ ÓÖÑ ØÝ ÁÒ ØÝØÙØ ÁÒ ÓÖÑ ØÝ ÈÖÓ Ö ÑÓÛ Ò ÔÐ ÓÛÝ Â ÖÓ Û ÝÐ Ò Å ÓÖÞ Ø Ù Ò Å ÃÐ ÓÛ ÄÙ Ð Ò ¾¼½¾ ÁÒ ØÝØÙØ ÁÒ ÓÖÑ ØÝ ÍÅ Ë ÄÙ Ð Ò ¾¼½¾  ÖÓ Û ÝÐ
ÉÙ ÕÙ ÔÖÙ ÒØ Ö Ø Ö Ô Ò Ñ ÇÛ Ù Þ ½ ½ Ó ÓÐÛ ÖÓ Þ Ö ÖÓÞØÖÓÔÒ Ô ØÖÞ Ó
ÈÓÐ Ø Ò Ï Ö Þ Û ÏÝ Þ Ð ØÖÓÒ Ì Ò ÁÒ ÓÖÑ Ý ÒÝ ÁÒ ØÝØÙØ ÙØÓÑ ØÝ ÁÒ ÓÖÑ ØÝ ËØÓ ÓÛ Ò È ÓØÖ Ë ÓÛ Þ ÒÙÑ Ö Ð ÙÑÙ ½ ¾ ¼ ÈÖ ÝÔÐÓÑÓÛ Ò ÝÒ Ö ÙØÓÑ ØÝÞÒ Ð Ö Ý Ø ÑÙ ÖÓ ÓØ¹ Ñ Ö ÇÔ ÙÒ ÔÖ Ý ÔÖÓ º ÒÞÛº Ö º Ò º Þ ÖÝ Ð Ï Ö
ÃÓ Ý ÀÙ Ñ Ð ÓÖÝØÑÝ Þ Ò Ð ÓÖÝØÑÝ Þ Ò º º Ð ÓÖÝØÑ Ñ ¹Ñ Ü ÖÝ ØÝÔÙ ÛÝ Ö»ÔÖÞ Ö ÖÞ Û Æ ¹ÇÊ ÏÝ ÞÙ Û ÛÞÓÖ Û Ð ÓÖÝØÑ ÃÒÙØ ¹ÅÓÖÖ ¹ÈÖ ØØ ÈÖÞ ÞÙ Û Ö Û ÈÖÓ ÙÖÝ Ù Ó
Ï ØÔ Ó ÔÖÓ Ö ÑÓÛ Å ØÓ Ý ÔÖÓ Ö ÑÓÛ ÔÓØÓ ÙÒ Ýݵ Å Ö ÃÙ ¾¼¼»¾¼½¼ ËÔ ØÖ Ï ØÔ ÈÓ Ø ÛÝ ÞÝ ÔÖÓ Ö ÑÓÛ ½ ÓÑÔÓÞÝ ÔÖÓ Ð ÑÙ Û ÖÝ ÖÓÞÛ Þ ¾ ËØÖÙ ØÙÖÝ Ý Ù ÓÛ ØÖ Þ ÔÓÑÓ Ý ÈÖÓ ÙÖÝ ÛÝ ÞÝ ÖÞ Û Ó ØÖ ÓÒ ØÖÙ ÔÖÓ Ö Ñ ØÝÞÒÝ ÅÓ
ÈÓÞÝØÝÛÒ ÔÖÝÑÓÛ Ò Ñ ÒØÝÞÒ Ó Ò ÖÞ Þ ÓÔØÝÑ Ð Þ ÙØÓÑ ØÝÞÒÝ Ý Ø Ñ Û ÙØÓÖÝÞ Ù ÝØ ÓÛÒ Ê ÈÇÊÌ Ö Å Ö Ù Þ ÍÖ ÄÓ ÃÓ Ò ØÝÛ ØÝ ÁÒ ØÝØÙØ È Ý ÓÐÓ ÍÒ Û Ö ÝØ Ø Ñº º Å
ÈÓÞÝØÝÛÒ ÔÖÝÑÓÛ Ò Ñ ÒØÝÞÒ Ó Ò ÖÞ Þ ÓÔØÝÑ Ð Þ ÙØÓÑ ØÝÞÒÝ Ý Ø Ñ Û ÙØÓÖÝÞ Ù ÝØ ÓÛÒ Ê ÈÇÊÌ Ö Å Ö Ù Þ ÍÖ ÄÓ ÃÓ Ò ØÝÛ ØÝ ÁÒ ØÝØÙØ È Ý ÓÐÓ ÍÒ Û Ö ÝØ Ø Ñº º Å Û Þ Å Ö È Û ÙÔ ÓÛ ÄÓ ÃÓ Ò ØÝÛ ØÝ ÁÒ ØÝØÙØ È Ý ÓÐÓ
arxiv: v1 [hep-th] 13 Dec 2007
ÍÒ Û Ö ÝØ Ø Ï Ö Þ Û ÏÝ Þ ÞÝ ÁÒ ØÝØÙØ ÞÝ Ì ÓÖ ØÝÞÒ Ô ÓØÖ Ù ÓÛ arxiv:0712.2173v1 [hep-th] 13 Dec 2007 Ð ¹Ý Ù ÖÝ Ø Ð Ò ØÓÔÓÐÓ Ð ØÖ Ò Ø ÓÖÝ ÖÝ ÞØ Ý Ð ¹Ý Ù Û ØÓÔÓÐÓ ÞÒ Ø ÓÖ ØÖÙÒ ÖÓÞÔÖ Û Ó ØÓÖ Ï Ö Þ Û ¾¼¼ º
1. Waciki do czyszczenia optyki 2. Isopropanol 3. SLED 4. Laser diodowy 1550nm 5. Mikroskop 6. Urządzenie do czyszczenia końcówek światłowodów
ÁÁ ÈÖ ÓÛÒ ÞÝÞÒ Á Í Ǿ ½ Ǿ ¹ ÇÔØÝÞÒÝ ÛÞÑ Ò Þ Û Ø ÓÛÓ ÓÛÝ Ð Û Þ Ò Û Þ Ò Ø Ô ÖÝÑ ÒØ Ñ Þ Þ Þ ÒÝ ÓØÓÒ ÞÝ Ð Ö Û ÓØÝÞÝ Þ Ò ÓÖ Þ Û ÒÓ¹ Û ÒÓÛÝ Û Ø ÓÛÓ ÓÛÝ µ õö Û Ø º ÈÓ Ø ÛÓÛÝÑ Ð Ñ ÒØ Ñ Ù Ù Ó Û ¹ Þ ÐÒ Ó Ø Û ÒÓ»
ð Ö ½¼¼ Å Î ¹ Ì Î ½¼ ½ ØÑÓ ÖÝÞÒ Ñ ¾ Ð Ö ØÓÖÓÛ ÖÞ Ù Î ½¼ ¾¼ Æ ÙØÖ Ò ÌÝÔ Ô Ò Ö ËØÖÙÑ ðò ½ Å Î ½¼ ½¼ ½ Ë ÓÒ ÞÒ Ñ ¾ Ò Ñ µ ÔÓÛÝ Þ ½¼ Šε ÖÞ Ù Å Î ½¼ ½ Ê Ø
Þ Ø ØÖÓ ÞÝ ÔÖÓ º Ö º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ Á ÏÝ ÁÁ ØÖÓÒÓÑ Ò ÙØÖ Ò µ Ô ÖÝÑ ÒØ Á Ù ÛÓÐÙ Û Þ ð Ö ½¼¼ Å Î ¹ Ì Î ½¼ ½ ØÑÓ ÖÝÞÒ Ñ ¾ Ð Ö ØÓÖÓÛ ÖÞ Ù Î ½¼ ¾¼ Æ ÙØÖ Ò ÌÝÔ Ô Ò Ö ËØÖÙÑ ðò ½ Å Î ½¼ ½¼ ½
e 2 = 8, 3 e 1 = 5, 1, e 2 = i 3 + i
ÆÓØ Ø Ó Û Þ Þ Ò Ð ÞÝ Ð Öݺ Ä Ê Ò ½ ÞÝ Û ØÓÖ v ÑÓ Ò ÔÖÞ Ø Û Ó ÓÑ Ò Ð Ò ÓÛ Û ØÓÖ Û e e 2 Þ i) v = 2, 4 e = 5, 7 e 2 = 8, 3 6 9 ÓÖ Þ ii) v = 2 3, e = Ç ÔÓÛ õ i) Ø v = 2e e 2 ii) Ò º, e 2 =, Ò ¾ ÞÝ Û ØÓÖÝ
Strategie heurystyczne
ËÞØÙÞÒ ÁÒØ Ð Ò ËÝ Ø ÑÝ ÓÖ Þ ÔÖÞ ØÖÞ Ò Ø Ò Û Ð ÓÖÝØÑÝ ÈÖÞ ÞÙ Û Ò ÙÖÝ ØÝÞÒ ½ ÙÖÝ ØÝÞÒ ÓÖÞÝ Ø Þ Ó Ø ÓÛ ÙÖÝ ØÝÞÒ ÙÒ Ó ÒÝ ËØÖ Ø ÒÔº Þ Ù Ó ÞØ ÖÓÞÛ Þ Ò Ó Ó Ø ÒÙ Ó ÐÙµ Ø ÒÙ Strategie heurystyczne ÈÖÞ ÞÙ Û Ò Ô
ÈÖÓÑ Ò ÓØÛ ÖÞÓð ð ÔÖÞ Þ Àº ÕÙ Ö Ð Û ÖÓ Ù ½ º Ç ÖÝØ Æ ÙØÖ Ò ÙÖ ÒÙ Ñ ØÓÛ Ý ÔÖÓÑ Ò ÓÛ Ò Ø Ö Þ ÑÒ Ó Ô ÝØ ÓØÓ Ö ÞÒ º ËÓÐ ¹ Ò ÖÓ ÆÓ Ð ÛÖ Þ Þ ÅºË Ó ÓÛ Èº ÙÖ
ð Ö Ò ÙØÖ Ò Æ ÙØÖ Ò ÔÖÓ º Ö º Ð Ò Ö Ð Ô ÖÒ Þ Ø Ð Ñ ÒØ ÖÒÝ Ï Þ ð Û Ø ÏÝ ½¾ Æ ÙØÖ Ò Û ÒÓð ÈÓÑ ÖÝ Ò ÙØÖ Ò Ç ÝÐ Ò ÙØÖ Ò ÈÖÓÑ Ò ÓØÛ ÖÞÓð ð ÔÖÞ Þ Àº ÕÙ Ö Ð Û ÖÓ Ù ½ º Ç ÖÝØ Æ ÙØÖ Ò ÙÖ ÒÙ Ñ ØÓÛ Ý ÔÖÓÑ Ò ÓÛ Ò
Agnieszka Pr egowska
Á Ò Ø Ý Ø Ù Ø È Ó Ø Û Ó Û Ý È Ö Ó Ð Ñ Û Ì Ò È Ó Ð Ñ Æ Ù Agnieszka Pręgowska È ØÝÛÒ Ø ÖÓÛ Ò Ù Ñ Ñ Ò ÞÒÝÑ Ö ÝÑ ÖØÒ ÖÓÞÔÖ Û Ó ØÓÖ ÔÖÓÑÓØÓÖ Ö º Ò º ÌÓÑ Þ ËÞÓÐ ÔÖÓ º ÁÈÈÌ Ï Ö Þ Û ¾¼½ ËÔ ØÖ ½º Ï ØÔ ½ ¾º Ð Ø
ÈÐ Ò ÔÖ Þ ÒØ ½ ¾ Ò ÔÖÞÝ Þ µº ÇÔ Ó ÔÐÙ Û Ò Û ÔÐ Ó ØÓÛ ÔÖÞÝ ÓØÓÛ Ò Ó Ó ÔÐÙ Û Ò Ø Ï Ê µº Æ ÖÞ Þ Ó ÛÝ ÖÝÛ Ò ÛÝ Û Ô Ñ Û ÔÖÓ Ö Ñ Ó ÔÖÓ ÐÓÛ Ò Ó Ùº ÝÑÓÓÔ ÍÅĺ
È ÓØÖ ÙÞ Å Ð Ò Ù Ð Ñ Å Û ØÝÞ ¾¼¼ ÈÐ Ò ÔÖ Þ ÒØ ½ ¾ Ò ÔÖÞÝ Þ µº ÇÔ Ó ÔÐÙ Û Ò Û ÔÐ Ó ØÓÛ ÔÖÞÝ ÓØÓÛ Ò Ó Ó ÔÐÙ Û Ò Ø Ï Ê µº Æ ÖÞ Þ Ó ÛÝ ÖÝÛ Ò ÛÝ Û Ô Ñ Û ÔÖÓ Ö Ñ Ó ÔÖÓ ÐÓÛ Ò Ó Ùº ÝÑÓÓÔ ÍÅĺ Ã Ï Ò µº ÈÓ Ø ÛÝ
ÈÓ Þ ÓÛ Ò ÈÖ Ò Ö ÞÒ ÔÓ Þ ÓÛ È ÒÙ Ö º Ò ÛÓÛ ÃÓÞ Þ ÒÒ ÙÛ ÞÖÓÞÙÑ Ò ÝÞÐ ÛÓ Û ØÖ Ô Ò ÔÖ Ý È ÒÙ Ñ Ö Å ÓÛ Å ØÝ Þ Ð ÞÒ Û Þ Û ÓÑ ÒØ ÖÞ Ø ÖÝÑ Ò Ò Þ ÔÖ Þ Û Þ Þ Ø
ÍÒ Û Ö ÝØ Ø ÏÖÓ Û ÏÝ Þ ÞÝ Á ØÖÓÒÓÑ ÁÒ ØÝØÙØ ÞÝ Ì ÓÖ ØÝÞÒ Ë Ø Ò ËÞÞ Ò Ï ÒÓ Ý ÖÓ ÝÒ Ñ ÞÒ ÑÓ ÐÙ ÞÙ ÓÛ Ó ÀȹÁÁÁ ÀÝ ÖÓ ÝÒ Ñ Ó Ø ÀȹÁÁÁ Ð ØØ ÙØÓÑ Ø ÇÔ ÙÒ Ö º º ÃÓÞ ÏÖÓ Û ¾¼¼ ÈÓ Þ ÓÛ Ò ÈÖ Ò Ö ÞÒ ÔÓ Þ ÓÛ È ÒÙ
Ç ÐÒ ÒÖ ¾½ DoCelu Ä ØÓÔ ¾¼¼ º º º Ó Þ ÑÝ Û ÞÝ Ý Ó ÒÓ Û ÖÝ ÔÓÞÒ Ò ËÝÒ Ó Ó Ó Ñ Ó ÓÒ Ó ÓÖÓ Ò ÑÝ Ó ÛÝÑ Ö Û Ô Ò ÖÝ ØÙ ÓÛ º º º ÅÓ Ð ØÛÝ Û Ø Û ÒÒ Þ Þ ÈÓÐ Ç
Ç ÐÒ ÒÖ ¾½ DoCelu Ä ØÓÔ ¾¼¼ º º º Ó Þ ÑÝ Û ÞÝ Ý Ó ÒÓ Û ÖÝ ÔÓÞÒ Ò ËÝÒ Ó Ó Ó Ñ Ó ÓÒ Ó ÓÖÓ Ò ÑÝ Ó ÛÝÑ Ö Û Ô Ò ÖÝ ØÙ ÓÛ º º º ÅÓ Ð ØÛÝ Û Ø Û ÒÒ Þ Þ ÈÓÐ Ç ÓÛ Þ Ñ Ó Þ ÓÛ Û ÖÞ Ó Ø ÑÓ Ð ØÛ Û Ò¹ Ø Ò Ö Ù ÐÙ Þ Ø
Notki biograficzne Streszczenie
9 788363 103095 Notki biograficzne Wojciech Borczyk (mgr inż.), absolwent kierunku Informatyka na Politechnice Śląskiej. Napisał doktorat z zakresu syntezy fotorealistycznych obrazów z wykorzystaniem modelu
Fizyka I (mechanika), rok akad. 2012/2013 Zadania kolokwialne 1
ÞÝ Á ¾¼½¾»¾¼½ µ ÃÓÐÓ Û ÙÑ ½ º½½º¾¼½¾ Ò Ö ÙÒ ÓÛ ÖÙÔ ÍÛ Ã Þ Ò ÖÓÞÛ ÞÙ ÑÝ Ò Ó Ó Ò ÖØ º ÈÖ ÔÓÛ ÒÒÝ Ý ÞÝØ ÐÒ ÓÐ Ò ÖÓ ÓÔ ØÖÞÓÒ Ø Ñ ÓÑ ÒØ ÖÞ Ñ Ý ØÓ ÖÓÞÙÑÓÛ Ò Ý ÒÝ Ð ÔÖ Û Þ Óº ÊÓÞÛ ÞÙ Þ Ò ÛÝÔÖÓÛ õ ÛÞ Ö Ó ÓÛÝ ÔÖ
Survival Probability /E. (km/mev)
Þ Ø ØÖÓ ÞÝ ÔÖÓ º Ö º º º ÖÒ Þ Ø Ç Þ ÝÛ ðò ÙÒ Ñ ÒØ ÐÒÝ Á ÏÝ ÁÁ ØÖÓÒÓÑ Ò ÙØÖ Ò µ Ô ÖÝÑ ÒØ Á Ù ÛÓÐÙ Û Þ ð Ö ½¼¼ Å Î ¹ Ì Î ½¼ ½ ØÑÓ ÖÝÞÒ Ñ ¾ Ð Ö ØÓÖÓÛ ÖÞ Ù Î ½¼ ¾¼ Æ ÙØÖ Ò ÌÝÔ Ô Ò Ö ËØÖÙÑ ðò ½ Å Î ½¼ ½¼ ½
ρ h (x 0 ) = M h h 3 ρ(x 0 ) = lim ρ h (x 0 )
ÏÝ ½ ÈÓ Ø ÛÓÛ ÔÓ Ñ Ò Ó ÖÓ Ó ËÔ ØÖ ½ ÏÔÖÓÛ Þ Ò Ó Ø ÓÖ Ó ÖÓ Ó ½ ½º½ ÍÛ Ó ÔÓØ Þ Ó ÖÓ Ó º º º º º º º º º º º º º º º º º º º º º º º ½ ¾ ÈÓ ÖÙ Ù Û Ó ÖÓ Ù ÝÑ ¾ ¾º½ ÇÔ ÖÙ Ù Û ÞÑ ÒÒÝ Ä Ö Ò ³ Û ÞÑ ÒÒÝ ÙÐ Ö º
Ë Ñ Ö ÞÒ ÔÓ Þ ÓÛ Ò Ð ÈÖÓÑÓØÓÖ ÔÖ Ý ÔÖÓ º Öº º Ò º ÊÝ Þ Ö ÓÖ Þ ÔÓÑÓ ÑÓØÝÛ Ó Ô Ò Ò Ò Þ ÖÓÞÔÖ ÛÝ ¾
ÍÆÁÏ ÊË Ì Ì Ì ÀÆÇÄÇ Á ÆÇ ¹ ÈÊ ÊÇ ÆÁ Ѻ ºº áò Û Ý Ó ÞÞÝ Ï Á Ì Ä ÃÇÅÍÆÁà ÂÁ ÁÆ ÇÊÅ Ì ÃÁ Á Ä ÃÌÊÇÌ ÀÆÁÃÁ Ñ Ö Ò º Å ÖÓ Û Å ÁÒØ Ð ÒØÒÝ ËÝ Ø Ñ ÊÓÞÔÓÞÒ Û Ò ÃÐ Ý ÈÖÞ Ý ÈÓÞØÓÛÝ ÊÓÞÔÖ Û Ó ØÓÖ ÈÖÓÑÓØÓÖ ÔÖÓ º Ö
ËÔ ØÖ ½ ÏÔÖÓÛ Þ Ò ½º½ Ù ÓÛ ÓÑÔÙØ Ö º º º º º º º º º º º º º º º º º º º º º º º º º º º ½º¾ ÈÖÓ Ö Ñ ÓÑÔÙØ ÖÓÛÝ º º º º º º º º º º º º º º º º º º º
Ï ØÔ Ó Ó Ù ÓÑÔÙØ Ö Û ÊÓ ÖØ ÆÓÛ Å Ø Ö Ý ÔÓÑÓÒ Þ Ó Ï Ö ÞØ Ø Û ÁÒ ÓÖÑ ØÝÞÒÝ Û Ö Ñ Å Ó Þ ÓÛ Ñ ÍÑ ØÒÓ ÖÙÔ ½ ¹¾ Ï Ö Þ Û ¾¼¼ ËÔ ØÖ ½ ÏÔÖÓÛ Þ Ò ½º½ Ù ÓÛ ÓÑÔÙØ Ö º º º º º º º º º º º º º º º º º º º º º º º º
ËÔ ØÖ ½ Ò Ó Ó ÓÛ ½º½ ÁÑ Ò ÞÛ Ó º º º º º º º º º º º º º º º º º º º º º º º º º º ½º¾ ÈÓ Ò ÝÔÐÓÑÝ ØÓÔÒ Ò Ù ÓÛ º º º º º º º º º º º º º º ½º ÁÒ ÓÖÑ Ó
ÙØÓÖ Ö Ø ÁÒÒÓÛ Ý Ò Ñ ØÓ Ý Ò Ð ÞÝ Ò Ð Ò ÓÛÝ ÓÖ Ð ÖÞÝ ÓÛÝ Û Ù Þ Ó ÓÒÝ Ö Â ÒÙ Þ Å Û Þ ÍÒ Û Ö ÝØ Ø ÏÖÓ Û ÁÒ ØÝØÙØ ÞÝ Ì ÓÖ ØÝÞÒ ÏÖÓ Û ¾¼½ ËÔ ØÖ ½ Ò Ó Ó ÓÛ ½º½ ÁÑ Ò ÞÛ Ó º º º º º º º º º º º º º º º º º º º
ÁÆËÌ ÌÍÌ Á ÃÁ ÈÇÄËÃÁ Â Ã ÅÁÁ Æ ÍÃ ÊÍÈ Á ÃÁ ÁÇÄÇ Á Æ Â Ë ÅÇÆ ÆÁ ÏÁ Ê ÊÓÞÔÖ Û Ó ØÓÖ ÝÒ Ñ ÞÑ Ò ÓÒ ÓÖÑ Ý ÒÝ Æ Û ÑÓ Ð ÖÙ ÓÞ ÖÒ ØÝ ÈÊÇÅÇÌÇÊ ÈÖÓ º Ö º Å Ö ÔÐ Ï ÊË Ï ¾¼¼ Ä Ø ÔÙ Ð Æ Ò Þ ÔÖ ÔÓÛ Ø Ò ÔÓ Ø Û ÛÝÒ Û
ÈÓ Þ ÓÛ Ò Æ Ò Þ Ñ Ø Ö Ý ÔÓÛ Ø Ý Ò ÔÓ Ø Û ÒÓØ Ø Ó ÔÖÓÛ ÞÓÒÝ ÔÖÞ Þ ÑÒ Ò ÔÖÞ ØÖÞ Ò Ð Ù Ð Ø ÛÝ Û Þ Ø ÓÖ ÞÝ Û ÙØÓÑ Ø Û ÓÖ Þ Ù ÓÛÝ ÓÑÔ Ð ØÓÖ Ûº ÝÑ ÓÖ Ó ÔÓ Þ
ÂÞÝ ÓÖÑ ÐÒ ÙØÓÑ ØÝ Â Å Ö Ò ÃÙ ¹Ñ Ð Ù Ñ ÑÙÛº ÙºÔÐ ¾¼¼ Æ Ò Þ Ñ Ø Ö Ý ÔÓÛ ÒÒÝ Ý Ô ÖÛ ÞÝÑ õö Ñ Ò ÓÖÑ ÓØÝÞ Ý ÔÖÞ ¹ Ñ ÓØÙ ÂÞÝ ÓÖÑ ÐÒ ÙØÓÑ ØÝ  µº ÞÝØ ÐÒ ÓÑ Ø ÖÞÝ ÓÔÖ Þ Ð ØÙÖÝ ØÝ ÒÓØ ¹ Ø Ð Ý Ò Ó ÔÓ ÖÞÒ ÔÓÐ Ñ
Ç ÐÒ ÒÖ ½ DoCelu Ä ØÓÔ ¾¼¼½ º º º Ó Þ ÑÝ Û ÞÝ Ý Ó ÒÓ Û ÖÝ ÔÓÞÒ Ò ËÝÒ Ó Ó Ó Ñ Ó ÓÒ Ó ÓÖÓ Ò ÑÝ Ó ÛÝÑ Ö Û Ô Ò ÖÝ ØÙ ÓÛ º º º ÓÖ Þ Ð ÐÙ Á ÞÒ Ò Ó Ù ÝÙ Ò Û
Ç ÐÒ ÒÖ ½ DoCelu Ä ØÓÔ ¾¼¼½ º º º Ó Þ ÑÝ Û ÞÝ Ý Ó ÒÓ Û ÖÝ ÔÓÞÒ Ò ËÝÒ Ó Ó Ó Ñ Ó ÓÒ Ó ÓÖÓ Ò ÑÝ Ó ÛÝÑ Ö Û Ô Ò ÖÝ ØÙ ÓÛ º º º ÓÖ Þ Ð ÐÙ Á ÞÒ Ò Ó Ù ÝÙ Ò Û Þ Ò Þ Ñ Ð ÞÖ ÒÝ Ò ÖÓ Û Ý Þ ÙÞÝ ÑÓ¹ ÖÞ Ð º º º Ý ØÓ
N + R C. A T A 1 A 2 I I n. [a;b] (a;b] [a;b) m,n m,n = {m,m + 1,...,n 1,n}
ÏÝ Þ ÁÒ ÓÖÑ ØÝ ÈÓРӹ ÔÓ ÏÝ Þ ËÞ Ó Ì Ò ÃÓÑÔÙØ ÖÓÛÝ ØÓ ÓÛ Ò Ý Ö ØÒ Ó ÓÖØÓ ÓÒ ÐÒ Ó ÓÔ Ö ØÓÖ ÀÙÖÛ ØÞ ¹Ê ÓÒ Û ÓÑÔÖ Ö ÓÒ ØÖÙ ÓÒØÙÖ Û Ó Ö Þ Û ÑÓÒÓ ÖÓÑ ØÝÞÒÝ Ñ Ö Ö Ù Þ Â Þ ÊÓÞÔÖ Û Ó ØÓÖ Ò Ô Ò ÔÓ ÖÙÒ Ñ ÔÖÓ º
¾ Å ÑÞ ÈÖ Þ Ó ÓÒÓ Û Ý Ø Ñ Ä Ì º
Ç ÖÛ ØÓÖ ÙÑ ØÖÓÒÓÑ ÞÒ ÍÒ Û Ö ÝØ Ø Ñº Ñ Å Û Þ Û ÈÓÞÒ Ò Ù ÇÔØÝÑ Ð Þ Ñ ØÓ Ö Ù Ó ÖÛ ÓØÓÑ ØÖÝÞÒÝ ÈÖ Ñ Ø Ö Å ÑÞ Ã ÖÓÛÒ ÔÖ Ý ÔÖÓ º Ö º Ì Ù Þ Å ÓÛ ÇÔ ÙÒ ÔÖ Ý Ö ÌÓÑ Þ ÃÛ Ø ÓÛ ÈÓÞÒ ½ ¾ Å ÑÞ ÈÖ Þ Ó ÓÒÓ Û Ý Ø Ñ Ä
ÒØÝ ÖÝ Ø ÖÝ ÖÝ Æ ØÞ
ÒØÝ ÖÝ Ø ÖÝ ÖÝ Æ ØÞ Ö Ö Ïº Æ ØÞ ÒØÝ ÖÝ Ø ÌÝØº ÓÖÝ º Ö ÒØ Ö Ø ÔÖÞ Ó Ý Ä ÓÔÓÐ ËØ ÇÔÖ ÓÛ Ò Ö ÞÒ ½ ÓÖ Ø Â ÖÓ Û È Ø ÖÞÝ ¹Ñ Ð Ô Ø ÖÛÔº Ù Ö Ö Ï Ð ÐÑ Æ ØÞ ½ ÓÑÔ Ð Ý Ä Ì ¾ε ÈÖÞ ÑÓÛ Ã Ø ÔÖÞ ÞÒ ÞÓÒ Ø Ð Ò ÑÒ Ð ÞÒÝ
¾
ÞÝ Û ÓÒÓÑ Ñ ØÓ Ý ÑÓ Ð ÃÖÞÝ ÞØÓ ÓÑ ÒÓ ÈÓÐ Ø Ò áð  ÖÞÝ ÍÒ Û Ö ÝØ Ø áð à ØÓÛ ¾¼½ ¾ ËÔ ØÖ ½ ÈÖÓÐÓ ¾ Å ØÓ Ý ÔÖ ØÝÞÒ ¾º½ Ï ØÔ º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º º ¾º½º½ Ä Ø Ö ØÙÖ º
Ö Þ Þ Û ØÔÙ Ó Ñ Ø Ñ ØÝ Â Ò ÃÖ Þ Û ÏÖÓ Û ¾¼¼ ½
Ö Þ Þ Û ØÔÙ Ó Ñ Ø Ñ ØÝ Â Ò ÃÖ Þ Û ÏÖÓ Û ¾¼¼ ½ ËÔ ØÖ ÈÖÞ ÑÓÛ ½ Ò ½ ¾ Ï Þ Û Ó Þ ½ Ç ÔÓÛ Þ Ó Þ ¾½ Ð Ó Ö ¼ ¾ ÈÖÞ ÑÓÛ Ï Þ ÓÖ Þ Þ Û ØÔÙ Ó Ñ Ø Ñ ØÝ Þ Ò Þ ÞÛÝÞ Ø ÔÓ ÖÙÔÓÛ Ò Ý ÓØÝÞÝ Ý ÔÓ Þ ÔÓ ÞÞ ÐÒÝ Þ Û ÓÑ Û ÒÝ
Talk to Parrot. Buy a Dog. Go To Class. Buy Tuna Fish. Buy Arugula. Buy Milk. Sit Some More. Read A Book
Þ Ò ÞÒ Ð Þ Ò ÔÐ ÒÙ ÑÓ Ò Ø ÓÖ ØÝÞÒ ÖÓÞÛ ¹ Ã ÔÓ Ù Ù Ò Þ Ñ ØÓ ÔÖÞ ÞÙ Û Ò ÔÖÞ ØÖÞ Ò Þ Â Ø ØÓ Ò Þ ØÓ Ò ÛÝ ÓÒ ÐÒ Û ÔÖ ØÝ Þ Ø Ò Ûº Ò ÓÑÔÐ ÓÛ ÒÝ ÓÔ Ø Ò Û ÛÝ Ó Û Ô ÞÝÒÒ ÛÞ Ð Ù ÈÐ ÒÓÛ Ò ÖÓÞ Þ Ò º ½ ÈÖÞÝ ÔÐ Ò Û Ö
Ç Û Þ Ò ÙØÓÖ ÖÓÞÔÖ ÛÝ Ç Û Þ Ñ Ò Ò Þ ÖÓÞÔÖ Û ÞÓ Ø Ò Ô Ò ÔÖÞ Þ ÑÒ ÑÓ Þ ÐÒ º Ø ÈÓ Ô ÙØÓÖ ÖÓÞÔÖ ÛÝ Ç Û Þ Ò ÔÖÓÑÓØÓÖ ÖÓÞÔÖ ÛÝ Æ Ò ÞÝÑ Ó Û Þ Ñ ÖÓÞÔÖ Û Ø ÓØÓ
ÍÒ Û Ö ÝØ Ø Ï Ö Þ Û ÏÝ Þ Å Ø Ñ ØÝ ÁÒ ÓÖÑ ØÝ Å Ò Ø Â ÒÓÛ Ò ÖÓÛ Ò ÙØÓÑ Ø Û Þ ÓÛÝ Ð Ý Ø Ñ Û Þ Ù ÖÞ ÞÝÛ Ø Ó ÊÓÞÔÖ Û Ó ØÓÖ ÈÖÓÑÓØÓÖ ÖÓÞÔÖ ÛÝ Óº Ö º ÏÓ È ÒÞ ÁÒ ØÝØÙØ ÈÓ Ø Û ÁÒ ÓÖÑ ØÝ ÈÓÐ Ñ Æ Ù Ñ ¾¼¼ Ç Û Þ Ò
Lech Banachowski. Rola Uczelni oraz metod i technik e-edukacji w uczeniu się przez całe życie
Lech Banachowski Rola Uczelni oraz metod i technik e-edukacji w uczeniu się przez całe życie Notka biograficzna Prof. Lech Banachowski jest kierownikiem Katedry Baz Danych i kierownikiem Studiów Internetowych
LVI OLIMPIADA FIZYCZNA ZADANIA ZAWODÓW I STOPNIA
http://www.kgof.edu.pl 1 LVI OLIMPIADA FIZYCZNA ZADANIA ZAWODÓW I STOPNIA Rozwiązania zadań I stopnia należy przesyłać do Okręgowych Komitetów Olimpiady Fizycznej w terminach: część I do 5 października
Notka biograficzna Streszczenie
Notka biograficzna Mgr inż. Rafał Muniak -absolwent kierunku Ekonomia w Szkole Głównej Gospodarstwa Wiejskiego. Przed podjęciem pracy na PJWSTK pracował w firmie konsultingowej na stanowisku analityka
Spis treści. 1 Wstęp 3
Ê ÛÒÓÛ Æ Û Ö ÝÒ Ñ ÞÒÝ ØÒ Ò ÔÖÓ ÝÑ Ù Þ Ð Ù ÊÓÞÔÖ Û Ó ØÓÖ Ò Ô Ò ÔÓ ÖÙÒ Ñ ÔÖÓ º Ö º Ò ÖÞ ÆÓÛ ÈÓÐ Ø Ò ÏÖÓ Û ÁÒ ØÝØÙØ Å Ø Ñ ØÝ ÁÒ ÓÖÑ ØÝ ÏÖÓ Û ¾¼¼ ½ pis treści 1 Wstęp 3 2 Gry stochastyczne wielogeneracyjne
Ø Ò Þ È ØÖ Û Þ ËÈ ÃÌÊÇËÃÇÈÁ ÊÇÌ ÂÆ Ï Ê Æ À ËÌ Ã Á ÃÇÅÈÄ ÃË Ï ÅÁ ËÌ ÃÇÏ À Ï Æ éïá ÃÇÏ Â ÏÁ ÅÇÄ ÃÍÄ ÊÆ Â ÊÓÞÔÖ Û Ó ØÓÖ Ò Ô Ò Û ÁÒ ØÝØÙ ÞÝ ÈÓÐ Ñ Æ Ù ÔÓ Ö
Ø Ò Þ È ØÖ Û Þ ËÈ ÃÌÊÇËÃÇÈÁ ÊÇÌ ÂÆ Ï Ê Æ À ËÌ Ã Á ÃÇÅÈÄ ÃË Ï ÅÁ ËÌ ÃÇÏ À Ï Æ éïá ÃÇÏ Â ÏÁ ÅÇÄ ÃÍÄ ÊÆ Â ÊÓÞÔÖ Û Ó ØÓÖ Ò Ô Ò Û ÁÒ ØÝØÙ ÞÝ ÈÓÐ Ñ Æ Ù ÔÓ ÖÙÒ Ñ Óº Ö º Ò Û Ã Ð Ï Ö Þ Û Ñ ¾¼¼ ÅÓ ÑÙ Ñ ÓÛ ÂÙÖ ÓÛ
Notka biograficzna Streszczenie
Notka biograficzna Dr Mariusz Maciejczak -doktor ekonomii, wykładowca na polskich i zagranicznych uczelniach, uczestnik projektów badawczych i aplikacyjnych, doradca i ekspert organizacji biznesowych,
Å Ø Ù Þ Ë ÓÖ ËØ ÐÒÓ Ñ Ò ÞÒ Ö ØÝ ÙÒ ÓÒ Ð ÞÓÛ ÒÝ Ò ÒÓÞ Ø Û ÑÓ Ð ÖÙ ÓÞ ÖÒ ØÝ ÈÖÓÑÓØÓÖ ÈÖÓ º Ö º Å Ö ÔÐ ÊÓÞÔÖ Û Ó ØÓÖ ÛÝ ÓÒ Ò Û áöó ÓÛ ÓÛÝÑ Ä ÓÖ ØÓÖ ÙÑ ÞÝ ÓÐÓ ÞÒ ÁÒ ØÝØÙØ ÞÝ È Æ Ï Ö Þ Û ½ Ñ ¾¼½¾ ÈÓ Þ ÓÛ Ò
Notka biograficzna Streszczenie
Notka biograficzna Dr Mariusz Maciejczak -doktor ekonomii, wykładowca na polskich i zagranicznych uczelniach, uczestnik projektów badawczych i aplikacyjnych, doradca i ekspert organizacji biznesowych,
ROCZNIK LUBUSKI Tom 30, część 2
ROCZNIK LUBUSKI LUBUSKIE TOWARZYSTWO NAUKOWE ROCZNIK LUBUSKI Tom 30, część 2 RÓŻNORODNOŚĆ KAPITAŁÓW W NOWEJ RZECZYWISTOŚCI SPOŁECZNEJ Z DOROBKU ZIELONOGÓRSKIEGO ŚRODOWISKA SOCJOLOGICZNEGO Pod redakcją
Ë Ñ Ö ÞÒ ÔÓ Þ ÓÛ Ò È ÒÙ ÈÖÓ ÓÖÓÛ ÊÝ Þ Ö ÓÛ È ÖÞÝ ÑÙ Þ Ó Þ Ò ÝÞÐ ÛÓ ÓÖ Þ Û Þ Û Ù Þ ÐÓÒ Ñ ÔÓ Þ Ô Ò ÔÖ Ý
ÍÒ Û Ö ÝØ Ø Ñº Ñ Å Û Þ Û ÈÓÞÒ Ò Ù ÏÝ Þ ÞÝ Å Ö ÒØ Ê ÞÓÒ Ò Û ÐÓ ÓØÓÒÓÛÝ Û Ù ØÖ ÔÓÞ ÓÑÓÛÝ ÈÖ Ó ØÓÖ Ò Ô Ò ÔÓ ÖÙÒ Ñ ÔÖÓ º Öº º ÊÝ Þ Ö È ÖÞÝ Ó ÈÓÞÒ ¾¼½¾ Ë Ñ Ö ÞÒ ÔÓ Þ ÓÛ Ò È ÒÙ ÈÖÓ ÓÖÓÛ ÊÝ Þ Ö ÓÛ È ÖÞÝ ÑÙ Þ
ÏÔÖÓÛ Þ Ò ÇÔ ÑÓ ÐÙ ÏÝÒ ÝÑÙÐ ÈÓ ÙÑÓÛ Ò Ä Ø Ö ØÙÖ Ë ÙØ ÔÖÞÝ Ø Ô Ò ÈÓÐ Ó ËØÖ Ý ÙÖÓ ÏÝÒ ÝÑÙÐ Ò ÔÓ Ø Û ÝÒ Ñ ÞÒ Ó ÑÓ ÐÙ ÌÓÑ Þ Ö Â Ò À Ñ Ö Æ ÖÓ ÓÛÝ Ò ÈÓÐ Ö À
Ò ÔÓ Ø Û ÝÒ Ñ ÞÒ Ó ÑÓ ÐÙ ÌÓÑ Þ Ö Â Ò À Ñ Ö Æ ÖÓ ÓÛÝ Ò ÈÓÐ ÈÐ Ò ÔÖ Þ ÒØ ½ ¾ Ð ÔÖ Ý ÈÖÞ Ð Ð Ø Ö ØÙÖÝ ÈÓ Ø ÛÓÛ Ý ÑÓ ÐÙ Þ ÒÝ ÅÓ Ð ÞÓÛÝ ÊÓÞ Þ ÖÞ Ò ÑÓ ÐÙ ÞÓÛ Ó Ó Ò ÝÑÙÐ Ò Ð Þ ÛÖ Ð ÛÓ ÈÐ Ò ÔÖ Þ ÒØ Ð ÔÖ Ý ÈÖÞ
ÊÇ ÆÁÃ ÄÍ ÍËÃÁ ÌÓÑ ¾ Þº ¾ ¾¼½ ÒÒ ÑÖ ÈÊ ÃÊÇ Ê ÆÁ ÅÇÆËÌÊÍÅ Ê ÆÃ ÆËÌ ÁÆ ÈÇÏÁ á Á Å Ê ÏÇÄÄËÌÇÆ Ê Ì ËÀ ÄÄ ÊÙ Þ º... ÌÓ Ý ½ ÙÒØ ÔÖÞ Û Ó Æ ØÙÖÞ Â ÒÝÑ Þ Ó Û Þ
ÊÇ ÆÁà ÄÍ ÍËÃÁ ÌÓÑ ¾ Þº ¾ ¾¼½ ÒÒ ÑÖ ÈÊ ÃÊÇ Ê ÆÁ ÅÇÆËÌÊÍÅ Ê ÆÃ ÆËÌ ÁÆ ÈÇÏÁ á Á Å Ê ÏÇÄÄËÌÇÆ Ê Ì ËÀ ÄÄ ÊÙ Þ º... ÌÓ Ý ½ ÙÒØ ÔÖÞ Û Ó Æ ØÙÖÞ Â ÒÝÑ Þ Ó Û ÞÒÝ ÔÖ Ò Þ ÓÛ Ø ÙÛÓÐÒ Ò Ó Ý Ø ØÙ Ò ØÙÖݺ ÏÝÖ ÓÒÓ Ò Ö
Ã Þ Ñ ÖÞ Åº ÓÖ ÓÛ Ê ÓÛ ÒØ Ö ÖÓÑ ØÖ Û Ð Ó ÞÓÛ ÎÄ Áµ ÌÓÖÙ ½
Ã Þ Ñ ÖÞ Åº ÓÖ ÓÛ Ê ÓÛ ÒØ Ö ÖÓÑ ØÖ Û Ð Ó ÞÓÛ ÎÄ Áµ ÌÓÖÙ ½ ÍÆÁÏ ÊË Ì Ì ÅÁÃÇ Â ÃÇÈ ÊÆÁÃ Ã Þ Ñ ÖÞ Åº ÓÖ ÓÛ Ê ÓÛ ÒØ Ö ÖÓÑ ØÖ Û Ð Ó ÞÓÛ ÎÄ Áµ ÌÓÖÙ ½ Ê ÒÞ Ò ÈÖÓ º Ö º Ò ÖÞ ÃÙ ÈÖÓ º Ö º Â Þ Å ÓÛ ÓÔÝÖ Ø Ý ÏÝ ÛÒ
ÈÓ Þ ÓÛ Ò ÈÖ Ò Þ Ó Ý Ö ÞÒ ÔÓ Þ ÓÛ Ò Û ÞÝ Ø Ñ Ó Ó ÓÑ Ø Ö ÛÓ Ñ ÒÒÝÑ ÙÛ Ñ ÔÖÞÝÞÝÒ Ý Ó Ö Ð Þ Ò Ò Þ ÖÓÞÔÖ Ûݺ ËÞÞ ÐÒ ÔÖ Ò ÔÓ¹ Þ ÓÛ ÔÖÓÑÓØÓÖÓÛ ÔÖÓ º Ï ØÓÐ Ó
ÁÒ ØÝØÙØ ÈÓ Ø ÛÓÛÝ ÈÖÓ Ð Ñ Û Ì Ò ÈÓÐ Ñ Æ Ù ÃÐ Ý Ò ØÖÙÑ ÒØ Û ØÖÙÒÓÛÝ Û ÑÙÐØ Ñ ÐÒÝ Þ ÒÝ Þ ÞÞ ÐÒÝÑ ÙÛÞ Ð Ò Ò Ñ ÖØÝ ÙÐ Ô ÞÞ ØÓ Ñ Ö ÃÖÞÝ ÞØÓ ÌÝ ÙÖ ÊÓÞÔÖ Û Ó ØÓÖ Ò Ô Ò ÔÓ ÖÙÒ Ñ ÔÖÓ º Öº º Ï ØÓÐ ÃÓ Ó Ï Ö Þ Û
ROCZNIK LUBUSKI Tom 35, część 2
ROCZNIK LUBUSKI LUBUSKIE TOWARZYSTWO NAUKOWE ROCZNIK LUBUSKI Tom 35, część 2 WSPÓŁCZESNA WIZJA MIASTA W TEORII I PRAKTYCE SPOŁECZNEJ Pod redakcją Żywii Leszkowicz-Baczyńskiej Justyny Nyćkowiak Zielona
function KB-AGENT( percept) returns an action static: KB, a knowledge base t, a counter, initially 0, indicating time
Û ÞÝ ÒÓÛÐ µ Ö Ø Û Ó Û º ØÝ Þ ÞÛ Ò Þ Ò Ñ ÐÙ ÓÖÑÙ Ñ Þ Ô Ò Û ÞÝ Ù Ö ¹ Ø Û Þݺ ÒØ ÓÑÙÒ Ù Þ Þ Û ÞÝ Ã µ ÔÖ Þ ÒØ ÓÔ Ö Ì ÄÄ Ëà ٠ÝÛ ÒØ ÛÒ Ó Ù Ý Ì ÄÄ ÒØ Ã Ó Ò Ó ÖÛ Ó Ã º ËÃ Ã ÒØ ÔÝØ Ò Ó º ½ Ç ÐÒÝ ÑÓ Ð ÒØ ÔÓ Ù Ù
ÊÓÞÔÓÞÒ Û Ò Ð ØÖÓÒ Û Ñ ÞÓÒ Û π 0 ÔÖÞÝ Ò Ù Ó Þ ÝÛ Ò ÙØÖ Ò Û Þ ØÓ ÓÛ Ò Ù Ó Ø ØÓÖ Û Ó¹ Ö ÓÒÓÛÝ ÓÖ Þ Ð Ó Ø ØÓÖ Ô ÖÝÑ ÒØÙ Ì¾Ã ÌÓÑ Þ Ï ÁÒ ØÝØÙØ ÞÝ Â ÖÓÛ Ñº
ÊÓÞÔÓÞÒ Û Ò Ð ØÖÓÒ Û Ñ ÞÓÒ Û π ÔÖÞÝ Ò Ù Ó Þ ÝÛ Ò ÙØÖ Ò Û Þ ØÓ ÓÛ Ò Ù Ó Ø ØÓÖ Û Ó¹ Ö ÓÒÓÛÝ ÓÖ Þ Ð Ó Ø ØÓÖ Ô ÖÝÑ ÒØÙ Ì¾Ã ÌÓÑ Þ Ï ÁÒ ØÝØÙØ ÞÝ Â ÖÓÛ Ñº À ÒÖÝ Æ ÛÓ Ò Þ Ó ÈÓÐ Ñ Æ Ù ÊÓÞÔÖ Û Ó ØÓÖ ÔÖÞÝ ÓØÓÛ Ò
faza nadkrytyczna ciecz cia³o sta³e punkt krytyczny gaz punkt potrójny
Á à ËÃÇÆ ÆËÇÏ Æ Â Ñ Ø Ö Ý Ó ÛÝ Ù Ì Ù Þ Ð ÖÞ Ì Ù Þ Ð ÖÞ ¹Ñ Ð Ø Ð ÖÞ ÙÒ ºÐÓ ÞºÔÐ ØØÔ»»ÛÛÛºÛ ºÙÒ ºÐÓ ÞºÔл»ÞØ»Ì È»Ì º ØÑ Ã Ø Ö ÞÝ ËØ Ó ÏÝ Þ ÞÝ ÁÒ ÓÖÑ ØÝ ËØÓ ÓÛ Ò ÍÒ Û Ö ÝØ Ø Þ Ê Ø Ò ÞÒ Ó ÖÞÝ õ ¾¼½½ ËÈÁË ÌÊ
KAPITAŁ LUDZKI NARODOWA STRATEGIA SPÓJNOŚCI UNIA EUROPEJSKA EUROPEJSKI FUNDUSZ SPOŁECZNY
KAPITAŁ LUDZKI NARODOWA STRATEGIA SPÓJNOŚCI UNIA EUROPEJSKA EUROPEJSKI FUNDUSZ SPOŁECZNY ÈÖÓ Ø ÔÒº ÏÞÑÓÒ Ò ÔÓØ Ò Ù Ý ØÝÞÒ Ó ÍÅÃ Û ÌÓÖÙÒ Ù Û Þ Þ Ò Ñ Ø Ñ ØÝÞÒÓ¹ÔÖÞÝÖÓ Ò ÞÝ Ö Ð ÞÓÛ ÒÝ Û Ö Ñ ÈÓ Þ Ò º½º½ ÈÖÓ
ÔÓÑÓÒ Þ Ó ÛÝ Ù Å Ø Ö Ý ÔÓ Ø ÛÝ Ø Ò ÔÐÒ Ì ÖÑÓ ÝÒ Ñ ÔÖÓ Ö Ñ Û ÔÓÔÖ Û Ó ÞØ Ò ÓÖ Þ ÓØÛ Ö ÍÒÓÛÓÞ Ò Ò Ô ÐÒÓ Ó ÞÝ Ò ÖÙÒ Ù ÞÝ Û ÍÒ Û Ö ÝØ ÐÓÒÓ Ö Ñ ÒÓÛ ¼ º¼½º¼
ÔÓÑÓÒ Þ Ó ÛÝ Ù Å Ø Ö Ý ÔÓ Ø ÛÝ Ø Ò ÔÐÒ Ì ÖÑÓ ÝÒ Ñ ÔÖÓ Ö Ñ Û ÔÓÔÖ Û Ó ÞØ Ò ÓÖ Þ ÓØÛ Ö ÍÒÓÛÓÞ Ò Ò Ô ÐÒÓ Ó ÞÝ Ò ÖÙÒ Ù ÞÝ Û ÍÒ Û Ö ÝØ ÐÓÒÓ Ö Ñ ÒÓÛ ¼ º¼½º¼½¹¼¼¹¼ ½»¼ ¹¼¼ ÈÇÃÄ ÇÔ Ö Ý ÒÝ Ã Ô Ø ÄÙ Þ ÈÖÓ Ö Ñ ÏÞÑÓÒ
ÈÇÄÁÌ ÀÆÁà ÏÊÇ ÏËÃ Ï Á Ä ÃÌÊÇÆÁÃÁ à ÖÙÒ ËÔ ÐÒÓ ÙØÓÑ ØÝ ÊÓ ÓØÝ ÊÓ ÓØÝ ÈÊ ÈÄÇÅÇÏ Å ÁËÌ ÊËà ÁÑÔÐ Ñ ÒØ Þ ÓÛ Û Ø ÖÓÛÒ Ù Ñ Ó ÖÓ ÓØ ÑÓ ÐÒ Ó ÁÑÔÐ Ñ Ø Ø ÓÒ Ó Ú ÓÖ ÓÒ Ñ ÐÐ ÑÓ Ð ÖÓ ÓØ³ ÓÒØÖÓÐ Ö ÙØÓÖ Ö Ù Þ Å Ø Ö ÈÖÓÛ
M(N) = Homeo(N, N)/Homeo 0 (N, N). M(S) = Homeo + (S, S)/Homeo 0 (S, S).
ÍÌÇÊ Ê Ì ½º ÈÓ Ø ÛÓÛ Ò ÓÖÑ ½º½º ÁÑ ÓÒ Ò ÞÛ Ó Â Ù ËÞ Ô ØÓÛ ½º¾º ÈÓ Ò ÝÔÐÓÑÝ ØÓÔÒ Ò Ù ÓÛ ÝÔÐÓÑ Ñ ØÖ Ñ Ø Ñ ØÝ ÍÒ Û Ö ÝØ Ø ÏÝ Þ Å Ø Ñ ØÝ ÞÝ ¾¼¼¾ ØÓÔ Ó ØÓÖ Ñ Ø Ñ ØÝ Ò ÔÓ Ø Û ÖÓÞÔÖ ÛÝ Ò Ö ØÓÖÝ Ö Ð Û ÖÙÔ Ð Ó
Janusz Przewocki. Zeroth Milnor-Thurston homology for the Warsaw Circle. Instytut Matematyczny PAN. Praca semestralna nr 3 (semestr zimowy 2010/11)
Janusz Przewocki Instytut Matematyczny PAN Zeroth Milnor-Thurston homology for the Warsaw Circle Praca semestralna nr 3 (semestr zimowy 2010/11) Opiekun pracy: Andreas Zastrow ÖÓØ Å ÐÒÓÖ¹Ì ÙÖ ØÓÒ ÓÑÓÐÓ
x = x 1 e 1 +x 2 e 2 +x 3 e 3
ÏÝ ¼ ÏÔÖÓÛ Þ Ò Ó Ö ÙÒ Ù Û ØÓÖÓÛ Ó À ÒÖÝ ÃÙ Ð ËÔ ØÖ ½ ÈÖÞ ØÖÞ Ù Ð ÓÛ ¹ Û ØÓÖ ÔÓ Ó Ò ½ ¾ Ì Ò ÓÖÝ ÖÞ Ù ÖÙ Ó ¾º½ Ê ÔÖ Þ ÒØ Ø Ò ÓÖ ÖÞ Ù ÖÙ Ó Û ÔÖÓ ØÓ ØÒÝÑ Ù Þ ÖØ Þ Ñ ¾º¾ ÈÖÞÝ Ý Ø Ò ÓÖ Û ÖÞ Ù ÖÙ Ó º º º º º
ÍÆÁÏ ÊË Ì Ì Ï ÊË ÏËÃÁ Ï Á Á ÃÁ  ËÞÞÝØ Ó È ÈÊ ÏÇ ÆÁÃÁ È Å Æ Ì Æ ÁÁÁ¹Î Å Æ Æ Å ÈÖ Ó ØÓÖ ÛÝ ÓÒ Ò Û ÁÒ ØÝØÙ ÞÝ Óð Û Þ ÐÒ Ò ÏÝ Þ Ð ÞÝ ÍÒ Û Ö ÝØ ØÙ Ï Ö Þ Û
ÍÆÁÏ ÊË Ì Ì Ï ÊË ÏËÃÁ Ï Á Á ÃÁ  ËÞÞÝØ Ó È ÈÊ ÏÇ ÆÁÃÁ È Å Æ Ì Æ ÁÁÁ¹Î Å Æ Æ Å ÈÖ Ó ØÓÖ ÛÝ ÓÒ Ò Û ÁÒ ØÝØÙ ÞÝ Óð Û Þ ÐÒ Ò ÏÝ Þ Ð ÞÝ ÍÒ Û Ö ÝØ ØÙ Ï Ö Þ Û Ó ÔÓ ÖÙÒ Ñ ÔÖÓ º Ö º Ò ÖÞ ÌÛ Ö ÓÛ Ó Ï ÊË Ï Ð Ô ¾¼¼½
ÓÑ ØÖÓÐÓ ¹ Ñ Ø Ö Ý Ó ÛÝ Ù ÇÔÖ ÓÛ ÈÖÞ ÑÝ Û ÓÖÝ ÖÙ Ò ¾¼½
ÓÑ ØÖÓÐÓ ¹ Ñ Ø Ö Ý Ó ÛÝ Ù ÇÔÖ ÓÛ ÈÖÞ ÑÝ Û ÓÖÝ ÖÙ Ò ¾¼½ ¾ ËÔ ØÖ ½ ÈÓÑ ÖÝ ÞÝÞÒ ½º½ ÊÓ Þ ÔÓÑ ÖÙ º º º º º º º º º º º º º º º º º º º º º º º º º ½º¾ Ý Ò Ô ÛÒÓ º º º º º º º º º º º º º º º º º º º º º º
t = pn T = pi ρ dv i dt = ρf i + p , i = 1, 2, 3 µ x i ρ( v i t + v v i div v = 0 ρ v + (v )v = ρf p = 0 j = ρf i p, i = 1, 2, 3 µ
ÏÝ Ê ÛÒ Ò ÖÙ Ù ÞÝ Ò Ð Ô À ÒÖÝ ÃÙ Ð ËÔ ØÖ ½ Ê ÛÒ Ò ÙÐ Ö ÖÙ Ù ÞÝ Ò Ð Ô ½ ½º½ Ê ÛÒ Ò ÖÙ Ù ÞÝ Ò ÐÔ Û ÓÖÑ ÖÓÑ ¹Ä Ñ º º º º º º º º º ½º¾ Ê ÛÒ Ò À ÐÑ ÓÐÞ ØÖ Ò ÔÓÖØÙ Û ÖÓÛÓ Ð Ô ÝÒÙ Ò Ð Ô Ó º º º º º º ½º ÓÑÔÓÞÝ