Teaching
Courses I teach/have taught:
Algorithms for Massive Data (Ca’ Foscari - CM0622)
Material:
- [Pre] My notes on sketching and streaming algorithms.
- [Nav] Compact Data Structures: A Practical Approach. Gonzalo Navarro.
- [Cha] Data Stream Algorithms. Lecture Notes. Amit Chakrabarti.
- [Dem-Fin] Algorithms for Data Streams. Demetrescu-Finocchi.
2022/2023 programme:
- 15/02/2023 - course intro, asymptotic notation [Nav, sec 1.5]
- 17/02/2023 - basics of information theory [Nav, sec 2.1 - 2.5]
- 01/03/2023 - Shannon-Fano, Huffman, variable length codes, bitvectors [Nav, sec 2.6 - 2.9, 4.1.1]
- 03/03/2023 - zero-order compressed bitvector with access and rank [Nav, sec 4.1.1, 4.2, slides]
- 04/04/2023 - very sparse bitvectors (Elias-Fano) [Nav 4.4, slides], intro to compressed indexing [slides]
- 08/03/2023 - Compressed suffix array (CSA) [Nav 11.1, slides]
- 10/03/2023 - Wavelet trees [Nav 6.2, slides] and Burrows-Wheeler transform [Nav 11.3.1, slides]
- 11/03/2023 - FM index [NAV 11.2, slides]
- 15/03/2023 - Recap of probability theory [Pre 1.1]
- 17/03/2023 - Concentration bounds [Pre 1.2], Introduction to hashing [Pre 1.3]
- 24/03/2023 - k-wise independent and universal hashing, hash tables [Pre 1.3]
- 25/03/2023 - hash tables (cont) [Pre 1.3], Bloom filters [Pre 2.1]
- 29/03/2023 - Counting Bloom filters [Pre 2.2]
- 31/03/2023 - Quotient Filters [Pre 2.3]
- 05/04/2023 - Rabin hashing [Pre 3.1], MinHash - min-wise permutations [Pre 3.2.1]
- 07/04/2023 - minHash [Pre 3.2.2], sketching for Hamming distance [Pre 3.3], LSH [Pre 3.5]
- 12/04/2023 - Locality-Sensitive Hashing (LSH), Nearest Neighbor Search (NNS) [Pre 3.5]
- 14/04/2023 - Intro to streaming, cardinality estimation with MinHash, Reservoir sampling [Pre ch. 4 intro], [Dem-Fin ch. 8]
- 19/04/2023 - Pattern matching on streams: Karp-Rabin, Porat&Porat [Pre 4.1.1, 4.1.2]
- 21/04/2023 - Approximate pattern matching on streams (Hamming distance) [Pre 4.1.2]
- 26/04/2023 - Probabilistic counting: Morris’ algorithm, Median trick [Pre 4.2]
- 28/04/2023 - Cardinality estimation: idealized FM, bottom-k [Pre 4.3]
- 03/05/2023 - Frequency estimation, Misra-Gries [Cha unit 1], second order moment, Tug-Of war, dimensionality reduction [Cha unit 7]
- 05/05/2023 - Sum integers in a window: DGIM algorithm [Pre 4.4]
Compressed data structures (Ca’ Foscari)
Algorithms for massive data (University of Udine)
My notes on sketching and streaming algorithms. PhD in Computer Science, Mathematics, and Physics / School for Advanced Studies of the university of Udine, AA 2021/2022, 2022/2023, 2023/2024.
Programmazione e laboratorio (Ca’ Foscari)
link: Programmazione e laboratorio. Ca’ Foscari, Venezia, secondo semestre AA 2020/2021 - 2021/2022 - 2022/2023 - 2023/2024.
Data management (Ca’ Foscari)
link: Data management 2020/2021. Ca’ Foscari, Venezia, secondo semestre AA 2020/2021.
Informatica per i beni culturali (Ca’ Foscari)
links:
- Informatica per i beni culturali 2021/2022. Ca’ Foscari, Venezia, primo semestre AA 2021/2022.
- Informatica per i beni culturali 2020/2021. Ca’ Foscari, Venezia, primo semestre AA 2020/2021.
Informatica (LUISS)
link: Informatica. LUISS Guido Carli, Roma, secondo semestre AA 2019/2020.
Laboratorio di Fondamenti di Programmazione (Università di Pisa)
links:
- Laboratorio di Fondamenti di Programmazione 2019/2020. University of Pisa, primo semestre AA 2019/2020.
- Laboratorio di Fondamenti di Programmazione 2018/2019. University of Pisa, primo semestre AA 2018/2019.
Other:
-
International summer school on Compact data structures. Universidade da Coruña (Spain). July 30 - August 17, 2018, 6 ECTS. Lecturers: Travis Gagie and Nicola Prezza.
-
Compact data structures. PhD course. Technical University of Denmark (DTU), Kgs. Lyngby. September - December 2017.
-
Summer school: Aligning DNA sequences on compressed collections of genomes. The CODATA-RDA Research Data Science Applied workshops on Extreme sources of data, Bioinformatics and IoT/Big-Data Analytics, ICTP, Trieste. July 2017.
-
Laboratorio di Architettura degli Elaboratori. 3 ECTS. University of Udine. Fall 2015.
-
Laboratorio di Architettura degli Elaboratori. 3 ECTS. University of Udine. Fall 2014.
-
Sequence Analysis for Epigenomics. 2nd Bioinformatics Introductory Course, Polo d’Innovazione Genomica, Genetica e Biologia, Perugia.
Me, Travis, Gonzalo (and his book!), and our wonderful class at the Compact data structures summer school in Coruña (2018) |