Presentation is loading. Please wait.

Presentation is loading. Please wait.

Formal Analysis of Symbolic Computation Systems for Algebraic Topology Julio Rubio Universidad de La Rioja (Spain)

Similar presentations


Presentation on theme: "Formal Analysis of Symbolic Computation Systems for Algebraic Topology Julio Rubio Universidad de La Rioja (Spain)"— Presentation transcript:

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


Download ppt "Formal Analysis of Symbolic Computation Systems for Algebraic Topology Julio Rubio Universidad de La Rioja (Spain)"

Similar presentations


Ads by Google