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
Computador portátil a projetar imagem de sequência biológica

Curso com candidaturas até 12 dezembro.

Estudantes

As candidaturas decorrem até 08 de janeiro.

Titulo do prémio e pormenor da Ponte Vasco da Gama

As candidaturas decorrem até 09 de janeiro.

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

Curso com 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.

Ana Rita Lopes

As candidaturas decorrem até 30 de janeiro.

Ginásio "inundado" de tecnologia

Um programa único na Europa, com o objetivo de capacitar para a integração crítica, segura e eficaz de ferramentas digitais na intervenção clínica - candidaturas até 16 de janeiro.

Imagem abstrata

Neste curso, será promovida uma abordagem multidisciplinar, apresentando as descobertas mais recentes sobre o tema e desafiando a forma tradicional de considerar as associações simbióticas como exceções e não como a regra - candidaturas até 09 de janeiro.

As inscrições são grátis para funcionários e estudantes de CIÊNCIAS e da FCiências.ID, mediante a utilização do código CIENCIASFREE. 

O workshop propõe promover a partilha de estratégias metodológicas que permitam transformar as ferramentas de inteligência artificial em apoios qualificados ao trabalho docente, assegurando que complementam, e nunca substituem, a intervenção profissional, o rigor pedagógico e a intencionalidade do professor.

Pessoas a analisarem dados

Candidaturas até 13 de fevereiro.

Um curso prático, limitado a um pequeno número de participantes, destinado a quem procura formação básica em teoria e estatística macroecológica e deseja familiarizar-se com algumas das potenciais utilizações de vários métodos avançado - candidaturas até 13 de fevereiro.