delete_binding : string -> unit
- Define `fact x = if x=0 then 1 else x * fact (x-1)`;
Equations stored under "fact_def".
Induction stored under "fact_ind".
> val it = |- fact x = (if x = 0 then 1 else x * fact (x - 1)) : thm
- current_theorems();
> val it =
[("fact_def", |- fact x = (if x = 0 then 1 else x * fact (x - 1))),
("fact_ind", |- !P. (!x. (~(x = 0) ==> P (x - 1)) ==> P x) ==> !v. P v)]
: (string * thm) list
- delete_binding "fact_ind";
> val it = () : unit
- current_theorems();
> val it =
[("fact_def", |- fact x = (if x = 0 then 1 else x * fact (x - 1)))]
: (string * thm) list
Removing an axiom has the consequence that all theorems proved from it become garbage.