% This file tests the HYPROLOG system % with a combination of DCG, assumptions and abducibles. % % Copyright (C) Henning Christiansen, October 2005 % ?- hyprolog(shootingLuckyLuke). % NB: An extended version available with file name shootingLuckyLukeAdvanced abducibles event/3. % abducibles; example: event(shooting,maDalton,luckyLuke) assumptions acting/2. % for pronouns discourse --> ss. ss --> []. % ss stands for sentenceS ss --> s, ss. s --> np(_,Who), [shoots], np(_,Whom), {event(shooting,Who,Whom)}. np(Gender,Who) --> pro(Gender,Who). np(Gender,Who) --> name(Gender,Who), {*acting(Gender,Who)}. name(masc,luckyLuke) --> [luckyLuke]. name(masc,joeDalton) --> [joeDalton]. name(masc,jackDalton) --> [jackDalton]. name(masc,williamDalton) --> [williamDalton]. name(masc,averellDalton) --> [averellDalton]. name(fem,calamityJane) --> [calamityJane]. name(fem,maDalton) --> [maDalton]. pro(masc,Who) --> [he], {-acting(masc,Who)}. pro(fem,Who) --> [she], {-acting(fem,Who)}. pro(masc,Whom) --> [him], {-acting(masc,Whom)}. pro(fem,Whom) --> [her], {-acting(fem,Whom)}. /************** ?- phrase(discourse, [luckyLuke,shoots,calamityJane]). ?- phrase(discourse, [he,shoots,maDalton]). ?- phrase(discourse, [luckyLuke,shoots,calamityJane, he,shoots,maDalton]). ?- phrase(discourse, [luckyLuke,shoots,jackDalton, he,shoots,maDalton]). ******************/