src/Pure/envir.ML
changeset 2181 9c2b4728641d
parent 2142 20f208ff085d
child 2191 58383908f177
equal deleted inserted replaced
2180:934572a94139 2181:9c2b4728641d
   179 	| normT(TVar(v,_)) = (case assoc(iTs,v) of
   179 	| normT(TVar(v,_)) = (case assoc(iTs,v) of
   180 		Some(U) => normTh U
   180 		Some(U) => normTh U
   181 	      | None => raise SAME)
   181 	      | None => raise SAME)
   182       and normTh T = ((normT T) handle SAME => T)
   182       and normTh T = ((normT T) handle SAME => T)
   183       and normTs([]) = raise SAME
   183       and normTs([]) = raise SAME
   184 	| normTs(T::Ts) = ((normT T :: normTsh Ts)
   184 	| normTs(T::Ts) = ((normT T :: (normTs Ts handle SAME => Ts))
   185 			   handle SAME => T :: normTs Ts)
   185 			   handle SAME => T :: normTs Ts)
   186       and normTsh Ts = ((normTs Ts) handle SAME => Ts)
       
   187       and norm(Const(a,T)) = Const(a, normT T)
   186       and norm(Const(a,T)) = Const(a, normT T)
   188 	| norm(Free(a,T)) = Free(a, normT T)
   187 	| norm(Free(a,T)) = Free(a, normT T)
   189 	| norm(Var (w,T)) =
   188 	| norm(Var (w,T)) =
   190 	    (case xsearch(asol,w) of
   189 	    (case xsearch(asol,w) of
   191 		Some u => normh u
   190 		Some u => normh u