Gamemaster
General
Game
Playing
Protocol: tester
Player: minimaxdepth
Depth:
7
Game: tictoctoeground
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% tictactoeground %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% role(x) role(o) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% init %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% init(cell(1,1,x)) init(cell(1,2,b)) init(cell(1,3,b)) init(cell(2,1,b)) init(cell(2,2,o)) init(cell(2,3,b)) init(cell(3,1,b)) init(cell(3,2,b)) init(cell(3,3,b)) init(control(x)) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% legal %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% legal(mark(1,1)) :- cell(1,1,b) legal(mark(1,2)) :- cell(1,2,b) legal(mark(1,3)) :- cell(1,3,b) legal(mark(2,1)) :- cell(2,1,b) legal(mark(2,2)) :- cell(2,2,b) legal(mark(2,3)) :- cell(2,3,b) legal(mark(3,1)) :- cell(3,1,b) legal(mark(3,2)) :- cell(3,2,b) legal(mark(3,3)) :- cell(3,3,b) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% operations %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% mark(1,1) :: control(x) ==> cell(1,1,x) & ~cell(1,1,b) mark(1,1) :: control(o) ==> cell(1,1,o) & ~cell(1,1,b) mark(1,2) :: control(x) ==> cell(1,2,x) & ~cell(1,2,b) mark(1,2) :: control(o) ==> cell(1,2,o) & ~cell(1,2,b) mark(1,3) :: control(x) ==> cell(1,3,x) & ~cell(1,3,b) mark(1,3) :: control(o) ==> cell(1,3,o) & ~cell(1,3,b) mark(2,1) :: control(x) ==> cell(2,1,x) & ~cell(2,1,b) mark(2,1) :: control(o) ==> cell(2,1,o) & ~cell(2,1,b) mark(2,2) :: control(x) ==> cell(2,2,x) & ~cell(2,2,b) mark(2,2) :: control(o) ==> cell(2,2,o) & ~cell(2,2,b) mark(2,3) :: control(x) ==> cell(2,3,x) & ~cell(2,3,b) mark(2,3) :: control(o) ==> cell(2,3,o) & ~cell(2,3,b) mark(3,1) :: control(x) ==> cell(3,1,x) & ~cell(3,1,b) mark(3,1) :: control(o) ==> cell(3,1,o) & ~cell(3,1,b) mark(3,2) :: control(x) ==> cell(3,2,x) & ~cell(3,2,b) mark(3,2) :: control(o) ==> cell(3,2,o) & ~cell(3,2,b) mark(3,3) :: control(x) ==> cell(3,3,x) & ~cell(3,3,b) mark(3,3) :: control(o) ==> cell(3,3,o) & ~cell(3,3,b) mark(1,1) :: control(x) ==> ~control(x) & control(o) mark(1,2) :: control(x) ==> ~control(x) & control(o) mark(1,3) :: control(x) ==> ~control(x) & control(o) mark(2,1) :: control(x) ==> ~control(x) & control(o) mark(2,2) :: control(x) ==> ~control(x) & control(o) mark(2,3) :: control(x) ==> ~control(x) & control(o) mark(3,1) :: control(x) ==> ~control(x) & control(o) mark(3,2) :: control(x) ==> ~control(x) & control(o) mark(3,3) :: control(x) ==> ~control(x) & control(o) mark(1,1) :: control(o) ==> ~control(o) & control(x) mark(1,2) :: control(o) ==> ~control(o) & control(x) mark(1,3) :: control(o) ==> ~control(o) & control(x) mark(2,1) :: control(o) ==> ~control(o) & control(x) mark(2,2) :: control(o) ==> ~control(o) & control(x) mark(2,3) :: control(o) ==> ~control(o) & control(x) mark(3,1) :: control(o) ==> ~control(o) & control(x) mark(3,2) :: control(o) ==> ~control(o) & control(x) mark(3,3) :: control(o) ==> ~control(o) & control(x) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% goal %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% goal(x,100) :- line(x) & ~line(o) goal(x,50) :- line(x) & line(o) goal(x,50) :- ~line(x) & ~line(o) goal(x,0) :- ~line(x) & line(o) goal(o,100) :- ~line(x) & line(o) goal(o,50) :- line(x) & line(o) goal(o,50) :- ~line(x) & ~line(o) goal(o,0) :- line(x) & ~line(o) row(1,x) :- cell(1,1,x) & cell(1,2,x) & cell(1,3,x) row(2,x) :- cell(2,1,x) & cell(2,2,x) & cell(2,3,x) row(3,x) :- cell(3,1,x) & cell(3,2,x) & cell(3,3,x) row(1,o) :- cell(1,1,o) & cell(1,2,o) & cell(1,3,o) row(2,o) :- cell(2,1,o) & cell(2,2,o) & cell(2,3,o) row(3,o) :- cell(3,1,o) & cell(3,2,o) & cell(3,3,o) row(1,b) :- cell(1,1,b) & cell(1,2,b) & cell(1,3,b) row(2,b) :- cell(2,1,b) & cell(2,2,b) & cell(2,3,b) row(3,b) :- cell(3,1,b) & cell(3,2,b) & cell(3,3,b) col(1,x) :- cell(1,1,x) & cell(2,1,x) & cell(3,1,x) col(2,x) :- cell(1,2,x) & cell(2,2,x) & cell(3,2,x) col(3,x) :- cell(1,3,x) & cell(2,3,x) & cell(3,3,x) col(1,o) :- cell(1,1,o) & cell(2,1,o) & cell(3,1,o) col(2,o) :- cell(1,2,o) & cell(2,2,o) & cell(3,2,o) col(3,o) :- cell(1,3,o) & cell(2,3,o) & cell(3,3,o) col(1,b) :- cell(1,1,b) & cell(2,1,b) & cell(3,1,b) col(2,b) :- cell(1,2,b) & cell(2,2,b) & cell(3,2,b) col(3,b) :- cell(1,3,b) & cell(2,3,b) & cell(3,3,b) diag(x) :- cell(1,1,x) & cell(2,2,x) & cell(3,3,x) diag(o) :- cell(1,1,o) & cell(2,2,o) & cell(3,3,o) diag(b) :- cell(1,1,b) & cell(2,2,b) & cell(3,3,b) diag(x) :- cell(1,3,x) & cell(2,2,x) & cell(3,1,x) diag(o) :- cell(1,3,o) & cell(2,2,o) & cell(3,1,o) diag(b) :- cell(1,3,b) & cell(2,2,b) & cell(3,1,b) line(x) :- row(1,x) line(x) :- row(2,x) line(x) :- row(3,x) line(o) :- row(1,o) line(o) :- row(2,o) line(o) :- row(3,o) line(b) :- row(1,b) line(b) :- row(2,b) line(b) :- row(3,b) line(x) :- col(1,x) line(x) :- col(2,x) line(x) :- col(3,x) line(o) :- col(1,o) line(o) :- col(2,o) line(o) :- col(3,o) line(b) :- col(1,b) line(b) :- col(2,b) line(b) :- col(3,b) line(x) :- diag(x) line(o) :- diag(o) line(b) :- diag(b) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% terminal %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% terminal :- line(x) %%% terminal :- line(o) terminal :- ~open open :- cell(1,1,b) open :- cell(1,2,b) open :- cell(1,3,b) open :- cell(2,1,b) open :- cell(2,2,b) open :- cell(2,3,b) open :- cell(3,1,b) open :- cell(3,2,b) open :- cell(3,3,b) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%