Lecture 10: Specification and Verification

APL Lecture 10: Specification and VerificationThis is the first of three lectures on language techniques and tools that aim to improve program correctness: not necessarily changing what a program does, the time or space it takes, or the power it uses; but making sure that what it does is the right thing to do. Of course, that also requires having some way to identify what that is to begin with.Today’s lecture looked at the use of Hoare Logic for specifying desired behaviour, and a little about ways to confirm that a program meets a specification.

Link: Slides for Lecture 10

Homework

The lecture on Friday 31 October will be about some tools for checking Java programs, including ones that apply Hoare Logic and ideas of Design by Contract™ .

Read this: Before Friday, read this short article.

Post this: Find some information online about assertions in Java. Post information about it to the mailing list, the Facebook page, or as a comment on this blog entry.

References

ACM Turing Award 1978 - Bob Floyd Robert (Bob) W Floyd
ACM Turing Award 1978
For having a clear influence on methodologies for the creation of efficient and reliable software, and for helping to found the following important subfields of computer science: the theory of parsing, the semantics of programming languages, automatic program verification, automatic program synthesis, and analysis of algorithms.
Link: ACM Turing Award Citation
ACM Turing Award 1980 - Tony Hoare C. Antony (Tony) R. Hoare
ACM Turing Award 1980
For his fundamental contributions to the definition and design of programming languages.
Link: ACM Turing Award Citation
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s