Re: [Hol-info] Prove a simple word expression

2010-04-22 Thread Tjark Weber
Dear Lu, On Thu, 2010-04-08 at 21:20 -0600, Lu Zhao wrote: > How can I proceed to prove this seemingly very simple expression? I'm > not familiar with word proofs. > > ``(0x3w && (x :bool[32]) + 0x4w = 0x0w) <=> (0x3w && x = 0x0w)`` > > or more general, > > ``(0x3w && (x :bool[32]) + y * 0x4w

Re: [Hol-info] Prove a simple word expression

2010-04-09 Thread Magnus Myreen
Hi Lu, Both of your goals can be solved with: SIMP_TAC std_ss [ALIGNED_INTRO,ALIGNED_CLAUSES] See HOL/examples/machine-code/hoare-triple/addressScript.sml. ALIGNED is another useful theorem about alignment, e.g. > REWRITE_CONV [ALIGNED] ``ALIGNED (a + 12w)``; val it = |- ALIGNED (a +

[Hol-info] Prove a simple word expression

2010-04-08 Thread Lu Zhao
Hi, How can I proceed to prove this seemingly very simple expression? I'm not familiar with word proofs. ``(0x3w && (x :bool[32]) + 0x4w = 0x0w) <=> (0x3w && x = 0x0w)`` or more general, ``(0x3w && (x :bool[32]) + y * 0x4w = 0x0w) <=> (0x3w && x = 0x0w)`` Any suggestion is appreciated. Thank