Reconciling Semantics, Implementation and Users Grard Berry INRIA - - PowerPoint PPT Presentation

reconciling semantics implementation
SMART_READER_LITE
LIVE PREVIEW

Reconciling Semantics, Implementation and Users Grard Berry INRIA - - PowerPoint PPT Presentation

Reconciling Semantics, Implementation and Users Grard Berry INRIA Sophia-Antipolis http://www-sop.inria.fr/Gerard.Berry Milner Symposium, Edinburgh, April 16-19, 2012 http://events.inf.ed.ac.uk/Milner2012/ My Personal Moto


slide-1
SLIDE 1

Reconciling Semantics, Implementation and Users

Gérard Berry

INRIA Sophia-Antipolis http://www-sop.inria.fr/Gerard.Berry Milner Symposium, Edinburgh, April 16-19, 2012 http://events.inf.ed.ac.uk/Milner2012/

slide-2
SLIDE 2

18/04/2012 2

  • G. Berry, Milner Symposium,
  • from good fortune

My Personal Moto

On jamais à dbol

slide-3
SLIDE 3

1972 : Stanford AI Lab

proving bubble sort with LCF, with Robin as a personal mentor ! with a TV button on the terminal to watch football

18/04/2012 3

  • G. Berry, Milner Symposium,

My Priviledged Relation with Robin

1976 (?) : reviewing the Full Abstraction paper

and devoting 7 years of my life to the problem

1981? : spending a week in the attic at Crescent 1982 : understanding that real-time is 100% different from Powerdomains, CCS, etc => Esterel

slide-4
SLIDE 4

18/04/2012 4

  • G. Berry, Milner Symposium,

1983 (?) : understanding the virtues of SCCS

formalizing synchrony principle but SCCS was too weak for describing Esterel fortunately, SOS semantics came in !

1989 : Robin tells me he wants to come to Sophia for a sabbatical but I am myself going to Paris for a sabbatical ! => Robin occupies my nice office at CMA 1989 : the CHAM paper is accepted at POPL but rejected by both referees for TCS

  • then accepted by the editor nevertheless
slide-5
SLIDE 5

18/04/2012 5

  • G. Berry, Milner Symposium,

1992 : the Berry-Gonthier Esterel paper in SCP although no referee ever replied ! 1991 : first Milner Lecture in Old College 2000 : The Foundations of Esterel In Proof, Language and Interaction: Essays in Honour

  • f Robin Milner

2005 : Robin elected foreign associate member

  • f Académie des sciences
slide-6
SLIDE 6

18/04/2012 6

  • G. Berry, Milner Symposium,

2010 : Seven Keys to the Digital Futures Informatics Forum, Edinbrrrrrrrgh Special thanks to Michael Fourman

slide-7
SLIDE 7

18/04/2012 7

  • G. Berry, Milner Symposium,

Care for Users

slide-8
SLIDE 8

Domain equations

why such a gap between semantics and implementation? make semantic as trivial as implementation !

18/04/2012 8

  • G. Berry, Milner Symposium,

Semantics vs. Implementation vs. users

Synchronous concurrency

symmetry or asymmetry? SCCS vs. Esterel why my users love asymmetric broadcasting

Computing vs. proving

viewing circuits as semantic proof networks proving that electrical logic is intrinsically constructive the Hurry-Coward correspondence

CHAMonix Chemical Abstract Machine

Transition rules are too intellectual, CHAM is for kids !

slide-9
SLIDE 9

intTree int + int intTree intTree

18/04/2012 9

  • G. Berry, Milner Symposium,

Scott Domain Equations

