RSS Meetup

Programming joins, simply and efficiently

Sala 6.3.27, CIÊNCIAS ULisboa

Por Fritz Henglein (DIKU, U. Copenhagen).

Os RSS Meetups são encontros mensais dos membros do LASIGE com interesses de investigação principalmente em Arquitetura de Software, Verificação, Testes, Linguagens de Programação, Sistemas de Tipos, Lógica, Concorrência e Métodos Formais. Todos são bem-vindos, incluindo estudantes e não investigadores.


Abstract: One often has to program relational joins on program data, that is computing the relation (collection) { (x1, …, xn) | F } where F is a relational first-order logic formula built from conjunction over predicate symbols representing input relations.  Examples are classical binary joins such as the the products sold by salespeople or the set of triangles { (x1, x2, x3) | R(x1,2) and R(x2, x3) and R(x3, x1)}  in a graph (binary relation) R.   

We show that all joins are easy to program efficiently using elementary programming techniques: Building nested read-only dictionaries, always iterating over a dictionary with the smallest domain, and nested iteration over the variables x1, …, xn in any order. Employing amortized complexity analysis on inputs padded with ghost data and a weak property of the Atserias-Grohe-Marx fractional edge covering bound we show that this constitutes a simply programmed  worst-case optimal join algorithm.  The algorithm can be considered a simplified version of Generic Join where one step is left out.  We illustrate the resulting 10 line source code for triangles in Python and a corresponding Haskell program and show that these execute multiple orders of magnitude faster on a 'difficult’ class of data than piping the data through any of a number of common SQL engines.

This is joint work with Changjun Li, Mikkel Kragh Mathiesen and Mads Rehof.

Bio: Fritz Henglein's research interests are in semantic, logical and algorithmic aspects of programming languages, specifically type inference, type-based program analysis, algorithmic functional programming and domain-specific languages, and the application of programming language technology, presently in enterprise systems (Project 3gERP and health care process modeling - Project TrustCare).

After undergraduate studies at Technische Universität München, he obtained his Ph.D. from Rutgers University and joined New York UniversityUtrecht University and DIKU, the Department of Computer Science at the University of Copenhagen. After starting Hafnium ApS to keep the Y2K bug at bay and being on the start-up faculty of the IT University of Copenhagen to increase IT proficiency, he rejoined DIKU as professor with special duties in programming languages. He is now head of the algorithms and programming languages group at DIKU. His goal is to contribute to the development of software that comes with technical and legal guarantees of having no defects (which should be considered a very modest ambition indeed).

13h30
LASIGE Computer Science and Engineering Research Centre
Dois participantes em anterior edição da Feira da Matemática

A Feira da Matemática regressa ao MUHNAC e conta, um vez mais, com a participação de vários docentes de CIÊNCIAS!

Pessoa a observar as estrelas

Conheça os aventureiros que expandem os limites da descoberta em todo o mundo.

MISSÃO RAMbo: um percurso em caminhada de sensibilização para a Resistência aos Antimicrobianos (RAM), que decorrerá no Anfiteatro Keil do Amaral, com um percurso de 5,4 km e com possibilidade de trazer o seu melhor amigo (um cão por pessoa).

Título "Turin Staff Week 2025", sobre fotografia da cidade de Turim

Uma oportunidade única para desenvolver competências, criar redes internacionais e conhecer de perto uma das instituições parceiras da aliança Unite! - inscrições até 21 de setembro.

Logótipo da Semana da Ciência e da Tecnologia 2025

Na Semana da Ciência e da Tecnologia, entre 24 e 30 de novembro 2025, a ciência será novamente a grande protagonista.

Título do programa, fotografia de túnel e logótipo da Rede Alumni CIÊNCIAS

As candidaturas estão abertas de 24 de novembro de 2025 a 8 de janeiro de 2026.

Seminário de Lógica Matemática, por Stephen Mackereth (Dartmouth College, Society of Fellows and Department of Philosophy).

