anchor.diff:  ;;; cria-restricao: lista de variaveis x predicado -> restricao
   
   (defstruct (restricao (:constructor cria-restricao (variaveis funcao-validacao))) 
  -  "Tipo restricao caracterizado por uma lista das variaveis envolvidas na restricao, e uma funcao que verifica a restricao."
  +  "Tipo restricao caracterizado por uma lista das variaveis envolvidas na restricao, e uma funcao
  +  que verifica a restricao."
     variaveis ; lista de variaveis
     funcao-validacao) ; predicado
   
  
positive.code: 	(testes 0))
      (psr-adiciona-atribuicao! p v1 valor1)
      (psr-adiciona-atribuicao! p v2 valor2)
      (setf (values consistente testes) 
  	  (psr-testa-restricoes p (psr-restricoes-ambas-variaveis p v1 v2)))
      (psr-altera-dominio! p v1 antigo-dominio1)
      (psr-altera-dominio! p v2 antigo-dominio2)
      (values consistente testes)))
  
negative.code: 
  ;;; psr-consistente-p: PSR -> logico, inteiro
  (defun psr-consistente-p (p)
    "Testa todas as restricoes do psr."
    (psr-testa-restricoes p (psr-restricoes p)))
  
  
  ;;; psr-variavel-consistente-p: PSR x variavel -> logico, inteiro
  (defun psr-variavel-consistente-p (p v)
    "Testa as restricoes associadas a variavel 'v'."
    (psr-testa-restricoes p (psr-variavel-restricoes p v)))
  
  
  