next up previous contents index
Next: Synthesis of the inner Up: Multiplication of the numbers Previous: Synthesis of the inner   Contents   Start


Synthesis of (lambda(f) ...) and `(lambda(x0) ...)' in [28]

Here we have another conflict between a free variable and one which is lambda-bound. The conflict exists between the `x' in `(lambda(x)' and the `x' in the expression `(x(x(x x0)))'. To dissolve the conflict the lambda-bound `x' has been renamed `x1'.


\begin{lstlisting}[language=Scm]{}
(lambda(x)
((lambda(f)
(lambda(x1)
(f(f x1)))))
(lambda(x0)
(x(x(x x0))))) [29]
\end{lstlisting}

Now the synthesis can be performed:


\begin{lstlisting}[language=Scm]{}
(lambda(x)
(lambda(x1)
((lambda(x0)
(x(x(x x0))))
((lambda(x0)
(x(x(x x0))))
x1)))) [30]
\end{lstlisting}



Georg P. Loczewski 2004-03-05


Impressum und Datenschutz