intTree Leaf of int | { Node of int; Left of intTree; Right of intTree }; What is `cpo isomorphism instead of equality ! => take fixpoints in cpo categories instead of cpos D int + (D D)

slide-10
SLIDE 10

18/04/2012 10

  • G. Berry, Milner Symposium,

Concrete Data Structures (Kahn-Plotkin)

S Leaf Node L R 1 2

Beautiful cpo-representation theorem CDS solve domain equations using only set equality

L R Left.S Right.S L R L R Left.S.Leaf 12 Left.S.Left

slide-11
SLIDE 11

18/04/2012 11

  • G. Berry, Milner Symposium,

Function Spaces => Sequential Algorithms

tt ff tt ff C1 tt ff C Lor : C C1 ? tt ! tt ff C2 ? tt ! tt ff ! ff Sor : C C1 ? tt C2 ? tt ! tt ff ! tt ff C2 ? tt ! tt ff ! ff C2

slide-12
SLIDE 12

18/04/2012 12

  • G. Berry, Milner Symposium,

Several Algorithms per Function

tt ff tt ff C1 tt ff C Sor-1-2 : C C1 ? tt C2 ? tt ! tt ff ! tt ff C2 ? tt ! tt ff ! ff C2 Sor-2-1 : C C2 ? tt C1 ? tt ! tt ff ! tt ff C1 ? tt ! tt ff ! ff

slide-13
SLIDE 13

18/04/2012 13

  • G. Berry, Milner Symposium,

Sequential Algorithms CDS

{ }C ! tt ! ff C1 ? C2 ? {C1tt }C ! tt ! ff C2 ? {C1ff }C ! tt ! ff C2 ? {C1tt,C2tt }C ! tt ! ff {C1tt,C2ff }C ! tt ! ff Theorem: algorithms between CDS form a CDS Corollary: domain equations still solved by equality !

slide-14
SLIDE 14

18/04/2012 14

  • G. Berry, Milner Symposium,

Parametrized Domain Equations

Tree Leaf of | { Node of ; Left of intTree; Right of intTree}; Semantics (Plotkin-Smyth) : Much fancier category theory Type checking : more clever (Milner) Implementation: still nothing to do ! D + ( D D )

slide-15
SLIDE 15

18/04/2012 15

  • G. Berry, Milner Symposium,

Why do you need aspirin + ibuprofen + paracetamol to make the semantics while there is no need for any code ? CDS: because solution is by equality, not isomorphism! => standard pointer manipulation ( naming)

slide-16
SLIDE 16

CDS led me to redefine a -calculus model as a CCC Synchronously, 3 papers proposed -models notions

Hindley-Longo Barendregt Meyer

They turned out to be equivalent So I lost 3 to 1 !

18/04/2012 16

  • G. Berry, Milner Symposium,

Science is sooooo conservative

slide-17
SLIDE 17

18/04/2012 17

  • G. Berry, Milner Symposium,

The Darwin Sieve: p, kp p

3 9 7 28 4 7 7 7 2

Banâtre - Le Métayer : GAMMA Berry - Boudol : CHAM

slide-18
SLIDE 18

18/04/2012 18

  • G. Berry, Milner Symposium,

CSP / CCS = Rendezvous

P Q R S

  • code de
  • t := 10 ;
slide-19
SLIDE 19

18/04/2012 19

  • G. Berry, Milner Symposium,

Deadlock

Lise and Laure

slide-20
SLIDE 20

18/04/2012 20

  • G. Berry, Milner Symposium,

Starvation

Lise, Manon, and Laure

slide-21
SLIDE 21

18/04/2012 21

  • G. Berry, Milner Symposium,

Nothing can illustrate vibration better than Bianca Castafiore, Hergé's famous prima

  • donna. See [1] for details. The power of her

voice forcibly shakes the microphone and the ears of the poor spectators. [1] King's Ottokar Sceptre, Hergé, page 29, last drawing.

Information Propagation by Vibration

Sound, light, electrons, program counter, etc.

slide-22
SLIDE 22

Actions form a free group

1, a, b, ab, a-1 aa-1 1 abcd-1

Parallel composition is product

18/04/2012 22

  • G. Berry, Milner Symposium,

SCCS as a model ?

But not sufficient for Esterel!

X := 0; X:= X+1; at the same time, in the right order!

slide-23
SLIDE 23

CCS / SCCS: a.P start P when a occurs

18/04/2012 23

  • G. Berry, Milner Symposium,

Triggering vs. Preemption

SOS = SuperGordon to the rescue Esterel : abort P when a stop P when a occurs Hard and unnatural to specify in SCCS !

slide-24
SLIDE 24

18/04/2012 24

  • G. Berry, Milner Symposium,

Concurrency + Determinism Calculations are feasible

Newtonian Mechanics Automatic 0-Delay Attraction Combination

SCCS: free combination Esterel: vector addition

slide-25
SLIDE 25

18/04/2012 25

  • G. Berry, Milner Symposium,

Bianca Castafiore singing for the King Muskar XII in Klow, Syldavia. King's Ottokar Sceptre, page 38, first drawing. Although the speed of sounds is finite, it is fast enough to look infinite. Full abstraction!

Zero Delay and Full Abstraction

Specify with zero-delay Implement with predictable delay Control room size

If room is small enough, predictable delay implements zero-delay

slide-26
SLIDE 26

18/04/2012 26

  • G. Berry, Milner Symposium,

George school open day, Oct. 2nd, 2010

slide-27
SLIDE 27

18/04/2012 27

  • G. Berry, Milner Symposium,

Edinburgh is also a Synchrony City !

slide-28
SLIDE 28

18/04/2012 28

  • G. Berry, Milner Symposium,

The ABRO Example

Emit O as soon as A and B have arrived Reset behavior each time R is received Memory write R : Request A : Address B : Data O : Write

A / B / A / O B / O A B / O R / R / R / R /

slide-29
SLIDE 29

18/04/2012 29

  • G. Berry, Milner Symposium,

loop abort { await A || await B }; emit O ; halt when R; end loop loop abort { await A || await B }; emit O ; halt when R; end loop loop abort { await A || await B }; emit O ; halt when R end loop

Esterel Linear Specification

A / B / A / O B / O A B / O R / R / R / R /

slide-30
SLIDE 30

18/04/2012 30

  • G. Berry, Milner Symposium,

The Hierarchical ABRO Circuit

loop abort { await A || await B }; emit O ; halt when R end loop

slide-31
SLIDE 31

18/04/2012 31

  • G. Berry, Milner Symposium,

The Hierarchical ABRO Circuit

loop abort { await A || await B }; emit O ; halt when R end loop

slide-32
SLIDE 32

18/04/2012 32

  • G. Berry, Milner Symposium,

Electicity is Constructive

Hamlet : ToBe ToBe or not ToBe ToBe Electrically stabilizes to for some gate and wire delays but not for all delays

slide-33
SLIDE 33

18/04/2012 33

  • G. Berry, Milner Symposium,

Question : When does a cyclic circuit stabilize for all gate and wire delays? Theorem: if and only if equations can be solved using only Constructive Boolean Logic

  • (Mendler, Shiple, and Berry, FMCS April 2012)