Zabýváte se oborem, jehož náplň si mnoho lidí obtížně představí. V čem spočívá práce na poli teoretické informatiky?
Jde o oblast na rozhraní aplikované matematiky a informatiky a její záběr je opravdu široký. Zahrnuje například návrhy algoritmů, datových struktur, programovacích jazyků nebo formálních matematických modelů výpočetních systémů, které umožňují zkoumat vlastnosti výpočetních procesů bez toho, aby se přímo zkoušely na počítačích. Výsledkem takové analýzy je pak hlubší poznání toho, jaké úlohy lze pomocí počítačů v principu řešit, kolik to vyžaduje času a paměti, jestli se daný algoritmus chová za všech okolností správně a podobně. O tyto znalosti se opírají veškeré moderní informační technologie. Určitá zvláštnost oproti klasickým přírodním vědám jako biologie nebo chemie je to, že i negativní výsledky typu „tohle nejde“ mohou mít značný praktický význam.
Například?
Například technologie digitálního podpisu využívá šifrování pomocí veřejného klíče. Veřejný klíč je v principu jen zápisem velmi dlouhého čísla, které vzniklo jako součin dvou „velkých“ prvočísel. Pokud bychom znali tato dvě prvočísla, mohli bychom zfalšovat digitální podpis vlastníka veřejného klíče. Dané číslo (veřejný klíč) samozřejmě lze rozložit na součin prvočísel pomocí počítačového programu tak, že postupně vyzkoušíme všechny možné dělitele. Pro „velká“ čísla je ovšem počet potřebných operací dělení tak velký, že to ani nejrychlejší počítače v rozumném čase nezvládnou. Z hlediska bezpečnosti celého šifrování je velmi důležité vědět, zda existuje nějaký lepší algoritmus, s jehož pomocí lze prvočíselný rozklad spočítat rychle. Je přitom zřejmé, že doufáme v negativní odpověď, tedy že to nejde. Není bez zajímavosti, že tato konkrétní otázka dosud není uspokojivě vyřešena a pořádný matematický důkaz „neprolomitelnosti“ technologie digitálního podpisu nemáme. Je dokonce znám model hypotetického výpočetního zařízení (kvantový počítač), na kterém lze prvočíselný rozklad zjistit rychle. Možnost reálné konstrukce kvantového počítače je ovšem věcí vzdálené budoucnosti.
V roce 2005 jsme spolu s dalšími českými pracovišti získali v rámci programu 1M podporu pro založení národního výzkumného centra Institut teoretické informatiky (ITI). Ačkoliv to tak podle názvu nevypadá, jde o centrum aplikovaného výzkumu zaměřené na fundamenty soudobých informačních technologií. Přímá spolupráce s průmyslem je zde základní podmínkou už proto, že část nákladů centra přichází právě od průmyslových partnerů. Z jejich pohledu se jedná o určitou formu investice, která se má v nějaké podobě vrátit. Výsledky této spolupráce musí být ovšem zdarma dostupné komukoliv, není tedy možné spolupracovat na vývoji konkrétních komerčních produktů. Tyto požadavky vypadají na první pohled protikladně, nicméně se nám po určitém úsilí podařilo nalézt racionální a fungující model spolupráce. Vycházíme vždy z konkrétních problémů, které naformuluje průmyslový partner. Pokud se nám v nich na základě dalších jednání podaří identifikovat dostatečně zajímavá a nosná témata pro výzkum akademického typu, vznikne společný projekt. Tato fáze jednání je zpravidla velmi netriviální a základním předpokladem úspěchu je vstřícnost a ochota obou partnerů nalézt společnou řeč.
Jak práce na takovém projektu potom probíhá dál?
Za vedení každého projektu je zodpovědný některý pracovník centra, typicky absolvent doktorského studia. Ten řídí řešitelský tým, který se skládá ze zaměstnanců a studentů. Jádro řešitelského týmu je zpravidla tvořeno právě studenty. Ti tak získávají možnost zapojit se do zajímavé práce, osvojí si řadu prakticky užitečných poznatků nad rámec standardní výuky a vytvoří si i konkrétní představu o tom, jak to chodí v praxi. Pro partnerskou firmu pak mají hodnotu nejen výstupy projektu, ale i přímé kontakty na vysoce kvalifikované lidi, jejichž odborný profil může firma ovlivnit právě zaměřením společných projektů. Vzniká tak vcelku vyvážený a symbiotický vztah, který je výhodný pro všechny zúčastněné.
Jaká jsou například témata projektů, o nichž jste mluvil?
Jeden z dlouhodobých projektů je zaměřen na formální analýzu programů v imperativních jazycích, zejména v jazyce C. Prvotním impulzem od partnerské firmy, který vedl ke vzniku tohoto projektu, byl seznam několika typů chyb, které se při vývoji a údržbě aplikací často objevují a jejichž detekce a oprava je velmi nákladná. Konkrétně šlo o problémy spojené s dynamickou alokací paměti a nekonzistentním používáním zámků. Vznikl tak koncept projektu zaměřeného na automatickou detekci chyb tohoto typu. Zadání projektu bylo postupně dopracováno a upřesněno tak, aby byl výsledný softwarový nástroj použitelný obecněji a aby byl snadno rozšiřitelný. Do práce na vývoji nástroje se pak zapojili studenti, kteří vše zrealizovali. Funkcionalita nástroje byla testována na zdrojovém kódu starších verzí jádra operačního systému Linux a řadu chyb se podařilo dohledat plně automaticky.
Jak se vám sháněli partneři do projektů?
Různě. Se společností ANF DATA (Siemens Group) proběhlo první jednání tak, že jsem si vzal bílou košili, sako a kravatu a šel do sídla firmy přesvědčit manažery, že navázání dlouhodobé spolupráce s námi je dobrou investicí. Nebylo to úplně jednoduché, ale povedlo se to. Informatika má v tomto směru velkou výhodu a speciálně v Brně, protože tady zastoupení IT firem rostou jako houby po dešti a všichni potřebují kvalifikované lidi. Spolupráce na výzkumných projektech dává těmto firmám šanci zaujmout schopné studenty již během studia a nepřímo ovlivnit profil jejich vzdělání směrem, který potřebují. Jelikož s realizací společného projektu musí souhlasit všechny zúčastněné strany a nikdo nemá přímé nástroje k tomu, aby svého partnera k něčemu nutil, vzniká přirozeným způsobem stav, který je výhodný pro všechny – školu, firmu i studenty.
Jak jste se dostal ke studiu informatiky?
Na střední škole mě bavila matematika a fyzika. Informatiku mi doporučil můj strýc, protože už v předlistopadové době bylo obtížné uživit se „čistou“ matematikou. Studoval jsem na Přírodovědecké fakultě, po doktorátu na Fakultě informatiky se mi podařilo získat stipendium Humboldtovy nadace a strávil jsem tak dva roky na Technické univerzitě v Mnichově. Pobýval jsem také jinde, jezdil jsem učit do Uppsaly do Švédska.
Jak to ve Švédsku ve výuce teoretické informatiky funguje?
Jsou tu značné rozdíly, které asi nejsou specifické jen pro informatiku. Studenti mají poměrně solidní „servis“, ale zase většinou udělají, co se po nich chce. Zadával jsem například domácí úkoly a požadoval, aby řešení vypracovali samostatně ve skupinkách po dvou až třech lidech. Výsledkem bylo dvacet zcela různých řešení. Podobný experiment realizovaný později na naší fakultě skončil katastrofou, vznikla zhruba tři řešení v různých obměnách. Také organizace výuky je odlišná. Semestr je rozdělen na dvě části, ve kterých probíhá intenzivní výuka menšího počtu předmětů. Studenti tak mají souběžně jen dva až tři předměty, zato je během týdne více přednášek téhož předmětu a také příslušná cvičení. Navíc jsou dobře nastaveny mechanismy, které studenty nutí k tomu, aby se průběžně učili. Tento systém je výhodný také pro pedagogy, kteří zpravidla učí jen během jedné poloviny semestru. Během té druhé se mohou věnovat výzkumu, odcestovat a podobně.
Vedete také několik doktorandů.
Ano, mám jich několik a měl jsem v tomto směru štěstí. Jsem velmi rád, že se nám s pomocí centra ITI podařilo vytvořit nejen solidní bázi pro spolupráci s průmyslem, ale také podmínky pro to, abychom přitáhli nejlepší magisterské studenty k vědecké práci, která může, ale nemusí souviset s tematikou projektů řešených ve spolupráci s průmyslem. Záběr činnosti národního výzkumného centra je – a musí být – širší. Kvalita dosažených vědeckých výsledků musí obstát ve srovnání s předními pracovišti ve světě a hlavním měřítkem je samozřejmě kvalita a množství publikací. Myslím, že se nám to celkem daří, a mám velkou radost z toho, že značný podíl na tom mají právě doktorští studenti (dva z nich, Tomáš Brázdil a Radek Pelánek, obdrželi cenu rektora – pozn. red.). Daří se nám také „zaháčkovat“ nejlepší studenty magisterského studia, a to relativně brzo, typicky během třetího nebo čtvrtého ročníku. Například mí dva noví studenti, kteří nastoupili v lednu, už mají publikace ve sbornících velmi prestižních konferencí a v impaktovaném časopise (jeden z těchto studentů, Václav Brožek, obdržel cenu rektora – pozn. red.).
Mluvil jste také o spolupráci s Humboldtovou nadací.
Ano, to je náš další větší projekt – Humboldtova nadace jej sponzoruje v rámci programu pro podporu spolupráce institucí a získali jsme ho společně s profesorem Javierem Esparzou, který působí na Technické univerzitě v Mnichově. Na tomto projektu je velmi zajímavý způsob administrativního zajištění. Řešitelé totiž nemusí prakticky nic. O veškerou agendu se stará nadace, požadována je pouze stručná zpráva o průběhu řešení, a to jednou za dva roky. Rozpočet je koncipován na tři až pět let, nejsou stanoveny žádné regule ohledně toho, kolik peněz máme utratit ročně a v jaké struktuře. Způsob čerpání je také velmi jednoduchý, v principu stačí napsat jeden e-mail. Kéž by se tím chtěl inspirovat někdo další.
Co se vám na matematice líbí?
Matematika se začne člověku líbit ve chvíli, kdy zjistí, že to do sebe zapadá a že spousta věcí, které vypadají složitě, je ve skutečnosti jednoduchá. Toto poznání je bohužel nepřenositelné, každý k tomu musí dojít sám…
Dost se diskutuje o zařazení matematiky jako povinného předmětu k maturitě. Zastánci zařazení matematiky argumentují tím, že matematiku na určité úrovni by měl ovládat každý, že to patří k nutnému základu. Co si o tom myslíte?
Mám zajímavou zkušenost z Francie – byl jsem hostujícím profesorem na ENS de Cachan, což je výběrová škola ve Francii. Přijímají typicky jednoho ze sta uchazečů. Studenti se pak stávají státními zaměstnanci a dostávají plat podle příslušné tarifní třídy, takže se během studia nemusí o nic starat. A tam jsem se dozvěděl, že jakýsi „předstupeň“ ke studiu na ENS je intenzivní kurs matematiky a fyziky, který se vyučuje v podstatě jen proto, aby se posluchačům „zformovaly mozkové závity“ tak, jak je potřeba. Osobně si myslím, že je správné předkládat dětem a mladým lidem dostatečně těžké problémy a nějak je přimět, aby se o řešení alespoň pokusili. Matematika je v tomto směru určitě dobrý nástroj.
Jak ale zlomit odpor některých lidí k matematice? Jak k ní přitáhnout víc lidí?
O odporu k matematice toho moc nevím. Já nenáviděl češtinu a dějepis.