src/HOL/Tools/Presburger/cooper_dec.ML
changeset 22804 d3c23b90c6c6
parent 21873 62d2416728f5
child 22997 d4f3b015b50b
equal deleted inserted replaced
22803:5129e02f4df2 22804:d3c23b90c6c6
   510  
   510  
   511  
   511  
   512 (*list_disj[conj] makes a disj[conj] of a given list. used with conjucts or disjuncts 
   512 (*list_disj[conj] makes a disj[conj] of a given list. used with conjucts or disjuncts 
   513 it liearises iterated conj[disj]unctions. *) 
   513 it liearises iterated conj[disj]unctions. *) 
   514  
   514  
   515 fun disj_help p q = HOLogic.disj $ p $ q ; 
   515 fun list_disj [] = HOLogic.false_const
   516  
   516   | list_disj ps = foldr1 (fn (p, q) => HOLogic.disj $ p $ q) ps;
   517 fun list_disj l = 
   517 
   518   if l = [] then HOLogic.false_const else Utils.end_itlist disj_help l; 
   518 fun list_conj [] = HOLogic.true_const
   519    
   519   | list_conj ps = foldr1 (fn (p, q) => HOLogic.conj $ p $ q) ps;
   520 fun conj_help p q = HOLogic.conj $ p $ q ; 
   520 
   521  
   521 
   522 fun list_conj l = 
       
   523   if l = [] then HOLogic.true_const else Utils.end_itlist conj_help l; 
       
   524    
       
   525 (*Simplification of Formulas *) 
   522 (*Simplification of Formulas *) 
   526  
   523  
   527 (*Function q_bnd_chk checks if a quantified Formula makes sens : Means if in 
   524 (*Function q_bnd_chk checks if a quantified Formula makes sens : Means if in 
   528 the body of the existential quantifier there are bound variables to the 
   525 the body of the existential quantifier there are bound variables to the 
   529 existential quantifier.*) 
   526 existential quantifier.*)