/* Copyright (C) Wolfgang Menzel, Universität Hamburg, 2003-06-27 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. */ %%% yet another instance-based exercises for agreement with %%% anticipated error cases :- use_module(instance_diag). exercise(agreement2,'Build a sentence using the following words'). item(agreement2,1,'i, he, call', [[[i, call, him]], [[he, calls, me]], [[i, called, him]], [[he, called, me]], [[i, will, call, him]], [[he, will, call, me]], [[me, he, calls],[obj_third,pro_move_end]], [[him, I, call],[obj_third,pro_move_end]], [[i, call, he],[obj_case,obj_acc]], [[he, calls, i],[obj_case,obj_acc]], [[me, calls, he],[objsubj,exchange]], [[him, calls, I],[objsubj,exchange]], [[i, calls, him],[subjagr,non_3rd_sg]], [[he, call, me],[subjagr,'3rd_sg']]]). item(agreement2,2,'he, she, call', [[[he, calls, her]], [[she, calls, him]], [[he, called, her]], [[she, called, him]], [[he, will, call, her]], [[she, will, call, him]], [[him, she, calls],[obj_third,pro_move_end]], [[her, he, calls],[obj_third,pro_move_end]], [[he, calls, she],[obj_case,obj_acc]], [[she, calls, him],[obj_case,obj_acc]], [[him, calls, she],[objsubj,exchange]], [[her, calls, he],[objsubj,exchange]], [[he, call, her],[subjagr,non_3rd_sg]], [[she, call, him],[subjagr,non_3rd_sg]]]). message(agreement2,obj_third, 'The object has to be placed after the verb.'). message(agreement2,pro_move_end, 'Move the first word to the end of the sentence'). message(agreement2,obj_case, 'The case of the object is wrong.'). message(agreement2,obj_acc, 'The object has to be in accusative case.'). message(agreement2,objsubj, 'The subject should precede and the object follow the verb.'). message(agreement2,exchange, 'Exchange the first and the last word.'). message(agreement2,subjagr, 'Subject and Predicate must agree in person and number'). message(agreement2,non_3rd_sg, 'The first pronoun is not 3rd person singular, but the verb is.'). message(agreement2,'3rd_sg', 'The first pronoun is 3rd person singular, so the verb should be as well.'). :- do_exercise(agreement2).