A Certified Reduction Strategy for Homological Image Processing

Size: px
Start display at page:

Download "A Certified Reduction Strategy for Homological Image Processing"

Transcription

1 A Certified Reduction Strategy for Homological Image Processing M. Poza, C. Domínguez, J. Heras, and J. Rubio Department of Mathematics and Computer Science, University of La Rioja 19 September 2014 PROLE 14 Partially supported by Ministerio de Educación y Ciencia, project MTM C02-01, and by European Commission FP7, STREP project ForMath, n J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 1/24

2 Goal Motivation Goal A formally-verified and efficient method to analyse digital images. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 2/24

3 Motivation Goal Goal A formally-verified and efficient method to analyse digital images. A motivating example: counting synapses Synapses are the points of connection between neurons. Relevance: Computational capabilities of the brain. Procedures to modify the synaptic density may be an important asset in the treatment of neurological diseases. An automated, efficient, and reliable method is necessary. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 2/24

4 Counting Synapses Motivation Counting Synapses J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 3/24

5 Counting Synapses Motivation Counting Synapses J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 3/24

6 Counting Synapses Motivation Counting Synapses J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 3/24

7 Motivation Algebraic Topology and Digital Images Algebraic Topology and Digital Images Digital Image Homology groups H 0 = Z Z H 1 = Z Z Z Simplicial Complex C 0 = vertices C 1 = edges C 2 = triangles Chain Complex J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 4/24

8 Motivation Algebraic Topology and Digital Images Algebraic Topology and Digital Images Digital Image Homology groups H 0 = Z Z H 1 = Z Z Z Simplicial Complex C 0 = vertices C 1 = edges C 2 = triangles Chain Complex J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 4/24

9 Motivation Algebraic Topology and Digital Images Algebraic Topology and Digital Images Digital Image Homology groups H 0 = Z Z H 1 = Z Z Z Simplicial Complex C 0 = vertices C 1 = edges C 2 = triangles Chain Complex J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 4/24

10 Motivation Algebraic Topology and Digital Images Algebraic Topology and Digital Images Digital Image Homology groups H 0 = Z Z H 1 = Z Z Z Simplicial Complex C 0 = vertices C 1 = edges C 2 = triangles Chain Complex J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 4/24

11 Motivation Algebraic Topology and Digital Images Algebraic Topology and Digital Images Digital Image Homology groups H 0 = Z Z H 1 = Z Z Z Simplicial Complex C 0 = vertices C 1 = edges C 2 = triangles Chain Complex J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 4/24

12 Motivation Interactive Proof Assistants Interactive Proof Assistants What is an Interactive Proof Assistant? Software tool for the development of formal proofs. Man-Machine collaboration: Human: design the proofs. Machine: fill the gaps. Examples: Isabelle, Hol, ACL2, Coq,... J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 5/24

13 Motivation Interactive Proof Assistants Interactive Proof Assistants What is an Interactive Proof Assistant? Software tool for the development of formal proofs. Man-Machine collaboration: Human: design the proofs. Machine: fill the gaps. Examples: Isabelle, Hol, ACL2, Coq,... Applications: Mathematical proofs: Four Colour Theorem. Feit-Thompson Theorem. Kepler conjecture. Software and Hardware verification: C compiler. AMD5K86 microprocessor. sel4: operating-system kernel. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 5/24

14 Coq/SSReflect Motivation Interactive Proof Assistants Coq: An Interactive Proof Assistant. Based on Calculus of Inductive Constructions. Interesting feature: program extraction from a constructive proof. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 6/24

15 Coq/SSReflect Motivation Interactive Proof Assistants Coq: An Interactive Proof Assistant. Based on Calculus of Inductive Constructions. Interesting feature: program extraction from a constructive proof. SSReflect: Extension of Coq. Developed while formalising the Four Colour Theorem by G. Gonthier. It has been used in the formalisation of the Feit-Thompson Theorem. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 6/24

16 Motivation Problem Problem Goal A formally-verified (using Coq) and efficient method (from Algebraic Topology) to analyse digital images. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 7/24

17 Motivation Problem Problem Goal A formally-verified (using Coq) and efficient method (from Algebraic Topology) to analyse digital images. Problem Coq is not designed for computing, but for proving. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 7/24

18 Motivation Problem Problem Goal A formally-verified (using Coq) and efficient method (from Algebraic Topology) to analyse digital images. Problem Coq is not designed for computing, but for proving. Demo. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 7/24

19 Outline A Reduction Algorithm 1 A Reduction Algorithm 2 The Role of Haskell 3 Conclusions and Further Work J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 8/24

20 Outline A Reduction Algorithm 1 A Reduction Algorithm 2 The Role of Haskell 3 Conclusions and Further Work J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 9/24

21 General Idea A Reduction Algorithm Digital Image triangulation Simplicial Complex graded structure properties Chain Complex construction Matrices computing reduction Homology J. Heras, M. Dénès, G. Mata, A. Mörtberg, M. Poza, and V. Siles. Towards a certified computation of homology groups. In proceedings 4th International Workshop on Computational Topology in Image Context. Lecture Notes in Computer Science, 7309, pages 49 57, J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 10/24

22 A Reduction Algorithm General Idea Digital Image triangulation Simplicial Complex graded structure properties Chain Complex construction Matrices computing reduction Homology Concrete Goal Formalise an algorithm that reduces the information but keeps the homological properties. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 10/24

23 Discrete Morse Theory A Reduction Algorithm A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

24 Discrete Morse Theory A Reduction Algorithm A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

25 Discrete Morse Theory A Reduction Algorithm A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

26 Discrete Morse Theory A Reduction Algorithm A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

27 Discrete Morse Theory A Reduction Algorithm A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

28 Discrete Morse Theory A Reduction Algorithm A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

29 Discrete Morse Theory A Reduction Algorithm A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

30 A Reduction Algorithm Discrete Morse Theory A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, From a digital image, we construct 2 incidence matrices: Vertex-Edge matrix. Edge-Triangle matrix. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

31 A Reduction Algorithm Discrete Morse Theory A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, From a digital image, we construct 2 incidence matrices: Vertex-Edge matrix. Edge-Triangle matrix. Compute an admissible discrete vector field dvf. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

