| Powrót do listy seminariów |
Seminarium Semantyka, Logika I Weryfikacja Oraz Wiele Ich Ciekawych Aplikacji (SLIWOWICA)
Tematyka seminarium obejmuje formalne podstawy i praktyczne metody specyfikacji, weryfikacji i systematycznego konstruowania oprogramowania oraz opisu semantyki programów, a także związane z nimi problemy i zastosowania logiki, algebry ogólnej i teorii kategorii.
Prowadzą: Paweł Urzyczyn i Andrzej Tarlecki
Seminarium posiada własną stronę internetową.
| 2012-12-03, godz. 10:15, s. 4790 |
| Bartosz Zieliński (Uniwersytet Łódzki) |
| Maude jako preprocesor SQL |
|
Opowiem o pomyśle wykorzystania systemów przepisywania termów jako lepszych makroprocesorów, w szczególności opiszę tworzony obecnie system (na wczesnym etapie rozwoju) reprezentowania zapytań SQL jako termów Maude i jego zastosowanie do generowania SQL-a, modularyzacji kodu i eksperymentowania z semantycznymi rozszerzeniami języka. Praca wspólna ze Ś. Sobieskim. |
| 2012-11-05, godz. 10:15, s. 4790 |
| Michał R. Przybyłek (Uniwersytet Warszawski) |
| Associated Categories |
| Pokażę, że z obiektami dowolnej skończenie zupełnej 2-kateorii z notacją dyskretności, można związać kategorie, tak aby 1-morfizmy odpowiadały funktorom pomiędzy dowiązanymi kategoriami, 2-morfizmy naturalnym transformacjom, a dyskretne obiekty dyskretnym (w klasycznym sensie) kategoriom. Pozwoli to na transport teoriokategoryjnych konstrukcji do wnętrza 2-kategorii. Modelowym przykładem będzie charakteryzacja obiektów wewnętrznie kartezjańsko domkniętych i wprowadzenie dla takich obiektów morfizmu wykładniczego C^op x C ---> C. |
| 2012-05-28, godz. 10:15, s. 4790 |
| Jędrzej Fulara (Uniwersytet Warszawski) |
| Analiza abstrakcyjna zmiennych numerycznych oraz kontenerów danych |
| Tym razem nie opowiem o niczym, czego byście jeszcze nie słyszeli. Referat będzie o abstrakcyjnej interpretacji oraz dziedzinach numerycznych i dziedzinach do analizy zawartości kontenerów danych, takich jak tablice i słowniki. Pojawią się (bez technicznych detali) nasze dziedziny numeryczne ("Weighted Hexagons" i "Strict Weighted Hexagons") oraz generyczna abstrakcja słowników. |
| 2012-05-14, godz. 10:15, s. 4790 |
| Michał Roman Przybyłek (Uniwersytet Warszawski) |
| Moduły nad monadami |
| Opowiem o formalnej teorii monad w bikategoriach. W szczególności skupię się na charakteryzacji rezolucji monad za pomocą uniwersalnych modułów i luźnych (ko)stożków. |
| 2012-05-07, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| JVM w Coqu - odcinek i-ty |
| Referat o tym, co zwykle, czyli o moich przygodach z formalizacją bajtkodu Javy Coq-u. W najbliższym odcinku: * "właściwie to mam prawie wszystkie instrukcje operujące wewnątrz ramki" ;), * dowód własności programu z pętlą (suma 2*i-1 dla i:[1..n] = n*n), * machanie rękami na temat uogólnienia techniki tego dowodu i zrobienia czegoś na kształt logiki Hoare'a dla bajtkodu, * błędy w (mojej) specyfikacji znalezione w trakcie testowego dowodu oraz refaktoryzacja faktoryzacji. |
| 2012-04-16, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| Testing of Evolving Protocols |
| Prerun przed workshopem "Testing: Academic & Industrial Conference Practice and Research Techniques" (http://www2012.taicpart.org) Abstrakt pracy (wspólnej z J. Chrząszczem, A. Schubertem i A. Tarleckim): A common assumption for the state-of-the-art methods of protocol testing is that the protocol description is precise, unambiguous and fully determined. Unfortunately, in many practical situations this assumption turns out to be unrealistic. We propose an architecture of a testing framework where different aspects and facets of protocols are separated in a clear manner so that the adaptation of the framework to amendments in protocol description is relatively straightforward. This architecture is realised in a testing framework for RCS mobile phone protocol suite we developed in cooperation with Samsung Electronics. The framework successfully went through a number of adjustments to accommodate new interpretations of RCS protocols as assimilated by the developers. |
| 2012-03-26, godz. 10:15, s. 4790 |
| Artur Zawłocki (Uniwersytet Warszawski) |
| Specyfikacja systemów komponentowych (badania własne) |
| Przedstawię podejście do specyfikacji systemów złożonych ze współbieżnych, komunikujących się synchronicznie komponentów, które umożliwia kompozycjonalną specyfikację i weryfikację (o własnościach systemu można wnioskować na podstawie własności komponentów) oraz wspiera refinement specyfikacji (przechodzenie od specyfikacji abstrakcyjnej do szczegółowej). |
| 2012-03-19, godz. 10:15, s. 4790 |
| Tadeusz Sznuk (Uniwersytet Warszawski) |
| HAHA |
| Zamierzam powiedzieć mniej więcej to samo, co poprzednio, czyli do czego to narzędzie ma służyć i jak ma działać. Z tą różnicą, że zamiast slajdów będę się posługiwał prototypem implementacji. |
| 2012-03-12, godz. 10:15, s. 4790 |
| Aleksy Schubert (Uniwersytet Warszawski) |
| Czytelne programowanie |
| 2012-03-05, godz. 10:15, s. 4790 |
| W pierwszej części prezentacji opowiem o szkicach które są czymś w rodzaju specyfikacji klas kategorii. Następnie opowiem o kategoryjnych (z wykorzystaniem szkiców) specyfikacjach baz danych i o ich zastosowaniach związanych np. z integracją danych, semantyką czy problemem aktualizacji widoków. |
| 2012-02-20, godz. 10:15, s. 4790 |
| Michał Roman Przybyłek (Uniwersytet Warszawski) |
| Wariacje na Systemach Logicznych |
| 2012-01-16, godz. 10:15, s. 4790 |
| Bartek Klin (Uniwersytet Warszawski) |
| Prerun wykładów habilitacyjnych |
| TEMAT 1: Mądrej głowie dość dwie słowie, czyli dowody probabilistycznie sprawdzalne Jak sprawdzić, czy dowód twierdzenia matematycznego jest poprawny, nie czytając go w całości? Dla pewnej klasy problemów i dowodów jest to możliwe. Dowód probabilistycznie sprawdzalny to taki, który można sprawdzić za pomocą algorytmu randomizowanego w ten sposób, że jeśli dowód jest poprawny, to z pewnością zostanie zaakceptowany, a jeśli jest błędny, to zostanie odrzucony z dużym prawdopodobieństwem. Okazuje się, że często algorytmowi sprawdzającemu wystarczy sprawdzić tylko niewielką część sprawdzanego dowodu. TEMAT 2: Zbiory nominalne, czyli algebra wiązania zmiennych Indukcja strukturalna to podstawowe narzędzie do operowania na termach zbudowanych nad sygnaturami algebraicznymi. Jej stosowanie jest bardziej problematyczne dla języków z wiązaniem zmiennych, takich jak rachunek lambda czy rachunek pi. Chociaż termy w takich językach są formalnie traktowane z dokładnością do alfa-konwersji, jednak w praktyce operacje na nich są definiowane dla konkretnych wyborów zmiennych związanych, a dowody niezależności tych definicji od wyboru zmiennych są często pomijane. W wykładzie opowiem o zbiorach nominalnych, czyli pewnym modelu, który pozwala pogodzić indukcję strukturalną z alfa-konwersją. TEMAT 3: Paradoks Alabamy i inne kłopoty z demokracją W demokracji parlamentarnej regularnie stajemy przed koniecznością podziału mandatów między partie polityczne proporcjonalnie do liczby uzyskanych głosów. Ponieważ pojedynczych mandatów nie można dzielić, uzyskanie doskonałej proporcjonalności jest niemożliwe i niezbędna jest metoda zaokrąglania uzyskanych wyników. Okazuje się, że pewne proste i intuicyjnie przekonujące metody prowadzą do nieoczekiwanych sytuacji takich jak paradoks Alabamy i paradoksy populacyjne. W wykładzie podam kilka naturalnych własności, które powinna mieć idealna metoda podziału mandatów. Opowiem też o klasycznym twierdzeniu, które mówi, że żadna metoda nie ma wszystkich tych własności. |
| 2012-01-09, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| JVM w Coqu po mojemu czyli faktoryzacja faktoryzacji |
Chodzi oczywiście o formalizację w Coqu semantyki maszyny wirtualnej Javy. Ogólnie będzie... jak zwykle, a w szczegółach - jak realizuję operacje na stosie wartości (tzw. stackop) i jakie wnioski z tego wynikają dla całej formalizacji. |
| 2011-12-19, godz. 10:15, s. 4790 |
| Jerzy Tyszkiewicz (Uniwersytet Warszawski) |
| Parallel Random Access Machines and Spreadsheets Are (Almost) the Same |
W referacie (po polsku, tytuł i slajdy po angielsku) pokażę, że w arkuszach kalkulacyjnych można nie używając żadnych makr zaimplementować interpreter maszyny PRAM (Parallel Random Access Machine). Wskazuje to zarazem na: 1) Możliwość wyrażania w arkuszach bardzo skomplikowanych obliczeń i związane z tym trudności z dowodami ich poprawności. 2) Możliwość używania arkuszy jako interfejsów do specyfikacji obliczeń równoległych ogólnego stosowania. 3) Potencjał optymalizacji obliczeń wykonywanych w arkuszach w kierunku ich zrówlnoleglania. |
| 2011-12-05, godz. 10:15, s. 4790 |
| Bartek Klin (Uniwersytet Warszawski) |
| Logiczne prawa rozdzielności |
Opowiem o metodzie dowodzenia kompozycjonalności |
| 2011-11-28, godz. 10:15, s. 4790 |
| Tadeusz Sznuk (Uniwersytet Warszawski) |
| Fluid Updates in Arbitrary Abstract Domains |
"Fluid updates" (płynne aktualizacje?) to mechanizm stosowany przy analizie programów operujących na tablicach, przedstawiony w pracy [DDA10]. Wykorzystuje on formuły logiki pierwszego rzędu, których spełnialność weryfikowana jest przez SMT-solver. Podczas prezentacji pokażę, jak uogólnić ów mechanizm poprzez zastosowanie dowolnej dziedziny abstrakcyjnej zamiast FOL. Pozwoli to na wnioskowanie o dowolnych słownikach (niekoniecznie indeksowanych liczbami) oraz zwiększenie wydajności (poprzez zastąpienie wywołań SMT-solvera prostszymi operacjami np. na pentagonach). |
| 2011-11-07, godz. 10:15, s. 4790 |
| Krzysztof Jakubczyk (Uniwersytet Warszawski) |
| Sweeping in Abstract Interpretation |
Tym razem opowiem o swojej pracy którą prezentowałem na workshopie NSAD |
| 2011-10-24, godz. 10:15, s. 4790 |
| Andrzej Tarlecki (Uniwersytet Warszawski) |
| O semantyce specyfikacji structuralnych zorientowanej na własności |
| 2011-10-17, godz. 10:15, s. 4790 |
| Piotr Kosiuczenko (Wojskowa Akademia Techniczna) |
| Specyfikacja części nieimienniczej systemów w języku OCL |
Specyfikacja kontraktowa pozwala opisać skutki wykonania metod. Ich wykonanie zwykle zmienia niewielki fragment systemu pozostawiając resztę bez zmian. Język JML posiada mechanizm służący do specyfikacji części niezmienniczej. OCL i niektóre inne języki kontraktowej specyfikacji takich środków nie posiadają. |
| 2011-10-10, godz. 10:15, s. 4790 |
| Tadeusz Sznuk (Uniwersytet Warszawski) |
| HAHA: Hoare Advanced Homework Assistant |
| Zamierzam opowiedzieć o koncepcji narzędzia, które ma służyć do wbijania młodym ludziom do głów podstaw logiki Hoare'a. Spróbuję pokazać podstawy Eclipsowych technologii, których zamierzam użyć. Głównym celem jest zebranie uwag i pomysłów, w szczególności od osób, które przeżyły kontakt ze studentami. Oprócz tego trzeba ustalić, kto mógłby jakieś fragmenty tego narzędzia pisać oraz kto i kiedy mógłby z niego (tz. z narzędzia) skorzystać. |
| 2011-05-23, godz. 10:15, s. 4790 |
| Andrzej Tarlecki (Uniwersytet Warszawski) |
| Interface Coherence of Reactive Software Components: Solutions and Challenges |
Będzie to powtórzenie fragmentów referatu: Autor: Rolf Hennicker (Ludwig-Maximilians-Universität München) Opis: Interface coherence is a key issue in component-based software |
| 2011-05-16, godz. 10:15, s. 4790 |
| Michał R. Przybyłek (Uniwersytet Warszawski) |
| Uzupełnienia Dedekinda-MacNeilla |
| Dla dowolnego zbioru częściowo uporządkowanego P istnieje jego kowolne uzupełnienie \hat{P} do częściowego porządku posiadającego wszystkie kresy. \hat{P} można zdefiniować jako zbiór domkniętych w dół podzbiorów $P$ z naturalnie indukowanym porządkiem. Takie uzupełnienie zachowuje wszystkie istniejące kresy górne w P i żadnego nietrywialnego kresu dolnego. Analogicznie, dualna konstrukcja \hat{P}^* stanowi wolne uzupełnienie P (zachowuje wszystkie istniejące kresy dolne i żadnego nietrywialnego kresu górnego). Inteligentnie łącząc obydwie konstrukcje, możemy otrzymać uzupełnienie P (tzw. uzupełnienie Dedekinda-MacNeilla) do zbioru częściowo uporządkowanego DM(P) posiadającego wszystkie kresy i zachowującego dowolne kresy istniejące z P. Na seminarium opowiem o tym skąd te trzy konstrukcje naprawdę się biorą i w jaki sposób łączą (wielowymiarową) geometrię z (wielowymiarowymi) algebrami. |
| 2011-05-16, godz. 10:15, s. 4790 |
| Michał R. Przybyłek (Uniwersytet Warszawski) |
| Uzupełnienia Dedekinda-MacNeilla |
| Dla dowolnego zbioru częściowo uporządkowanego P istnieje jego kowolne uzupełnienie \hat{P} do częściowego porządku posiadającego wszystkie kresy. \hat{P} można zdefiniować jako zbiór domkniętych w dół podzbiorów $P$ z naturalnie indukowanym porządkiem. Takie uzupełnienie zachowuje wszystkie istniejące kresy górne w P i żadnego nietrywialnego kresu dolnego. Analogicznie, dualna konstrukcja \hat{P}^* stanowi wolne uzupełnienie P (zachowuje wszystkie istniejące kresy dolne i żadnego nietrywialnego kresu górnego). Inteligentnie łącząc obydwie konstrukcje, możemy otrzymać uzupełnienie P (tzw. uzupełnienie Dedekinda-MacNeilla) do zbioru częściowo uporządkowanego DM(P) posiadającego wszystkie kresy i zachowującego dowolne kresy istniejące z P. Na seminarium opowiem o tym skąd te trzy konstrukcje naprawdę się biorą i w jaki sposób łączą (wielowymiarową) geometrię z (wielowymiarowymi) algebrami. |
| 2011-05-09, godz. 10:15, s. 4790 |
| Aleksy Schubert (Uniwersytet Warszawski) |
| O testowaniu protokołów |
| 2011-04-11, godz. 10:15, s. 4790 |
| Jacek Chrząszcz (Uniwersytet Warszawski) |
| System do testowania klientów wielostronnych protokołów komunikacyjnych" czyli czym możemy się pochwalić po realizacji projektu RiTS |
Referat będzie próbą wykrojenia publikowalnego materiału z projektu |
| 2011-04-04, godz. 10:15, s. 4790 |
| Tadeusz Sznuk (Uniwersytet Warszawski) |
| Diagramy decyzyjne i model checking CTL |
| Zapewne nie wszystkie z poniższych tematów zdążę poruszyć, ale ogólny plan wygląda tak: * Diagramy decyzyjne (BDD): - Definicje, struktura - Operacje - Uwagi implementacyjne - Warianty * Model checking: - Definicje: modele, formuły itp. - Weryfikacja bezpośrednia - Weryfikacja symboliczna: - Za pomocą BDD - Za pomocą SAT-solvera. - Zastosowania przy weryfikacji oprogramowania |
| 2011-03-28, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| JVM w Coqu - struktury czasu wykonania |
Staram się zaimplementować w Coqu semantykę bajtkodu Javy w wersji wykorzystującej "faktoryzację" i "parametryzację" (bajtkod w 12 instrukcji). Na seminarium przedstawię definicje typów dla struktur czasu wykonania. Mam nadzieję na dyskusję i rady co do sensowności owijania wszystkiego we własne definicje, ukrywania za sygnaturą itp. |
| 2011-03-21, godz. 10:15, s. 4790 |
| Tadeusz Sznuk (Uniwersytet Warszawski) |
| SAT solvery |
| SAT-solver, jaki jest, każdy widzi. Ale nie każdy przygląda się uważnie. Dlatego zamierzam opowiedzieć, co to dokładnie jest SAT-solver i jakie problemy można za pomocą takowego rozwiązywać Postaram się omówić dość szczegółowo architekturę CDCL, czyli najpopularniejszy ostatnio rodzaj solverów, a także wspomnieć o kilku innych podejściach, i jakoś to wszystko porównać. Głównym celem prezentacji jest wywołanie dyskusji o tym, co ciekawego (tz. nowego) możnaby w tym temacie zrobić. |
| 2011-03-14, godz. 10:15, s. 4790 |
| Jędrzej Fulara (Uniwersytet Warszawski) |
| A Parametric Segmentation Functor for Fully Automatic and Scalable Array Content Analysis |
O pracy Cousot, Cousot, Logozzo z POPL2011 o takim tytule. |
| 2011-03-07, godz. 10:15, s. 4790 |
| Maciej Zielenkiewicz (Uniwersytet Warszawski) |
| Generatory niezmienników i automatyczna weryfikacja II |
| Przedstawię sposób wykorzystania narzędzia ACSAR do automatycznej weryfikacji programów w Javie operujących na tablicach i znajdowania niezmienników pętli dla tych programów. Wystąpienie zilustrowane zostanie wynikami dla przykładowych programów. |
| 2011-02-28, godz. 10:15, s. 4790 |
| Krzysztof Jakubczyk (Uniwersytet Warszawski) |
| Zwiększanie dokładności dziedziny przedziałowej |
| Abstrakcyjna dziedzina przedziałów (ang. Intervals) jest bardzo szeroko wykorzystywaną dziedziną numeryczną. Niestety nie pozwala na dokładną reprezentację sumy dwóch elementów dziedziny (czyli m.in. zbiorów rozłącznych) co wpływa na zmniejszenie dokładności analizy. Na seminarium zaprezentuję sposoby na poprawienie dokładności dziedziny przedziałowej |
| 2011-02-21, godz. 10:15, s. 4790 |
| Aleksy Schubert (Uniwersytet Warszawski) |
| Co będzie na ETAPSie |
| 2011-02-14, godz. 10:15, s. 4790 |
| Andrzej Tarlecki (Uniwersytet Warszawski) |
| Another old story: compositional property-oriented semantics for structured specifications |
Abstract: Working in an arbitrary institution, we discuss property-oriented Poza referatem na tym pierwszym po feriach spotkaniu będziemy ustalać plan referatów na drugi semestr, zachęcam do zgłaszania tematów i terminów, osobiście na seminarium lub zdalnie emailem do mnie (P.Czarnika). |
| 2011-01-17, godz. 10:15, s. 4790 |
| Jędrzej Fulara (Uniwersytet Warszawski) |
| Abstrakcyjne dziedziny do modelowania tablic |
Przedstawię swoje prace nad dziedzinami do reprezentowania zawartości tablic. Zaprezentuję dwa rozwiązania: |
| 2011-01-10, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| Bajtkod Javy w 12 instrukcjach - założenia implementacji |
| Przypomnienie idei bajtkodu Javy w 12 instrukcjach oraz założenia co do implementacji jego semantyki w Coqu. |
| 2010-12-20, godz. 10:15, s. 5850 |
| Grzegorz Marczyński (Uniwersytet Warszawski) |
| Konstrukcje architekturalne w kategorii fragmentów |
| Na seminarium opowiem o kowariantnych sygnaturach i modelach konstrukcji architekturalnych oraz o ich składaniu. Pokażę też przykłady takich konstrukcji w kategorii fragmentów sygnatur algebraicznych z zależnościami. |
| 2010-12-13, godz. 10:15, s. 5850 |
| Andrzej Tarlecki (Uniwersytet Warszawski) |
| Perspectives Workshop: Formal Methods - Just a Euro-Science? |
Opowiesci o spotkaniu w Schloss Daghstul, 1-3.12.2010. Przypominamy, że do końca grudnia seminarium odbywa się w ZMIENIONEJ SALI: 5850 |
| 2010-12-06, godz. 10:15, s. 4790 |
| Aleksy Schubert (Uniwersytet Warszawski) |
| Oparte o dedukcję narzędzia sprawdzania poprawności kodu |
| 2010-11-29, godz. 10:15, s. 4790 |
| Maciej Zielenkiewicz (Uniwersytet Warszawski) |
| Generatory niezmienników i automatyczna weryfikacja |
| Przedstawię przegląd dostępnych gotowych programów umożliwiających automatyczną (z podaniem jedynie warunków początkowych i końcowych) weryfikację programów, ze szczególnym uwzględnieniem problemu odnajdywania niezmienników dla pętli. Jako przykład ciekawego i trudnego zagadnienia przedstawione zostaną programy operujące na tablicach. |
| 2010-11-22, godz. 10:15, s. 4790 |
| Krzysztof Jakubczyk (Uniwersytet Warszawski) |
| Dziedzina abstrakcyjna opisująca mnożenie zmiennych |
| Opowiem o pracy nad nową abstrakcyjną dziedziną numeryczną pozwalającą obsłużyć mnożenie zmiennych - będą to nierówności postaci xy <= c lub xy >=c, gdzie c może być liczbą ujemną lub dodatnią. Zaprezentuję bardziej szczegółowo podstawową wersję dziedziny oraz opowiem o trudnościach powstających przy próbie obsłużenia trudniejszych przypadków (łączenie różnych wersji nierówności oraz znaku c). |
| 2010-11-15, godz. 10:15, s. 4790 |
| Jędrzej Fulara (Uniwersytet Warszawski) |
| Dziedzina abstrakcyjna 'Weighted Hexagons' |
Opowiem o aktualnych pracach związanych z dziedziną abstrakcyjną 'Weighted Hexagons'. |
| 2010-11-08, godz. 10:15, s. 4790 |
| Tadeusz Sznuk (Uniwersytet Warszawski) |
| Co ja robię tu? |
| Opiszę projekt nowego BML-a. Na razie jest to tylko projekt projektu, więc nic konkretnego raczej nie powiem. |
| 2010-10-11, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| RiTS - środowisko do testowania klientów protokołów RCS |
RiTS to wewnętrzna nazwa jednego z projektów realizowanych w ramach współpracy UW z firmą Samsung. Głównym celem projektu jest zbudowanie systemu wspierającego testowanie klientów zestawu protokoów "Rich Communication Suite". Na najbliższym seminarium opowiem pobieżnie o protokołach RCS i dokładniej o zasadach działania systemu i opracowanych w ramach projektu językach: - definiowania środowiska testowego - definiowania scenariuszy testowych. Temat RiTS będzie najprawdopodobniej kontynuowany na następnym seminarium, kiedy postaram się podać więcej szczegółów protokołów RCS i przedstawić ciekawe elementy naszej implementacji. |
| 2010-10-04, godz. 10:15, s. 4790 |
| Ustalanie listy referatów |
Po wakacyjnej przerwie zapraszamy na seminarium SLIWOWICA. W poniedziałek 4 października przewidujemy spotkanie organizacyjne, na którym ustalimy wstępną listę referatów (lub co najmniej prelegentów) na semestr zimowy. Gorąco prosimy o zgłaszanie propozycji. Osoby, które nie będą mogły się pojawić, proszę o nadesłanie propozycji mailowo, na adres czarnik@mimuw.edu.pl. |
| 2010-05-17, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| RiTS - Rich Communication Suite Network Test Server |
Projekt RiTS jest realizowany w ramach współpracy Uniwersytetu Warzawskiego z firmą Samsung Electronics. Głównym celem projektu jest zbudowanie testowego serwera zestawu usług Rich Communication Suite. W ramach projektu poznajemy i analizujemy technologie i protokoły komunikacyjne, o które oparty jest RCS. Na seminarium opowiem o standardzie RCS i usługach/protokołach wchodzących w jego skład, a także o założeniach i bieżącym statusie projektu, z naciskiem na wstępny projekt architektury systemu. |
| 2010-05-10, godz. 10:15, s. 4790 |
| Andrzej Tarlecki (Uniwersytet Warszawski) |
| SOME NUANCES OF MANY-SORTED UNIVERSAL ALGEBRA |
It has been a common belief that the standard results of universal |
| 2010-04-26, godz. 10:15, s. 4790 |
| Artur Zawłocki (Uniwersytet Warszawski) |
| Prawdziwie współbieżna (truly-concurrent) semantyka dla wariantu CSP |
Na seminarium przedstawię (w zarysie) semantykę operacyjną i
|
| 2010-04-19, godz. 10:15, s. 4790 |
| Jędrzej Fulara i Krzysztof Jakubczyk (Uniwersytet Warszawski) |
| Abstrakcyjna interpretacja nad dziedziną Weighted Hexagons |
Opowiemy jak zwykle o abstrakcyjnej interpretacji. Tym razem będziemy opisywać naszą abstrakcyjną dziedzinę numeryczną - Weighted Hexagons. Pozwala ona reprezentować:
|
| 2010-04-12, godz. 10:15, s. 4790 |
| Michał R. Przybyłek (Uniwersytet Warszawski) |
| Kategoryjna teoria instytucji |
| Na seminarium opowiem o swoich najnowszych pracach związanych z kateogryjnym podejściem do połączenia, zmieniających się wzdłuż ustalonego języka, świata teorii i świata modeli. Będzie o modułach, prorozwłóknieniach i kategoryzacji pojęcia instytucji. |
| 2010-03-29, godz. 10:15, s. 4790 |
| Tadeusz Sznuk (Uniwersytet Warszawski) |
| Generatory obligacji dowodowych |
| Zamierzam zacząc od powiedzenia, co to jest vcgen i jaką ma rolę w systemach weryfikacji. Potem omówię kilka takich systemów, w szczególności Vcc, Code contracts, KeY, Why, może też SPARK i Eiffel. |
| 2010-03-22, godz. 10:15, s. 4790 |
| Maciej Zielenkiewicz (Uniwersytet Warszawski) |
| Teoria kategorii w Naturze |
| Na seminarium pokazane zostanie, jak w naturalny sposób teoria kategorii (i topologia) znajdują zastosowanie w kwantowej teorii pola, pozwalając zarówno na ułatwienie obliczeń, jak i na budowę "uogólnionych" teorii. Przedstawione zagadnienia zostaną zilustrowane analogiami do związków teorii kategorii z logiką. Referat opiera się na pracy Johna Baeza ,,Physics, Topology, Logic and Computation: A Rosetta Stone'' (quant-ph/0903.0340). |
| 2010-03-15, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| A dozen instructions make Java bytecode |
Prerun przed Bytecode 2010. Abstrakt pracy: One of the biggest obstacles in the formalisation of the Java |
| 2010-03-08, godz. 10:15, s. 4790 |
| Aleksy Schubert (Uniwersytet Warszawski) |
| Mały bajtkod |
Aleksy opowie o wspólnej z Jackiem i Patrykiem pracy - sprowadzeniu całej funkcjonalności i wszystkich instrukcji Maszyny Wirtualnej Javy (JVM) do 12 instrukcji i zapisaniu operacyjnej semantyki małych kroków w postaci 23 reguł. Oczywiście instrukcje są sparametryzowane, aby móc reprezentować wszystkie instrukcje oryginalnego języka, a wybór 12 instrukcji jest oparty o sposób korzystania ze struktur danych JVM. Staraliśmy się pokryć cały język JVML i co najmniej umożliwić uwzględnienie wszystkich aspektów, takich jak współbieżność czy Java Memory Model. Na seminarium przedstawione zostaną też pomysły na dalsze rozwinięcie tego tematu w kierunku formalizcji tej pracy w Coqu, wykorzystania do analiz statycznych/abstrakcyjnych interpretacji, czy opracowania analogicznie "skompresowanego" języka specyfikacji dla JVM. |
| 2010-03-01, godz. 10:15, s. 4790 |
| Grzegorz Marczyński (Uniwersytet Warszawski) |
| O granicach w kategorii praporządków z morfizmami słabo odbijającymi domknięcia w dół |
Podczas seminarium opowiem o moich zmaganiach z pokazaniem istnienia wszystkich granic w kategorii Preord!, której obiekty to praporządki, zaś morfizmy spełniają dwa warunki: (1) są monotoniczne (2) słabo odbijają domknięcia w dół, czyli dla f : A -> B, a\in A, b'\in B, jeśli b'<=f(a), to istnieje a'\in A, że f(a')=b' i a'<=a Trudne okazało się zwłaszcza zdefiniowanie produktów w tej kategorii. Postaram się przystępnie przedstawić problem i podać uzasadnienie, dlaczego kategoria Preord! może być interesująca dla informatyka. |
| 2010-01-18, godz. 10:15, s. 4790 |
| Jędrzej Fulara i Krzysztof Jakubczyk (Uniwersytet Warszawski) |
| Prerun wystąpienia na SofSem 2010 |
| Będzie o automatycznym generowaniu anotacji, naszym narzędziu CodeStatistics i eksperymencie z pętlami for i decreases. |
| 2010-01-11, godz. 10:15, s. 4790 |
| Bartosz Zieliński (Wydział Fizyki i Informatyki Stosowanej, Uniwersytet Łódzki; Instytut Matematyki, PAN) |
| Polityki i modele kontroli dostępu - kontynuacja |
| Kontynuacja poprzedniego referatu, powtórka abstraktu: Omówione zostaną podstawowe pojęcia związane z bezpieczeństwem, modele kontroli dostępu, polityki bezpieczeństwa i związane z nimi problemy, m.in: rozróżnienie na uznaniową i obowiązkową kontrolę dostępu, podstawowy model macierzy dostępu, model Harisona-Ruzzo-Ullmana i jego modyfikacje, nierozstrzygalność problemu bezpieczeństwa, kontrola dostępu oparta na rolach i jej różne wersje, kontrola przepływu informacji: modele Bell-La Padula i Denninga, konflikt interesów: polityka muru chińskiego. |
| 2010-01-04, godz. 10:15, s. 4790 |
| Bartosz Zieliński (Wydział Fizyki i Informatyki Stosowanej, Uniwersytet Łódzki; Instytut Matematyki, PAN) |
| Polityki i modele kontroli dostępu |
| Omówione zostaną podstawowe pojęcia związane z bezpieczeństwem, modele kontroli dostępu, polityki bezpieczeństwa i związane z nimi problemy, m.in: rozróżnienie na uznaniową i obowiązkową kontrolę dostępu, podstawowy model macierzy dostępu, model Harisona-Ruzzo-Ullmana i jego modyfikacje, nierozstrzygalność problemu bezpieczeństwa, kontrola dostępu oparta na rolach i jej różne wersje, kontrola przepływu informacji: modele Bell-La Padula i Denninga, konflikt interesów: polityka muru chińskiego. |
| 2009-12-14, godz. 10:15, s. 4790 |
| Jędrzej Fulara i Krzysztof Jakubczyk (Uniwersytet Warszawski) |
| Analiza abstrakcyjna |
| Na seminarium opowiemy o wykorzystaniu abstrakcyjnej interpretacji do analizy kodu programów. Skupimy się na zastosowaniu jej do sprawdzania występowania błędów rzepełnienia zakresu liczb całkowitych oraz wyjścia poza zakres tablicy w języku Java. W tym celu zaprezentujemy numeryczne abstrakcyjne dziedziny wykorzystywane do statycznej analizy za pomocą abstrakcyjnej interpretacji. Opowiemy także o tworzonym przez nas narzędziu wykorzystującym powyższe techniki oraz w jaki sposób chcemy wzbogacić analizę kodu. Przy odrobinie szczęścia uda się zaprezentować narzędzie w działaniu. |
| 2009-12-07, godz. 10:15, s. 4790 |
| Artur Zawłocki (Uniwersytet Warszawski) |
| Doktorat |
| Opowiem o formalizmie, mojego autorstwa, do opisu systemów zbudowanych z komponentów, z których każdy porozumiewa się z otoczeniem za pośrednictwem akcji. Podobnie jak np. w CCS i CSP, komunikacja odbywa się przez synchronizację akcji: dwa komponenty można połączyć przez sparowanie 'wyjściowych' akcji jednego z nich, z 'wejściowymi' akcjami drugiego. Do specyfikacji komponentów używam logiki temporalnej (wariantu LTL, linear temporal logic) a za wszystkim stoi model formalny oparty o automaty (albo etykietowane systemy tranzycyjne) z pewnymi moimi rozszerzeniami. Postaram się skupić głównie na przykładzie specyfikacji, pomijając w miarę możliwości technikalia. |
| 2009-11-30, godz. 10:15, s. 4790 |
| Piotr Kosiuczenko |
| Efektywna implementacja operatora @pre/old i jej weryfikacja |
| Referat dotyczy implementacji operatorów zwracających wartość parametru sprzed wykonania operacji takich jak @pre w języku OCL oraz \old w językach JML i Spec#. Dotychczasowe implementacje nie gwarantowały żadnych ograniczeń czasowych, a nawet własności zatrzymywania się programu. Z drugiej strony sztucznie ograniczały dopuszczalne wyrażenia języka specyfikacji. Zaproponowany ostatnio algorytm unika tych problemów. W referacie przedstawiona zostanie jego aspektowo zorientowana implementacja, formalizacja oraz dowód poprawności. |
| 2009-11-16, godz. 10:15, s. 4790 |
| Grzegorz Marczyński (Uniwersytet Warszawski) |
| Sygnatury algebraiczne z porządkiem na symbolach |
| Na seminarium przedstawię wyniki mojej pracy nad sygnaturami algebraicznymi, które zawierają relację zależności pomiędzy symbolami. Pokażę też definicję kategorii fragmentów takich sygnatur, pullback-pushout uzupełnień, oraz kilku funktorów służących do "domykania" fragmentów w całości. Do tego wszystkiego postaram sie pokazać motywacje i podać przykłady. |
| 2009-11-09, godz. 10:15, s. 4790 |
| Aleksy Schubert (Uniwersytet Warszawski) |
| Co się działo na drugim światowym kongresie Formal Methods |
| Duże konferencje wyznaczają zwykle trendy w badaniach nad danym tematem. Zwłaszcza dotyczy to zaproszonych wykładów. Na referacie zaprezentuję streszczenie zaproszonych wykładów: + Formal Methods for Privacy, Jeanette Wing + What can Formal Methods bring do Systems Biology?, Wan Fokkink + Guess and Verify - Back to the Future, Colin O'Halloran + Verification Testing and Statistics, Sriram Rajamani + Security, Probability and Nearly Fair Con in the Cryptographers' Cafe, Carroll Morgan Oprócz tego będzie trochę informacji o trendach, wyzwaniach dla weryfikacji itp. |
| 2009-11-02, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| O weryfikacji bajtkodu Javy |
| Weryfikacja bajtkodu to operacja wykonywana przez większość impementacji Maszyny Wirtualnej Javy podczas ładowania klas, której celem jest sprawdzenie poprawności bajtkodu, ze szczególnym uwzględnieniem zgodności typów argumentów dla poszczególnych instruckji JVM. Na seminarium opowiem o własnych (we współpracy z Jackiem Chrząszczem i Aleksym Schubertem) próbach formalizacji weryfikacji bajtkodu w Coqu, w oparciu o Mobiusową formalizację JVM "Bicolano". |
| 2009-10-26, godz. 10:15, s. 4790 |
| Aleksy Schubert (Uniwersytet Warszawski) |
| Prerun wystąpień w Eindhoven |
| 2009-10-19, godz. 10:15, s. 4790 |
| Aleksy Schubert i Jacek Chrząszcz (Uniwersytet Warszawski) |
| Weryfikacja skompilowanych klas Javy w oparciu o specyfikację w BML - studium przypadku |
| W ramach zakończonego niedawno projektu Mobius powstało szereg narzędzi do specyfikacji i weryfikacji własności programów w Javie. Jednym z narzędzi jest generator obligacji dowodowych BMLVCGen, który na podstawie pliku ze skompilowaną klasą Javy wzbogaconą o binarne specyfikacje w języku BML generuje formuły w Coqu. Z prawdziwości tych formuł wynika poprawność pliku klasowego względem jego specyfikacji. Przedstawimy nasze przygody z dowodzeniem takich formuł wygenerowanych dla prostej klasy o nazwie Bill, zawierającej jedną metodę abstrakcyjną i jedną konkretną. |
| 2009-10-12, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| Szkoła letnia ISS-AiPL |
| W sierpniu miałem przyjemność w Edynburgu brać udział w szkole International Summer School on Advances in Programming Languages http://www.macs.hw.ac.uk/~greg/ISS-AiPL/ Na seminarium postaram się streścić 10 wykładów Szkoły :), a tak naprawdę zapewne uda się nieco dokładniej omówić niektóre tematy i rzucić okiem na hasła pojawiające się przy pozostałych. Dokładniej (uruchamiając na żywo 1-2 narzędzia) postaram się zaprezentować wykorzystywanie dostępnych we współczesnych procesorach równoległości i wyspecjalizowanych instrukcji do obliczeń na wektorach/macierzach. Być może także (już tylko na slajdach) pewne techniki do modularyzacji kodu w językach funkcyjnych. |
| 2009-10-05, godz. 10:15, s. 4790 |
| Spotkanie organizacyjne, ustalanie tematów referatów. |
| 2009-05-04, godz. 10:15, s. 4790 |
| Patryk Czarnik (Uniwersytet Warszawski) |
| Abstrakcyjne podejście do weryfikacji bajtkodu Javy |
| Weryfikacja bajtkodu to czynność przeprowadzana przez większość implementacji maszyny wirtualnej Javy podczas ładowania bajtkodu, w celu sprawdzenia poprawności programu przed jego uruchomieniem. W trakcie weryfikacji, w celu sprawdzenia poprawności typowej, przeprowadzana jest m.in. statyczna analiza przepływu danych. Bicolano to formalizacja maszyny wirtualnej oraz semantyki bajtkodu Javy opracowana w ramach projektu Mobius. Pracuję nad formalizacją algorytmu weryfikacji bajtkodu w Coqu, w oparciu o Bicolano. Moja formalizacja ma charakteryzować się tym, że algorytm nie rozpatruje bezpośrednio poszczególnych instrukcji, ale analizuje "sygnatury instrukcji" opisujące na poziomie typów jak instrukcja wpływa na stan. W połączeniu z modularną budową formalizacji, ma to ułatwić analizowanie weryfikacji bajtkodu dla różnych zestawów instrukcji i różnych hierarchii typów. Na seminarium przypomnę ogólniki, przypomnę pomysł sygnatur instrukcji oraz szczegółowo przedstawię formalizację "półkrat dobrze ufundowanych", czym zajmowałem się (razem z Jackiem) ostatnio. Przy okazji będzie coś o klasach w Coqu. |
| 2009-04-27, godz. 10:15, s. 4790 |
| Grzegorz Marczyński i Artur Zawłocki (Uniwersytet Warszawski) |
| A Heterogeneous Approach to Service-Oriented Systems Specification: Two Months Later |
| Service-oriented architecture (SOA) is a relatively new ap- proach to software system development. It divides system functionality to independent, loosely coupled, interoperable services. In this paper we propose a new heterogeneous specification approach of SOA systems where a heterogeneous structured specification consists of a number of specifications of individual services written in a "local" logic and where the specification of their interactions is separately described in a "global" logic. A main feature of our global logic is the possibility of describing the dynamic change of service communications over time. Our approach is based on the theory of institutions: we show that both logics form institutions and that these institutions are connected by an institution comorphism. We illustrate our approach by a simple scenario of an e- university management system and show the power of the heterogeneous specification approach by a compositional refinement of the scenario. |
| 2009-03-30, godz. 10:15, s. 4790 |
| Artur Zawłocki (Uniwersytet Warszawski) |
| Formalizm do specyfikacji komponentów w oparciu o logikę liniowo-temporalną -- work in progress |
| 2009-03-23, godz. 10:15, s. 4790 |
| prof. Andrzej Tarlecki (Uniwersytet Warszawski) |
| Heterogeniczne środowiska logiczne - spojrzenie instytucyjne |
| 2009-03-16, godz. 10:15, s. 4790 |
| prof. Andrzej Tarlecki (Uniwersytet Warszawski) |
| Heterogeniczne środowiska logiczne - spojrzenie instytucyjne |
| HETEROGENEOUS LOGICAL ENVIRONMENTS: AN INSTITUTIONAL VIEW We work within the theory of institutions as a framework where the theory of specification and formal software development may be presented in an adequately general and abstract way. As different logical systems may be appropriate or most convenient for specification of different modules of the same system, of different aspects of system behaviour, or of different stages of system development, we need a number of logical systems to be used in the same specification and development project. This motivates the presented research on heterogeneous logical environments and specifications built in such environments. We formalise logical systems as institutions. To enable a sensible use of a number of institutions together, in heterogeneous logical environments we link them with each other by institution morphisms or other maps between institutions, like institution comorphisms. Using them together with other standard (intra-institutional) specification-building operations, one builds heterogeneous structured specifications, which may involve a number of institutions to specify some aspects or some parts of the system, but ultimately focus at one institution of interest. One family of logical systems is suggested by UML, where system specifications typically involve a number of diagrams of different kinds, each capturing a different aspect of the system. Each kind of UML diagrams leads to a separate logical system which, at least in principle, can be formalised as an institution. Expected relationships between system properties specified by different kinds of UML diagrams may now be captured using appropriate institution maps. UML specifications, however, are quite different from focused heterogeneous specifications mentioned above. They just form a collection of specifications residing in different institutions of UML diagrams. We present a general abstract concept of a distributed heterogeneous specifcations that consist of a collection of specifications focused at various institutions in an underlying heterogeneous logical environment, linked by specification morphisms generalised by involving institution maps. Distributed heterogeneous specifications come equipped with a rather natural semantics, given in terms of compatible families of models of component specifications. This yields in the standard way a number of usual concepts: consistency, semantic consequence, and perhaps most importantly, implementation of one distributed specification by another. Each basic concept of a map between institutions can be captured by institution (co)morphisms --- as a span of (co)morphisms. Replacing a map between institutions by an appropriate span of (co)morphisms allows one to represent exactly the same relationship between institutions and their components. However, the categories of specifications that emerge in each case are different. Nevertheless, we argue that the expressive power of distributed specicfications built over them does not essentially differ. |
| 2008-12-08, godz. 10:15, s. 4790 |
| Łukasz Jancewicz (Uniwersytet Warszawski) |
| Anonimowość w BitTorrencie |
| BitTorrent jest obecnie najpopularniejszym protokołem peer-to-peer, czyli służącym do bezpośredniej wymiany plików między użytkownikami Internetu. Przyczyną takiej popularności jest jego szybkość i skalowalność, które osiąga się kosztem m.in. prywatności. W ostatnich latach, głównie z powodu pozwów o naruszenie praw autorskich, użytkownikom zaczęło bardziej zależeć, by oprócz wydajności sieć peer-to-peer oferowała również pewien stopień anonimowości, który w amerykańskim żargonie prawniczym określa się mianem "plausible deniability". W swojej prezentacji opowiem o projekcie Tribler, rozwijanym przez TU Delft w Holandii. Główne cele projektu to stworzenie działającej, w pełni rozproszonej implementacji protokołu BitTorrent, posiadającej szereg usprawnień, m.in. anonimowość, sprawiedliwość i rekomendacje treści. |
| 2008-11-17, godz. 10:15, s. 4790 |
| Piotr Kosiuczenko |
| Przepisywanie termów jako semantyczna podstawa modelowania graficznego |
| Graficzne języki modelowania, takie jak Unified Modeling Language (UML) i Specification and Description Language (SDL), są dziś powszechnie stosowane w praktyce inżynierii oprogramowania. Jednakże ich rozwój wymagał lat pracy nad notacjami w nich zawartymi oraz ich semantyką. Wiele kontrowersji wywoływało łączenie różnych notacji w jeden język oraz ich równoczesne używanie. Jednakże w miarę postępu prac nad semantyką tych języków, kontrowersje te ustały. W referacie tym przedstawię wyniki moich badań nad semantycznymi podstawami tychże języków, w szczególności zastosowanie formalizmu opartego na teorii przepisywania termów. Pomimo, że UML pozwala na graficzne modelowanie różnorodnych aspektów systemów oprogramowania, nie pozwalał on na specyfikację systemów mobilnych. W referacie zaprezentuję rozszerzenie UMLa służące do graficznego modelowania systemów mobilnych i jego semantykę oparta na przepisywaniu termów. Zarządzanie wymaganiami klienta jest jednym z podstawowych składników procesu wytwarzania oprogramowania. Pokrótce, omówię sposoby transformacji wymagań użytkownika oparte również na przepisywaniu termów. |
| 2008-11-03, godz. 10:15, s. 4790 |
| Patryk Czarnik (Instytut Informatyki, Uniwersytet Warszawski) |
| Ku abstrakcyjnemu podejściu do weryfikacji bajtkodu Javy |
| 2008-10-27, godz. 10:15, s. 4790 |
| Grzegorz Marczyński (Uniwersytet Warszawski) |
| BPMN, czyli Business Process Modeling Notation |
| Na seminarium na przykładach przedstawię notację BPMN w wersji 1.1. Postaram sie również opisać związki pomiędzy BPMN i BPEL (Business Process Execution Language). |
| 2008-10-20, godz. 10:15, s. 4790 |
| Artur Zawłocki (Uniwersytet Warszawski, Instytut Informatyki) |
| An Algebraic Semantics for Contract-based Software Components |
| Praca Michela Bidoit i Rolfa Hennickera (z AMAST 2008) Abstrakt pracy: We propose a semantic foundation for the contract-based design of software components. Our approach focuses on the characteristic principles of component-oriented development, like provided and required interface specifications and strong encapsulation. Semantically, we adopt classical concepts of mathematical logic using models, in our framework given by labelled transition systems with ``states as algebras'', sentences, and a satisfaction relation which characterizes those properties of a component which are observable by the user in the ``strongly reachable'' states. We distinguish beteween models of interfaces and models of component bodies. The latter are equipped with semantic encapsulation constraints which guarantee, that if the component body is a correct user of the required interface operations, then it can safely rely on all properties of the required interface specification. Our model-theoretic semantics of interfaces and component bodies suggests two semantic views on a component, its external and its internal semantics which must be properly related to ensure the correctness of a component. We also study a refinement relation between required and provided interface specifications of different components used for component composition. |

