Abstract :
Current CAD tools represent and manipulate structure. Behaviour is only represented indirectly and inflexibly. Tools which can manipulate behaviours will provide the engineer with a new level of design assistance. The author developing formal methodologies for system-level design which are amenable to machine support. Theorem proving technology is now capable of specifying and verifying the behaviour of digital systems whose behaviour is so complex that exhaustive simulation is not feasible. However, theorem-proving methods are not accessible to the engineer, and are not integrated with existing CAD tools. Moreover, almost all published examples of verification are post hoc-verification only starts once the design is complete. The authors´ approach integrates proof and design; starting from a specification, a proof of correctness is generated as a by-product of the design process. He uses the same relational representation of behaviour, established in previous work on verification, but the author´s proof tools are particularly adapted to purpose. This provides a new approach to the problems of high-level synthesis and design assistance