Download presentation
Presentation is loading. Please wait.
1
Formal Analysis of Symbolic Computation Systems for Algebraic Topology Julio Rubio Universidad de La Rioja (Spain)
2
The Systems -EAT Homology groups of iterated loop spaces -Kenzo Better performance Object-oriented
3
Formal Analysis -Why? -How? First answer: Why not?
4
Formal Analysis -Why? -How? Second answer: Increasing reliability
5
Formal Analysis -Why? -How? Third answer: Increasing knowledge
6
Formal Analysis -How? Two lines: 1. Algebraic Specifications 2. Computer-aided Theorem Proving
7
Formal Methods in Design Implementation SPECIFICATION SOFTWARE PRODUCT Formal Methods
8
Formal Methods in our problem SOFTWARE PRODUCT (MATHEMATICAL) MODEL OF THE SOFTWARE PRODUCT Formal Methods
9
A case-study: BPL EAT and Kenzo implement the Basic Perturbation Lemma (BPL)
10
BPL, preliminaries: - Chain complex - Reduction - Perturbation
11
BPL, preliminaries: chain complex
12
BPL, preliminaries: reduction
13
H(C, d) (C, d) f g h Big CCSmall CC
14
BPL, preliminaries: perturbation
15
BPL, statement: (C, d) f g h Big CCSmall CC (C,d+ ) (C, ¿d´?) ¿f ´? ¿g´? ¿h´? Big CC Small CC Now we introduce a perturbation and we obtain: BPL algorithm f´,g´,d´,h´
16
BPL implementation, questions: - How many reductions can be represented? -Is the implementation correct?
17
BPL implementation, questions: - How many reductions can be represented? (First line: algebraic specifications) -Is the implementation correct? (Second line: ATPs)
18
First line: ALGEBRAIC SPECIFICATIONS Joint work with: L. Lambán, V. Pascual, C. Domínguez (Universidad de La Rioja)
19
Inspired by EAT syntax S imp = S U { imp } imp = { imp_ : imp s 1... s n s } S = { : s 1... s n s } = S, imp = S imp, imp
20
- Storing operations (make-grp :prd... ) Real Common Lisp implementation Sergeraert’s notions 1986 - Functional coding f #’(lambda (x) (integerp x)) - Decoding function f Z
21
- Programs realizing operations Real Common Lisp implementation - Representation invariant U Bool - Abstraction function U M Hoare’s notions 1972
22
Real Common Lisp implementation Sergeraert’s notions 1986 - Functional coding f #’(lambda (x) (integerp x)) - Decoding function f Z - Storing operations (make-grp :prd... ) - Representation invariant U Bool - Abstraction function U M - Programs realizing operations Hoare’s notions 1972 DATUM IMPLEMENTATION OF A DATA TYPE Theimplementation shift
23
Theorem The implementations appearing in EAT define final objects in certain categories of Abstract Data Types implementations
24
Theorem Thus: EAT implementations are “as general as possible” The implementations appearing in EAT define final objects in certain categories of Abstract Data Types implementations
25
Categories EAT implementing Families of objects modelling Mathematics
26
Kenzo: dealing with inheritance - explicit coercion (at the algebraic specification level) -similar kind of results (finality) (finality)
27
Second line: MECHANISED THEOREM PROVING Joint work with: C. Ballarin (Technische Universität München) J. Aransay (Universidad de La Rioja)
28
Certify the BPL EAT implementation
29
Choose a proof assistant
30
A Common Lisp assistant?
31
ACL2 (Boyer-Moore) Poor expressiveness (no higher order functional programming)
32
An Assistant with other native language L?
33
Semantic gap between L and Common Lisp
34
Give a mechanised proof of the BPL theorem (as a previous step towards the proof of EAT implementation correctness)
35
To choose a (by hand) proof: Sergeraert’s proof To choose a proof Assistant:Isabelle
36
In Isabelle: - Algebraic structures: -dependent types -extensible records (to reuse)
37
Lemma: Let f : C D a group homomorphism. Then Im f is a subgroup of D. In Isabelle:...
38
Further work: - Algebraic specifications: More fragments - Theorem proving: The series
39
Statement of the BPL:
40
Further work: - To relate more closely both lines
41
Further work: - To relate more closely both lines - To apply the acquired knowledge to other systems
42
Conclusions: Starting from a very concrete problem...
43
Conclusions: - Symbolic Computation enriched with Formal Methods
44
Conclusions: - Symbolic Computation enriched with Formal Methods - Formal Methods enriched from our experiences with Symbolic Computation
45
Increasing knowledge Conclusions: - Symbolic Computation enriched with Formal Methods - Formal Methods enriched from our experiences with Symbolic Computation
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.