src/HOL/Tools/Presburger/cooper_dec.ML
changeset 17485 c39871c52977
parent 17378 105519771c67
child 17521 0f1c48de39f5
equal deleted inserted replaced
17484:f6a225f97f0a 17485:c39871c52977
   481 
   481 
   482 *)
   482 *)
   483 
   483 
   484 fun evalc_atom at = case at of  
   484 fun evalc_atom at = case at of  
   485   (Const (p,_) $ s $ t) =>
   485   (Const (p,_) $ s $ t) =>
   486    ( case assoc (operations,p) of 
   486    ( case AList.lookup (op =) operations p of 
   487     SOME f => ((if (f ((dest_numeral s),(dest_numeral t))) then HOLogic.true_const 
   487     SOME f => ((if (f ((dest_numeral s),(dest_numeral t))) then HOLogic.true_const 
   488                 else HOLogic.false_const)  
   488                 else HOLogic.false_const)  
   489     handle _ => at) 
   489     handle _ => at) 
   490       | _ =>  at) 
   490       | _ =>  at) 
   491       |Const("Not",_)$(Const (p,_) $ s $ t) =>(  
   491       |Const("Not",_)$(Const (p,_) $ s $ t) =>(  
   492   case assoc (operations,p) of 
   492   case AList.lookup (op =) operations p of 
   493     SOME f => ((if (f ((dest_numeral s),(dest_numeral t))) 
   493     SOME f => ((if (f ((dest_numeral s),(dest_numeral t))) 
   494                then HOLogic.false_const else HOLogic.true_const)  
   494                then HOLogic.false_const else HOLogic.true_const)  
   495     handle _ => at) 
   495     handle _ => at) 
   496       | _ =>  at) 
   496       | _ =>  at) 
   497       | _ =>  at; 
   497       | _ =>  at;