Run-Time Event Calculus
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples Add toy example source Jun 13, 2016
src resolved issue with concurrent initiations and terminations May 3, 2018
.gitignore Add gitignore Jul 21, 2015
LICENSE Initial commit Jul 21, 2015


RTEC: Run-Time Event Calculus.

RTEC is an extension of the Event Calculus that supports highly-scalable stream processing. It is written in Prolog and has been tested under YAP 6.2.


RTEC comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions; see the GNU Lesser General Public License v3 for more details.


  • Interval-based.
  • Sliding window reasoning.
  • Interval manipulation constructs for non-inertial fluents.
  • Caching for hierarchical knowledge bases.
  • Support for out-of-order data streams.
  • Indexing for robustness to irrelevant data.

File Description

To run RTEC you need the files in the /src directory.

The /examples directory is optional and includes CE patterns and sample datasets from the applications of RTEC.



RTEC has been used for event recogniton for:

  • City transport & traffic management.
  • Public space surveillance.
  • Maritime surveillance.

Complete datasets for some of these applications are available from my site.

Related Software

  • OLED: Online Learning of Event Definitions. OLED automatically constructs Event Calculus rules, such as complex event patterns, from annotated data streams.
  • LoMRF: Library for Markov Logic Networks. LoMRF supports Event Calculus reasoning under uncertainty.
  • ScaRTEC: A Scala implementation of RTEC.