Isabelle/UTP: A mechanised theory engineering framework
Simon Foster Frank Zeyda Jim Woodcock
University of York
June 3, 2014
1
Isabelle/UTP: A mechanised theory engineering framework Simon - - PowerPoint PPT Presentation
Isabelle/UTP: A mechanised theory engineering framework Simon Foster Frank Zeyda Jim Woodcock University of York June 3, 2014 1 Outline Introduction Parametric Predicate Model Harnessing Isabelle typing Proof by Transfer Verification in
1
2
3
◮ concurrency, object-orientation, design by contract ◮ continuous time, probability, · · ·
4
5
6
7
8
◮ expressive predicate model ◮ little proof automation ◮ manual type checking
◮ directly use type system ◮ directly use tactics ◮ no explicit support for variables
◮ faithful implementation of the logic ◮ consistency? ◮ cannot take advantage of automated proof 9
◮ deep embeddings best for meta-logical proofs (more control) ◮ allows embeddings best for verification (efficiency) ◮ can we do both in the same system?
10
11
12
◮ core predicates (binding sets – cf. Z in HOL) ◮ alphabetised predicates (core predicate + alphabet)
13
14
15
16
17
18
◮ provide an easy link into existing HOL algberas ◮ (e.g. a single relational identity) ◮ easier syntax – no need for alphabet in x := v ◮ proofs need not respect the alphabet in each step
◮ are necessary for UTP (particular theories) ◮ lattice / fixed-point theory don’t quite work for core preds ◮ restricted to a finite set of variables ◮ can be easier to prove freeness properties
19
20
◮ enables implementation of dependent products ◮ can express sets of heterogeneous variables (alphabets)
21
22
24
25
26
27
28
◮ utp-pred-tac: UTP predicates as HOL predicates ◮ handles std. logic operators ∧, ∨, ⇒, ⊑, ¬, ∃, ∀ ◮ utp-rel-tac: UTP predicates as HOL relations ◮ classical binary relations: P (A × A) ◮ handles most rel operators ∪, ∩, , II, false, ⌣ ◮ utp-xrel-tac: well-formed UTP relations as HOL relations ◮ adds ¬ and true: complete relation algebra 29
30
31
32
33
34
35
36