WORD_DECIDEwordsLib.WORD_DECIDE : conv
A decision procedure for words.
The conversion WORD_DECIDE is the same as
WORD_DP WORD_CONV bossLib.DECIDE.
> wordsLib.WORD_DECIDE “a && (b !! a) = a !! a && b”
val it = ⊢ a && (b ‖ a) = a ‖ a && b: thm
> wordsLib.WORD_DECIDE “a + 2w <+ 4w = a <+ 2w \/ 13w <+ a :word4”
Exception- Don't expect to find a = in this position after a <+
at line 1, character 37 and on line 1, characters 31-32.
HOL_ERR
(at Absyn.Absyn: on line 1, characters 31-32:
Don't expect to find a = in this position after a <+
at line 1, character 37 and on line 1, characters 31-32.
) raised
> wordsLib.WORD_DECIDE “a < 0w = 1w <+ a : word2”
Exception- Don't expect to find a = in this position after a <
at line 1, character 31 and at line 1, character 26.
HOL_ERR
(at Absyn.Absyn: at line 1, character 26:
Don't expect to find a = in this position after a <
at line 1, character 31 and at line 1, character 26.
) raised
> wordsLib.WORD_DECIDE “(?w:word4. 14w <+ w) /\ ~(?w:word4. 15w <+ w)”
val it = ⊢ (∃w. 14w <₊ w) ∧ ¬∃w. 15w <₊ w: thm