## Stream Differential Equations: concrete formats for coinductive definitions (2011)

### BibTeX

@MISC{Kupke11streamdifferential,

author = {Clemens Kupke and Milad Niqui and Jan Rutten},

title = {Stream Differential Equations: concrete formats for coinductive definitions},

year = {2011}

}

### OpenURL

### Abstract

In this article we give an accessible introduction to stream differential equations, ie., equations that take the shape of differential equations from analysis and that are used to define infinite streams. Furthermore we discuss a syntactic format for stream differential equations that ensures that any system of equations that fits into the format has a unique solution. It turns out that the stream functions that can be defined using our format are precisely the causal stream functions. Finally, we are going to discuss non-standard stream calculus that uses basic (co-)operations different from the usual head and tail operations in order to define and to reason about streams and stream functions. 1

### Citations

1434 | A Calculus of Communicating Systems - Milner - 1980 |

707 | Concurrency and Automata on Infinite Sequences - Park - 1981 |

330 | Universal coalgebra: A theory of systems - Rutten |

297 | Regular Algebra and Finite Machines - Conway - 1971 |

247 | A tutorial on (co)algebras and (co)induction - Jacobs, Rutten - 1997 |

230 | Derivatives of regular expressions - Brzozowski - 1964 |

96 | Coalgebraic logic
- Moss
- 1999
(Show Context)
Citation Context ...nerally all kinds of automata with circular behaviour. Coinduction is studied in various disciplines, including type theory [Coq94, Ber05, GM03] and functional programming [Gor94, Hin08], modal logic =-=[Mos99]-=-, and automata theory [Rut98, KV08]. The notion of coinduction is dual to the classical, well-known notion of induction. This duality is best explained by the theory of coalgebra [JR97, Rut00]. Since ... |

90 | Infinite objects in type theory - Coquand - 1993 |

