From 125f84e83b4c3d000247b0ac0d9c3a837501d3e5 Mon Sep 17 00:00:00 2001 From: Mart Lubbers Date: Thu, 11 Dec 2014 10:18:12 +0100 Subject: [PATCH] initial commit --- docs/ailog_man.pdf | Bin 0 -> 184042 bytes docs/ker-assignment2.pdf | Bin 0 -> 169757 bytes pl-ail-files/ailog2.pl | 2185 +++++++++++++++++++++++++++++++++++ pl-ail-files/exercise0.pl | 44 + pl-ail-files/exercise10.ail | 44 + pl-ail-files/exmbr.ail | 16 + pl-ail-files/heart.ail | 141 +++ report/report.tex | 0 8 files changed, 2430 insertions(+) create mode 100644 docs/ailog_man.pdf create mode 100644 docs/ker-assignment2.pdf create mode 100644 pl-ail-files/ailog2.pl create mode 100644 pl-ail-files/exercise0.pl create mode 100644 pl-ail-files/exercise10.ail create mode 100644 pl-ail-files/exmbr.ail create mode 100644 pl-ail-files/heart.ail create mode 100644 report/report.tex diff --git a/docs/ailog_man.pdf b/docs/ailog_man.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e1f640af16d62a8e556f48e92bf51e082594a856 GIT binary patch literal 184042 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�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�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 A761SM literal 0 HcmV?d00001 diff --git a/pl-ail-files/ailog2.pl b/pl-ail-files/ailog2.pl new file mode 100644 index 0000000..22693f7 --- /dev/null +++ b/pl-ail-files/ailog2.pl @@ -0,0 +1,2185 @@ +% -*- Mode: Prolog -*- +% ailog2.pl logic engine for Artificial Intelligence http://artint.info +% Copyright (C) 1997-2012, David Poole. +% This is subject to the GNU Public License (GPL). See user manual for details. +% Designed for standard Prolog, but only tested on SWI Prolog. +% It is written in one file to make it easy to use: +% Get swi-prolog, double click on this file and it should start! + +ailog_version('2.3.6.2',2013). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% SYSTEM DEPENDENT CODE % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%% the keys to stastics don't seem to be standard. This should cover the cases: +%% get_runtime(T,Units) gets accumulated runtime from the system +get_runtime(T,U) :- catch((statistics(cputime,T),U=secs),_, + (statistics(runtime,[T,_]),U=ms)). % Sicstus/Quintus Prolog + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% OPERATOR DEFINITIONS % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% <- is the "if" +:- op(1150, xfx, <- ). +% <= is the base-level "if" (it is not used here, but can be used in +% programs). +:- op(1120, xfx, <= ). +% "&" is the conjunction. +:- op(950,xfy, &). +% "~" is the negation +:- op(900,fy,~). +% "\=" is inequality +:- op(700,xfx,\=). +% "#=" is can't be equal +:- op(700,xfx,#=). +% ":" is used for probability declarations. +:- op(800,xfx,:). + +:- op(1170, fx, tell). +:- op(1170, fx, ask). +:- op(1170, fx, whynot). +:- op(1170, fx, how). +:- op(1170, fx, how). +:- op(1170, fx, help). +:- op(1170,fx,load). +:- op(1170,fx,prload). +:- op(1170,fx,cd). +:- op(1170,fx,bound). +:- op(1170,fx,stats). +:- op(1170,fx,listing). +:- op(1170,fx,clear). +:- op(1170,fx,askable). +:- op(1170,fx,assumable). +:- op(1170,fx,prob). +:- op(1170,fx,observe). +:- op(1170,fx,unobserve). +:- op(1170,fx,predict). +:- op(1170,fx,deterministic). +:- op(1170,fx,prob_threshold). +:- op(1170,fx,arbitrary). +:- op(1170,fx,allow). + +:- dynamic (<-)/2. +:- dynamic failed/1. +:- dynamic depth_bound/1. +:- dynamic askabl/1. +:- dynamic assumabl/1. +:- dynamic choice/3. +:- dynamic alt/1. +:- dynamic asked/2. +:- dynamic debugging_failure/0. +:- dynamic answer_found/0. +:- dynamic checking_runtime/0. +:- dynamic lastruntime/1. +:- dynamic deter/1. +:- dynamic explanations/4. +:- dynamic nogood/2. +:- dynamic anogood/2. +:- dynamic (prob_threshold)/1. +:- dynamic pruned_prob/1. +:- dynamic arbit/2. +:- dynamic builtin/2. + +depth_bound(30). +prob_threshold(0.000001). +pruned_prob(0.0). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% AILog Help +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +help_message([' +AILog Version ',V,' Help',' + +A clause is of the form',' + Head <- Body',' + Head',' +Head is an atom.',' +Body is an expression made up of',' + Atom',' + ~ B1 negation as finite failure',' + B1 & B2 conjunction B1 and B2',' +where B1 and B2 are expressions.',' + +***** Basic commands:',' + +tell CLAUSE. add the clause to the knowledge base',' +askable Atom. makes Atom askable.',' + +ask QUERY. ask if expression QUERY is a consequence of the KB',' +whynot QUERY. find out why an answer to QUERY was not returned.',' + +allow G. allow goal G to use the Prolog definition.',' +bound N. set search depth-bound to N (default=30)',' +listing. list all clauses in the knowledge base.',' +listing H. list clauses in the knowledge base with head H.',' +askables. list all askables.',' +clear. clear the knowledge base',' +clear asked. clear all user responses',' +clear H. clear clauses with head H from knowledge base',' +check. check the knowledge base for undefined predicates',' +help. print this help message',' +help prob. prints help on probabilistic reasoning',' +help abduction. prints help on abductive reasoning',' +stats runtime. turn on runtime statistics',' +quit. quit ailog',' +prolog. exit to Prolog. Type "start." to start ailog again.',' + +***** Input/Output',' + +load ''Filename''. load the clauses in file Filename',' +prload ''Filename''. load the clauses in Filename, using Prolog''s syntax.',' +cd ''directory''. changes directory (folder) for loads']) :- + ailog_version(V,_). + +help_message(prob,[ +'AILog Version ',V,' Probabilistic Reasoning Help',' + +This help is for probabilistic reasoning in Ailog. This is not useful +if you are a beginner interested in deductive reasoning.',' + +AILog implements a version of the independent choice logic that allows +for probabilities on atoms. These atoms should not be the head of clauses.',' + +prob a:p. makes atom a probabilistic with probability p.',' +prob a1:p1,a2:p2,...,ak:pk. makes atoms ai probabilistic with probability pi.',' + a''s are exclusive and covering; the p''s must sum to 1.',' + +probs. list all prob assertions.',' + +observe QUERY. observe that QUERY is true',' +predict QUERY. ask the posterior probability that QUERY is true',' +observations. list all observations made',' +unobserve. undo whylast observation',' +unobserve all. undo all observations',' +explanations. describe the explanations of the observations',' +worlds. describe the worlds of the observations',' + +prob_threshold V. set the probability threshold to V in range [0,1]',' +prob_threshold. get the current probability threshold']) :- + ailog_version(V,_). + +help_message(abduction,[ +'AILog Version ',V,' Abductive Reasoning Help',' + +This help is for abductive reasoning in AILog. This is not useful if +you are a beginner interested in deductive reasoning.',' + +Abduction allows the system to make assumptions to prove a goal, as +long as the assumptions are consistent.',' The atoms that can be +assumed are called assumables.',' You use "false" at the head of a +clause to make constraints.',' After adding assumables or more +clauses, you need to create nogoods to make sure that inconsistent +sets of assumables are found.',' Abduction in AILog does not work +satisfactorily with negation as failure.',' + +assumable Atoms. makes (comma-separated) Atoms assumable.',' +assumables. list all assumables.',' + +create_nogoods construct nogoods.',' +nogoods list nogoods.' +]) :- + ailog_version(V,_). + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% AILog Commands +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +interpret(C) :- + file_or_command(C,command),!. + +interpret(help) :- !, + help_message(Help), + write_all(Help). +interpret(help What) :- + help_message(What,Help),!, + write_all(Help). +interpret(help What) :- !, + write_all(['No help on "',What,'". Type "help." for more information.']). + +interpret((tell _ :- _)) :- !, + write_all(['Illegal rule: ":-" is not a legal implication. Use "<-".']). +interpret((tell C)) :- !, + tell_clause(C). + +interpret((ask Q)) :- !, + retractall(debugging_failure), + retractall(answer_found), + depth_bound(DB), + askq(Q,DB). + +interpret((whynot Q)) :- !, + depth_bound(DB), + (explanations(_,ETs,_,_) + -> + member(et(E,_),ETs), + whynotb(Q,DB,_,E,_) + ; + whynotb(Q,DB,_,ass([],[],1),_) + ). + +interpret(clear) :- !, + retractall((_ <- _)), + retractall(assumabl(_)), + retractall(alt(_)), + retractall(choice(_,_,_)), + retractall(askabl(_)), + retractall(asked(_,_)), + retractall(nogood(_,_)), + retractall(anogood(_,_)), + retractall(explanations(_,_,_,_)), + retractall(pruned_prob(_)), + retractall(arbit(_,_)), + assert(pruned_prob(0.0)). + +interpret((clear asked)) :- !, + retractall(asked(_,_)), + write_all(['User responses cleared.']). + +interpret((clear H)) :- !, + retractall((H <- _)), + retractall(assumabl(H)), + ( alt(A) , member(H:_, A) + -> + retract(alt(A)), + forall(member(G:_, A), retract(choice(G,_,_))) + ; true), + retractall(askabl(H)), + retractall(asked(H,_)), + (H=(X,V) -> retractall(arbit(X,V));true). + +interpret((stats Cmd)) :- !, + stats_command(Cmd). + +interpret((prload File)) :- !, + prolog_load(File). + +interpret((load File)) :- !, + ci_load(File). + +interpret((cd Dir)) :- !, + working_directory(_,Dir). + +interpret((cd)) :- !, + working_directory(_,'~'). + +interpret((bound)) :- !, + depth_bound(N), + write_all(['Current depth bound is ',N]). + +interpret((bound N)) :- !, + (integer(N) -> + retract(depth_bound(_)), + asserta(depth_bound(N)) + ; write_all(['Depth bound must be an integer'])). + +interpret(quit) :- + throw(quit). + +interpret(check) :- !, + check. + +interpret((observe G)) :- !, + observe(G). + +interpret((predict G)) :- !, + predict(G). + +interpret(askables) :- + askabl(G), + write_all(['askable ',G,'.']), + fail. +interpret(askables) :- !. + +interpret(assumables) :- + assumabl(G), + write_all(['assumable ',G,'.']), + fail. +interpret(assumables) :- !. + +interpret(arbitraries) :- + arbit(X,V), + write_all(['arbitrary ',X=V,'.']), + fail. +interpret(arbitraries) :- !. + +interpret(probs) :- + alt(L), + (L=[A:P1,~A:_] + -> + write_all(['prob ',A,':',P1,'.']) + ; + write('prob '), + writeAllDelim(L,', '), + write('.'), + nl + ), + fail. +interpret(probs) :- !. + +interpret((listing)) :- !, + interpret((listing _)), + interpret(askables), + interpret(assumables), + interpret(probs), + interpret(arbitraries). + +interpret((listing H)) :- + (H <- B), + (B == true + -> write_all([H,'.']) + ; write_all([H,' <- ',B,'.']) + ), + fail. +interpret((listing _)) :- !. + +interpret(unobserve all) :- !, + retractall(explanations(_,_,_,_)), + retractall(pruned_prob(_)), + assert(pruned_prob(0.0)). + +interpret(unobserve) :- !, + (retract(explanations(_,_,_,_)) + -> + ( + explanations(_,_,_,Err) + -> + retractall(pruned_prob(_)), + assert(pruned_prob(Err)) + ; + retractall(pruned_prob(_)), + assert(pruned_prob(0.0)) + + ) + ; + write_all(['No observations to undo.']) + ). + +interpret(observations) :- !, + (explanations(Obs,_,_,_) -> + print_observations(Obs,_) + ; write_all(['There are no observations.'])). + +interpret(explanations) :- !, + (explanations(_,ETs,_,_) -> + print_explanations(ETs,0) + ; write_all(['There are no observations.'])). + +interpret(worlds) :- !, + (explanations(Obs,Expls,Pr,Err) -> + extract_expls(Expls,Sexpls), + make_disjoint(Sexpls,Worlds), + print_worlds(Worlds,0), + (Err=:=0.0 + -> + write_all(['P(',Obs,') = ',Pr]) + ; + Max is Pr+Err, + write_all(['P(',Obs,') = [',Pr,',',Max,']']) + ) + ; write_all(['There are no observations.'])). + +interpret(prob_threshold V) :- + (number(V), V>=0.0, V=<1.0) + -> + retract(prob_threshold(_)), + assert(prob_threshold(V)) + ; + write_all(['Argument to prob_threshold must be in range [0,1].']). +interpret(prob_threshold) :- + prob_threshold(V), + write_all(['Probability threshold is ',V]). + + +interpret(nogoods) :- !, + list_nogoods. + +interpret((A <- B)) :- !, + write_all(['Illegal command, ',(A <- B),'. You have to "tell" a clause.']). + +interpret(C) :- + write_all(['Unknown Command, ',C,'. Type "help." for help.']). + +% listifyProbs(St,L0,L1,S0,S1) +% St is a probability structure +% L1-L0 is thhe list corresponding to the structure +% S1-S0 is the sum of the probabilities +listifyProbs((X,Y),L0,L2,S0,S2) :- !, + listifyProbs(X,L0,L1,S0,S1), + listifyProbs(Y,L1,L2,S1,S2). +listifyProbs((A:P),L0,[A:P|L0],S0,S1) :- +% atomic(A), % we want it to mean its a ailog atom +% number(P), + P >= 0, + S1 is S0+P. + +% file_or_command(C,W) C is a command that can be in a file or on the +% command line, W is either command or file +file_or_command((askable G),_) :- !, + assertz(askabl(G)). + +file_or_command((assumable G),_) :- !, + make_assumable(G). + +file_or_command((allow G),_) :- !, + assertz(builtin(G,true)). + + +file_or_command((prob A:P),W) :- !, + (number(P), P>=0, P=<1 -> + P1 is 1-P, + assertz(alt([A:P,~A:P1])), + assertz(choice(A,P,[~A])), + assertz(choice(~A,P1,[A])) + ; + legal_arithmetic_expression(P) -> + assertz(alt([A:P,~A:(1-P)])), + assertz(choice(A,P,[~A])), + assertz(choice(~A,(1-P),[A])) + + ; + (W=file + -> + write_all(['Error: ',(prob A:P)]) + ; true), + write_all(['Probability must be a number or expression in range [0,1]']) + ). + +file_or_command((prob APs),W) :- !, + ( (listifyProbs(APs,[],L,0,Sum) )%, Sum > 0.9999999999999, Sum< 1.0000000000001) + -> + normalise(L,Sum*1.0,LN), + assertz(alt(LN)), + make_choices(LN) + ; + (W=file + -> + write_all(['Error: ',(prob APs)]) + ; true), + write_all(['Error: command should be: prob a1:p1,a2:p2,...,ak:pk.']), + write_all([' the pi''s must be nonnegative and sum to 1.0']) + ). + +file_or_command((arbitrary A),W) :- !, + A=(X=V) + -> + assertz(arbit(X,V)) + ; + (W=file + -> + write_all(['Error: ',(arbitrary A)]) + ; true), + write_all(['Error: command should be: arbitrary X=V.']). + + +file_or_command((deterministic G),_) :- !, + assertz(deter(G)). + +file_or_command(create_nogoods,_) :- !, + depth_bound(DB), + construct_nogoods(DB). + + +legal_arithmetic_expression(N) :- var(N),!. +legal_arithmetic_expression(N) :- number(N),!. +legal_arithmetic_expression(E1+E2) :- !, + legal_arithmetic_expression(E1), + legal_arithmetic_expression(E2). +legal_arithmetic_expression(E1-E2) :- !, + legal_arithmetic_expression(E1), + legal_arithmetic_expression(E2). +legal_arithmetic_expression(E1*E2) :- !, + legal_arithmetic_expression(E1), + legal_arithmetic_expression(E2). +legal_arithmetic_expression(E1/E2) :- !, + legal_arithmetic_expression(E1), + legal_arithmetic_expression(E2). + +% make_assumable makes an atom or a comma-separated atoms assumable. +make_assumable((A,B)) :- !, + make_assumable(A), + make_assumable(B). + +make_assumable(G) :- + assertz(assumabl(G)). + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% ASKING +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +askq(Q,_) :- + illegal_body(Q,Why),!, + write_all(['Illegal query: '|Why]). +askq(Q,DB) :- + retractall(failed(_)), + assert(failed(naturally)), + reset_runtime, + solve(Q,DB,Res,[wrule(yes,true,Q,true)],ass([],[],1),Ass), + (answer_found -> true ; assert(answer_found)), + mynumbervars((Q,Res,Ass),0,_), + report(Q,Res,Ass). +askq(Q,_) :- + failed(naturally),!, + (answer_found + -> write_all(['No more answers.']) + ; write_all(['No. ',Q,' doesn''t follow from the knowledge base.'])), + report_runtime. +askq(Q,DB) :- !, + ask_failing(Q,DB). + +ask_failing(Q,DB) :- + write_all(['Query failed due to depth-bound ',DB,'.']), + report_runtime, + writel([' [New-depth-bound,where,ok,help]: ']), + flush_and_read(Comm), + interpret_failing_question(Comm,Q,DB). + +% interpret_failing_question(Comm,Q,DB). +interpret_failing_question(help,Q,DB) :- !, + write_all([ + ' Give one of the following commands:',nl, + ' an integer > ',DB,' to use this depth bound.',nl, + ' (use "bound N." to set it permanently).',nl, + ' where. to explore the proof tree where the depth-bound was reached.',nl, + ' ok. to return to the ailog prompt.',nl, + ' help. to print this message.']), + ask_failing(Q,DB). +interpret_failing_question(end_of_file,_,_) :- !. +interpret_failing_question(ok,_,_) :- !. +interpret_failing_question(where,Q,DB) :- + assert(debugging_failure), + askq(Q,DB). +interpret_failing_question(Comm,Q,_) :- + integer(Comm),!, + askq(Q,Comm). +interpret_failing_question(Comm,Q,DB) :- + write_all([' Unknown command, ',Comm,' type "help." for help.']), + ask_failing(Q,DB). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% TELLING +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +tell_clause((~ H <- B)) :- !, + write_all(['Illegal rule: ~',H,' <- ',B,'.',nl, + 'You cannot have negation in the head of a clause.']). +tell_clause((H1 & H2 <- B)) :- !, + write_all(['Illegal rule: ',H1 & H2,' <- ',B,'.',nl, + 'You cannot have a conjunction in the head of a clause.']). +tell_clause((H1 , H2 <- B)) :- !, + write_all(['Illegal rule: ',H1 ,',', H2,' <- ',B,'.',nl, + 'You cannot have a "," in the head of a clause.']). +tell_clause((H <- B)) :- + !, + ( builtin(H,_) -> + write_all([H,' is built-in. It cannot be redefined.']) + ; illegal_body(B,Why) -> + write_all(['Illegal rule: ',H,'<-',B,'. '|Why]) + ; assertz((H <- B))). +tell_clause((H :- B)) :- + !, + write_all(['Illegal rule: ',H,':-',B,'. ":-" is not a legal implication. Use "<-".']). +tell_clause((A, B)) :- + !, + write_all(['Error: ',(A,B),' is not a valid clause.']). +tell_clause((A & B)) :- + !, + write_all(['Error: ',(A&B),' is not a valid clause.']). +tell_clause((~A)) :- + !, + write_all(['Error: ',~A,' is not a valid clause.']). +tell_clause(H) :- + builtin(H,_),!, + write_all([H,' is built-in. It cannot be redefined.']). +tell_clause(H) :- + !, + assertz((H <- true)). + +illegal_body(X,['Variables cannot be atoms. Use call(',X,').']) :- var(X). +illegal_body((_,_),[' "," is not a legal conjunction. Use "&".']). +illegal_body((\+ _),[' "\\+" is not a legal negation. Use "~".']). +illegal_body(!,[' "!" is not supported.']). +illegal_body([_|_],[' Lists cannot be atoms.']). + +illegal_body((A&_),Why) :- + illegal_body(A,Why). +illegal_body((_&A),Why) :- + illegal_body(A,Why). +illegal_body((A;_),Why) :- + illegal_body(A,Why). +illegal_body((_;A),Why) :- + illegal_body(A,Why). +illegal_body((~A),Why) :- + illegal_body(A,Why). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% META-INTERPRETER +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% solve(Goal,DepthBnd,PfTree,WhyTree,Ass0,Ass1) +% Goal is the goal to be proved +% DepthBnd is the depth bound +% PfTree is the proof tree returned +% Whytree is a list of wrule(Head,LeftTree,Current,RightBody) +% Ass0 is the assumables coming in. +% This is structure of the form ass(As,PAs,P) +% Ass1 is the assumables coming out +solve(true,_,true,_,Ass,Ass) :- !. +solve((A&B),N,(AT&BT),[wrule(H,LT,_,RB)|WT],A0,A2) :- !, + solve(A,N,AT,[wrule(H,LT,A,(B&RB))|WT],A0,A1), + solve(B,N,BT,[wrule(H,(LT&AT),B,RB)|WT],A1,A2). + +% The following is tempting, but doesn't work if A makes assumptions... +% solve((A -> B ; C),N,(AT -> BT;CT),[wrule(H,LT,_,RB)|WT],A0,A2) :- +% solve(A,N,AT,[wrule(H,LT,A,(B&RB))|WT],A0,A1) % why rules is wrong +% -> +% solve(B,N,BT,[wrule(H,(LT&AT),B,RB)|WT],A1,A2) +% ; +% solve(C,N,CT,[wrule(H,LT,C,RB)|WT],A0,A2). + +solve(A \= B,_,if(A \= B,builtin),_,A0,A0) :- !, + dif(A,B). +solve(A #= B,_,if(A #= B,builtin),_,A0,A0) :- !, + \+(A=B). +solve(call(G),_,_,WT,A0,A0) :- + var(G),!, + debug_error([' Error: argument to call must be bound when evaluated.'], + WT). +solve(call(G),N,T,WT,A0,A1) :- !, + solve(G,N,T,WT,A0,A1). +solve((~ G),N,if(~G,T),WT,A0,A1) :- !, + (ground(G) -> + failtoprove(G,N,T,WT,A0,A1) + ; + debug_error([' Error: ',~G,' needs to be ground when called.'], + WT)). + + +solve(G,_,if(G,assumed),_,ass(A0,PAs,P),ass(A0,PAs,P)) :- + assumabl(G), +% (ground(G) -> true +% ; debug_error([' Error: assumable ',G,' needs to be ground when called.'], +% WT)), + idmember(G,A0),!. +solve(G,_,if(G,assumed),_,ass(A0,PAs,P),ass(A1,PAs,P)) :- + assumabl(G), +% (ground(G) -> true +% ; debug_error([' Error: assumable ',G,' needs to be ground when called.'], +% WT)), +% \+ idmember(G,A0), + good(G,A0), + insert_into_sorted_list(G,A0,A1). +solve(G,_,if(G,assumed),_,ass(A0,PAs0,P0),ass(A0,PAs1,P1)) :- + choice(G,P,A), +% (ground(G) -> true +% ; debug_error([' Error: assumable ',G,' needs to be ground when called.'], +% WT)), + consistent(PAs0,A), + insertUpdateProbs(PAs0,P0,G,P,PAs1,P1), + prob_threshold(Bound), + ((P1 < Bound) + -> + retract(pruned_prob(PP)), + PP1 is PP+P1, + asserta(pruned_prob(PP1)), + fail + ; + true + ). + +solve(G=V,_,if(G=V,assumed),_,ass(A0,PAs,P),ass(A1,PAs,P)) :- + arbit(G,V), + (member((G=V1),A0) + -> + V=V1, A1=A0 + ; + nonvar(V) -> % this seems to be necessary to get it to work. + % The arbitrary choice has not been made, but this call + % isn't making the choice. + A1=[G=V|A0]; + A1=[G=V|A0] +% fail +% gensym(ind,V), +% A1=[G=V|A0] + ). + +solve(G,_,if(G,asked),WT,A0,A0) :- + askabl(G), + ask_user(G,WT,Ans), + Ans \== unknown,!, % fail if Ans=unknown, otherwise don't try clauses + Ans=yes. +solve(H,_,if(H,builtin),WT,A0,A0) :- + builtin(H,C),!, + (C -> catch(H,_,debugging_builtin_error(H,WT)) + ; write_all(['Error: "',H,'" can''t be called in this form, as ',C,' isn''t true.']), + debugging_builtin_error(H,WT) + ). +solve(H,N0,if(H,BT),WT,A0,A1) :- + N0 > 0, + deter(H), + N1 is N0-1, + (H <- B), + solve(B,N1,BT,[wrule(H,true,B,true)|WT],A0,A1), !. +solve(H,N0,if(H,BT),WT,A0,A1) :- + N0 > 0, + N1 is N0-1, + (H <- B), + solve(B,N1,BT,[wrule(H,true,B,true)|WT],A0,A1). +solve(H,0,if(H,asked),WT,ass(A0,PAs0,P0),ass(A0,PAs0,P0)) :- + debugging_failure,!, + debugging_failure_goal(H,WT,P0). +solve(_,0,_,_,ass(_,_,P),_) :- + retractall(failed(_)), + assert(failed(unnaturally)), + P>0, + retract(pruned_prob(PP)), + PP1 is PP+P, + asserta(pruned_prob(PP1)), + fail. + +% report(Query,Res,Ass) report an answer after an ask +report(Q,Res,ass([],[],1)) :- !, + write_all(['Answer: ',Q,'.']), + report_runtime, + writel([' [ok,more,how,help]: ']), + flush_and_read(Comm), + interpret_report(Comm,Q,Res,ass([],[],1)). +report(Q,Res,Ass) :- + write_all(['Answer: ',Q,'.']), + ( Ass=ass(A0,[],1) -> + write_all(['Assuming: ',A0,'.']) + ; write_all(['Assuming: ',Ass,'.'])), + report_runtime, + writel([' [more,ok,how,help]: ']), + flush_and_read(Comm), + interpret_report(Comm,Q,Res,Ass). + +% interpret_report(Comm,Q,Res,Ass) interprets the answer given by the user +% to an answer given after and ask +interpret_report(ok,_,_,_) :- !. +interpret_report(more,_,_,_) :- !, + reset_runtime,fail. +interpret_report(end_of_file,_,_,_) :- !, + write_all(['^D']). +interpret_report(how,Q,Res,Ass) :- !, + traverse(Res,Rep), + ( (Rep = top; Rep=up) + -> report(Q,Res,Ass) + ; Rep= retry + -> reset_runtime,fail + ; Rep=prompt + -> true + ; write_all(['This shouldn''t occur. Traverse reported ',Rep]) + ). +interpret_report(help,Q,Res,Ass) :- !, + write_all([ + ' The system has proven an instance of your query.',nl, + ' You can give the following commands:',nl, + ' more. for more answers',nl, + ' ok. for no more answers',nl, + ' how. to enter a dialog to determine how the goal was proved.']), + report(Q,Res,Ass). +interpret_report(Comm,Q,Res,Ass) :- + Comm \== more, + write_all(['Unknown command; ',Comm,'. Type "help." if you need help.']), + report(Q,Res,Ass). + +% Depth-bound reached +% debugging_failure_goal(H,WT,P) +% H is the current goal +% WT is the why-tree +% P is the probability of this proof +debugging_failure_goal(H,WT,P) :- + write_all([' Depth-bound reached. Current subgoal: ',H,'.']), + writel([' [fail,succeed,proceed,why,ok,help]: ']), + flush_and_read(Comm), + interpret_debugging_failure_command(Comm,H,WT,P). + + +% interpret_debugging_failure_command(Comm,H,WT,P) +% Comm is the command the user gave +% H is the current goal +% WT is the why-tree +% P is the probability of this proof + +interpret_debugging_failure_command(help,H,WT,P) :- !, + write_all([ + ' The system has reached the depth bound.',nl, + ' You can give the following commands:',nl, + ' fail. fail this subgoal.',nl, + ' succeed. make this subgoal succeed.',nl, + ' proceed. fail and don''t stop any more at failing subgoals.',nl, + ' why. determine why this subgoal was called.',nl, + ' ok. return to ailog prompt.',nl, + ' help. print this message.']), + debugging_failure_goal(H,WT,P). +interpret_debugging_failure_command(fail,_,_,P) :- !, + retractall(failed(_)), + assert(failed(unnaturally)), + P>0, + retract(pruned_prob(PP)), + PP1 is PP+P, + asserta(pruned_prob(PP1)), + fail. +interpret_debugging_failure_command(succeed,_,_,_) :- !. +interpret_debugging_failure_command(proceed,_,_,P) :- !, + retractall(debugging_failure), + retractall(failed(_)), + assert(failed(unnaturally)), + P>0, + retract(pruned_prob(PP)), + PP1 is PP+P, + asserta(pruned_prob(PP1)), + fail. +interpret_debugging_failure_command(ok,_,_,_) :- !, + throw(prompt). +interpret_debugging_failure_command(end_of_file,_,_,_) :- !, + throw(prompt). +interpret_debugging_failure_command(why,H,WT,P) :- !, + \+ \+ (mynumbervars(WT,0,_),why_question(WT,_)), + debugging_failure_goal(H,WT,P). +interpret_debugging_failure_command(Comm,H,WT,P) :- !, + write_all([' Unknown command: ',Comm,'. Type "help." for help.']), + debugging_failure_goal(H,WT,P). + + +% builtin(G,C) is true if goal G is defined in the system (as opposed to +% being defined in clauses). C is the condition that must hold to make sure +% there are no errors. +builtin((A =< B), ground((A =< B))). +builtin((A >= B), ground((A >= B))). +builtin((A =\= B), ground((A =\= B))). +builtin((A < B), ground((A B), ground((A>B))). +builtin((_ is E),ground(E)). +builtin(number(E),ground(E)). +builtin(atomic(E),ground(E)). + +% Error in a built-in +debugging_builtin_error(H,WT) :- + debug_error([' Error in built-in predicate: ',H,'.'],WT). + +% RUNTIME ERROR HANDLING +debug_error(Message,WT) :- + write_all(Message), + writel([' [fail,succeed,why,ok,help]: ']), + flush_and_read(Comm), + interpret_error_command(Comm,Message,WT). + +interpret_error_command(help,Message,WT) :- !, +% write_all(Message), + write_all([ + ' You can give the following commands:',nl, + ' fail. fail this subgoal.',nl, + ' succeed. make this subgoal succeed.',nl, + ' why. determine why this subgoal was called.',nl, + ' ok. return to ailog prompt.',nl, + ' help. print this message.']), + debug_error(Message,WT). +interpret_error_command(fail,_,_) :- !, + fail. +interpret_error_command(succeed,_,_) :- !. +interpret_error_command(ok,_,_) :- !, + throw(prompt). +interpret_error_command(end_of_file,_,_) :- !, + throw(prompt). +interpret_error_command(why,H,WT) :- !, + \+ \+ (mynumbervars(WT,0,_),why_question(WT,_)), + debug_error(H,WT). +interpret_error_command(Comm,H,WT) :- !, + write_all([' Unknown command: ',Comm,'. Type "help." for help.']), + debug_error(H,WT). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% ASK THE USER +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% ask_user(G,WT,Ans) +% G is the goal to ask +% WT is the why-tree +% Ans is the reply +ask_user(G,_,Ans) :- + ground(G), + asked(G,Ans1),!,Ans=Ans1. +ask_user(G=V,_,yes) :- + ground(G), + asked(G=V1,yes),!,V=V1. + +ask_user(T=V,WT,Ans) :- + ground(T),var(V),!, + writel(['What is the value of ',T,'? [value,unknown,why,help]: ']), + flush_and_read(Reply), + (member(Reply,[unknown,why,help]) + -> interpret_ask_answer(Reply,T=V,WT,Ans) + ; V=Reply, + interpret_ask_answer(yes,T=V,WT,Ans) + ). +ask_user(G,WT,Ans) :- + ground(G),!, + writel(['Is ',G,' true? [yes,no,unknown,why,help]: ']), + flush_and_read(Rep), + interpret_ask_answer(Rep,G,WT,Ans). + +ask_user(G,WT,fail) :- + write_all([' Error: Askables with free variables not implemented.',nl, + ' The system wanted to ask ',G,'.',nl, + ' Entering why interation.']), + mynumbervars(WT,0,_), + why_question(WT,_), + write_all([' Askable subgoal ',G,' failing due to free variables.']). + + +% interpret_ask_answer(Rep,G,WT,Ans). +interpret_ask_answer(help,G,WT,Rep) :- !, + write_all([' The system is asking whether ',G,' is true or not. Give one of:',nl, + ' "yes." if ',G,' is known to be true.',nl, + ' "no." if ',G,' is known to be false.',nl, + ' "unknown." if ',G,' is unknown (so applicable clauses can be used).',nl, + ' "fail." to fail the subgoal (but not record an answer).',nl, + ' "why." to see why the system was asking this question.',nl, + ' "prompt." to return to the ailog prompt.',nl, + ' "help." to print this message.']), + ask_user(G,WT,Rep). +interpret_ask_answer(yes,G,_,yes) :- !, + assertz(asked(G,yes)). +interpret_ask_answer(no,G,_,no) :- !, + assertz(asked(G,no)). +interpret_ask_answer(unknown,G,_,unknown) :- !, + assertz(asked(G,unknown)). +interpret_ask_answer(fail,_,_,fail) :- !. +interpret_ask_answer(prompt,_,_,_) :- !, + throw(prompt). +interpret_ask_answer(end_of_file,_,_,_) :- !, + write_all(['^D']), + throw(prompt). + +interpret_ask_answer(why,G,WT,Rep) :- !, + \+ \+ ( mynumbervars(WT,0,_),why_question(WT,Rep),Rep \== prompt), + ask_user(G,WT,Rep). +interpret_ask_answer(Ans,G,WT,Rep) :- + Ans \== fail, + write_all([' Unknown response "',Ans,'". For help type "help.".']), + ask_user(G,WT,Rep). + + +% why_question(WT,Rep) +% WT is a list of wrule(Head,LeftTree,Current,RightBody) +% Rep is the reply. It is one of: +% down go back one step +% bottom return to the ask-the-user query +% prompt return to prompt +why_question([wrule(H,LT,C,RB)|WT],Rep) :- + write_all([' ',C,' is used in the rule ']), + write_all([' ',H,' <-']), + print_tree_body(LT,1,Max), + write_all([' ** ',Max,': ',C]), + M1 is Max+1, + print_body(RB,M1,_), + writel([' [Number,why,help,ok]: ']), + flush_and_read(Comm), + interpret_why_ans(Comm,Max,[wrule(H,LT,C,RB)|WT],Rep). +why_question([],down) :- + write_all([' This was the original query.']). + +% interpret_why_ans(Comm,[wrule(H,LT,C,RB)|WT],Rep). +interpret_why_ans(help,Max,[wrule(H,LT,C,RB)|WT],Rep) :- !, + write_all([ +' You can taverse the proof for a subgoal using following commands:',nl, +' how i. show how element i (i<',Max,') of the body was proved.',nl, +' how ',Max,'. show the rule being considered for ',C,'.',nl, +' why. show why ',H,' is being proved.',nl, +' prompt. return to the ailog prompt.',nl, +' help. print this message.']), + why_question([wrule(H,LT,C,RB)|WT],Rep). +interpret_why_ans(up,_,WT,Rep) :- !, + interpret_why_ans(why,_,WT,Rep). +interpret_why_ans(why,_,[WR|WT],Rep) :- !, + why_question(WT,Rep1), + (Rep1 = down + -> why_question([WR|WT],Rep) + ; Rep=Rep1). +interpret_why_ans((how N),Max,[wrule(H,LT,C,RB)|WT],Rep) :- + integer(N),!, + interpret_why_ans(N,Max,[wrule(H,LT,C,RB)|WT],Rep). +interpret_why_ans(N,Max,[wrule(H,LT,C,RB)|WT],Rep) :- + integer(N), + N > 0, + N < Max, !, + nth(LT,1,_,N,E), + traverse(E,Rep1), + (Rep1=up -> why_question([wrule(H,LT,C,RB)|WT],Rep) ; + Rep1=top -> Rep=bottom ; + Rep1=retry + -> write_all([' retry doesn''t make sense here.']), + why_question([wrule(H,LT,C,RB)|WT],Rep) ; + Rep=Rep1). +interpret_why_ans(Max,Max,_,down) :- !. +interpret_why_ans(N,Max,WT,Rep) :- + integer(N), + N > Max, !, + write_all(['You can''t trace this, as it hasn''t been proved.']), + why_question(WT,Rep). +interpret_why_ans(end_of_file,_,_,_) :- !, + write_all(['^D']), + throw(prompt). +interpret_why_ans(prompt,_,_,_) :- !, + throw(prompt). +interpret_why_ans(ok,_,_,bottom) :- !. + +interpret_why_ans(Comm,_,WT,Rep) :- !, + write_all(['Unknown command: ',Comm,'. Type "help." for help.']), + why_question(WT,Rep). + + +% print_body(B,N) is true if B is a body to be printed and N is the +% count of atoms before B was called. +print_body(true,N,N) :- !. +print_body((A&B),N0,N2) :- !, + print_body(A,N0,N1), + print_body(B,N1,N2). +print_body(H,N,N1) :- + write_all([' ',N,': ',H]), + N1 is N+1. + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% NEGATION AS FAILURE +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% failtoprove(G,N,T,WT,A0,A1) +% G is a ground goal, +% N is a depth-bound +% T is the tree returned +% WT is the why tree +% A0 is the assumables before and A1 is the set after +% The complication here is due to the interaction with the depth-bound +% and assumables + +failtoprove(G,N,nafproof(PA1,ETs),WT,ass(A,PAs,Pr),ass(A,PA1,Pr1)) :- + failed(HowFailedInit), + retractall(failed(_)), + assert(failed(naturally)), + findall(et(Ass,T),solve(G,N,T,~WT,ass(A,PAs,Pr),Ass),ETs), + (failed(naturally) -> + extract_expls(ETs,EGs), + duals(EGs,PAs,[PAs],Ds), + member(PA1,Ds), + prob(PA1,1,Pr1) + ; + member(et(ass(A,PAs,Pr),_),ETs) -> % found a proof with no assumptions + retractall(failed(_)), + assert(failed(HowFailedInit)), + fail % fail naturally + ; + fail % fail unnaturally as depth-bound was hit + ). + +/* interaction with depth-bound + (failed(naturally) -> + (solve(G,N,_,WT,[],_) -> + retract(failed(unnaturally)), asserta(failed(naturally)),fail + % note this just fails if failed(naturally) still true + ; failed(naturally) + ) + ; retract(failed(_)), + assert(failed(naturally)), + (solve(G,N,_,WT,[],_) -> + retract(failed(naturally)), asserta(failed(unnaturally)),fail + ; retract(failed(naturally)), asserta(failed(unnaturally)) + % note this just fails if failed(unnaturally) still true + )). +*/ + + +% prob(AL,P0,P1) +% AL is a list of probabilistic assumables +% P1 = P0*P(AL) +prob([],P,P). +prob([H|T],P0,P2) :- + choice(H,P,_), + P1 is P0*P, + prob(T,P1,P2). + + +% The following code gives the interaction between negation and probabilities + +% A composite choice is a consistent set of probabilistic assumables. + +% duals(Es,R0,D0,D1) is true if Es is a list of terms of the form +% ass(A,PAs,Pr) where R0 is a subset of PAs, and +% D1-D0 is a list of ass(A1,R1,P1) such that +% R1-R0 is a hitting set of negations of Es. + +duals([],_,D,D). +duals([S|L],R0,D0,D2) :- !, + setDiff(S,R0,NA), + hit_every_complement(NA,D0,[],D1), + duals(L,R0,D1,D2). + +% hit_every_complement(S,R0,D0,D,D1) is true if S is a composite choice (with +% tail R0), and D2 is D together with the hitting set of negations of +% D0. + +hit_every_complement([],_,D0,D0) :- !. +hit_every_complement([A|R],Ds,D0,D2) :- + choice(A,_,NAs), + hit_every_element(NAs,Ds,D0,D1), + hit_every_complement(R,Ds,D1,D2). + +% hit_every_element(As,A,D0,D1) is true if S is a composite choice (with +% tail R0), and D2 is D together with the hitting set of negations of +% D0. + +hit_every_element([],_,D,D). +hit_every_element([E|T],Es,D0,D2) :- + insert_into_each_exp(Es,E,D0,D1), + hit_every_element(T,Es,D1,D2). + +% insert_into_each_exp(L,A,L0,L1) is true if inserting atomic choice A +% into each explanation in L, and adding these to L0 produces L1. L, +% L0 and L1 are all lists of explanations. Subsumed and inconsistent +% explanations are removed. + +insert_into_each_exp([],_,L,L) :-!. +insert_into_each_exp([E1|R],A,L0,L1) :- + incompatible(A,E1),!, + insert_into_each_exp(R,A,L0,L1). +insert_into_each_exp([E1|R],A,L0,L2) :- + insert_into_sorted_list(A,E1,E2), + insert_exp(E2,L0,L1), + insert_into_each_exp(R,A,L1,L2). + +% insert_exp(E,Es1,Es2) is true if inserting explanation E into list +% Es1 of explanations produces list of explanations Es2. +insert_exp(E,[],[E]) :- !. +insert_exp(E0,[E|T],[E|T]) :- + subset_sorted(E,E0),!. % includes the case where E0==E. +insert_exp(E0,[E|T],R) :- + subset_sorted(E0,E),!, + insert_exp(E0,T,R). +insert_exp(E,[H|T],[H|R]) :- + insert_exp(E,T,R). + +% mutually_incompatible(As1,As2) is true if A is inconsistent with all of As. +mutually_incompatible(E1,E2) :- + member(A,E1), + incompatible(A,E2). + +% incompatible(A,As) is true if A is inconsistent with all of As. +incompatible(A,E) :- + choice(A,_,NAs), + \+ consistent(E,NAs). + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Probabilities +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% normalize(L,Sum,LS) Sum is assumed to be a float. +normalise([],_,[]). +normalise([(A:P)|R],S,[(A:PN)|RN]) :- + PN is P/S, + normalise(R,S,RN). + +% make_choices(L) +make_choices(L) :- + remove(A:P,L,L0), + setof(AA,P1^member(AA:P1,L0),Alts), + assertz(choice(A,P,Alts)), + fail. +make_choices(_). + +% insertUpdateProbs(PAs0,P0,G,P,PAs1,P1) +% PAs0 is the initial probabilistic assumptions +% P0 is the probability of the probablistic assumptions +% G is the choice +% P is the probability of G +% PAs1 is the resulting probabilistic assumptions +% P1 is the resulting probability +insertUpdateProbs([],P0,G,P,[G],P1) :- + P1 is P0*P. +insertUpdateProbs([G|R],P0,G,_,[G|R],P0) :- !. +insertUpdateProbs([G0|R0],P0,G,P,[G,G0|R0],P1) :- + G @< G0, !, + P1 is P0*P. +insertUpdateProbs([G0|R0],P0,G,P,[G0|PAs1],P1) :- + insertUpdateProbs(R0,P0,G,P,PAs1,P1). + +% latest_explanations(Obervations,ETs,Prob,Err) +% ETs is a list of et(Explanation,ProofTree) +latest_explanations(O,E,P,Err) :- + explanations(O,E,P,Err),!. +latest_explanations([],[et(ass([],[],1),null)],1,0.0). + +% predict(G) +% Warning: this may not work properly with multiple answers + errors +% We should really reset the pruned_prob for each proof... +predict(G) :- + latest_explanations(_,ETs,Pr0,Err0), + retractall(pruned_prob(_)), + assert(pruned_prob(Err0)), + depth_bound(DB), + retractall(failed(_)), + assert(failed(naturally)), + reset_runtime, + find_expls(G,ETs,DB,Expls), + extract_expls(Expls,Sexpls), + make_disjoint(Sexpls,DExpls), + acc_probs(DExpls,0,Pr), + pruned_prob(Err1), + report_expls(Expls,DExpls,G,Pr0,Pr,Err0,Err1). +predict(_) :- + write_all(['No (more) answers.']). + +% observe(G) +observe(G) :- + retractall(debugging_failure), + retractall(failed(_)), + assert(failed(naturally)), + latest_explanations(Obs,ETs,PrObs,Err0), + retractall(pruned_prob(_)), + assert(pruned_prob(Err0)), + depth_bound(DB), + reset_runtime, + find_expls(G,ETs,DB,Expls), + extract_expls(Expls,Sexpls), + make_disjoint(Sexpls,DExpls), + acc_probs(DExpls,0,Pnew), + pruned_prob(Err1), + asserta(explanations([G|Obs],Expls,Pnew,Err1)), + report_expls(Expls,DExpls,G,PrObs,Pnew,Err0,Err1). +observe(_) :- + write_all(['No (more) answers.']). + +% find_expls(G,ETs,DB,Expls) +% +G is the goal to be solved +% +ETs is the list of explanations of previous observations +% +DB is the depth-bound +% -Expls is the list of explanations of G and the previous observations +find_expls(G,ETs,DB,Expls) :- + bagof(et(Expl,Res), + E0^Tr^( member(et(E0,Tr),ETs), + solve(G,DB,Res,[wrule(yes,true,G,true)],E0,Expl)), + Expls), + (ground(Expls) -> + true + ; write_all(['Warning Explanations not ground: ',Expls])). + +% report_expls(Expls,DExpls,G,Pr0,Pr1,Err0,Err1) +% +Ets is a list of et(Explanation,ProofTree) +% +DExpls is a set of possible worlds (disjoint explanations) +% +G is the goal +% +Pr0 is the probability of the previous observations +% +Pr1 is the probability of the current observations +% +Err0 is the error (pruned probability mass) before the query +% +Err1 is the error (pruned probability mass) after the query Err1>Err0 +report_expls(Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- + (Err1=:=0.0 + -> + Post is Pr1/Pr0 + ; + Min is Pr1/(Pr0+Err0), + Max is (Pr1+Err1)/(Pr0+Err0), + Post=[Min,Max] + ), + write_all(['Answer: P(',G,'|Obs)=',Post,'.']), + report_runtime, + writel([' [ok,more,explanations,worlds,help]: ']), + flush_and_read(Comm), + interpret_prob_report(Comm,Expls,DExpls,G,Pr0,Pr1,Err0,Err1). + +% acc_probs(Expls,P0,P1) determines the probabilities of the assumables in Expls +% +Expls is a list of explanations +% +P0 is the previous probability +% -P1 is the new probability +acc_probs([],P,P). +acc_probs([A|R],P0,P2) :- + prob_expl(A,1,P), + P1 is P+P0, + acc_probs(R,P1,P2). + +% probs_expl(Expl,P0,P1) determines the probability of an expanation +% +Expl is an explanation +% +P0 is the previous probability +% -P1 is the resulting probability (P1 = P0*prob(Expl)) +prob_expl([],P,P). +prob_expl([A|R],P0,P2) :- + choice(A,P,_), + P1 is P*P0, + prob_expl(R,P1,P2). + +% interpret_prob_report(Comm,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) +% +Comm is the command given by the user +% +Expls is the set of explanations +% +DExpls is the set of worlds (disjoint explanations) +% +G is the goal to be proved +% +Pr0 is the probability of the previous observations +% +Pr1 is the probability of the current observations +interpret_prob_report(ok,_,_,_,_,_,_,_) :- !. +interpret_prob_report(more,_,_,_,_,_,_,_) :- !, + reset_runtime,fail. +interpret_prob_report(end_of_file,_,_,_,_,_,_,_) :- !, + write_all(['^D']). +interpret_prob_report(explanations,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- !, + show_explanations(Expls,DExpls,G,Pr0,Pr1,Err0,Err1). +interpret_prob_report(worlds,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- !, + print_worlds(DExpls,0), + report_expls(Expls,DExpls,G,Pr0,Pr1,Err0,Err1). +interpret_prob_report(help,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- !, + write_all([ + ' The system has proven an instance of your query.',nl, + ' You can give the following commands:',nl, + ' more. for more answers',nl, + ' ok. for no more answers',nl, + ' explanations. to explore how the goal is proved based ', + ' sets of assumptions.',nl, + ' worlds. to see the worlds where ',G,' is true.']), + report_expls(Expls,DExpls,G,Pr0,Pr1,Err0,Err1). +interpret_prob_report(Comm,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- + Comm \== more, + write_all(['Unknown command; ',Comm,'. Type "help." if you need help.']), + report_expls(Expls,DExpls,G,Pr0,Pr1,Err0,Err1). + +% show_explanations(Expls,DExpls,G,Pr0,Pr1,Err0,Err1) +show_explanations(Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- + print_explanations(Expls,0), + writel([' [ok,more,how i,help]: ']), + flush_and_read(Comm), + interpret_show_explanations_report(Comm,Expls,DExpls,G,Pr0,Pr1,Err0,Err1). + +% interpret_show_explanations_report(Comm,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) +interpret_show_explanations_report(ok,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- !, + report_expls(Expls,DExpls,G,Pr0,Pr1,Err0,Err1). +interpret_show_explanations_report(more,_,_,_,_,_,_,_) :- !, + reset_runtime,fail. +interpret_show_explanations_report(how I,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- + catch( + ( + ith(Expls,et(_,Tree),I,0), + traverse(Tree,_) % Report is ignored + ), + Ex, + (Ex= outofrange -> + write_all(['Number out of range: how ',I,'.']) + ; write_all(['Argument to how must be an integer: how ',I,'.']) + ) + ), + report_expls(Expls,DExpls,G,Pr0,Pr1,Err0,Err1). +interpret_show_explanations_report(help,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- !, + write_all([ + 'ok. go back to answer dialogue',nl, + 'more. get another answer.',nl, + 'how i. ask how the ith explanation was proved',nl, + 'help. print this message']), + report_expls(Expls,DExpls,G,Pr0,Pr1,Err0,Err1). +interpret_show_explanations_report(Comm,Expls,DExpls,G,Pr0,Pr1,Err0,Err1) :- !, + write_all([ + 'Unknown command: ',Comm,'. Type "help." for help']), + report_expls(Expls,DExpls,G,Pr0,Pr1,Err0,Err1). + +% print_explanations(DExpls,Count). +print_explanations([],_). +print_explanations([et(W,_)|R],C) :- + write_all([' ',C,': ', W]), + C1 is C+1, + print_explanations(R,C1). + +% print_worlds(DExpls,Count). +print_worlds([],_). +print_worlds([W|R],C) :- + prob_expl(W,1,Pr), + write_all([' ',C,': ', W,' Prob=',Pr]), + C1 is C+1, + print_worlds(R,C1). + +% print_observations(Obs,N) +print_observations([],0). +print_observations([O|Os],N1) :- + print_observations(Os,N), + N1 is N+1, + write_all([N1,': ',O]). + + +% extract_expls(L1,L2) L1 is a list of et(ass(_,E,_),_) and L2 is the +% corresponding list of explanations E. +extract_expls([],[]). +extract_expls([et(ass(_,E,_),_)|L],R1) :- + extract_expls(L,R), + insert_exp(E,R,R1). + +% make_disjoint(L,SL) is true if L is a list of explanations and SL +% is a lists of Expl such that SL are mutually exclusive and cover +% the same worlds as the Expls in L. +% This assumes that L is a minimal set: no member of L is a subset of another. + +make_disjoint([],[]). +make_disjoint([R|L],L2) :- + % check_sorted(R), + member(R1,L), + % check_sorted(R1), + \+ mutually_incompatible(R,R1),!, + (member(E,R1), \+ idmember(E,R) %%% was \+ member(E,R) + -> true; write_all(['Error in make_disjoint: ',compatible(R,R1)]),fail), + choice(E,_,NE), + split([E|NE],R,L,L1), + make_disjoint(L1,L2). +make_disjoint([E|L1],[E|L2]) :- + make_disjoint(L1,L2). + +% split(As,R,L0,L1) splits R on As, added to L0 produces L1 +split([],_,L,L). +split([A|As],E,L0,L2) :- + insert_into_sorted_list(A,E,E1), + insert_exp(E1,L0,L1), + split(As,E,L1,L2). + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% HOW QUESTIONS +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% traverse(T,Rep) true if +% T is a tree being traversed +% Rep is the reply it is one of {up,top,retry,prompt} +% up means go up in the tree +% top means go to the top of the tree (where traverse was called). +% retry means find another proof tree +% prompt means go to the top level prompt +traverse((A&B),Rep) :- + traverse(if(yes,(A&B)),Rep). +traverse(if(H,true),up) :- !, + write_all([' ',H,' is a fact']). +traverse(if(H,builtin),up) :- !, + write_all([' ',H,' is built-in.']). +traverse(if(H,asked),up) :- !, + write_all([' You told me ',H,' is true.']). +traverse(if(H,assumed),up) :- !, + write_all([' ',H,' is assumed.']). +traverse(if(~G,nafproof(_,[])),Rep) :- !, + write_all([' ',G,' finitely failed. You can examine the search space.']), + depth_bound(DB), + whynotb(G,DB,Rep,ass([],[],1),_). +traverse(if(~G,nafproof(Expl,ETs)),Rep) :- !, + write_all([' ',~G,' succeeded assuming ',Expl]), + write_all([' ',G,' succeeded with the following explanations:']), + print_explanations(ETs,0), + writel([' [up,top,retry,prompt,how i,help,whynot]: ']), + flush_and_read(Comm), + interpret_naf_how(Comm,ETs,Rep0), + (Rep0=repeat -> + traverse(if(~G,nafproof(Expl,ETs)),Rep) + ; Rep=Rep0 + ). +traverse(null,top) :- !, + write_all([' There was nothing to be proved.']). +traverse(if(H,B),Rep) :- + write_all([' ',H,' <-']), + print_tree_body(B,1,Max), + writel([' How? [Number,up,retry,ok,prompt,help]: ']), + flush_and_read(Comm), + interpretcommand(Comm,B,Max,if(H,B),Rep). + +% print_tree_body(B,N) is true if B is a body to be printed and N is the +% count of atoms before B was called. +print_tree_body(true,N,N). +print_tree_body((A&B),N0,N2) :- + print_tree_body(A,N0,N1), + print_tree_body(B,N1,N2). +print_tree_body(if(H,_),N,N1) :- + write_all([' ',N,': ',H]), + N1 is N+1. + +% interpretcommand(Comm,B,Max,Goal,Reply) interprets the command Comm on body B +interpretcommand(help,_,Max,G,Rep) :- !, + write_all([ + ' Give either (end each command with a period):',nl, + ' how i. explain how subgoal i (i<',Max,') was proved.',nl, + ' up. go up the proof tree one level.',nl, + ' retry. find another proof.',nl, + ' ok. stop traversing the proof tree.',nl, + ' prompt. return to the ailog prompt.',nl, + ' help. to print this message.']), + traverse(G,Rep). +interpretcommand((how N),B,Max,G,Rep) :- + integer(N), + interpretcommand(N,B,Max,G,Rep). +interpretcommand(N,B,Max,G,Rep) :- + integer(N), + N > 0, + N < Max,!, + nth(B,1,_,N,E), + traverse(E,Rep1), + ( Rep1= up + -> traverse(G,Rep) + ; Rep=Rep1 + ). +interpretcommand(N,_,Max,G,Rep) :- + integer(N),!, + % (N < 1 ; N >= Max,Rep), + M1 is Max-1, + write_all(['Number out of range: ',N,'. Use number in range: [1,',M1,'].']), + traverse(G,Rep). +interpretcommand(up,_,_,_,up) :-!. +interpretcommand(why,_,_,_,up) :-!. +interpretcommand(ok,_,_,_,top) :-!. +interpretcommand(prompt,_,_,_,_) :-!, + throw(prompt). +interpretcommand(retry,_,_,_,retry) :-!. +interpretcommand(end_of_file,_,_,_,prompt) :-!, + write_all(['^D']). +interpretcommand(C,_,_,G,Rep) :- + write_all(['Illegal Command: ',C,' Type "help." for help.']), + traverse(G,Rep). + +% nth(S,N0,N1,N,E) is true if E is the N-th element of structure S +nth((A&B),N0,N2,N,E) :- !, + nth(A,N0,N1,N,E), + nth(B,N1,N2,N,E). +nth(true,N0,N0,_,_) :- !. +nth(A,N,N1,N,A) :- !, + N1 is N+1. +nth(_,N0,N1,_,_) :- + N1 is N0+1. + +% interpret_naf_how(Comm,ETs,Report) +% Report is either up, or repeat or whatever travese can report +interpret_naf_how(ok,_,up). +interpret_naf_how(more,_,_) :- !, + reset_runtime,fail. +interpret_naf_how(how I,Expls,Report) :- + catch( + ( + ith(Expls,et(_,Tree),I,0), + traverse(Tree,Report) + ), + Ex, + ((Ex= outofrange -> + write_all(['Number out of range: how ',I,'.']) + ; write_all(['Argument to how must be an integer: how ',I,'.']) + ), + Report=repeat) + ). +interpret_naf_how(help,_,repeat) :- !, + write_all([ + 'ok. go back to answer dialogue',nl, + 'more. get another answer.',nl, + 'how i. ask how the ith explanation was proved',nl, + 'help. print this message']). +interpret_naf_how(Comm,_,repeat) :- !, + write_all([ + 'Unknown command: ',Comm,'. Type "help." for help']). + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% WHY NOT QUESTIONS for FAILING QUERIES +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% determine why an answer to body Q was not found. +% whynotb(+Q,+DB,-Rep,+Ass0,-Ass1) determine why body Q, with depth-bound DB +% and Ass0 did not find an expected answer +% Rep is the reply it is one of {up,top,retry,prompt} +% up means go up in the tree +% top means go to the top of the tree (where traverse was called). +% retry means find another proof tree +% prompt means go to the top level prompt + +whynotb((A & B),DB,Rep,Ass0,Ass2) :- + retractall(failed(_)), + assert(failed(naturally)), + solve(A,DB,Res,[whynot],Ass0,Ass1), + report_whynot_conj(A,Res,B,DB,Rep,Ass0,Ass1,Ass2). +whynotb((A & _),DB,Rep,Ass0,Ass1) :- !, + whynotb(A,DB,Rep,Ass0,Ass1). + +whynotb(call(A),DB,Rep,Ass0,Ass1) :- !, + whynotb(A,DB,Rep,Ass0,Ass1). + +whynotb((~ A),DB,Rep,Ass0,Ass1) :- + ground(A), !, + retractall(failed(_)), + assert(failed(naturally)), + findall(et(Ass,T),solve(A,DB,T,[whynot],Ass0,Ass),ETs), + ( + member(et(Ass0,T),ETs) + -> % found a proof with no assumables + write_all([' ',~A,' failed as ',A,' suceeded. Here is how:']), + traverse(T,Rep) + ; (ETs=[], failed(naturally)) -> + write_all([' ',~A,' succeeds, as ',A,' finitely fails.']), + whynotb(A,DB,Rep,Ass0,_), + Ass1=Ass0 + ; failed(unnaturally) -> + write_all([' ',~A,' failed because of the depth-bound.']), + whynotb(A,DB,Rep,Ass0,_) + ; + whynotb_expls(A,ETs,Rep) + ). + + +whynotb((~ A),_,up,Ass0,Ass0) :- !, + write_all([' Error: ',~A,' needs to be ground when called.']). + +whynotb(A,_,up,Ass0,Ass0) :- + builtin(A,C),!, + (call(C) + -> (call(A) + -> write_all([' ',A,' is built-in and succeeds.']) + ; write_all([' ',A,' is built-in and fails.'])) + ; write_all([' ',A,' is built-in and is insufficiently instanciated.'])). + +whynotb((A \= B),_,up,Ass0,Ass0) :- + ?=(A,B),!, + (A \== B + -> write_all([' ',(A \= B),' succeeds as they can never unify.']) + ; write_all([' ',(A \= B),' fails as they are identical.'])). +whynotb((A \= B),_,up,Ass0,Ass0) :- + write_all([' ',(A \= B),' cannot be resolved. It is delayed.']), + when(?=(A,B), + (A \== B + -> write_all([' Resolving delayed ',(A \= B),'. It succeeded.']) + ; write_all([' Failure due to delayed constraint, ',(A \= B),'.']), + fail)). +whynotb((A #= B),_,up,Ass0,Ass0) :- + (\+(A = B) + -> write_all([' ',(A #= B),' succeeds as they can never unify.']) + ; write_all([' ',(A #= B),' fails as they can unify.'])). + + +whynotb(Q,_,up,ass(A0,PAs,P),ass(A1,PAs,P)) :- + assumabl(Q),!, + (idmember(Q,A0) + -> + write_all([' ',Q,' has already been assumed. It succeeds.']), + A1=A0 + ; + good(Q,A0) + -> + write_all([' ',Q,' is consistently assumed.']), + A1=[Q|A0] + ; + write_all([' ',Q,' is inconsistent with other assumables.']), + A1=A0 + ). + +whynotb(Q,_,up,ass(A0,PAs0,P0),ass(A0,PAs1,P1)) :- + choice(Q,P,A),!, +% (ground(Q) -> true +% ; write_all([' Error: assumable ',Q,' needs to be ground when called.'])), + (consistent(PAs0,A) + -> + insertUpdateProbs(PAs0,P0,Q,P,PAs1,P1), + prob_threshold(Bound), + ((P1 < Bound) + -> + retract(pruned_prob(PP)), + PP1 is PP+P1, + asserta(pruned_prob(PP1)), + write_all([' ',Q,' fails as the probability (',P1,') is too small']) + ; + write_all([' ',Q,' suceeds as it can be assumed']) + ) + ; + write_all([' ',Q,' fails as it is inconsistent with other assumpions']) + + ). + +whynotb(G=V,_,up,ass(A0,PAs,P),ass(A1,PAs,P)) :- + arbit(G,V),!, + (member((G=V1),A0) + -> + (V=V1 -> + write_all([' ',G=V,' is has already been assumed.']) + ; write_all([' arbitrary ',G,' has value ',V1,', so ',G=V,' fails.']) + ), + A1=A0 + ; + write_all([' ',G=V,' is consistently assumed.']), + A1=[G=V|A0] + ). + + +whynotb(Q,0,up,Ass0,Ass0) :- !, + write_all([' ',Q,' fails because of the depth-bound.']). + +% whynotb(Q,DB,up,Ass0,Ass0) :- +% DB > 0, +% (Q <- true),!, +% write_all([' ',Q,' is a fact. It doesn''t fail.']). + +whynotb(Q,DB,Rep,Ass0,Ass1) :- + DB > 0, + (Q <- B), + whynotrule(Q,B,DB,Rep,Ass0,Ass1). +whynotb(Q,_,up,Ass0,Ass0) :- + write_all([' There is no applicable rule for ',Q,'.']). + +whynotrule(Q,B,DB,Rep,Ass0,Ass1) :- + (B=true + -> + write_all([' ',Q,'.']); + write_all([' ',Q,' <- ',B,'.']) + ), + writel([' Trace this rule? [yes,no,up,help]: ']), + flush_and_read(Comm), + whynotruleinterpret(Comm,Q,B,DB,Rep,Ass0,Ass1). + +whynotruleinterpret(yes,Q,B,DB,Rep,Ass0,Ass1) :- !, + DB1 is DB-1, + whynotb(B,DB1,Rep1,Ass0,Ass1), + (Rep1 = up + -> whynotrule(Q,B,DB,Rep,Ass0,Ass1) + ; Rep=Rep1). +whynotruleinterpret(no,_,_,_,_,_,_) :- !, + fail. +whynotruleinterpret(up,_,_,_,up,Ass0,Ass0) :- !. +whynotruleinterpret(end_of_file,_,_,_,prompt,_,_) :- !, + write_all(['^D']). +whynotruleinterpret(ok,_,_,_,prompt,_,_) :- !. +whynotruleinterpret(help,Q,B,DB,Rep,Ass0,Ass1) :- !, + write_all([ + ' Do you want to examine why this rule failed?',nl, + ' yes. look at this rule',nl, + ' no. try another rule',nl, + ' up. go back to the rule this rule was called from',nl, + ' ok. go to top-level prompt']), + whynotrule(Q,B,DB,Rep,Ass0,Ass1). +whynotruleinterpret(Comm,Q,B,DB,Rep,Ass0,Ass1) :- + write_all([' Unknown command: ',Comm,'. Type "help." for help.']), + whynotrule(Q,B,DB,Rep,Ass0,Ass1). + + +report_whynot_conj(A,Res,B,DB,Rep,Ass0,Ass1,Ass2) :- + write_all([' The proof for ',A,' succeeded.']), + (Ass0 \== Ass1 -> + write_all([' assuming ',Ass1]) + ; true + ), + writel([' Is this the appropriate answer? [yes,no,debug,help]: ']), + flush_and_read(Comm), + why_not_conj_interpret(Comm,A,Res,B,DB,Rep,Ass1,Ass2). + +why_not_conj_interpret(debug,A,Res,B,DB,Rep,Ass0,Ass1) :- !, + traverse(Res,Rep1), + (Rep1 = up + -> report_whynot_conj(A,Res,B,DB,Rep,Ass0,Ass1) + ; Rep=Rep1). +why_not_conj_interpret(yes,_,_,B,DB,Rep,Ass0,Ass1) :- !, + whynotb(B,DB,Rep,Ass0,Ass1). +why_not_conj_interpret(no,_,_,_,_,_,_,_) :- !, + fail. % find another proof for A + +why_not_conj_interpret(end_of_file,_,_,_,_,prompt,_,_) :- !, + write_all(['^D']). +why_not_conj_interpret(ok,_,_,_,_,prompt,_,_) :- !, + write_all(['^D']). +why_not_conj_interpret(help,A,Res,B,DB,Rep,Ass0,Ass1) :- !, + write_all([ + ' yes. this instance should have made the body succeed.',nl, + ' no. this instance should lead to a failure of the body.',nl, + ' debug. this instance is false, debug it.',nl, + ' ok. I''ve had enough. Go to the prompt.',nl, + ' help. print this message.']), + report_whynot_conj(A,Res,B,DB,Rep,Ass0,Ass1). +why_not_conj_interpret(Comm,A,Res,B,DB,Rep,Ass0,Ass1) :- + write_all([' Unknown command: ',Comm,'. Type "help." for help.']), + report_whynot_conj(A,Res,B,DB,Rep,Ass0,Ass1). + +whynotb_expls(A,ETs,Rep) :- + write_all([' ',~A,' succeeds, as ',A,' has the explanations: ']), + print_explanations(ETs,0), + writel([' [up,top,retry,prompt,how i,help,whynot]: ']), + flush_and_read(Comm), + interpret_naf_how(Comm,ETs,Rep0), + (Rep0=repeat -> + whynotb_expls(A,ETs,Rep) + ; Rep=Rep0 + ). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% FILE INTERACTION +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +flush_and_read(T) :- + flush_output, + (read(T) -> true ; flush_and_read(T)). % reads until no error. + +ci_load(File) :- + current_input(OldFile), + open(File,read,Input), + set_input(Input), + flush_and_read(T), + read_all(T), + set_input(OldFile), + write_all(['AILog theory ',File,' loaded.']). + +read_all(C) :- + file_or_command(C,file), + flush_and_read(T2),!, + read_all(T2). + +read_all(end_of_file) :- !. +read_all((H :- B)) :- !, + write_all(['Error: Illegal Implication: ',H,' :- ',B,'. Use <- or prload.']). +read_all(T) :- + tell_clause(T), + flush_and_read(T2),!, + read_all(T2). +read_all(_). + +prolog_load(File) :- + current_input(OldFile), + open(File,read,Input), + set_input(Input), + flush_and_read(T), + prread_all(T), + set_input(OldFile), + write_all(['AILog theory ',File,' consulted.']). + + +prread_all(T) :- + file_or_command(T,file), + flush_and_read(T2), + prread_all(T2). +prread_all(end_of_file) :- !. +prread_all(T) :- + prillegal(T,Mesg),!, + write_all(Mesg). +prread_all(T) :- + prtell(T), + flush_and_read(T2), + prread_all(T2). + +% prillegal(R,Mesg) is true if R is illegal Prolog rule. +% Mesg is the corresponding error message. +prillegal((H <- B),['Error. Illegal Implication: ',H,' <- ',B, + '. Use :- in prload.']) :- !. +prillegal((:- B),['Error. Commands not allowed. ":- ',B,'."']) :- !. +prillegal((_ :- B),Mesg) :- !, + prillbody(B,Mesg). +prillbody((A,_),Mesg) :- + prillbody(A,Mesg). +prillbody((_,B),Mesg) :- + prillbody(B,Mesg). +prillbody((_;_),['Prolog rules assume disjunction ";". Define it before loading.']) :- + \+ ((_;_) <- _). +prillbody((A;_),Mesg) :- + prillbody(A,Mesg). +prillbody((_;B),Mesg) :- + prillbody(B,Mesg). +prillbody((_&_),['Error. Illegal conjunction in Prolog rules: &']):- !. +prillbody(!,['Error. Cut (!) not allowed.']) :- !. +prillbody((_ -> _ ; _),['Error. "->" is not implemented.']) :- !. +prillbody((_ -> _ ),['Error. "->" is not implemented.']) :- !. + +% prtell(Cl) tells the prolog clause Cl +prtell((H :- B)) :- !, + convert_body(B,B1), + assertz((H <- B1)). +prtell(H) :- + assertz((H <- true)). + +% convert_body(PB,CB) converts Prolog body PB to ailog body CB +convert_body((A,B),(A1&B1)) :- !, + convert_body(A,A1), + convert_body(B,B1). +convert_body((A;B),(A1;B1)) :- !, + convert_body(A,A1), + convert_body(B,B1). +convert_body((\+ A),(~ A1)) :- !, + convert_body(A,A1). +convert_body(A,A). + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% MAIN LOOP +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +start :- + ailog_version(V,Y), + write_all([nl, + 'AILog Version ',V,'. Copyright ',Y,', David Poole.',nl, + 'AILog comes with absolutely no warranty.',nl, + 'All inputs end with a period. Type "help." for help.']), + start1. + +start1 :- + catch(go,Exc,handle_exception(Exc)). + +go :- + writel(['ailog: ']), + flush_and_read(T), + (T == prolog -> + write_all(['Returning to Prolog. Type "start." to start ailog.']) + ; T == end_of_file -> + write_all(['^D']), + write_all(['Returning to Prolog. Type "start." to start ailog.']) + ; interpret(T), + !, + go). + +handle_exception(prompt) :- !, start1. +handle_exception(quit) :- halt. +handle_exception(Exc) :- + write_all(['Error: ',Exc]), + start1. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% CHECKING the KB +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% check searches through the knowledge base looking for a rule +% containing an atom in the body which doesn't have a corresponding +% definition (i.e., a clause with it at the head). +check :- + (H <- B), + body_elt_undefined(B,H,B). +check. + +check :- + (H <- _), + choice(H,_,_), + write_all([H,' should not be defined in a rule and as a probability.']), + fail. + +body_elt_undefined(true,_,_) :- !,fail. +body_elt_undefined((A&_),H,B) :- + body_elt_undefined(A,H,B). +body_elt_undefined((_&A),H,B) :- !, + body_elt_undefined(A,H,B). +body_elt_undefined((~ A),H,B) :- !, + body_elt_undefined(A,H,B). +body_elt_undefined((A;_),H,B) :- + body_elt_undefined(A,H,B). +body_elt_undefined((_;A),H,B) :- !, + body_elt_undefined(A,H,B). +body_elt_undefined(call(A),H,B) :- !, + body_elt_undefined(A,H,B). +body_elt_undefined(_ \= _,_,_) :- !,fail. +body_elt_undefined(_ #= _,_,_) :- !,fail. +body_elt_undefined(A,_,_) :- + askabl(A),!,fail. +body_elt_undefined(A,_,_) :- + assumabl(A),!,fail. +body_elt_undefined(A,_,_) :- + choice(A,_,_),!,fail. +body_elt_undefined(X=V,_,_) :- + arbit(X,V),!,fail. +body_elt_undefined(A,_,_) :- + builtin(A,_),!,fail. +body_elt_undefined(A,_,_) :- + (A <- _),!,fail. +body_elt_undefined(A,H,B) :- + write_all(['Warning: no clauses for ',A,' in rule ',(H <- B),'.']),!,fail. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% STATS +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% uncomment the next line to make runtime checking the default +%checking_runtime. + +% stats_command(Cmd) means "stats Cmd" was given as a command. +stats_command(runtime) :- !, + retractall(checking_runtime), + asserta(checking_runtime), + write_all(['Runtime report turned on. Type "stats none." to turn it off.']). +stats_command(none) :- !, + retractall(checking_runtime). +stats_command(_) :- + write_all(['The stats commands implemented are:']), + write_all([' stats runtime. turn on report of runtime.']), + write_all([' stats none. turn off report of runtime.']). + +% reset_runtime means that we are storing the current valuse of +% runtime. This means that we are leaving out much of the ailog +% overhead from the calcluation. + +reset_runtime :- + checking_runtime, + retractall(lastruntime(_)), + get_runtime(T,_), + asserta(lastruntime(T)),!. +reset_runtime :- + checking_runtime -> + write_all([' Problem with runtime checking.']) + ; true. + +report_runtime :- + checking_runtime, + lastruntime(T), + get_runtime(T1,Units), + RT is T1 - T, + write_all([' Runtime since last report: ',RT,' ',Units,'.']),!. +report_runtime :- + checking_runtime -> + write_all([' Problem with runtime reporting.']) + ; true. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% NOGOOD Handling +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% A nogood is a set of assumables that is inconsistent +construct_nogoods(DB) :- + depth_bound(DB), + retractall(failed(_)), + assert(failed(naturally)), + reset_runtime, + solve(false,DB,PfTree,[wrule(yes,true,false,true)],ass([],[],1),ass(Ass,_,_)), + assert(nogood(Ass,PfTree)), + assert_each_nogood(Ass,[]), + fail. +construct_nogoods(DB) :- + failed(naturally) + -> write_all(['Nogoods recorded. Type "nogoods." to see them.']) + ; write_all(['Nogoods recorded, but depth-bound ',DB,' reached. Type "nogoods." to see them.']). + +assert_each_nogood([],[]). +assert_each_nogood([H|NotDone],Done) :- + append(NotDone,Done,Rest), + assert(anogood(H,Rest)), + assert_each_nogood(NotDone,[H|Done]). + +list_nogoods :- + nogood(NG,_), + write_all(['Nogood: ',NG,'.']), fail. +list_nogoods. + +good(A,E) :- + \+ bad(A,E). +bad(A,E) :- + ground((A,E)), + anogood(A,N), + subset(N,E). + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% HELPERS +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% write_all(L) writes each element of list L, ends with new line +write_all(L) :- + \+ \+ (mynumbervars(L,0,_),writel0(L)), + nl. +% writel(L) writes each element of list L +writel(L) :- + \+ \+ (mynumbervars(L,0,_),writel0(L)). + +% writel0(L) writes each element of list L +writel0([]) :- !. +writel0([nl|T]) :- !, + nl, + writel0(T). +writel0([H|T]) :- + mywrite(H), + writel0(T). + +% writeAllDelim(L,D) writes the elements of L using delimiter D +writeAllDelim(L,D) :- + \+ \+ (mynumbervars(L,0,_),writeAllDelim0(L,D)). + +writeAllDelim0([],_) :-!. +writeAllDelim0([E],_) :- !, mywrite(E). +writeAllDelim0([H|T],nl) :- !, mywrite(H),nl,writeAllDelim0(T,nl). +writeAllDelim0([H|T],D) :- mywrite(H),mywrite(D),writeAllDelim0(T,D). + +% mywrite(T) writes term T +mywrite(T) :- + write_term(T,[numbervars(true),portray(true)]). + +portray(A&B) :- mywrite(A),mywrite(' & '),mywrite(B). + +% insert_into_sorted_list(E,L,R) inserts E into sorted list L producing R +insert_into_sorted_list(A,[],[A]). +insert_into_sorted_list(A,[A1|R],[A|R]) :- A == A1,!. +insert_into_sorted_list(A,[A1|R],[A,A1|R]) :- A @< A1, !. +insert_into_sorted_list(A,[B|R],[B|R1]) :- + insert_into_sorted_list(A,R,R1). + +% insertUpdateProbs(E,L) inserts E into sorted list L +insertUpdateProbs(A,[],[A]). +insertUpdateProbs(A,[A1|R],[A|R]) :- A == A1,!. +insertUpdateProbs(A,[A1|R],[A,A1|R]) :- A @< A1, !. +insertUpdateProbs(A,[B|R],[B|R1]) :- + insertUpdateProbs(A,R,R1). + +% consistent(L1,L2) is true if L1 & L2 are sorted lists with no +% elements in common. +consistent([],_) :- !. +consistent(_,[]) :- !. +consistent([A1|R1],[A2|R2]) :- + A1 @< A2, !, + consistent(R1,[A2|R2]). +consistent([A1|R1],[A2|R2]) :- + A1 @> A2, !, + consistent([A1|R1],R2). + +% remove(E,L,L1) removes E from list L producing L1 +remove(E,[E|L],L). +remove(E,[A|L],[A|R]) :- + remove(E,L,R). + + +% subset_sorted(L1,L2) is true if list L1 is a subset of L2 +% all lists are assumed to be ground and sorted. +subset_sorted([],_) :- !. +subset_sorted([A|L1],[A|L2]) :- !, + subset_sorted(L1,L2). +subset_sorted([A1|L1],[A2|L2]) :- + A2 @< A1, + subset_sorted([A1|L1],L2). + +% setDiff(S1,S2,S3) S3 = S1-S2. All lists are sorted. + +setDiff([],_,[]) :- !. +setDiff(S,[],S) :- !. +setDiff([A|L1],[A|L2],R) :- !, + setDiff(L1,L2,R). +setDiff([A1|L1],[A2|L2],[A1|R]) :- + A1 @< A2, !, + setDiff(L1,[A2|L2],R). +setDiff(L1,[_|L2],R) :- + setDiff(L1,L2,R). + +% mywhen(C,G) replaces "when". It does not delay, but instead gives an +% error. This is now redundant as SWI has "when". +mywhen(C,G) :- + C -> G + ; + write_all(['Warning: ',C,' failing. Delaying not implemented.']), + fail. + +% ith(L,E,I,I0) is true if E is the Ith element of list L, starting to +% count from I0 +ith([],_,_,_) :- + throw(outofrange). +ith([H|_],H,I,I) :- !. +ith([_|T],E,I,I0) :- + I>I0, !, + I1 is I0+1, + ith(T,E,I,I1). +ith(_,_,_,_) :- + throw(outofrange). + +idmember(A,[A1|_]) :- A==A1,!. +idmember(A,[_|L]) :- idmember(A,L). + +mynumbervars(Term, From, To) :- + numbervars(Term, From, To, [attvar(bind)]). + +issorted([]). +issorted([_]). +issorted([E1,E2|R]) :- + E1 @< E2, + issorted([E2|R]). + +check_sorted(L) :- + issorted(L),!. +check_sorted(L) :- + write_all(['Warning: not sorted: ',L]). + +% Run "start" at initialization +:- initialization(start). \ No newline at end of file diff --git a/pl-ail-files/exercise0.pl b/pl-ail-files/exercise0.pl new file mode 100644 index 0000000..7b5771f --- /dev/null +++ b/pl-ail-files/exercise0.pl @@ -0,0 +1,44 @@ +/* The facts about the Dutch Royal Family */ + +mother(wilhelmina, juliana). +mother(juliana, beatrix). +mother(juliana, christina). +mother(juliana, irene). +mother(juliana, margriet). +mother(beatrix, friso). +mother(beatrix, alexander). +mother(beatrix, constantijn). +mother(emma, wilhelmina). + +father(hendrik, juliana). +father(bernard, beatrix). +father(bernard, christina). +father(bernard, irene). +father(bernard, margriet). +father(claus, friso). +father(claus, alexander). +father(claus, constantijn). +father(willem, wilhelmina). + +queen(beatrix). +queen(juliana). +queen(wilhelmina). +queen(emma). +king(willem). + +/* rules */ + +parent(X, Y) :- mother(X, Y). +parent(X, Y) :- father(X, Y). + +ruler(X) :- queen(X). +ruler(X) :- king(X). + +predecessor(X, Y) :- + parent(X, Y), + ruler(X), + ruler(Y). +predecessor(X, Y) :- + ruler(X), + parent(X, Z), + predecessor(Z, Y). diff --git a/pl-ail-files/exercise10.ail b/pl-ail-files/exercise10.ail new file mode 100644 index 0000000..3ad7a0c --- /dev/null +++ b/pl-ail-files/exercise10.ail @@ -0,0 +1,44 @@ +/* The facts about the Dutch Royal Family */ + +mother(wilhelmina, juliana). +mother(juliana, beatrix). +mother(juliana, christina). +mother(juliana, irene). +mother(juliana, margriet). +mother(beatrix, friso). +mother(beatrix, alexander). +mother(beatrix, constantijn). +mother(emma, wilhelmina). + +father(hendrik, juliana). +father(bernard, beatrix). +father(bernard, christina). +father(bernard, irene). +father(bernard, margriet). +father(claus, friso). +father(claus, alexander). +father(claus, constantijn). +father(willem, wilhelmina). + +queen(beatrix). +queen(juliana). +queen(wilhelmina). +queen(emma). +king(willem). + +/* rules */ + +parent(X, Y) <- mother(X, Y). +parent(X, Y) <- father(X, Y). + +ruler(X) <- queen(X). +ruler(X) <- king(X). + +predecessor(X, Y) <- + predecessor(Z, Y) & + ruler(X) & + parent(X, Z). +predecessor(X, Y) <- + parent(X, Y) & + ruler(X) & + ruler(Y). diff --git a/pl-ail-files/exmbr.ail b/pl-ail-files/exmbr.ail new file mode 100644 index 0000000..7ea73b4 --- /dev/null +++ b/pl-ail-files/exmbr.ail @@ -0,0 +1,16 @@ +assumable a1. +assumable a2. +assumable fever. +assumable flu. +assumable sport. + +chills <- fever & a1. +fever <- flu. +thirst <- fever. +myalgia <- flu & a2. +myalgia <- sport. + +false <- chills. +create_nogoods. + + diff --git a/pl-ail-files/heart.ail b/pl-ail-files/heart.ail new file mode 100644 index 0000000..ef92128 --- /dev/null +++ b/pl-ail-files/heart.ail @@ -0,0 +1,141 @@ +% Subset of the knowledge base put together by a cardiologist +% of AMC Amsterdam for the 112 alarm service. +% Idea was that centralists (people answering the phone) should +% be given assistance in posing the right questions to people +% calling 112 for cardiac problems. In some cases, when there +% was an emergency, an ambulance needs to be send, where in +% others it would save money to send the person to general care. +% So the essential question is: is there an emergency situation +% or not. + +askable age(Patient) = V. +askable duration(Patient,heart,pain) = V. +askable diabetic(Patient). +askable smoking(Patient). +askable pain(Patient). +askable similar_symptoms(Patient,angina_pectoris). +askable similar_symptoms(Patient,myocardial_infarction). +askable pattern(Patient,pain,retrosternal). +askable pattern(Patient,pain,left_lateral_thoracic). +askable pattern(Patient,pain,right_lateral_thoracic). +askable provocation(Patient,pain,emotions). +askable provocation(Patient,pain,food_consumption). +askable provocation(Patient,pain,physical_exertion). +askable provocation(Patient,pain,warmth_to_cold_change). + +sclerotic_arteries(Patient) <- + age(Patient) = A & + A > 50. + +sclerotic_arteries(Patient) <- + diabetic(Patient); + smoking(Patient). + +known_disease(Patient,angina_pectoris) <- + pain(Patient) & + similar_symptoms(Patient,angina_pectoris). + +known_disease(Patient,myocardial_infarction) <- + pain(Patient) & + similar_symptoms(Patient,myocardial_infarction). + +state(Patient,atherosclerosis) <- + sclerotic_arteries(Patient); + known_disease(Patient,myocardial_infarction); + known_disease(Patient,angina_pectoris). + +ischaemia(Patient,heart) <- + pain(Patient) & + pattern(Patient,pain,retrosternal). + +ischaemia(Patient,heart) <- + pain(Patient) & + pattern(Patient,pain,left_lateral_thoracic). + +ischaemia(Patient,heart) <- + pain(Patient) & + pattern(Patient,pain,right_lateral_thoracic). + +state(Patient,coronary_vasodilatation) <- + pain(Patient) & + present_treatment(Patient,anti_anginal) & + cardiac_pain(Patient,gone). + +pain(Patient,clear_provocation) <- + pain(Patient) & + provocation(Patient,pain,emotion). + +pain(Patient,clear_provocation) <- + pain(Patient) & + provocation(Patient,pain,food_consumption). + +pain(Patient,clear_provocation) <- + pain(Patient) & + provocation(Patient,pain,physical_exertion). + +pain(Patient,clear_provocation) <- + pain(Patient) & + provocation(Patient,pain,warmth_to_cold_change). + +o2_demand(Patient,heart,increased) <- + pain(Patient,clear_provocation). + +o2_demand(Patient,heart,normal) <- + ~pain(Patient,clear_provocation). + +ischaemia(Patient,heart) <- + pain(Patient) & + state(Patient,atherosclerosis). + +state(Patient,heart,necrosis) <- + state(Patient,ischaemia,irreversible). + +o2_supply(Patient,heart,decreased) <- + ischaemia(Patient,heart) & + o2_demand(Patient,heart,normal). + +state(Patient,ischaemia,irreversible) <- + ischaemia(Patient,heart) & + duration(Patient,heart,pain) = D & + D > 30 & + ~state(Patient,coronary_vasodilatation). + +state(Patient,ischaemia,reversible) <- + ischaemia(Patient,heart) & + duration(Patient,heart,pain) = D & + D < 30. + +state(Patient,ischaemia,reversible) <- + ischaemia(Patient,heart) & + state(Patient,coronary_vasodilatation). + +disorder(Patient,myocardial_infarction) <- + state(Patient,heart,necrosis) & + state(Patient,atherosclerosis). + +disorder(Patient,unstable_angina_pectoris) <- + o2_demand(Patient,heart,normal) & + state(Patient,ischaemia,irreversible) & + state(Patient,atherosclerosis). + +disorder(Patient,stable_angina_pectoris) <- + state(Patient,atherosclerosis) & + state(Patient,ischaemia,reversible) & + o2_demand(Patient,heart,increased). + +disorder(Patient,variant_angina_pectoris) <- + ~state(Patient,atherosclerosis) & + state(Patient,ischaemia,reversible) & + o2_supply(Patient,heart,decreased). + +condition(Patient,emergency) <- + disorder(Patient,unstable_angina_pectoris). + +condition(Patient,emergency) <- + disorder(Patient,myocardial_infarction). + +condition(Patient,no_emergency) <- + disorder(Patient,stable_angina_pectoris). + +condition(Patient,no_emergency) <- + disorder(Patient,variant_angina_pectoris). diff --git a/report/report.tex b/report/report.tex new file mode 100644 index 0000000..e69de29 -- 2.20.1