src/Provers/simp.ML
changeset 7645 c67115c0e105
parent 6966 cfa87aef9ccd
child 13105 3d1e7a199bdc
equal deleted inserted replaced
7644:054ecaf3ca22 7645:c67115c0e105
   624 
   624 
   625 fun mk_congs thy = filter_out is_fact o flat o map (mk_cong_thy thy);
   625 fun mk_congs thy = filter_out is_fact o flat o map (mk_cong_thy thy);
   626 
   626 
   627 fun mk_typed_congs thy =
   627 fun mk_typed_congs thy =
   628 let val sg = sign_of thy;
   628 let val sg = sign_of thy;
   629     val S0 = Type.defaultS(#tsig(Sign.rep_sg sg))
   629     val S0 = Sign.defaultS sg;
   630     fun readfT(f,s) =
   630     fun readfT(f,s) =
   631 	let val T = incr_tvar 9 (Sign.read_typ(sg,K(Some(S0))) s);
   631 	let val T = incr_tvar 9 (Sign.read_typ(sg,K(Some(S0))) s);
   632 	    val t = case Sign.const_type sg f of
   632 	    val t = case Sign.const_type sg f of
   633 		      Some(_) => Const(f,T) | None => Free(f,T)
   633 		      Some(_) => Const(f,T) | None => Free(f,T)
   634 	in (t,T) end
   634 	in (t,T) end