src/HOL/Library/normarith.ML
changeset 30373 ffdd7a1f1ff0
parent 29843 4bb780545478
child 30868 1040425c86a2
equal deleted inserted replaced
30372:96d508968153 30373:ffdd7a1f1ff0
   871    lin Rat.zero
   871    lin Rat.zero
   872 
   872 
   873 fun solve (vs,eqs) = case (vs,eqs) of
   873 fun solve (vs,eqs) = case (vs,eqs) of
   874   ([],[]) => SOME (Intfunc.onefunc (0,Rat.one))
   874   ([],[]) => SOME (Intfunc.onefunc (0,Rat.one))
   875  |(_,eq::oeqs) => 
   875  |(_,eq::oeqs) => 
   876    (case vs inter (Intfunc.dom eq) of
   876    (case filter (member (op =) vs) (Intfunc.dom eq) of (*FIXME use find_first here*)
   877      [] => NONE
   877      [] => NONE
   878     | v::_ => 
   878     | v::_ => 
   879        if Intfunc.defined eq v 
   879        if Intfunc.defined eq v 
   880        then 
   880        then 
   881         let 
   881         let