Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add method to check if an EventSet is a config
authorMaxwell Pirtle <maxwellpirtle@gmail.com>
Tue, 21 Feb 2023 14:53:53 +0000 (15:53 +0100)
committerMaxwell Pirtle <maxwellpirtle@gmail.com>
Tue, 21 Feb 2023 14:53:53 +0000 (15:53 +0100)
commitd07bb8e01e3ed51410e8deacb787baa77e6d1341
treeb61ee006ed75670c2ecd4e34984f0c1704180f40
parent2d7cf98366e8cf8ae17f5c5be0c3b030fc110307
Add method to check if an EventSet is a config

A method was added that determines whether or not
some set of events (i.e. an `EventSet`) are actually
a valid configuration or not. The question of choosing
valid configurations is up to UDPOR, so while enforcing
that each and every event added to a configuration
be checked to ensure that the configuration remains
as such, it is not strictly necessary. However, it
will help us identify bugs with configurations if
and when they arise.

The key idea behind checking whether a set of events
forms a configuration is to again leverage the power
of History. If while searching through the history
of a set of events you stumble upon an event that is
not part of the original group, then you know that
said group cannot be a configuration since at least
one of the member's dependencies are not part of the
group.
src/mc/explo/udpor/EventSet.cpp
src/mc/explo/udpor/EventSet.hpp
src/mc/explo/udpor/History.cpp
src/mc/explo/udpor/History.hpp
src/mc/explo/udpor/History_test.cpp