Petros Papapanagiotou Automated Reasoning Lecture 9 What have you - - PowerPoint PPT Presentation

petros papapanagiotou
SMART_READER_LITE
LIVE PREVIEW

Petros Papapanagiotou Automated Reasoning Lecture 9 What have you - - PowerPoint PPT Presentation

Petros Papapanagiotou Automated Reasoning Lecture 9 What have you done so far? Done To Go 2 Learned new things!.. 3 ...and some (more) logic!.. 4 ...and practiced using Isabelle!.. 5 ...but why? 6 Where is the connection...


slide-1
SLIDE 1 Petros Papapanagiotou Automated Reasoning Lecture 9
slide-2
SLIDE 2

What have you done so far?

Done To Go 2
slide-3
SLIDE 3

Learned new things!..

3
slide-4
SLIDE 4

...and some (more) logic!..

4
slide-5
SLIDE 5

...and practiced using Isabelle!..

5
slide-6
SLIDE 6

...but why?

6
slide-7
SLIDE 7

Where is the connection...

...between these... ...and these?

7
slide-8
SLIDE 8

Oops!

8
slide-9
SLIDE 9

“LOGICAL” errors!

9
slide-10
SLIDE 10

“LOGICAL” solution!

10
slide-11
SLIDE 11

“LOGICAL” solution!

11

Formal Verification!

slide-12
SLIDE 12

Use logic to...

 Describe  Specify  Reason  Assist

12
slide-13
SLIDE 13

Web Services

13
slide-14
SLIDE 14

Web Services

14
slide-15
SLIDE 15

Web Services

15
slide-16
SLIDE 16

Web Service Description:

Inputs Outputs Preconditions Effects

16

Service

slide-17
SLIDE 17

Web Service Description: IOPEs

17

Service

Input Output

slide-18
SLIDE 18

Web Service Description: IOPEs

18

Service

Preconditions Effects

slide-19
SLIDE 19

Service

Web Service Description: More?

19

Cost! Location! Quality!

Certification!

slide-20
SLIDE 20

Web Services Description Language

20
slide-21
SLIDE 21

Business Process Execution Language

21
slide-22
SLIDE 22

Semantic Web Services: OWL-S

22
slide-23
SLIDE 23

Example domain

23
slide-24
SLIDE 24 24

Buyer

USD to NOK Cm to Inch Select Model Select Length Select Ski

slide-25
SLIDE 25

Example domain

25
slide-26
SLIDE 26 26

Buyer

House Alert Home Directory Criminal Service Estate Agent Mortgage Service Contract Service Title Search Home Insurance Settlement
slide-27
SLIDE 27

Web Services Composition

27 Home Directory House Alert Settlement Mortgage Service Contract Service Criminal Service Estate Agent Title Search Home Insurance

Buyer

User Input Settlement
  • r
Exception
slide-28
SLIDE 28

Requirements

 Compose correctly  Handle exceptions  Provide trust

28
slide-29
SLIDE 29

We are also...

 Offline  Quality-driven  Formal

29
slide-30
SLIDE 30

The approach

Proofs as processes

Classical Linear Logic π- calculus

30
slide-31
SLIDE 31

HOL Light

Theorem Prover

The approach

31

Proofs as processes

Classical Linear Logic π- calculus

slide-32
SLIDE 32

The theory: π-calculus

32 P ::= | 0 null process | x(y).P input | x<y>.P
  • utput
|(ν x) P local variable | P || P parallel processes | P + P choice
slide-33
SLIDE 33

The theory: Classical Linear Logic

 FOL

⟦ p ; q ⟧ ⇒ p

 CLL

⟦ p ; q ⟧ ⇒ p

33
slide-34
SLIDE 34

The theory: Classical Linear Logic

34

Red: input Blue: output

Disjunction Conjunction Multiplicative

⅋ ⊗

Additive

⊕ &

Negation

.⊥

slide-35
SLIDE 35

The theory: Classical Linear Logic

35

Red: input Blue: output

Disjunction Conjunction Multiplicative

⅋ ⊗

Additive

⊕ &

Negation

.⊥

¬ ∧ ∨

slide-36
SLIDE 36

The theory: Classical Linear Logic

⊢ A⊥, B

36
slide-37
SLIDE 37

The theory: Classical Linear Logic

⊢ A⊥, B ⊢ B⊥, C

37
slide-38
SLIDE 38

The theory: Classical Linear Logic

⊢ A⊥, B ⊢ B⊥, C ⊢ A⊥, C

38
slide-39
SLIDE 39

The theory: Classical Linear Logic

⊢ Height_cm ⊥, Weight_kg ⊥, Length_cm ⊢ Length_cm ⊥, Length_inch ⊢ Height_cm⊥, Weight_kg ⊥, Length_inch 39
slide-40
SLIDE 40

The theory: Classical Linear Logic

⊢ Height_cm ⊥, Weight_kg ⊥, Length_cm ⊢ Length_cm ⊥, Length_inch ⊢ Height_cm⊥, Weight_kg ⊥, Length_inch 40

Select Length Cm to Inch

slide-41
SLIDE 41

The theory: Classical Linear Logic

41
slide-42
SLIDE 42

The theory: Proofs-as-processes

42

Γ ⇒ π

slide-43
SLIDE 43

Example: Tensor (⊗) rule

43
slide-44
SLIDE 44 44
slide-45
SLIDE 45 45

B U F F E R

P A R A L L E L C H O I C E S E Q U E N C E