Seminário do Centro de Física Teórica e Computacional, por Caren Norden (Gulbenkian Institute for Molecular Medicine, Oeiras, Portugal).

Workshop no âmbito do Programa de Saúde e Bem-Estar da ULisboa.

Quatro investigadores num laboratório

O curso visa capacitar investigadores, docentes e técnicos para integrar os princípios da economia circular em ambientes laboratoriais académicos - candidaturas até 22 de novembro.

Vista aérea de povoação

A conferência é subordinada ao tema “People and Planet: How the Environment Shapes Human Health”.

Grupo de estudantes

27 de novembro: A Cerimónia contará com a intervenção do Secretário de Estado Adjunto e do Trabalho, Adriano Rafael Moreira.

Três investigadores num laboratório

O curso visa capacitar profissionais para aplicar os princípios da economia circular em ambientes laboratoriais industriais, promovendo práticas sustentáveis e eficientes - candidaturas até 22 de novembro.

O evento tem como objetivo aproximar a ciência da sociedade, promovendo o diálogo aberto e a reflexão conjunta sobre temas ligados à mente, cérebro e cognição.

Título "Gostarias de realizar uma mobilidade Erasmus+?" e fotografia de estudante

Candidaturas de 01 a 31 de dezembro - as sessões informativas têm início a 19 de novembro.

Logótipo C-Academy

O curso fornece uma compreensão abrangente dos princípios e práticas fundamentais da cibersegurança e da privacidade, com aplicação tanto em contextos genéricos como em sistemas críticos - candidaturas até 07 de novembro.

Logótipo C-Academy

O curso proporciona uma visão aprofundada das tecnologias que suportam o desenvolvimento e integração de aplicações web - candidaturas até 10 de novembro.

Cesto com legumes

O curso tem como principal objetivo capacitar para a implementação e gestão sustentável de espaços de cultivo nas cidades, promovendo a segurança alimentar e a autonomia na produção de alimentos - candidaturas até 02 de novembro.

Natal 2025

Uma oportunidade única de estudantes e professores do ensino secundário dialogarem diretamente com especialistas de várias áreas científicas.

Vida marinha

O Projeto ULISSES está de volta para a 6.ª edição! As candidaturas decorrem até 15 de dezembro.

Computador portátil a projetar imagem de sequência biológica

O curso visa a aquisição de conhecimentos sobre as ferramentas bioinformáticas disponíveis para efetuar análises de sequências de DNA e proteínas, bem como a autonomia e espírito crítico na utilização dessas ferramentas. Procura igualmente desenvolver competências na utilização de software de bioinformática disponível gratuitamente na Internet e na interpretação do significado biológico dos resultados - candidaturas até 12 dezembro.

Representação de pessoa a interagir com tecnologia

O curso introduz o conceito de Digital Twins e a sua aplicação estratégica no contexto do serviço público, com foco na modernização digital, otimização de processos e apoio à decisão - candidaturas até 11 de janeiro.

Bola de cristal colocada no solo

O curso tem como objetivo apresentar aos participantes um estado da arte atualizado sobre a diversidade da biota do solo e os papéis funcionais desempenhados pelos organismos do solo nos principais processos ecológicos - candidaturas até 19 de dezembro.

Imagem exemplificativa da área da deteção remota

Este curso avançado tem como objetivo fornecer acesso e ferramentas para a aquisição e processamento de dados de deteção remota para diferentes aplicações, usando imagens multiespectrais de satélite, drone, terrestres e LiDAR, com foco na caracterização da vegetação e da paisagem, bem como das suas mudanças ao longo do tempo - candidaturas até 19 de dezembro.

Duas pessoas a interagirem num contexto de realidade virtual

O curso explora o potencial da Realidade Virtual (VR) e Aumentada (AR) como ferramentas inovadoras nos processos de onboarding e desenvolvimento de competências - candidaturas até 25 de janeiro.

Páginas