32 A Reduction Algorithm Discrete Morse Theory A. Romero and F. Sergeraert. Discrete Vector Fields and Fundamental Algebraic Topology, From a digital image, we construct 2 incidence matrices: Vertex-Edge matrix. Edge-Triangle matrix. Compute an admissible discrete vector field dvf. Use dvf to reduce the matrices: Vertex-Edge matrix: Edge-Triangle matrix: J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 11/24

33 A Reduction Algorithm Formalised Results Two main results have been formalised: The Coq s implementation of Romero-Sergeraert s is correct. Given incidence matrices and a discrete vector field for them, we can reduce the size of the matrices preserving their homological properties. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 12/24

34 A Reduction Algorithm Formalised Results Two main results have been formalised: The Coq s implementation of Romero-Sergeraert s is correct. Given incidence matrices and a discrete vector field for them, we can reduce the size of the matrices preserving their homological properties. Coq development: 45,000 lines of code, 2,500 theorems, and 1,700 definitions. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 12/24

35 A Reduction Algorithm Formalised Results Two main results have been formalised: The Coq s implementation of Romero-Sergeraert s is correct. Given incidence matrices and a discrete vector field for them, we can reduce the size of the matrices preserving their homological properties. Coq development: 45,000 lines of code, 2,500 theorems, and 1,700 definitions. Coq development about homology of digital images: 3,800 lines of code, 260 theorems, and 200 definitions. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 12/24

36 Outline The Role of Haskell 1 A Reduction Algorithm 2 The Role of Haskell Fast Proof Prototyping Improving the Performance of the Computations 3 Conclusions and Further Work J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 13/24

37 Outline The Role of Haskell Fast Proof Prototyping 1 A Reduction Algorithm 2 The Role of Haskell Fast Proof Prototyping Improving the Performance of the Computations 3 Conclusions and Further Work J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 14/24

38 The Role of Haskell Fast Proof Prototyping Fast Proof Prototyping 3rd Workshop on Mechanizing Metatheory (2008) The use of proof assistants in programming language research is still not commonplace: the available tools are confusingly diverse, difficult to learn, inadequately documented, and lacking in specific library facilities required for work in programming languages. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 15/24

39 The Role of Haskell Fast Proof Prototyping Fast Proof Prototyping 3rd Workshop on Mechanizing Metatheory (2008) The use of proof assistants in programming language research is still not commonplace: the available tools are confusingly diverse, difficult to learn, inadequately documented, and lacking in specific library facilities required for work in programming languages. Proof assistants have improved in the last few years, but they are not there yet. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 15/24

40 The Role of Haskell Fast Proof Prototyping From computation to verification through testing Haskell as programming language. QuickCheck to test the programs. Coq/SSReflect to verify the correctness of the programs. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 16/24

41 The Role of Haskell Fast Proof Prototyping From computation to verification through testing Haskell: Algorithm (gen adm dvf ) Input: A matrix M. Output: An admissible discrete vector field for M. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 17/24

42 The Role of Haskell Fast Proof Prototyping From computation to verification through testing Haskell: Algorithm (gen adm dvf ) Input: A matrix M. Output: An admissible discrete vector field for M. QuickCheck: A specification of the properties which our program must verify. Testing them: Towards verification. Detect bugs in early stages. > quickcheck M -> admissible (gen_adm_dvf M) OK, passed 100 tests J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 17/24

43 The Role of Haskell Fast Proof Prototyping From computation to verification through testing Haskell: Algorithm (gen adm dvf ) Input: A matrix M. Output: An admissible discrete vector field for M. QuickCheck: A specification of the properties which our program must verify. Testing them: Towards verification. Detect bugs in early stages. > quickcheck M -> admissible (gen_adm_dvf M) OK, passed 100 tests Coq/SSReflect: SSReflect Theorem: Theorem gen_adm_dvf_is_admissible (M : seq (seq Z2)) : admissible (gen_adm_dvf M). J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 17/24

44 Outline The Role of Haskell Improving the Performance of the Computations 1 A Reduction Algorithm 2 The Role of Haskell Fast Proof Prototyping Improving the Performance of the Computations 3 Conclusions and Further Work J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 18/24

45 The Role of Haskell Improving the Performance of the Computations How much is the performance improved? 500 randomly generated matrices: Initial size of the matrices: Time: 12 seconds. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 19/24

46 The Role of Haskell Improving the Performance of the Computations How much is the performance improved? 500 randomly generated matrices: Initial size of the matrices: Time: 12 seconds. After reduction: Size of matrices: Time: milliseconds. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 19/24

47 The Role of Haskell Improving the Performance of the Computations How much is the performance improved? 500 randomly generated matrices: Initial size of the matrices: Time: 12 seconds. After reduction: Size of matrices: Time: milliseconds. Problem For bigger matrices, the reduction process takes a lot of time. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 19/24

48 Solution The Role of Haskell Improving the Performance of the Computations Use Haskell as an Oracle: J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 20/24

49 Solution The Role of Haskell Improving the Performance of the Computations Use Haskell as an Oracle: 1 Detect computational bottlenecks. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 20/24

50 The Role of Haskell Improving the Performance of the Computations Solution Use Haskell as an Oracle: 1 Detect computational bottlenecks. 2 When an expensive computation is required, call Haskell. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 20/24

51 The Role of Haskell Improving the Performance of the Computations Solution Use Haskell as an Oracle: 1 Detect computational bottlenecks. 2 When an expensive computation is required, call Haskell. 3 Check in Coq that the result is correct. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 20/24

52 The Role of Haskell Improving the Performance of the Computations Solution Use Haskell as an Oracle: 1 Detect computational bottlenecks. 2 When an expensive computation is required, call Haskell. 3 Check in Coq that the result is correct. 4 Continue the computation in Coq. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 20/24

53 The Role of Haskell Improving the Performance of the Computations Solution Use Haskell as an Oracle: 1 Detect computational bottlenecks. 2 When an expensive computation is required, call Haskell. 3 Check in Coq that the result is correct. 4 Continue the computation in Coq. Example (Inverse of a matrix): Problem related to handling big datastructures. Given a matrix M, compute (in Haskell) its inverse matrix M 1. Prove in Coq that M M 1 = 1 (by compute). Continue the computation in Coq. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 20/24

