projects
/
lambda.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
675ab51
)
edits
author
Chris Barker
<barker@omega.(none)>
Tue, 18 Jan 2011 04:14:53 +0000
(23:14 -0500)
committer
Chris Barker
<barker@omega.(none)>
Tue, 18 Jan 2011 04:14:53 +0000
(23:14 -0500)
hints/assignment_4_hint_3_alternate_2.mdwn
patch
|
blob
|
history
diff --git
a/hints/assignment_4_hint_3_alternate_2.mdwn
b/hints/assignment_4_hint_3_alternate_2.mdwn
index
b2ddef8
..
a0ed78d
100644
(file)
--- a/
hints/assignment_4_hint_3_alternate_2.mdwn
+++ b/
hints/assignment_4_hint_3_alternate_2.mdwn
@@
-83,7
+83,9
@@
In the original, `h` was somehow *half* of the fixed point, so that `h
h` computed the fixed point. In the schema here, `h1` had better be a
function which, when you give it suitable arguments, computes the
first fixed point `X1` (likewise for `h2` wrt the second fixed point
h` computed the fixed point. In the schema here, `h1` had better be a
function which, when you give it suitable arguments, computes the
first fixed point `X1` (likewise for `h2` wrt the second fixed point
-`X2`). Then we can arrange for our definition to return the desired
+`X2`).
+
+Then we can arrange for our definition to return the desired
fixed point like this:
let Y1 = \pe po . (\h1 h2 . pe (h1 [blah])(h2 [blah]))
fixed point like this:
let Y1 = \pe po . (\h1 h2 . pe (h1 [blah])(h2 [blah]))
@@
-91,7
+93,7
@@
fixed point like this:
(\h1 h2 . ...)
The term in the middle line is going in for `h1`, so it had better
(\h1 h2 . ...)
The term in the middle line is going in for `h1`, so it had better
-be the kind of thing which, when you give it suitable arguments,
+
also
be the kind of thing which, when you give it suitable arguments,
computes a fixed point for `pe`:
let Y1 = \pe po . (\h1 h2 . pe (h1 [blah]) (h2 [blah]))
computes a fixed point for `pe`:
let Y1 = \pe po . (\h1 h2 . pe (h1 [blah]) (h2 [blah]))
@@
-102,7
+104,7
@@
But the third line must help compute a fixed point for `po`.
All we need to do is figure out what the arguments to `h1` and `h2`
ought to be. Final guess: in the original, `h` took one argument (a
All we need to do is figure out what the arguments to `h1` and `h2`
ought to be. Final guess: in the original, `h` took one argument (a
-copy of itself), so once again, we'll need two arguments. Here's
+copy of itself), so once again,
here
we'll need two arguments. Here's
where the mutual recursion comes in: the two arguments to `h1` are a
copy of itself, and a copy of `h2` (symmetrically for `h2`). So the
complete definition is
where the mutual recursion comes in: the two arguments to `h1` are a
copy of itself, and a copy of `h2` (symmetrically for `h2`). So the
complete definition is