:- multifile sem/5, id/2. :- discontiguous sem/5, id/2. :- dynamic sem/5, id/2. id(1,1). %%% A man does not talk or every man walks . sem(1, [word(1001, 'A'), word(1002, man), word(1003, does), word(1004, not), word(1005, talk), word(1006, or), word(1007, every), word(1008, man), word(1009, walks), word(1010, '.')], [pos(1001, 'DT'), pos(1002, 'NN'), pos(1003, 'VBZ'), pos(1004, 'RB'), pos(1005, 'VB'), pos(1006, 'CC'), pos(1007, 'DT'), pos(1008, 'NN'), pos(1009, 'VBZ'), pos(1010, '.')], [], drs([], [[1006]:or(drs([], [[1004]:not(drs([[1001]:x0, [1005]:x1], [[1002]:pred(x0, man, n, 0), [1005]:pred(x1, talk, v, 0), []:pred(x1, event, n, 1), [1005]:rel(x1, x0, agent, 0)]))]), drs([], [[1007]:imp(drs([[1007]:x2], [[1008]:pred(x2, man, n, 0)]), drs([[1009]:x3], [[1009]:pred(x3, walk, v, 0), []:pred(x3, event, n, 1), [1009]:rel(x3, x2, agent, 0)]))]))]) ). %%% _________________________________________________________________ %%% | | %%% |_________________________________________________________________| %%% | ______________________ __________________________________ | %%% | | | | | | %%% | |______________________| |__________________________________| | %%% | | ______________ | V | _________ ______________ | | %%% | | | x0 x1 | | | | x2 | | x3 | | | %%% | | __ |______________| | | |_________| |______________| | | %%% | | | | man(x0) | | | | man(x2) | ==> | walk(x3) | | | %%% | | | talk(x1) | | | |_________| | event(x3) | | | %%% | | | event(x1) | | | | agent(x3,x2) | | | %%% | | | agent(x1,x0) | | | |______________| | | %%% | | |______________| | |__________________________________| | %%% | |______________________| | %%% |_________________________________________________________________|