{'fraction_non_alphanumeric': 0.015151515151515152, 'fraction_numerical': 0.0, 'mean_word_length': 5.012987012987013, '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}}
The logic of software design

The authors provide an overview of how logic can be used throughout the software development cycle, and discuss what methods can be introduced in the computer science curriculum to support software development. To see how logic is useful throughout the cycle, they present the WRSM reference model, and illustrate it with simple motivating examples. Reasoning is performed in Logic E, and PVS is used to illustrate automated proofs.