Horn clauses: procedure definition-- B<-A1,...,An the procedure B is defined by the procedure calls Ai; assertion of fact-- B<- (for all x1,...,xk B); goal statement-- <-A1,...,An (for no x1,...xk A1 ,...,An) then the solution is a counter instance); the halt statement .box. (or false <- true)