slide-46
SLIDE 46

WS Composition using proofs-as-processes

Translate to CLL Prove Requested Service Extract π-calculus term Realisation ...

46
slide-47
SLIDE 47

WS Composition using proofs-as-processes

Translate to CLL Prove Requested Service Extract π-calculus term Realisation ...

47
slide-48
SLIDE 48

Ski example specified in CLL

SelectModel:

⊢ PRICE_LIMIT⊥, SKILL_LEVEL⊥, BRAND ⊗ MODEL

SelectLength:

⊢ HEIGHT_CM⊥, WEIGHT_KG⊥, LENGTH_CM

Cm2Inch:

⊢ LENGTH_CM⊥, LENGTH_IN

Usd2Nok:

⊢ PRICE_USD⊥, PRICE_NOK

SelectSki:

⊢ LENGTH_IN⊥, BRAND⊥, MODEL⊥, PRICE_USD ⊕ EXCEPTION 48
slide-49
SLIDE 49

Real Estate Example specified in CLL

1. HomeDir: ⊢ HOME_CRITERIA⊥, HOME_LISTING 2. CriminalService: ⊢ REGION⊥, CRIMINAL_ACT 3. HouseAlert: ⊢ HOME_LISTING⊥, CRIMINAL_ACT⊥,

DESIRED_LEVEL⊥, HOME_TITLE_ID ⊗ HOME_AGENT_ID ⊗ HOME_DESC

4. Buyer: ⊢ HOME_DESC⊥, HOME_OFFER 5. EstateAgentSeller: ⊢ HOME_AGENT_ID⊥, HOME_OFFER⊥,

ACCEPTED_OFFER ⊕ REJECTED_OFFER

6. MortgageService: ⊢ CLIENT_INFO⊥, PREAPPROVAL ⊕ EXM 7. ContractService: ⊢ PREAPPROVAL⊥, ACCEPTED_OFFER⊥,

CONTRACT

8. TitleSearch: ⊢ HOME_TITLE_ID⊥, TITLE ⊗

(HOME_INSURANCE ⊕ HOME_INS_ID)

9. HomeInsurance: ⊢ HOME_INS_ID⊥, HOME_INS 10. Settlement: ⊢ TITLE⊥, CONTRACT⊥, HOME_INS⊥,

SETTLEMENT

49
slide-50
SLIDE 50

Ski Request in CLL

⊢ PRICE_LIMIT⊥, SKILL_LEVEL⊥, HEIGHT_CM⊥, WEIGHT_KG⊥, PRICE_NOK ⊕ ?EXCEPTION

50
slide-51
SLIDE 51

Ski Request in CLL

⊢ PRICE_LIMIT⊥, SKILL_LEVEL⊥, HEIGHT_CM⊥, WEIGHT_KG⊥, PRICE_NOK ⊕ ?EXCEPTION

51 What is the final exception?

 Metavariables + unification!

slide-52
SLIDE 52

WS Composition using proofs-as-processes

Translate to CLL Prove Requested Service Extract π-calculus term Realisation ...

52
slide-53
SLIDE 53

Proof for the Ski example

53
slide-54
SLIDE 54

WS Composition using proofs-as-processes

Translate to CLL Prove Requested Service Extract π-calculus term Realisation ...

54
slide-55
SLIDE 55

Ski Result in π-calculus

55
slide-56
SLIDE 56

Real Estate Result

56
slide-57
SLIDE 57

WS Composition using proofs-as-processes

Translate to CLL Prove Requested Service Extract π-calculus term Realisation Execution

57
slide-58
SLIDE 58

Execution: PiVizTool

 π-calculus is executable!  PiVizTool:

 Visualisation of connections  Animation of execution  Empirical verification

58
slide-59
SLIDE 59

PiVizTool

59
slide-60
SLIDE 60

WS Composition using proofs-as-processes

Translate to CLL Prove Requested Service Extract π-calculus term Realisation Translation

Upcoming! BPEL OWL-S 60
slide-61
SLIDE 61

Implementation: Details

 HOL Light – flexible, programmable  Isabelle Light – procedural proofs, metavariables

CLL

 Conservative  Combined inference rules

– proofs-as-processes π-calculus

 Syntax (polymorphic

type)

 Substitution  A few functions 61
slide-62
SLIDE 62

Implementation: π-calculus

P ::= define_type (A) Agent = | 0 Zero | x(y).P | In A (A list) Agent | x<y>.P | Out A (A list) Agent | (ν x) P | Res (A list) Agent | P || P | Comp Agent Agent | P + P | Plus Agent Agent 62
slide-63
SLIDE 63

Implementation: CLL

63
slide-64
SLIDE 64

Implementation: Proofs-as- processes

64
slide-65
SLIDE 65

References

 P. Papapanagiotou and J. Fleuriot (2011).

Formal verification of Web Services composition using Linear Logic and the pi- calculus, In Proceedings of 9th IEEE European

Conference on Web Services (ECOWS 2011), pages 31-38, September 14-16, 2011, Lugano, Switzerland. IEEE Computer Society.

 P. Papapanagiotou and J. Fleuriot (2011).

A theorem proving framework for the formal verification of Web Services Composition,

In Proceedings WWV 2011, EPTCS 61, pp. 1-16, doi: 10.4204/EPTCS.61.1 65
slide-66
SLIDE 66

Prospect for

MSc Pr MSc Project

  • ject

and beyond!

Contact us!

66