{'fraction_non_alphanumeric': 0.02998965873836608, 'fraction_numerical': 0.001034126163391934, 'mean_word_length': 5.54054054054054, '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}}
Institutions, property-aware programming and testing

The institution notion is a general model theoretic framework, explaining how specifications (algebraic axioms) relate to models (mathematical models or even software constructions) in a formalism-independent manner. There is a large set of institution-independent structuring mechanisms for specifications. Property aware programming, as e.g. supported by concepts in C++0X, provides algebraic axioms as part of the code to ensure correctness of generic software composition. Testing is very important for the validation of software, but tests are all too often developed on an ad hoc basis.
 Here we present a library testing framework, with a basis in structured specifications. The approach will be demonstrated on Sophus, a medium-sized software library for coordinate-free numerics. Sophus was developed using (informal) algebraic specifications in order to improve reusability and reduce development costs.