============================================================== Starting image `/util/acl62/composer' with arguments `(-L /projects/snwiz/bin/sneps -e (sneps))' in directory `/home/csgrad/krishna2/cva/final' on machine `localhost'. Loading system SNePS...10% 20% 30% 40% 50% 60% 70% 80% 90% 100% SNePS-2.6 [PL:1a 2004/08/26 23:05:27] loaded. Type `(sneps)' or `(snepslog)' to get started. Welcome to SNePS-2.6 [PL:1a 2004/08/26 23:05:27] Copyright (C) 1984--2004 by Research Foundation of State University of New York. SNePS comes with ABSOLUTELY NO WARRANTY! Type `(copyright)' for detailed copyright information. Type `(demo)' for a list of example applications. 12/17/2004 0:07:32 * (demo "~/cva/final/kolper.demo.2") File /home/csgrad/krishna2/cva/final/kolper.demo.2 is now the source of input. CPU time : 0.00 * ; ======================================================================= ; FILENAME: kolper.demo.2 ; DATE: 11/15/2004 - 12/1/2004 ; PROGRAMMER: Rahul Krishna ;; this template version: template.demo.2003.11.17.txt ; Lines beginning with a semi-colon are comments. ; Lines beginning with "^" are Lisp commands. ; All other lines are SNePS commands. ; ; To use this file: run SNePS; at the SNePS prompt (*), type: ; ; (demo "brkolper.demo" :av) ; ; Make sure all necessary files are in the current working directory ; or else use full path names. ; ======================================================================= ; Turn off inference tracing. ; This is optional; if tracing is desired, then delete this. ^( --> setq snip:*infertrace* nil) nil CPU time : 0.00 * ; Load the appropriate definition algorithm: ^( --> load "/projects/rapaport/CVA/STN2/defun_noun.cl") ; Loading /projects/rapaport/CVA/STN2/defun_noun.cl t CPU time : 0.35 * ; Clear the SNePS network: (resetnet t) Net reset CPU time : 0.00 * ; OPTIONAL: ; UNCOMMENT THE FOLLOWING CODE TO TURN FULL FORWARD INFERENCING ON: ; ; ;enter the "snip" package: ; ^(in-package snip) ; ; ;turn on full forward inferencing: ; ^(defun broadcast-one-report (represent) ; (let (anysent) ; (do.chset (ch *OUTGOING-CHANNELS* anysent) ; (when (isopen.ch ch) ; (setq anysent ; (or (try-to-send-report represent ch) ; anysent))))) ; nil) ; ;re-enter the "sneps" package: ; ^(in-package sneps) ; load all pre-defined relations: (intext "/projects/rapaport/CVA/STN2/demos/rels") File /projects/rapaport/CVA/STN2/demos/rels is now the source of input. CPU time : 0.00 * (a1 a2 a3 a4 after agent against antonym associated before cause class direction equiv etime event from in indobj instr into lex location manner member mode object on onto part place possessor proper-name property rel skf sp-rel stime subclass superclass subset superset synonym time to whole kn_cat) CPU time : 0.02 * End of file /projects/rapaport/CVA/STN2/demos/rels CPU time : 0.02 * ; load all pre-defined path definitions: (intext "/projects/rapaport/CVA/mkb3.CVA/paths/paths") File /projects/rapaport/CVA/mkb3.CVA/paths/paths is now the source of input. CPU time : 0.02 * before implied by the path (compose before (kstar (compose after- ! before))) before- implied by the path (compose (kstar (compose before- ! after)) before-) CPU time : 0.00 * after implied by the path (compose after (kstar (compose before- ! after))) after- implied by the path (compose (kstar (compose after- ! before)) after-) CPU time : 0.00 * sub1 implied by the path (compose object1- superclass- ! subclass superclass- ! subclass) sub1- implied by the path (compose subclass- ! superclass subclass- ! superclass object1) CPU time : 0.00 * super1 implied by the path (compose superclass subclass- ! superclass object1- ! object2) super1- implied by the path (compose object2- ! object1 superclass- ! subclass superclass-) CPU time : 0.00 * superclass implied by the path (or superclass super1) superclass- implied by the path (or superclass- super1-) CPU time : 0.00 * End of file /projects/rapaport/CVA/mkb3.CVA/paths/paths CPU time : 0.01 * ; Define other relations (define skolem-function arg1 mod head) (skolem-function arg1 mod head) CPU time : 0.00 * ; BACKGROUND KNOWLEDGE: ; ===================== ; A courtyard is outside of a room. (describe (assert forall ($cyard $room) &ant (build member *cyard class (build lex "courtyard")) &ant (build member *room class (build lex "room")) cq (build object1 *cyard rel (build lex "outside") object2 *room))) (m4! (forall v2 v1) (&ant (p2 (class (m2 (lex room))) (member v2)) (p1 (class (m1 (lex courtyard))) (member v1))) (cq (p3 (object1 v1) (object2 v2) (rel (m3 (lex outside)))))) (m4!) CPU time : 0.00 * ; A room has windows (describe (assert forall *room ant (build member *room class (build lex "room")) cq (build member (build skolem-function window\ of arg1 *room) class (build lex "window")) cq (build object #win rel (build skolem-function window\ of arg1 *room) possessor *room))) (m6! (forall v2) (ant (p2 (class (m2 (lex room))) (member v2))) (cq (p6 (object b1) (possessor v2) (rel (p4 (arg1 v2) (skolem-function window of)))) (p5 (class (m5 (lex window))) (member (p4))))) (m6!) CPU time : 0.01 * ; A window possibly provides a view (describe (assert forall $window ant (build member *window class (build lex "window")) cq (build mod (build lex "possibly") head (build object1 *window rel (build lex "provides") object2 (build skolem-function view\ of arg1 *window))) cq (build member (build skolem-function view\ of arg1 *window) class (build lex "view")))) (m10! (forall v3) (ant (p7 (class (m5 (lex window))) (member v3))) (cq (p11 (class (m9 (lex view))) (member (p8 (arg1 v3) (skolem-function view of)))) (p10 (head (p9 (object1 v3) (object2 (p8)) (rel (m8 (lex provides))))) (mod (m7 (lex possibly)))))) (m10!) CPU time : 0.00 * ; A window possibly does not provide a view (describe (assert forall $window ant (build member *window class (build lex "window")) cq (build mod (build lex "possibly") head (build min 0 max 0 arg (build object1 *window rel (build lex "provides") object2 (build skolem-function view\ of arg1 *window)))) cq (build member (build skolem-function view\ of arg1 *window) class (build lex "view")))) (m11! (forall v4) (ant (p12 (class (m5 (lex window))) (member v4))) (cq (p17 (class (m9 (lex view))) (member (p13 (arg1 v4) (skolem-function view of)))) (p16 (head (p15 (min 0) (max 0) (arg (p14 (object1 v4) (object2 (p13)) (rel (m8 (lex provides))))))) (mod (m7 (lex possibly)))))) (m11!) CPU time : 0.01 * ;if an object fronts something that is outside a room and object is possessed by the room then it possibly provides a view (describe (assert forall ($x $y $k $room) &ant (build object1 *x rel (build lex "front") object2 *y) &ant (build object1 *y rel (build lex "outside") object2 *room) &ant (build member *room class (build lex "room")) &ant (build possessor *room object *x rel *k) cq (build mod (build lex "possibly") head (build object1 *x rel (build lex "provides") object2 (build skolem-function view\ of arg1 *x))) cq (build member (build skolem-function view\ of arg1 *x) class (build lex "view")))) (m13! (forall v8 v7 v6 v5) (&ant (p21 (object v5) (possessor v8) (rel v7)) (p20 (class (m2 (lex room))) (member v8)) (p19 (object1 v6) (object2 v8) (rel (m3 (lex outside)))) (p18 (object1 v5) (object2 v6) (rel (m12 (lex front))))) (cq (p25 (class (m9 (lex view))) (member (p22 (arg1 v5) (skolem-function view of)))) (p24 (head (p23 (object1 v5) (object2 (p22)) (rel (m8 (lex provides))))) (mod (m7 (lex possibly)))))) (m13!) CPU time : 0.01 * ;if an object fronts something that is outside a room and object is possessed by the room then it possibly does not provide a view (describe (assert forall ($x $y $k $room) &ant (build object1 *x rel (build lex "front") object2 *y) &ant (build object1 *y rel (build lex "outside") object2 *room) &ant (build member *room class (build lex "room")) &ant (build possessor *room object *x rel *k) cq (build mod (build lex "possibly") head (build min 0 max 0 arg (build object1 *x rel (build lex "provides") object2 (build skolem-function view\ of arg1 *x)))) cq (build member (build skolem-function view\ of arg1 *x) class (build lex "view")))) (m14! (forall v12 v11 v10 v9) (&ant (p29 (object v9) (possessor v12) (rel v11)) (p28 (class (m2 (lex room))) (member v12)) (p27 (object1 v10) (object2 v12) (rel (m3 (lex outside)))) (p26 (object1 v9) (object2 v10) (rel (m12 (lex front))))) (cq (p34 (class (m9 (lex view))) (member (p30 (arg1 v9) (skolem-function view of)))) (p33 (head (p32 (min 0) (max 0) (arg (p31 (object1 v9) (object2 (p30)) (rel (m8 (lex provides))))))) (mod (m7 (lex possibly)))))) (m14!) CPU time : 0.01 * ; if x is y's z then x is a member of class z (describe (assert forall ($x $y $z) ant (build object *x possessor *y rel *z) cq (build member *x class *z))) (m15! (forall v15 v14 v13) (ant (p35 (object v13) (possessor v14) (rel v15))) (cq (p36 (class v15) (member v13)))) (m15!) CPU time : 0.00 * ;if x and y both possibly provide views, and x & y are members of classes a & b repectively, and class a is unknown, then class a is a subclass of class b (describe (assert forall ($a $b $w $x $y $z) &ant (build mod (build lex "possibly") head (build object1 *x rel (build lex "provides") object2 *w)) &ant (build mod (build lex "possibly") head (build object1 *y rel (build lex "provides") object2 *z)) &ant (build member *x class *a) &ant (build member *y class *b) &ant (build member *w class (build lex "view")) &ant (build member *z class (build lex "view")) &ant (build object *a property (build lex "unknown")) cq (build subclass *a superclass *b))) (m17! (forall v21 v20 v19 v18 v17 v16) (&ant (p45 (object v16) (property (m16 (lex unknown)))) (p44 (class (m9 (lex view))) (member v21)) (p43 (class (m9)) (member v18)) (p42 (class v17) (member v20)) (p41 (class v16) (member v19)) (p40 (head (p39 (object1 v20) (object2 v21) (rel (m8 (lex provides))))) (mod (m7 (lex possibly)))) (p38 (head (p37 (object1 v19) (object2 v18) (rel (m8)))) (mod (m7)))) (cq (p46 (subclass v16) (superclass v17)))) (m17!) CPU time : 0.07 * ;if x is used to a view and x is depressed and a view is possibly provided or not provided by some z, then y is not provided by that z (describe (add forall ($x $v1 $v2 $z $view) &ant (build object *x property (build lex "depressed")) &ant (build object1 *x rel (build lex "used-to") object2 *v1) &ant (build member *v1 class *view) &ant (build mod (build lex "possibly") head (build object1 *z rel (build lex "provides") object2 *v2)) &ant (build mod (build lex "possibly") head (build min 0 max 0 arg (build object1 *z rel (build lex "provides") object2 *v2))) &ant (build member *v2 class *view) cq (build min 0 max 0 arg (build object1 *z rel (build lex "provides") object2 *v2)))) (m20! (forall v26 v25 v24 v23 v22) (&ant (p54 (class v26) (member v24)) (p53 (head (p52 (min 0) (max 0) (arg (p50 (object1 v25) (object2 v24) (rel (m8 (lex provides))))))) (mod (m7 (lex possibly)))) (p51 (head (p50)) (mod (m7))) (p49 (class v26) (member v23)) (p48 (object1 v22) (object2 v23) (rel (m19 (lex used-to)))) (p47 (object v22) (property (m18 (lex depressed))))) (cq (p52))) (m20!) CPU time : 0.28 * ; if not(x provides y), then x "does not provide" y (describe (add forall ($x $y) ant (build min 0 max 0 arg (build object1 *x rel (build lex "provides") object2 *y)) cq (build object1 *x rel (build lex "does not provide") object2 *y))) (m22! (forall v28 v27) (ant (p80 (min 0) (max 0) (arg (p79 (object1 v27) (object2 v28) (rel (m8 (lex provides))))))) (cq (p81 (object1 v27) (object2 v28) (rel (m21 (lex does not provide)))))) (m22!) CPU time : 0.05 * ; CASSIE READS THE PASSAGE: ; ========================= ; The Sentence: ; When you are used to a broad view, it becomes quite depressing ; when you come to live in a room with one or two kolpers ; fronting a courtyard. (describe (add forall ($view $agent $room $kolper $courtyard) &ant (build member *view class (build lex "view")) &ant (build object *view property (build lex "broad")) &ant (build object1 *agent rel (build lex "used-to") object2 *view) &ant (build agent *agent act (build action (build lex "live") object *room)) &ant (build member *room class (build lex room)) &ant (build possessor *room object *kolper rel (build lex "kolper")) &ant (build object1 *kolper rel (build lex "front") object2 *courtyard) &ant (build member *courtyard class (build lex "courtyard")) cq (build object *agent property (build lex "depressed")))) (m26! (forall v33 v32 v31 v30 v29) (&ant (p90 (class (m1 (lex courtyard))) (member v33)) (p89 (object1 v32) (object2 v33) (rel (m12 (lex front)))) (p88 (object v32) (possessor v31) (rel (m25 (lex kolper)))) (p87 (class (m2 (lex room))) (member v31)) (p86 (act (p85 (action (m24 (lex live))) (object v31))) (agent v30)) (p84 (object1 v30) (object2 v29) (rel (m19 (lex used-to)))) (p83 (object v29) (property (m23 (lex broad)))) (p82 (class (m9 (lex view))) (member v29))) (cq (p91 (object v30) (property (m18 (lex depressed)))))) (m26!) CPU time : 0.18 * ; Add instances for the items in the above rule (add member #view class (build lex "view")) (m27!) CPU time : 0.04 * (add object *view property (build lex "broad")) (m28!) CPU time : 0.03 * (add agent #fred act (build action (build lex "live") object #room)) (m30!) CPU time : 0.02 * (add object1 *fred rel (build lex "used-to") object2 *view) (m31!) CPU time : 0.02 * (add member *room class (build lex "room")) (m42! m41! m39! m38! m35! m34! m32!) CPU time : 0.15 * (add possessor *room object #kolper rel (build lex "kolper")) (m44! m43!) CPU time : 0.04 * (add object1 *kolper rel (build lex "front") object2 #courtyard) (m45!) CPU time : 0.03 * (add member *courtyard class (build lex "courtyard")) (m56! m55! m54! m53! m52! m51! m48! m47! m46! m40!) CPU time : 0.17 * (add object (build lex "kolper") property (build lex "unknown")) (m58! m57! m52! m51! m46! m44! m43! m42! m39! m38! m34! m32! m27!) CPU time : 0.55 * (add object *fred property (build lex "depressed")) (m48!) CPU time : 0.24 * ; Ask Cassie what "kolper" means: ^( --> defineNoun "kolper") Definition of kolper: Class Inclusions: window, Possible Properties: does not provide view, does not provide view, front courtyard, Possessive: room, nil CPU time : 0.14 * End of /home/csgrad/krishna2/cva/final/kolper.demo.2 demonstration. CPU time : 2.49 *