Re: [Hol-info] Automatic subgoal to apply a conditional rewrite

2012-11-22 Thread Michael Norrish
Note that this approach will fail if the term to be rewritten is under a variable binding. MP_REWRITE_TAC REAL_DIV_REFL ([], ``!x. x <> 0 ==> P (x/x)``) gives back an unprovable x <> 0 as a new subgoal, and also fails to simplify the bound x/x in the “original” branch. (Put `x*x + 1` in `x` if

Re: [Hol-info] Automatic subgoal to apply a conditional rewrite

2012-11-22 Thread Tarek Mhamdi
Thank you Vincent for the tactic you provided. It saves time and lines of code, indeed. On Thu, Nov 22, 2012 at 3:31 PM, Vincent Aravantinos < vincent.aravanti...@gmail.com> wrote: > Hi list, > > I often face the following small but annoying problem: > > * Situation: >- I have a theorem (sa

Re: [Hol-info] Automatic subgoal to apply a conditional rewrite

2012-11-22 Thread Alexey Solovyev
Hi Vincent, I had exactly the same problem when I was doing long proofs in HOL Light for the Flyspeck project. Later, I learned SSReflect extension in Coq where the described rewriting issue was solved by "rewrite" tactic. Some time ago, I implemented my version of a subset of SSReflect languag

Re: [Hol-info] Automatic subgoal to apply a conditional rewrite

2012-11-22 Thread Konrad Slind
Hi Vincent, Peter Homeier has given a thorough treatment of just this problem some time ago. It can be found in the structure "dep_rewrite". It seems you have to load it before opening it. There is documentation in src/1/dep_rewrite.sml in the distribution. Cheers, Konrad. On Thu, Nov 22, 20

[Hol-info] Automatic subgoal to apply a conditional rewrite

2012-11-22 Thread Vincent Aravantinos
Hi list, I often face the following small but annoying problem: * Situation: - I have a theorem (say, "Th") of the form "P ==> t = u" ex: REAL_DIV_REFL (|- !x. ~(x = &0) ==> x / x = &1 in HOL-Light, |- !x. x <> 0 ==> (x / x = 1) in HOL4) - the conclusion of my goal is a (big) te