equal
deleted
inserted
replaced
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 |