focusing in proof-search and concurrent synchronization deepak garg carnegie mellon university...

36
Focusing in Proof-search and Concurrent Synchronization Deepak Garg Carnegie Mellon University (Based on joint work with Frank Pfenning)

Post on 20-Dec-2015

219 views

Category:

Documents


2 download

TRANSCRIPT

Focusing in Proof-search and

Concurrent Synchronization

Deepak GargCarnegie Mellon University

(Based on joint work with Frank Pfenning)

Focusing in Proof-search and Concurrent Synchronization 2

Objectives

• Direct translation of asynchronous pi-calculus to intuitionistic linear logic formulas

• Committed Forward chaining in linear logic to simulate pi-calculus reductions

• Combine with focusing to obtain atomicity in synchronization

Focusing in Proof-search and Concurrent Synchronization 3

Direct translation

• Connectives of pi-calculus map to connectives of linear logic

First attempt at translation

(No focusing, unsound!)

Focusing in Proof-search and Concurrent Synchronization 6

Pi-calculus, Linear Logic

• Asynchronous pi-calculus (without replication):

• Intuitionistic linear logic fragment:

Focusing in Proof-search and Concurrent Synchronization 7

Pi-calculus: semantics

• Modified CHAM semantics

Focusing in Proof-search and Concurrent Synchronization 8

Linear Logic: Forward Chaining

• Judgment:

Term variables Formulas (Linear)

Focusing in Proof-search and Concurrent Synchronization 9

Linear Logic: Forward Chaining

Focusing in Proof-search and Concurrent Synchronization 10

Forward Chaining as Rewriting

Focusing in Proof-search and Concurrent Synchronization 11

Forward Chaining as Rewriting

Focusing in Proof-search and Concurrent Synchronization 12

Forward Chaining as Rewriting

Focusing in Proof-search and Concurrent Synchronization 13

Translation

Focusing in Proof-search and Concurrent Synchronization 14

Simulation example

Focusing in Proof-search and Concurrent Synchronization 15

Unsound!

• Another possible reduction sequence:

Focusing in Proof-search and Concurrent Synchronization 16

Unsoundness analysis

• Forward chaining may get stuck incorrectly

• Universal quantifier and implication in inputs must be eliminated simultaneously

• Can be done using focusing– Each communication is exactly one focusing

Focusing in Forward Chaining

Focusing in Proof-search and Concurrent Synchronization 18

Synchronous and Asynchronous

• Divide formulas into (right) synchronous S and (right) asynchronous A

• Coerce S to A via a monad (CLF, LolliMon)

Focusing in Proof-search and Concurrent Synchronization 19

Focused Forward Chaining

• Judgments

• Different from CLF focusing– Decomposition of ­, 9 on left is not in focus– No right rules

Focusing in Proof-search and Concurrent Synchronization 20

Focusing in Proof-search and Concurrent Synchronization 21

Focusing in Proof-search and Concurrent Synchronization 22

Focusing in Proof-search and Concurrent Synchronization 23

Focused Forward Chaining as Rewriting

• We read rules bottom up, ignore synchronous goals and get a conditional rewrite system.

• Judgments:

Unchanged

Focusing in Proof-search and Concurrent Synchronization 28

Complete Rewrite System

Focusing in Proof-search and Concurrent Synchronization 29

Translation of the pi-calculus

Focusing in Proof-search and Concurrent Synchronization 30

Simulation example

Focusing in Proof-search and Concurrent Synchronization 31

Simulation example

Focusing in Proof-search and Concurrent Synchronization 32

Correctness of translation

Focusing in Proof-search and Concurrent Synchronization 33

A Strange External Choice…

• What does A&B correspond to in the pi-calculus?

• It corresponds to external choice between input/output actions

Focusing in Proof-search and Concurrent Synchronization 34

Extension to the logic

• Extension of asynchronous formulas

• New focusing rules

Focusing in Proof-search and Concurrent Synchronization 35

Translation of choice

Correctness results remain the same

Focusing in Proof-search and Concurrent Synchronization 36

Expressiveness

• How expressive is this extension of the asynchronous pi-calculus?

• Conjecture: It is as expressive as the synchronous pi-calculus (with choice, without replication)

- Translation follows from Boudol’s encoding

Focusing in Proof-search and Concurrent Synchronization 37

3-way synchronization

• Can encode receivers with 2 simultaneous inputs

Focusing in Proof-search and Concurrent Synchronization 38

Encoding 3-way synchronization

• Works because both implications must be eliminated in one focusing step

• Generalizes to n-way inputs

Focusing in Proof-search and Concurrent Synchronization 39

Other connectives

Focusing in Proof-search and Concurrent Synchronization 40

Summary

• Dynamic semantics of the asynchronous pi-calculus can be simulated using focusing and forward chaining

• Focusing – atomicity in synchronization

• Correspondence between connectives of the pi-calculus and intuitionistic linear logic

Focusing in Proof-search and Concurrent Synchronization 41

Related Work

• Translation idea is not new– Miller92 – pi-calculus as a theory in linear

logic– Cervesato03 – similar idea, no focusing

• Abramsky93 – classical logic and concurrency

• Concurrent Logic Programming