package Ġit . uni bo . tup ro log . core . test utils Ċ Ċ import Ġit . uni bo . tup ro log . core . Atom Ċ import Ġit . uni bo . tup ro log . core . Fact Ċ import Ġit . uni bo . tup ro log . core . Integer Ċ import Ġit . uni bo . tup ro log . core . Real Ċ import Ġit . uni bo . tup ro log . core . Struct Ċ import Ġit . uni bo . tup ro log . core . Truth Ċ import Ġit . uni bo . tup ro log . core . Var Ċ Ċ /** Ċ Ġ* ĠUtils Ġsingleton Ġfor Ġtesting Ġ[ Fact ] Ċ Ġ* Ċ Ġ* Ġ@ author ĠEn ric o Ċ Ġ*/ Ċ internal Ġobject ĠFact Utils Ġ{ ĊĊĠĠĠ Ġ/** ĠContains Ġground ĠF acts Ġ( aka Ġwithout Ġvariables ) Ġ*/ ĊĠĠĠ Ġval Ġground Fact s Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStruct . of (" parent ", ĠAtom . of (" jack "), ĠAtom . of (" bob ")), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStruct . of (" parent ", ĠInteger . of ( 5 ), ĠReal . of (" 2 . 5 ")), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTr uth . TRUE ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĠContains Ġnon Ġground ĠF acts , Ġwith Ġvariables Ġ*/ ĊĠĠĠ Ġval Ġnon Ground Fact s Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStruct . of (" my Func ", ĠVar . anonymous (), ĠVar . anonymous ()), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStruct . of (" win ", ĠVar . of (" X ")) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĠContains Ġmixed Ġ[ ground Fact s ] Ġand Ġ[ non Ground Fact s ] Ġ*/ ĊĠĠĠ Ġval Ġmixed Fact s Ġby Ġlazy Ġ{ Ġground Fact s Ġ+ Ġnon Ground Fact s Ġ} Ċ } Ċ