Abstract
The formalism of algebraic specifications allows to specify data types and software systems independent from their representation and without reference to any particular machine configuration or operating system available. They are,with respect to semantics,independent from technological changes (other than most programming languages for example) and build a reliable basis for documentation and implementation. Indeed, the fact that we can write specifications and know about their meaning is a great achievement, but it is only part of what algebraic specifications do provide: They may be viewed as an axiomatization of the theory of the data type they specify. In this respect they admit formal theorem proving and give rise to automatization of correctness and validation of formal properties. On the other hand they can be considered as input of an interpreter which formally evaluates terms thus producing normal form terms which may be serving as representations of data. These two aspects are the reason that we discuss in this chapter the equational calculus for proving equations from specifications, and the term rewriting with equations for deriving terms from terms. Actually the equational calculus and term rewriting with equations are closely related, and we will see that they can simulate each other.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.