Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 It pays to be Persistent Dina Goldin, U.Mass/Boston (U.Conn) Joint work with Scott Smolka, SUNY at Stony Brook Peter Wegner, Brown University.

Similar presentations


Presentation on theme: "1 It pays to be Persistent Dina Goldin, U.Mass/Boston (U.Conn) Joint work with Scott Smolka, SUNY at Stony Brook Peter Wegner, Brown University."— Presentation transcript:

1 1 It pays to be Persistent Dina Goldin, U.Mass/Boston (U.Conn) Joint work with Scott Smolka, SUNY at Stony Brook Peter Wegner, Brown University

2 2 Functions or objects? Functions (side-effect-free) or objects: does it matter for modeling programs? Objects contain persistent values: x1 = foo(args 1)y1 = cntr(add 1) x2 = foo(args 2) y2 = cntr(get ttl) x3 = foo(args 3)y3 = cntr(add 2) x4 = foo(args 2)y4 = cntr(get ttl) _________________________________________________ x2 = x4y2  y4 History dependence (emerges in the context of multiple invocations).

3 3 Concurrent Processes Concurrency: parallel execution of interacting processes. Processes: stream-based computational semantics. Bisimulation: a finer notion of equivalence, appropriate for dynamic environments. s P(s) = a.P(s’) S’ a

4 4 Algorithmic vs. Interactive Computation finite-size input (string) all necessary info available at start (closed system) computation ends once answer is generated this notion of computation is captured by Church-Turing thesis dynamically generated stream of input tokens (requests, percepts, messages) later inputs depend on earlier outputs (“lack of modularity”) and vice versa (“history dep.”) computation not assumed to end objects, processes, components, control devices, reactive systems, intelligent agents,

5 5 Persistent Turing Machines (PTMs) Equivalence relations for PTMs Amnesic Turing Machines (ATMs) Comparing PTMs and ATMs Outline

6 6 Nondeterministic 3-tape TMs s - current state w 1 - contents of input tape w 2 - contents of work tape w 3 - contents of output tape n 1, n 2, n 3 - tape head posns Computation is a sequence of transitions: Configurations: input work output S

7 7 Extending N3TM computations Inputs are dynamic streams of tokens (strings). For each input token, there is an N3TM computation generating a corresponding output token. The contents w of the work tape at the beginning of each N3TM computation is the same as at the end of the previous one. f M (input k, w k-1 ) = (output k, w k )

8 8 Persistent Stream Language of a PTM: set of streams Persistent Stream Languages in 1 S0S0   ShSh out 1 w1w1 in 1 in 2 S0S0 w1w1  ShSh out 2 w2w2 in 2... Persistent Turing Machine (PTM): N3TM with persistent stream-based computational semantics

9 9 inputs in 1 ; outputs 1 inputs in 2 ; outputs 1 st bit of in 1 inputs in 3 ; outputs 1 st bit of in 2... Example: PTM Example : # 1 0 (1*,1) (0*,1) (1*,0) (1*,1) (0*,0) )( Latch MPSL 

10 10 = ms = PSL PTM Equivalence Relations M 1 = PSL M 2 : PSL (M 1 ) = PSL (M 2 ) M 1 = ms M 2 :  bijection  between their reachable memories s.t. 1.  (  ) =  2. f M 1 (i, w) = (o, w’) iff f M 2 (i,  (w)) = (o,  (w’))

11 11 = ms = bisim = PSL PTM Equivalence Relations M 1 = bisim M 2 :  relation R between their reachable memories s.t. 1. R( ,  ) 2. If R(w 1,w 2 ) and f M 1 (i,w 1 ) = (o,w 1 ’), then  w 2 ’ s.t. R(w 1 ’,w 2 ’) and f M 2 (i,w 2 ) = (o,w 2 ’) 3. Same thing, but with 1 and 2 reversed

12 12 Infinite Equivalence Hierarchy L k (M) - stream prefix language of PTM M set of prefixes of length  k for streams in PSL(M). L  (M) - U k L k (M) A new notion of equivalence: M 1 = k M 2 : L k (M 1 ) = L k ( M 2 ) == =2=2 =1=1...

13 13 Equivalence Hierarchy Gap Proof: construct PTMs M 1 and M 2 where L  (M 1 ) = L  (M 2 ) but PSL (M 1 ) = PSL (M 2 ) Note: M 2 exhibits unbounded non-determinism / = ms = bisim = PSL == =2=2 =1=1...

14 14 Amnesic PTM Computation: stream-based but not persistent in 1 S0S0   ShSh out 1 w1w1 in 1 in 2 S0S0   ShSh out 2 w2w2 in 2 Amnesic Stream Language of M: ASL(M) M 1 = ASL M 1 : ASL(M 1 ) = ASL(M 2 ) ASL = {ASL(M) | M is an N3TM }

15 15 Proof : Given an N3TM M, construct M ’ such that PSL(M') = ASL(M) Consider 3 rd elem. (0,0) of  io for M latch ! For any M with  io in ASL(M), there will also be a stream in ASL(M) with (0,0) as 1 st element. Therefore, for all M, ASL(M)  PSL(M latch ). It pays to be Persistent ASLPSL

16 16 Interactive computability - A stream language L is interactively computable if L  PSL (L’s properties expressed in Temporal Logic) - A behavior B is interactively computable if B is bisimilar to some PTM M Interactive complexity Where are the ports? Future Work

17 17 Sequential Interaction Machines [Wegner&Goldin] Online algorithms Dataflow, process algebra, I/O automata, synchronous languages, finite/pushdown automata over infinite words, interaction games, reactive modules, … Our approach: language- and domain-independent effective devices that distinguish inputs and outputs Related Work

18 18 Reachable Memories of a PTM Set of words (work-tape contents) w encountered after zero or more macrosteps:


Download ppt "1 It pays to be Persistent Dina Goldin, U.Mass/Boston (U.Conn) Joint work with Scott Smolka, SUNY at Stony Brook Peter Wegner, Brown University."

Similar presentations


Ads by Google