ValueAdd jest to firma zajmująca się profesjonalnym wytwarzaniem oprogramowania. Podczas prelekcji zaprezentowane zostanie czym zajmuje się ValueAdd, jaka jest misja, wizja firmy oraz jakimi wartościami kieruje się na co dzień . Pokrótce omówione zostaną obecne i byłe projekty wraz z ich beneficjentami. Właściciel firmy opowiedzą jak wygląda struktura organizacji i skład osobowy. Ważnym punktem prezentacji będzie możliwość rozpoznania na jakich płaszczyznach możliwa jest ewentualna współpraca w przypadku realizowania projektów wspólnie z pracownikami naukowymi. Do tego celu zaprezentowane zostaną wykorzystywane technologie, proces tworzenia oprogramowania i zarządzania projektami oraz dostępne na dzień dzisiejszy kompetencje.
14.01.2019 - Seminarium Instytutowe - godz. 13:00,
Będzie to wykład lekki i łatwy, jakkolwiek nie zawsze przyjemny, zwłaszcza gdy o konsekwencjach tytułowego natarcia pomyśleć. Wszakże konsekwencjom tym poświęcimy bardzo mało miejsca, skupiając się na opowiedzeniu, czym sztuczna inteligencja jest. Celem wykładu będzie pokazanie, że SI (używając anglojęzycznego, bardziej popularnego skrótu, AI) nigdy nie wykroczy poza to, co oferuje – i oferować będzie – paradygmat maszynowego uczenia się (niektórzy wolą powiedzieć, uczenia maszynowego). Oraz że jej siła tkwi w naszym – i, co nieporównanie ważniejsze, świata biznesu i polityki – nieokiełznanym pragnieniu korzystania z osiągnięć uczenia maszynowego wszędzie i zawsze. O tym wszystkim postaram się opowiedzieć za pomocą anegdot, a nie wzorów.
10.12.2018 - Seminarium Instytutowe - godz. 13:00,
Czy można sobie wyobrazić, by klient kupujący samochód podpisywał zrzeczenie się wszelkich praw do roszczeń (ang. disclosure), gdyby wady techniczne samochodu miały narazić go na szkody? Chyba nie. To dlaczego w przemyśle IT jest to powszechny standard? Moim zdaniem ten paradoks bierze się stąd, że podczas gdy każdy produkt techniczny powstaje na gruncie matematycznych obliczeń stanowiących swoisty „dowód jego poprawności”, to w informatyce takich dowodów przeprowadzać nie umiemy. Problem pozyskiwania matematycznych gwarancji poprawności programów pojawił się po raz pierwszy w pracy Alana Turinga w roku 1949. Później przez kilka dekad podejmowano ten temat pod hasłem dowodzenia poprawności programów, a równolegle też próby definiowania takich semantyk języków programowania, które byłyby podstawą do prowadzenia dowodów poprawności. Niestety w żadnym z obu obszarów nie dopracowano się metod, które weszłyby na stałe do repertuaru narzędzi inżynierii oprogramowania. Wreszcie zaniechano tych badań, co autorzy mo-nografii Deductive Software Verification z roku 2016 podsumowali stwierdzając (tłumaczenie moje): Przez wiele lat pojęcie formalnej weryfikacji było niemalże synonimem weryfikacji funkcjonalnej. W ostatnich latach staje się coraz bardziej jasne, że pełna funkcjonalna weryfikacja programu jest dla prawie wszystkich zastosowań celem iluzorycznym. W mojej ocenie niepowodzenie opisanych wyżej prób miało dwa źródła: Po pierwsze, dla większości istniejących języków programowania zapewne nie da się zbudować takiej semantyki, która mogłaby służyć do praktycznego dowodzenia poprawności programów. To oczywiście tylko opinia, ale fakt, że od 1949 roku tego nie udało się tego dokonać, o czymś jednak świadczy. Po drugie, nawet gdyby taką semantykę zbudowano, to dla większości programów dowodów po-prawności nie da się przeprowadzić z prostego powodu, że one poprawne nie są! Stąd też praktyczną wartość dowodzenia poprawności upatrywano w nadziei, że próba dowodzenia poprawności programu wskaże na zawarte w nim błędy. W trakcie seminarium przedstawię pewną nową propozycję podjęcia problemu poprawności pro-gramów, a także wyjaśnię, dlaczego wymaga to „odwrócenia tradycyjnej kolei rzeczy”. Choć moja propozycja jest oparta na dość specyficznej matematyce, postaram się przedstawić ją w sposób strawny dla osób, które tej matematyki mogą nie znać. A tym, którzy chcieliby do niej sięgnąć, proponuję moją książkę (w stanie surowym) „Denotacyjna inżynieria języków programowania”, którą mogę udostęp-nić w wersji cyfrowej. Z jej wydaniem na razie się nie spieszę, by zebrać jak najwięcej opinii czytel-ników. I oczywiście, za wszelkie takie opinie będę niezmiernie wdzięczny. http://www.moznainaczej.com.pl/inzynieria-denotacyjna
26.11.2018 - Seminarium Instytutowe - godz. 13:00,
Abstract: SELENE is a recently proposed voting protocol that provides reasonable protection against coercion. Both verifiability and security of Selene are based on cryptographic machinery applied to the concept of tracking numbers assigned to votes. In this paper, we make the first step towards a formalization of selected features of the protocol by means of formulae and models of multi-agent logics. The models define the space of strategies for the voters, the election authority, and the potential coercer. We express selected properties of the protocol using the strategic logic ATLir, and conduct preliminary verification by model hecking. While ATLir allows for intuitive specification of requirements like coercion-resistance, model checking of ATLir is notoriously hard. We show that some of the complexity can be avoided by using a recent approach of approximate model checking, based on fixpoint approximations.
22.10.2018 - Seminarium Instytutowe - godz. 13:00,
Camille Coti, Sami Evangelista, Laure Petrucci: One-Sided Communications and Distributed State Compression for Distributed Model-Checking
Abstract: Communications are often the bottleneck in distributed state space exploration. To overcome this problem and benefit from the distributed model-scheme, we propose to use one-sided communications. We thus revisit the state of the art distributed algorithm and adapt it to RDMA clusters with an implementation over the OpenSHMEM library. Experiments conducted on the Grid'5000 cluster show that this asynchronous approach reduces the significant communication costs induced by process synchronisation in two-sided communications. To further improve distributed model checking, we propose a distributed implementation of the collapse compression technique used by explicit state model checkers to reduce memory usage. This adapatation makes use of lock-free distributed hash tables based on one-sided communication primitives. The experiments reveal that, for some models, this distributed implementation can altogether preserve the memory reduction provided by collapse compression and reduce execution times by allowing the exchanges of compressed states between processes.