A theory is compositional if complex components can be constructed out of
simpler ones on the basis of their interfaces, without inspecting their
internals. Digital circuits, despite being studied for nearly a century and
used at scale for about half that time, have until recently evaded a fully
compositional theoretical understanding. The sticking point has been the need
to avoid feedback loops that bypass memory elements, the so called
'combinational feedback' problem. This requires examining the internal
structure of a circuit, defeating compositionality. Recent work remedied this
theoretical shortcoming by showing how digital circuits can be presented
compositionally as morphisms in a freely generated Cartesian traced (or
dataflow) category. The focus was to support a better syntactical understanding
of digital circuits, culminating in the formulation of novel operational
semantics for digital circuits. In this paper we shift the focus onto the
denotational theory of such circuits, interpreting them as functions on streams
with to certain properties. These ensure that the model is fully abstract, i.e.
the equational theory and the semantic model are in perfect agreement. To
support this result we introduce two key equations: the first can reduce
circuits with combinational feedback to circuits without combinational feedback
via finite unfoldings of the loop, and the second can translate between open
circuits with the same behaviour syntactically by reducing the problem to
checking a finite number of closed circuits. The most important consequence of
this new semantics is that we can now give a recipe that ensures a circuit
always produces observable output, thus using the denotational model to inform
and improve the operational semantics.Comment: Restructured and refined presentation, 21 page