Stabler - Lx 185/209 2003 (11) Setting the stage: implementati<strong>on</strong> <strong>of</strong> reverse and negreverse reverse([],L,L). reverse([E|L],M,N) :- reverse(L,[E|M],N). negreverse([],L,L). negreverse([E|L],M,N) :- negreverse(L,[-E|M],N). (12) The naive implementati<strong>on</strong> <strong>of</strong> the LR recognizer: /* * file: lr0.pl - first versi<strong>on</strong> */ :- op(1200,xfx,:˜). % this is our object language "if" :- op(1100,xfx,?˜). % metalanguage provability predicate [] ?˜ []. (S0 ?˜ Goals0) :- infer(S0,Goals0,S,Goals), (S ?˜ Goals). infer(S,RDC,S,C) :- (A :˜ D), negreverse(D,[A],RD), append(RD,C,RDC). % reduce-complete provable(S,RDC,S,[-A|C]) :- (A := D), negreverse(D,[],RD), append(RD,C,RDC). % reduce provable([W|S],C,S,[-W|C]). % shift negreverse([],L,L). negreverse([E|L],M,N) :- negreverse(L,[-E|M],N). append([],L,L). append([F|L],M,[F|N]) :- append(L,M,N). Here, RDC is the sequence which is the Reverse <strong>of</strong> D, followed by C (13) The slightly improved implementati<strong>on</strong> <strong>of</strong> the LR recognizer: /* * file: lr.pl */ :- op(1200,xfx,:˜). % this is our object language "if" :- op(1100,xfx,?˜). % metalanguage provability predicate [] ?˜ []. (S0 ?˜ Goals0) :- infer(S0,Goals0,S,Goals), (S ?˜ Goals). infer(S,RDC,S,C) :- (A :˜ D), preverse(D,RDC,[A|C]). % reduce-complete infer(S,RDC,S,[-A|C]) :- (A :˜ D), preverse(D,RDC,C). % reduce infer([W|S],C,S,[-W|C]). % shift %preverse(Expansi<strong>on</strong>D,TempStack,ReversedExpansi<strong>on</strong>D,RestC<strong>on</strong>stituents) preverse( [], C,C). preverse([E|L],RD,C) :- preverse(L,RD,[-E|C]). (14) The implementati<strong>on</strong> <strong>of</strong> the LR parser: /* * file: lrp.pl */ :- op(1200,xfx,:˜). % this is our object language "if" :- op(1100,xfx,?˜). % metalanguage provability predicate :- op(500,yfx,@). % metalanguage functor to separate goals from trees [] ?˜ []@[]. (S0 ?˜ Goals0@T0) :- infer(S0,Goals0@T0,S,Goals@T), (S ?˜ Goals@T). infer(S,RDC@RDCTs,S,C@CTs) :- (A :˜ D), preverse(D,RDC,[A|C],DTs,RDCTs,[A/DTs|CTs]). % reduce-complete infer(S,RDC@RDCTs,S,[-A|C]@[A/DTs|CTs]) :- (A :˜ D), preverse(D,RDC,C,DTs,RDCTs,CTs). % reduce infer([W|S],C@CTs,S,[-W|C]@[W/[]|CTs]). % shift %preverse(Expansi<strong>on</strong>D,ReversedExpansi<strong>on</strong>D,RestCatsC,Expansi<strong>on</strong>DTs,ReversedExpansi<strong>on</strong>DTs,RestCatsCTs) preverse([],C,C,[],CTs,CTs). preverse([E|L],RD,C,[ETs|LTs],RDTs,CTs) :- preverse(L,RD,[-E|C],LTs,RDTs,[ETs|CTs]). This implementati<strong>on</strong> is c<strong>on</strong>ceptually more straightforward than tdp, because here, all the trees in our stack are complete, so we just do with the trees exactly the same thing that we are doing with the stack. This is accomplished by taking the 4-argument preverse from the lr recognizer and making it an 8argument predicate in the parser, where the tree stacks are manipulated in just the same way that the recognizer stacks are. (15) Assessment <strong>of</strong> the LR strategy: a. Unbounded memory requirements <strong>on</strong> simple right branching. b. Stupid about empty categories – they produce infinite search spaces. 81
Stabler - Lx 185/209 2003 6.3 LC parsing (16) Left corner parsing is intermediate between top-down and bottom-up. Like LR, LC parsers adopt a (17) strategy <strong>of</strong> “listening first,” but after listening to a “left corner,” the rest <strong>of</strong> the expansi<strong>on</strong> is predicted. In a c<strong>on</strong>stituent formed by applying a rewrite rule A → BCD, the “left corner” is just the first c<strong>on</strong>stituent <strong>on</strong> the right side – B in the producti<strong>on</strong> A → BCD. LC recogniti<strong>on</strong> is defined this way: 24 G, Γ ,S ⊢ G [axiom] for definite clauses Γ ,goalG, S ⊆ Σ ∗ G, Γ ,S ⊢ (?-¬q1,C) G, Γ ,S ⊢ (?-q2,...,qn, ¬p, C) G, Γ ,S ⊢ (?-¬q1,p,C) G, Γ ,S ⊢ (?-q2,...,qn,C) G, Γ ,wS ⊢ (?-C) G, Γ ,S ⊢ (?-¬w,C) [shift] [lc] if (p:-q1,...,qn) ∈ Γ [lc-complete] if (p:-q1,...,qn) ∈ Γ G, Γ ,wS ⊢ (?-w,C) [shift-complete] =scan G, Γ ,S ⊢ (?-C) We want to allow the recognizer to handle empty producti<strong>on</strong>s, that is, producti<strong>on</strong>s (p:-q1,...,qn) ∈ Γ where n = 0. We do this by saying that is such producti<strong>on</strong>s, the “left corner” is the empty string. With this policy, the n = 0 instances <strong>of</strong> the lc rules can be written this way: G, Γ ,S ⊢ (?-C) G, Γ ,S ⊢ (?-¬p, C) [lc-e] if (p:-[]) ∈ Γ G, Γ ,S ⊢ (?-p, C) [lc-e-complete] if (p:-[]) ∈ Γ G, Γ ,S ⊢ (?-C) (18) Exercise: Use simple propositi<strong>on</strong>al reas<strong>on</strong>ing <strong>of</strong> the sort shown in (2) <strong>on</strong> page 75 and in (10) <strong>on</strong> page 80 to show that the following inference step is sound. (tricky!) G, Γ ,S ⊢ (?-¬r,q) G, Γ ,S ⊢ (?-s,¬p, q) 82 [lc] if (p:-r,s) ∈ Γ
- Page 1 and 2:
Notes on computati
- Page 3 and 4:
Stabler - Lx 185/209 2003 Linguisti
- Page 5 and 6:
Stabler - Lx 185/209 2003 1 Setting
- Page 7 and 8:
Stabler - Lx 185/209 2003 1.2 Propo
- Page 9 and 10:
Stabler - Lx 185/209 2003 (8) Pitfa
- Page 11 and 12:
Stabler - Lx 185/209 2003 In fact,
- Page 13 and 14:
Stabler - Lx 185/209 2003 10. Call
- Page 15 and 16:
Stabler - Lx 185/209 2003 compute s
- Page 17 and 18:
Stabler - Lx 185/209 2003 (11) Pred
- Page 19 and 20:
Stabler - Lx 185/209 2003 1.6 The l
- Page 21 and 22:
Stabler - Lx 185/209 2003 L0 and L1
- Page 23 and 24:
Stabler - Lx 185/209 2003 Exercises
- Page 25 and 26:
Stabler - Lx 185/209 2003 3 more ex
- Page 27 and 28:
Stabler - Lx 185/209 2003 2 Recogni
- Page 29 and 30:
Stabler - Lx 185/209 2003 (8) Then
- Page 31 and 32: Stabler - Lx 185/209 2003 (13) The
- Page 33 and 34: Stabler - Lx 185/209 2003 Exercises
- Page 35 and 36: Stabler - Lx 185/209 2003 Problem (
- Page 37 and 38: Stabler - Lx 185/209 2003 1 ?- [col
- Page 39 and 40: Stabler - Lx 185/209 2003 lex(’th
- Page 41 and 42: Stabler - Lx 185/209 2003 2 ?- ([
- Page 43 and 44: Stabler - Lx 185/209 2003 (3) Dalry
- Page 45 and 46: Stabler - Lx 185/209 2003 3.3 Recog
- Page 47 and 48: Stabler - Lx 185/209 2003 (22) Supp
- Page 49 and 50: Stabler - Lx 185/209 2003 (27) With
- Page 51 and 52: Stabler - Lx 185/209 2003 (31) tcl/
- Page 53 and 54: Stabler - Lx 185/209 2003 A c-comma
- Page 55 and 56: Stabler - Lx 185/209 2003 (46) Does
- Page 57 and 58: Stabler - Lx 185/209 2003 m. The id
- Page 59 and 60: Stabler - Lx 185/209 2003 4 Brief d
- Page 61 and 62: Stabler - Lx 185/209 2003 (50) Nem
- Page 63 and 64: Stabler - Lx 185/209 2003 5 Trees,
- Page 65 and 66: Stabler - Lx 185/209 2003 children(
- Page 67 and 68: Stabler - Lx 185/209 2003 5.3 Movem
- Page 69 and 70: Stabler - Lx 185/209 2003 a. d e c
- Page 71 and 72: Stabler - Lx 185/209 2003 children(
- Page 73 and 74: Stabler - Lx 185/209 2003 adjoin_no
- Page 75 and 76: Stabler - Lx 185/209 2003 (37) With
- Page 77 and 78: Stabler - Lx 185/209 2003 Mates’
- Page 79 and 80: Stabler - Lx 185/209 2003 81. ((A
- Page 81: Stabler - Lx 185/209 2003 6.2 LR pa
- Page 85 and 86: Stabler - Lx 185/209 2003 (20) Like
- Page 87 and 88: Stabler - Lx 185/209 2003 6.4 All t
- Page 89 and 90: Stabler - Lx 185/209 2003 (26) GLC
- Page 91 and 92: Stabler - Lx 185/209 2003 (33) GLC
- Page 93 and 94: Stabler - Lx 185/209 2003 The secon
- Page 95 and 96: Stabler - Lx 185/209 2003 6.5.2 Bot
- Page 97 and 98: Stabler - Lx 185/209 2003 6.6 Asses
- Page 99 and 100: Stabler - Lx 185/209 2003 (56) Stru
- Page 101 and 102: Stabler - Lx 185/209 2003 6.6.4 A d
- Page 103 and 104: Stabler - Lx 185/209 2003 1. Downlo
- Page 105 and 106: Stabler - Lx 185/209 2003 It is ess
- Page 107 and 108: Stabler - Lx 185/209 2003 inference
- Page 109 and 110: Stabler - Lx 185/209 2003 1 (’SBA
- Page 111 and 112: Stabler - Lx 185/209 2003 7.2 Tree
- Page 113 and 114: Stabler - Lx 185/209 2003 (14) With
- Page 115 and 116: Stabler - Lx 185/209 2003 /* earley
- Page 117 and 118: Stabler - Lx 185/209 2003 8 Stochas
- Page 119 and 120: Stabler - Lx 185/209 2003 8.1.1 Cor
- Page 121 and 122: Stabler - Lx 185/209 2003 to punctu
- Page 123 and 124: Stabler - Lx 185/209 2003 jane aust
- Page 125 and 126: Stabler - Lx 185/209 2003 where usu
- Page 127 and 128: Stabler - Lx 185/209 2003 0.1 0.09
- Page 129 and 130: Stabler - Lx 185/209 2003 We get al
- Page 131 and 132: Stabler - Lx 185/209 2003 Word leng
- Page 133 and 134:
Stabler - Lx 185/209 2003 8.1.4 Pro
- Page 135 and 136:
Stabler - Lx 185/209 2003 8.1.5 Ran
- Page 137 and 138:
Stabler - Lx 185/209 2003 Matrix ar
- Page 139 and 140:
Stabler - Lx 185/209 2003 (65) To a
- Page 141 and 142:
Stabler - Lx 185/209 2003 octave:18
- Page 143 and 144:
Stabler - Lx 185/209 2003 added pro
- Page 145 and 146:
Stabler - Lx 185/209 2003 P(q1 ...q
- Page 147 and 148:
Stabler - Lx 185/209 2003 c. Finall
- Page 149 and 150:
Stabler - Lx 185/209 2003 This is p
- Page 151 and 152:
Stabler - Lx 185/209 2003 (100) Abn
- Page 153 and 154:
Stabler - Lx 185/209 2003 3. If des
- Page 155 and 156:
Stabler - Lx 185/209 2003 It will b
- Page 157 and 158:
Stabler - Lx 185/209 2003 Entropy (
- Page 159 and 160:
Stabler - Lx 185/209 2003 One indir
- Page 161 and 162:
Stabler - Lx 185/209 2003 4. the fu
- Page 163 and 164:
Stabler - Lx 185/209 2003 8.2.3 Ass
- Page 165 and 166:
Stabler - Lx 185/209 2003 (142) We
- Page 167 and 168:
Stabler - Lx 185/209 2003 8.4 Next
- Page 169 and 170:
Stabler - Lx 185/209 2003 9.1 “Mi
- Page 171 and 172:
Stabler - Lx 185/209 2003 (4) More
- Page 173 and 174:
Stabler - Lx 185/209 2003 This is a
- Page 175 and 176:
Stabler - Lx 185/209 2003 (7) Let
- Page 177 and 178:
Stabler - Lx 185/209 2003 (9) Let
- Page 179 and 180:
Stabler - Lx 185/209 2003 dP3 maria
- Page 181 and 182:
Stabler - Lx 185/209 2003 The 4 Eng
- Page 183 and 184:
Stabler - Lx 185/209 2003 9.1.4 Fou
- Page 185 and 186:
Stabler - Lx 185/209 2003 (21) The
- Page 187 and 188:
Stabler - Lx 185/209 2003 :- [’pp
- Page 189 and 190:
Stabler - Lx 185/209 2003 9.2.2 Som
- Page 191 and 192:
Stabler - Lx 185/209 2003 who laugh
- Page 193 and 194:
Stabler - Lx 185/209 2003 Kayne ass
- Page 195 and 196:
Stabler - Lx 185/209 2003 (32) Vari
- Page 197 and 198:
Stabler - Lx 185/209 2003 dP t 3 v
- Page 199 and 200:
Stabler - Lx 185/209 2003 10 Toward
- Page 201 and 202:
Stabler - Lx 185/209 2003 We can en
- Page 203 and 204:
Stabler - Lx 185/209 2003 Head move
- Page 205 and 206:
Stabler - Lx 185/209 2003 D which w
- Page 207 and 208:
Stabler - Lx 185/209 2003 CP C’ C
- Page 209 and 210:
Stabler - Lx 185/209 2003 CP C’ C
- Page 211 and 212:
Stabler - Lx 185/209 2003 that::=T
- Page 213 and 214:
Stabler - Lx 185/209 2003 T t C C S
- Page 215 and 216:
Stabler - Lx 185/209 2003 10.3.4 AP
- Page 217 and 218:
Stabler - Lx 185/209 2003 T t C C C
- Page 219 and 220:
Stabler - Lx 185/209 2003 10.3.6 Co
- Page 221 and 222:
Stabler - Lx 185/209 2003 10.4 Modi
- Page 223 and 224:
Stabler - Lx 185/209 2003 10.5 Summ
- Page 225 and 226:
Stabler - Lx 185/209 2003 10.5.1 Re
- Page 227 and 228:
Stabler - Lx 185/209 2003 Exercises
- Page 229 and 230:
Stabler - Lx 185/209 2003 10.6.3 Mu
- Page 231 and 232:
Stabler - Lx 185/209 2003 10.6.5 Pi
- Page 233 and 234:
Stabler - Lx 185/209 2003 CP C’ C
- Page 235 and 236:
Stabler - Lx 185/209 2003 but also
- Page 237 and 238:
Stabler - Lx 185/209 2003 And if yo
- Page 239 and 240:
Stabler - Lx 185/209 2003 sentence:
- Page 241 and 242:
Stabler - Lx 185/209 2003 Example:
- Page 243 and 244:
Stabler - Lx 185/209 2003 15.1 Mono
- Page 245 and 246:
Stabler - Lx 185/209 2003 Example:
- Page 247 and 248:
Stabler - Lx 185/209 2003 16 Harder
- Page 249 and 250:
Stabler - Lx 185/209 2003 A first,
- Page 251 and 252:
Stabler - Lx 185/209 2003 non-demon
- Page 253 and 254:
Stabler - Lx 185/209 2003 16.4 Scop
- Page 255 and 256:
Stabler - Lx 185/209 2003 16.5 Infe
- Page 257 and 258:
Stabler - Lx 185/209 2003 Extra cre
- Page 259 and 260:
Stabler - Lx 185/209 2003 CP C’ C
- Page 261 and 262:
Stabler - Lx 185/209 2003 (5) In su
- Page 263 and 264:
Stabler - Lx 185/209 2003 (7) Anoth
- Page 265 and 266:
Stabler - Lx 185/209 2003 17.2.1 A
- Page 267 and 268:
Stabler - Lx 185/209 2003 Exercises
- Page 269 and 270:
Stabler - Lx 185/209 2003 Reference
- Page 271 and 272:
Stabler - Lx 185/209 2003 Cornell,
- Page 273 and 274:
Stabler - Lx 185/209 2003 Hale, Joh
- Page 275 and 276:
Stabler - Lx 185/209 2003 Kraft, L.
- Page 277 and 278:
Stabler - Lx 185/209 2003 Pollock,
- Page 279 and 280:
Stabler - Lx 185/209 2003 Stabler,
- Page 281 and 282:
Index (x, y), openintervalfromx to
- Page 283 and 284:
Stabler - Lx 185/209 2003 Herbrand,
- Page 285:
Stabler - Lx 185/209 2003 Seki, Hir