src/HOL/Decision_Procs/Cooper.thy
changeset 33063 4d462963a7db
parent 32960 69916a850301
child 35416 d8d7d1b785af
equal deleted inserted replaced
33062:542b34b178ec 33063:4d462963a7db
  2033   let
  2033   let
  2034     val thy = Thm.theory_of_cterm ct;
  2034     val thy = Thm.theory_of_cterm ct;
  2035     val t = Thm.term_of ct;
  2035     val t = Thm.term_of ct;
  2036     val fs = OldTerm.term_frees t;
  2036     val fs = OldTerm.term_frees t;
  2037     val bs = term_bools [] t;
  2037     val bs = term_bools [] t;
  2038     val vs = fs ~~ (0 upto (length fs - 1))
  2038     val vs = map_index swap fs;
  2039     val ps = bs ~~ (0 upto (length bs - 1))
  2039     val ps = map_index swap bs;
  2040     val t' = (term_of_fm ps vs o @{code pa} o fm_of_term ps vs) t;
  2040     val t' = (term_of_fm ps vs o @{code pa} o fm_of_term ps vs) t;
  2041   in (Thm.cterm_of thy o HOLogic.mk_Trueprop o HOLogic.mk_eq) (t, t') end
  2041   in (Thm.cterm_of thy o HOLogic.mk_Trueprop o HOLogic.mk_eq) (t, t') end
  2042 end;
  2042 end;
  2043 *}
  2043 *}
  2044 
  2044