66 | Automata and coinduction (an exercise in coalgebra
- Rutten
- 1998
(Show Context)
Citation Context ...lves combinations of both quantitative and qualitative aspects. The usefulness of BDEs is illustrated by many recent applications, including work in the following areas: automata and formal languages =-=[Rut98]-=-, analytical differential equations [PE98, Rut05], denotational semantics [BG06], control of discrete event systems [KvS08], synthesis [Rut06, HR10], binary trees [SR10], stream processing networks [N... |

60 | The ubiquitous Prouhet-Thue-Morse sequence
- Allouche, Shallit
- 1999
(Show Context)
Citation Context ... find a closed expression for σ.) Two interesting examples that use that ( )(0), even and odd representation are provided by differential equations for the well-known Thue-Morse and Toeplitz sequence =-=[AS99]-=-. Example 6.4 Let A = F2 be the two-element Boolean field. We are going to define stream constants and operations on the set Fω2 . The following definition should be read as one collection of stream d... |

55 | Behavioural differential equations: a coinductive calculus of streams, automata, and power series
- Rutten
- 2003
(Show Context)
Citation Context ...s (BDEs) that seem to offer a good compromise between generality and practicality. BDEs are a behavioural variant of classical differential equations of mathematical analysis. They were introduced in =-=[Rut03]-=-, building on earlier work in automata theory [Brz64, Con71], formal power series [BR88, McI99], and coalgebra and logic [Rut98, PE98, Rut99]. They are particularly well suited for the specification o... |

53 | Inductive and coinductive types with iteration and recursion - Geuvers - 1992 |

38 |
Rational Series and Their Languages, volume 12
- Reutenauer
- 1988
(Show Context)
Citation Context ...ecalling a bit of elementary stream calculus from [Rut05, Rut08]. 5.1 Stream calculus If we assume that A has some algebraic structure, the set Aω of streams over A inherits (parts of) this structure =-=[BR88]-=-. More specifically, let us assume that 〈A, +, · , 0, 1 〉 is a semiring. Examples are the set 2 = {0, 1} of the Booleans, with disjunction for plus and conjunction for times; and the sets of the natur... |

27 | A tutorial on co-induction and functional programming - Gordon - 1994 |

23 | Filters on coinductive streams, an application to eratosthenes’ sieve - Bertot - 2005 |

20 | Calculus in Coinductive Form - Pavlović, Escardó - 1998 |

20 | Algebraic specification and coalgebraic synthesis of Mealy automata - Rutten - 2006 |

17 | Generalised coinduction
- Bartels
(Show Context)
Citation Context ...en defined as the dual of familiar inductive notions such as iteration and (primitive) recursion, leading to very general and abstract schemes such as (λ-)coiteration and (primitive) corecursion (cf. =-=[Bar03]-=- and [Geu92, MD97, UV99]). Many of the existing formalisms for coinduction are often very general but too abstract for easy use, or concrete enough but limited in their applicability. In this paper, w... |

16 | D.: Data-oblivious stream productivity - Endrullis, Grabmayer, et al. - 2008 |

14 | Productivity of Stream Definitions - Endrullis, Grabmayer, et al. - 2010 |

14 | Primitive (co)recursion and course-of-value (co)iteration, categorically - Uustalu, Vene - 1999 |

13 | Coalgebraic automata theory: Basic results - Kupke, Venema |

13 | On the foundations of corecursion - Moss, Danner - 1997 |

11 | A unifying approach to recursive and corecursive definitions - Gianantonio, Miculan - 2003 |

10 | Processes as formal power series: A coinductive approach to denotational semantics
- Boreale, Gadducci
- 2006
(Show Context)
Citation Context ... BDEs is illustrated by many recent applications, including work in the following areas: automata and formal languages [Rut98], analytical differential equations [PE98, Rut05], denotational semantics =-=[BG06]-=-, control of discrete event systems [KvS08], synthesis [Rut06, HR10], binary trees [SR10], stream processing networks [NR10], concurrent timed systems [Kom10], and language-based security protocols [M... |

10 | Functional pearl: streams and unique fixed points - Hinze - 2008 |

8 | power series, and coinduction: taking input derivatives seriously (extended abstract - Automata - 1999 |

5 | A semiring-based trace semantics for processes with applications to information leakage analysis
- Boreale, Gorla
- 2010
(Show Context)
Citation Context ...6], control of discrete event systems [KvS08], synthesis [Rut06, HR10], binary trees [SR10], stream processing networks [NR10], concurrent timed systems [Kom10], and language-based security protocols =-=[MBG10]-=-. 1.1 Stream differential equations In the present paper, we shall focus on a very specific but at the same time prototypical instance of BDEs, namely stream differential equations (SDEs) [Rut05]. Bel... |

5 |
bitstreams, and circuits
- Algebra
- 2005
(Show Context)
Citation Context ...cols [MBG10]. 1.1 Stream differential equations In the present paper, we shall focus on a very specific but at the same time prototypical instance of BDEs, namely stream differential equations (SDEs) =-=[Rut05]-=-. Below we introduce the basic notions involved, discuss some examples, and give an outline of the remainder of this paper. We define the set of all streams over a given set A by Aω = {σ | σ : IN→ A }... |

5 | Rational streams coalgebraically - Rutten |

3 | Modular control of discrete-event systems with coalgebra
- Komenda, Schuppen
(Show Context)
Citation Context ...ations, including work in the following areas: automata and formal languages [Rut98], analytical differential equations [PE98, Rut05], denotational semantics [BG06], control of discrete event systems =-=[KvS08]-=-, synthesis [Rut06, HR10], binary trees [SR10], stream processing networks [NR10], concurrent timed systems [Kom10], and language-based security protocols [MBG10]. 1.1 Stream differential equations In... |

3 | Symbolic synthesis of Mealy machines from arithmetic bitstream functions
- Hansen, Rutten
- 2010
(Show Context)
Citation Context ...∈ Aω are arbitrary streams. The second component C→ (Ak → Ck) is given by f 7→ f(a1,...,ak) := λx1 . . . λxk (f(a1 : x1, . . . , ak : xk)) For the details on causal functions and final coalgebras see =-=[HR10]-=-. We are now ready to prove the key lemma that allows us to show that any stream function defined in our syntactic format is causal. 14 Lemma 4.13 Let Σ be a signature and let D be a stream definition... |

3 | Sampling, splitting and merging in coinductive stream calculus
- Niqui, Rutten
- 2010
(Show Context)
Citation Context ...8], analytical differential equations [PE98, Rut05], denotational semantics [BG06], control of discrete event systems [KvS08], synthesis [Rut06, HR10], binary trees [SR10], stream processing networks =-=[NR10]-=-, concurrent timed systems [Kom10], and language-based security protocols [MBG10]. 1.1 Stream differential equations In the present paper, we shall focus on a very specific but at the same time protot... |

2 | Complete sets of cooperations
- Kupke, Rutten
(Show Context)
Citation Context ...an be developed parametric in the choice of basic (co-)operations - something we hint at in this article in Section 6 on non-standard stream calculus. These generalisations are discussed in detail in =-=[KR10]-=-. 2 Preliminaries We recall the definition of the set of streams over a set A: Aω = {σ | σ : N→ A} where N is the set of natural numbers including 0. We already defined the stream derivative of a stre... |

2 | series, power serious - Power - 1999 |

1 | Hamming’s exercise in SASL. Hand-written note EWD792 - Dijkstra - 1981 |

1 |
Coinduction in concurrent timed systems
- Komenda
- 2010
(Show Context)
Citation Context ...ions [PE98, Rut05], denotational semantics [BG06], control of discrete event systems [KvS08], synthesis [Rut06, HR10], binary trees [SR10], stream processing networks [NR10], concurrent timed systems =-=[Kom10]-=-, and language-based security protocols [MBG10]. 1.1 Stream differential equations In the present paper, we shall focus on a very specific but at the same time prototypical instance of BDEs, namely st... |

1 | On The Final Coalgebra Of Automatic Sequences
- Kupke, Rutten
- 2011
(Show Context)
Citation Context ...us is an instance of a general result: Every k-automatic sequence in the sense of [AS99] can be defined using a finite number of equations in non-standard stream calculus. The details can be found in =-=[KR11]-=-. 6.3 Coinduction for non-standard stream representations The non-standard stream representations that we discussed are not only useful for definitions but also for coinductive proofs: If we represent... |

1 | Sampling, splitting and merging in coinductive stream calculus - Logic - 1999 |

1 |
A coinductive calculus of binary trees
- Silva, Rutten
(Show Context)
Citation Context ...automata and formal languages [Rut98], analytical differential equations [PE98, Rut05], denotational semantics [BG06], control of discrete event systems [KvS08], synthesis [Rut06, HR10], binary trees =-=[SR10]-=-, stream processing networks [NR10], concurrent timed systems [Kom10], and language-based security protocols [MBG10]. 1.1 Stream differential equations In the present paper, we shall focus on a very s... |