INPUT TEXT: John can have a card. John is a customer. If someone can have a card and is a customer then he/she must wait. Every clerk must have a card. Bill is a clerk. Bill cannot wait. No customer must buy a car. RULES: -group([can([pred_mod(wait,named('Bill'),[])])]). -group([must([pred_mod(buy,A,gv(0),[]),object(gv(0),car,countable,na,eq,1)])]) <- [object(A,customer,countable,na,eq,1)]. can([pred_mod(have,named('John'),v(0),[]),object(v(0),card,countable,na,eq,1)]). group([must([pred_mod(wait,A,[])])]) <- [can([pred_mod(have,A,B,[]),object(B,card,countable,na,eq,1)]), object(A,C,D,E,F,G), object(A,customer,countable,na,eq,1)]. group([must([pred_mod(have,A,gv(1),[]),object(gv(1),card,countable,na,eq,1)])]) <- [object(A,clerk,countable,na,eq,1)]. object(named('Bill'),'Bill',named,na,eq,1). object(named('Bill'),clerk,countable,na,eq,1). object(named('John'),'John',named,na,eq,1). object(named('John'),customer,countable,na,eq,1). SIMPLE RULES: -can(wait(named('Bill'),[])). -must([buy(A,gv(0),[]),car(gv(0))]) <- [customer(A)]. can([have(named('John'),v(0),[]),card(v(0))]). must(wait(A,[])) <- [can([have(A,B,[]),card(B)]), something(A), customer(A)]. must([have(A,gv(1),[]),card(gv(1))]) <- [clerk(A)]. clerk(named('Bill')). customer(named('John')). ANSWERSET #1: -group([can([pred_mod(wait,named('Bill'),[])])]). -group([must([pred_mod(buy,named('John'),gv(0),[]),object(gv(0),car,countable,na,eq,1)])]). can([pred_mod(have,named('John'),v(0),[]),object(v(0),card,countable,na,eq,1)]). group([must([pred_mod(wait,named('John'),[])])]). group([must([pred_mod(have,named('Bill'),gv(1),[]),object(gv(1),card,countable,na,eq,1)])]). object(named('Bill'),'Bill',named,na,eq,1). object(named('Bill'),clerk,countable,na,eq,1). object(named('John'),'John',named,na,eq,1). object(named('John'),customer,countable,na,eq,1). ANSWERTEXT #1: John is a customer. Bill is a clerk. It is false that it is possible that Bill waits. It is false that it is necessary that John buys a car. It is possible that John has a card. It is necessary that John waits. It is necessary that Bill has a card.