1:-module(wumpus_world_small). 2
3:-lib(fd). 4
5:-export neighbours/2.
6:-export connected/2.
7:-export adjacent/2.
8:-export initial_state/1.
9:-export real_world/1.
10:-export action/3.
11:-export aux/1.
12:-export sensors/1.
13:-export sensor_axiom/2.
14
20
21aux([neighbours,connected]).
22
23
29
30sensors([breeze,glitter,stench]).
31
39dimension(8).
44real_world(W) :-
45 dimension(Dim),
46 real_world(Dim,W).
47
48initial_state(State) :-
49 dimension(Dim),
50 initial_state(Dim,State).
51
60action(grab,
61 [at(gold,Cell),at(agent,Cell)],
62 [carries(agent,gold),neg(at(gold,Cell))]).
66action(go(Cell1,Cell2),
67 [at(agent,Cell1),
68 connected(Cell1,Cell2)],
69 [neg(at(agent,Cell1)),
70 at(agent,Cell2)]).
74action(shoot,
75 [carries(agent,arrow),
76 at(wumpus,Cell1),
77 at(agent,Cell2),
78 connected(Cell2,Cell1)],
79 [neg(carries(agent,arrow)),
80 neg(alive(wumpus))]).
81
82
88
89sensor_axiom(breeze(X),[ [X-true] -
90 [at(agent,Y),neighbours(Y,[Cell1,Cell2,Cell3,Cell4])] -
91 [[ pit(Cell1),pit(Cell2),pit(Cell3),pit(Cell4)]],
92
93 [X-false] -
94 [at(agent,Y),neighbours(Y,[Cell1,Cell2,Cell3,Cell4])] -
95 [neg(pit(Cell1)),neg(pit(Cell2)),neg(pit(Cell3)),neg(pit(Cell4))]
96 ]).
97
98sensor_axiom(glitter(X),[ [X-true] -
99 [at(agent,Y)] -
100 [at(gold,Y)],
101
102 [X-false] -
103 [at(agent,Y)]-
104 [neg(at(gold,Y))]
105 ]).
106
107sensor_axiom(stench(X),[ [X-true] -
108 [at(agent,Y),neighbours(Y,[Cell1,Cell2,Cell3,Cell4])]-
109 [[ at(wumpus,Cell1),at(wumpus,Cell2),at(wumpus,Cell3),at(wumpus,Cell4)]],
110
111 [X-false] -
112 [at(agent,Y),neighbours(Y,[Cell1,Cell2,Cell3,Cell4])]-
113 [neg(at(wumpus,Cell1)),neg(at(wumpus,Cell2)),neg(at(wumpus,Cell3)),neg(at(wumpus,Cell4))]
114 ]).
115
121
122connected(X,Y) :-
123 adjacent(X,Y).
124
125adjacent(cell(X,Y),cell(X1,Y1)) :-
126 dimension(Dim),
127 [X,Y,X1,Y1]::1..Dim,
128 (X1#=X) #/\ (Y1#=Y+1)
129 #\/ (X1#=X) #/\ (Y1#=Y-1)
130 #\/ (X1#=X+1) #/\ (Y1#=Y)
131 #\/ (X1#=X-1) #/\ (Y1#=Y),
132 labeling([X,Y,X1,Y1]).
133
134neighbours(cell(X,Y),
135 [cell(X,Y1),cell(X,Y2),cell(X1,Y),cell(X2,Y)]) :-
136 Y1 is Y + 1,
137 Y2 is Y - 1,
138 X1 is X + 1,
139 X2 is X - 1.
140
149real_world(4,[at(wumpus,cell(2,4)),
150 pit(cell(4,2)),
151 at(gold,cell(4,4))]).
152
153real_world(8,[at(wumpus,cell(6,6)),
154 at(gold,cell(7,6)),
155 pit(cell(7,3)),
156 pit(cell(5,3)),
157 pit(cell(4,3)),
158 pit(cell(5,7)),
159 pit(cell(3,4))]).
160
161real_world(16,[at(wumpus,cell(9,6)),
162 at(gold,cell(11,13)),
163 pit(cell(2,3)),
164 pit(cell(2,10)),
165 pit(cell(5,4)),
166 pit(cell(3,5)),
167 pit(cell(8,6)),
168 pit(cell(9,8)),
169 pit(cell(13,8)),
170 pit(cell(5,10)),
171 pit(cell(11,11)),
172 pit(cell(7,13))]).
173
174real_world(32,[at(wumpus,cell(8,13)),
175 at(gold,cell(26,30)),
176 pit(cell(4,1)),
177 pit(cell(10,3)),
178 pit(cell(18,3)),
179 pit(cell(24,4)),
180 pit(cell(6,5)),
181 pit(cell(12,6)),
182 pit(cell(28,6)),
183 pit(cell(21,7)),
184 pit(cell(21,8)),
185 pit(cell(16,9)),
186 pit(cell(5,10)),
187 pit(cell(12,12)),
188 pit(cell(21,12)),
189 pit(cell(26,12)),
190 pit(cell(4,13)),
191 pit(cell(6,13)),
192 pit(cell(10,13)),
193 pit(cell(13,14)),
194 pit(cell(6,15)),
195 pit(cell(10,15)),
196 pit(cell(29,15)),
197 pit(cell(19,16)),
198 pit(cell(23,16)),
199 pit(cell(8,19)),
200 pit(cell(15,19)),
201 pit(cell(21,20)),
202 pit(cell(25,20)),
203 pit(cell(12,21)),
204 pit(cell(6,22)),
205 pit(cell(15,24)),
206 pit(cell(21,24)),
207 pit(cell(8,25)),
208 pit(cell(28,25)),
209 pit(cell(30,25)),
210 pit(cell(25,26)),
211 pit(cell(5,27)),
212 pit(cell(12,28)),
213 pit(cell(23,28)),
214 pit(cell(8,30)),
215 pit(cell(17,30))
216 ]).
217
223
224initial_state(4,State) :-
225
226 State = [
230 neg(at(wumpus, cell(0, 1))),
231 neg(at(wumpus, cell(0, 2))),
232 neg(at(wumpus, cell(0, 3))),
233 neg(at(wumpus, cell(0, 4))),
234 neg(at(wumpus, cell(5, 1))),
235 neg(at(wumpus, cell(5, 2))),
236 neg(at(wumpus, cell(5, 3))),
237 neg(at(wumpus, cell(5, 4))),
238 neg(at(wumpus, cell(1, 0))),
239 neg(at(wumpus, cell(2, 0))),
240 neg(at(wumpus, cell(3, 0))),
241 neg(at(wumpus, cell(4, 0))),
242 neg(at(wumpus, cell(1, 5))),
243 neg(at(wumpus, cell(2, 5))),
244 neg(at(wumpus, cell(3, 5))),
245 neg(at(wumpus, cell(4, 5))),
246 neg(pit(cell(0, 1))),
247 neg(pit(cell(0, 2))),
248 neg(pit(cell(0, 3))),
249 neg(pit(cell(0, 4))),
250 neg(pit(cell(5, 1))),
251 neg(pit(cell(5, 2))),
252 neg(pit(cell(5, 3))),
253 neg(pit(cell(5, 4))),
254 neg(pit(cell(1, 0))),
255 neg(pit(cell(2, 0))),
256 neg(pit(cell(3, 0))),
257 neg(pit(cell(4, 0))),
258 neg(pit(cell(1, 5))),
259 neg(pit(cell(2, 5))),
260 neg(pit(cell(3, 5))),
261 neg(pit(cell(4, 5))),
265 carries(agent, arrow),
269 at(agent, cell(1, 1)),
273 alive(wumpus)
274 ]
274.
275
276
277initial_state(8,State) :-
278 State = [
279 neg(at(wumpus, cell(0, 1))),
280 neg(at(wumpus, cell(0, 2))),
281 neg(at(wumpus, cell(0, 3))),
282 neg(at(wumpus, cell(0, 4))),
283 neg(at(wumpus, cell(0, 5))),
284 neg(at(wumpus, cell(0, 6))),
285 neg(at(wumpus, cell(0, 7))),
286 neg(at(wumpus, cell(0, 8))),
287 neg(at(wumpus, cell(9, 1))),
288 neg(at(wumpus, cell(9, 2))),
289 neg(at(wumpus, cell(9, 3))),
290 neg(at(wumpus, cell(9, 4))),
291 neg(at(wumpus, cell(9, 5))),
292 neg(at(wumpus, cell(9, 6))),
293 neg(at(wumpus, cell(9, 7))),
294 neg(at(wumpus, cell(9, 8))),
295 neg(at(wumpus, cell(1, 0))),
296 neg(at(wumpus, cell(2, 0))),
297 neg(at(wumpus, cell(3, 0))),
298 neg(at(wumpus, cell(4, 0))),
299 neg(at(wumpus, cell(5, 0))),
300 neg(at(wumpus, cell(6, 0))),
301 neg(at(wumpus, cell(7, 0))),
302 neg(at(wumpus, cell(8, 0))),
303 neg(at(wumpus, cell(1, 9))),
304 neg(at(wumpus, cell(2, 9))),
305 neg(at(wumpus, cell(3, 9))),
306 neg(at(wumpus, cell(4, 9))),
307 neg(at(wumpus, cell(5, 9))),
308 neg(at(wumpus, cell(6, 9))),
309 neg(at(wumpus, cell(7, 9))),
310 neg(at(wumpus, cell(8, 9))),
311 neg(pit(cell(0, 1))),
312 neg(pit(cell(0, 2))),
313 neg(pit(cell(0, 3))),
314 neg(pit(cell(0, 4))),
315 neg(pit(cell(0, 5))),
316 neg(pit(cell(0, 6))),
317 neg(pit(cell(0, 7))),
318 neg(pit(cell(0, 8))),
319 neg(pit(cell(9, 1))),
320 neg(pit(cell(9, 2))),
321 neg(pit(cell(9, 3))),
322 neg(pit(cell(9, 4))),
323 neg(pit(cell(9, 5))),
324 neg(pit(cell(9, 6))),
325 neg(pit(cell(9, 7))),
326 neg(pit(cell(9, 8))),
327 neg(pit(cell(1, 0))),
328 neg(pit(cell(2, 0))),
329 neg(pit(cell(3, 0))),
330 neg(pit(cell(4, 0))),
331 neg(pit(cell(5, 0))),
332 neg(pit(cell(6, 0))),
333 neg(pit(cell(7, 0))),
334 neg(pit(cell(8, 0))),
335 neg(pit(cell(1, 9))),
336 neg(pit(cell(2, 9))),
337 neg(pit(cell(3, 9))),
338 neg(pit(cell(4, 9))),
339 neg(pit(cell(5, 9))),
340 neg(pit(cell(6, 9))),
341 neg(pit(cell(7, 9))),
342 neg(pit(cell(8, 9))),
343 carries(agent, arrow),
344 at(agent, cell(1, 1)),
345 alive(wumpus)
346 ].
347
348
349
350
351
352
353initial_state(16,State) :-
354 State = [
355 neg(at(wumpus, cell(0, 1))),
356 neg(at(wumpus, cell(0, 2))),
357 neg(at(wumpus, cell(0, 3))),
358 neg(at(wumpus, cell(0, 4))),
359 neg(at(wumpus, cell(0, 5))),
360 neg(at(wumpus, cell(0, 6))),
361 neg(at(wumpus, cell(0, 7))),
362 neg(at(wumpus, cell(0, 8))),
363 neg(at(wumpus, cell(0, 9))),
364 neg(at(wumpus, cell(0, 10))),
365 neg(at(wumpus, cell(0, 11))),
366 neg(at(wumpus, cell(0, 12))),
367 neg(at(wumpus, cell(0, 13))),
368 neg(at(wumpus, cell(0, 14))),
369 neg(at(wumpus, cell(0, 15))),
370 neg(at(wumpus, cell(0, 16))),
371 neg(at(wumpus, cell(17, 1))),
372 neg(at(wumpus, cell(17, 2))),
373 neg(at(wumpus, cell(17, 3))),
374 neg(at(wumpus, cell(17, 4))),
375 neg(at(wumpus, cell(17, 5))),
376 neg(at(wumpus, cell(17, 6))),
377 neg(at(wumpus, cell(17, 7))),
378 neg(at(wumpus, cell(17, 8))),
379 neg(at(wumpus, cell(17, 9))),
380 neg(at(wumpus, cell(17, 10))),
381 neg(at(wumpus, cell(17, 11))),
382 neg(at(wumpus, cell(17, 12))),
383 neg(at(wumpus, cell(17, 13))),
384 neg(at(wumpus, cell(17, 14))),
385 neg(at(wumpus, cell(17, 15))),
386 neg(at(wumpus, cell(17, 16))),
387 neg(at(wumpus, cell(1, 0))),
388 neg(at(wumpus, cell(2, 0))),
389 neg(at(wumpus, cell(3, 0))),
390 neg(at(wumpus, cell(4, 0))),
391 neg(at(wumpus, cell(5, 0))),
392 neg(at(wumpus, cell(6, 0))),
393 neg(at(wumpus, cell(7, 0))),
394 neg(at(wumpus, cell(8, 0))),
395 neg(at(wumpus, cell(9, 0))),
396 neg(at(wumpus, cell(10, 0))),
397 neg(at(wumpus, cell(11, 0))),
398 neg(at(wumpus, cell(12, 0))),
399 neg(at(wumpus, cell(13, 0))),
400 neg(at(wumpus, cell(14, 0))),
401 neg(at(wumpus, cell(15, 0))),
402 neg(at(wumpus, cell(16, 0))),
403 neg(at(wumpus, cell(1, 17))),
404 neg(at(wumpus, cell(2, 17))),
405 neg(at(wumpus, cell(3, 17))),
406 neg(at(wumpus, cell(4, 17))),
407 neg(at(wumpus, cell(5, 17))),
408 neg(at(wumpus, cell(6, 17))),
409 neg(at(wumpus, cell(7, 17))),
410 neg(at(wumpus, cell(8, 17))),
411 neg(at(wumpus, cell(9, 17))),
412 neg(at(wumpus, cell(10, 17))),
413 neg(at(wumpus, cell(11, 17))),
414 neg(at(wumpus, cell(12, 17))),
415 neg(at(wumpus, cell(13, 17))),
416 neg(at(wumpus, cell(14, 17))),
417 neg(at(wumpus, cell(15, 17))),
418 neg(at(wumpus, cell(16, 17))),
419 neg(pit(cell(0, 1))),
420 neg(pit(cell(0, 2))),
421 neg(pit(cell(0, 3))),
422 neg(pit(cell(0, 4))),
423 neg(pit(cell(0, 5))),
424 neg(pit(cell(0, 6))),
425 neg(pit(cell(0, 7))),
426 neg(pit(cell(0, 8))),
427 neg(pit(cell(0, 9))),
428 neg(pit(cell(0, 10))),
429 neg(pit(cell(0, 11))),
430 neg(pit(cell(0, 12))),
431 neg(pit(cell(0, 13))),
432 neg(pit(cell(0, 14))),
433 neg(pit(cell(0, 15))),
434 neg(pit(cell(0, 16))),
435 neg(pit(cell(17, 1))),
436 neg(pit(cell(17, 2))),
437 neg(pit(cell(17, 3))),
438 neg(pit(cell(17, 4))),
439 neg(pit(cell(17, 5))),
440 neg(pit(cell(17, 6))),
441 neg(pit(cell(17, 7))),
442 neg(pit(cell(17, 8))),
443 neg(pit(cell(17, 9))),
444 neg(pit(cell(17, 10))),
445 neg(pit(cell(17, 11))),
446 neg(pit(cell(17, 12))),
447 neg(pit(cell(17, 13))),
448 neg(pit(cell(17, 14))),
449 neg(pit(cell(17, 15))),
450 neg(pit(cell(17, 16))),
451 neg(pit(cell(1, 0))),
452 neg(pit(cell(2, 0))),
453 neg(pit(cell(3, 0))),
454 neg(pit(cell(4, 0))),
455 neg(pit(cell(5, 0))),
456 neg(pit(cell(6, 0))),
457 neg(pit(cell(7, 0))),
458 neg(pit(cell(8, 0))),
459 neg(pit(cell(9, 0))),
460 neg(pit(cell(10, 0))),
461 neg(pit(cell(11, 0))),
462 neg(pit(cell(12, 0))),
463 neg(pit(cell(13, 0))),
464 neg(pit(cell(14, 0))),
465 neg(pit(cell(15, 0))),
466 neg(pit(cell(16, 0))),
467 neg(pit(cell(1, 17))),
468 neg(pit(cell(2, 17))),
469 neg(pit(cell(3, 17))),
470 neg(pit(cell(4, 17))),
471 neg(pit(cell(5, 17))),
472 neg(pit(cell(6, 17))),
473 neg(pit(cell(7, 17))),
474 neg(pit(cell(8, 17))),
475 neg(pit(cell(9, 17))),
476 neg(pit(cell(10, 17))),
477 neg(pit(cell(11, 17))),
478 neg(pit(cell(12, 17))),
479 neg(pit(cell(13, 17))),
480 neg(pit(cell(14, 17))),
481 neg(pit(cell(15, 17))),
482 neg(pit(cell(16, 17))),
483 carries(agent, arrow),
484 at(agent, cell(1, 1)),
485 alive(wumpus)
486 ].
487
488
489
490
491
492
493initial_state(32,State) :-
494 State = [
495 neg(at(wumpus, cell(0, 1))),
496 neg(at(wumpus, cell(0, 2))),
497 neg(at(wumpus, cell(0, 3))),
498 neg(at(wumpus, cell(0, 4))),
499 neg(at(wumpus, cell(0, 5))),
500 neg(at(wumpus, cell(0, 6))),
501 neg(at(wumpus, cell(0, 7))),
502 neg(at(wumpus, cell(0, 8))),
503 neg(at(wumpus, cell(0, 9))),
504 neg(at(wumpus, cell(0, 10))),
505 neg(at(wumpus, cell(0, 11))),
506 neg(at(wumpus, cell(0, 12))),
507 neg(at(wumpus, cell(0, 13))),
508 neg(at(wumpus, cell(0, 14))),
509 neg(at(wumpus, cell(0, 15))),
510 neg(at(wumpus, cell(0, 16))),
511 neg(at(wumpus, cell(0, 17))),
512 neg(at(wumpus, cell(0, 18))),
513 neg(at(wumpus, cell(0, 19))),
514 neg(at(wumpus, cell(0, 20))),
515 neg(at(wumpus, cell(0, 21))),
516 neg(at(wumpus, cell(0, 22))),
517 neg(at(wumpus, cell(0, 23))),
518 neg(at(wumpus, cell(0, 24))),
519 neg(at(wumpus, cell(0, 25))),
520 neg(at(wumpus, cell(0, 26))),
521 neg(at(wumpus, cell(0, 27))),
522 neg(at(wumpus, cell(0, 28))),
523 neg(at(wumpus, cell(0, 29))),
524 neg(at(wumpus, cell(0, 30))),
525 neg(at(wumpus, cell(0, 31))),
526 neg(at(wumpus, cell(0, 32))),
527 neg(at(wumpus, cell(33, 1))),
528 neg(at(wumpus, cell(33, 2))),
529 neg(at(wumpus, cell(33, 3))),
530 neg(at(wumpus, cell(33, 4))),
531 neg(at(wumpus, cell(33, 5))),
532 neg(at(wumpus, cell(33, 6))),
533 neg(at(wumpus, cell(33, 7))),
534 neg(at(wumpus, cell(33, 8))),
535 neg(at(wumpus, cell(33, 9))),
536 neg(at(wumpus, cell(33, 10))),
537 neg(at(wumpus, cell(33, 11))),
538 neg(at(wumpus, cell(33, 12))),
539 neg(at(wumpus, cell(33, 13))),
540 neg(at(wumpus, cell(33, 14))),
541 neg(at(wumpus, cell(33, 15))),
542 neg(at(wumpus, cell(33, 16))),
543 neg(at(wumpus, cell(33, 17))),
544 neg(at(wumpus, cell(33, 18))),
545 neg(at(wumpus, cell(33, 19))),
546 neg(at(wumpus, cell(33, 20))),
547 neg(at(wumpus, cell(33, 21))),
548 neg(at(wumpus, cell(33, 22))),
549 neg(at(wumpus, cell(33, 23))),
550 neg(at(wumpus, cell(33, 24))),
551 neg(at(wumpus, cell(33, 25))),
552 neg(at(wumpus, cell(33, 26))),
553 neg(at(wumpus, cell(33, 27))),
554 neg(at(wumpus, cell(33, 28))),
555 neg(at(wumpus, cell(33, 29))),
556 neg(at(wumpus, cell(33, 30))),
557 neg(at(wumpus, cell(33, 31))),
558 neg(at(wumpus, cell(33, 32))),
559 neg(at(wumpus, cell(1, 0))),
560 neg(at(wumpus, cell(2, 0))),
561 neg(at(wumpus, cell(3, 0))),
562 neg(at(wumpus, cell(4, 0))),
563 neg(at(wumpus, cell(5, 0))),
564 neg(at(wumpus, cell(6, 0))),
565 neg(at(wumpus, cell(7, 0))),
566 neg(at(wumpus, cell(8, 0))),
567 neg(at(wumpus, cell(9, 0))),
568 neg(at(wumpus, cell(10, 0))),
569 neg(at(wumpus, cell(11, 0))),
570 neg(at(wumpus, cell(12, 0))),
571 neg(at(wumpus, cell(13, 0))),
572 neg(at(wumpus, cell(14, 0))),
573 neg(at(wumpus, cell(15, 0))),
574 neg(at(wumpus, cell(16, 0))),
575 neg(at(wumpus, cell(17, 0))),
576 neg(at(wumpus, cell(18, 0))),
577 neg(at(wumpus, cell(19, 0))),
578 neg(at(wumpus, cell(20, 0))),
579 neg(at(wumpus, cell(21, 0))),
580 neg(at(wumpus, cell(22, 0))),
581 neg(at(wumpus, cell(23, 0))),
582 neg(at(wumpus, cell(24, 0))),
583 neg(at(wumpus, cell(25, 0))),
584 neg(at(wumpus, cell(26, 0))),
585 neg(at(wumpus, cell(27, 0))),
586 neg(at(wumpus, cell(28, 0))),
587 neg(at(wumpus, cell(29, 0))),
588 neg(at(wumpus, cell(30, 0))),
589 neg(at(wumpus, cell(31, 0))),
590 neg(at(wumpus, cell(32, 0))),
591 neg(at(wumpus, cell(1, 33))),
592 neg(at(wumpus, cell(2, 33))),
593 neg(at(wumpus, cell(3, 33))),
594 neg(at(wumpus, cell(4, 33))),
595 neg(at(wumpus, cell(5, 33))),
596 neg(at(wumpus, cell(6, 33))),
597 neg(at(wumpus, cell(7, 33))),
598 neg(at(wumpus, cell(8, 33))),
599 neg(at(wumpus, cell(9, 33))),
600 neg(at(wumpus, cell(10, 33))),
601 neg(at(wumpus, cell(11, 33))),
602 neg(at(wumpus, cell(12, 33))),
603 neg(at(wumpus, cell(13, 33))),
604 neg(at(wumpus, cell(14, 33))),
605 neg(at(wumpus, cell(15, 33))),
606 neg(at(wumpus, cell(16, 33))),
607 neg(at(wumpus, cell(17, 33))),
608 neg(at(wumpus, cell(18, 33))),
609 neg(at(wumpus, cell(19, 33))),
610 neg(at(wumpus, cell(20, 33))),
611 neg(at(wumpus, cell(21, 33))),
612 neg(at(wumpus, cell(22, 33))),
613 neg(at(wumpus, cell(23, 33))),
614 neg(at(wumpus, cell(24, 33))),
615 neg(at(wumpus, cell(25, 33))),
616 neg(at(wumpus, cell(26, 33))),
617 neg(at(wumpus, cell(27, 33))),
618 neg(at(wumpus, cell(28, 33))),
619 neg(at(wumpus, cell(29, 33))),
620 neg(at(wumpus, cell(30, 33))),
621 neg(at(wumpus, cell(31, 33))),
622 neg(at(wumpus, cell(32, 33))),
623 neg(pit(cell(0, 1))),
624 neg(pit(cell(0, 2))),
625 neg(pit(cell(0, 3))),
626 neg(pit(cell(0, 4))),
627 neg(pit(cell(0, 5))),
628 neg(pit(cell(0, 6))),
629 neg(pit(cell(0, 7))),
630 neg(pit(cell(0, 8))),
631 neg(pit(cell(0, 9))),
632 neg(pit(cell(0, 10))),
633 neg(pit(cell(0, 11))),
634 neg(pit(cell(0, 12))),
635 neg(pit(cell(0, 13))),
636 neg(pit(cell(0, 14))),
637 neg(pit(cell(0, 15))),
638 neg(pit(cell(0, 16))),
639 neg(pit(cell(0, 17))),
640 neg(pit(cell(0, 18))),
641 neg(pit(cell(0, 19))),
642 neg(pit(cell(0, 20))),
643 neg(pit(cell(0, 21))),
644 neg(pit(cell(0, 22))),
645 neg(pit(cell(0, 23))),
646 neg(pit(cell(0, 24))),
647 neg(pit(cell(0, 25))),
648 neg(pit(cell(0, 26))),
649 neg(pit(cell(0, 27))),
650 neg(pit(cell(0, 28))),
651 neg(pit(cell(0, 29))),
652 neg(pit(cell(0, 30))),
653 neg(pit(cell(0, 31))),
654 neg(pit(cell(0, 32))),
655 neg(pit(cell(33, 1))),
656 neg(pit(cell(33, 2))),
657 neg(pit(cell(33, 3))),
658 neg(pit(cell(33, 4))),
659 neg(pit(cell(33, 5))),
660 neg(pit(cell(33, 6))),
661 neg(pit(cell(33, 7))),
662 neg(pit(cell(33, 8))),
663 neg(pit(cell(33, 9))),
664 neg(pit(cell(33, 10))),
665 neg(pit(cell(33, 11))),
666 neg(pit(cell(33, 12))),
667 neg(pit(cell(33, 13))),
668 neg(pit(cell(33, 14))),
669 neg(pit(cell(33, 15))),
670 neg(pit(cell(33, 16))),
671 neg(pit(cell(33, 17))),
672 neg(pit(cell(33, 18))),
673 neg(pit(cell(33, 19))),
674 neg(pit(cell(33, 20))),
675 neg(pit(cell(33, 21))),
676 neg(pit(cell(33, 22))),
677 neg(pit(cell(33, 23))),
678 neg(pit(cell(33, 24))),
679 neg(pit(cell(33, 25))),
680 neg(pit(cell(33, 26))),
681 neg(pit(cell(33, 27))),
682 neg(pit(cell(33, 28))),
683 neg(pit(cell(33, 29))),
684 neg(pit(cell(33, 30))),
685 neg(pit(cell(33, 31))),
686 neg(pit(cell(33, 32))),
687 neg(pit(cell(1, 0))),
688 neg(pit(cell(2, 0))),
689 neg(pit(cell(3, 0))),
690 neg(pit(cell(4, 0))),
691 neg(pit(cell(5, 0))),
692 neg(pit(cell(6, 0))),
693 neg(pit(cell(7, 0))),
694 neg(pit(cell(8, 0))),
695 neg(pit(cell(9, 0))),
696 neg(pit(cell(10, 0))),
697 neg(pit(cell(11, 0))),
698 neg(pit(cell(12, 0))),
699 neg(pit(cell(13, 0))),
700 neg(pit(cell(14, 0))),
701 neg(pit(cell(15, 0))),
702 neg(pit(cell(16, 0))),
703 neg(pit(cell(17, 0))),
704 neg(pit(cell(18, 0))),
705 neg(pit(cell(19, 0))),
706 neg(pit(cell(20, 0))),
707 neg(pit(cell(21, 0))),
708 neg(pit(cell(22, 0))),
709 neg(pit(cell(23, 0))),
710 neg(pit(cell(24, 0))),
711 neg(pit(cell(25, 0))),
712 neg(pit(cell(26, 0))),
713 neg(pit(cell(27, 0))),
714 neg(pit(cell(28, 0))),
715 neg(pit(cell(29, 0))),
716 neg(pit(cell(30, 0))),
717 neg(pit(cell(31, 0))),
718 neg(pit(cell(32, 0))),
719 neg(pit(cell(1, 33))),
720 neg(pit(cell(2, 33))),
721 neg(pit(cell(3, 33))),
722 neg(pit(cell(4, 33))),
723 neg(pit(cell(5, 33))),
724 neg(pit(cell(6, 33))),
725 neg(pit(cell(7, 33))),
726 neg(pit(cell(8, 33))),
727 neg(pit(cell(9, 33))),
728 neg(pit(cell(10, 33))),
729 neg(pit(cell(11, 33))),
730 neg(pit(cell(12, 33))),
731 neg(pit(cell(13, 33))),
732 neg(pit(cell(14, 33))),
733 neg(pit(cell(15, 33))),
734 neg(pit(cell(16, 33))),
735 neg(pit(cell(17, 33))),
736 neg(pit(cell(18, 33))),
737 neg(pit(cell(19, 33))),
738 neg(pit(cell(20, 33))),
739 neg(pit(cell(21, 33))),
740 neg(pit(cell(22, 33))),
741 neg(pit(cell(23, 33))),
742 neg(pit(cell(24, 33))),
743 neg(pit(cell(25, 33))),
744 neg(pit(cell(26, 33))),
745 neg(pit(cell(27, 33))),
746 neg(pit(cell(28, 33))),
747 neg(pit(cell(29, 33))),
748 neg(pit(cell(30, 33))),
749 neg(pit(cell(31, 33))),
750 neg(pit(cell(32, 33))),
751 carries(agent, arrow),
752 at(agent, cell(1, 1)),
753 alive(wumpus)
754 ]