54 Outline Conclusions and Further Work 1 A Reduction Algorithm 2 The Role of Haskell 3 Conclusions and Further Work J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 21/24

55 Conclusions and Further Work Conclusions and Further Work Conclusions: Formalisation of reduction algorithm for digital images. Methodology to overcome efficiency problems. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 22/24

56 Conclusions and Further Work Conclusions and Further Work Conclusions: Formalisation of reduction algorithm for digital images. Methodology to overcome efficiency problems. Further work: Obtain better performance: Improve algorithms. Implement more efficient data structures. Improve the running environments in proof assistants. Extract certified code from Coq. Apply methodology and techniques to: Persistent homology and Zigzag persistence. Application: automate the location of neuronal structure from a stack of images. J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 22/24

57 Conclusions and Further Work Bibliography about this work M. Poza (2013): Certifying homological algorithms to study biomedical images. Ph.D. thesis, University of La Rioja. M. Poza, C. Domínguez, J. Heras, and J. Rubio (2014): A certified reduction strategy for homological image processing. ACM Transactions on Computational Logic 15(3). M. Poza, C. Domínguez, J. Heras, and J. Rubio (2014): A certified reduction strategy for homological image processing. Arxiv: M. Poza, C. Domínguez, J. Heras, and J. Rubio (2014): J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 23/24

58 Thank you for your attention Questions? A Certified Reduction Strategy for Homological Image Processing M. Poza, C. Domínguez, J. Heras, and J. Rubio Department of Mathematics and Computer Science, University of La Rioja 19 September 2014 PROLE 14 J. Heras (U. of La Rioja) A Certified Reduction Strategy for Homological Image Processing 24/24

Formal libraries for Algebraic Topology: status report 1

Formal libraries for Algebraic Topology: status report 1 Formal libraries for Algebraic Topology: status report 1 ForMath La Rioja node (Jónathan Heras) Departamento de Matemáticas y Computación Universidad de La Rioja Spain Mathematics, Algorithms and Proofs

More information

From Digital Images to Simplicial Complexes: A Report

