next up previous
Next: Compositional closure Up: Partial constructions Previous: Inductive construction

   
Dual trees

The Petersson-Synek tree family satisfies the following equation, in which the general term of the family is equated with a sum of products, and the equation is an isomorphism between the sets:

\begin{displaymath}T(a:A) \; \ensuremath{\cong}\; \Sigma_{b:B(a)}\Pi_{c:C(a,b)}T(d(a,b,c))
\end{displaymath}

In section 1 we extended them slightly to families of partial trees, as part of the `$\ast$' construction.

\begin{displaymath}B^\ast(a:A) \ensuremath{\cong}\begin{array}[t]{rl}
\mbox{} &...
...ma_{b:B(a)}
\Pi_{c:C(a,b)}
B^\ast(d(a,b,c)) \; \}
\end{array}\end{displaymath}

Both these families are minimal solutions of their respective equations.

An interesting `dual' of the `$\ast$' construction is obtained by switching the order of the `$\Pi$' and `$\Sigma$' set constructors in the equation immediately above. In a preliminary form, the equation becomes the one immediately following. This turns out to be a very useful twist in connection with state machines, described in section 4.

\begin{displaymath}B_\ast(a:A) \ensuremath{\cong}\begin{array}[t]{rl}
\mbox{} &...
...\Pi_{b:B(a)}\Sigma_{c:C(a,b)}B_\ast(d(a,b,c)) \; \}
\end{array}\end{displaymath}

From the sake of clarity, it seems slightly clearer to pull the equation back into sum-of-products form by applying the axiom of choice. The equation appears in this form in the figure 2, along with the other components of an analogue of the star construction in section 1.
  
Figure 2: The dual inductive construction
\begin{figure}\begin{displaymath}
\begin{array}{l}
B_\ast(a:A) : \ensuremath{\...
...,f(b)),g(b),\ensuremath{\mathit{bs}} )
\end{array}\end{displaymath}
\end{figure}

There is another duality, which is surely closely related. (I don't know how.) By the `derivative' of a quadruple (A,B,C,d), I mean the quadruple:

\begin{displaymath}\begin{array}{ll}
A & = \Sigma_{ a : A } B(a) \\
B & = \l...
...b\rangle,c,b' \mapsto \langle d(a,b,c), b' \rangle
\end{array}\end{displaymath}

Notice how the roles of B and C are reversed. In the state machine interpretation, the states in the derivative are the `in-between', or `pending' states of the original, in which an input has been selected, but not yet the response - it may be that none is possible. (The notion of derivative is due to Thierry Coquand. It may help to define a nice category in which the objects are games and the morphisms are `winning' strategies that play in two games at once, with different polarity in each. In this case to win means `to be able to beat at least one party' - like a manufacturer who gets sued, by a customer, and then sues the subcontractor who supplied the faulty component or components. )

Categorical properties?

Tensor product of two state-machines.

Taking the second derivative is like starting with one complete interaction.

A state a is a losing state if B(a) is empty. It is a winning state if for some b:B(a), C(a,b) is empty. The derivative flips winning states into losing states. (Belongs with explanation of strategy.)


next up previous
Next: Compositional closure Up: Partial constructions Previous: Inductive construction
Peter Hancock
1998-04-08