Nofar Carmeli

About


I am a researcher, employed by Inria, at the Boreal joint project-team (LIRMM, Inria, University of Montpellier, CNRS) in Montpellier, France.
My research focuses on the theory of database query optimization.

Contact.
nofar.carmeli at inria.fr
(!) I no longer have access to my old email address at cs.technion.ac.il.

Research


My research interests revolve around the theory of data management, often using fine-grained complexity and enumeration complexity. My main line of research aspires to determine, for any given query that the user wants to compute over a database, what is an algorithm that runs with optimal guarantees. So far, I focused mostly on identifying the query structures that can be answered with near-optimal time guarantees. For a full list of publications, see Google Scholar or dblp.

Recorded Talks


Date Length Topics Venue
Video 15/11/23 28:45 Direct access for conjunctive queries with aggregation Logic and Algebra for Query Evaluation workshop, Simons Institute, Berkeley
Part 1 Part 2 25/09/23 1:15:00 Enuemrating answers to join queries, CQs and UCQs Fine-Grained Complexity, Logic, and Query Evaluation workshop, Simons Institute, Berkeley
Video 29/03/22 47:00 Invited tutorial: answering UCQs with ideal time guarantees (enumeration and related problems) International Conference on Database Theory (ICDT)
Video 22/06/21 12:29 Direct access to CQ answers The Symposium on Principles of Database Systems (PODS)
Video 02/03/21 48:35 Enumerating tree decompositions, enumerating answers to CQs with FDs, enumerating answers to UCQs, and random-order enumeration. The seminar of the Formal Methods group at LaBRI, Bordeaux
Video Slides 02/01/20 16:02 Random-order enumeration and UCQs TAU Theory Fest - Fine Grained Complexity workshop, Tel Aviv
Video 01/07/19 19:29 Enumerating answers to UCQs The Symposium on Principles of Database Systems (PODS), Amsterdam
Video 16/05/17 20:00 Enumerating tree decompositions The Symposium on Principles of Database Systems (PODS), Chicago

Teaching


I taught the following classes in the computer science department of Technion in the years 2013-2019.

Combinatorics is the first class I taught, two years into my undergraduate studies, and my favorite "standard" class to teach. For me, the satisfaction in teaching comes from showing students how to think more effectively, and I enjoy the type of thinking that is at the core of this class. This class is taken by up to 350 students in normal semesters and 50 students in summer semesters. I received the Permanent Excellent Faculty Instructor Award for teaching this class in spring 2015 and winter 2016.

Competitive Programming is a very unique class where students gain experience solving problems quickly in teams of three using short programs. The problems sometimes require ad-hoc solutions, sometimes use known paradigms (such as dynamic programming, divide and conquer, clever complete search, or a greedy approach), and sometimes incorporate known algorithms involving graphs, strings, maths, computational geometry, or any topic that can be considered computer science. Teamwork is also a big component of this class as each team of three students works together on one computer to try to solve up to 10 problems in 5 hours. To this aim, it is important to identify bottlenecks, prioritize the work, and communicate effectively with the other teammates. This is where students often get hands-on experience with topics they had only learned theoretically before. A competition at the end of the semester determines which team represents the Technion in the following Southwestern Europe Regional Contest (SWERC) of the International Collegiate Programming Contest (ACM-ICPC). I took this class myself as a student, and this was undoubtedly the best class of my degree! My team then competed in SWERC 2014 in Porto. As a TA, I pushed for expanding this class significantly to equip the students with the tools and tips we gained with experience. We added an hour of teaching prior to the weekly two-hour practices, and built lessons covering what we thought are the most useful parts in each of the aspects mentioned above.

Professional Background


Rolls Held

STACS PC member (2025), PODS proceedings chair (2025), SWERC programming contest judge (2023-2024, 2020-2021), PODS PC member (2024, 2023), ICDT test-of-time award committee member (2024), BDA PC member (2023), ICDT PC member (2022), PODS publicity chair (2021), Dagstuhl seminar collector (2019).

Postdoc

École Normale Supérieure, 2021-2022

Postdoctoral researcher at the Valda (Value from Data) joint project-team (DI ENS, ENS, CNRS, PSL University, Inria).

2021-2022 Schmidt postdoctoral award.

Ph.D.

Technion, 2015-2020

Thesis: The Power of Implicit Acyclicity in the Enumeration Complexity of Database Queries. Advised by Prof. Benny Kimelfeld at Technion Data & Knowledge Laboratory.

2019-2020 Google PhD Fellowship.

2019 Summer research internship working on the Extreme Reading project with Megagon Labs.

2019 Visiting researcher at the Factorised Databases group at University of Oxford.

2018-2019 Jacobs Excellence Scholarship.

2016 Summer engineering internship with the Cultural Institute front-end team at Google Paris.
2015 Summer engineering internship with the Live Results back-end team at Google Haifa.

B.Sc. in Computer Science

Technion, 2011-2015

Member of Lapidim excellence program. Graduated summa cum laude.

2014 Built an Android app for EyeControl to helps locked-in individuals communicate using eye movements with Hello World NPO & Prize4Life.

2013 Built a prototype of real-time hand detection applied to a Pong game on a Samsung Beam cellphone with GIP lab.

2013 Exchange student at University of Toronto.

Based on a website template by w3.css