64-bit address spaces are increasingly important for modern applications, but they come at a price: pointers use twice as much memory, reducing the effective cache capacity and m...
Data refinement is a common approach to reasoning about programs, based on establishing that te program indeed satisfies all the required properties imposed by an intended abstract...
Ivana Filipovic, Peter W. O'Hearn, Noah Torp-Smith...
Abstract. We describe a symbolic heap abstraction that unifies reasoning about arrays, pointers, and scalars, and we define a fluid update operation on this symbolic heap that rela...
—In order to spot the digits in a handwritten document, each component is sent to a classifier. This is a time consuming process because a document usually contains several hundr...
Nicola Nobile, Chun Lei He, Malik Waqas Sagheer, L...
Most implementations of the language Refal represent ground expressions by doubly-linked lists, which results in low-cost concatenation. On the other hand, that representation nece...