match_type : hol_type -> hol_type -> hol_type subst

SYNOPSIS
Finds a substitution theta such that instantiating the first argument with theta equals the second argument.

DESCRIBE
If match_type ty1 ty2 succeeds, then
    Type.type_subst (match_type ty1 ty2) ty1 = ty2
match_type is not found in hol88.

FAILURE
It fails if no such substitution can be found.

EXAMPLE
   - match_type alpha (Type`:num`);
   > val it =
       [{redex = `:'a`, residue = `:num`}] : hol_type subst

   - let val patt = Type`:('a -> bool) -> 'b`
         val ty =   Type`:(num -> bool) -> bool`
     in
       type_subst (match_type patt ty) patt = ty
     end;
   > val it = true : bool

SEEALSO  match_term,   ho_match_term

HOL  Kananaskis 0