{'fraction_non_alphanumeric': 0.01556420233463035, 'fraction_numerical': 0.0, 'mean_word_length': 5.176, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Towards Proved Distributed Algorithms through Refinement, Composition and Local Computations

The design and the proof of distributed algorithms are difficult tasks due to the lack of knowledge of the global state and the non determinism in the execution of the processes. Formal methods can guarantee that these algorithms run as designed. In this paper, we show that the proof of complex distributed algorithms can be simplified by combining already proved sub-algorithms. To do so, we use a high level encoding of distributed algorithms in form of graph relabeling systems and we propose a formal proof methodology. The proposed methodology combines refinement and decomposition techniques and relies on the correct-by-construction paradigm used by the Event-B method.