Hints for Y1,Y2.
Begin by trying to define
X1
andX2
directly assignment 4 hint 3 hint 1, then once they're working, you can abstract back to a pair of combinatorsY1
andY2
that generateX1
andX2
for a given pair of argumentsT1
andT2
.You want:
X1 <~~> T1 X1 X2 and X2 <~~> T2 X1 X2
X1 is presumably going to have some form like:
(\elem1 elem2 ... (T1 (do-something-with-the-elems-to-make-X1) (do-something-with-the-elems-to-make-X2) )) some-elem1 some-elem2 ...
Right? What will the form of X2 be?
Can you see how to go on?
Call the displayed abstract above
(\elem1 elem2 ... (...))
"elem0". What's the relation betweenX1
,elem0
,elem1
,elem2
...?Go on, now you can do it.