Implement the layer ordering
author |
Steve Losh <steve@stevelosh.com> |
date |
Thu, 10 Nov 2016 13:29:50 +0000 |
parents |
90dd275f6e81 |
children |
(none) |
(role white)
(role black)
(init (step s1))
(init (beaten white s0))
(init (beaten black s0))
(<= (next (beaten ?player ?n1))
(does ?player ?throw)
(does ?player2 ?throw2)
(distinct ?player2 ?player)
(beats ?throw ?throw2)
(true (beaten ?player ?n))
(succ ?n ?n1))
(<= (next (beaten ?player ?n))
(does ?player ?throw)
(does ?player2 ?throw2)
(distinct ?player2 ?player)
(not (beats ?throw ?throw2))
(true (beaten ?player ?n)))
(<= (next (step ?y))
(true (step ?x))
(succ ?x ?y))
(succ s0 s1)
(succ s1 s2)
(succ s2 s3)
(succ s3 s4)
(succ s4 s5)
(succ s5 s6)
(succ s6 s7)
(succ s7 s8)
(succ s8 s9)
(succ s9 s10)
(<= (gt ?x ?y)
(succ ?y ?x))
(<= (gt ?x ?y)
(succ ?z ?x)
(gt ?z ?y))
(<= (legal ?role rock)
(role ?role))
(<= (legal ?role paper)
(role ?role))
(<= (legal ?role scissors)
(role ?role))
(<= (legal ?role well)
(role ?role))
(beats rock scissors)
(beats paper rock)
(beats paper well)
(beats scissors paper)
(beats well scissors)
(beats well rock)
(<= (goal ?r1 100)
(true (beaten ?r1 ?n1))
(true (beaten ?r2 ?n2))
(gt ?n1 ?n2))
(<= (goal ?r2 0)
(true (beaten ?r1 ?n1))
(true (beaten ?r2 ?n2))
(gt ?n1 ?n2))
(<= (goal ?r 50)
(true (beaten white ?n))
(true (beaten black ?n))
(role ?r))
(<= terminal
(true (beaten ?r s5)))
(<= terminal
(true (step s10)))