{'fraction_non_alphanumeric': 0.015130674002751032, 'fraction_numerical': 0.0041265474552957355, 'mean_word_length': 5.558558558558558, '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}}
Extended Z3 Array

Alk is an educational programming language intended to represent algorithms as simple as possible. The paper is targeting the problem of translating Alk array expressions inside path conditions, generated by symbolic execution, into the Z3 engine. Considering the issues caused by the complexity of Alk arrays, through their built-in methods, special operators and representation, an extended Z3 array model is designed. This model is meant to define several functions and assertions to ultimately allow a transparent translation of path conditions containing compound data type operations. The solution provided is implemented in the official Alk interpreter and displays correct and efficient translations.