added backward chaining implementation section