From Digital Images to Simplicial Complexes: A Report From Digital Images to Simplicial Complexes: A Report ForMath La Rioja node Departamento de Matemáticas y Computación, Universidad de La Rioja, Edificio Vives, Luis de Ulloa s/n, E-26004 Logroño (La Rioja,

More information

Modelling Algebraic Structures and Morphisms in ACL2

Modelling Algebraic Structures and Morphisms in ACL2 Noname manuscript No. (will be inserted by the editor) Modelling Algebraic Structures and Morphisms in ACL2 Jónathan Heras Francisco Jesús Martín Mateos Vico Pascual Received: date / Accepted: date Abstract

More information

Rings with Explicit Divisibility Formalized in Coq

Rings with Explicit Divisibility Formalized in Coq Rings with Explicit Divisibility Formalized in Coq Anders Mörtberg University of Gothenburg Cyril Cohen INRIA Saclay Île-de-France Microsoft Research INRIA Joint Center LIX École Polytechnique September

More information

Refinements for free! 1

Refinements for free! 1 Refinements for free! Refinements for free! 1 Cyril Cohen joint work with Maxime Dénès and Anders Mörtberg University of Gothenburg and Inria Sophia-Antipolis May 8, 2014 1 This work has been funded by

More information

Formal proofs and certified computation in Coq

Formal proofs and certified computation in Coq Formal proofs and certified computation in Coq Érik Martin-Dorel http://erik.martin-dorel.org Équipe ACADIE, Laboratoire IRIT Université Toulouse III - Paul Sabatier French Symposium on Games 26 30 May

More information

Appendix G: Some questions concerning the representation of theorems

Appendix G: Some questions concerning the representation of theorems Appendix G: Some questions concerning the representation of theorems Specific discussion points 1. What should the meta-structure to represent mathematics, in which theorems naturally fall, be? There obviously

More information

Turning proof assistants into programming assistants

Turning proof assistants into programming assistants Turning proof assistants into programming assistants ST Winter Meeting, 3 Feb 2015 Magnus Myréen Why? Why combine proof- and programming assistants? Why proofs? Testing cannot show absence of bugs. Some

More information

A Coq Framework For Verified Property-Based Testing (part of QuickChick)

A Coq Framework For Verified Property-Based Testing (part of QuickChick) A Coq Framework For Verified Property-Based Testing (part of QuickChick) Cătălin Hrițcu INRIA Paris-Rocquencourt (Prosecco team, Place d Italie office) Problem: proving in Coq is very costly My proofs

More information

Univalent fibrations in type theory and topology

Univalent fibrations in type theory and topology Univalent fibrations in type theory and topology Dan Christensen University of Western Ontario Wayne State University, April 11, 2016 Outline: Background on type theory Equivalence and univalence A characterization

More information

Coq, a formal proof development environment combining logic and programming. Hugo Herbelin

Coq, a formal proof development environment combining logic and programming. Hugo Herbelin Coq, a formal proof development environment combining logic and programming Hugo Herbelin 1 Coq in a nutshell (http://coq.inria.fr) A logical formalism that embeds an executable typed programming language:

More information

fkenzo: a user interface for computations in Algebraic Topology

fkenzo: a user interface for computations in Algebraic Topology fkenzo: a user interface for computations in Algebraic Topology J. Heras a, V. Pascual a, J. Rubio a, F. Sergeraert b a Departamento de Matemáticas y Computación. Universidad de La Rioja. Logroño, Spain.

More information

arxiv: v2 [cs.ai] 6 Nov 2013

arxiv: v2 [cs.ai] 6 Nov 2013 Recycling Proof Patterns in Coq: Case Studies arxiv:1301.6039v2 [cs.ai] 6 Nov 2013 Jónathan Heras and Ekaterina Komendantskaya Abstract. Development of Interactive Theorem Provers has led to the creation

More information

Formalization and execution of Linear Algebra: from theorems to algorithms

Formalization and execution of Linear Algebra: from theorems to algorithms Formalization and execution of Linear Algebra: from theorems to algorithms J. Aransay and J. Divasón Departamento de Matemáticas y Computación, Universidad de La Rioja, Edif. Luis Vives, c. Luis de Ulloa

More information

Static and User-Extensible Proof Checking. Antonis Stampoulis Zhong Shao Yale University POPL 2012

Static and User-Extensible Proof Checking. Antonis Stampoulis Zhong Shao Yale University POPL 2012 Static and User-Extensible Proof Checking Antonis Stampoulis Zhong Shao Yale University POPL 2012 Proof assistants are becoming popular in our community CompCert [Leroy et al.] sel4 [Klein et al.] Four-color

More information

How Efficient Can Fully Verified Functional Programs Be - A Case Study of Graph Traversal Algorithms

How Efficient Can Fully Verified Functional Programs Be - A Case Study of Graph Traversal Algorithms How Efficient Can Fully Verified Functional Programs Be - A Case Study of Graph Traversal Algorithms Mirko Stojadinović Faculty of Mathematics, University of Belgrade Abstract. One approach in achieving

More information

Probabilistic Parsing of Mathematics

Probabilistic Parsing of Mathematics Probabilistic Parsing of Mathematics Jiří Vyskočil Josef Urban Czech Technical University in Prague, Czech Republic Cezary Kaliszyk University of Innsbruck, Austria Outline Why and why not current formal

More information

Automated verification of termination certificates

Automated verification of termination certificates Automated verification of termination certificates Frédéric Blanqui and Kim Quyen Ly Frédéric Blanqui and Kim Quyen Ly Automated verification of termination certificates 1 / 22 Outline 1 Software certification

More information

Outline. Analyse et Conception Formelle. Lesson 7. Program verification methods. Disclaimer. The basics. Definition 2 (Specification)

Outline. Analyse et Conception Formelle. Lesson 7. Program verification methods. Disclaimer. The basics. Definition 2 (Specification) Outline Analyse et Conception Formelle Lesson 7 Program verification methods 1 Testing 2 Model-checking 3 Assisted proof 4 Static Analysis 5 A word about protoypes/models, accuracy, code generation T.

More information

A NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU

A NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU COQHOTT A NEW PROOF-ASSISTANT THAT REVISITS THE THEORETICAL FOUNDATIONS OF COQ USING HOMOTOPY TYPE THEORY NICOLAS TABAREAU The CoqHoTT project Design and implement a brand-new proof assistant by revisiting

More information

DEFINING A LANGUAGE. Robert Harper. Friday, April 27, 12

DEFINING A LANGUAGE. Robert Harper. Friday, April 27, 12 DEFINING A LANGUAGE Robert Harper ACKNOWLEDGEMENTS I am honored to have had the privilege of working with Robin on the development of Standard ML. It is also a pleasure to thank my collaborators, Karl

More information

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1

Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 CME 305: Discrete Mathematics and Algorithms Instructor: Professor Aaron Sidford (sidford@stanfordedu) February 6, 2018 Lecture 9 - Matrix Multiplication Equivalences and Spectral Graph Theory 1 In the

More information

Brian Hamrick. October 26, 2009

Brian Hamrick. October 26, 2009 Efficient Computation of Homology Groups of Simplicial Complexes Embedded in Euclidean Space TJHSST Senior Research Project Computer Systems Lab 2009-2010 Brian Hamrick October 26, 2009 1 Abstract Homology

More information

Math 635: Algebraic Topology III, Spring 2016

Math 635: Algebraic Topology III, Spring 2016 Math 635: Algebraic Topology III, Spring 2016 Instructor: Nicholas Proudfoot Email: njp@uoregon.edu Office: 322 Fenton Hall Office Hours: Monday and Tuesday 2:00-3:00 or by appointment. Text: We will use

More information

Packaging Theories of Higher Order Logic

Packaging Theories of Higher Order Logic Packaging Theories of Higher Order Logic Joe Hurd Galois, Inc. joe@galois.com Theory Engineering Workshop Tuesday 9 February 2010 Joe Hurd Packaging Theories of Higher Order Logic 1 / 26 Talk Plan 1 Introduction

More information

Functional Programming with Isabelle/HOL

Functional Programming with Isabelle/HOL Functional Programming with Isabelle/HOL = Isabelle λ β HOL α Florian Haftmann Technische Universität München January 2009 Overview Viewing Isabelle/HOL as a functional programming language: 1. Isabelle/HOL

More information

Linear Algebraic Representation of Big Geometric Data

Linear Algebraic Representation of Big Geometric Data Linear Algebraic Representation of Big Geometric Data A. Paoluzzi Università Roma Tre ASI workshop: Big data, nuove tecnologie e futuro dei ground segment Alberto Paoluzzi LAR for Big Geometric Data ASI

More information

Homology of Simplicial Complexes

Homology of Simplicial Complexes Homology of Simplicial Complexes Math, David Perkinson Introduction. This is an introduction to the homology of simplicial complexes suitable for a first course in linear algebra. It uses little more than

More information

Isabelle/HOL:Selected Features and Recent Improvements

Isabelle/HOL:Selected Features and Recent Improvements /: Selected Features and Recent Improvements webertj@in.tum.de Security of Systems Group, Radboud University Nijmegen February 20, 2007 /:Selected Features and Recent Improvements 1 2 Logic User Interface

More information

An introduction to Homotopy Type Theory

An introduction to Homotopy Type Theory An introduction to Homotopy Type Theory Nicola Gambino University of Palermo Leicester, March 15th, 2013 Outline of the talk Part I: Type theory Part II: Homotopy type theory Part III: Voevodsky s Univalent

More information

Moscova 07. Jean-Jacques Lévy. April 24, INRIA Rocquencourt

Moscova 07. Jean-Jacques Lévy. April 24, INRIA Rocquencourt Moscova 07 Jean-Jacques Lévy INRIA Rocquencourt April 24, 2007 Research Part 1 Type-safe communication Acute communicating values of abstract data types and preserving abstraction between 2 distinct run-times;

More information

Algebraic Topology: A brief introduction

Algebraic Topology: A brief introduction Algebraic Topology: A brief introduction Harish Chintakunta This chapter is intended to serve as a brief, and far from comprehensive, introduction to Algebraic Topology to help the reading flow of this

More information

Translation Validation for a Verified OS Kernel

Translation Validation for a Verified OS Kernel To appear in PLDI 13 Translation Validation for a Verified OS Kernel Thomas Sewell 1, Magnus Myreen 2, Gerwin Klein 1 1 NICTA, Australia 2 University of Cambridge, UK L4.verified sel4 = a formally verified

More information

Analysis of high dimensional data via Topology. Louis Xiang. Oak Ridge National Laboratory. Oak Ridge, Tennessee

Analysis of high dimensional data via Topology. Louis Xiang. Oak Ridge National Laboratory. Oak Ridge, Tennessee Analysis of high dimensional data via Topology Louis Xiang Oak Ridge National Laboratory Oak Ridge, Tennessee Contents Abstract iii 1 Overview 1 2 Data Set 1 3 Simplicial Complex 5 4 Computation of homology

More information

Algorithmic aspects of embedding simplicial complexes in R d

Algorithmic aspects of embedding simplicial complexes in R d Algorithmic aspects of embedding simplicial complexes in R d Jiří Matoušek Charles University, Prague and ETH Zurich joint work with Martin Čadek, Marek Krčál, Eric Sedgwick, Francis Sergeraert, Martin

More information

Assistant for Language Theory. SASyLF: An Educational Proof. Corporation. Microsoft. Key Shin. Workshop on Mechanizing Metatheory

Assistant for Language Theory. SASyLF: An Educational Proof. Corporation. Microsoft. Key Shin. Workshop on Mechanizing Metatheory SASyLF: An Educational Proof Assistant for Language Theory Jonathan Aldrich Robert J. Simmons Key Shin School of Computer Science Carnegie Mellon University Microsoft Corporation Workshop on Mechanizing

More information

Persistent Homology and Nested Dissection

Persistent Homology and Nested Dissection Persistent Homology and Nested Dissection Don Sheehy University of Connecticut joint work with Michael Kerber and Primoz Skraba A Topological Data Analysis Pipeline A Topological Data Analysis Pipeline

More information

Instructions. Notation. notation: In particular, t(i, 2) = 2 2 2

Instructions. Notation. notation: In particular, t(i, 2) = 2 2 2 Instructions Deterministic Distributed Algorithms, 10 21 May 2010, Exercises http://www.cs.helsinki.fi/jukka.suomela/dda-2010/ Jukka Suomela, last updated on May 20, 2010 exercises are merely suggestions

More information

Diffusion Maps and Topological Data Analysis

Diffusion Maps and Topological Data Analysis Diffusion Maps and Topological Data Analysis Melissa R. McGuirl McGuirl (Brown University) Diffusion Maps and Topological Data Analysis 1 / 19 Introduction OVERVIEW Topological Data Analysis The use of

More information

Logik für Informatiker Logic for computer scientists

Logik für Informatiker Logic for computer scientists Logik für Informatiker for computer scientists WiSe 2011/12 Overview Motivation Why is logic needed in computer science? The LPL book and software Scheinkriterien Why is logic needed in computer science?

More information

Defining the Ethereum Virtual Machine for Interactive Theorem Provers

Defining the Ethereum Virtual Machine for Interactive Theorem Provers Defining the Ethereum Virtual Machine for Interactive Theorem Provers Ethereum Foundation Workshop on Trusted Smart Contracts Malta, Apr. 7, 2017 1/32 Outline 1 2 3 Remaining Problems 4 2/32 Outline 1

More information

Ontology- and Bayesian- based Information Security Risk Management

Ontology- and Bayesian- based Information Security Risk Management Ontology- and Bayesian- based Information Security Risk Management Stefan Fenz sfenz@securit 4 th ETSI Security Workshop 13 14 January 2009 ETSI, Sophia Antipolis, France Motivation Almost every business

More information

ADAM CHLIPALA. Research interests. Education. Refereed conference papers

ADAM CHLIPALA. Research interests. Education. Refereed conference papers 579 Soda Hall Berkeley, CA 94720-1776 USA adamc@cs.berkeley.edu http://www.cs.berkeley.edu/ adamc/ Research interests ADAM CHLIPALA Dependent type systems; interactive theorem proving; type-based programming

More information

ABriefOverviewofAgda A Functional Language with Dependent Types

ABriefOverviewofAgda A Functional Language with Dependent Types ABriefOverviewofAgda A Functional Language with Dependent Types Ana Bove, Peter Dybjer, and Ulf Norell e-mail: {bove,peterd,ulfn}@chalmers.se Chalmers University of Technology, Gothenburg, Sweden Abstract.

More information

An Industrially Useful Prover

An Industrially Useful Prover An Industrially Useful Prover J Strother Moore Department of Computer Science University of Texas at Austin July, 2017 1 Recap Yesterday s Talk: ACL2 is used routinely in the microprocessor industry to

More information

COMP 4161 Data61 Advanced Course. Advanced Topics in Software Verification. Gerwin Klein, June Andronick, Christine Rizkallah, Miki Tanaka

COMP 4161 Data61 Advanced Course. Advanced Topics in Software Verification. Gerwin Klein, June Andronick, Christine Rizkallah, Miki Tanaka COMP 4161 Data61 Advanced Course Advanced Topics in Software Verification Gerwin Klein, June Andronick, Christine Rizkallah, Miki Tanaka 1 COMP4161 c Data61, CSIRO: provided under Creative Commons Attribution

More information

Blockchains: new home for proven-correct software. Paris, Yoichi Hirai formal verification engineer, the Ethereum Foundation

Blockchains: new home for proven-correct software. Paris, Yoichi Hirai formal verification engineer, the Ethereum Foundation Blockchains: new home for proven-correct software Paris, 2017-2-17 Yoichi Hirai formal verification engineer, the Ethereum Foundation Lyon: 2014 January Have you heard of a web site where you can get Bitcoin

More information

An intuitionistic proof of a discrete form of the Jordan Curve Theorem formalized in Coq with combinatorial hypermaps

An intuitionistic proof of a discrete form of the Jordan Curve Theorem formalized in Coq with combinatorial hypermaps An intuitionistic proof of a discrete form of the Jordan Curve Theorem formalized in Coq with combinatorial hypermaps Jean-François Dufourd 1 1 LSIIT, UMR CNRS 7005, Université de Strasbourg, France Galapagos

More information

A NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU

A NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU COQHOTT A NEW PROOF-ASSISTANT THAT REVISITS THE THEORETICAL FOUNDATIONS OF COQ USING HOMOTOPY TYPE THEORY NICOLAS TABAREAU The CoqHoTT project Design and implement a brand-new proof assistant by revisiting

More information

4. Simplicial Complexes and Simplicial Homology

4. Simplicial Complexes and Simplicial Homology MATH41071/MATH61071 Algebraic topology Autumn Semester 2017 2018 4. Simplicial Complexes and Simplicial Homology Geometric simplicial complexes 4.1 Definition. A finite subset { v 0, v 1,..., v r } R n

More information

Research Statement. Daniel R. Licata

Research Statement. Daniel R. Licata Research Statement Daniel R. Licata I study programming languages, with a focus on applications of type theory and logic. I have published papers in major conferences in my area (POPL 2012, MFPS 2011,

More information

INTRODUCTION TO THE HOMOLOGY GROUPS OF COMPLEXES

INTRODUCTION TO THE HOMOLOGY GROUPS OF COMPLEXES INTRODUCTION TO THE HOMOLOGY GROUPS OF COMPLEXES RACHEL CARANDANG Abstract. This paper provides an overview of the homology groups of a 2- dimensional complex. It then demonstrates a proof of the Invariance

More information

Constructive Homological Algebra V. Algebraic Topology background

Constructive Homological Algebra V. Algebraic Topology background 0 Constructive Homological Algebra V. Algebraic Topology background Francis Sergeraert, Institut Fourier, Grenoble, France Genova Summer School, 2006 1 General topological spaces cannot be directly installed

More information

Scenario Week 4: Art Gallery Competition

Scenario Week 4: Art Gallery Competition Scenario Week 4: Art Gallery Competition Organisers' Report scenario@cs.ucl.ac.uk 26 February 2016 The Week 94 participants 24 teams 1892 468 submissions for Part 2 One submissions for Part 1 subtle server

More information

Proof-Pattern Recognition and Lemma Discovery in ACL2

Proof-Pattern Recognition and Lemma Discovery in ACL2 Proof-Pattern Recognition and Lemma Discovery in ACL2 Jónathan Heras (joint work with K. Komendantskaya, M. Johansson and E. Maclean) University of Dundee http://staff.computing.dundee.ac.uk/jheras/acl2ml/

More information

A concrete memory model for CompCert

A concrete memory model for CompCert A concrete memory model for CompCert Frédéric Besson Sandrine Blazy Pierre Wilke Rennes, France P. Wilke A concrete memory model for CompCert 1 / 28 CompCert real-world C to ASM compiler used in industry

More information

Curriculum 2014 Joint National

Curriculum 2014 Joint National Curriculum 2014 Joint National Bachelor of Software Development Professionsbachelor i softwareudvikling Version 1.0 Revised 1 July 2014 Page 0 of 13 Table of Contents Joint National Table of Contents Joint

More information

A Simpl Shortest Path Checker Verification

A Simpl Shortest Path Checker Verification A Simpl Shortest Path Checker Verification Christine Rizkallah Max-Planck-Institut für Informatik, Saarbrücken, Germany Abstract. Verification of complex algorithms with current verification tools in reasonable

More information

Rotation Distance is Fixed-Parameter Tractable

Rotation Distance is Fixed-Parameter Tractable Rotation Distance is Fixed-Parameter Tractable Sean Cleary Katherine St. John September 25, 2018 arxiv:0903.0197v1 [cs.ds] 2 Mar 2009 Abstract Rotation distance between trees measures the number of simple

More information

Software System Design and Implementation

Software System Design and Implementation Software System Design and Implementation Motivation & Introduction Gabriele Keller (Manuel M. T. Chakravarty) The University of New South Wales School of Computer Science and Engineering Sydney, Australia

More information

NECO: Network Coding Simulator

NECO: Network Coding Simulator NECO: Network Coding Simulator Diogo Ferreira 1, Luísa Lima 2, João Barros 1 1 Instituto de Telecomunicações Faculdade de Engenharia da Universidade do Porto 2 Instituto de Telecomunicações Faculdade de

More information

Exact discrete Morse functions on surfaces. To the memory of Professor Mircea-Eugen Craioveanu ( )

Exact discrete Morse functions on surfaces. To the memory of Professor Mircea-Eugen Craioveanu ( ) Stud. Univ. Babeş-Bolyai Math. 58(2013), No. 4, 469 476 Exact discrete Morse functions on surfaces Vasile Revnic To the memory of Professor Mircea-Eugen Craioveanu (1942-2012) Abstract. In this paper,

More information

arxiv: v2 [cs.lo] 24 Jan 2014

arxiv: v2 [cs.lo] 24 Jan 2014 Applications of the Gauss-Jordan algorithm, done right arxiv:1401.5910v2 [cs.lo] 24 Jan 2014 Jesús Aransay http://www.unirioja.es/cu/jearansa Departamento de Matemáticas y Computación, Universidad de La

More information

arxiv: v2 [math.co] 24 Aug 2016

arxiv: v2 [math.co] 24 Aug 2016 Slicing and dicing polytopes arxiv:1608.05372v2 [math.co] 24 Aug 2016 Patrik Norén June 23, 2018 Abstract Using tropical convexity Dochtermann, Fink, and Sanyal proved that regular fine mixed subdivisions

More information

Functional Programming in Coq. Nate Foster Spring 2018

Functional Programming in Coq. Nate Foster Spring 2018 Functional Programming in Coq Nate Foster Spring 2018 Review Previously in 3110: Functional programming Modular programming Data structures Interpreters Next unit of course: formal methods Today: Proof

More information

Organisatorials. About us. Binary Search (java.util.arrays) When Tue 9:00 10:30 Thu 9:00 10:30. COMP 4161 NICTA Advanced Course

Organisatorials. About us. Binary Search (java.util.arrays) When Tue 9:00 10:30 Thu 9:00 10:30. COMP 4161 NICTA Advanced Course Organisatorials COMP 4161 NICTA Advanced Course When Tue 9:00 10:30 Thu 9:00 10:30 Where Tue: Law 163 (F8-163) Thu: Australian School Business 205 (E12-205) Advanced Topics in Software Verification Rafal

More information

Mutation-linear algebra and universal geometric cluster algebras

Mutation-linear algebra and universal geometric cluster algebras Mutation-linear algebra and universal geometric cluster algebras Nathan Reading NC State University Mutation-linear ( µ-linear ) algebra Universal geometric cluster algebras The mutation fan Universal

More information

Exact Algorithms Lecture 7: FPT Hardness and the ETH

Exact Algorithms Lecture 7: FPT Hardness and the ETH Exact Algorithms Lecture 7: FPT Hardness and the ETH February 12, 2016 Lecturer: Michael Lampis 1 Reminder: FPT algorithms Definition 1. A parameterized problem is a function from (χ, k) {0, 1} N to {0,

More information

Discrete Differential Geometry. Differential Geometry

Discrete Differential Geometry. Differential Geometry Discrete Differential Geometry Yiying Tong CSE 891 Sect 004 Differential Geometry Why do we care? theory: special surfaces minimal, CMC, integrable, etc. computation: simulation/processing Grape (u. of

More information

Journal of Symbolic Computation. fkenzo: A user interface for computations in Algebraic Topology

Journal of Symbolic Computation. fkenzo: A user interface for computations in Algebraic Topology Journal of Symbolic Computation ( ) Contents lists available at ScienceDirect Journal of Symbolic Computation journal homepage: www.elsevier.com/locate/jsc fkenzo: A user interface for computations in

More information

Topology and fmri Data

Topology and fmri Data Topology and fmri Data Adam Jaeger Statistical and Applied Mathematical Sciences Institute & Duke University May 5, 2016 fmri and Classical Methodology Most statistical analyses examine data with a variable

More information

Theorem proving. PVS theorem prover. Hoare style verification PVS. More on embeddings. What if. Abhik Roychoudhury CS 6214

Theorem proving. PVS theorem prover. Hoare style verification PVS. More on embeddings. What if. Abhik Roychoudhury CS 6214 Theorem proving PVS theorem prover Abhik Roychoudhury National University of Singapore Both specification and implementation can be formalized in a suitable logic. Proof rules for proving statements in

More information

Random Simplicial Complexes

Random Simplicial Complexes Random Simplicial Complexes Duke University CAT-School 2015 Oxford 8/9/2015 Part I Random Combinatorial Complexes Contents Introduction The Erdős Rényi Random Graph The Random d-complex The Random Clique

More information

To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 COPYRIGHT 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED.

To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 COPYRIGHT 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED. To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 Introduction SDN research directions as outlined in IRTF RG outlines i) need for more flexibility and programmability

More information

Lecture slides & distribution files:

Lecture slides & distribution files: Type Theory Lecture slides & distribution files: http://www.cs.rhul.ac.uk/home/zhaohui/ttlectures.html Zhaohui Luo Department of Computer Science Royal Holloway, University of London April 2011 2 Type

More information

Property-Based Testing for Coq. Cătălin Hrițcu

Property-Based Testing for Coq. Cătălin Hrițcu Property-Based Testing for Coq Cătălin Hrițcu Prosecco Reading Group - Friday, November 29, 2013 The own itch I m trying to scratch hard to devise correct safety and security enforcement mechanisms (static

More information

Lecture 0: Reivew of some basic material

Lecture 0: Reivew of some basic material Lecture 0: Reivew of some basic material September 12, 2018 1 Background material on the homotopy category We begin with the topological category TOP, whose objects are topological spaces and whose morphisms

More information

Prototyping a Formal Verification Platform for SoCs

Prototyping a Formal Verification Platform for SoCs This work is partially funded by the German Federal Ministry of Education, Science, Research and Technology (BMBF) in the framework of the Verisoft project under grant 01 IS C38. The responsibility for

More information

Thunks (continued) Olivier Danvy, John Hatcli. Department of Computing and Information Sciences. Kansas State University. Manhattan, Kansas 66506, USA

Thunks (continued) Olivier Danvy, John Hatcli. Department of Computing and Information Sciences. Kansas State University. Manhattan, Kansas 66506, USA Thunks (continued) Olivier Danvy, John Hatcli Department of Computing and Information Sciences Kansas State University Manhattan, Kansas 66506, USA e-mail: (danvy, hatcli)@cis.ksu.edu Abstract: Call-by-name

More information

Deductive Program Verification with Why3, Past and Future

Deductive Program Verification with Why3, Past and Future Deductive Program Verification with Why3, Past and Future Claude Marché ProofInUse Kick-Off Day February 2nd, 2015 A bit of history 1999: Jean-Christophe Filliâtre s PhD Thesis Proof of imperative programs,

More information

PERSISTENT HOMOLOGY OF FINITE TOPOLOGICAL SPACES

PERSISTENT HOMOLOGY OF FINITE TOPOLOGICAL SPACES PERSISTENT HOMOLOGY OF FINITE TOPOLOGICAL SPACES HANEY MAXWELL Abstract. We introduce homology and finite topological spaces. From the basis of that introduction, persistent homology is applied to finite

More information

Certified Memory Usage Analysis

Certified Memory Usage Analysis Certified Memory Usage Analysis David Cachera, Thomas Jensen, David Pichardie, Gerardo Schneider IRISA, ENS Cachan Bretagne, France Context Embedded devices (smart cards, mobile phones) memory is limited

More information

Towards a Practical, Verified Kernel

Towards a Practical, Verified Kernel Towards a Practical, Verified Kernel Kevin Elphinstone and Gerwin Klein, National ICT Australia and the University of New South Wales Philip Derrin, National ICT Australia Timothy Roscoe, ETH Zürich Gernot

More information

MASTER OF ENGINEERING PROGRAM IN INFORMATION

MASTER OF ENGINEERING PROGRAM IN INFORMATION MASTER OF ENGINEERING PROGRAM IN INFORMATION AND COMMUNICATION TECHNOLOGY FOR EMBEDDED SYSTEMS (INTERNATIONAL PROGRAM) Curriculum Title Master of Engineering in Information and Communication Technology

More information

Fork-forests in bi-colored complete bipartite graphs

Fork-forests in bi-colored complete bipartite graphs Fork-forests in bi-colored complete bipartite graphs Maria Axenovich, Marcus Krug, Georg Osang, and Ignaz Rutter January 1, 01 Abstract Motivated by the problem in [6], which studies the relative efficiency

More information

ECE 587 Hardware/Software Co-Design Lecture 11 Verification I

ECE 587 Hardware/Software Co-Design Lecture 11 Verification I ECE 587 Hardware/Software Co-Design Spring 2018 1/23 ECE 587 Hardware/Software Co-Design Lecture 11 Verification I Professor Jia Wang Department of Electrical and Computer Engineering Illinois Institute

More information

ABHELSINKI UNIVERSITY OF TECHNOLOGY

ABHELSINKI UNIVERSITY OF TECHNOLOGY T-79.5305 Formal Methods (4 ECTS) T-79.5305 Formaalit menetelmät (4 op) 2006-09-13 Tommi Junttila, Keijo Heljanko, Ilkka Niemelä, and Heikki Tauriainen T-79.5305 Formal Methods, Autumn 2006 1/27 T-79.5305

More information

Introductory Combinatorics

Introductory Combinatorics Introductory Combinatorics Third Edition KENNETH P. BOGART Dartmouth College,. " A Harcourt Science and Technology Company San Diego San Francisco New York Boston London Toronto Sydney Tokyo xm CONTENTS

More information

the application rule M : x:a: B N : A M N : (x:a: B) N and the reduction rule (x: A: B) N! Bfx := Ng. Their algorithm is not fully satisfactory in the

the application rule M : x:a: B N : A M N : (x:a: B) N and the reduction rule (x: A: B) N! Bfx := Ng. Their algorithm is not fully satisfactory in the The Semi-Full Closure of Pure Type Systems? Gilles Barthe Institutionen for Datavetenskap, Chalmers Tekniska Hogskola, Goteborg, Sweden Departamento de Informatica, Universidade do Minho, Braga, Portugal

More information

Algorithms and Data Structures, or

Algorithms and Data Structures, or Algorithms and Data Structures, or... Classical Algorithms of the 50s, 60s and 70s Mary Cryan A&DS Lecture 1 1 Mary Cryan Our focus Emphasis is Algorithms ( Data Structures less important). Most of the

More information

Algorithms and Data Structures. Algorithms and Data Structures. Algorithms and Data Structures. Algorithms and Data Structures

Algorithms and Data Structures. Algorithms and Data Structures. Algorithms and Data Structures. Algorithms and Data Structures Richard Mayr Slides adapted from Mary Cryan (2015/16) with some changes. School of Informatics University of Edinburgh ADS (2018/19) Lecture 1 slide 1 ADS (2018/19) Lecture 1 slide 3 ADS (2018/19) Lecture

More information

Discrete Exterior Calculus How to Turn Your Mesh into a Computational Structure. Discrete Differential Geometry

Discrete Exterior Calculus How to Turn Your Mesh into a Computational Structure. Discrete Differential Geometry Discrete Exterior Calculus How to Turn Your Mesh into a Computational Structure Discrete Differential Geometry Big Picture Deriving a whole Discrete Calculus you need first a discrete domain will induce

More information

Provably Correct Software

Provably Correct Software Provably Correct Software Max Schäfer Institute of Information Science/Academia Sinica September 17, 2007 1 / 48 The Need for Provably Correct Software BUT bugs are annoying, embarrassing, and cost gazillions

More information

MATHEMATICAL STRUCTURES FOR COMPUTER SCIENCE

MATHEMATICAL STRUCTURES FOR COMPUTER SCIENCE MATHEMATICAL STRUCTURES FOR COMPUTER SCIENCE A Modern Approach to Discrete Mathematics SIXTH EDITION Judith L. Gersting University of Hawaii at Hilo W. H. Freeman and Company New York Preface Note to the

More information

Software System Design and Implementation

Software System Design and Implementation Software System Design and Implementation Admin & Motivation & Some History Gabriele Keller Admin: Liam O Connor-Davies The University of New South Wales School of Computer Science and Engineering Sydney,

More information

Adam Chlipala University of California, Berkeley ICFP 2006

Adam Chlipala University of California, Berkeley ICFP 2006 Modular Development of Certified Program Verifiers with a Proof Assistant Adam Chlipala University of California, Berkeley ICFP 2006 1 Who Watches the Watcher? Program Verifier Might want to ensure: Memory

More information

Induction and Recursion. CMPS/MATH 2170: Discrete Mathematics

Induction and Recursion. CMPS/MATH 2170: Discrete Mathematics Induction and Recursion CMPS/MATH 2170: Discrete Mathematics Outline Mathematical induction (5.1) Sequences and Summations (2.4) Strong induction (5.2) Recursive definitions (5.3) Recurrence Relations

More information

Unfolding FOLDS. Matthew Weaver and Dimitris Tsementzis. HoTT/UF Workshop. Sept. 9, 2017

Unfolding FOLDS. Matthew Weaver and Dimitris Tsementzis. HoTT/UF Workshop. Sept. 9, 2017 Unfolding FOLDS HoTT/UF Workshop Sept. 9, 2017 Matthew Weaver and Dimitris Tsementzis Princeton Rutgers The Syntax of Syntax Type theory has a rich syntax which is why we love it! and is also what makes

More information

arxiv: v1 [math.ho] 7 Nov 2017

arxiv: v1 [math.ho] 7 Nov 2017 An Introduction to the Discharging Method HAOZE WU Davidson College 1 Introduction arxiv:1711.03004v1 [math.ho] 7 Nov 017 The discharging method is an important proof technique in structural graph theory.

More information

Extracting the Range of cps from Affine Typing

Extracting the Range of cps from Affine Typing Extracting the Range of cps from Affine Typing Extended Abstract Josh Berdine, Peter W. O Hearn Queen Mary, University of London {berdine, ohearn}@dcs.qmul.ac.uk Hayo Thielecke The University of Birmingham

More information