let add_subst1 (s : ('a,'b) s) (x,t) = try let t' = (List.assoc x s) in if t = t' then s else raise Match_exc1 with Not_found -> (x,t)::s