equal
deleted
inserted
replaced
119 fun atomize ctxt thm = |
119 fun atomize ctxt thm = |
120 let |
120 let |
121 val r_inst = read_instantiate ctxt; |
121 val r_inst = read_instantiate ctxt; |
122 fun at thm = |
122 fun at thm = |
123 case concl_of thm of |
123 case concl_of thm of |
124 _$(Const(@{const_name "op &"},_)$_$_) => at(thm RS conjunct1)@at(thm RS conjunct2) |
124 _$(Const(@{const_name HOL.conj},_)$_$_) => at(thm RS conjunct1)@at(thm RS conjunct2) |
125 | _$(Const(@{const_name All} ,_)$Abs(s,_,_))=> at(thm RS (r_inst [(("x", 0), "?" ^ s)] spec)) |
125 | _$(Const(@{const_name All} ,_)$Abs(s,_,_))=> at(thm RS (r_inst [(("x", 0), "?" ^ s)] spec)) |
126 | _ => [thm]; |
126 | _ => [thm]; |
127 in map zero_var_indexes (at thm) end; |
127 in map zero_var_indexes (at thm) end; |
128 |
128 |
129 exception Impossible of string; |
129 exception Impossible of string; |