SUBS : (thm list -> thm -> thm)
A1|-t1=v1 ... An|-tn=vn A|-t --------------------------------------------- SUBS[A1|-t1=v1;...;An|-tn=vn] A1 u ... u An u A |- t[v1,...,vn/t1,...,tn] (A|-t)
- val thm1 = SPECL [Term`m:num`, Term`n:num`] arithmeticTheory.ADD_SYM val thm2 = CONJUNCT1 arithmeticTheory.ADD_CLAUSES; > val thm1 = |- m + n = n + m : thm val thm2 = |- 0 + m = m : thm
- SUBS [thm1, thm2] (ASSUME (Term `(n + 0) + (0 + m) = m + n`)); > val it = [.] |- n + 0 + m = n + m : thm - SUBS [thm1, thm2] (ASSUME (Term `!n. (n + 0) + (0 + m) = m + n`)); > val it = [.] |- !n. n + 0 + m = m + n : thm