2:- module(title,[title/1,title/2,title/3]).    3
    4:- use_module(library(lists),[member/2]).    5
    6title(X):- title(X,_,_).
    7title(X,Y):- title(X,Y,_).
    8
    9% Titles starting with A 
   10title(abbot, abbot,       male).
   11title(T,     admiral,     person):- member(T,[adm,'adm.',admiral]).
   12title(T,     ambassador,  person):- member(T,[amb,'amb.',ambassador]).
   13
   14% Titles starting with B 
   15title(baron,   baron,     male).
   16title(T,       baroness,  female):- member(T,[baroness,brnss,'brnss.']).
   17title(bishop,  bishop,    male).
   18title(T,       brigadire, person):- member(T,[brig,'brig.',brigadire]).
   19title(T,       brother,   male  ):- member(T,[br,'br.',brother]).
   20
   21% Titles starting with C
   22title(T,             commodore,           person):- member(T,[cdre,cmdre,commodore]).
   23title(cpo,           chief_petty_officer, person).
   24title(T,             captain,             person):- member(T,[capt,cpt,'capt.','cpt.',captain]).
   25title(cardinal,      cardinal,            person).
   26title(T,             chansellor,          person):- member(T, [chan,chansellor]).
   27title(T,             chaplain,            person):- member(T, [chapln,'chapln.',chaplain]).
   28title(T,             colonel,             person):- member(T, [col,'col.',colonel]).
   29title(commandant,    commandant,          person).
   30title(T,             commander,           person):- member(T,[cmdr,'cmdr.',commander]).
   31title(commissioner,  commissioner,        person).
   32title(T,             corporal,            person):- member(T,[cpl,'cpl.',corporal]).
   33title(councillor,    councillor,          person).
   34title(count,         count,               male).
   35title(T,             countess,            female):- member(T,[countess,cntss,'cntss.']).
   36
   37% Titles starting with D
   38title(dame,      dame,      female).
   39title(deacon,    deacon,    male).
   40title(deaconess, deaconess, female).
   41title(dean,      dean,      person).
   42title(T,         doctor,    person):- member(T,[dr,'dr.',drs,'drs.',doctor]).
   43title(duke,      duke,      person).
   44
   45% Titles starting with E
   46title(T, ensign,    person):- member(T,[ensign,ens,'ens.']).
   47
   48% Titles starting with F
   49title(T,    father, male):- member(T,[father,fr,'fr.']).
   50title(T,    friar,  male):- member(T,[friar,fr,'fr.']).
   51title(frau, frau,   female).
   52
   53% Titles starting with G
   54title(T, general,  person):- member(T,[gen,'gen.',general]).
   55title(T, governor, person):- member(T,[gov,'gov.',governor]).
   56
   57% Titles starting with H
   58title(T, honorary, person):- member(T,[hon,'hon.',honorary]).
   59
   60% Titles starting with J
   61title(judge,   judge, person).
   62title(justice, justice, person).
   63
   64% Titles starting with L
   65title(lady, lady, female).
   66title(T,    lieutenant, person):- member(T,[lieut,'lieut.',lt,'lt.']).
   67title(lord, lord, person).
   68
   69% Titles starting with M
   70title(marshal, marshal,      person).
   71title(master,  master,       person).
   72title(T,       madame,       female):- member(T,[mme,madame,'mme.',mmes,'mmes.']).
   73title(T,       major,        person):- member(T,[maj,'maj.',major]).
   74title(T,       miss,         female):- member(T,[miss,ms,'ms.']).
   75title(T,       mister,       male)  :- member(T,[mr,'mr.',mister,monsier,messrs,'messrs.']).
   76title(T,       missis,       female):- member(T,[mrs,'mrs.',missis,missus]).
   77title(T,       mademoiselle, female):- member(T,['mademoiselle',mlle,'mlle.']).
   78title(T,       monsignor,    male)  :- member(T,[monsignor,'mgr.',mgr,msgr,'msgr.']).
   79
   80% Titles starting with P
   81title(T,        president, person):- member(T,[pres,'pres.',president]).
   82title(prince,   prince,    male).
   83title(princess, princess,  female).
   84title(T,        professor, person):- member(T,[prof,'prof.',professor]).
   85
   86% Titles starting with R
   87title(rabbi, rabbi, person).
   88title(T, representative, person):- member(T,[rep,'rep.',representative]).
   89title(T, reverend,       person):- member(T,[rev,'rev.',reverend,revs,'revs.']).
   90
   91% Titles starting with S
   92title(T,      senator,  person):- member(T,[sen,'sen.',senator]).
   93title(T,      senor,    male):-   member(T,[sr,'sr.',senor]).
   94title(T,      senora,   female):- member(T,[sra,'sra.',senora]).
   95title(T,      senorita, female):- member(T,[srta,'srta.',senorita]).
   96title(T,      sergeant, female):- member(T,[sgt,'sgt.',sergeant]).
   97title(sheikh, sheikh,   person).
   98title(sir,    sir,      person).
   99title(T,      sister,   female):- member(T,[sr,'sr.',sister]).
  100title(T,      saint,    person):- member(T,[st,'st.',saint])