MEMOCODE: Formal Methods and Models for Co-Design