7 research outputs found
Contracts of Reactivity
We present a theory of contracts that is centered around reacting to failures and explore it from a general assume-guarantee perspective as well as from a concrete context of automated synthesis from linear temporal logic (LTL) specifications, all of which are compliant with a contract metatheory introduced by Benveniste et al. We also show how to obtain an automated procedure for synthesizing reactive assume-guarantee contracts and implementations that capture ideas like optimality and robustness based on assume-guarantee lattices computed from antitone Galois connection fixpoints. Lastly, we provide an example of a “reactive GR(1)” contract and a simulation of its implementation
A ‘Best-of-Breed’ approach for designing a fast algorithm for computing fixpoints of Galois Connections
The fixpoints of Galois Connections form patterns in binary relational data, such as object-attribute relations, that are important in a number of data analysis fields, including Formal Concept Analysis (FCA), Boolean factor analysis and frequent itemset mining. However, the large number of such fixpoints present in a typical dataset requires efficient computation to make analysis tractable, particularly since any particular fixpoint may be computed many times. Because they can be computed in a canonical order, testing the canonicity of fixpoints to avoid duplicates has proven to be a key factor in the design of efficient algorithms. The most efficient of these algorithms have been variants of the Close-By-One (CbO) algorithm. In this article, the algorithms CbO, FCbO, In-Close, In-Close2 and a new variant, In-Close3, are presented together for the first time, with in-Close2 and In-Close3 being the results of breeding In-Close with FCbO. To allow them to be easily compared, the algorithms are presented in the same style and notation. The important advances in CbO are described and compared graphically using a simple example. For the first time, the algorithms are implemented using the same structures and techniques to provide a level playing field for evaluation. Their performance is tested and compared using a range of data sets and the most important features identified for a CbO ‘Best-of-Breed’. This article also presents, for the first time, the ‘partial-closure’ canonicity test
Parallelization of formal concept analysis algorithms
Formal Concept Analysis provides the mathematical notations for representing concepts and
concept hierarchies making use of order and lattice theory. This has now been used in
numerous applications which include software engineering, linguistics, sociology, information
sciences, information technology, genetics, biology and in engineering. The algorithms
derived from Kustenskov's CbO were found to provide the most efficient means of computing
formal concepts in several research papers. In this thesis key enhancements to the original
CbO algorithms are discussed in detail. The effects of these key features are presented in both
isolation and combination. Eight different variations of the CbO algorithms highlighting the
key features were compared in a level playing field by presenting them using the same notation
and implementing them from the notation in the same way. The three main enhancements
considered are the partial closure with incremental closure of intents, inherited canonicity test
failures and using a combined depth first and breadth first search. The algorithms were
implemented in an un-optimized way to focus on the comparison on the algorithms themselves
and not on any efficiencies provided by optimizing code.
One of the findings were that there is a significant performance improvement when partial
closure with incremental closure of intents is used in isolation. However there is no significant
performance improvement when the combined depth and breadth first search or the inherited
canonicity test failure feature is used in isolation. The inherited canonicity test failure needs
to be combined with the combined depth and breadth first feature to obtain a performance
increase. Combining all the three enhancements brought the best performance.
The main contribution of the thesis are the four new parallel In-Close3 algorithms. The shared
memory algorithms Direct Parallel In-Close3, the Queue Parallel In-Close3 algorithm and the
Distributed Memory In-Close3 algorithm showed significant potential. The shared memory
algorithms were implemented using OpenMP and the distributed memory algorithm was
implemented using MPI. All implementations were validated and showed scalability.
Experiments were carried to test the features of the parallel algorithms and their
implementations using the UK National Super Computer Archer and Colfax Clusters. The
thesis presents the key parallelization strategies used and presents experimental results of the
parallelization