X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=hints%2Fassignment_7_hint_1.mdwn;h=62ced80c21068d23f4ba0bb4e9c9bc03fc2d575a;hp=9c22165d14439f821cc2720bfdf866f9cf2b1c52;hb=573a8b36ce653c84c2aecb2b81ef99128cb41d13;hpb=02ef3d4dfa3eed39f90326c37db8b23a6c3b07e7;ds=sidebyside diff --git a/hints/assignment_7_hint_1.mdwn b/hints/assignment_7_hint_1.mdwn index 9c22165d..62ced80c 100644 --- a/hints/assignment_7_hint_1.mdwn +++ b/hints/assignment_7_hint_1.mdwn @@ -1,15 +1,15 @@ -* Where Groenendijk and Stockhof and Veltman (GSV) say "peg", that translates in our terminology into a new "reference cell" or "location" in a store. +* Where Groenendijk, Stokhof and Veltman (GS&V) say "peg", that translates in our terminology into a new "reference cell" or "location" in a store. * Where they represent pegs as natural numbers, that corresponds to our representing locations in a store by their indexes in the store. -* Where they work with sets of blahs, you should generally think in terms of functions from blahs to bools. +* Where they say "reference system," which they use the letter `r` for, that corresponds to what we've been calling "assignments", and have been using the letter `g` for. -* Where they say "reference system," which they use the leter `r` for, that corresponds to what we've been calling "assignments", and use the letter `g` for. +* Where they say `r[x/n]`, that's our `g{x:=n}`, which we could represent in OCaml as `fun var -> if var = 'x' then n else g var`. (Earlier we represented assignments as lists of pairs, here we're representing them as functions. Either can work.) -* Where they say `r[x/n]`, that's our `g{x:=n}`. +* Their function `g`, which assigns entities from the domain to pegs, corresponds to a store with several indexes. To avoid confusion, I'll use `r` for assignments, like they do, and avoid using `g` altogether. Instead I'll use `h` for stores. (We can't use `s` because GS&V use that for something else, which they call "information states.") -* Their function `g`, which assigns objects from the domain to pegs, corresponds to our store function, which assigns entities to indexes. +* At several places they talk about some things being *real extensions* of other things. This confused me at first, because they don't ever define a notion of "real extension." (They do define what they mean by "extensions.") Eventually, it emerges that what they mean is what I'd call a *proper extension*: an extension which isn't identical to the original. -* What does their &exists;x correspond to in the framework we've been talking about? +* Is that enough? If not, here are some [more hints](/hints/assignment_7_hint_2). But try to get as far as you can on your own.