© Andrew IrelandDependable Systems Group ITI Techmedia and Technology Transfer Andrew Ireland Dependable Systems Group School of Mathematical & Computer.

Slides:



Advertisements
Similar presentations
The ideal of program correctness Tony Hoare CAVSeattleAugust 2006.
Advertisements

Secure Naming structure and p2p application interaction IETF - PPSP WG July 2010 Christian Dannewitz, Teemu Rautio and Ove Strandberg.
An Institutionally Secure Integrated Data Environment (INSIDE) By University of St Andrews & University of Durham Original Aims –the development of a sustainable.
Rolls-Royce supported University Technology Centre in Control and Systems Engineering UK e-Science DAME Project Alex Shenfield
Supporting an Essential Platform for the Knowledge Base David Harman.
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
Knowledge Transfer Partnerships Knowledge Transfer Partnerships Maximising Opportunities Simon Earp Director, University of Edinburgh Management School/
LIFE CYCLE MODELS FORMAL TRANSFORMATION
The ideal of program correctness Tony Hoare BudapestSeptember 2006.
Nicholas Moore Bianca Curutan Pooya Samizadeh McMaster University March 30, 2012.
Job No/ 1 © British Crown Copyright 2008/MOD Developing a High Integrity Code Generator Using iUML/iCCG Sam Moody AWE plc, Aldermaston, Berkshire, United.
Software Reliability CIS 640 Adapted from the lecture notes by Doron Pelel (
An Integration of Program Analysis and Automated Theorem Proving Bill J. Ellis & Andrew Ireland School of Mathematical & Computer Sciences Heriot-Watt.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Dependent Types for Reasoning About Distributed Systems Paul Sivilotti - Ohio State Hongwei Xi - Cincinnati.
Overview of the Multos construction process Chad R. Meiners.
The Systems Assurance Group Dr Jaspal Sagoo Systems Assurance Group QinetiQ Trusted Information Management Malvern Technology Centre.
5/24/011 Advanced Tool Integration for Embedded Systems Assurance Insup Lee Department of Computer and Information Science University of Pennsylvania.
Agile Manufacturing Industries From Mechatronics to Collaborative Supply Chains Industrial Technologies Aarhus, 19 June Dr. Massimo Mattucci Session.
Slide 1 Kevin Hammond, University of St Andrews Workshop on Resource Analysis Hatfield, Sept. 9th 2008 EmBounded: Automatic Prediction of Resource Bounds.
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
Architecting Secure Mobile P2P Systems James Walkerdine, Peter Phillips, Simon Lock Lancaster University.
Annual SERC Research Review, October 5-6, By Jennifer Bayuk Annual SERC Research Review October 5-6, 2011 University of Maryland Marriott Inn and.
Is Proof More Cost-Effective Than Testing? Presented by Yin Shi.
© Andrew IrelandDependable Systems Group Proof Automation for the SPARK Approach to High Integrity Ada Andrew Ireland Computing & Electrical Engineering.
© Andrew IrelandDependable Systems Group. © Andrew IrelandDependable Systems Group Proof Automation for the SPARK Approach to High Integrity Ada Andrew.
25 November 2002 DeSIRE, Pisa Methods and Tools for Formal Design and Validation Michael Butler University of Southampton
© Andrew IrelandDependable Systems Group Cooperative Reasoning for Automatic Software Verification Andrew Ireland School of Mathematical & Computer Sciences.
Copyright © Praxis Critical Systems Limited 2002 The Way Ahead Session Praxis Critical Systems Tom Anderson – The Commission’s View Discussion The Next.
(On secondment at) Praxis High Integrity Systems Bath Dependable Systems Group School of Mathematical & Computer Sciences Heriot-Watt University Edinburgh.
Proof Carrying Code Zhiwei Lin. Outline Proof-Carrying Code The Design and Implementation of a Certifying Compiler A Proof – Carrying Code Architecture.
1 New Development Techniques: New Challenges for Verification and Validation Mats Heimdahl Critical Systems Research Group Department of Computer Science.
Future & Emerging Technologies in the Information Society Technologies programme of European Commission Future & Emerging Technologies in the Information.
Framework for the Development and Testing of Dependable and Safety-Critical Systems IKTA 065/ Supported by the Information and Communication.
© Andrew IrelandDependable Systems Group Cooperative Reasoning for Automatic Software Verification Andrew Ireland Dependable Systems Group School of Mathematical.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
© Andrew IrelandDependable Systems Group Cooperative Reasoning for Automatic Software Verification Andrew Ireland School of Mathematical & Computer Sciences.
Combining Theory and Systems Building Experiences and Challenges Sotirios Terzis University of Strathclyde.
1 Why? Who? What? Jon Oberlander Director of SICSA.
© Andrew IrelandDependable Systems Group On the Scalability of Proof Carrying Code for Software Certification Andrew Ireland School of Mathematical & Computer.
© Gudmund Grov & Andrew Ireland Dependable Systems Group Planning for System Development Gudmund Grov & Andrew Ireland Dependable Systems Group School.
Bill J. Ellis Dependable Systems Group Heriot-Watt University (Project page: Proving Exception.
Page 1 Advanced Technology Center HCSS 03 – April 2003 vFaat: von Neumann Formal Analysis and Annotation Tool David Greve Dr. Matthew Wilding Rockwell.
© Andrew IrelandDependable Systems Group Static Analysis and Program Proof Andrew Ireland School of Mathematical & Computer Sciences Heriot-Watt University.
© Andrew IrelandDependable Systems Group Invariant Patterns for Program Reasoning Andrew Ireland Dependable Systems Group School of Mathematical & Computer.
Computational Logic QMUL 26 Mar 04 Verification of Safety Critical Software Nick Tudor tel:
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
© Andrew IrelandDependable Systems Group Proof Automation for the SPARK Approach to High Integrity Ada Andrew Ireland Computing & Electrical Engineering.
Seven Myths of Formal Methods - by Anthony Hall, Praxis Systems Presented by Shanmughapriya Senthil.
The EU framework programme for research and innovation.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
SPADEase: The Good, the Bad and the Ugly Bill J Ellis Dependable Systems Group School of Mathematical & Computer Sciences Heriot-Watt University Edinburgh.
HACNet Simulation-based Validation of Security Protocols Vinay Venkataraghavan Advisors: S.Nair, P.-M. Seidel HACNet Lab Computer Science and Engineering.
Version 02U-1 Computer Security: Art and Science1 Correctness by Construction: Developing a Commercial Secure System by Anthony Hall Roderick Chapman.
Emily Nott Relationship Manager - Research Councils IT Community Summit 3 April 2008 Technology Strategy Board V
© Andrew IrelandGrand Challenges for Computing Research 2004 The Verifying Compiler Andrew Ireland Dependable Systems Group School of Mathematical & Computer.
Lectures 2 & 3: Software Process Models Neelam Gupta.
© Andrew IrelandDependable Systems Group The Use of Patterns to Guide Code Certification: A Proposal Andrew Ireland School of Mathematical & Computer Sciences.
© Andrew IrelandDependable Systems Group Increasing Automation for Exception Freedom Proofs Andrew Ireland School of Mathematical & Computer Sciences Heriot-Watt.
Bill J. Ellis Dependable Systems Group Heriot-Watt University (Project page: Proving Exception.
Copyright 1999 G.v. Bochmann ELG 7186C ch.1 1 Course Notes ELG 7186C Formal Methods for the Development of Real-Time System Applications Gregor v. Bochmann.
Modelling and implementation of correct by construction healthcare workflows Petros Papapanagiotou Jacques Fleuriot This research is supported by EPSRC.
Research Methods Dr. X.
Cooperative Reasoning for Automatic Software Verification
A Verification Condition Visualizer
Andrew Ireland Dependable Systems Group
Proof Automation for the SPARK Approach to High Integrity Ada
Automatic Software Verification: A Renaissance
Activities of Formal Methods
Presentation transcript:

© Andrew IrelandDependable Systems Group ITI Techmedia and Technology Transfer Andrew Ireland Dependable Systems Group School of Mathematical & Computer Sciences Heriot-Watt University Edinburgh

© Andrew IrelandDependable Systems Group The Story So Far … NuSPADE and SPADEase A follow-on knowledge transfer project – EPSRC RAIS Scheme (CTA GR/T11289/01) Embedded Bill Ellis (RA) within Praxis for 6 months SPADEase: extends SPADE Simplifier with the proof planning (and program analysis) techniques prototyped via NuSPADE

© Andrew IrelandDependable Systems Group ITI Techmedia Aims to bring Scotland to the forefront of the global market for digital media and communications technology Pseudo-venture capitalists, sponsored by Scottish Executive Funding level for projects: £3M to £10M Return on funding: ITI own IP arising from technology transfer phase

© Andrew IrelandDependable Systems Group Big Picture

© Andrew IrelandDependable Systems Group The Proposal Automated Security Engineering: a suite of related technologies that aim to ensure key security properties of software systems by automatic analysis and certification Techniques: advanced type inference, proof carrying resource guarantees, security protocols analysis, proof planning and program analysis

© Andrew IrelandDependable Systems Group The Players Mobile Resource Guarantee: Don Sannella Mathematical Reasoning Group: Alan Bundy Dependable Systems Group: Andrew Ireland

© Andrew IrelandDependable Systems Group Progress To Date Technology Opportunity Review – Howard Chivers (Cranfield) Review covered background technology and fact gathering from university partners and potential partner companies Positive outcome, focus on proof planning and software verification in the first instance

© Andrew IrelandDependable Systems Group The SPARK Approach Supports data & information flow analysis and formal verification via code level annotations Supports “correctness-by-construction” and is advocated by US National Cyber Security Partnership (April 2004) Applications include SHOLIS: UK MoD’s first Def Standard project

© Andrew IrelandDependable Systems Group Commonality in “New Wave” Focus on property based reasoning Mechanized abstraction Greater integration of reasoning tools

© Andrew IrelandDependable Systems Group The SPARK Approach A subset of Ada that eliminates potential ambiguities and insecurities (Praxis) Supports data & information flow analysis and formal verification via code level annotations Supports “correctness-by-construction” and is advocated by US National Cyber Security Partnership (April 2004) Applications include SHOLIS: UK MoD’s first Def Standard project

© Andrew IrelandDependable Systems Group NuSPADE Results Our evaluation was based upon examples drawn from industrial data provided by Praxis, e.g. SHOLIS SPADE Simplifier is very effective on exception freedom VC, i.e. typical hit-rate of 92% NuSPADE targeted the VCs which the SPADE Simplifier failed to prove, i.e. loop-based code While critical software is engineered to minimize the number and complexity of loops, we found that 80% of the loops we encountered were provable using NuSPADE

© Andrew IrelandDependable Systems Group What Next? Looking to deploy SPADEase during a “live” SPARK development project Longer term – we see SPADEase helping to shape the next generation of SPADE proof tools

© Andrew IrelandDependable Systems Group Future Horizons Mechanized Proof Tactic Adaption for Dependable Systems Evolution – MOD/EPSRC/QinetiQ Trusted software components in SPARK – collaboration with Kung-Kiu Lau and Praxis Perfect Developer – Heriot-Watt summer student in collaboration with Escher Technologies Reasoning about pointer programs: Lilia’s focus on description logics and bounded model checking (CSL05 and SEFM05); Andrew’s focus on separation logic and proof planning.

© Andrew IrelandDependable Systems Group Related Projects Mechanized Extraction & Analysis of Real-time Properties: Ben Gorry (research student) EPSRC Industrial Case Studentship with QinetiQ Andrew Ireland & Peter King Verifying the Correctness of HUME programs : Gudmond Grov (research student) Andrew Ireland & Greg Michaelson EU EmBounded Project – “Automatic Prediction of Resource Bounds for Embedded Systems” – Heriot-Watt, St Andrews, Ludwig Maximillian, Blaise-Pascal, AbsInt GmbH E1.5M

© Andrew IrelandDependable Systems Group Conclusion A new wave of formal verification tools is emerging - integrated tools that support property based verification of software NuSPADE and SPADEase are part of this “new wave” SPADEase in particular has demonstrated that proof planning can make an impact within industry