src/Provers/Arith/cancel_div_mod.ML
changeset 33037 b22e44496dc2
parent 30937 1fe5a573b552
child 33038 8f9594c31de4
equal deleted inserted replaced
33015:575bd6548df9 33037:b22e44496dc2
    72   in hd (Data.div_mod_eqs RL [teqt' RS transitive_thm]) end;
    72   in hd (Data.div_mod_eqs RL [teqt' RS transitive_thm]) end;
    73 
    73 
    74 fun proc ss t =
    74 fun proc ss t =
    75   let val (divs,mods) = coll_div_mod t ([],[])
    75   let val (divs,mods) = coll_div_mod t ([],[])
    76   in if null divs orelse null mods then NONE
    76   in if null divs orelse null mods then NONE
    77      else case divs inter mods of
    77      else case gen_inter (op =) (divs, mods) of
    78             pq :: _ => SOME (cancel ss t pq)
    78             pq :: _ => SOME (cancel ss t pq)
    79           | [] => NONE
    79           | [] => NONE
    80   end
    80   end
    81 
    81 
    82 end
    82 end