;; ;; To generate, imagine that the formula to the right of each "::" has been ;; converted to the MRS format following. Then do the following to generate: cd erg ace -G inflatemrs.dat -g openproof/config-inflate.tdl ace -G paraphrase-op.dat -g openproof/config.tdl ace -G ergopen.dat -g ace/config-open.tdl ace -g inflatemrs.dat -f | ace -g paraphrase-op.dat -f | ace -g ergopen.dat -e ---------------------- A is a cube :: cube(a) [ LTOP: h1 INDEX: e2 RELS: < [ named_rel LBL: h2 ARG0: x4 CARG: "A" ] [ "cube" LBL: h3 ARG0: e2 ARG1: x4 ] > ] ---------------------- B is smaller than A :: smaller(b,a) [ LTOP: h1 INDEX: e3 RELS: < [ named_rel LBL: h8 ARG0: x6 CARG: "B" ] [ named_rel LBL: h9 ARG0: x7 CARG: "A" ] [ "smaller" LBL: h2 ARG0: e3 ARG1: x6 ARG2: x7 ] > ] ---------------------- C is between A and D :: between(c,a,d) [ LTOP: h1 INDEX: e3 RELS: < [ named_rel LBL: h9 ARG0: x1 CARG: "A" ] [ named_rel LBL: h8 ARG0: x2 CARG: "C" ] [ named_rel LBL: h7 ARG0: x3 CARG: "D" ] [ "between" LBL: h2 ARG0: e3 ARG1: x2 ARG2: x1 ARG3: x3 ] > ] ---------------------- D is in back of A :: backof(d,a) [ LTOP: h1 INDEX: e3 RELS: < [ named_rel LBL: h8 ARG0: x6 CARG: "B" ] [ named_rel LBL: h9 ARG0: x7 CARG: "A" ] [ "backof" LBL: h2 ARG0: e3 ARG1: x6 ARG2: x7 ] > ] ---------------------- D is large :: large(d) [ LTOP: h1 INDEX: e3 RELS: < [ named_rel LBL: h8 ARG0: x6 CARG: "A" ] [ "large" LBL: h2 ARG0: e3 ARG1: x6 ] > ] ---------------------- E is to the right of B :: rightof(e,b) NB: Not yet handling "E is right of B" [ LTOP: h1 INDEX: e3 RELS: < [ named_rel LBL: h8 ARG0: x6 CARG: "E" ] [ named_rel LBL: h9 ARG0: x7 CARG: "B" ] [ "rightof" LBL: h2 ARG0: e3 ARG1: x6 ARG2: x7 ] > ] ---------------------- F is not in front of A :: -frontof(f,a) [ LTOP: h1 INDEX: e3 RELS: < [ named_rel LBL: h8 ARG0: x6 CARG: "F" ] [ named_rel LBL: h9 ARG0: x7 CARG: "A" ] [ neg_rel LBL: h10 ARG1: h3 ] [ "frontof" LBL: h2 ARG0: e3 ARG1: x6 ARG2: x7 ] > HCONS: < h3 QEQ h2 > ] ---------------------- B is in the same row as D :: samerow(b,d) [ LTOP: h1 INDEX: e3 RELS: < [ named_rel LBL: h8 ARG0: x6 CARG: "E" ] [ named_rel LBL: h9 ARG0: x7 CARG: "B" ] [ "samerow" LBL: h2 ARG0: e3 ARG1: x6 ARG2: x7 ] > ] ---------------------- B is the same size as C :: samesize(b,c) [ LTOP: h1 INDEX: e3 RELS: < [ named_rel LBL: h8 ARG0: x6 CARG: "E" ] [ named_rel LBL: h9 ARG0: x7 CARG: "B" ] [ "samesize" LBL: h2 ARG0: e3 ARG1: x6 ARG2: x7 ] > ] ---------------------- A is large and B is small. [ LTOP: h1 INDEX: e3 RELS: < [ _and_c_rel LBL: h2 ARG0: e3 L-INDEX: e4 R-INDEX: e5 ] [ named_rel LBL: h8 ARG0: x6 CARG: "A" ] [ "large" LBL: h3 ARG0: e4 ARG1: x6 ] [ named_rel LBL: h9 ARG0: x7 CARG: "B" ] [ "small" LBL: h4 ARG0: e5 ARG1: x7 ] > ] ---------------------- F is to the right of A and F is to the left of B :: rightof(f,a) & leftof(f,b) NB: Get skolem error for this one, but okay for the next one. [ LTOP: h1 INDEX: e3 RELS: < [ _and_c_rel LBL: h2 ARG0: e3 L-INDEX: e4 R-INDEX: e5 ] [ named_rel LBL: h8 ARG0: x6 CARG: "F" ] [ named_rel LBL: h9 ARG0: x7 CARG: "A" ] [ "rightof" LBL: h3 ARG0: e4 ARG1: x6 ARG2: x7 ] [ named_rel LBL: h18 ARG0: x16 CARG: "F" ] [ named_rel LBL: h19 ARG0: x17 CARG: "B" ] [ "leftof" LBL: h12 ARG0: e5 ARG1: x16 ARG2: x17 ] > ] ;; okay: [ LTOP: h1 INDEX: e3 RELS: < [ _and_c_rel LBL: h2 ARG0: e3 L-INDEX: e4 R-INDEX: e5 ] [ named_rel LBL: h8 ARG0: x6 CARG: "F" ] [ named_rel LBL: h9 ARG0: x7 CARG: "A" ] [ "smaller" LBL: h3 ARG0: e4 ARG1: x6 ARG2: x7 ] [ named_rel LBL: h18 ARG0: x16 CARG: "F" ] [ named_rel LBL: h19 ARG0: x17 CARG: "B" ] [ "larger" LBL: h12 ARG0: e5 ARG1: x16 ARG2: x17 ] > ] ---------------------- F is in back of A or F is smaller than A :: backof(f,a) | smaller(f,a) [ LTOP: h1 INDEX: e3 RELS: < [ _or_c_rel LBL: h2 ARG0: e3 L-INDEX: e4 R-INDEX: e5 ] [ named_rel LBL: h8 ARG0: x6 CARG: "F" ] [ named_rel LBL: h9 ARG0: x7 CARG: "A" ] [ "backof" LBL: h3 ARG0: e4 ARG1: x6 ARG2: x7 ] [ named_rel LBL: h18 ARG0: x16 CARG: "F" ] [ named_rel LBL: h19 ARG0: x17 CARG: "A" ] [ "smaller" LBL: h12 ARG0: e5 ARG1: x16 ARG2: x17 ] > ] ---------------------- E and D are between C and A :: between(e,c,a) & between(d,c,a) NB: Not happy to inflate and then do the coord transfer rule ace: transfer.c:1048: transfer_next_skolem_constant: Assertion `default_type_hierarchy()->nstrings > skolem_counter' failed. [ LTOP: h1 INDEX: e3 RELS: < [ _and_c_rel LBL: h2 ARG0: e3 L-INDEX: e4 R-INDEX: e5 L-HNDL: h20 R-HNDL: h21 ] [ named_rel LBL: h9 ARG0: x1 CARG: "E" ] [ named_rel LBL: h8 ARG0: x2 CARG: "C" ] [ named_rel LBL: h7 ARG0: x3 CARG: "A" ] [ "between" LBL: h3 ARG0: e4 ARG1: x1 ARG2: x2 ARG3: x3 ] [ named_rel LBL: h19 ARG0: x11 CARG: "D" ] [ named_rel LBL: h18 ARG0: x12 CARG: "C" ] [ named_rel LBL: h17 ARG0: x13 CARG: "A" ] [ "between" LBL: h13 ARG0: e5 ARG1: x11 ARG2: x12 ARG3: x13 ] > HCONS: < h20 QEQ h3 h21 QEQ h13 > ] ---------------------- B and D are smaller than C. NB: Unfortunately, the INDEX value has to be hardwired to the ARG0 of the sentence conjunct's verb which will survive the conflation of the coordination, but this prevents the full coord S from generating (change INDEX below to `e3' to get the coord S). [ LTOP: h1 INDEX: e4 RELS: < [ _and_c_rel LBL: h2 ARG0: e3 L-INDEX: e4 R-INDEX: e5 L-HNDL: h20 R-HNDL: h21 ] [ named_rel LBL: h8 ARG0: x6 CARG: "B" ] [ named_rel LBL: h9 ARG0: x7 CARG: "C" ] [ "smaller" LBL: h3 ARG0: e4 ARG1: x6 ARG2: x7 ] [ named_rel LBL: h18 ARG0: x16 CARG: "D" ] [ named_rel LBL: h19 ARG0: x17 CARG: "C" ] [ "smaller" LBL: h12 ARG0: e5 ARG1: x16 ARG2: x17 ] > HCONS: < h20 QEQ h3 h21 QEQ h12 > ] ---------------------- F is in back of A or D is in back of A F or D is in back of A NB: same issue of pre-assigning INDEX to the ARG0 of the surviving conjunct. [ LTOP: h1 INDEX: e4 RELS: < [ _or_c_rel LBL: h2 ARG0: e3 L-INDEX: e4 R-INDEX: e5 L-HNDL: h20 R-HNDL: h21 ] [ named_rel LBL: h8 ARG0: x6 CARG: "F" ] [ named_rel LBL: h9 ARG0: x7 CARG: "A" ] [ "backof" LBL: h3 ARG0: e4 ARG1: x6 ARG2: x7 ] [ named_rel LBL: h18 ARG0: x16 CARG: "D" ] [ named_rel LBL: h19 ARG0: x17 CARG: "A" ] [ "backof" LBL: h12 ARG0: e5 ARG1: x16 ARG2: x17 ] > HCONS: < h20 QEQ h3 h21 QEQ h12 > ] ----------------------