Recent Posts

More Posts

Getting started with the Pharo programming language by implementing the story from the introduction of the tv-show “The Fresh Prince of Bel-Air”.


An introduction to the Flutter framework for creating applications, by building an app for reading “Meditations” by Marcus Aurelius.


A quick tutorial on the functional logic programming language Curry using an example League of Legends champion recommending system.


Enhance your organizing, documentation and planning with this Org-mode tutorial featuring the hero Cyborg.


A tutorial to logic programming using miniKanren and core.logic by representing and using the allegory based Tamarian language from the Start Trek Next-Generation Episode Darmok.




Machine enabled compliance checking in the legal and financial domain.

Smart software for managing and understanding industrial assets.

Using Semantic Web based technologies to create smarter, automated clinical software.

The automated analysis of software using ontologies and dynamic program information.

Selected Publications

Ensuring compliance with various laws and regulations is of utmost priority for financial institutions. Traditional methods in this area have been shown to be inefficient. Manual processing does not scale well. Automated efforts are hindered due to the lack of formalization of domain knowledge and problems of integrating such knowledge into software systems. In this work we propose an approach to tackle these issues by encoding them into software contracts using a Controlled Natural Language. In particular, we encode a portion of the Money Market Statistical Reporting (MMSR) regulations into contracts specified by the clojure.spec framework. We show how various features of a contract framework, in particular clojure.spec, can help to tackle issues that occur when dealing with compliance: validation with explanations and test data generation. We benchmark our proposed solution and show that this approach can effectively solve compliance issues in this particular use case.
Presented at DECLARE 19, 2019

Understanding and analysing large scale clinical knowledge bases is a problem, due to explicit domain specific information is often missing and/or incomplete. Furthermore, such knowledge sources are often large enough that manual techinques to add such information is an complex and expensive process. In this work an approach was presented to turn such knowledge sources into full fledged, semantically enabled, analytics and decision support systems. This approach was demonstrated using a large laboratory dataset.
In 2014 IEEE BigData, 2014

Semantic Web technologies can enable semantic aware solutions such as decision support systems, even in mobile environments. However the mobile platform has some very specific constraints that provides challenges to such tools, in particular reasoners. In this work a framework is presented to benchmark and evaluate such tools and is used to compare mobile reasoning performance.
In 2014 ISWC, 2014

Semantic Web technologies can enable semantic aware solutions such as decision support systems. In order to make use of such technologies in mobile environments, effective and efficient mobile reasoners are needed. As there was a lack of benchmark information on rule reasoners in mobile settings, a test suite based on Atrial Fibrillation decision support was created. Using this rule set 4 different mobile reasoners were evaluated and compared.
In 2014 IEEE WI-IAT, 2014

Assistive technologies in mobile and smart environments, have their unique challenges due to mobility, failure tolerance and privacy. In particular Clinical Decision Support Systems (CDSS), that can assist health professionals and patients in such context, pose difficulties for implementations. In this work, an approach is demonstrated with which these constraints can be overcome. This approach has been successfully validated for a Sleep Apnea CDSS.
In AAAI-14, 2014

The analysis of execution traces, logs of the running program, is a commonly used dynamic analysis. By using ontologies, a formal and machine understandable way of representing knowledge, we can improve upon existing techniques to understand and analyze such execution traces.
In RV ‘11, 2011

An ontology based approach for using Dynamic Analysis was presented. Dynamic Analysis is the analysis of a running program. By using ontologies, a formal and machine understandable way of representing knowledge, Dynamic Analysis can be improved. This proposed approach was demonstrated by an example based on Frequency Spectrum Analysis.
In WODA ‘10, 2010

Recent Publications

. Solving Financial Regulatory Compliance Using Software Contracts. Presented at DECLARE 19, 2019.

PDF Project

. Integrating existing large scale medical laboratory data into the semantic web framework. In 2014 IEEE BigData, 2014.

PDF Project

. A cross-platform benchmark framework for mobile semantic web reasoning engines. In 2014 ISWC, 2014.

PDF Project

. A comparison of mobile rule engines for reasoning on semantic web based health data. In 2014 IEEE WI-IAT, 2014.

PDF Project

. Execution Trace Exploration and Analysis using Ontologies. In RV ‘11, 2011.

PDF Project

. An Approach for Modeling Dynamic Analysis using Ontologies. In WODA ‘10, 2010.