# Streams

A stream is an infinite sequence of data elements

## Theory

We specify a stream by means of a set of equations. We developed techniques for automatically proving that streams are well-defined and/or productive and/or equal.

## Visualization

Boolean streams can be visualized by turtle visualization. Fix a stream, a number N and two angles a0 and a1. Then the elements of the stream are traversed: if the symbol 0 is read then the drawing direction is moved a0 degrees to the right; if the symbol 1 is read then the drawing direction is moved a1 degrees to the left. In both cases after doing so a line of unit length is drawn. This is repeated N times.
• The Fibonacci stream FIB, defined by
FIB = f(FIB)
for the stream function f defined by
f(0:s) = 0:1:f(s)
f(1:s) = 0:f(s)
• The stream Q, defined by
Q = 1:f(Q)
for the stream function f defined by
f(0:s) = 1:0:f(s)
f(1:s) = 0:0:1:f(s)
• Recently (2015), a paper on Turtle graphics of morphic streams was written, giving criteria for turtles to be finite, fractal or space filling, and including many examples.