norm_subst : (hol_type,hol_type) subst
-> (term,term) subst -> (term,term)subst
- val (S,(T,_)) = raw_match [] empty_varset
(Term `\x:'a. x = f (y:'b)`)
(Term `\a. a = ~p`) ([],([],[]));
> val S = [{redex = `(f :'b -> 'a)`, residue = `$~`},
{redex = `(y :'b)`, residue = `(p :bool)`}] : ...
val T = [{redex = `:'b`, residue = `:bool`},
{redex = `:'a`, residue = `:bool`}] : ...
- norm_subst T S;
> val it =
[{redex = `(y :bool)`, residue = `(p :bool)`},
{redex = `(f :bool -> bool)`, residue = `$~`}]
: {redex : term, residue : term} list