anchor.diff:  
   ; PROCURA RETROCESSO SIMPLES
   
  -; Recebe um PSR, e tenta resolve-lo usando uma procura com retrocesso simples,
  -; i.e. sem usar qualquer heuristica para escolher a proxima variavel e valor,
  -; e sem qualquer mecanismo de inferencia.
  -; Retorna 2 valores, o primeiro e o PSR resolvido, ou NIL caso nao exista solucao.
  +; Receives a PSR, and try to solve it using a search with simple regression,
  +; i.e. without using any heuristics to choose the next variable and value,
  +; and no inference mechanism.
  +; Returns two values, the first and the PSR resolved, or NIL if no solution exists.
   
   (defun procura-retrocesso-simples (psr)
   	(let
  
positive.code: 
  ; PSR ATRIBUICOES CONSISTENTES EM ARCO
  
  ; Este teste recebe um PSR, uma variavel v1,
  ; e um valor para essa variavel, uma variavel v2 e um 
  ; valor para essa variavel, e retorna 2 valores.
  
  (defun psr-atribuicoes-consistentes-arco-p (psr var1 val1 var2 val2)
  	(let
  
negative.code: 
  ; ATRIBUICOES DO PSR
  
  ; Receives a PSR, and returns a list of all the PSR assignments.
  ; In this function we use a function aux to see if we build
  ; a list of pairs.
  
  (defun listOfPairsBuild (lst1 lst2)
    (loop for idx from 0
  