Core Informatics

A Helmholtz Pilot Program

In the information age, computers are a major driver of progress in all areas of research, technology, economy, and society. Thus, high quality software and hardware (correct, dependable, secure, efficient, with sophisticated functionality, fair, . . . ) becomes a genuine subject of provisional research and a matter of technological sovereignty. Therefore, core informatics was established by the Helmholtz Association to research on generic (yet application-oriented) methods of informatics.

Core informatics is divided into three research areas:

  • Area 1: Algorithm and Software Engineering
  • Area 2: Data Analysis, Machine Learning and HCI
  • Area 3: Systems – Hardware, Networking and Networked Systems

Participating organisations

Karlsruhe Institute of Technology (KIT)

Team

Related software

ArDoCo

AR

ArDoCo (Architecture Documentation Consistency) is a framework to connect architecture documentation and models while identifying missing or deviating elements (inconsistencies). An element can be any representable item of the model like a software component.

Updated 13 months ago
10 5

CorC

CO

With CorC, we implemented an IDE to create programs following the Correctness-by-Construction approach. Starting with an abstract specification, CorC supports CbC developers in refining a program by a sequence of refinement steps and in verifying the correctness of these refinements.

Updated 5 months ago
18 5

Global Benchmark Database (GBD)

GL

GBD is a comprehensive suite of tools for provisioning and sustainably maintaining benchmark instances and their metadata for empirical research on hard algorithmic problem classes.

Updated 7 months ago
6 4

KaGen - Communication-free Massively Distributed Graph Generators

KA

Network generators help to provide synthethic instances with controllable parameters by algorithm developers and researchers. KaGen provides generators for a large variety of network models, which are communication-free by making use of pseudorandomization and divide-and-conquer schemes.

Updated 3 months ago
50 9

KaHyPar

KA

KaHyPar is a fast, high-quality, and scalable algorithm for partitioning graphs and hypergraphs with billions of edges. It finds applications in minimizing communication costs for distributed (hyper)graph computations, quantum circuit simulations, storage sharding in databases, and VLSI design.

Updated 15 months ago
159 6

KaMPIng - Karlsruhe MPI next generation

KA

KaMPIng is a flexible and (near) zero-overhead C++ wrapper for MPI, covering the whole range of abstraction levels from low-level MPI calls to convenient STL-style bindings. This allows for both rapid prototyping and highly engineered distributed algorithms.

Updated 3 months ago
1 8

KaRRi - Karlsruhe Rapid Ridesharing

KA

KaRRi is a state-of-the-art dispatcher for the dynamic taxi sharing problem with meeting points. KaRRi utilizes highly engineered many-to-many shortest path queries to compute optimal assignments of riders to vehicles and according meeting points within milliseconds.

Updated 6 months ago
2

KeY

KE

KeY is a deductive verification system for Java programs

Updated 7 months ago
1005 30

KeYmaera X

KE

An aXiomatic Tactical Theorem Prover for Hybrid Systems

Updated 3 months ago
358 16

Mallob

MA

Automated Reasoning in HPC and Cloud Environments: Scheduling, Solving, Proving

Updated 2 months ago
12 1

Palladio

PA

Palladio is a software architecture simulation approach which analyses software at the model level for performance bottlenecks, scalability issues, reliability threats, and allows for subsequent optimisation.

Updated 1 month ago
750 3

pasta::bit_vector

PA

This header-only library contains a highly tuned (uncompressed) bit vector implementation with multiple space efficient rank and select support data structures. Our fastest rank and select support has a space overhead of only ~3.51% and makes use of data level parallelism via SIMD instructions.

Updated 7 months ago
7

ShockHash

SH

A perfect hash function is a function that has no collisions on a given set. ShockHash constructs very compact perfect hash functions significantly faster than previous approaches.

Updated 3 months ago

SicHash

SI

A perfect hash function is a function that has no collisions on a given set. SicHash places objects in a cuckoo hash table and then stores the final hash function choice of each object in a retrieval data structure. Using irregular cuckoo hashing, each object has a different number of hash functions

Updated 3 months ago

Vitruvius

VI

View-based System Development on Consistent Models

Updated 1 month ago
136 6